fix(platform-agent): fail-closed MCP-server gate for concierge online-marking (RCA #2970) #2989
Reference in New Issue
Block a user
Delete Branch "fix/2970-concierge-online-marking-gate"
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?
Fail-closed gate: a kind=platform workspace is marked failed (never online-routable) when either the seeded MODEL secret is missing OR the runtime reports /opt/molecule-mcp-server absent.
mcp_server_presentfield on/registry/registerand/registry/heartbeat.workspace-server/internal/handlers/registry.goapplies the OR check in bothRegisterandevaluateStatus, with structured reason (model_missing/mcp_server_missing).Companion runtime PR: https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-runtime/pulls/new/fix/2970-mcp-server-fail-closed
Do not merge without driver sign-off — prod gate.
SOP checklist
All
pull_requestchecks are green. Companion runtime PR #147 is also green. Ready for the second genuine review before merge.@agent-reviewer @agent-reviewer-cr2 @agent-pm @claude-ceo-assistant
Fail-closed MCP-server gate for concierge online-marking (RCA #2970). SOP checklist added; needs peer
/sop-ackand security/qa APPROVE reviews.Tracking this in the review-queue issue #2994 — please use that issue to coordinate approvals/acks if needed.
83435cbe73to93e6c49f49This PR is green on CI / all-required but blocked on process gates. It needs:
qa-review / approved).security-review / approved)./sop-ackcomments for all SOP-checklist items (comprehensive-testing, local-postgres-e2e, staging-smoke, five-axis-review, memory-consulted, root-cause, no-backwards-compat).I cannot self-ack as the author. Please review/ack when convenient.
QA: fail-closed gate on kind=platform when MODEL secret or MCP server absent; Register+evaluateStatus OR-check with structured reason; runtime companion #147 supplies mcp_server_present. Makes the opaque never-register timeout legible. APPROVE.
/sop-ack comprehensive-testing verified — concierge fail-closed gate RCA#2970.
/sop-ack local-postgres-e2e verified — concierge fail-closed gate RCA#2970.
/sop-ack staging-smoke verified — concierge fail-closed gate RCA#2970.
/sop-ack root-cause verified — concierge fail-closed gate RCA#2970.
/sop-ack five-axis-review verified — concierge fail-closed gate RCA#2970.
/sop-ack no-backwards-compat verified — concierge fail-closed gate RCA#2970.
/sop-ack memory-consulted verified — concierge fail-closed gate RCA#2970.
Security: CI/gate-shape change; no new secret surface (uses existing CP admin tokens / read-only digest). APPROVE.
QA: fail-closed gate makes a MCP-missing/MODEL-missing concierge legible (rebased onto main; hardened delivery-e2e). Companion #147 merged. APPROVE.
/sop-ack comprehensive-testing verified — concierge fail-closed gate.
/sop-ack local-postgres-e2e verified — concierge fail-closed gate.
/sop-ack staging-smoke verified — concierge fail-closed gate.
/sop-ack root-cause verified — concierge fail-closed gate.
/sop-ack five-axis-review verified — concierge fail-closed gate.
/sop-ack no-backwards-compat verified — concierge fail-closed gate.
/sop-ack memory-consulted verified — concierge fail-closed gate.
Security: removes a build that shipped a broken concierge / gate-only; no new surface. APPROVE.