Move the legacy Perl toolchain to legacy_perl/ - #1098
Merged
Conversation
Pure git mv, no content edits: the 12 Perl executables, the Perl-era release packager, plotly/ (report assets), and test_data.fastq. Path fixes for every in-repo consumer follow in the next commit so renames stay cleanly detectable.
…le layout gate Follow-up to the pure move: updates all 23 in-repo path sites (8 oracle-test literals, 2 plotly drift guards, 6 golden-generation scripts, 4 scripts/ byte-identity harnesses, 44 ci_tests.yml invocations + hints), adds tests/legacy_perl_layout.rs (unconditional existence gate for the 12 scripts + 4 code-read plotly assets — cannot skip, needs no Perl), and updates .gitattributes/.dockerignore/README/CHANGELOG prose. The six tests/data golden scripts had a stale up-count resolving to rust/ (multicall-consolidation relic) — repaired to the real repo root while touching them. filter_nonconversion's hardcoded absolute default is now a computed repo root. copy_bismark_files_for_release.pl moves as a historical artifact, accepted broken (its Docs/ inputs no longer exist; PLAN Open-5). Verification (PLAN §12): oracle battery baseline 72 ok on dev; post-move pre-fix sabotage failed exactly the 20 loud gates while the 13 skip-capable summary/template oracles stayed silently green (the hazard the layout gate closes); post-fix battery 73 ok = baseline + the new gate, 0 failed; layout gate observed red under deliberate sabotage; fmt + clippy (default and rammap-inprocess) clean; Perl bismark2report proven to resolve plotly from the new location.
… name legacy_perl/plotly Dual code review (A+B, both APPROVE) + coverage audit (COMPLETE) fixes: - legacy_perl_layout.rs asserts mode +x on the 12 scripts (cfg(unix)) — ci_tests.yml runs them as ./legacy_perl/<name>, so the bit is load-bearing - drift-guard assert messages and comments now name legacy_perl/plotly/ - rust/README.md v0.25.1 sentence leads with the tag layout it instructs - .gitattributes block realigned; filter_nonconversion golden script reuses HERE; c2c matrix help text word restored - PLAN §12/§13: 7th golden script recorded (true counts 7/24), V2 ok-count marked toolchain-sensitive, published-tarball constraint noted
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.
The frozen Perl v0.25.x toolchain moves from the repository root into
legacy_perl/so the landing page reads Rust-first: the 12 Perl scripts, theirplotly/report assets,test_data.fastq, and the Perl-era release packager. No behaviour change to any tool — commit 1 is a pure rename, commit 2 points every in-repo consumer at the new path and adds an unskippable layout gate.Consumers updated (24 code sites): 8 oracle-test path literals, both plotly drift guards, 7 golden-generation scripts (their stale up-counts — which resolved to
rust/, a multicall-consolidation relic — repaired to the real repo root while touching them), 4scripts/byte-identity harnesses, and all 44ci_tests.ymlinvocations..gitattributes' root-anchoredplotly/**line is rewritten;legacy_perl/is excluded from the Docker build context (~20 MB); README/CHANGELOG updated.license.txtstays at root (release packaging copies it from there).New gate:
tests/legacy_perl_layout.rsasserts the 12 scripts + 4 code-read plotly assets exist — unconditional, no Perl needed, cannot skip. This closes a real hazard demonstrated during implementation: with the scripts moved and paths unfixed, the 12summary_perl_oracletests and the template-drift guard pass silently green (they are skip-capable and outside the perl-oracle job's EXPECTED list).Verification (full record in
plans/08082026_legacy-perl-move/PLAN.md§12): oracle-battery baseline 72 ok ondev; post-move/pre-fix sabotage failed exactly the 20 loud gates; post-fix battery 73 ok = baseline + the new gate, 0 failed; the layout gate was observed red under deliberate sabotage before being trusted; fmt + clippy (default andrammap-inprocess) clean; Perlbismark2reportproven to resolve$RealBin/plotlyfrom the new location.Known external cost (accepted, in CHANGELOG):
blob/master/<script>deep links 404 — the immutablev0.25.1tag is the stable Perl reference. bioconda/Homebrew/containers are unaffected (they build fromrust/or the tag).