mirror of
https://github.com/Hmbown/DeepSeek-TUI.git
synced 2026-09-03 06:50:13 +08:00
* docs(changelog): add the missing release-note receipt for #5766 `scripts/release/check-feature-release-notes.sh` requires every issue-linked `feat:` commit in the release range to leave a durable changelog receipt.79ed88f377("feat(config): bind catalog and route resolution (#5766)") landed without one, so `scripts/release/check-versions.sh` now exits 1 on plain main: $ git worktree add --detach wt origin/main #6ea10032f9$ ./scripts/release/check-versions.sh ::error::Feature commit79ed88f377references #5766, but no release-note receipt exists in CHANGELOG.md docs/CHANGELOG_ARCHIVE.md. exit=1 "Version drift" is a required status check, so this failed every pull request opened or re-run against current main, not just the one that surfaced it. The entry says plainly that #5766 is additive plumbing with no call-site or user-visible change, rather than inventing a user-facing feature to satisfy the gate. `crates/tui/CHANGELOG.md` is regenerated with `./scripts/sync-changelog.sh` so the slice check passes too. After this commit `./scripts/release/check-versions.sh` exits 0: Feature release-note receipts OK: 47 linked issue reference(s) checked. Version state OK: workspace=0.9.11, npm=0.9.11, npm-binary=0.9.11. Signed-off-by: CodeWhale Bot <bot@codewhale.net> * ci: stop repo-wide and history-wide audits from failing innocent PRs A required per-PR check should assert a property of the change. Five of ours assert a property of the whole repository or of already-merged history, so a branch fails for debt it did not add and the fix is rebasing rather than editing code. That is how the queue got stuck, and it trains people to read a red check as noise. Demoted to advisory on `pull_request` only, still blocking on pushes to main: - Check dead-code budget (absolute #[allow(dead_code)] total) - Check runtime-contract budget - Check persistence-backlog budget - Check harvested contributor credit check-versions.sh keeps every tree-state check blocking everywhere. Only its two range audits -- check 12 (feature release-note receipts) and check 7 (contributor credit), both scanning previous-tag..HEAD -- become advisory, and only for the per-PR CI job, via a new --range-audit-advisory flag. Every release path still runs them blocking: release-candidate.yml, auto-tag.yml, release.yml, and prepare-release.sh. Combining the new flag with --require-dated-release is refused outright so publication can never skip them. Measured on the merge of origin/main + pr/5740, a tree with the real missing #5766 receipt: $ ./scripts/release/check-versions.sh # exit 1 ::error::Feature commit79ed88f377references #5766, but no release-note receipt exists in CHANGELOG.md docs/CHANGELOG_ARCHIVE.md. $ ./scripts/release/check-versions.sh --range-audit-advisory # exit 0 ::warning::Missing feature release-note receipt(s) above. Advisory here because this audits already-merged commits in v0.9.10..HEAD, not this change. Version state OK: workspace=0.9.11, npm=0.9.11, npm-binary=0.9.11. actionlint is clean on the edited workflow. Signed-off-by: CodeWhale Bot <bot@codewhale.net> Entire-Checkpoint: 01M1D74JXS2F91WDY9DSKQ787E * fix(tui): silence clippy::explicit_counter_loop in the startup mark rust 1.98's clippy added `explicit_counter_loop` coverage for this shape, and CI's `dtolnay/rust-toolchain@master` picked it up. `Lint` is a required check, so main is currently red on it and every pull request inherits the failure: error: the variable `x` is used as a loop counter --> crates/tui/src/tui/mark.rs:182:9 | 182 | for glyph in line.chars() { | help: consider using: `for (x, glyph) in (x0..).zip(line.chars())` = note: `-D clippy::explicit-counter-loop` implied by `-D warnings` error: could not compile `codewhale-tui` (lib) due to 1 previous error Applied clippy's own suggestion. Behaviour is identical: `x` still starts at `x0` and advances one cell per glyph, and the `x >= area.right()` break still stops the row at the viewport edge -- `zip` only advances as far as `line.chars()` yields, so the open-ended range cannot run away. Signed-off-by: CodeWhale Bot <bot@codewhale.net> Entire-Checkpoint: 01M1D7F82ZEN4JVYBN0W1YDPRX --------- Signed-off-by: CodeWhale Bot <bot@codewhale.net> Co-authored-by: CodeWhale Bot <bot@codewhale.net>