docs(remote-mcp): restamp the #956 threat model onto the commit it resolves at (review 637 B1)
Commit126d76aset docs/remote-mcp/threat-model-anchors.json generated_against_commit toe3fa3b26and left docs/remote-mcp/threat-model.md citinga143cd06, so the document and the fixture named different source revisions. tests/test_issue_956_threat_model.py asserts the fixture value appears in the document, and that assertion failed from126d76aonward. The mismatch was not cosmetic. Resolving all 58 anchors against each candidate revision shows 0 unresolved ate3fa3b26and 21 unresolved ata143cd06, so the document's own claim about where its file:line citations resolve was false. The fixture held the accurate value and the document held the stale one. The B2 fix inca5f078dinserted a net 16 lines into gitea_mcp_server.py at a single point, shifting 21 anchors below it. All 21 are re-derived here by that one uniform offset and each was verified against its recorded expect substring rather than assumed, so no anchor is guessed and none became ambiguous. Both artifacts now nameca5f078d, the commit those anchors were taken at, and the document's inline citations are shifted to match. The boundary table's claim about what the code enforces is restamped onto the same revision, because it described that same source tree. Verified: 58/58 anchors resolve at the declared generation commit, 58/58 at this head, no two anchors share a file:line location, fixture and document metadata agree, and tests/test_issue_956_threat_model.py passes 17/17. Refs #708 Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
This commit is contained in:
@@ -8,10 +8,10 @@
|
||||
"document. #930's inventory had no such guard and its gitea_mcp_server.py",
|
||||
"anchors drifted between 7bf4f125 and aad5c8b4."
|
||||
],
|
||||
"generated_against_commit": "e3fa3b263d4b8a04b189e111a345ac5c3a3fe1b6",
|
||||
"generated_against_commit": "ca5f078d8a575ea3e2991771f8b4ea85e3dcaaa0",
|
||||
"anchors": [
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:24848",
|
||||
"anchor": "gitea_mcp_server.py:24864",
|
||||
"expect": "mcp_daemon_guard.bind_native_mcp_transport()"
|
||||
},
|
||||
{
|
||||
@@ -27,11 +27,11 @@
|
||||
"expect": "def assess_transport_for_auth_mint"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:9175",
|
||||
"anchor": "gitea_mcp_server.py:9191",
|
||||
"expect": "assess_transport_for_auth_mint()"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:9424",
|
||||
"anchor": "gitea_mcp_server.py:9440",
|
||||
"expect": "assess_transport_for_auth_mint()"
|
||||
},
|
||||
{
|
||||
@@ -39,31 +39,31 @@
|
||||
"expect": "The transport is selected by deployment configuration"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:15465",
|
||||
"anchor": "gitea_mcp_server.py:15481",
|
||||
"expect": "def _is_client_managed_process"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:15495",
|
||||
"anchor": "gitea_mcp_server.py:15511",
|
||||
"expect": "def _provenance_mutation_block"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:15503",
|
||||
"anchor": "gitea_mcp_server.py:15519",
|
||||
"expect": "unsupported_manual_launch"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19054",
|
||||
"anchor": "gitea_mcp_server.py:19070",
|
||||
"expect": "server_provenance"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:21565",
|
||||
"anchor": "gitea_mcp_server.py:21581",
|
||||
"expect": "def _check_mcp_runtimes_diagnostics"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:21585",
|
||||
"anchor": "gitea_mcp_server.py:21601",
|
||||
"expect": "\"ps\", \"-o\", \"pid,lstart,command\""
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:21629",
|
||||
"anchor": "gitea_mcp_server.py:21645",
|
||||
"expect": "\"ps\", \"eww\""
|
||||
},
|
||||
{
|
||||
@@ -107,19 +107,19 @@
|
||||
"expect": "def assert_keychain_access_allowed"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19311",
|
||||
"anchor": "gitea_mcp_server.py:19327",
|
||||
"expect": "def gitea_list_profiles"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19362",
|
||||
"anchor": "gitea_mcp_server.py:19378",
|
||||
"expect": "gitea_config.resolve_token(p)"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19675",
|
||||
"anchor": "gitea_mcp_server.py:19691",
|
||||
"expect": "def gitea_audit_config"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19697",
|
||||
"anchor": "gitea_mcp_server.py:19713",
|
||||
"expect": "service_summaries(config)"
|
||||
},
|
||||
{
|
||||
@@ -135,19 +135,19 @@
|
||||
"expect": "_keychain_token(auth.get(\"id\"))"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:17760",
|
||||
"anchor": "gitea_mcp_server.py:17776",
|
||||
"expect": "\"jenkins-mcp\""
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:17766",
|
||||
"anchor": "gitea_mcp_server.py:17782",
|
||||
"expect": "external-mcp"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:17787",
|
||||
"anchor": "gitea_mcp_server.py:17803",
|
||||
"expect": "\"glitchtip-mcp\""
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:17792",
|
||||
"anchor": "gitea_mcp_server.py:17808",
|
||||
"expect": "external-mcp"
|
||||
},
|
||||
{
|
||||
@@ -183,7 +183,7 @@
|
||||
"expect": "mutation_safe"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:19155",
|
||||
"anchor": "gitea_mcp_server.py:19171",
|
||||
"expect": "def gitea_assess_master_parity"
|
||||
},
|
||||
{
|
||||
@@ -199,7 +199,7 @@
|
||||
"expect": "/tmp/gitea_issue_lock.json"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:10940",
|
||||
"anchor": "gitea_mcp_server.py:10956",
|
||||
"expect": "def gitea_bootstrap_author_issue_worktree"
|
||||
},
|
||||
{
|
||||
@@ -239,7 +239,7 @@
|
||||
"expect": "os.getpid()"
|
||||
},
|
||||
{
|
||||
"anchor": "gitea_mcp_server.py:12854",
|
||||
"anchor": "gitea_mcp_server.py:12870",
|
||||
"expect": "owner_pid_alive"
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user