Skip to content

Commit f43cfb5

Browse files
hyperpolymathclaude
andcommitted
Delete impl/rust-ffi/ duplicate; ffi/rust/ is canonical
Closes the duplicate-tree finding from CRG-AUDIT-2026-04-18: * Both crates declared the same package identity (`vsh-ffi` library `vsh_ffi`, byte-identical Cargo.toml). * 6 of 7 sibling source files (audit, errors, operations, preconditions, rmo, sandbox) are byte-identical. * lib.rs diverges: `ffi/rust/src/lib.rs` is the superset (443 LOC) vs `impl/rust-ffi/src/lib.rs` (407 LOC) — extra is `pub mod verification;` plus richer doc comments referencing the six-system proof stack (Z3/Lean4/Agda/Isabelle/Mizar). * `ffi/rust/src/verification.rs` (462 LOC) is unique to ffi/rust/. * `ffi/rust/` matches the CLAUDE.md ABI/FFI universal standard location (`ffi/<lang>/` per the global "ABI/FFI Universal Standard" directory layout). * No external build consumers: neither tree is referenced from `impl/rust-cli/Cargo.toml`, no path-deps, no Justfile/Containerfile/ workflow references — only documentation files mention them. The main vsh shell crate still builds cleanly after deletion (verified: `cargo build` exit 0). Action: removed `impl/rust-ffi/` entirely (the strict subset). Sweep of the `.expect("TODO: handle error")` anti-pattern in `ffi/rust/src/` follows in a separate commit (batch 8). ROADMAP.adoc v0.9.x item updated to reflect resolution. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d5f045d commit f43cfb5

10 files changed

Lines changed: 5 additions & 3554 deletions

File tree

ROADMAP.adoc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,11 @@ CI on `rust-cli.yml`, dogfood evidence, structural compliance.
3838
* [ ] Add 3+ ADRs to META.a2ml (six-system proof stack, Rust as primary
3939
implementation, property-testing as correspondence-gap mitigation) and
4040
populate `[development-practices]`.
41-
* [ ] Resolve `impl/rust-ffi/` ↔ `ffi/rust/` duplicate tree (~50
42-
`.expect("TODO")` sites in each); decide which is canonical.
41+
* [x] Resolved 2026-04-19: `impl/rust-ffi/` deleted; `ffi/rust/` is
42+
canonical (superset, includes `verification.rs`, matches CLAUDE.md
43+
ABI/FFI standard `ffi/<lang>/`). 7 sibling files were byte-identical;
44+
`lib.rs` differed only by the `pub mod verification;` export and
45+
richer doc-comment proof references. No build consumers.
4346
* [ ] Complete contractile six-verb layout: create `intend/` (absorbs
4447
former `lust/`, already removed in commit `a48a1dc`), `adjust/`;
4548
relocate `k9` out of `contractiles/` per ADR-001 (k9 is svc, not a

0 commit comments

Comments
 (0)