CB-WP-0012-T01: survey the render port — and find AM-4a mis-instrumented
Measured with dep-weight.py's own method so the numbers subtract. Marginal cost against the 23-crate base graph, not headline size: egui+eframe 2,782,849 742x headroom wgpu+winit 1,741,979 465x softbuffer+tiny-skia 1,147,081 306x ratatui+crossterm 1,067,013 285x macroquad 480,501 128x HTML/SVG emission 0 0x ratatui costing more than macroquad is the surprise: rustix pulls linux-raw-sys at 479,901 lines. Separately, AM-4a counts proc-macro crates that never reach a binary: 89,048 lines, 36.2% of the shipped-runtime figure, syn alone 66,916. Real headroom is 92,798, not the 3,750 this repo has been citing. The recommendation is unchanged by that correction — macroquad is 5.2x over even at 92,798 — which is the only condition under which a survey may propose correcting a number in its own favour. The metric fix is filed separately, not bundled with the decision it unblocks. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
331e7e9044
commit
53abbaf68f
2 changed files with 208 additions and 1 deletions
|
|
@ -46,7 +46,7 @@ obstacle or an artifact of how AM-4a is instrumented.
|
|||
|
||||
```task
|
||||
id: CB-WP-0012-T01
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
```
|
||||
|
||||
|
|
@ -74,6 +74,30 @@ that has been true for every pass that has cited it. Check this before
|
|||
recommending any budget change — a survey that argues for raising a target
|
||||
it has not first audited is arguing in its own favour.
|
||||
|
||||
**Done 2026-08-02.** [CB-RES-0006](../research/CB-RES-0006-render-port.md).
|
||||
Two findings, and they point opposite ways.
|
||||
|
||||
The cheapest candidate that opens a window (`macroquad`) costs a marginal
|
||||
**480,501** lines — **128×** the headroom. `egui` + `eframe` costs
|
||||
2,782,849. `ratatui`, the option one expects to be cheap, costs *more than
|
||||
macroquad* (1,067,013) because `rustix` pulls `linux-raw-sys` at 479,901
|
||||
lines.
|
||||
|
||||
And AM-4a is mis-instrumented: **36.2% of the shipped-runtime figure
|
||||
(89,048 lines) is proc-macro crates** — `syn` alone is 66,916 — which run
|
||||
in the compiler and never reach a binary. Real headroom is **92,798**, not
|
||||
3,750. Every pass that cited 3,750, this workplan's own Purpose included,
|
||||
cited a number wrong in the conservative direction.
|
||||
|
||||
The recommendation survives the correction: `macroquad` is still 5.2× over
|
||||
at 92,798. That was the condition for proposing the correction at all, and
|
||||
the correction is filed separately rather than bundled with the decision
|
||||
it would unblock.
|
||||
|
||||
Recommended: `cb-render-api` + `cb-render-null` + **`cb-render-html`** —
|
||||
emitted HTML/SVG/JS, marginal AM-4a cost **zero**, with `cb-render-wgpu`
|
||||
left to stage 2 where it becomes the interface's second use.
|
||||
|
||||
## Task: adversarial review of the survey
|
||||
|
||||
```task
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue