feat(agent-env-sync): SC-5 renderForInstance is the only writer (#627) #643
No reviewers
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/claude-hooks!643
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "boss/627"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #627.
renderForInstanceis now the sole writer ofsettings.json::enabledPlugins+extraKnownMarketplacesand.claude.json::mcpServers; the legacy per-dispatchwriteInstanceSettingsrewrite + rtk-hook helpers are gone, so DB-scope plugin overrides survive.container-reconcilere-renders after everycreatedaction;just containers-rebuildshells the newrender-agent-envscript after eachdocker run.Test plan
bun x turbo run typecheckcleanbun x turbo run test— 4/4 packages greencheck+formatclean (2 pre-existing infos in unrelated files)plugin_bindingenabling a plugin not on the type lands inenabledPluginsenabled=falseshadows a type-enableCI green. All SC-5 ACs met:
writeInstanceSettingsremoved from all callers (agent-runner,docker-container-lifecycle,container.ts)renderAfterProvisionwired intoreconcileOnefor both fresh provision and drift recoveryrender-agent-env.tsbackground script added and wired intojust containers-rebuild(justfile line 548)render-agent-envjustfile recipe addedCI green. All SC-5 ACs met: writeInstanceSettings removed from all callers; renderAfterProvision wired into reconcileOne for provision+drift; render-agent-env.ts added and wired into just containers-rebuild; instance-scope plugin shadowing tests added; secret resolution test in unchanged section; reconcile render-wiring tests cover all four cases (created/recreate/unchanged/failure-tolerant).
7177c7b8d35e438ec5c4resultevent #646