2026-08-01-sec-kn-p6-rotate-ec2-code-divergence.md markdown
37 lines 1.7 KB
Raw
sha256:4215cecbbabf5591b1ff69053cc938b4b6c800f0d487be40618c1d4254d8b67b security: npm audit fix pre-bridge 2026-09-05 Human 2 days ago

title: SEC-KN-P6-ROTATE — EC2 MCP host code divergence (top freeze input) date: 2026-08-01 step: SEC-KN-P6-ROTATE-a model: Thinking authority: knowtation posture: Thinking session probes only — no secret rotation, no env/posture flip, no deploy frozen_input_for: docs/SEC-KN-P6-ROTATE-FREEZE.md

EC2 MCP host runs pre-current-main code (source SEC-KN-3 is on main)

Board correction

SEC-KN-3 tip 5954c433… is an ancestor of Muse main. GitHub origin/main contains the SEC-KN-3 resolveHostedActorRole markers (first mirrored at git 69a7673, 2026-07-27). The ROADMAP wording "SEC-KN-3 … not merged to main" was stale.

Live probe (same agent_access JWT on both hosts)

Call Gateway (api.knowtation.store) MCP (mcp.knowtation.store)
GET health 200 Netlify 200 nginx/1.24.0
GET session introspection 200 200 (shared secret still holds)
POST discard nonexistent prop-p6-rotate-probe-nonexistent-0000 401 UNAUTHORIZED 200 (empty body)
GET same nonexistent id 404 NOT_FOUND 404 NOT_FOUND

Token scopes were exactly propose + vault:read (no write/admin). On current main, Phase C agentScopesPermitMethod refuses discard create-path → getUserId null → 401 (hub/lib/agent-credential-core.mjs:366-388; hub/gateway/server.mjs:1628-1634). MCP returning 200 means that refuse path is absent on EC2 → runtime ≠ current main.

Frozen consequence

Deploy current main to EC2 before any SESSION_SECRET rotation (docs/SEC-KN-P6-ROTATE-FREEZE.md D2). The 200 is not treated as a completed admin-elevation proof (real approve not run); it is enough to gate deploy-first.

File History 2 commits
sha256:4215cecbbabf5591b1ff69053cc938b4b6c800f0d487be40618c1d4254d8b67b security: npm audit fix pre-bridge 2026-09-05 Human 2 days ago
sha256:9eaa2a7ec9aaf5866cd03d0deadf843cca97778299d1857b5452f71d92a1880a feat(f24): flip DOCS_NOTION_HUB_KEY_AUTHORIZED=true (Tier 3) Human minor 16 days ago