Skip to content

CI floor time: child-spawn attribution (Pi-3 bench × srv1) — corroborate + correct #7106 - #7136

Merged
briansrls merged 1 commit into
mainfrom
session/ci-floor-pi-bench-receipt
Jul 23, 2026
Merged

briansrls merged 1 commit into
mainfrom
session/ci-floor-pi-bench-receipt

Conversation

@briansrls

Copy link
Copy Markdown
Contributor

Summary

Measurement-only follow-on to the merged #7106 CI-floor audit. Same mandate, re-run on a
Raspberry Pi 3 used as a slowdown-exaggeration bench against srv1 (Ampere Altra, same
class as the CI runners), with release binaries built from the merged head. Everything is by
execution
; no floor behavior, substrate, or unit-modeling changes — the only .dag edit is one
doc-graph bind row.

Corroborates #7106: phase walls, resolves_total=4, materialization receipt, width=1 at the
16 GiB cgroup ceiling.

Corrects the attribution:

Recommendations (plan doc §8): dissolve the child-spawn class toward the process_shared_index
"resolve once, share by reference" terminal (interim: pool per gate), gated on footprint;
re-open the discovery 643s as an unknown; ledger the two unledgered costs; keep a footprint probe
on the emit stage (337× Pi stretch — the most memory-shaped compiler stage).

Carriers

Test plan

  • doc_graph_has_no_orphan_docs / doc_graph_has_no_dangling_links / slug wall — verified by execution on srv1 (results in-thread)
  • No ci_floor_plan batch ordering or floor runtime changes (diff is docs + one doc-graph bind row)
  • Bind target tools.host_prelude::run_gunbc_claims_ready resolves in-tree
  • CI floor (measurement docs only; fleet gate)

🤖 Generated with Claude Code

…— corroborate + correct #7106

Measurement receipt only (docs + one doc-graph bind row); no floor behavior,
substrate, or unit-modeling changes.

Re-runs the merged #7106 audit on a Raspberry Pi 3 used as a slowdown-exaggeration
bench against srv1, with release bins built from the merged head. Corroborates the
phase walls, resolves_total=4, and the materialization receipt; corrects the
attribution:

- ~48% of the floor (26 cold `gunbc` child processes across batches 1/6/7, Σ≈23min)
  is spawned one-per-ClaimRun by run_gunbc_claims_ready (host_prelude.dag:177),
  invisible to resolves_total. The third instance of "cold index per execution unit"
  (per-thread #7030, per-repeat double-resolve-rewire, per-process here).
- srv counterfactual: pooling batch-1's 12 claims 479.6s→93.4s (5.1×). Pi
  counterfactual: pooling ≈ spawn-sum — the win vanishes at the memory wall, so the
  fix must pair with per-worker footprint reduction.
- #7106 lever #1 (per-entry fixpoint) is stale: #7030/#7056 are in the measured run's
  ancestry with no recovery. Lever #2 (ingest re-walk) targets the wrong mechanism
  (the bin is 0.008s). Two unledgered costs added: selection-control 4m51s, teardown
  ~2.5m.
- Side finding (needs root-cause): standalone `gunbc compile --target dag` reds with
  2652 UnlistedImportUse errors on the CI-green tree; the floor gate consumes the
  executor's internal receipt instead — two compile-clean realizations, one class.

Bind: docs/plans/ci-floor-child-spawn-attribution.md → tools.host_prelude::run_gunbc_claims_ready
(dissolves when the child-spawn class is dissolved).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@cursor

cursor Bot commented Jul 23, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@briansrls
briansrls merged commit c3d8b92 into main Jul 23, 2026
5 checks passed
@briansrls
briansrls deleted the session/ci-floor-pi-bench-receipt branch July 23, 2026 23:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant