This repository has been archived on 2026-09-16. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Syplheed-Reborn/docs/re/test-suite-runtime.md
Sylpheed RE agent 145046f88f docs: the verification gate cannot terminate, and I left two runs going 4h
Two findings from checking whether last iteration's partial green had
finished. It had not, and the reason matters for anyone using the gate.

build-reborn test contains twin_pairs_do_not_share_a_buffer, which
decodes every .xpr in hidden/resource3d -- 166 files, 1.4 GB -- through
the full Xbg7Model anchoring path, and is NOT #[ignore]d. Its sibling in
the same file walks the same 166 files and IS ignored as known-failing,
which makes the binary's cost easy to underestimate. Measured: one
instance accumulated 3h26m of CPU at 89% without finishing.

So every "green run" reported in this corpus from a workspace or
sylpheed-formats test is necessarily PARTIAL unless it says the suite
terminated -- including the ones I reported this session. The honest form
is the suite count and elapsed state, not the word "green". Not proposing
to #[ignore] or subsample it: that changes what the suite asserts and is
the project's call, not an audit side-effect.

And the mess is mine. Two cargo test -p sylpheed-formats runs launched
detached in earlier iterations never exited, because they were sitting in
that test:

  pid 103375  4h12m elapsed  child mesh_consistency_disc  3h26m CPU  89.3%
  pid  99965  4h39m elapsed  child pak_idxd_disc          1h16m CPU  93.8%

Load average 14.18 on 12 cores. Killed, after checking the legitimately
running workspace suite and leaving it alone; load fell to 9.68.

What this does NOT explain, because it is tempting: the session's
emulator troubles. screenshot cost 0.49 s with both runaways live and the
emulator stopped, against 10.8 s measured earlier with the emulator
running. The 92x figure really was emulator contention; the runaways were
a background tax on top. The black surface and the unreachable title
stand as measured, with their own controls.

METHOD: a detached job you never check can outlive many iterations --
setsid was added so a timeout could not kill them, which also means
nothing does; and know whether your verification gate can terminate.
2026-08-29 03:45:14 +00:00

58 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🔴 `build-reborn test` cannot finish in a working session — and I left two runaways
**Status:** ✅ measured. Two facts, one of them my own mess.
## The gate the brief names does not complete
`build-reborn test` (`cargo test --workspace` with `SYLPHEED_DISC` wired up) is
the verification gate. It contains a disc test that decodes **every `.xpr` in
`hidden/resource3d` — 166 files, 1.4 GB** — through the full `Xbg7Model`
anchoring path:
```rust
#[test] // NOT #[ignore]d
fn twin_pairs_do_not_share_a_buffer() {
…for f in &files { … Xbg7Model::anchor_models_cancellable(&bytes, 0.0, &|| false) … }
```
Measured: one instance accumulated **3 h 26 m of CPU at 89 %** without finishing.
Its sibling in the same file, `shared_resources_decode_identically_in_every_container`,
walks the same 166 files and *is* `#[ignore]`d (as known-failing), so the binary's
cost is easy to underestimate from a glance at the file.
⚠️ **Consequence for anyone using this gate:** every "green run" reported in this
corpus from a workspace test is necessarily **partial** unless it explicitly says
the suite terminated. `cargo test -p sylpheed-formats` reaches ~131 tests in a few
minutes and then sits in this one; the workspace run is the same picture. Quote
the suite count and the elapsed state, not the word "green".
🟡 Not proposed here: `#[ignore]`-ing it, or bounding it to a sample of the 166.
Both change what the suite asserts, which is the project's call and not a
side-effect of an audit.
## 🔴 And I left two of them running for four hours
Two `cargo test -p sylpheed-formats` runs launched detached in earlier iterations
never exited, because they were sitting in this test. At the moment they were
found:
| pid | elapsed | child | CPU time | %CPU |
|---|---|---|---|---|
| 103375 | 4 h 12 m | `mesh_consistency_disc` | **3 h 26 m** | 89.3 |
| 99965 | 4 h 39 m | `pak_idxd_disc` | 1 h 16 m | 93.8 |
Load average **14.18** on 12 cores. Killed; load fell to **9.68** within a
minute, and the legitimately-running workspace suite was checked first and left
alone.
### 🔴 What this does NOT explain
It is tempting to pin the session's emulator troubles on this, and the
measurement says no. `screenshot` cost **0.49 s** with both runaways live and the
emulator stopped, against the **10.8 s** measured earlier with the emulator
running. So the 92× figure in
[capture-harness-status](capture-harness-status.md) really was emulator
contention, and the runaways were a background tax on top — not the cause. The
black surface and the unreachable title stand as measured, with their own
controls.