From 7f4d5c5b89b6ea75274433f4006ccebfa783acba Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 8 Sep 2026 12:52:21 -0400 Subject: [PATCH] dashboard refresh --- campaign/DASHBOARD.md | 41 +++++++++++++++++++++-------------------- 1 file changed, 21 insertions(+), 20 deletions(-) diff --git a/campaign/DASHBOARD.md b/campaign/DASHBOARD.md index 28549c0..3e0ee9c 100644 --- a/campaign/DASHBOARD.md +++ b/campaign/DASHBOARD.md @@ -1,37 +1,37 @@ # SotS RE campaign — coverage dashboard -Generated 2026-09-08 16:15 UTC · `sots-re` @ f328b82,2026-09-08 · `sots-engine` @ b2bad30,2026-09-08 (136 commits) · regenerate with `tools/dashboard.py` +Generated 2026-09-08 16:52 UTC · `sots-re` @ 90fba30,2026-09-08 · `sots-engine` @ 0592104,2026-09-08 (145 commits) · regenerate with `tools/dashboard.py` > **North star:** A functional reimplementation of the engine — behavior-equivalent, NOT byte-for-byte ## 1. Map coverage (campaign/board.md) -207 targets · mapped-or-better **177/207** `[█████████░] 86%` · verified **146/207** `[███████░░░] 71%` +227 targets · mapped-or-better **195/227** `[█████████░] 86%` · verified **162/227** `[███████░░░] 71%` | Status | Count | % | |---|---:|---:| -| verified | 146 | 71% | -| mapped | 31 | 15% | +| verified | 162 | 71% | +| mapped | 33 | 15% | | in-progress | 2 | 1% | -| backlog | 26 | 13% | +| backlog | 28 | 12% | | blocked | 2 | 1% | | Type | verified | mapped | in-progress | backlog | blocked | total | |---|---:|---:|---:|---:|---:|---:| -| objects | 26 | 6 | 0 | 2 | 1 | 35 | -| control-flow | 11 | 2 | 0 | 1 | 0 | 14 | +| objects | 29 | 6 | 0 | 2 | 1 | 38 | +| control-flow | 14 | 2 | 0 | 1 | 0 | 17 | | subsystems | 3 | 7 | 1 | 3 | 1 | 15 | | engine | 20 | 0 | 0 | 0 | 0 | 20 | -| verify | 37 | 7 | 0 | 16 | 0 | 60 | +| verify | 42 | 8 | 0 | 18 | 0 | 68 | | phase2 | 10 | 3 | 1 | 2 | 0 | 16 | -| meta | 34 | 6 | 0 | 1 | 0 | 41 | -| other | 5 | 0 | 0 | 1 | 0 | 6 | +| meta | 37 | 6 | 0 | 1 | 0 | 44 | +| other | 7 | 1 | 0 | 1 | 0 | 9 | ## 2. Binary understanding - RTTI type descriptors: **1,924** (`Game::` 1,404, `Mars::` 194; serializable types 179) - Classes with recovered member layouts: **384** / 1,598 named classes `[██░░░░░░░░] 24%` — `objects/layouts.json` (serializer recovery) plus classes recovered by hand in `struct-recovery.md` + `schema-gaps-resolved.md`. Note 179 types are *serializable*; the recovery also reaches non-serializable ones, so this is not a subset of that -- Functions: **41,411** (parsed from `01-fingerprint.md`); named/annotated in the **address contract** (`ghidra/addresses.json`, not Ghidra's full rename count): **875**, verified **838** `[██████████] 96%` +- Functions: **41,411** (parsed from `01-fingerprint.md`); named/annotated in the **address contract** (`ghidra/addresses.json`, not Ghidra's full rename count): **986**, verified **940** `[██████████] 95%` ## 3. Data layer @@ -45,23 +45,24 @@ Generated 2026-09-08 16:15 UTC · `sots-re` @ f328b82,2026-09-08 · `sots-engine | Module | LOC | Test files | Checks | Wired | Doc | |---|---:|---:|---:|---|---| -| `app` | 1,614 | 5 | 69 | yes | N-output-term.md | +| `app` | 1,754 | 6 | 79 | yes | N-output-term.md | | `game/combat` | 582 | 2 | 34 | yes | mars-parse.md | | `game/config` | 558 | 4 | 131 | yes | M1.md | -| `game/data` | 2,053 | 12 | 462 | yes | game-data.md | -| `game/design` | 1,024 | 17 | 250 | yes | game-design.md | +| `game/data` | 2,077 | 12 | 462 | yes | game-data.md | +| `game/design` | 1,200 | 19 | 303 | yes | game-design.md | | `game/effects` | 973 | 3 | 231 | yes | game-effects.md | | `game/events` | 558 | 3 | 152 | yes | E-events.md | +| `game/nav` | 581 | 2 | 113 | yes | — | | `game/sim` | 3,382 | 10 | 730 | yes | game-sim.md | | `mars/parse` | 875 | 12 | 277 | yes | mars-parse.md | | `mars/rng` | 244 | 0 | 0 | yes | mars-rng.md | -| `mars/stream` | 5,392 | 7 | 310 | yes | mars-stream.md | +| `mars/stream` | 5,407 | 7 | 310 | yes | mars-stream.md | | `mars/text` | 899 | 8 | 245 | yes | mars-text.md | | `mars/vfs` | 788 | 9 | 140 | yes | mars-vfs.md | | `shim` | 12,102 | 0 | 0 | direct (WIN32) | M0.md | | `shim/hooks` | 9,075 | 0 | 0 | direct (WIN32) | M0.md | | `shim/trace` | 2,258 | 9 | 273 | direct (WIN32) | shim-trace.md | -| **total** | **42,377** | **101** | **3304** | | | +| **total** | **43,313** | **106** | **3480** | | | Board `engine:` rows: verified **20**, mapped 0, in flight 0 (of 20) — verified & merged `[██████████] 100%` @@ -130,11 +131,11 @@ Most recent open: ## 9. Delta since previous dashboard -- verified targets: 136 → 146 (+10) · mapped-or-better: 166 → 177 (+11) -- engine LOC: 41,030 → 42,377 (+1,347) · test files: 101 → 101 (+0) · checks: 3,273 → 3,304 (+31) -- addresses verified: 838 → 838 (+0) · recovered layouts: 384 → 384 (+0) · open questions: 26 → 26 (+0) +- verified targets: 146 → 162 (+16) · mapped-or-better: 177 → 195 (+18) +- engine LOC: 42,377 → 43,313 (+936) · test files: 101 → 106 (+5) · checks: 3,304 → 3,480 (+176) +- addresses verified: 838 → 940 (+102) · recovered layouts: 384 → 384 (+0) · open questions: 26 → 26 (+0) - standalone leaves closed: 5 → 5 (+0) · leaves still diverging: 204 → 204 (+0) --- warnings: board.md: unknown types subsystems; mars-rng.md: no oracle total row parsed; mars-stream.md: no oracle total row parsed; mars-vfs.md: no oracle total row parsed - +