standalone report regenerated from main: 209 -> 158 leaves, closed 51 regressed 0, 16/44 phases

This commit is contained in:
alex 2026-09-08 13:46:17 -04:00
parent 6e10def1b5
commit 08da5a1a06
3 changed files with 232 additions and 106 deletions

View file

@ -1,6 +1,6 @@
# SotS RE campaign — coverage dashboard # SotS RE campaign — coverage dashboard
Generated 2026-09-08 17:43 UTC · `sots-re` @ 069d7e6,2026-09-08 · `sots-engine` @ 06fe758,2026-09-08 (150 commits) · regenerate with `tools/dashboard.py` Generated 2026-09-08 17:46 UTC · `sots-re` @ 6e10def,2026-09-08 · `sots-engine` @ 06fe758,2026-09-08 (150 commits) · regenerate with `tools/dashboard.py`
> **North star:** A functional reimplementation of the engine — behavior-equivalent, NOT byte-for-byte > **North star:** A functional reimplementation of the engine — behavior-equivalent, NOT byte-for-byte
@ -78,25 +78,25 @@ Board `engine:` rows: verified **22**, mapped 0, in flight 0 (of 22) — verifie
## 6. Standalone (`src/app`) — distance to the byte-match ## 6. Standalone (`src/app`) — distance to the byte-match
Turn-driver phases: **14/44** modelled (8 committed) `[███░░░░░░░] 32%` Turn-driver phases: **16/44** modelled (10 committed) `[████░░░░░░] 36%`
| | verified | implemented | partial | blocked | stub | | | verified | implemented | partial | blocked | stub |
|---|---:|---:|---:|---:|---:| |---|---:|---:|---:|---:|---:|
| turn drivers (44) | 0 | 2 | 6 | 6 | 30 | | turn drivers (44) | 0 | 4 | 6 | 6 | 28 |
| post-combat tail (37) | 0 | 1 | 0 | 2 | 34 | | post-combat tail (37) | 0 | 1 | 2 | 2 | 32 |
Reference pair `turn1-state.sav` → `turn2-state.sav`, leaves localised by `state_checksum.py` (coverage proved by re-serialisation): Reference pair `turn1-state.sav` → `turn2-state.sav`, leaves localised by `state_checksum.py` (coverage proved by re-serialisation):
- baseline (a standalone that does nothing): **209** leaves diverge - baseline (a standalone that does nothing): **209** leaves diverge
- after one standalone turn: **204** leaves diverge — closed 5, regressed 0 - after one standalone turn: **158** leaves diverge — closed 51, regressed 0
- byte match: ❌ not yet `[░░░░░░░░░░] 2%` - byte match: ❌ not yet `[██░░░░░░░░] 24%`
Where the remaining divergence lives: Where the remaining divergence lives:
| Subsystem | Leaves | | Subsystem | Leaves |
|---|---:| |---|---:|
| `/Sim/players` | 82 | | `/Sim/players` | 82 |
| `/Sim/systems` | 80 | | `/Sim/systems` | 34 |
| `/Sim/turnstats` | 24 | | `/Sim/turnstats` | 24 |
| `/Sim/SvSctOb` | 8 | | `/Sim/SvSctOb` | 8 |
| `/Sim/DesignIDs[]` | 1 | | `/Sim/DesignIDs[]` | 1 |
@ -131,11 +131,11 @@ Most recent open:
## 9. Delta since previous dashboard ## 9. Delta since previous dashboard
- verified targets: 172 → 179 (+7) · mapped-or-better: 209 → 217 (+8) - verified targets: 179 → 179 (+0) · mapped-or-better: 217 → 217 (+0)
- engine LOC: 43,637 → 44,123 (+486) · test files: 106 → 107 (+1) · checks: 3,483 → 3,545 (+62) - engine LOC: 44,123 → 44,123 (+0) · test files: 107 → 107 (+0) · checks: 3,545 → 3,545 (+0)
- addresses verified: 940 → 957 (+17) · recovered layouts: 384 → 384 (+0) · open questions: 26 → 26 (+0) - addresses verified: 957 → 957 (+0) · recovered layouts: 384 → 384 (+0) · open questions: 26 → 26 (+0)
- standalone leaves closed: 5 → 5 (+0) · leaves still diverging: 204 → 204 (+0) - standalone leaves closed: 5 → 51 (+46) · leaves still diverging: 204 → 158 (-46)
--- ---
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 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
<!-- dashboard-metrics {"verified": 179, "mapped_plus": 217, "targets": 240, "loc": 44123, "tests": 107, "checks": 3545, "addr_verified": 957, "addr_total": 1019, "layouts": 384, "open_q": 26, "sa_closed": 5, "sa_left": 204} --> <!-- dashboard-metrics {"verified": 179, "mapped_plus": 217, "targets": 240, "loc": 44123, "tests": 107, "checks": 3545, "addr_verified": 957, "addr_total": 1019, "layouts": 384, "open_q": 26, "sa_closed": 51, "sa_left": 158} -->

View file

@ -1,37 +1,99 @@
# standalone vs the oracle # standalone vs the oracle
generated 2026-09-08T17:43:31Z binary /home/alex/sots-engine/build-host/src/app/sots_turn generated 2026-09-08T17:46:02Z binary /srv/re-lab/build/eng-rep/build-host/src/app/sots_turn
phases: 14/44 of the two turn drivers modelled, 8 committed (implemented 2, partial 6, blocked 6, stub 30) phases: 16/44 of the two turn drivers modelled, 10 committed (implemented 4, partial 6, blocked 6, stub 28)
3/37 of the post-combat tail modelled 5/37 of the post-combat tail modelled
## turn1-state.sav -> turn2-state.sav (real End Turn) ## turn1-state.sav -> turn2-state.sav (real End Turn)
baseline (do nothing) 209 leaves diverge baseline (do nothing) 209 leaves diverge
after one standalone turn 204 leaves diverge after one standalone turn 158 leaves diverge
closed 5, regressed 0, byte match: no closed 51, regressed 0, byte match: no
coverage proved on all three saves: {'input': True, 'oracle': True, 'ours': True} coverage proved on all three saves: {'input': True, 'oracle': True, 'ours': True}
closed: closed:
+ /Sim/Frame + /Sim/Frame
+ /Sim/systems/Sys[112 "Gamma Cephei"]/EPid
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ETS
+ /Sim/systems/Sys[112 "Gamma Cephei"]/Eid
+ /Sim/systems/Sys[112 "Gamma Cephei"]/NVE
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ltis
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ntdev + /Sim/systems/Sys[112 "Gamma Cephei"]/ntdev
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/EPid
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ETS
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/Eid
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/NVE
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ltis
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ntdev + /Sim/systems/Sys[288 "Ke'Dolarra"]/ntdev
+ /Sim/systems/Sys[304 "Koa’Vo"]/EFlags
+ /Sim/systems/Sys[304 "Koa’Vo"]/EPid
+ /Sim/systems/Sys[304 "Koa’Vo"]/ETS
+ /Sim/systems/Sys[304 "Koa’Vo"]/Eid
+ /Sim/systems/Sys[304 "Koa’Vo"]/NVE
+ /Sim/systems/Sys[304 "Koa’Vo"]/ltis
+ /Sim/systems/Sys[304 "Koa’Vo"]/ntdev + /Sim/systems/Sys[304 "Koa’Vo"]/ntdev
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/EFlags
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/EPid
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/ETS
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/Eid
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/NVE
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/ltis
+ /Sim/systems/Sys[400 "Markab"]/EFlags
+ /Sim/systems/Sys[400 "Markab"]/EPid
+ /Sim/systems/Sys[400 "Markab"]/ETS
+ /Sim/systems/Sys[400 "Markab"]/Eid
+ /Sim/systems/Sys[400 "Markab"]/NVE
+ /Sim/systems/Sys[400 "Markab"]/ltis
+ /Sim/systems/Sys[448 "Kea’Pono"]/EFlags
+ /Sim/systems/Sys[448 "Kea’Pono"]/EPid
+ /Sim/systems/Sys[448 "Kea’Pono"]/ETS
+ /Sim/systems/Sys[448 "Kea’Pono"]/Eid
+ /Sim/systems/Sys[448 "Kea’Pono"]/NVE
+ /Sim/systems/Sys[448 "Kea’Pono"]/ltis
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/EFlags
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/EPid
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/ETS
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/Eid
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/NVE
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/ltis
+ /Sim/systems/Sys[64 "Hyperion"]/EFlags
+ /Sim/systems/Sys[64 "Hyperion"]/EPid
+ /Sim/systems/Sys[64 "Hyperion"]/ETS
+ /Sim/systems/Sys[64 "Hyperion"]/Eid
+ /Sim/systems/Sys[64 "Hyperion"]/NVE
+ /Sim/systems/Sys[64 "Hyperion"]/ltis
+ /Summary/Turn + /Summary/Turn
## turn2-state.sav -> turn3-state.sav (real End Turn) ## turn2-state.sav -> turn3-state.sav (real End Turn)
baseline (do nothing) 108 leaves diverge baseline (do nothing) 108 leaves diverge
after one standalone turn 103 leaves diverge after one standalone turn 87 leaves diverge
closed 5, regressed 0, byte match: no closed 21, regressed 0, byte match: no
coverage proved on all three saves: {'input': True, 'oracle': True, 'ours': True} coverage proved on all three saves: {'input': True, 'oracle': True, 'ours': True}
closed: closed:
+ /Sim/Frame + /Sim/Frame
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ETS
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ltis
+ /Sim/systems/Sys[112 "Gamma Cephei"]/ntdev + /Sim/systems/Sys[112 "Gamma Cephei"]/ntdev
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ETS
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ltis
+ /Sim/systems/Sys[288 "Ke'Dolarra"]/ntdev + /Sim/systems/Sys[288 "Ke'Dolarra"]/ntdev
+ /Sim/systems/Sys[304 "Koa’Vo"]/ETS
+ /Sim/systems/Sys[304 "Koa’Vo"]/ltis
+ /Sim/systems/Sys[304 "Koa’Vo"]/ntdev + /Sim/systems/Sys[304 "Koa’Vo"]/ntdev
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/ETS
+ /Sim/systems/Sys[336 "Kaa’Vaalu"]/ltis
+ /Sim/systems/Sys[400 "Markab"]/ETS
+ /Sim/systems/Sys[400 "Markab"]/ltis
+ /Sim/systems/Sys[448 "Kea’Pono"]/ETS
+ /Sim/systems/Sys[448 "Kea’Pono"]/ltis
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/ETS
+ /Sim/systems/Sys[480 "Ko'Rorkor"]/ltis
+ /Sim/systems/Sys[64 "Hyperion"]/ETS
+ /Sim/systems/Sys[64 "Hyperion"]/ltis
+ /Summary/Turn + /Summary/Turn
## what still differs on the reference pair, by subsystem ## what still differs on the reference pair, by subsystem
82 /Sim/players 82 /Sim/players
80 /Sim/systems 34 /Sim/systems
24 /Sim/turnstats 24 /Sim/turnstats
8 /Sim/SvSctOb 8 /Sim/SvSctOb
1 /Sim/DesignIDs[] 1 /Sim/DesignIDs[]

View file

@ -1,18 +1,18 @@
{ {
"schema": "sots-standalone-status/1", "schema": "sots-standalone-status/1",
"generated": "2026-09-08T17:43:31Z", "generated": "2026-09-08T17:46:02Z",
"binary": "/home/alex/sots-engine/build-host/src/app/sots_turn", "binary": "/srv/re-lab/build/eng-rep/build-host/src/app/sots_turn",
"reference": { "reference": {
"input": "turn1-state.sav", "input": "turn1-state.sav",
"oracle": "turn2-state.sav", "oracle": "turn2-state.sav",
"baselineDiverging": 209, "baselineDiverging": 209,
"divergingAfterTurn": 204, "divergingAfterTurn": 158,
"closed": 5, "closed": 51,
"regressed": 0, "regressed": 0,
"byteMatch": false, "byteMatch": false,
"subsystems": { "subsystems": {
"/Sim/players": 82, "/Sim/players": 82,
"/Sim/systems": 80, "/Sim/systems": 34,
"/Sim/turnstats": 24, "/Sim/turnstats": 24,
"/Sim/SvSctOb": 8, "/Sim/SvSctOb": 8,
"/Sim/DesignIDs[]": 1, "/Sim/DesignIDs[]": 1,
@ -30,22 +30,22 @@
"phases": { "phases": {
"total": 44, "total": 44,
"verified": 0, "verified": 0,
"implemented": 2, "implemented": 4,
"partial": 6, "partial": 6,
"blocked": 6, "blocked": 6,
"stub": 30, "stub": 28,
"modelled": 14, "modelled": 16,
"committed": 8 "committed": 10
}, },
"tailPhases": { "tailPhases": {
"total": 37, "total": 37,
"verified": 0, "verified": 0,
"implemented": 1, "implemented": 1,
"partial": 0, "partial": 2,
"blocked": 2, "blocked": 2,
"stub": 34, "stub": 32,
"modelled": 3, "modelled": 5,
"committed": 1 "committed": 3
}, },
"rng": { "rng": {
"wordsModelled": 16, "wordsModelled": 16,
@ -58,20 +58,21 @@
"note": "real End Turn", "note": "real End Turn",
"exit": 0, "exit": 0,
"stdout": [ "stdout": [
"load: /home/alex/sots-re/verify/results/saves/turn1-state.sav", "load: /srv/re-lab/build/sre/verify/results/saves/turn1-state.sav",
" 591376 inflated bytes, 0 error(s), 0 warning(s)", " 591376 inflated bytes, 0 error(s), 0 warning(s)",
" turn 1, frame 1, modCount 0, 8 player(s), 28 system(s), 6 fleet(s)", " turn 1, frame 1, modCount 0, 8 player(s), 28 system(s), 6 fleet(s)",
"roundtrip (untouched): byte-identical (591376 bytes)", "roundtrip (untouched): byte-identical (591376 bytes)",
"data: no root given (--data DIR / $SOTS_DATA_DIR); the tail's ship census stays unmodelled",
"", "",
"phases", "phases",
" turn drivers (the milestone's denominator): 14 of 44 modelled, 8 committed", " turn drivers (the milestone's denominator): 16 of 44 modelled, 10 committed",
" verified 0 implemented 2 partial 6 blocked 6 stub 30", " verified 0 implemented 4 partial 6 blocked 6 stub 28",
" post-combat tail (written to the autosave, tracked separately): 3 of 37 modelled", " post-combat tail (written to the autosave, tracked separately): 5 of 37 modelled",
" verified 0 implemented 1 partial 0 blocked 2 stub 34", " verified 0 implemented 1 partial 2 blocked 2 stub 32",
"", "",
"this run", "this run",
" leaves written 7", " leaves written 53",
" leaves NOT written by a blocked phase 64", " leaves NOT written by a blocked phase 72",
" generator words consumed 16 (state loaded, left untouched)", " generator words consumed 16 (state loaded, left untouched)",
" generator words NOT accounted (never netted off the above):", " generator words NOT accounted (never netted off the above):",
" - encounter detection draws one unit value and one bounded integer per turn on every turn measured (2 words), with no derived rule behind the count -- its bound is the product of the contact and detector counts, so it is left unmodelled", " - encounter detection draws one unit value and one bounded integer per turn on every turn measured (2 words), with no derived rule behind the count -- its bound is the product of the contact and detector counts, so it is left unmodelled",
@ -80,8 +81,8 @@
" ! the generator advanced during this run but the save keeps its original state (--commit-rng to write it)", " ! the generator advanced during this run but the save keeps its original state (--commit-rng to write it)",
" ! the modelled words are a LOWER BOUND on the turn's cost, so a committed generator is short by the unaccounted sites below and its drawn VALUES are not the game's", " ! the modelled words are a LOWER BOUND on the turn's cost, so a committed generator is short by the unaccounted sites below and its drawn VALUES are not the game's",
"", "",
"wrote /tmp/tmpvupbr_eq/post-turn1-state.sav (65145 bytes gzipped, 591376 inflated)", "wrote /tmp/tmpezqlouzs/post-turn1-state.sav (65208 bytes gzipped, 591664 inflated)",
"metric -> /tmp/tmpvupbr_eq/metric-turn1-state.sav.json" "metric -> /tmp/tmpezqlouzs/metric-turn1-state.sav.json"
], ],
"coverage": { "coverage": {
"input": true, "input": true,
@ -91,17 +92,63 @@
"roots": { "roots": {
"input": "64b836b966299d9b72fc02244ed31e31", "input": "64b836b966299d9b72fc02244ed31e31",
"oracle": "4bed514f853332b9fa35b388c3aa5558", "oracle": "4bed514f853332b9fa35b388c3aa5558",
"ours": "1acc372b1d410b966ab544dffbe43cb5" "ours": "d77168aa0a5bd1b8890d8c0f994aed3f"
}, },
"baselineDiverging": 209, "baselineDiverging": 209,
"divergingAfterTurn": 204, "divergingAfterTurn": 158,
"closed": 5, "closed": 51,
"regressed": 0, "regressed": 0,
"closedPaths": [ "closedPaths": [
"/Sim/Frame", "/Sim/Frame",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/EPid",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ETS",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/Eid",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/NVE",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ltis",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ntdev", "/Sim/systems/Sys[112 \"Gamma Cephei\"]/ntdev",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/EPid",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ETS",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/Eid",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/NVE",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ltis",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ntdev", "/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ntdev",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/EFlags",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/EPid",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ETS",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/Eid",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/NVE",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ltis",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ntdev", "/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ntdev",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/EFlags",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/EPid",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/ETS",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/Eid",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/NVE",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/ltis",
"/Sim/systems/Sys[400 \"Markab\"]/EFlags",
"/Sim/systems/Sys[400 \"Markab\"]/EPid",
"/Sim/systems/Sys[400 \"Markab\"]/ETS",
"/Sim/systems/Sys[400 \"Markab\"]/Eid",
"/Sim/systems/Sys[400 \"Markab\"]/NVE",
"/Sim/systems/Sys[400 \"Markab\"]/ltis",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/EFlags",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/EPid",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/ETS",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/Eid",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/NVE",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/ltis",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/EFlags",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/EPid",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/ETS",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/Eid",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/NVE",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/ltis",
"/Sim/systems/Sys[64 \"Hyperion\"]/EFlags",
"/Sim/systems/Sys[64 \"Hyperion\"]/EPid",
"/Sim/systems/Sys[64 \"Hyperion\"]/ETS",
"/Sim/systems/Sys[64 \"Hyperion\"]/Eid",
"/Sim/systems/Sys[64 \"Hyperion\"]/NVE",
"/Sim/systems/Sys[64 \"Hyperion\"]/ltis",
"/Summary/Turn" "/Summary/Turn"
], ],
"regressedPaths": [], "regressedPaths": [],
@ -150,31 +197,31 @@
"byteMatch": false, "byteMatch": false,
"standalone": { "standalone": {
"schema": "sots-standalone-metric/1", "schema": "sots-standalone-metric/1",
"input": "/home/alex/sots-re/verify/results/saves/turn1-state.sav", "input": "/srv/re-lab/build/sre/verify/results/saves/turn1-state.sav",
"output": "/tmp/tmpvupbr_eq/post-turn1-state.sav", "output": "/tmp/tmpezqlouzs/post-turn1-state.sav",
"spine": { "spine": {
"total": 44, "total": 44,
"verified": 0, "verified": 0,
"implemented": 2, "implemented": 4,
"partial": 6, "partial": 6,
"blocked": 6, "blocked": 6,
"stub": 30, "stub": 28,
"modelled": 14, "modelled": 16,
"committed": 8 "committed": 10
}, },
"tail": { "tail": {
"total": 37, "total": 37,
"verified": 0, "verified": 0,
"implemented": 1, "implemented": 1,
"partial": 0, "partial": 2,
"blocked": 2, "blocked": 2,
"stub": 34, "stub": 32,
"modelled": 3, "modelled": 5,
"committed": 1 "committed": 3
}, },
"run": { "run": {
"leafWrites": 7, "leafWrites": 53,
"blockedLeafWrites": 64, "blockedLeafWrites": 72,
"rngWords": 16, "rngWords": 16,
"rngLoaded": true, "rngLoaded": true,
"rngCommitted": false, "rngCommitted": false,
@ -239,8 +286,8 @@
"driver": "StrategyServer::ProcessTurn", "driver": "StrategyServer::ProcessTurn",
"id": "S04", "id": "S04",
"name": "RebuildAllianceMasks", "name": "RebuildAllianceMasks",
"status": "stub", "status": "implemented",
"ran": 0, "ran": 8,
"writes": 0, "writes": 0,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
@ -608,10 +655,10 @@
{ {
"driver": "StrategyServer::ProcessTurn", "driver": "StrategyServer::ProcessTurn",
"id": "S29", "id": "S29",
"name": "SystemTailFixup", "name": "SystemObservedStamp",
"status": "stub", "status": "implemented",
"ran": 0, "ran": 28,
"writes": 0, "writes": 8,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
}, },
@ -809,9 +856,9 @@
"driver": "StrategyServer::OnAllCombatDone_Tail", "driver": "StrategyServer::OnAllCombatDone_Tail",
"id": "T17", "id": "T17",
"name": "RebuildPlayerViewTree", "name": "RebuildPlayerViewTree",
"status": "stub", "status": "partial",
"ran": 0, "ran": 28,
"writes": 0, "writes": 32,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
}, },
@ -849,9 +896,9 @@
"driver": "StrategyServer::OnAllCombatDone_Tail", "driver": "StrategyServer::OnAllCombatDone_Tail",
"id": "T21", "id": "T21",
"name": "UpdateSurveyAndSystemStats", "name": "UpdateSurveyAndSystemStats",
"status": "stub", "status": "partial",
"ran": 0, "ran": 28,
"writes": 0, "writes": 6,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
}, },
@ -1002,7 +1049,7 @@
"status": "blocked", "status": "blocked",
"ran": 8, "ran": 8,
"writes": 0, "writes": 0,
"blockedWrites": 48, "blockedWrites": 56,
"rng": 0 "rng": 0
}, },
{ {
@ -1024,20 +1071,21 @@
"note": "real End Turn", "note": "real End Turn",
"exit": 0, "exit": 0,
"stdout": [ "stdout": [
"load: /home/alex/sots-re/verify/results/saves/turn2-state.sav", "load: /srv/re-lab/build/sre/verify/results/saves/turn2-state.sav",
" 603360 inflated bytes, 0 error(s), 0 warning(s)", " 603360 inflated bytes, 0 error(s), 0 warning(s)",
" turn 2, frame 2, modCount 12, 8 player(s), 28 system(s), 7 fleet(s)", " turn 2, frame 2, modCount 12, 8 player(s), 28 system(s), 7 fleet(s)",
"roundtrip (untouched): byte-identical (603360 bytes)", "roundtrip (untouched): byte-identical (603360 bytes)",
"data: no root given (--data DIR / $SOTS_DATA_DIR); the tail's ship census stays unmodelled",
"", "",
"phases", "phases",
" turn drivers (the milestone's denominator): 14 of 44 modelled, 8 committed", " turn drivers (the milestone's denominator): 16 of 44 modelled, 10 committed",
" verified 0 implemented 2 partial 6 blocked 6 stub 30", " verified 0 implemented 4 partial 6 blocked 6 stub 28",
" post-combat tail (written to the autosave, tracked separately): 3 of 37 modelled", " post-combat tail (written to the autosave, tracked separately): 5 of 37 modelled",
" verified 0 implemented 1 partial 0 blocked 2 stub 34", " verified 0 implemented 1 partial 2 blocked 2 stub 32",
"", "",
"this run", "this run",
" leaves written 7", " leaves written 23",
" leaves NOT written by a blocked phase 58", " leaves NOT written by a blocked phase 66",
" generator words consumed 16 (state loaded, left untouched)", " generator words consumed 16 (state loaded, left untouched)",
" generator words NOT accounted (never netted off the above):", " generator words NOT accounted (never netted off the above):",
" - encounter detection draws one unit value and one bounded integer per turn on every turn measured (2 words), with no derived rule behind the count -- its bound is the product of the contact and detector counts, so it is left unmodelled", " - encounter detection draws one unit value and one bounded integer per turn on every turn measured (2 words), with no derived rule behind the count -- its bound is the product of the contact and detector counts, so it is left unmodelled",
@ -1046,8 +1094,8 @@
" ! the generator advanced during this run but the save keeps its original state (--commit-rng to write it)", " ! the generator advanced during this run but the save keeps its original state (--commit-rng to write it)",
" ! the modelled words are a LOWER BOUND on the turn's cost, so a committed generator is short by the unaccounted sites below and its drawn VALUES are not the game's", " ! the modelled words are a LOWER BOUND on the turn's cost, so a committed generator is short by the unaccounted sites below and its drawn VALUES are not the game's",
"", "",
"wrote /tmp/tmpvupbr_eq/post-turn2-state.sav (66883 bytes gzipped, 603360 inflated)", "wrote /tmp/tmpezqlouzs/post-turn2-state.sav (66882 bytes gzipped, 603360 inflated)",
"metric -> /tmp/tmpvupbr_eq/metric-turn2-state.sav.json" "metric -> /tmp/tmpezqlouzs/metric-turn2-state.sav.json"
], ],
"coverage": { "coverage": {
"input": true, "input": true,
@ -1057,17 +1105,33 @@
"roots": { "roots": {
"input": "4bed514f853332b9fa35b388c3aa5558", "input": "4bed514f853332b9fa35b388c3aa5558",
"oracle": "e9c161e311f8ef8fad6f1aa1903dcf3f", "oracle": "e9c161e311f8ef8fad6f1aa1903dcf3f",
"ours": "22071ae1303f308a93b805e940b626b5" "ours": "987447a85f9fcded1afd868fca112ef6"
}, },
"baselineDiverging": 108, "baselineDiverging": 108,
"divergingAfterTurn": 103, "divergingAfterTurn": 87,
"closed": 5, "closed": 21,
"regressed": 0, "regressed": 0,
"closedPaths": [ "closedPaths": [
"/Sim/Frame", "/Sim/Frame",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ETS",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ltis",
"/Sim/systems/Sys[112 \"Gamma Cephei\"]/ntdev", "/Sim/systems/Sys[112 \"Gamma Cephei\"]/ntdev",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ETS",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ltis",
"/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ntdev", "/Sim/systems/Sys[288 \"Ke'Dolarra\"]/ntdev",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ETS",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ltis",
"/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ntdev", "/Sim/systems/Sys[304 \"Koa\u2019Vo\"]/ntdev",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/ETS",
"/Sim/systems/Sys[336 \"Kaa\u2019Vaalu\"]/ltis",
"/Sim/systems/Sys[400 \"Markab\"]/ETS",
"/Sim/systems/Sys[400 \"Markab\"]/ltis",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/ETS",
"/Sim/systems/Sys[448 \"Kea\u2019Pono\"]/ltis",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/ETS",
"/Sim/systems/Sys[480 \"Ko'Rorkor\"]/ltis",
"/Sim/systems/Sys[64 \"Hyperion\"]/ETS",
"/Sim/systems/Sys[64 \"Hyperion\"]/ltis",
"/Summary/Turn" "/Summary/Turn"
], ],
"regressedPaths": [], "regressedPaths": [],
@ -1116,31 +1180,31 @@
"byteMatch": false, "byteMatch": false,
"standalone": { "standalone": {
"schema": "sots-standalone-metric/1", "schema": "sots-standalone-metric/1",
"input": "/home/alex/sots-re/verify/results/saves/turn2-state.sav", "input": "/srv/re-lab/build/sre/verify/results/saves/turn2-state.sav",
"output": "/tmp/tmpvupbr_eq/post-turn2-state.sav", "output": "/tmp/tmpezqlouzs/post-turn2-state.sav",
"spine": { "spine": {
"total": 44, "total": 44,
"verified": 0, "verified": 0,
"implemented": 2, "implemented": 4,
"partial": 6, "partial": 6,
"blocked": 6, "blocked": 6,
"stub": 30, "stub": 28,
"modelled": 14, "modelled": 16,
"committed": 8 "committed": 10
}, },
"tail": { "tail": {
"total": 37, "total": 37,
"verified": 0, "verified": 0,
"implemented": 1, "implemented": 1,
"partial": 0, "partial": 2,
"blocked": 2, "blocked": 2,
"stub": 34, "stub": 32,
"modelled": 3, "modelled": 5,
"committed": 1 "committed": 3
}, },
"run": { "run": {
"leafWrites": 7, "leafWrites": 23,
"blockedLeafWrites": 58, "blockedLeafWrites": 66,
"rngWords": 16, "rngWords": 16,
"rngLoaded": true, "rngLoaded": true,
"rngCommitted": false, "rngCommitted": false,
@ -1205,8 +1269,8 @@
"driver": "StrategyServer::ProcessTurn", "driver": "StrategyServer::ProcessTurn",
"id": "S04", "id": "S04",
"name": "RebuildAllianceMasks", "name": "RebuildAllianceMasks",
"status": "stub", "status": "implemented",
"ran": 0, "ran": 8,
"writes": 0, "writes": 0,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
@ -1574,10 +1638,10 @@
{ {
"driver": "StrategyServer::ProcessTurn", "driver": "StrategyServer::ProcessTurn",
"id": "S29", "id": "S29",
"name": "SystemTailFixup", "name": "SystemObservedStamp",
"status": "stub", "status": "implemented",
"ran": 0, "ran": 28,
"writes": 0, "writes": 8,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
}, },
@ -1775,9 +1839,9 @@
"driver": "StrategyServer::OnAllCombatDone_Tail", "driver": "StrategyServer::OnAllCombatDone_Tail",
"id": "T17", "id": "T17",
"name": "RebuildPlayerViewTree", "name": "RebuildPlayerViewTree",
"status": "stub", "status": "partial",
"ran": 0, "ran": 28,
"writes": 0, "writes": 8,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
}, },
@ -1815,8 +1879,8 @@
"driver": "StrategyServer::OnAllCombatDone_Tail", "driver": "StrategyServer::OnAllCombatDone_Tail",
"id": "T21", "id": "T21",
"name": "UpdateSurveyAndSystemStats", "name": "UpdateSurveyAndSystemStats",
"status": "stub", "status": "partial",
"ran": 0, "ran": 28,
"writes": 0, "writes": 0,
"blockedWrites": 0, "blockedWrites": 0,
"rng": 0 "rng": 0
@ -1968,7 +2032,7 @@
"status": "blocked", "status": "blocked",
"ran": 8, "ran": 8,
"writes": 0, "writes": 0,
"blockedWrites": 48, "blockedWrites": 56,
"rng": 0 "rng": 0
}, },
{ {