Repository navigation
chore(tools): remove tools/synthetic-dwg, which examples/build_fixtures supersedes (#20) - #397
Merged
Merged
Conversation
…es supersedes (#20) The crate emitted a 107-byte R14 skeleton with a fake LINE payload no decoder reads. It was not a workspace member, no CI job built, linted or tested it, and examples/build_fixtures.rs writes the real canonical fixtures. Removed with it: its UNWATCHED entry in tools/maintainer/audit.py (the Dependabot coverage check passes without it) and every mention in CLAUDE.md, Cargo.toml, .gitignore and STATUS.md. The four wasm sample files it produced stay; their README now says where they came from and that nothing regenerates them.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
#20) wasm/src/sample_loader.rs and DwgFile.openSample never existed in the tree. pages.yml publishes the directory at /samples/; the README now says that, and that the V-20 loader is not implemented.
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
Removes
tools/synthetic-dwg, the out-of-workspace R14 generator thatexamples/build_fixtures.rssupersedes, and every reference to it.Spec reference
None; tooling only. Closes #20 (issue body: "Preference: delete unless it has a purpose the fixture builder cannot serve").
Why the tool has no remaining purpose: it emitted a 107-byte R14 skeleton with a fake LINE payload that no decoder path reads, was not a workspace member, and no CI job built, linted or tested it.
examples/build_fixtures.rswrites the real canonical fixtures (tests/fixtures/canonical/, byte-deterministic, regenerated and diffed in CI). The one thing it produced that is still used is the four sample files underwasm/examples/samples/, whichpages.ymlcopies into the Pages site; they stay (see below).Test plan
Removed:
tools/synthetic-dwg/(Cargo.toml,Cargo.lock,src/main.rs). Updated references:tools/maintainer/audit.py: theUNWATCHEDentry for/tools/synthetic-dwgis gone (the dict is now empty, with its comment moved next to it; the comment's claim that docs/maintaining.md says the same is dropped, since it does not).wasm/examples/samples/README.md: provenance now says the files were committed on 2026-04-20 (f5bd374) from the removed generator, gives its source in history (git show e7c53e1:tools/synthetic-dwg/src/main.rs), drops the regenerate instructions, and records that the four files are byte-identical (SHA-2561a6e92f734f0a747b434cc617953e907ca35b2c394962f5149d3ad9e5358c342, 107 bytes each) and that nothing regenerates them.CLAUDE.md(the list of separate crates),Cargo.toml(theexcludecomment now describes whattools/holds),.gitignore(the**/target/comment nameswasm/andfuzz/),STATUS.md(the shipped-DEV-docs list), and aCHANGELOG.mdline under the maintainer-tooling entry..github/dependabot.ymlnever listed the directory (that is whyUNWATCHEDexisted), so nothing to remove there.Nothing builds or reads it any more:
No file in the tree names it except the README's provenance note and the CHANGELOG line (
git grep -n -i 'synthetic-dwg\|synthetic_dwg'after the change):(and the CHANGELOG line, which
git grepalso lists). NoCargo.toml,Cargo.lock, workflow or Dependabot file names it (git grep -c -i 'synthetic-dwg\|synthetic_dwg' -- '*Cargo.lock' '*.toml' '.github'prints nothing).No Cargo workspace contains it or depends on it.
cargo metadata --no-deps --offlineon the three manifests:The only
path =dependencies in the repository aredwgitself, inwasm/andfuzz/. This is a manifest check, not a build: the tool was never part of any build graph, so nocargo checkwas needed.The audit that carried the exception passes without it.
audit.py'sdependabot_coveragecheck, run against a local file tree instead of the GitHub API (ghreplaced bygit ls-tree/git ls-files):The third line shows the old
UNWATCHEDentry was the only thing covering the directory, and that deleting the directory is what makes the empty dict correct.Also fixed in the same README: it named
wasm/src/sample_loader.rsand aDwgFile.openSample(name)entry point, neither of which has ever existed in the tree. Nothing fetches the four files today;.github/workflows/pages.ymlpublishes the directory at/samples/,wasm/src/no_upload.rsrecords that the V-20 loader needs a one-line CSP relaxation when it ships, anddocs/viewer/index.htmlreads only a file the user picks. The README now says exactly that.Source-provenance declaration
By submitting this PR I certify that my contribution does not incorporate executable code from any source whose license is incompatible with Apache-2.0. Specifically:
CLEANROOM.md).dwg-rsis Apache-2.0 and must remain compatible.My contribution is based on:
CLEANROOM.md.See
CLEANROOM.mdfor the full allowed/forbidden source list and the honest scope of what "clean-room" means for this project.Developer Certificate of Origin
By submitting this PR, I certify that the contribution complies with the
Developer Certificate of Origin 1.1.
Specifically, I affirm that the contribution is my own work (or rightfully
licensed to me) and that it can be distributed under the project's Apache-2.0
license.
I will sign off commits with
git commit -swhen asked, which adds aSigned-off-bytrailer to the commit message asserting the DCO.