feat(agent-config): AOI-2 MCP env-merge + forge-identity guardrail #763
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!763
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "code-lead/731"
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 #731
Instance-scope
mcp_serverrows whosenamematches an inherited row now merge theirenvmap into the parent record per-key (instance overrides parent, absent keys inherit). The other fields (command/args/transport/url) come from the parent — divergent values are rejected by the route validator.Forge MCP auth env (
FORGE_TOKEN/FORGE_TOKENS) is bound to the agent's type identity by construction. The lock list lives inconfig/mcp-builtin-locks.jsonso FM-3 can extend it forgithub/gitlabwithout code changes.Test plan
CI green. All AOI-2 ACs met: env-merge, forge-identity guardrail, locked-key validation, and render-time injection all correct and tested.
Nit (non-blocking): no test for divergent
argsrejection in the route validator — trivial gap given args overrides are rare in practice.