Watch
1
0
Fork
You've already forked SouveraineOS
0

task 27: culver green at #17, first ever

This commit is contained in:
Fimeg 2026-07-25 17:11:43 -04:00
commit 9363abca3d

View file

@ -37,7 +37,7 @@ Four of them carry a `.gitea/workflows/`. One produces a package.
| repo | runs | green | publishes |
|---|---|---|---|
| `souveraine` | 48 | yes, #4448 | signed pacman repo → `edge` release |
| `culver` | 15 | **never until 07-25** | nothing — CI has no packaging step |
| `culver` | 17 | **first green ever: #17, 07-25** | nothing — CI has no packaging step |
| `Pixel3Arch` | 11 | **never** | nothing |
| `linux-blueline`, `pocketboot`, `souveraine-player`, `stevia`, `tuie`, `profile-engine`, … | — | no CI | nothing |
@ -121,14 +121,32 @@ finding 6 happened, and nothing isolates the next one.
carrying co-author trailers. Fixing means a history rewrite. Casey's call,
still pending.
5b. **`culver` had been red for every one of its 13 runs since 2026-07-19**, and
the whole blockage was accumulated clippy lint: one `redundant_closure`, then
four more plus a `field_reassign_with_default`. None were real defects — but
because `-D warnings` fails the job at the first crate, each fix only reveals
the next, and nobody had walked the chain. Fixed 2026-07-25 (`1e3ea12`,
`b28b15f`); the fallbacks now say `DateTime::UNIX_EPOCH`, which is what the
surrounding comments claimed all along while the code carried a dead
`Utc::now()` branch.
5b. **`culver` had never once been green** — 16 red runs from its first on
2026-07-19. **Green as of #17, 2026-07-25.** The whole blockage was
accumulated clippy lint, in a chain: `culver-core``culver-telephony` +
`culver-contacts``culver-matrix` → the cxx-qt app crate. `-D warnings`
stops at the first failing crate, so each fix only exposed the next and
nobody had walked it. Four commits: `1e3ea12`, `b28b15f`, `ab559bc`,
`8dc8553`.
None of it was a real defect, but the rot is worth recording because a
working pipeline would have caught each item the day it was written:
- three `unwrap_or_else(|| Utc::now())` fallbacks sitting under comments
that said "never *now*" — the dead branch contradicted its own docstring;
now `DateTime::UNIX_EPOCH`
- a `DiffMirror.account` field kept alive by an `_account()` accessor that
was itself dead
- **the app crate had never been linted at all**: four
`pub use qobject::X as QX` re-exports referenced nowhere (dead by
construction — nothing can import from a binary crate), four matching
unused imports, `beginInsertRows`/`endInsertRows` declared on two models
that never insert (`chat.rs` genuinely uses its pair, which is why clippy
spared it), a `pending: VecDeque<ModelUpdate>` queue documented as
"drained on first `apply`" that nothing drained, and an uncalled
`set_header`.
One `#[allow]` was used, on `handle_command`'s 8 arguments, with the reason
in a comment. Everything else is a real fix.
The structural point outlasts the fix: **culver's CI has no packaging step.**
It runs test, clippy and build, then stops. Green culver still ships nothing.