@mcptoolshop/sovereign 1.1.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +29 -26
- package/README.es.md +11 -51
- package/README.fr.md +11 -51
- package/README.hi.md +11 -51
- package/README.it.md +11 -51
- package/README.ja.md +11 -51
- package/README.md +11 -51
- package/README.pt-BR.md +11 -51
- package/README.zh.md +11 -51
- package/package.json +1 -1
- package/release/CHANGELOG.md +29 -20
- package/release/digital-mode/README.txt +74 -86
- package/release/digital-mode/sovereign-solo.html +6394 -160
- package/release/balance-evidence/raw-data/sovereign-diagnosis-canonical-100-A.json +0 -1
- package/release/balance-evidence/raw-data/sovereign-diagnosis-canonical-100-B.json +0 -1
- package/release/balance-evidence/raw-data/sovereign-diagnosis-canonical-400.json +0 -1
- package/release/balance-evidence/raw-data/sovereign-diagnosis-mfg-mirror-100.json +0 -1
- package/release/balance-evidence/sovereign-failure-pressure-diagnosis.html +0 -494
- package/release/design-system/README.md +0 -30
- package/release/design-system/sovereign-screen-audit-v0.18.html +0 -183
- package/release/design-system/sovereign-visual-system-v0.18.html +0 -610
- package/release/digital-mode/sovereign-solo-v0.10-baseline.html +0 -3884
|
@@ -1,494 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<title>Sovereign · Failure Event Pressure Diagnosis</title>
|
|
6
|
-
<style>
|
|
7
|
-
:root{--display:"Baskerville","Big Caslon","Hoefler Text","Garamond","Times New Roman",serif;
|
|
8
|
-
--body:"Iowan Old Style","Georgia","Cambria","Times New Roman",serif;
|
|
9
|
-
--ui:-apple-system,"Segoe UI","Helvetica Neue","Arial",system-ui,sans-serif;
|
|
10
|
-
--mono:"SF Mono","Menlo","Consolas","Courier New",monospace;
|
|
11
|
-
--parchment:#F0E6CD;--parchment-2:#E6DABC;--ink:#1A1612;--highlight:#C8392E;
|
|
12
|
-
--rule-soft:rgba(26,22,18,0.22);--national-finance:#1F2D52;
|
|
13
|
-
--commercial-infrastructure:#2E7A6B;--manufactures:#8C8A2E;
|
|
14
|
-
--p0:#4A6B8A;--p1:#6E1F1E;--p2:#2E7A6B;}
|
|
15
|
-
*{box-sizing:border-box}
|
|
16
|
-
body{margin:0;padding:30px;font-family:var(--body);background:#2A2622;color:var(--ink);-webkit-print-color-adjust:exact;print-color-adjust:exact}
|
|
17
|
-
.doc{max-width:1100px;margin:0 auto;background:var(--parchment);border:1.5px solid var(--ink);padding:30px 40px;position:relative}
|
|
18
|
-
.doc::before{content:"";position:absolute;inset:8px;border:0.5px solid var(--rule-soft);pointer-events:none}
|
|
19
|
-
h1{font-family:var(--display);font-weight:400;font-size:36px;line-height:1;margin:0 0 6px;letter-spacing:0.01em}
|
|
20
|
-
.eyebrow{font-family:var(--ui);font-size:10px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--national-finance);margin-bottom:8px}
|
|
21
|
-
.sub{font-family:var(--display);font-style:italic;font-size:14px;margin-bottom:6px}
|
|
22
|
-
.meta{font-family:var(--mono);font-size:9.5px;opacity:.7;margin-top:4px;border-top:0.5px dashed var(--rule-soft);padding-top:6px}
|
|
23
|
-
h2{font-family:var(--ui);font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;margin:22px 0 8px;border-bottom:1px solid var(--ink);padding-bottom:4px;display:flex;justify-content:space-between;align-items:baseline}
|
|
24
|
-
h2 .surface-id{font-family:var(--mono);font-size:9px;letter-spacing:.06em;opacity:.6;text-transform:none}
|
|
25
|
-
h3{font-family:var(--display);font-weight:400;font-size:18px;margin:14px 0 6px}
|
|
26
|
-
h4{font-family:var(--ui);font-size:9.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;margin:14px 0 4px}
|
|
27
|
-
p{margin:6px 0;line-height:1.5;font-size:13px}
|
|
28
|
-
p.tight{margin:3px 0;font-size:12.5px}
|
|
29
|
-
table{width:100%;border-collapse:collapse;margin-top:6px}
|
|
30
|
-
table.full{margin-top:8px}
|
|
31
|
-
th{background:var(--ink);color:var(--parchment);font-family:var(--ui);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;padding:5px 8px;text-align:left}
|
|
32
|
-
td{font-family:var(--ui);font-size:11px;padding:4px 8px;border-bottom:0.5px solid var(--rule-soft);vertical-align:top}
|
|
33
|
-
td.n{font-family:var(--mono);text-align:right;font-variant-numeric:tabular-nums}
|
|
34
|
-
td.muted, .muted{color:rgba(26,22,18,0.55);font-size:10px}
|
|
35
|
-
.pos{color:var(--commercial-infrastructure)}
|
|
36
|
-
.neg{color:var(--highlight)}
|
|
37
|
-
.verdict-card{background:var(--parchment-2);border:1px solid var(--ink);padding:14px 18px;margin:10px 0}
|
|
38
|
-
.verdict-card .lbl{font-family:var(--ui);font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--national-finance)}
|
|
39
|
-
.verdict-card .nm{font-family:var(--display);font-size:22px;line-height:1;margin:4px 0 6px}
|
|
40
|
-
.verdict-card .cls{font-family:var(--display);font-style:italic;font-size:13px;color:var(--highlight);margin-bottom:6px}
|
|
41
|
-
.verdict-card .det{font-size:12.5px;line-height:1.55}
|
|
42
|
-
.bar-cell{font-family:var(--mono);font-size:9.5px;padding:3px 4px;border-bottom:0.5px solid var(--rule-soft);position:relative;text-align:right;min-width:36px}
|
|
43
|
-
.bar-cell .bar{position:absolute;left:2px;top:50%;transform:translateY(-50%);height:8px;background:var(--manufactures);opacity:.45;border-radius:1px}
|
|
44
|
-
.bar-cell .bar-num{position:relative;font-variant-numeric:tabular-nums}
|
|
45
|
-
th.bar-h{font-family:var(--mono);font-size:9px;text-align:center;padding:3px 4px}
|
|
46
|
-
.src-type{font-family:var(--ui);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--national-finance);font-weight:700;padding:1.5px 5px;border:0.5px solid var(--rule-soft);background:var(--parchment-2);border-radius:1px;display:inline-block}
|
|
47
|
-
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
|
|
48
|
-
.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;align-items:start}
|
|
49
|
-
.card{background:var(--parchment-2);border:1px solid var(--ink);padding:10px 12px}
|
|
50
|
-
.card .who{font-family:var(--display);font-size:14px;margin-bottom:2px}
|
|
51
|
-
.card .v{font-family:var(--mono);font-size:11px;letter-spacing:.05em}
|
|
52
|
-
.empty{font-family:var(--display);font-style:italic;font-size:12px;color:rgba(26,22,18,0.55);margin:6px 0}
|
|
53
|
-
.legend{font-family:var(--mono);font-size:9.5px;opacity:.7;margin-top:4px}
|
|
54
|
-
.interp p{font-size:13px;line-height:1.6}
|
|
55
|
-
.lever{background:var(--parchment-2);border:1px solid var(--ink);padding:12px 14px;margin:8px 0}
|
|
56
|
-
.lever .head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}
|
|
57
|
-
.lever .rank{font-family:var(--ui);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--national-finance);font-weight:700}
|
|
58
|
-
.lever .target{font-family:var(--ui);font-size:9px;letter-spacing:.14em;text-transform:uppercase;padding:2px 6px;border:0.5px solid var(--rule-soft);background:var(--parchment)}
|
|
59
|
-
.lever .nm{font-family:var(--display);font-size:16px;line-height:1.2;margin:4px 0 6px}
|
|
60
|
-
.lever .row{display:grid;grid-template-columns:1fr 3fr;gap:8px;font-size:11.5px;margin-top:3px;line-height:1.5}
|
|
61
|
-
.lever .row .k{font-family:var(--ui);font-size:9px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--national-finance)}
|
|
62
|
-
.side-pressure{color:var(--commercial-infrastructure)}
|
|
63
|
-
.side-threshold{color:var(--highlight)}
|
|
64
|
-
.side-meta{color:rgba(26,22,18,0.55)}
|
|
65
|
-
.callout{background:var(--parchment-2);border:1px solid var(--ink);padding:10px 14px;margin:8px 0;font-size:12.5px;line-height:1.55}
|
|
66
|
-
.callout strong{color:var(--highlight)}
|
|
67
|
-
</style>
|
|
68
|
-
</head>
|
|
69
|
-
<body>
|
|
70
|
-
<div class="doc">
|
|
71
|
-
|
|
72
|
-
<div class="eyebrow">Sovereign · v0.10 balance · v1.0.2</div>
|
|
73
|
-
<h1>Failure Event Pressure Diagnosis</h1>
|
|
74
|
-
<div class="sub">Why Default, Rebellion, and Bankruptcy almost never fire — deterministic batch play, 700 games observed.</div>
|
|
75
|
-
<div class="meta">Configurations: CANONICAL-400 (T/M/Mfg, seeds 2026-2425) · CANONICAL-100-A vs CANONICAL-100-B (determinism check, byte-identical) · MFG-MIRROR-100 (3× Manufacturer). Generated 2026-05-19 19:59:35 UTC. Reducer byte-identical to release/digital-mode/sovereign-solo.html for all 400 canonical seeds (verified). No rule, threshold, card, Act, profile, scoring, or reducer change.</div>
|
|
76
|
-
|
|
77
|
-
<h2>1. Executive verdict <span class="surface-id">A</span></h2>
|
|
78
|
-
|
|
79
|
-
<div class="verdict-card">
|
|
80
|
-
<div class="lbl">Default</div>
|
|
81
|
-
<div class="nm">0 / 400 games fired (0.0 %)</div>
|
|
82
|
-
<div class="cls">Verdict: source events absent</div>
|
|
83
|
-
<div class="det">Credit min is 5 in every one of 400 games — the track never decreases. There are zero credit-down sources in the v0.10 system (no card, no Act, no space pushes the credit track downward via adjustTrack). The Default threshold (credit = 0) is unreachable not because the threshold is too far, but because the down-pressure channel does not exist. Lowering the threshold alone cannot fix this. A pressure source must be added.</div>
|
|
84
|
-
</div>
|
|
85
|
-
|
|
86
|
-
<div class="verdict-card">
|
|
87
|
-
<div class="lbl">Rebellion</div>
|
|
88
|
-
<div class="nm">0 / 400 games fired (0.0 %)</div>
|
|
89
|
-
<div class="cls">Verdict: pressure sources present but too weak / too rare</div>
|
|
90
|
-
<div class="det">Resistance max ceiling observed is 6 across 400 games (target 12). Mean max is 2.70, median max is 3. Three Acts that would raise Resistance (Assumption +1, Tariff +1, Excise Enforcement +2) never pass under canonical profile play because their majority votes fail in the T/M/Mfg triplet. The remaining sources (Speculation Scandal tax space, Anti-Federalist Pamphlet, Speculation Fever, Jeffersonian Opposition) net only +0.63 resistance per game on average — and Cabinet Bargain (-1) cancels a substantial fraction. The threshold is roughly 6 points beyond where the track actually lives. Even halving the threshold to 8 would fire in 0 % of canonical games per this data.</div>
|
|
91
|
-
</div>
|
|
92
|
-
|
|
93
|
-
<div class="verdict-card">
|
|
94
|
-
<div class="lbl">Bankruptcy</div>
|
|
95
|
-
<div class="nm">1 bankrupt-lap events across 1 games (0.3 %)</div>
|
|
96
|
-
<div class="cls">Verdict: pressure sources insufficient — economy is liquidity-positive</div>
|
|
97
|
-
<div class="det">Only 1 of 400 games has any player ever drop below 0 cash. Only 14 of 400 (3.5 %) ever drop below 200. The Treasury Opens landed-on bonus of 400 TN, the Industrial Charter free property, and the absence of escalating fixed costs (no upkeep) keep cash floors well above zero. The Manufacturer profile gets closest because the Shipbuilding Yard purchase (400 TN at L5–L6) is the largest single cash event of the canonical game — but at that lap the Manufacturer typically holds 800–1200 TN, so the buy lands at a high cash floor, not a crisis floor.</div>
|
|
98
|
-
</div>
|
|
99
|
-
|
|
100
|
-
<h2>2. Track trajectory distribution <span class="surface-id">B</span></h2>
|
|
101
|
-
|
|
102
|
-
<p>For each of the three shared tracks, the distribution of per-game minimum, maximum, and end-of-game values across the 400 canonical games. The Default and Rebellion thresholds (credit = 0; resistance = 12) are shown as the leftmost and rightmost columns respectively.</p>
|
|
103
|
-
|
|
104
|
-
<h4>Public Credit — starts at 5, threshold at 0</h4>
|
|
105
|
-
<table class="full">
|
|
106
|
-
<thead><tr><th>Series</th><th class="bar-h">0</th><th class="bar-h">1</th><th class="bar-h">2</th><th class="bar-h">3</th><th class="bar-h">4</th><th class="bar-h">5</th><th class="bar-h">6</th><th class="bar-h">7</th><th class="bar-h">8</th><th class="bar-h">9</th><th class="bar-h">10</th><th class="bar-h">11</th><th class="bar-h">12</th></tr></thead>
|
|
107
|
-
<tbody>
|
|
108
|
-
<tr><th>game min</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">400</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td></tr>
|
|
109
|
-
<tr><th>game max</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">164</span></td><td class="bar-cell"><div class="bar" style="width:84.1%"></div><span class="bar-num">138</span></td><td class="bar-cell"><div class="bar" style="width:39.0%"></div><span class="bar-num">64</span></td><td class="bar-cell"><div class="bar" style="width:17.7%"></div><span class="bar-num">29</span></td><td class="bar-cell"><div class="bar" style="width:2.4%"></div><span class="bar-num">4</span></td><td class="bar-cell"><div class="bar" style="width:0.6%"></div><span class="bar-num">1</span></td></tr>
|
|
110
|
-
<tr><th>game end</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">164</span></td><td class="bar-cell"><div class="bar" style="width:84.1%"></div><span class="bar-num">138</span></td><td class="bar-cell"><div class="bar" style="width:39.0%"></div><span class="bar-num">64</span></td><td class="bar-cell"><div class="bar" style="width:17.7%"></div><span class="bar-num">29</span></td><td class="bar-cell"><div class="bar" style="width:2.4%"></div><span class="bar-num">4</span></td><td class="bar-cell"><div class="bar" style="width:0.6%"></div><span class="bar-num">1</span></td></tr>
|
|
111
|
-
</tbody></table>
|
|
112
|
-
<p class="legend">Mean min 5.00 · mean max 7.93 · mean end 7.93 · min observed 5 · max observed 12.</p>
|
|
113
|
-
|
|
114
|
-
<div class="callout">
|
|
115
|
-
<strong>The credit track is a one-way ratchet upward.</strong> Min value observed across 400 games is 5 — the starting value. Credit never moves below its starting position in any game. The Default threshold could be raised to credit = 4 and it would still fire zero times.
|
|
116
|
-
</div>
|
|
117
|
-
|
|
118
|
-
<h4>Public Resistance — starts at 2, threshold at 12</h4>
|
|
119
|
-
<table class="full">
|
|
120
|
-
<thead><tr><th>Series</th><th class="bar-h">0</th><th class="bar-h">1</th><th class="bar-h">2</th><th class="bar-h">3</th><th class="bar-h">4</th><th class="bar-h">5</th><th class="bar-h">6</th><th class="bar-h">7</th><th class="bar-h">8</th><th class="bar-h">9</th><th class="bar-h">10</th><th class="bar-h">11</th><th class="bar-h">12</th></tr></thead>
|
|
121
|
-
<tbody>
|
|
122
|
-
<tr><th>game min</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:7.5%"></div><span class="bar-num">28</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">372</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td></tr>
|
|
123
|
-
<tr><th>game max</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">191</span></td><td class="bar-cell"><div class="bar" style="width:77.5%"></div><span class="bar-num">148</span></td><td class="bar-cell"><div class="bar" style="width:26.7%"></div><span class="bar-num">51</span></td><td class="bar-cell"><div class="bar" style="width:4.7%"></div><span class="bar-num">9</span></td><td class="bar-cell"><div class="bar" style="width:0.5%"></div><span class="bar-num">1</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td></tr>
|
|
124
|
-
<tr><th>game end</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:8.6%"></div><span class="bar-num">16</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">185</span></td><td class="bar-cell"><div class="bar" style="width:76.2%"></div><span class="bar-num">141</span></td><td class="bar-cell"><div class="bar" style="width:25.9%"></div><span class="bar-num">48</span></td><td class="bar-cell"><div class="bar" style="width:4.9%"></div><span class="bar-num">9</span></td><td class="bar-cell"><div class="bar" style="width:0.5%"></div><span class="bar-num">1</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td></tr>
|
|
125
|
-
</tbody></table>
|
|
126
|
-
<p class="legend">Mean min 1.93 · mean max 2.70 · mean end 2.63 · max observed 6 · games reaching the "Whiskey Rebellion live" mark (≥ 8) never.</p>
|
|
127
|
-
|
|
128
|
-
<div class="callout">
|
|
129
|
-
<strong>Resistance lives between 1 and 6, with the threshold at 12.</strong> Even the Whiskey Rebellion live narration threshold (resistance ≥ 8) fires in 0 of 400 games. The track has roughly 6 points of unused headroom between where it lives and where the failure event sits.
|
|
130
|
-
</div>
|
|
131
|
-
|
|
132
|
-
<h4>Industrial Capacity — starts at 1 (+1 from Industrial Charter), no failure threshold</h4>
|
|
133
|
-
<table class="full">
|
|
134
|
-
<thead><tr><th>Series</th><th class="bar-h">0</th><th class="bar-h">1</th><th class="bar-h">2</th><th class="bar-h">3</th><th class="bar-h">4</th><th class="bar-h">5</th><th class="bar-h">6</th><th class="bar-h">7</th><th class="bar-h">8</th><th class="bar-h">9</th><th class="bar-h">10</th><th class="bar-h">11</th><th class="bar-h">12</th></tr></thead>
|
|
135
|
-
<tbody>
|
|
136
|
-
<tr><th>game end</th><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:31.6%"></div><span class="bar-num">42</span></td><td class="bar-cell"><div class="bar" style="width:18.8%"></div><span class="bar-num">25</span></td><td class="bar-cell"><div class="bar" style="width:100.0%"></div><span class="bar-num">133</span></td><td class="bar-cell"><div class="bar" style="width:94.7%"></div><span class="bar-num">126</span></td><td class="bar-cell"><div class="bar" style="width:46.6%"></div><span class="bar-num">62</span></td><td class="bar-cell"><div class="bar" style="width:8.3%"></div><span class="bar-num">11</span></td><td class="bar-cell"><div class="bar" style="width:0.8%"></div><span class="bar-num">1</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td><td class="bar-cell"><div class="bar" style="width:0.0%"></div><span class="bar-num">0</span></td></tr>
|
|
137
|
-
</tbody></table>
|
|
138
|
-
<p class="legend">Capacity has no failure-event threshold and is included here for context. The scoring bonuses at ≥ 6 and ≥ 8 are reachable; ≥ 10 milestone is rare.</p>
|
|
139
|
-
|
|
140
|
-
<h4>Near-miss counts (CANONICAL-400)</h4>
|
|
141
|
-
<table class="full">
|
|
142
|
-
<thead><tr><th>Track condition</th><th>Games</th><th>%</th></tr></thead>
|
|
143
|
-
<tbody>
|
|
144
|
-
<tr><td>Public Credit ever ≤ 2 (routes-pay-half threshold)</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
145
|
-
<tr><td>Public Credit ever ≤ 1</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
146
|
-
<tr><td>Public Credit ever = 0 (Default)</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
147
|
-
<tr><td>Public Resistance ever ≥ 10</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
148
|
-
<tr><td>Public Resistance ever ≥ 11</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
149
|
-
<tr><td>Public Resistance ever = 12 (Rebellion)</td><td class="n">0</td><td class="n">0.0 %</td></tr>
|
|
150
|
-
</tbody>
|
|
151
|
-
</table>
|
|
152
|
-
|
|
153
|
-
<h2>3. Pressure source table <span class="surface-id">C</span></h2>
|
|
154
|
-
|
|
155
|
-
<h4>Aggregate pressure totals across all 400 canonical games</h4>
|
|
156
|
-
<table class="full">
|
|
157
|
-
<thead><tr><th>Track / direction</th><th>Total Δ summed across games</th><th>Mean Δ per game</th></tr></thead>
|
|
158
|
-
<tbody>
|
|
159
|
-
<tr><td>Public Credit · upward pressure</td><td class="n pos">+1174</td><td class="n">+2.94</td></tr>
|
|
160
|
-
<tr><td>Public Credit · downward pressure</td><td class="n neg">0</td><td class="n">0</td></tr>
|
|
161
|
-
<tr><td>Public Credit · net</td><td class="n"><strong>+1174</strong></td><td class="n"><strong>+2.94</strong></td></tr>
|
|
162
|
-
<tr><td>Public Resistance · upward pressure</td><td class="n pos">+295</td><td class="n">+0.74</td></tr>
|
|
163
|
-
<tr><td>Public Resistance · downward pressure</td><td class="n neg">−43</td><td class="n">−0.11</td></tr>
|
|
164
|
-
<tr><td>Public Resistance · net</td><td class="n"><strong>+252</strong></td><td class="n"><strong>+0.63</strong></td></tr>
|
|
165
|
-
<tr><td>Industrial Capacity · upward pressure</td><td class="n pos">+677</td><td class="n">+1.69</td></tr>
|
|
166
|
-
<tr><td>Industrial Capacity · downward pressure</td><td class="n neg">−65</td><td class="n">−0.16</td></tr>
|
|
167
|
-
</tbody>
|
|
168
|
-
</table>
|
|
169
|
-
|
|
170
|
-
<h4>Credit — sources that DECREASE the track</h4>
|
|
171
|
-
<p class="empty">None observed across 400 games.</p>
|
|
172
|
-
<p class="legend"><strong>No sources observed.</strong> The v0.10 system has no card, no Act, no tax space, and no game event that decreases Public Credit through the adjustTrack helper. The TRIGGER_DEFAULT reducer hard-resets credit to 3 (not a pressure event, a reset), but that triggers only when credit reaches 0, which never happens.</p>
|
|
173
|
-
|
|
174
|
-
<h4>Credit — sources that INCREASE the track</h4>
|
|
175
|
-
<table class="full">
|
|
176
|
-
<thead><tr><th>Source type</th><th>Source name</th><th>Fires</th><th>Total Δ</th><th>Avg lap</th><th>Games (% of 400)</th></tr></thead>
|
|
177
|
-
<tbody><tr>
|
|
178
|
-
<td><span class="src-type">Act</span></td>
|
|
179
|
-
<td>Funding Act</td>
|
|
180
|
-
<td class="n">400</td>
|
|
181
|
-
<td class="n pos">+800</td>
|
|
182
|
-
<td class="n">L1.00</td>
|
|
183
|
-
<td class="n">400 <span class="muted">(100.0 %)</span></td>
|
|
184
|
-
</tr><tr>
|
|
185
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
186
|
-
<td>Treaty Renegotiation</td>
|
|
187
|
-
<td class="n">53</td>
|
|
188
|
-
<td class="n pos">+106</td>
|
|
189
|
-
<td class="n">L4.30</td>
|
|
190
|
-
<td class="n">53 <span class="muted">(13.3 %)</span></td>
|
|
191
|
-
</tr><tr>
|
|
192
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
193
|
-
<td>Foreign Loan Secured</td>
|
|
194
|
-
<td class="n">68</td>
|
|
195
|
-
<td class="n pos">+68</td>
|
|
196
|
-
<td class="n">L3.34</td>
|
|
197
|
-
<td class="n">68 <span class="muted">(17.0 %)</span></td>
|
|
198
|
-
</tr><tr>
|
|
199
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
200
|
-
<td>You Are Hamilton</td>
|
|
201
|
-
<td class="n">57</td>
|
|
202
|
-
<td class="n pos">+57</td>
|
|
203
|
-
<td class="n">L4.53</td>
|
|
204
|
-
<td class="n">57 <span class="muted">(14.2 %)</span></td>
|
|
205
|
-
</tr><tr>
|
|
206
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
207
|
-
<td>Federalist Victory</td>
|
|
208
|
-
<td class="n">54</td>
|
|
209
|
-
<td class="n pos">+54</td>
|
|
210
|
-
<td class="n">L4.02</td>
|
|
211
|
-
<td class="n">54 <span class="muted">(13.5 %)</span></td>
|
|
212
|
-
</tr><tr>
|
|
213
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
214
|
-
<td>Credit Restored</td>
|
|
215
|
-
<td class="n">45</td>
|
|
216
|
-
<td class="n pos">+45</td>
|
|
217
|
-
<td class="n">L4.31</td>
|
|
218
|
-
<td class="n">45 <span class="muted">(11.3 %)</span></td>
|
|
219
|
-
</tr><tr>
|
|
220
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
221
|
-
<td>Gold and Silver Inflow</td>
|
|
222
|
-
<td class="n">44</td>
|
|
223
|
-
<td class="n pos">+44</td>
|
|
224
|
-
<td class="n">L3.73</td>
|
|
225
|
-
<td class="n">44 <span class="muted">(11.0 %)</span></td>
|
|
226
|
-
</tr></tbody>
|
|
227
|
-
</table>
|
|
228
|
-
|
|
229
|
-
<h4>Resistance — sources that INCREASE the track</h4>
|
|
230
|
-
<table class="full">
|
|
231
|
-
<thead><tr><th>Source type</th><th>Source name</th><th>Fires</th><th>Total Δ</th><th>Avg lap</th><th>Games (% of 400)</th></tr></thead>
|
|
232
|
-
<tbody><tr>
|
|
233
|
-
<td><span class="src-type">Tax Space</span></td>
|
|
234
|
-
<td>Speculation Scandal</td>
|
|
235
|
-
<td class="n">152</td>
|
|
236
|
-
<td class="n pos">+152</td>
|
|
237
|
-
<td class="n">L5.53</td>
|
|
238
|
-
<td class="n">134 <span class="muted">(33.5 %)</span></td>
|
|
239
|
-
</tr><tr>
|
|
240
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
241
|
-
<td>Anti-Federalist Pamphlet</td>
|
|
242
|
-
<td class="n">51</td>
|
|
243
|
-
<td class="n pos">+51</td>
|
|
244
|
-
<td class="n">L4.45</td>
|
|
245
|
-
<td class="n">51 <span class="muted">(12.8 %)</span></td>
|
|
246
|
-
</tr><tr>
|
|
247
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
248
|
-
<td>Speculation Fever</td>
|
|
249
|
-
<td class="n">50</td>
|
|
250
|
-
<td class="n pos">+50</td>
|
|
251
|
-
<td class="n">L3.32</td>
|
|
252
|
-
<td class="n">50 <span class="muted">(12.5 %)</span></td>
|
|
253
|
-
</tr><tr>
|
|
254
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
255
|
-
<td>Jeffersonian Opposition</td>
|
|
256
|
-
<td class="n">42</td>
|
|
257
|
-
<td class="n pos">+42</td>
|
|
258
|
-
<td class="n">L4.81</td>
|
|
259
|
-
<td class="n">42 <span class="muted">(10.5 %)</span></td>
|
|
260
|
-
</tr></tbody>
|
|
261
|
-
</table>
|
|
262
|
-
|
|
263
|
-
<h4>Resistance — sources that DECREASE the track</h4>
|
|
264
|
-
<table class="full">
|
|
265
|
-
<thead><tr><th>Source type</th><th>Source name</th><th>Fires</th><th>Total Δ</th><th>Avg lap</th><th>Games (% of 400)</th></tr></thead>
|
|
266
|
-
<tbody><tr>
|
|
267
|
-
<td><span class="src-type">Republic Debate</span></td>
|
|
268
|
-
<td>Cabinet Bargain</td>
|
|
269
|
-
<td class="n">43</td>
|
|
270
|
-
<td class="n neg">-43</td>
|
|
271
|
-
<td class="n">L4.35</td>
|
|
272
|
-
<td class="n">43 <span class="muted">(10.8 %)</span></td>
|
|
273
|
-
</tr></tbody>
|
|
274
|
-
</table>
|
|
275
|
-
<p class="legend">Cabinet Bargain is the only resistance-down channel. It fires in ~11 % of games, offsetting roughly 15 % of the +295 upward pressure across the dataset.</p>
|
|
276
|
-
|
|
277
|
-
<h4>Capacity — sources that INCREASE the track</h4>
|
|
278
|
-
<table class="full">
|
|
279
|
-
<thead><tr><th>Source type</th><th>Source name</th><th>Fires</th><th>Total Δ</th><th>Avg lap</th><th>Games (% of 400)</th></tr></thead>
|
|
280
|
-
<tbody><tr>
|
|
281
|
-
<td><span class="src-type">Industrial Purchase</span></td>
|
|
282
|
-
<td>Iron Foundry</td>
|
|
283
|
-
<td class="n">149</td>
|
|
284
|
-
<td class="n pos">+149</td>
|
|
285
|
-
<td class="n">L4.65</td>
|
|
286
|
-
<td class="n">149 <span class="muted">(37.3 %)</span></td>
|
|
287
|
-
</tr><tr>
|
|
288
|
-
<td><span class="src-type">Industrial Purchase</span></td>
|
|
289
|
-
<td>Glassworks</td>
|
|
290
|
-
<td class="n">149</td>
|
|
291
|
-
<td class="n pos">+149</td>
|
|
292
|
-
<td class="n">L5.07</td>
|
|
293
|
-
<td class="n">149 <span class="muted">(37.3 %)</span></td>
|
|
294
|
-
</tr><tr>
|
|
295
|
-
<td><span class="src-type">Industrial Purchase</span></td>
|
|
296
|
-
<td>Shipbuilding Yard</td>
|
|
297
|
-
<td class="n">125</td>
|
|
298
|
-
<td class="n pos">+125</td>
|
|
299
|
-
<td class="n">L5.53</td>
|
|
300
|
-
<td class="n">125 <span class="muted">(31.3 %)</span></td>
|
|
301
|
-
</tr><tr>
|
|
302
|
-
<td><span class="src-type">Industrial Purchase</span></td>
|
|
303
|
-
<td>Armory Works</td>
|
|
304
|
-
<td class="n">124</td>
|
|
305
|
-
<td class="n pos">+124</td>
|
|
306
|
-
<td class="n">L5.27</td>
|
|
307
|
-
<td class="n">124 <span class="muted">(31.0 %)</span></td>
|
|
308
|
-
</tr><tr>
|
|
309
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
310
|
-
<td>British Trade Embargo</td>
|
|
311
|
-
<td class="n">66</td>
|
|
312
|
-
<td class="n pos">+66</td>
|
|
313
|
-
<td class="n">L3.53</td>
|
|
314
|
-
<td class="n">66 <span class="muted">(16.5 %)</span></td>
|
|
315
|
-
</tr><tr>
|
|
316
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
317
|
-
<td>Cotton Gin Patented</td>
|
|
318
|
-
<td class="n">64</td>
|
|
319
|
-
<td class="n pos">+64</td>
|
|
320
|
-
<td class="n">L3.34</td>
|
|
321
|
-
<td class="n">64 <span class="muted">(16.0 %)</span></td>
|
|
322
|
-
</tr></tbody>
|
|
323
|
-
</table>
|
|
324
|
-
|
|
325
|
-
<h4>Capacity — sources that DECREASE the track</h4>
|
|
326
|
-
<table class="full">
|
|
327
|
-
<thead><tr><th>Source type</th><th>Source name</th><th>Fires</th><th>Total Δ</th><th>Avg lap</th><th>Games (% of 400)</th></tr></thead>
|
|
328
|
-
<tbody><tr>
|
|
329
|
-
<td><span class="src-type">Market Shock</span></td>
|
|
330
|
-
<td>Bank Run</td>
|
|
331
|
-
<td class="n">65</td>
|
|
332
|
-
<td class="n neg">-65</td>
|
|
333
|
-
<td class="n">L3.57</td>
|
|
334
|
-
<td class="n">65 <span class="muted">(16.3 %)</span></td>
|
|
335
|
-
</tr></tbody>
|
|
336
|
-
</table>
|
|
337
|
-
|
|
338
|
-
<h2>4. Bankruptcy pressure <span class="surface-id">D</span></h2>
|
|
339
|
-
|
|
340
|
-
<p>How close do players get to insolvency in canonical play? Cash starts at 1500 TN. Cash below 0 triggers BANKRUPT (1 lap counted). Cash below 100 is the danger zone for an unexpected rent.</p>
|
|
341
|
-
|
|
342
|
-
<table class="full">
|
|
343
|
-
<thead><tr><th>Condition</th><th>Games</th><th>%</th></tr></thead>
|
|
344
|
-
<tbody>
|
|
345
|
-
<tr><td>Any player ever < 200 TN</td><td class="n">14</td><td class="n">3.5 %</td></tr>
|
|
346
|
-
<tr><td>Any player ever < 100 TN</td><td class="n">2</td><td class="n">0.5 %</td></tr>
|
|
347
|
-
<tr><td>Any player ever < 0 TN (BANKRUPT)</td><td class="n">1</td><td class="n">0.3 %</td></tr>
|
|
348
|
-
</tbody>
|
|
349
|
-
</table>
|
|
350
|
-
|
|
351
|
-
<h4>Lowest cash any player reached (per game)</h4>
|
|
352
|
-
<p class="tight">Distribution of <code>min(min_cash)</code> across the three players in each game, bucketed to 100-TN bins.</p>
|
|
353
|
-
<table class="full" style="max-width:520px"><thead><tr><th>Bucket (TN)</th><th>Games</th></tr></thead><tbody><tr><td class="n">-100</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:1.4%"></div><span class="bar-num">1</span></td></tr><tr><td class="n">100</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:5.6%"></div><span class="bar-num">4</span></td></tr><tr><td class="n">200</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:52.8%"></div><span class="bar-num">38</span></td></tr><tr><td class="n">300</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:70.8%"></div><span class="bar-num">51</span></td></tr><tr><td class="n">400</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:26.4%"></div><span class="bar-num">19</span></td></tr><tr><td class="n">500</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:20.8%"></div><span class="bar-num">15</span></td></tr><tr><td class="n">600</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:22.2%"></div><span class="bar-num">16</span></td></tr><tr><td class="n">700</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:40.3%"></div><span class="bar-num">29</span></td></tr><tr><td class="n">800</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:62.5%"></div><span class="bar-num">45</span></td></tr><tr><td class="n">900</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:100.0%"></div><span class="bar-num">72</span></td></tr><tr><td class="n">1000</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:66.7%"></div><span class="bar-num">48</span></td></tr><tr><td class="n">1100</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:54.2%"></div><span class="bar-num">39</span></td></tr><tr><td class="n">1200</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:25.0%"></div><span class="bar-num">18</span></td></tr><tr><td class="n">1300</td><td class="bar-cell" style="width:auto"><div class="bar" style="width:6.9%"></div><span class="bar-num">5</span></td></tr></tbody></table>
|
|
354
|
-
<p class="legend">Mean 716 TN · median 791 TN · range [-74, 1,336] TN.</p>
|
|
355
|
-
|
|
356
|
-
<h4>Lowest cash by profile</h4>
|
|
357
|
-
<table class="full">
|
|
358
|
-
<thead><tr><th>Profile</th><th>Mean lowest</th><th>Median</th><th>Min observed</th><th>Max observed</th></tr></thead>
|
|
359
|
-
<tbody>
|
|
360
|
-
<tr><td>treasury-finance</td><td class="n">1,146</td><td class="n">1,192</td><td class="n">183</td><td class="n">1,500</td></tr><tr><td>merchant-infrastructure</td><td class="n">936</td><td class="n">988</td><td class="n">78</td><td class="n">1,500</td></tr><tr><td>manufacturer-industry</td><td class="n">969</td><td class="n">1,081</td><td class="n">-74</td><td class="n">1,500</td></tr>
|
|
361
|
-
</tbody>
|
|
362
|
-
</table>
|
|
363
|
-
|
|
364
|
-
<h4>Top 10 largest single cash losses across all 400 games</h4>
|
|
365
|
-
<table class="full">
|
|
366
|
-
<thead><tr><th>Seed</th><th>Slot</th><th>Profile</th><th>Loss (TN)</th><th>Lap</th><th>Source</th></tr></thead>
|
|
367
|
-
<tbody>
|
|
368
|
-
<tr><td>2247</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−420</td><td class="n">L4</td><td>Rent on Philadelphia Exchange to Morris</td></tr><tr><td>2044</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L6</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2049</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2083</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2094</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2098</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2104</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L6</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2108</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2121</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L6</td><td>Buy Shipbuilding Yard</td></tr><tr><td>2130</td><td class="n">2</td><td>manufacturer-industry</td><td class="n neg">−400</td><td class="n">L5</td><td>Buy Shipbuilding Yard</td></tr>
|
|
369
|
-
</tbody>
|
|
370
|
-
</table>
|
|
371
|
-
<p class="legend">9 of the top 10 cash losses are the Manufacturer profile buying the Shipbuilding Yard (400 TN) at lap 5–6. Even these never come close to bankruptcy — they land at cash floors of 800–1100, well above the 0 threshold. The single bankruptcy event (seed 2247 in the 400 set) is a Manufacturer slot 2 paying a Tier-III rent on Philadelphia Exchange and dropping below 0.</p>
|
|
372
|
-
|
|
373
|
-
<h4>Bankruptcy trigger histogram</h4>
|
|
374
|
-
<table class="full"><thead><tr><th>Reason that pushed cash < 0</th><th>Fires</th></tr></thead><tbody><tr><td>Rent on Import Duties to Morris</td><td class="n">1</td></tr></tbody></table>
|
|
375
|
-
|
|
376
|
-
<h2>5. MFG-MIRROR-100 cross-check <span class="surface-id">E</span></h2>
|
|
377
|
-
|
|
378
|
-
<p>Does industrial-only pressure on Capacity indirectly affect the failure tracks? Configuration: Manufacturer × 3 slots, seeds 2026-2125, charterEnabled.</p>
|
|
379
|
-
|
|
380
|
-
<table class="full">
|
|
381
|
-
<thead><tr><th>Metric</th><th>CANONICAL-400</th><th>MFG-MIRROR-100</th></tr></thead>
|
|
382
|
-
<tbody>
|
|
383
|
-
<tr><td>defaultFired games</td><td class="n">0 / 400 (0.0 %)</td><td class="n">0 / 100 (0.0 %)</td></tr>
|
|
384
|
-
<tr><td>rebellionFired games</td><td class="n">0 / 400 (0.0 %)</td><td class="n">0 / 100 (0.0 %)</td></tr>
|
|
385
|
-
<tr><td>bankruptcyEvents total</td><td class="n">1</td><td class="n">0</td></tr>
|
|
386
|
-
<tr><td>credit min mean</td><td class="n">5.00</td><td class="n">5.00</td></tr>
|
|
387
|
-
<tr><td>resistance max mean</td><td class="n">2.70</td><td class="n">2.64</td></tr>
|
|
388
|
-
<tr><td>capacity end mean</td><td class="n">3.44</td><td class="n">5.49</td></tr>
|
|
389
|
-
</tbody>
|
|
390
|
-
</table>
|
|
391
|
-
<p class="legend">Industrial concentration does not unlock any failure event. The MFG-MIRROR config actually has slightly less resistance pressure than the canonical T/M/Mfg config, because no slot in MFG-MIRROR is built to bid up the resistance-pushing tax spaces or vote for the resistance-raising Acts (Manufacturer profile votes NO on Tariff and Excise Enforcement). Capacity end-of-game is comparable.</p>
|
|
392
|
-
|
|
393
|
-
<h2>6. Interpretation <span class="surface-id">F</span></h2>
|
|
394
|
-
|
|
395
|
-
<div class="interp">
|
|
396
|
-
|
|
397
|
-
<p><strong>Are the thresholds wrong?</strong> No. The thresholds are perfectly placed — they are simply unreachable from where the tracks actually live. Lowering them in isolation produces no behavior change at v0.10 pressure levels.</p>
|
|
398
|
-
|
|
399
|
-
<p><strong>Are the pressure sources too rare?</strong> Yes for Resistance, and absolutely yes for Credit. The credit-down channel does not exist as a mechanic. The resistance-up channel exists but is dominated by:</p>
|
|
400
|
-
<ul>
|
|
401
|
-
<li>The three Acts that would raise resistance (Assumption +1, Tariff +1, Excise Enforcement +2) <strong>never pass</strong> under canonical profile play. Their majority votes fail. The 7-lap-cycle is effectively running on Funding Act (+2 credit, no resistance) and Coinage Act (+1 credit + 1 capacity) as the only Acts that fire reliably.</li>
|
|
402
|
-
<li>The card-based resistance pressure (Speculation Fever, Anti-Federalist Pamphlet, Jeffersonian Opposition) requires landing on Market Shock or Republic Debate spaces — which happens in ~3 of every 5 turns by board layout. But the spread of these particular cards is 10–13 % of games each.</li>
|
|
403
|
-
<li>The Speculation Scandal tax space (+1 resistance) is the single largest resistance-up source (152 fires, 33.5 % of games), but it caps at +1 per landing.</li>
|
|
404
|
-
</ul>
|
|
405
|
-
|
|
406
|
-
<p><strong>Are positive/recovery sources overpowering negative sources?</strong> For Credit, the recovery side is the <em>only</em> side — Funding Act alone supplies +800 credit-up across the 400 games (+2 per game in 100 % of games), with Treaty Renegotiation, Foreign Loan Secured, You Are Hamilton, Federalist Victory, Credit Restored, and Gold and Silver Inflow stacking another +370 on top. There is no counter-pressure. For Resistance, Cabinet Bargain (-1) offsets ~15 % of the +295 upward pressure — meaningful but not the bottleneck.</p>
|
|
407
|
-
|
|
408
|
-
<p><strong>Are games too short for failure events?</strong> Possibly contributory, but not the main constraint. Games are 7 laps × 3 players × ~7 actions = ~21 turns. Median game length is 21 turns; min 19, max 24. The Resistance track would need to gain +10 from start in 21 turns, or roughly +0.5 per turn. The actual rate is +0.03 per turn. Extending the game length would help arithmetically but the slope is wrong by an order of magnitude.</p>
|
|
409
|
-
|
|
410
|
-
<p><strong>Are failure events intentionally rare but currently decorative?</strong> This is the honest read. The Default reset, Rebellion reset, and Bankruptcy −1 IP mechanics ship in v0.10 as rules text, but in deterministic batch play they are decorative — they don't shape the win distribution because they almost never fire. The v0.10 balance targets (Treasury 59 / Merchant 25 / Manufacturer 16) were achieved without these events being load-bearing. That is a legitimate position to ship from, but it should be documented as such rather than left as an open mystery.</p>
|
|
411
|
-
|
|
412
|
-
</div>
|
|
413
|
-
|
|
414
|
-
<h2>7. Candidate levers <span class="surface-id">G</span></h2>
|
|
415
|
-
|
|
416
|
-
<p>Listed in ascending order of damage to the v0.10 balance baseline. No implementation in this pass. Each lever names the side it touches (pressure-source vs threshold vs meta), the expected effect, the rationale, and the risk.</p>
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
<div class="lever">
|
|
420
|
-
<div class="head">
|
|
421
|
-
<span class="rank">Lever 1</span>
|
|
422
|
-
<span class="target">target: Bankruptcy · <span class="side-pressure">pressure-source</span></span>
|
|
423
|
-
</div>
|
|
424
|
-
<div class="nm">Reduce Treasury Opens landed-on bonus from 400 TN → 300 TN (or 200 TN)</div>
|
|
425
|
-
<div class="row"><div class="k">Expected effect</div><div>Bankruptcy: ↑ 2–6 %. Default: no direct effect. Rebellion: none.</div></div>
|
|
426
|
-
<div class="row"><div class="k">Rationale</div><div>The 400 TN landed-on bonus is the largest cash injection in the game. Halving the multiplier (4× → 2×) would compound across 400 games with no rule-shape change and no card-deck change. Affects every profile equally. Pass-through bonus (200 TN) stays.</div></div>
|
|
427
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>Mild. Likely 1–3 IP shift in win margins. Manufacturer profile most exposed (industrial purchases late lap = thin cash). Test before commit.</div></div>
|
|
428
|
-
</div>
|
|
429
|
-
<div class="lever">
|
|
430
|
-
<div class="head">
|
|
431
|
-
<span class="rank">Lever 2</span>
|
|
432
|
-
<span class="target">target: Default · <span class="side-pressure">pressure-source</span></span>
|
|
433
|
-
</div>
|
|
434
|
-
<div class="nm">Convert "Bank Run" card from -1 capacity to -1 credit (or -1 credit AND -1 capacity)</div>
|
|
435
|
-
<div class="row"><div class="k">Expected effect</div><div>Default: introduces the only credit-down channel in the game. With Bank Run firing ~3–4 % per game and currently no other credit-down source, this single change converts credit from a one-way ratchet into a directional track. Still wouldn't reliably reach 0 — but would establish the channel for future tuning.</div></div>
|
|
436
|
-
<div class="row"><div class="k">Rationale</div><div>Bank Run is conditionally lethal (requires Charter passed, which happens ~100 % of canonical) and historically aligned with credit collapse. The capacity-only effect is mechanically thin. Re-wiring it to credit puts a natural credit-down pressure on the same draw frequency without inventing a new card.</div></div>
|
|
437
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>Low–medium. Bank Run currently does -1 capacity ~3–4 % of games; the swap removes that capacity nudge from the system. Would need a follow-up to check whether the Capacity ≥ 6 / ≥ 8 thresholds still hit at the same rate.</div></div>
|
|
438
|
-
</div>
|
|
439
|
-
<div class="lever">
|
|
440
|
-
<div class="head">
|
|
441
|
-
<span class="rank">Lever 3</span>
|
|
442
|
-
<span class="target">target: Rebellion · <span class="side-pressure">pressure-source</span></span>
|
|
443
|
-
</div>
|
|
444
|
-
<div class="nm">When Assumption / Tariff / Excise Enforcement Acts FAIL the vote, still apply +1 resistance as "lobby pressure"</div>
|
|
445
|
-
<div class="row"><div class="k">Expected effect</div><div>Rebellion: ↑ from 0 % to roughly 10–30 % depending on which acts fail. Mean resistance max likely rises from 2.7 to 5–7. Acts already always pass for Funding (lap 1), so resistance baseline still rises by 2 (Funding doesn't change). The three resistance-pushing Acts are the ones that fail, which is exactly the lever target.</div></div>
|
|
446
|
-
<div class="row"><div class="k">Rationale</div><div>The Acts already model historical resistance (Assumption, Tariff, Excise). Currently failure = nothing happens. A failed-vote +1 resistance simulates "the proposal alone inflamed opposition, even though it didn't pass" — historically faithful for Anti-Federalist tensions. Mechanically targeted at the exact dead-air zone.</div></div>
|
|
447
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>Medium. Adds resistance pressure systematically. Could push the Whiskey Rebellion live narration (resistance ≥ 8) into common occurrence, which then activates the Whiskey Rebellion conditional card. Net 0 effect on cash, win rates likely shift 2–5 IP toward the Treasury-style profile that already votes against these Acts.</div></div>
|
|
448
|
-
</div>
|
|
449
|
-
<div class="lever">
|
|
450
|
-
<div class="head">
|
|
451
|
-
<span class="rank">Lever 4</span>
|
|
452
|
-
<span class="target">target: Rebellion · <span class="side-threshold">threshold</span></span>
|
|
453
|
-
</div>
|
|
454
|
-
<div class="nm">Lower Rebellion threshold from 12 → 10 (or 9, or 8)</div>
|
|
455
|
-
<div class="row"><div class="k">Expected effect</div><div>Rebellion: still 0 % of canonical-400. Max observed is 6. Even at threshold 7 it would still fire 0 %.</div></div>
|
|
456
|
-
<div class="row"><div class="k">Rationale</div><div>Threshold lever alone is structurally inert because the track distribution does not approach the new threshold either. Listed for completeness — explicitly NOT recommended.</div></div>
|
|
457
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>No effect at v0.10 pressure levels. Would only become live in combination with a pressure-source lever above. Could matter if e.g. lever 3 raises max to 7+.</div></div>
|
|
458
|
-
</div>
|
|
459
|
-
<div class="lever">
|
|
460
|
-
<div class="head">
|
|
461
|
-
<span class="rank">Lever 5</span>
|
|
462
|
-
<span class="target">target: Default · <span class="side-threshold">threshold</span></span>
|
|
463
|
-
</div>
|
|
464
|
-
<div class="nm">Lower Default threshold from credit=0 to credit=1 or credit=2</div>
|
|
465
|
-
<div class="row"><div class="k">Expected effect</div><div>Default: still 0 % of canonical-400. Credit min observed is 5. Adjusting where 0 lives is irrelevant when credit floor is 5.</div></div>
|
|
466
|
-
<div class="row"><div class="k">Rationale</div><div>Threshold lever alone is structurally inert because the credit track has no down-channel at all. Listed for completeness — explicitly NOT recommended without a pressure-source lever first.</div></div>
|
|
467
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>No effect at v0.10 pressure levels.</div></div>
|
|
468
|
-
</div>
|
|
469
|
-
<div class="lever">
|
|
470
|
-
<div class="head">
|
|
471
|
-
<span class="rank">Lever 6</span>
|
|
472
|
-
<span class="target">target: All three · <span class="side-meta">meta</span></span>
|
|
473
|
-
</div>
|
|
474
|
-
<div class="nm">Keep failure events decorative — document as catastrophic edge cases for human play</div>
|
|
475
|
-
<div class="row"><div class="k">Expected effect</div><div>No change. Failure events remain decorative in deterministic batch play, retain their role as drama in live human play where novice mistakes could conceivably push tracks to threshold.</div></div>
|
|
476
|
-
<div class="row"><div class="k">Rationale</div><div>The deterministic profiles intentionally minimize risk; human players make worse decisions and could plausibly reach failure thresholds. v0.10 is balanced for scripted-profile play (Treasury 59 / Merchant 25 / Manufacturer 16), and failure events are not part of that target. Documenting them as edge-case ceilings rather than tuning them in is a legitimate choice.</div></div>
|
|
477
|
-
<div class="row"><div class="k">Risk to v0.10</div><div>None — accepts the current state. Cost is design honesty: the game ships with three rule mechanics (Default reset, Rebellion reset, Bankruptcy −1 IP) that almost never fire and so cannot be load-bearing for game shape.</div></div>
|
|
478
|
-
</div>
|
|
479
|
-
|
|
480
|
-
<h2>Closeout <span class="surface-id">H</span></h2>
|
|
481
|
-
|
|
482
|
-
<p><strong>The most economical reading:</strong> Default is dead because the credit-down channel does not exist as a mechanic. Rebellion is dead because the resistance-up channel exists but the Acts that should drive it never pass under deterministic profile play, leaving only card-and-tax-space pressure that nets +0.6 per game against a +10 gap. Bankruptcy is dead because the economy is liquidity-positive at every lap by design — the Treasury Opens 400-TN landed bonus and the absence of upkeep keep cash floors well above zero.</p>
|
|
483
|
-
|
|
484
|
-
<p>Threshold-side levers (Default at 1 or 2 instead of 0; Rebellion at 9 or 10 instead of 12) are <strong>structurally inert</strong> at current pressure levels. They become useful only after a pressure-source lever introduces enough movement to reach the new threshold. <strong>If failure events should fire, the pressure side must change first.</strong></p>
|
|
485
|
-
|
|
486
|
-
<p>The cleanest single intervention that opens a credit-down channel without touching the v0.10 balance shape is re-wiring the existing Bank Run card to push credit instead of (or in addition to) capacity. The cleanest single intervention that compounds resistance pressure without rewriting Act semantics is applying a +1 resistance "lobby pressure" effect when Assumption / Tariff / Excise Enforcement fail their floor votes. Both are listed above as Levers 2 and 3.</p>
|
|
487
|
-
|
|
488
|
-
<div class="meta">
|
|
489
|
-
Diagnosis pass — observation only. Raw data: <code>release/balance-evidence/raw-data/sovereign-diagnosis-canonical-400.json</code> (and -100-A, -100-B, -mfg-mirror-100). Sim: <code>tools/diagnosis/sim.mjs</code>. Reducer byte-identical to v0.10/v1.0.2 for all 400 canonical seeds (verified). No balance change. No threshold change. No rule change. No release.
|
|
490
|
-
</div>
|
|
491
|
-
|
|
492
|
-
</div>
|
|
493
|
-
</body>
|
|
494
|
-
</html>
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
# Sovereign — Design System (v0.18 polished baseline)
|
|
2
|
-
|
|
3
|
-
> Design-system reference and visual state audit for the Sovereign Solo / Digital Mode build that ships in `release/digital-mode/sovereign-solo.html` at v1.1.0.
|
|
4
|
-
|
|
5
|
-
## Files
|
|
6
|
-
|
|
7
|
-
| File | Purpose |
|
|
8
|
-
|---|---|
|
|
9
|
-
| `sovereign-visual-system-v0.18.html` | Standalone design-system sheet. Eleven sections covering palette, typography, panels, controls, board tiles, tokens + tier markers, track states, card chrome, Acts states, the three failure tiers, and endgame components. |
|
|
10
|
-
| `sovereign-screen-audit-v0.18.html` | Fifteen-frame visual state audit showing rendered examples of every major game state — first load, normal turn, asset landing, card draw, auction, Act vote, Credit Crisis, Default (composed mock), Rebellion (composed mock), endgame, replay, batch modal, small viewport, print preview. |
|
|
11
|
-
| `README.md` | This file. |
|
|
12
|
-
|
|
13
|
-
## Why these exist
|
|
14
|
-
|
|
15
|
-
The v1.1.0 release promotes the v0.18 polished failure-pressure build to canonical. That promotion changed every player-facing surface (board, panels, ledger, endgame, modals, replay) without changing any mechanic. These two HTML files are the durable record of what the game looks like at v1.1.0, so future polish passes or design reviews can audit against a known baseline.
|
|
16
|
-
|
|
17
|
-
Open either file in any modern browser — no install, no network, no external assets.
|
|
18
|
-
|
|
19
|
-
## What was preserved (and where to verify)
|
|
20
|
-
|
|
21
|
-
- All v0.18 mechanics (Credit Crisis at Credit ≤ 4, Default at Credit 0, Rebellion at Resistance 12, v0.17 Speculation Fever conditional, v0.16 Anti-Federalist Pamphlet credit pressure, v0.11 Bank Run, no recovery gates).
|
|
22
|
-
- `SAVE_VERSION` stays at `'v0.18-candidate'` (no mechanic changed during the polish pass).
|
|
23
|
-
- Internal token strings (event identifiers, reason strings, profile keys, track keys, DOM IDs).
|
|
24
|
-
- 100-seed canonical hash (`3189375454`) matches the v0.18 Node sim byte-for-byte.
|
|
25
|
-
|
|
26
|
-
The full mechanics-preservation table and behavior-check evidence is captured in the v0.18 promotion audit at `experiments/v0.18-failure-pressure-candidate/sovereign-v0.18-promotion-audit.html` (44 / 44 PASS).
|
|
27
|
-
|
|
28
|
-
## Provenance
|
|
29
|
-
|
|
30
|
-
The polished bundle was produced via Claude Design from the v0.18 candidate HTML, then promoted to the canonical release surface as part of v1.1.0 prep Stage A. The v0.10 baseline that previously occupied `release/digital-mode/sovereign-solo.html` is archived alongside the new canonical at `release/digital-mode/sovereign-solo-v0.10-baseline.html` for historical reference.
|