Skip to content

S9 Rust port: MCP parity fixed scratch root (import consolidation landed via #1084) (WI-1075) - #1086

Merged
thedancingdeveloper merged 2 commits into
rust-corefrom
wi-1075-s9-rust
Oct 17, 2026
Merged

thedancingdeveloper merged 2 commits into
rust-corefrom
wi-1075-s9-rust

Conversation

@thedancingdeveloper

@thedancingdeveloper thedancingdeveloper commented Oct 17, 2026 •

Copy link
Copy Markdown
Contributor

S9's project.import consolidation work already landed via #1084 (WI-1725), which consolidates by default as Python does (consolidate: bool = Field(default=True)). This PR's two import commits (ce3c9d4, 8b01475) conflicted with #1084 and would have changed that default, so they are dropped.

What remains:

  • fix(parity): use a fixed scratch root for the MCP run (from 1cc2d05): scripts/parity.py only.
  • docs(port): disposition row for test_engine_image_core.py: WI-1078 (I3): ship the Rust vogt-core in the stack image #1085 (WI-1078) added that test without a ledger row, so every_python_test_has_one_disposition was failing on rust-core's tip. Marked retired: it holds static checks on the engine Dockerfile and entrypoint, not the core crate.

Golden 21c95f6 re-recorded from Python. The CLI and HTTP goldens are unchanged.

Known gap, not fixed here: parity.py record --transport mcp still crashes with KeyError: 'session.grant_request'. The MCP runner never fills seen; this has been so since #1083 (noted on WI-1074). Because the MCP run stops there, MCP payload_digest parity can't be checked yet, and mcp.json is stale against script.json. CI does not record or check MCP.

Gates: the rust-core.yml parity sequence, gen_registry --check, gen_validator_corpus --check, cargo fmt --check, cargo clippy --workspace --all-targets -D warnings, cargo test -p vogt-core (930 passed).

🤖 Generated with Claude Code

sprooty and others added 2 commits October 17, 2026 10:49
The audit payload_digest covers the absolute root_path a project is
registered at. The MCP run used a random temp directory, so every digest
over a registered project changed from run to run, in both cores. The
output already shows the root as <root>; only the digest saw the path.

The MCP run now uses a fixed, cleared-before-and-after scratch path.
Runs are sequential, so the path is safe to reuse. With it, Python and
Rust produce identical MCP digests (checked line by line, 6 digests).
The 21c95f6 MCP golden is not re-recorded here: its digests were taken
at a random path and will differ until oversight re-records it.

Signed-off-by: sprooty <sprooty@sprooty.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
#1085 added the test without a ledger row, so
every_python_test_has_one_disposition failed on rust-core.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: sprooty <sprooty@sprooty.com>
@thedancingdeveloper thedancingdeveloper changed the title WI-1075: S9 project.import consolidate + MCP parity scratch fix S9 Rust port: MCP parity fixed scratch root (import consolidation landed via #1084) (WI-1075) Oct 17, 2026
@thedancingdeveloper
thedancingdeveloper merged commit 77ef27b into rust-core Oct 17, 2026
6 of 8 checks passed
@thedancingdeveloper
thedancingdeveloper deleted the wi-1075-s9-rust branch October 17, 2026 11:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant