fix: harden multi-agent MCP access#1316
Conversation
…i-agent-hardening-2026-05-06
Hermes steward review / Phase 4E statusOpened this as the fork PR because Review checks completed:
Commands run:
Blocked items:
Verdict: implementation surface looks sane from focused review, but do not merge until a conflict-resolution pass rebases/merges current master and live MCP smoke can run against valid DB credentials. |
|
Status comment — the v0.41.3.0 security/MCP fix wave (#1403) ran a deliberate scope review of this PR and decided to keep it open as a parking lot rather than cherry-pick wholesale. Three independent wins from your design are filed as TODOS:
The reason for not cherry-picking the whole PR: your Phase 4 work includes an RLS posture rewrite that drops the v0.26.7 auto-RLS event trigger. That trigger is treated as load-bearing by v0.41.3.0 picks up some adjacent territory you helped surface: the OAuth CORS lockdown (Express server defaulted to Happy to discuss splitting #1316 into the three TODOS above as separate PRs if you want to drive them — that would unbundle the architectural risk and keep the wins. |
Summary
access_tokens.last_used_athot-row writes with an in-process LRU debounce.Linked design / PRD
Review focus
get_page/put_page, not generic transport labels liketools/call.last_used_atwrite cooling uses LRU eviction and per-token cooldown while preserving per-request audit rows.Test plan
bun run typecheckbun test test/scoped-tokens.test.ts test/http-transport.test.ts test/serve-http-audit.test.ts test/token-last-used.test.ts test/rls-posture-migration.test.ts— 56 passgitleaks detect --no-git --redact --source .— no leaks foundbun testwas attempted but timed out at the 600s worker cap after substantial progress;test/cli-options.test.tshas an environment-sensitiveskillpack-checkspawn timeout when run in this profile. Focused Phase 4 suites above pass.(ECIRCUITBREAKER) too many authentication failures, new connections are temporarily blocked. No tokens were printed; temporary smoke script was removed.Notes
This branch was pushed from fork
chipoto69/gbrainbecausechipoto69does not have direct push permission togarrytan/gbrain.