Remove the wright-workshop cutover adapter (complete the wright#143 removal path) - #215
Conversation
wright#143 made workshop-rs the canonical Workshop core and left wright-workshop as a re-export-only adapter with a documented removal path: migrate call sites to workshop_rs:: and delete the crate. That cutover is now complete. - migrate all 111 wright_workshop:: call sites in wright-analyzer, wright-opy, wright-driver, and wright-ostw (src and tests) to the workshop_rs:: paths they already re-exported; all four crates already depended on workshop-rs directly - preserve the ten #109/#111 manifest-wiring regressions (shipped driver parse context, chase/Invis None fixed points, chase-keywords end-to-end round-trip) as wright-driver/tests/manifest_context.rs, next to the session wiring they protect - delete the adapter crate and its 2568-line test suite: the remaining coverage tested workshop-rs's own catalog/parser/emitter/round-trip behavior through the re-export and is owned and tested by workshop-rs (crates/workshop-rs/tests, 18 files incl. all 8 counterpart suites) - update the 17 documents and 4 code comments that described consumption 'via the wright-workshop adapter'; ADR-0009's migration-state list now records the adapter as removed Validation: cargo fmt --check clean; cargo clippy --workspace --all-targets --all-features -D warnings clean; cargo test --workspace 591 passed / 0 failed; no wright-workshop references remain outside intentional historical notes.
0dc3b9e to
2cf27a7
Compare
|
Force-pushed a rebuilt branch: the original push had accidentally been based on a local The branch is now exactly |
Summary
Completes the entropy-audit candidate with the strongest evidence:
wright-workshopwas a 17-line re-export-only cutover adapter (pub use workshop_rs::*;) whose own doc comment prescribed this exact removal — migrate call sites toworkshop_rs::, then delete the crate. The v0.2 cutover is done (workshop-rs is at released 0.1.5); this PR executes the documented follow-through.wright_workshop::references inwright-analyzer,wright-opy,wright-driver,wright-ostw(src and tests) now use the identicalworkshop_rs::paths. All four crates already declaredworkshop-rsas a direct dependency, so this is mechanical; several files had been mixing both paths since the cutover.ChainedExpectedDomainparse context, the chase/Set Invisiblebare-Nonefixed points (including the negative context-free case), the manifest expected-domain contract, and thechase-keywordsfixture end-to-end OPY→HIR→WIR→emit→reparse round-trip — move tocrates/wright-driver/tests/manifest_context.rs, colocated with theCompilerSessionwiring they protect (session.rsparse path).crates/workshop-rs/tests/, 18 suites including all eight counterpart files), so these were duplicate maintenance, not Wright integration evidence.workshop-rsconsumption. ADR-0009's migration-state list records the adapter as removed (wright-opy/wright-ostw/wright-irremain pending their v0.3/v0.4 extractions).Why this is safe
workshop-rspath, so behavior is unchanged by construction.wrightandwright-lspbinaries.Validation
From the branch (all commands run locally, will be re-proven by CI):
cargo fmt --all -- --check— cleancargo clippy --locked --workspace --all-targets --all-features -- -D warnings— cleancargo test --locked --workspace --all-targets --all-features— 591 passed / 0 failed (includes the 10 preserved tests:cargo test -p wright-driver --test manifest_context→ 10 passed)grep -rn "wright.workshop"across rs/toml/md — only 4 intentional historical notes remain (test provenance comment, ADR-0009 status, compatibility.md and catalog-pipeline.md removal records)git diff --check— cleanTesting-policy notes
Net effect
46 files, +383 / −2769. Removes one workspace crate concept, one dependency edge from each of four crates, eight duplicate test suites, and the dual-path (
wright_workshop::/workshop_rs::) cognitive overhead. No capability lost;wright-ir's four ~50-line cutover shims remain, tied to the v0.3 HIR extraction per their own doc comments.