refactor(crates): rename Wasm-component crates into the scry-sai-* namespace#47
Merged
Conversation
…mespace Complete the scry-sai-* (Sound Abstract Interpretation) namespace across the whole workspace: wasm-lattice -> scry-sai-lattice, scry-analyzer -> scry-sai-analyzer. Witness DEC-034 trick again — rename only [package] name; keep [lib] name (wasm_lattice / scry_analyzer), the directories, and the Bazel targets (rust_wasm_component_bindgen name + the macro-derived bindings crate) unchanged, so //:scry builds exactly as before. Nothing depends on these two as cargo deps, so the rename is fully isolated. They stay publish = false and continue to ship as signed .wasm release assets: they are cdylib Wasm components built from Bazel-generated WIT bindings, so a host cargo publish can't build them and a cargo add consumer can't use a cdylib component (the witness precedent). Making them genuine crates.io libraries would require a wit_bindgen::generate! binding refactor touching the shipped //:scry composition for no consumer benefit — deferred. Verified: bare cargo build --release, pure-crate tests, rivet clean. Bazel //:scry unaffected (target names unchanged) — confirmed by CI. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Completes the
scry-sai-*namespace across the whole workspace (part 2 of 2):wasm-lattice → scry-sai-lattice,scry-analyzer → scry-sai-analyzer. Same witness DEC-034 trick — rename only the Cargo[package] name; keep[lib] name(wasm_lattice/scry_analyzer), the directories, and the Bazel targets unchanged, so//:scrybuilds exactly as before. Nothing depends on these two as cargo deps, so the rename is fully isolated.Publishing status (unchanged)
These stay
publish = falseand continue shipping as signed.wasmrelease assets. They arecdylibWasm components built from Bazel-generated WIT bindings → a hostcargo publishcan't build them, and acargo add scry-sai-analyzerconsumer can't use a cdylib component. This matches the witness precedent (publish the libraries, ship the component).Deliberately deferred: making them genuine crates.io libraries would require a
wit_bindgen::generate!binding refactor that swaps therust_wasm_component_bindgenrule on the path that builds the shipped//:scry— high risk (CI-only validation), for no consumer benefit. Flagged for an explicit decision rather than done speculatively.Result: full namespace
scry-sai-interval,scry-sai-taint,scry-sai-octagon,scry-sai-provenance,scry-sai-corescry-sai-lattice,scry-sai-analyzer.wasm(publish = false)scry-host-tests,scry-mcdcVerification
cargo build --release, pure-crate tests (5+24),rivet validateclean.//:scryunaffected (target names unchanged) — confirmed by CI.🤖 Generated with Claude Code