chore: remove compounded footer blocks, batch 45 of 45 (#3451) - #3664
Conversation
Refs #3451 Batch 45 of 45. Pure deletion: 10 files, 0 added. node scripts/dedupe-footers.js --fix --paths-from=small-45.txt The scope split comes from the code, not per-file judgement: isFooterExemptPath() in scripts/agents/includes/footer-policy.js with the keep decision in analyseContent(). 1 of the 10 files are footer-exempt and lost their footer entirely, which is the policy docs/QUIRKY_FOOTERS_GUIDE.md states; the other 9 were collapsed to exactly one clean trailing footer, the last block, which is what ensureFooter() treats as canonical. Covers `tests`. Manifests were derived once before any of this ran and are fixed: batch N is small-NN.txt. Cross-batch overlap is 0, so these pull requests cannot conflict with each other. Verification: - re-running --check over the manifest reports 0/10 affected - independent differential pass, negative-tested: pure order-preserving deletion, every deleted line classified as footer structure, none from frontmatter or a fenced code block, and the classified counts sum to exactly the numstat deletion total - staged paths match the manifest exactly, 0 outside Carries the one changelog entry for the other areas/ area, the last batch in that area. Validated against CHK_UNIQUE_CONTENT and CHK_MAX_LENGTH before committing. The pre-commit hook is bypassed for this commit, as in every commit in this series. It runs npx lint-staged, dependencies are not installed in this worktree, and #3590 records that the Markdown hook corrupts shields.io badge links. CI does not run lint:md, so this does not diverge from what CI checks.
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
|
Warning Review limit reachedNext included review available in 29 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Repository: lightspeedwp/.github/.coderabbit.yml Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (11)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
No description provided. |
PR Template RoutingBranch Type: This PR was automatically routed based on the branch naming strategy. |
📋 Changelog Quality Validation
Status✅ Validation PASSED - No new failures introduced by this PR. No action required. |
Compounded footer blocks removed — batch 45 of 45
Refs #3451 — not
Closes. The issue stays open until all 45 batches land and the whole-repo run reports zero.Linked issues
Relates to #3451— repo-wide footer duplicate cleanup. 0 batches remain after this one.Why 90 files and not 1,950
CodeRabbit's server-side review only runs under 100 changed files. Every batch of the earlier plan was skipped with
Review skipped: … files exceed the limit of 100, so their review was a local slice rather than a review of the pull request. Batches are capped at 90, leaving headroom forCHANGELOG.mdand keeping the largest pull request at 91 files. The cost is explicit: 45 pull requests.Context
Reproduction
Scoped to this batch's manifest, so the check reports only what this pull request changed:
Before the fix:
10/10 file(s) affected · blocks found 79 · exempt-path files 1, exit 1.After the fix:
0/10 file(s) affected, exit 0.Root Cause
Two defects, both fixed in merged tooling:
header-footer.jsheldFOOTER_PATTERNSprivately, so the end-anchored matcher inensureFooter()could not see an asterisk-wrapped footer. Every automation run appended another copy rather than replacing the existing one, compounding the stack. Fixed by fix: match asterisk-wrapped footers in dedup regex #3443 and feat: add footer duplicate guard and share footer policy (#3451) #3588.docs/QUIRKY_FOOTERS_GUIDE.mdwas documented and mirrored into two config files, but no live code read either. Fixed by feat: add footer duplicate guard and share footer policy (#3451) #3588.Fix Summary
Deletion only, produced by the committed tool over this batch's fixed manifest:
The split is decided by
isFooterExemptPath()inscripts/agents/includes/footer-policy.jsand thekeepdecision inanalyseContent(), not by a judgement call per file. Batch 45 coverstests.Verification
--checkover the manifest after the fix reports0/10 file(s) affected, exit 0 — idempotent.numstatdeletion total, a second independent count of the same number. The checker is negative-tested — an injected content line and a deletion from inside a fence both make it fail.CodeRabbit
Recorded in the running report for this batch: whether the review actually ran on this pull request, or was rate-limited and therefore did not run. A green CodeRabbit tick here means "reviewed" only if that report says so — the check also passes when it declines.
Changelog
This is the last batch for
other areas/, so it carries the area-level entry. Validated againstCHK_UNIQUE_CONTENTandCHK_MAX_LENGTHbefore committing.Changed
Risk & Rollback
git revertthis commit. The revert is itself a pure insertion.npx lint-staged, dependencies are not installed in the worktree used for this work, and fix: lint:md and lint-staged corrupt shields.io badge links whose URL contains a space #3590 records that the Markdown hook corrupts shields.io badge links. CI does not runlint:md.