fix(repo): unbreak main — eight breaks the four parallel unbreak merges left behind - #2014
Merged
Conversation
…s the #1964 merge and its neighbours left `main` fails `fmt`, `clippy -D warnings` and the file-size ratchet at 6c34553. Four parallel sessions fixed the same red base at once (#1964, #1970, #1971 and this branch's earlier push); the merge that closed #1964 resolved every overlap by keeping BOTH sides, which produces code that compiles and lints red rather than a conflict anyone had to look at. Clippy (`-D warnings`), all merge artefacts: - `management_system_block` lists `ModelCallRole::Research` twice in one `|` chain — both sides appended it at different positions, so git took both. `unreachable_patterns`. One copy removed. - `scope_stage::plan_with_review` both hoists `let mut spend` before the loop AND builds an inline `Spend` per iteration. The hoisted binding is dead (`unused_variables` + `unused_mut`). The inline form is kept: it is the one the loop actually needs, and #1971's comment beside it says why. - `SHELL_TOOL`/`shell_call_result`/`PassingShell` exist in both `verification_hardening` and its `flip_halt_arming` child. The child's are the used ones, so the parent's three are `dead_code`. Deleted, and the `mod` doc now says where the doubles live. Formatting: `crates/stella-protocol/src/event/tests.rs` is missing the trailing newline `rustfmt` wants after `mod tag_table;` — unrelated to any of the above and failing `cargo fmt --check` on its own. File-size ratchet: `driver.rs` and `pipeline/tests.rs` each sit one line over a stale ceiling. Regenerated with `make file-size-update` rather than hand-edited, which is also why the diff mostly TIGHTENS: `pipeline.rs` drops 3451 -> 3181 and `bus.rs` 2126 -> 1891, both already true before this change and neither recorded. Verified on this tree, not inferred: `make guards-fast` (all 25 guards plus fmt), workspace clippy, workspace rustdoc, and `cargo test -p stella-pipeline`. Refs #1986 Refs #1972
An eighth break on the same red base, and one the previous commit's workspace rustdoc run could not see: `cargo doc` stops at the first crate that fails, and `stella-protocol` sits under everything, so this only surfaced once the `stella-cli` link above it was resolved — the layered masking that has now bitten this repo three times in a row. `StepUsage`'s doc links a bare [`CompactionRewrite`], which is re-exported at the crate root but never imported into `event`'s scope; the very next line already spells the field's type `crate::CompactionRewrite`. The link now uses the same path the field does. Refs #1986
Contributor
There was a problem hiding this comment.
Sorry @macanderson, you have reached your weekly rate limit of 500000 diff characters.
Please try again later or upgrade to continue using Sourcery
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
Reviewer's guide (collapsed on small PRs)Reviewer's GuideRestores Flow diagram for restoring CI gates on mainflowchart TD
repo_red["Red main at 6c345532"]
clippy_fail["Clippy -D warnings fails"]
rustdoc_fail["Rustdoc -D warnings fails"]
fmt_fail["cargo fmt --check fails"]
size_fail["File-size ratchet fails"]
pr_fixes["This PR: remove duplicates, fix rustdoc link, add newline, update file-size baseline"]
repo_green["All gates green on main"]
repo_red --> clippy_fail
repo_red --> rustdoc_fail
repo_red --> fmt_fail
repo_red --> size_fail
clippy_fail --> pr_fixes
rustdoc_fail --> pr_fixes
fmt_fail --> pr_fixes
size_fail --> pr_fixes
pr_fixes --> repo_green
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
…docs/wire `StepUsage::rewrites`' doc comment is not only rustdoc — `docs/wire/` is generated from these types and the comment ships as the field's `description` in `agentevent.schema.json`, `serveframe.schema.json` and both `.d.ts` files. So the previous commit's `crate::CompactionRewrite` fixed the rustdoc link by writing Rust-internal pathing into a language-agnostic contract a TypeScript consumer reads, and left the committed schema stale, which `wire-schema` caught. Plain backticks instead: no link for rustdoc to resolve, and a description that still names the type for every consumer. A JSON Schema reader loses nothing — the field's `items` already carries `"$ref": "#/$defs/CompactionRewrite"` on the next line. `docs/wire/` regenerated with `make wire-schema-update`; the diff is the four description lines and nothing else. Refs #1986
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.
What & why
mainis red at6c345532on three separate gates —cargo fmt --check,cargo clippy -D warnings, and the file-size ratchet — plus workspacerustdoc. Every open PR inherits all of it.
The cause is not one bad change. Four sessions fixed the same red base
concurrently (#1964, #1970, #1971, and an earlier push to #1964's branch).
The merge that closed #1964 resolved every overlap by keeping both
sides, which is the dangerous resolution here: it produces code that
still compiles, so nothing conflicted and nobody had to look at it, and the
damage only shows up under
-D warnings.clippy (
-D warnings) — four merge artefactsmanagement_prompt/tests.rsModelCallRole::Researchappears twice in one|chain →unreachable_patternspipeline/scope_stage.rslet mut spendand a per-iteration inlineSpend→unused_variables+unused_muttests/verification_hardening.rsSHELL_TOOL,shell_call_result,PassingShellduplicated into theflip_halt_armingchild → threedead_codeIn each case the duplicate is deleted and the used copy kept. For
scope_stagethat is the inlineSpend, because the loop replans after arejected scope card and a moved bundle could not be handed to the next
attempt — #1971's comment beside it already says so.
fmt
crates/stella-protocol/src/event/tests.rsis missing the trailing newlinerustfmtwants aftermod tag_table;. Unrelated to the merges and failingon its own.
rustdoc
StepUsagelinks a bare[`CompactionRewrite`], re-exported at the crateroot but never in
event's scope — the next line already spells the fieldcrate::CompactionRewrite, so the link now matches. This one wasinvisible until the
stella-clilink above it was fixed:cargo docstops at the first failing crate, so a broken link one dependency layer
down masks every link beneath it. Third occurrence of that pattern here.
file-size ratchet
driver.rsandpipeline/tests.rseach sit one line over a stale ceiling.Regenerated with
make file-size-updaterather than hand-edited — which iswhy the diff mostly tightens:
pipeline.rsdrops 3451 → 3181 andbus.rs2126 → 1891. Both were already true and neither was recorded.The witness
No witness test: this is a build/lint/format repair with no behaviour
change. The gate is the witness, and each failure was reproduced locally
before and after.
The gate
Run on this tree, not inferred:
make guards-fast— all 25 guards pluscargo fmt --checkcargo clippy --workspace --all-targets -- -D warningsRUSTDOCFLAGS="-D warnings" cargo doc --workspace --no-deps(24 crates)cargo test --workspace./scripts/check-file-size.shandcheck-god-filesNothing left behind
Already filed and linked, not duplicated:
ci.ymldoes not run on a push tomain, which is why alleight of these landed unnoticed. This PR is the fourth cleanup in a row
caused by that gap; it is the fix worth prioritising.
enforce_adminsoff).ALL_ROLESis a hand-maintained array that can silentlyunder-test the role family; it is exactly what let the
Researcharmdrift in the first place.
Refs #1986
Refs #1972
Refs #1977
Summary by Sourcery
Repair main by resolving merge artefacts and bringing formatting, linting, documentation, and file-size checks back to green.
Bug Fixes:
Enhancements:
Build:
Tests:
Chores: