Skip to content

refactor(stack): make functions configuration explicit - #6089

Merged
jgoux merged 128 commits into
developfrom
agent/functions-bundle-runtime-reload
Aug 7, 2026
Merged

refactor(stack): make functions configuration explicit#6089
jgoux merged 128 commits into
developfrom
agent/functions-bundle-runtime-reload

Conversation

@jgoux

@jgoux jgoux commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

What changed

  • Introduces a serializable resolved Functions bundle with absolute paths, per-function policy, static files, and resolved environment values.
  • Moves project, manifest, and dotenv resolution into config and CLI ownership while keeping stack responsible only for runtime-derived values and ephemeral runtime configuration.
  • Uses validated JSON reload bodies, preserves the active bundle across repeated reloads, and removes resolved bundle values from daemon startup IPC and durable state.

Why

This makes the stack boundary independent of CLI project conventions and gives direct callers an explicit input model. In detached mode, resolved environment values travel only in the Unix-socket request body and are persisted only in the owner-only ephemeral runtime file.

Depends on #6086 and its prerequisite stack architecture chain.

jgoux added 20 commits August 5, 2026 18:37
…-model

# Conflicts:
#	packages/stack/README.md
#	packages/stack/docs/architecture.md
…ementation

# Conflicts:
#	packages/process-compose/src/Orchestrator.ts
#	packages/process-compose/src/Orchestrator.unit.test.ts
#	packages/stack/src/Stack.unit.test.ts
…ctory-resource-locality

# Conflicts:
#	packages/process-compose/src/Orchestrator.ts
…ions-bundle-runtime-reload

# Conflicts:
#	pnpm-lock.yaml
…-model

# Conflicts:
#	packages/stack/src/versions.ts
…/stack-runtime-implementation

# Conflicts:
#	packages/process-compose/src/Orchestrator.ts
#	packages/process-compose/src/Orchestrator.unit.test.ts
…ctory-resource-locality

# Conflicts:
#	packages/process-compose/docs/architecture.md
#	packages/process-compose/src/Orchestrator.ts
#	packages/stack/src/LocalStack.ts
Comment thread packages/stack/src/functions.ts
jgoux added 5 commits August 6, 2026 16:19
…-model

# Conflicts:
#	packages/stack/src/ServiceActivation.ts
#	packages/stack/src/StackBuilder.ts
#	packages/stack/src/StackLifecycleCoordinator.ts
…gent/process-compose-supervisor-cleanup

# Conflicts:
#	packages/process-compose/docs/architecture.md
#	packages/process-compose/src/Orchestrator.ts
#	packages/process-compose/src/ServiceTransition.ts
#	packages/stack/src/ServiceActivation.ts
#	packages/stack/src/StackBuilder.ts
#	packages/stack/src/StackLifecycleCoordinator.ts
…-cleanup' into agent/stack-runtime-implementation

# Conflicts:
#	packages/stack/src/ServiceActivation.ts
#	packages/stack/src/StackLifecycleCoordinator.ts
…on' into agent/stack-factory-resource-locality
…ality' into agent/functions-bundle-runtime-reload
@jgoux
jgoux changed the base branch from agent/stack-factory-resource-locality to develop August 6, 2026 14:31
@jgoux
jgoux enabled auto-merge August 6, 2026 14:31

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 4727261158

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread packages/stack/src/DaemonServer.ts
Comment thread packages/stack/src/LocalStack.ts Outdated
jgoux added 2 commits August 6, 2026 17:34
…ndle-runtime-reload

# Conflicts:
#	packages/stack/README.md
#	packages/stack/docs/architecture.md
#	packages/stack/docs/detach-mode.md
#	packages/stack/src/DaemonServer.integration.test.ts
#	packages/stack/src/DaemonServer.ts
#	packages/stack/src/LocalStack.ts
#	packages/stack/src/RemoteStack.integration.test.ts
#	packages/stack/src/ServiceActivation.ts
#	packages/stack/src/Stack.ts
#	packages/stack/src/Stack.unit.test.ts
#	packages/stack/src/StackBuilder.unit.test.ts
#	packages/stack/src/StackConfig.ts
#	packages/stack/src/StackConfigResolver.ts
#	packages/stack/src/createStack.ts
#	packages/stack/src/createStack.unit.test.ts
#	packages/stack/src/functions.ts
#	packages/stack/src/functions.unit.test.ts
#	packages/stack/src/index.ts
#	packages/stack/src/layers.ts
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Supabase CLI preview

npx --yes https://pkg.pr.new/supabase/cli/supabase@eff78f82407c3ff232e15422ea42d60488b4dc86

Preview package for commit eff78f8.

@jgoux
jgoux added this pull request to the merge queue Aug 7, 2026
Merged via the queue into develop with commit dd26cfb Aug 7, 2026
14 checks passed
@jgoux
jgoux deleted the agent/functions-bundle-runtime-reload branch August 7, 2026 06:16
Raudbjorn pushed a commit to Raudbjorn/supabase-cli that referenced this pull request Aug 7, 2026
Narrows the package API around its two intended consumer modes. The root
entrypoint now exposes only the Promise-facing runtime, while the
conditional Effect entrypoint supplies platform-bound layers without
leaking platform factories, daemon protocol types, or implementation
services.

Moves the small set of test seams to a dedicated testing subpath, keeps
the Node daemon file-URL-only, and retains the Bun daemon export solely
for compiled CLI self-dispatch. Documentation and boundary tests now
encode these ownership rules.

Depends on supabase#6089.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants