Close loose ends: WP-0018 finished (T04 capture link tested, T05 reference-model decision), WP-0016 finished (J4 from China data), WP-0014 blocked (owner declaration + grant v2 confirmed; waits on rein-aharness publisher and 2027), WP-0015 blocked (EU Pm measured, noise calibrated; AR data and Q4 2026 data pending); Calibration v0.6

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 14913@bnt-lap001
Assistant-Session: add7ef69-b901-4756-9a67-34cf1125d96f
This commit is contained in:
tegwick 2026-10-14 02:31:02 +02:00
parent b62111ee3e
commit dc4e3adc99
24 changed files with 606 additions and 199 deletions

View file

@ -0,0 +1,85 @@
# Owner declaration — assembly-checkpoint-* (ASSEMBLY-WP-0014-T01)
#
# Answers glas-harness GLAS-WP-0017-T02 (grant-shape confirmation) and rein-aharness
# REINAH-WP-0003-T04 / legacy-runtime-inventory step 2. Shape copied from the FI template
# (freedom-intelligence/activity-definitions/fi-daily-research-brief.declaration.yaml).
# This file is assembly-economics' authority over WHAT runs and under WHICH grant. It does not
# schedule (activity-core), pick a sandbox (glas-harness) or execute and publish (rein-aharness).
# Human-readable version and founder approval: checkpoints/EXECUTION_DECLARATION.md (approved
# 2026-10-13), addendum in docs/decisions/2026-10-12-checkpoint-origin-publication.md.
declaration_version: "1"
definition_ids:
- assembly-checkpoint-setup-daily # until 2026-12-31
- assembly-checkpoint-monthly-2026 # until 2026-12-31
- assembly-checkpoint-quarterly
- assembly-checkpoint-annual
owner: assembly-economics
approved_by: Bernd Worsch
approved_at: "2026-10-13"
status: proposed # -> active at cutover to the governed route (target: December monthly run)
execution:
shape: blueprint # operator decision 2026-10-13, hub decision 0636c577: tenant-owned blueprint
harness_profile_ref: none # no Glas profile unless the assessment becomes an agent loop
steps:
- deterministic: python3 checkpoints/run_checkpoint.py --kind {kind} --date {date}
- bounded_model_call: one llm-connect request inside run_checkpoint.py (assessment); numbers
not present in the fetched data are rejected; --no-llm yields a valid record
selection: explicit definition id only. No label or approach_hint routing after cutover.
inputs:
kind: {type: enum, values: [light, full], source: definition}
date: {type: date, tz: Europe/Berlin, source: activity-core due item (context.item.date)}
repositories:
- coulomb/assembly-economics at a verified Forgejo commit (main)
- coulomb/web-fetcher at a verified Forgejo commit (main)
code: checkpoints/run_checkpoint.py and web_fetcher (standard library only; no package install)
network:
egress_hosts: # from checkpoints/sources.json, plus the llm-connect endpoint
- www.census.gov
- ec.europa.eu
- fred.stlouisfed.org
- ghoapi.azureedge.net
- api.worldbank.org
- api.openalex.org
secrets: none for data sources (all public). llm-connect per its own route. The push credential
belongs to the publisher, never to the run.
outputs:
artifacts:
- checkpoints/{yyyy}/{date}-{kind}.md
- checkpoints/data/{date}-{kind}.jsonl
out_of_window: successful no-op (JSON summary status "out-of-window"), no commit
repository_grant:
version: "2"
allowed_paths:
- checkpoints/**
commit_count: {min: 0, max: 1} # 0 for out-of-window days
publication:
remote: origin
ref: main
mode: fast-forward-only
rebase_retries: 1 # only if every unpublished commit stays within allowed_paths
force: never
decision: docs/decisions/2026-10-12-checkpoint-origin-publication.md
commit_message: "Checkpoint {date} ({kind}) — activity-core"
completion:
event: assembly_checkpoint
required_detail:
repo: assembly-economics
date: inputs.date
kind: inputs.kind
path: outputs.artifacts[0]
pushed: true (or status out-of-window)
on_failure: executor_run ok=false, no assembly_checkpoint event; the next scheduled run is
unaffected. Source failures are not run failures (recorded as not_found / error rows).
rollback:
pins:
- this declaration and the four definitions, by git revision in this repo
procedure: revert the checkpoint commit (records are append-only by convention, so a revert is
visible), or set enabled false in the definition and sync activity-core definitions.
Until the legacy expiry (2026-12-31) the compatibility route (rein-aharness approach
assembly-checkpoint, 06bd08c) remains available.

View file

@ -63,6 +63,17 @@ the mean of DE, FR, IT and ES.
Secondary-source figures are marked. They should be checked against the
originals at the next review.
### Added 2026-10-14
| Indicator | Jurisdiction | Value | Source |
|---|---|---|---|
| Top-10 constituents' share of the STOXX Europe 600 | EU | about 21 % (Nestlé 3.0, ASML 2.7, Novo Nordisk 2.4, LVMH 2.3, AstraZeneca 2.1, Roche 2.0, Novartis 2.0, Shell 1.9, HSBC 1.5, TotalEnergies 1.3 %) | [STOXX components list](https://www.stoxx.com/document/Bookmarks/CurrentComponents/SXXP.pdf) (undated) |
| MERVAL concentration | AR | more than half of the index weight in energy firms; no top-firm share found | [El Cronista](https://www.cronista.com/finanzas-mercados/las-tres-mejores-y-las-tres-peores-acciones-del-sp-merval-en-2026-donde-hay-valor-todavia/), [iProfesional](https://www.iprofesional.com/finanzas/461395-crece-a-pasos-agigantados-la-brecha-entre-las-acciones-que-mas-suben-y-las-que-mas-bajan) |
The MERVAL is a narrow index (about 20 stocks), so a top-firm share would not
be comparable with the US and EU operators. AR market concentration stays a
prior.
## Operators applied
- Discovery channel Pd = leading search share.

View file

@ -1,6 +1,8 @@
# Calibration of GADM-0.4 to measured data
**Status:** v0.5 (2026-10-13). ASSEMBLY-WP-0013, then the 2026-10-13 review
**Status:** v0.6 (2026-10-14): EU market concentration measured (STOXX
Europe 600 top-10 about 21 %), China (J4) added; 50 of 50 targets in range,
42 measured. Readings R1–R4 unchanged. Earlier: v0.5 (2026-10-13). ASSEMBLY-WP-0013, then the 2026-10-13 review
(§ 3.1): 36 of 40 targets measured, all 40 inside their ranges after fitting.
v0.5 adds Argentina's ecological headroom (global planetary-boundary measure),
which fits AR's `ereg` (0.0058) instead of the default. Calibrates starting states

View file

@ -372,3 +372,18 @@ Readings:
Calibration note: runs without `d0` keep the original hook, so all earlier
results are unchanged.
## 9. J4 bloc from China data (WP-0016-T03)
The J4 reference bloc now starts from its own calibrated state
(`calibrate_data`, jurisdiction "CN", J4 levers):
- leading search share 0.53 (Baidu 46.9 % in StatCounter, which undercounts
China's domestic market, so the range is 0.40–0.65);
- mobile-OS HHI 0.56;
- sentiment 0.78 (Ipsos: 83 % see more benefits than drawbacks);
- adoption level and growth as priors.
With it, J4 adopts slightly faster (K_Ω 0.43 at t 10) and keeps high sentiment
(0.77 at t 100, against 0.28 with the US start). The H1 and H2 verdicts are
unchanged (`results/world_scenarios.md`, `results/exports.md`).

View file

@ -356,3 +356,47 @@ future AI use shifts toward automating physical production.
Decoupling holds at the task-data φ_r and becomes partial or disappears at
the dematerialization fits.
## 8. Selection weights grounded and the capture link tested (ASSEMBLY-WP-0018-T04)
- **Speed.** Leader displacement has declined over decades since 2000
(Bessen et al.), a time scale of roughly 20 years. The adjustment speed of
0.05 per year matches that. Lobbying moves enactment probabilities only
marginally (Kang 2016), which fits the moderate capture strength. Both stay
as set.
- **Capture link.** `o_pd` (base parameter, default 0) makes organism
selection quality fall with discovery concentration,
`O = Q (1 − disc)(1 − o_pd · Pd)`. In GADM-0.3+ the channel stocks are
hidden from the base auxiliaries, so Pd is passed through explicitly
(`Pd_ch`). With `o_pd` = 1, endogenous capture changes VFAC by at most
0.0003 (attention oligopoly, baseline, generative regime at B2–B3).
- **Reading.** Capture of selection is not a material channel for VFAC in
GADM, even when captured channels deliver worse quality. Selection quality
σ reaches the stocks only through value flows, with a small elasticity.
The governance concern about captured selection is therefore not supported
quantitatively by this model.
## 9. Decision: GADM-0.5 is not yet the reference model (ASSEMBLY-WP-0018-T05)
Decided 2026-10-14. **GADM-0.4 stays the reference model** for the band
probe, the calibration (`models/Calibration.md`), model matching and the
cross-border world. **GADM-0.5 is the module for ecological and demand
questions**: classes, demand split, non-rival output.
Reasons:
1. BR-011 is open. The central GADM-0.5 reading, genuine decoupling, holds at
the task-data φ_r but not at the dematerialization fits. Making GADM-0.5 the
reference now would build every downstream reading on an unresolved
parameter.
2. The structural gains are already usable where they matter (`gadm05`,
`simulate_eco`, `simulate_sel`) without changing the reference results.
Known limitation of the reference model, recorded here: GADM-0.4 keeps
`e2` = 0.03. That overstates compute's ecological draw 10–20 times (§ 7.1).
This affects the ecological headroom readings of GADM-0.4 runs at high
K_Ω.
Revisit when post-2024 values of E5 (material intensity) and L4 (task shares)
are in. Those decide φ_r and thus BR-011, which is the trigger in the break
register.

View file

@ -228,3 +228,13 @@ Readings:
`results/matching.md`, which is re-run at the review of each checkpoint. The
unattended runner does not compute regimes, so the approved execution
declaration stays unchanged.
### 4.4 Observation noise from real residuals (WP-0015-T07, step 1)
Residual standard deviations around the best static regime (US, B3/loop
off): adoption 0.026, investment (L5b) 0.078, discovery 0.009. With these
(never below the assumed noise), the filter result is unchanged: B3 for two
quarters, B4 at 1.00 in Q3 2026, no confirmed flip (`results/matching.md`).
The filter's sharpness therefore comes from model-structure uncertainty
(all candidates share the GADM structure), not from underestimated
measurement noise. The B3 → B4 check waits for Q4 2026 data.

View file

@ -41,7 +41,7 @@ from jurisdictions import ARCHETYPES # noqa: E402
HERE = Path(__file__).resolve().parent
OUT = HERE / "results"
TARGETS = json.loads((HERE / "calibration_targets.json").read_text())["targets"]
NEAREST = {"US": "J3", "EU": "J1", "DE": "J1", "AR": "J2"}
NEAREST = {"US": "J3", "EU": "J1", "DE": "J1", "AR": "J2", "CN": "J4"}
FALLBACK = {"DE": "EU"} # DE uses EU targets where it has none
CHANNEL_KEYS = ("Pm", "Pi", "Pd", "Pmem", "Plin")
ADOPT = ("aO", "ell", "oseed")
@ -181,7 +181,7 @@ def main() -> None:
"| Jurisdiction | " + " | ".join(gr.BAND) + " |", "|---|" + "---|" * len(gr.BAND)]
resid_lines = []
resid_all = {}
for jur in ("US", "EU", "DE", "AR"):
for jur in ("US", "EU", "DE", "AR", "CN"):
t = targets(jur)
p, s = start_state(jur, BASE_ANCHOR)
if "Ko_ratio_1y" not in t:

View file

@ -136,6 +136,12 @@
"hi": 0.62,
"basis": "measured",
"op": "Special Eurobarometer 554/557 (fieldwork 2024): 55 % expect AI to affect daily life positively, 35 % negatively; Sigma = 0.5 + (pos - neg)/200 = 0.60; different question from Pew, so the range is wide and skewed down (checkpoints/2026/2026-10-13-review.md)"
},
"Pm": {
"lo": 0.17,
"hi": 0.3,
"basis": "measured",
"op": "top-10 constituents' share of the STOXX Europe 600, about 21 % (STOXX components list, undated; secondary search 2026-10-14); same operator family as the US (top-7 share of the S&P 500, 34 %) (checkpoints/2026/2026-10-13-review.md)"
}
},
"DE": {
@ -225,6 +231,56 @@
"basis": "measured",
"op": "Planetary Health Check 2025 (Stockholm Resilience Centre / PIK): 7 of 9 boundaries breached; E = share still in the safe zone = 2/9 = 0.22 (global) (checkpoints/2026/2026-10-13-review.md)"
}
},
"CN": {
"Ko": {
"lo": 0.06,
"hi": 0.2,
"basis": "prior",
"op": "no all-firm share; 74.6 % of China's Fortune 500 deploy or use generative AI (Omdia 2025H1), 42 % of the population are generative-AI users (CNIC, end of 2025); range like the US"
},
"Ko_ratio_1y": {
"lo": 1.3,
"hi": 1.8,
"basis": "prior",
"op": "no firm series; user numbers roughly doubled within a year (CNIC); range above the US/EU observed growth"
},
"Pd": {
"lo": 0.4,
"hi": 0.65,
"basis": "measured",
"op": "leading search share Baidu 46.9 % (StatCounter Sept 2026); StatCounter undercounts China's domestic market (Bing 21.6 %, Yandex 15 % suggest foreign-browser bias), so the range is wide (checkpoints/2026/2026-10-13-review.md)"
},
"Pmem": {
"lo": 0.46,
"hi": 0.66,
"basis": "measured",
"op": "mobile OS HHI (Android 67.5 %, iOS 31.9 %) = 0.56 (StatCounter Sept 2026) (checkpoints/2026/2026-10-13-review.md)"
},
"Pi": {
"lo": 0.55,
"hi": 0.8,
"basis": "prior",
"op": "domestic cloud market led by Alibaba, Huawei, Tencent; top-3 share prior"
},
"Plin": {
"lo": 0.5,
"hi": 0.85,
"basis": "prior",
"op": "domestic lineages (DeepSeek, Qwen, others); concentration prior"
},
"Sig": {
"lo": 0.7,
"hi": 0.85,
"basis": "measured",
"op": "Ipsos (via Stanford AI Index 2025): 83 % of Chinese respondents see more benefits than drawbacks (US 39 %); Sigma = 0.5 + (benefit - drawback)/200 = 0.83, range widened downward for the different question (checkpoints/2026/2026-10-13-review.md)"
},
"E": {
"lo": 0.15,
"hi": 0.32,
"basis": "measured",
"op": "Planetary Health Check 2025 (Stockholm Resilience Centre / PIK): 7 of 9 boundaries breached; E = share still in the safe zone = 2/9 = 0.22 (global) (checkpoints/2026/2026-10-13-review.md)"
}
}
}
}

View file

@ -48,7 +48,7 @@ def base() -> dict:
st = json.loads((OUT / "calibrated_starts.json").read_text())
def par(j):
return {k: v for k, v in st[j]["params"].items() if k in g.PARAMS}
return {j: (par(j), dict(st[j]["init"])) for j in ("US", "EU", "AR")}
return {j: (par(j), dict(st[j]["init"])) for j in ("US", "EU", "AR", "CN") if j in st}
def world(cal: dict, coupled: bool = True, us_lev: dict | None = None, eu_access: dict | None = None,

View file

@ -46,6 +46,9 @@ PARAMS = {
# (physical, limited by ecological headroom); 1 = GADM up to 0.4 (all output scaled by sqrt(E)).
# xn = rate at which non-rival output, as far as it is openly inheritable, flows into commons X.
"phi_r": 1.0, "xn": 0.0,
# ASSEMBLY-WP-0018-T04: organism selection quality falls with discovery concentration,
# O = Q (1 - disc) (1 - o_pd * Pd). 0 = GADM up to 0.5 (default).
"o_pd": 0.0,
# commons (§ 7)
"aX": 0.30, "rho0": 0.30, "rhoO": 0.40, "IX": 0.02, "dX": 0.04,
"lX": 0.06, "lXo": 0.06,
@ -105,7 +108,7 @@ def auxiliaries(s: dict, p: dict) -> dict:
V = min(1.0, v_h + p["vo"] * Ko * Q)
M = math.sqrt(A * dem)
O = Q * (1 - p["disc"])
O = Q * (1 - p["disc"]) * (1 - p.get("o_pd", 0.0) * s.get("Pd_ch", 0.0))
w = [p["wm"], p["ws"], p["wc"], p["wp"], p["wo"] * Ko]
q = [M, Q, N * (1 - P), S, O]
sigma = sum(a * b for a, b in zip(w, q)) / sum(w)

View file

@ -95,6 +95,7 @@ COEF = {"Pm": "c_m", "Pi": "c_i", "Pd": "c_d", "Pmem": "c_mem", "Plin": "c_lin",
def derivatives(s: dict, p: dict) -> tuple[dict, dict]:
s2 = {k: v for k, v in s.items() if k not in CHANNELS}
s2["P"] = total_p(s)
s2["Pd_ch"] = s["Pd"] # discovery channel, visible to the base auxiliaries (o_pd link)
d, a = g2.derivatives(s2, p)
d.pop("P")
for k, (drv, r, ctr) in _channel_terms(s, p, a).items():

View file

@ -193,6 +193,7 @@ def main_observed() -> None:
+ ", ".join(f"{a} {w:.2f}" for a, w in anchors.items())
+ f". Loop weights: off {loops['off']:.2f}, on {loops['on']:.2f}.", ""]
lines += observed_imm_lines()
lines += calibrated_imm_lines()
(OUT / "matching.md").write_text("\n".join(lines))
print("\n".join(lines))
@ -556,6 +557,58 @@ def observed_imm_lines() -> list[str]:
return lines
# --- WP-0015-T07: observation noise calibrated from real residuals ------------------------------
def residual_noise(jur: str = "US") -> dict:
"""Residual standard deviation per indicator around the best static regime (model error included)."""
adop = SERIES["US_adoption"]
static = score(jur, path, adop, level=cd.targets(jur)["Ko"])
b = best(static)
rb = path(jur, *b)
t_from = CAL["US_adoption"]
def mt(t):
return static[b]["t0"] + (t - t_from)
out = {}
for name, kind in KIND.items():
pts = [(CAL[name] + tau, y) for tau, y in SERIES[name]["points"]]
pts = [(t, y) for t, y in pts if mt(t) >= STEP]
if kind == "pd":
r = [y - observe(rb, mt(t), kind) for t, y in pts]
r = [x - sum(r) / len(r) for x in r] # level offset is a measurement scale, not noise
else:
r = [math.log(y) - math.log(observe(rb, mt(t), kind)) for t, y in pts]
r = [x - sum(r) / len(r) for x in r]
n = len(r)
out[kind] = (sum(x * x for x in r) / max(1, n - 1)) ** 0.5
return {"best": b, "sd": out}
def calibrated_imm_lines() -> list[str]:
global NOISE
info = residual_noise("US")
keep = dict(NOISE)
for kind, sd in info["sd"].items():
mode, _old = NOISE[kind]
NOISE[kind] = (mode, max(sd, _old)) # never below the sampling noise assumed so far
ev, _i = observed_imm("US")
NOISE.clear(); NOISE.update(keep)
lines = ["", "## US: IMM filter with observation noise calibrated from residuals (WP-0015-T07)", "",
f"Residual standard deviations around the best static regime ({fmt(info['best'])}), model error included:",
"", "| Indicator | assumed noise | residual sd | used |", "|---|---|---|---|"]
for kind, sd in info["sd"].items():
lines.append(f"| {kind} | {keep[kind][1]} | {sd:.4f} | {max(sd, keep[kind][1]):.4f} |")
lines += ["", "| Calendar t | B1 | B2 | B3 | B4 |", "|---|---|---|---|---|"]
for t, res in ev:
an = marginal(res, 0)
lines.append(f"| {t:.2f} | " + " | ".join(f"{an[(a,)]['w']:.2f}" for a in ("B1", "B2", "B3", "B4")) + " |")
an = marginal(ev[-1][1], 0)
top = max(an, key=lambda k: an[k]["w"])
fl = flips(ev, by=0)
lines += ["", f"Last quarter: {top[0]} {an[top]['w']:.2f}. Confirmed flips: "
+ ("; ".join(f"{t:.2f}: {a[0]} → {b_[0]}" for t, a, b_ in fl) if fl else "none") + ".", ""]
return lines
if __name__ == "__main__":
if "--imm" in sys.argv:
main_imm()

View file

@ -22,14 +22,14 @@ already contains today's permissiveness).
| Regime | Loop | K_Ω t5 / t25 / peak | Ȳ 0–25 | VFAC t100 | G | A | P t0 → t100 | floors broken |
|---|---|---|---|---|---|---|---|---|
| J1 | off | 0.25 / 0.30 / 0.31 | 0.261 | 0.289 | 0.41 | 0.41 | 0.72 → 0.82 | P |
| J1 | on | 0.24 / 0.18 / 0.26 | 0.242 | 0.306 | 0.41 | 0.47 | 0.72 → 0.80 | P |
| J2 | off | 0.55 / 0.52 / 0.59 | 0.318 | 0.193 | 0.33 | 0.18 | 0.72 → 0.91 | P,A |
| J2 | on | 0.43 / 0.14 / 0.43 | 0.233 | 0.246 | 0.38 | 0.31 | 0.72 → 0.88 | P |
| J3 | off | 0.49 / 0.49 / 0.54 | 0.308 | 0.186 | 0.32 | 0.17 | 0.72 → 0.92 | P,A |
| J3 | on | 0.38 / 0.11 / 0.38 | 0.223 | 0.237 | 0.38 | 0.30 | 0.72 → 0.90 | P |
| J4 | off | 0.50 / 0.51 / 0.55 | 0.313 | 0.207 | 0.33 | 0.24 | 0.72 → 0.90 | P |
| J4 | on | 0.47 / 0.35 / 0.50 | 0.287 | 0.228 | 0.36 | 0.29 | 0.72 → 0.89 | P |
| J1 | off | 0.25 / 0.31 / 0.32 | 0.265 | 0.288 | 0.41 | 0.41 | 0.70 → 0.82 | P |
| J1 | on | 0.24 / 0.19 / 0.27 | 0.245 | 0.306 | 0.41 | 0.48 | 0.70 → 0.80 | P |
| J2 | off | 0.55 / 0.53 / 0.59 | 0.320 | 0.192 | 0.33 | 0.18 | 0.70 → 0.91 | P,A |
| J2 | on | 0.44 / 0.14 / 0.44 | 0.234 | 0.246 | 0.38 | 0.31 | 0.70 → 0.88 | P |
| J3 | off | 0.49 / 0.50 / 0.55 | 0.310 | 0.186 | 0.32 | 0.17 | 0.70 → 0.92 | P,A |
| J3 | on | 0.38 / 0.11 / 0.38 | 0.224 | 0.237 | 0.38 | 0.30 | 0.70 → 0.90 | P |
| J4 | off | 0.50 / 0.51 / 0.56 | 0.315 | 0.206 | 0.33 | 0.24 | 0.70 → 0.90 | P |
| J4 | on | 0.48 / 0.35 / 0.50 | 0.289 | 0.228 | 0.36 | 0.29 | 0.70 → 0.89 | P |
## AR (current regime ≈ J2)

View file

@ -61,42 +61,103 @@
},
"t_star": 1.1
},
"CN": {
"init": {
"As": 0.49300303196473755,
"Aw": 0.49791492955158234,
"Cch": 0.4302546754224776,
"Cd": 0.3622557560708628,
"Cs": 0.5266049749545682,
"Cw": 0.5568429588015028,
"Dch": 0.4362407628962177,
"Dd": 0.4019755119474779,
"Ds": 0.539234768802821,
"Dw": 0.5438975284092785,
"E": 0.23483345509982823,
"F": 0.40252055679926135,
"G": 0.47241433298399665,
"Gs": 0.45499599771736576,
"Gw": 0.47822150069277375,
"Ko": 0.12400013263270267,
"Kp": 0.4906170696505522,
"Lg": 0.7749999999999999,
"N": 0.4836863755546663,
"Nch": 0.22729946215662053,
"Nd": 0.09090387668390394,
"Ns": 0.17049784862648207,
"Nw": 0.5114005378433795,
"Pd": 0.5253629120311295,
"Pi": 0.6757309041042,
"Plin": 0.677657906631317,
"Pm": 0.5005796261214728,
"Pmem": 0.5607016992076187,
"Ppol": 0.500441943438186,
"Q": 0.4966583186115709,
"S": 0.49909615249141687,
"Sig": 0.7749999999999999,
"W": 0.13319776829790653,
"X": 0.3884559648900623
},
"k": 2.0,
"params": {
"L": 0.2,
"aext": 0.58,
"c_d": 0.4026,
"c_i": 0.3543,
"c_lin": 0.3494,
"c_m": 0.0693,
"c_mem": 0.3759,
"c_pol": 0.3874,
"care_load": 0.03,
"ereg": 0.006502027921568628,
"leg_lag": 10.0,
"lin_open": 0.2,
"m": 0.2,
"r_d": 0.6,
"r_i": 0.45,
"r_lin": 0.45,
"r_mem": 0.45,
"sig_gain": 0.5,
"sig_ref": 0.7749999999999999
},
"t_star": 1.0
},
"DE": {
"init": {
"As": 0.5599288424043934,
"Aw": 0.5595642615483107,
"Cch": 0.44606561637805564,
"Cd": 0.34624573024760946,
"Cs": 0.5194055619662479,
"Cw": 0.563580622192313,
"Dch": 0.4522600176030964,
"Dd": 0.4023715575613355,
"Ds": 0.5340519790596704,
"Dw": 0.5412211368980316,
"E": 0.23486643582643155,
"F": 0.40376104620616343,
"G": 0.44808171081056014,
"Gs": 0.4299840929679978,
"Gw": 0.45411530817377127,
"Ko": 0.11335989592626683,
"Kp": 0.48192186244043217,
"As": 0.5598041090399595,
"Aw": 0.5594406283690844,
"Cch": 0.4461157073944171,
"Cd": 0.346246380664374,
"Cs": 0.5194182228592499,
"Cw": 0.5636122720939143,
"Dch": 0.4523514525061948,
"Dd": 0.40237155808739855,
"Ds": 0.5340519980836524,
"Dw": 0.5412220665920002,
"E": 0.23484990520131996,
"F": 0.40377394583544624,
"G": 0.45311924160733974,
"Gs": 0.4353894545615529,
"Gw": 0.4590302071996272,
"Ko": 0.11485564105840863,
"Kp": 0.48273487422759537,
"Lg": 0.535,
"N": 0.46214558382237997,
"N": 0.46458431790460164,
"Nch": 0.227299207505914,
"Nd": 0.0909055888190386,
"Ns": 0.17049683002365584,
"Nw": 0.5114007924940861,
"Pd": 0.8804855464849508,
"Pi": 0.6619591288561137,
"Plin": 0.8767697856588446,
"Pm": 0.5012800826351705,
"Pmem": 0.6002862986481262,
"Ppol": 0.502247695174575,
"Q": 0.49172382234185763,
"S": 0.48339721687145243,
"Pd": 0.8804417432960704,
"Pi": 0.661876305600853,
"Plin": 0.8768161282536577,
"Pm": 0.23554956571681512,
"Pmem": 0.6002937620843378,
"Ppol": 0.5019583275343558,
"Q": 0.49259417188036014,
"S": 0.4863702853040337,
"Sig": 0.535,
"W": 0.12902620854069197,
"X": 0.3780888608429845
"W": 0.12904547830757415,
"X": 0.37914891949767066
},
"k": 1.4142135623730951,
"params": {
@ -106,9 +167,9 @@
"c_d": 0.1627,
"c_i": 0.3161,
"c_lin": 0.0741,
"c_m": 0.0679,
"c_m": 0.0641,
"c_mem": 0.1358,
"c_pol": 0.4022,
"c_pol": 0.3996,
"care_load": 0.03,
"ell": 0.5868986283848344,
"ereg": 0.0065505098039215694,
@ -129,40 +190,40 @@
},
"EU": {
"init": {
"As": 0.547253539111859,
"Aw": 0.548224625767804,
"Cch": 0.4272032249357156,
"Cd": 0.3657481101191295,
"Cs": 0.5300003504494355,
"Cw": 0.5574458274764564,
"Dch": 0.43082056226817644,
"Dd": 0.40185192143119564,
"Ds": 0.5402872251399204,
"Dw": 0.544443167177392,
"E": 0.23494814917684614,
"F": 0.40163610217993473,
"G": 0.43280316908266564,
"Gs": 0.41316669929349137,
"Gw": 0.43934985809595245,
"Ko": 0.09150868360327788,
"Kp": 0.48813726708482263,
"As": 0.547208952633877,
"Aw": 0.5481801731864364,
"Cch": 0.4272214655833899,
"Cd": 0.36574823554100594,
"Cs": 0.5300047637492451,
"Cw": 0.5574576804433082,
"Dch": 0.43085482224420174,
"Dd": 0.4018519214548069,
"Ds": 0.5402872270108603,
"Dw": 0.5444433510945222,
"E": 0.2349426062734158,
"F": 0.40164020411821666,
"G": 0.4378733888117984,
"Gs": 0.41860910680062213,
"Gw": 0.44429599250510354,
"Ko": 0.09242910832258855,
"Kp": 0.48858757497583744,
"Lg": 0.535,
"N": 0.4765639299171411,
"N": 0.47805006052205135,
"Nch": 0.22729951420364686,
"Nd": 0.09090351693347513,
"Ns": 0.17049805681458743,
"Nw": 0.5114004857963531,
"Pd": 0.8901863182693627,
"Pi": 0.6607094653142659,
"Plin": 0.875695868800961,
"Pm": 0.5003873745051807,
"Pmem": 0.5701365716974683,
"Ppol": 0.5009311028707848,
"Q": 0.49481882396446897,
"S": 0.4869511365194517,
"Pd": 0.8901708551489159,
"Pi": 0.6606801143118258,
"Plin": 0.8757129720606179,
"Pm": 0.23510926188591255,
"Pmem": 0.5701394197070061,
"Ppol": 0.5008252732712836,
"Q": 0.4953556298212024,
"S": 0.488790198860286,
"Sig": 0.535,
"W": 0.1531825186893347,
"X": 0.386286326958335
"W": 0.15318948181824038,
"X": 0.3869341435739321
},
"k": 1.5422108254079407,
"params": {
@ -172,9 +233,9 @@
"c_d": 0.1507,
"c_i": 0.3161,
"c_lin": 0.0741,
"c_m": 0.073,
"c_m": 0.0718,
"c_mem": 0.1387,
"c_pol": 0.4247,
"c_pol": 0.4215,
"care_load": 0.03,
"ell": 0.6400174925442954,
"ereg": 0.006262980392156864,

View file

@ -10,19 +10,21 @@ range. Adoption scaled from anchor B2 by k; t* aligned by observed growth.
|---|---|---|---|---|---|---|---|---|
| US | J3 | 2.00 | 1.2 | 0.125 | 0.478 | 0.0062 | 0.387 | 0.26 |
| EU | J1 | 1.54 | 0.9 | 0.092 | 0.523 | 0.0063 | 0.719 | 0.60 |
| DE | J1 | 1.41 | 1.5 | 0.113 | 0.616 | 0.0066 | 0.702 | 0.60 |
| DE | J1 | 1.41 | 1.5 | 0.115 | 0.616 | 0.0066 | 0.702 | 0.60 |
| AR | J2 | 2.00 | 1.1 | 0.110 | 0.387 | 0.0058 | 0.580 | 0.60 |
| CN | J4 | 2.00 | 1.0 | 0.124 | 0.600 | 0.0065 | 0.580 | 0.60 |
**Fit summary:** 40 of 40 targets inside their range; measured targets 36 of 36.
**Fit summary:** 50 of 50 targets inside their range; measured targets 42 of 42.
## Fixed anchors aligned by growth: K_Ω level miss
| Jurisdiction | B1 | B2 | B3 | B4 |
|---|---|---|---|---|
| US | cannot reach growth | K_Ω 0.055, z -0.9 | K_Ω 0.125, z +0.0 | K_Ω 0.220, z +1.3 |
| EU | cannot reach growth | K_Ω 0.055, z -0.7 | K_Ω 0.125, z +0.6 | K_Ω 0.203, z +2.0 |
| DE | cannot reach growth | K_Ω 0.075, z -0.6 | K_Ω 0.173, z +0.9 | K_Ω 0.353, z +3.7 |
| EU | cannot reach growth | K_Ω 0.056, z -0.7 | K_Ω 0.127, z +0.6 | K_Ω 0.216, z +2.2 |
| DE | cannot reach growth | K_Ω 0.078, z -0.6 | K_Ω 0.175, z +0.9 | K_Ω 0.362, z +3.8 |
| AR | cannot reach growth | cannot reach growth | K_Ω 0.110, z +0.0 | K_Ω 0.162, z +0.9 |
| CN | cannot reach growth | K_Ω 0.057, z -1.0 | K_Ω 0.124, z -0.1 | K_Ω 0.213, z +1.2 |
## Residuals at the calibrated start
@ -47,31 +49,33 @@ range. Adoption scaled from anchor B2 by k; t* aligned by observed growth.
| Target | Range | Model at t* | z | basis |
|---|---|---|---|---|
| Ko | 0.04–0.15 | 0.092 | -0.06 | prior |
| Ko_ratio_1y | 1.35–1.6 | 1.452 | -0.18 | measured |
| Ko | 0.04–0.15 | 0.092 | -0.05 | prior |
| Ko_ratio_1y | 1.35–1.6 | 1.458 | -0.14 | measured |
| Pd | 0.84–0.94 | 0.890 | +0.00 | measured |
| Pi | 0.56–0.76 | 0.661 | +0.01 | measured |
| Pmem | 0.47–0.67 | 0.570 | +0.00 | measured |
| Plin | 0.8–0.95 | 0.876 | +0.01 | measured |
| B | 0.6–0.69 | 0.636 | -0.21 | measured |
| B | 0.6–0.69 | 0.635 | -0.21 | measured |
| A | 0.45–0.65 | 0.548 | -0.02 | measured |
| E | 0.15–0.32 | 0.235 | -0.00 | measured |
| Sig | 0.45–0.62 | 0.535 | +0.00 | measured |
| Pm | 0.17–0.3 | 0.235 | +0.00 | measured |
### DE
| Target | Range | Model at t* | z | basis |
|---|---|---|---|---|
| Ko | 0.05–0.18 | 0.113 | -0.03 | prior |
| Ko_ratio_1y | 1.2–1.45 | 1.318 | -0.06 | measured |
| Ko | 0.05–0.18 | 0.115 | -0.00 | prior |
| Ko_ratio_1y | 1.2–1.45 | 1.322 | -0.03 | measured |
| Pd | 0.83–0.93 | 0.880 | +0.01 | measured |
| Pi | 0.56–0.76 | 0.662 | +0.02 | measured |
| Pmem | 0.5–0.7 | 0.600 | +0.00 | measured |
| Plin | 0.8–0.95 | 0.877 | +0.02 | measured |
| B | 0.66–0.76 | 0.693 | -0.34 | measured |
| B | 0.66–0.76 | 0.693 | -0.35 | measured |
| A | 0.48–0.65 | 0.560 | -0.06 | measured |
| E | 0.15–0.32 | 0.235 | -0.00 | measured |
| Sig | 0.45–0.62 | 0.535 | +0.00 | measured |
| Pm | 0.17–0.3 | 0.236 | +0.01 | measured |
### AR
@ -85,3 +89,16 @@ range. Adoption scaled from anchor B2 by k; t* aligned by observed growth.
| Pmem | 0.68–0.88 | 0.780 | +0.00 | measured |
| Ko_ratio_1y | 1.25–1.65 | 1.443 | -0.04 | prior |
| E | 0.15–0.32 | 0.235 | -0.00 | measured |
### CN
| Target | Range | Model at t* | z | basis |
|---|---|---|---|---|
| Ko | 0.06–0.2 | 0.124 | -0.09 | prior |
| Ko_ratio_1y | 1.3–1.8 | 1.546 | -0.02 | prior |
| Pd | 0.4–0.65 | 0.525 | +0.00 | measured |
| Pmem | 0.46–0.66 | 0.561 | +0.01 | measured |
| Pi | 0.55–0.8 | 0.676 | +0.01 | prior |
| Plin | 0.5–0.85 | 0.678 | +0.02 | prior |
| Sig | 0.7–0.85 | 0.775 | +0.00 | measured |
| E | 0.15–0.32 | 0.235 | -0.00 | measured |

View file

@ -15,86 +15,86 @@ at most a ≈ 0.006. Counterfactual strong rule: a 0.15.
| Case | Jurisdiction | P t0 → t25 → t100 | Pd / Pmem / Plin t100 | K_Ω t25 | VFAC t100 | G | A | floor |
|---|---|---|---|---|---|---|---|---|
| closed model, current levers | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| closed model, current levers | EU | 0.72 → 0.80 → 0.82 | 0.91 / 0.60 / 0.90 | 0.30 | 0.289 | 0.41 | 0.41 | broken |
| closed model, current levers | EU | 0.70 → 0.77 → 0.82 | 0.91 / 0.60 / 0.90 | 0.31 | 0.288 | 0.41 | 0.41 | broken |
| closed model, current levers | AR | 0.75 → 0.85 → 0.86 | 0.95 / 0.79 / 0.90 | 0.31 | 0.229 | 0.34 | 0.27 | broken |
| coupled, current levers | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, current levers | EU | 0.72 → 0.80 → 0.82 | 0.88 / 0.63 / 0.91 | 0.30 | 0.281 | 0.41 | 0.42 | broken |
| coupled, current levers | EU | 0.70 → 0.77 → 0.82 | 0.88 / 0.63 / 0.91 | 0.31 | 0.281 | 0.41 | 0.42 | broken |
| coupled, current levers | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, DMA as observed (a fitted) | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, DMA as observed (a fitted) | EU | 0.72 → 0.80 → 0.82 | 0.88 / 0.63 / 0.91 | 0.30 | 0.281 | 0.41 | 0.42 | broken |
| coupled, DMA as observed (a fitted) | EU | 0.70 → 0.77 → 0.82 | 0.88 / 0.63 / 0.91 | 0.31 | 0.281 | 0.41 | 0.42 | broken |
| coupled, DMA as observed (a fitted) | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, strong access rule a 0.15 (σ 0) | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, strong access rule a 0.15 (σ 0) | EU | 0.72 → 0.66 → 0.68 | 0.14 / 0.07 / 0.91 | 0.34 | 0.333 | 0.44 | 0.39 | ok |
| coupled, strong access rule a 0.15 (σ 0) | EU | 0.70 → 0.61 → 0.68 | 0.14 / 0.07 / 0.91 | 0.35 | 0.332 | 0.44 | 0.39 | ok |
| coupled, strong access rule a 0.15 (σ 0) | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, strong access rule, spillover σ 0.5 | US | 0.68 → 0.70 → 0.75 | 0.68 / 0.12 / 0.90 | 0.38 | 0.279 | 0.37 | 0.31 | broken |
| coupled, strong access rule, spillover σ 0.5 | EU | 0.72 → 0.66 → 0.68 | 0.14 / 0.07 / 0.91 | 0.34 | 0.332 | 0.44 | 0.39 | ok |
| coupled, strong access rule, spillover σ 0.5 | EU | 0.70 → 0.61 → 0.69 | 0.14 / 0.07 / 0.91 | 0.35 | 0.331 | 0.44 | 0.39 | ok |
| coupled, strong access rule, spillover σ 0.5 | AR | 0.75 → 0.73 → 0.76 | 0.68 / 0.12 / 0.90 | 0.33 | 0.265 | 0.36 | 0.26 | broken |
| coupled, US moves to J1 levers | US | 0.68 → 0.58 → 0.60 | 0.86 / 0.02 / 0.28 | 0.49 | 0.379 | 0.46 | 0.47 | ok |
| coupled, US moves to J1 levers | EU | 0.72 → 0.62 → 0.63 | 0.86 / 0.02 / 0.35 | 0.37 | 0.359 | 0.45 | 0.38 | ok |
| coupled, US moves to J1 levers | EU | 0.70 → 0.57 → 0.64 | 0.86 / 0.02 / 0.35 | 0.38 | 0.358 | 0.45 | 0.38 | ok |
| coupled, US moves to J1 levers | AR | 0.75 → 0.63 → 0.66 | 0.86 / 0.02 / 0.28 | 0.37 | 0.303 | 0.37 | 0.25 | ok |
| coupled, US J1 + DMA as observed | US | 0.68 → 0.58 → 0.60 | 0.86 / 0.02 / 0.28 | 0.49 | 0.379 | 0.46 | 0.47 | ok |
| coupled, US J1 + DMA as observed | EU | 0.72 → 0.62 → 0.63 | 0.86 / 0.02 / 0.35 | 0.37 | 0.359 | 0.45 | 0.38 | ok |
| coupled, US J1 + DMA as observed | EU | 0.70 → 0.57 → 0.64 | 0.86 / 0.02 / 0.35 | 0.38 | 0.358 | 0.45 | 0.38 | ok |
| coupled, US J1 + DMA as observed | AR | 0.75 → 0.63 → 0.66 | 0.86 / 0.02 / 0.28 | 0.37 | 0.303 | 0.37 | 0.25 | ok |
| coupled, US J1 + strong access rule | US | 0.68 → 0.58 → 0.60 | 0.86 / 0.02 / 0.28 | 0.49 | 0.379 | 0.46 | 0.47 | ok |
| coupled, US J1 + strong access rule | EU | 0.72 → 0.47 → 0.42 | 0.15 / 0.01 / 0.35 | 0.41 | 0.426 | 0.51 | 0.35 | ok |
| coupled, US J1 + strong access rule | EU | 0.70 → 0.41 → 0.42 | 0.15 / 0.01 / 0.35 | 0.43 | 0.427 | 0.51 | 0.35 | ok |
| coupled, US J1 + strong access rule | AR | 0.75 → 0.63 → 0.66 | 0.86 / 0.02 / 0.28 | 0.37 | 0.303 | 0.37 | 0.25 | ok |
| coupled, EU lineage access rule a 0.15 on Plin | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU lineage access rule a 0.15 on Plin | EU | 0.72 → 0.71 → 0.73 | 0.88 / 0.63 / 0.19 | 0.33 | 0.317 | 0.43 | 0.40 | broken |
| coupled, EU lineage access rule a 0.15 on Plin | EU | 0.70 → 0.67 → 0.73 | 0.88 / 0.63 / 0.19 | 0.34 | 0.316 | 0.43 | 0.40 | broken |
| coupled, EU lineage access rule a 0.15 on Plin | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU lineage portability 0.5 | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU lineage portability 0.5 | EU | 0.72 → 0.80 → 0.82 | 0.88 / 0.63 / 0.92 | 0.30 | 0.284 | 0.41 | 0.42 | broken |
| coupled, EU lineage portability 0.5 | EU | 0.70 → 0.77 → 0.83 | 0.88 / 0.63 / 0.92 | 0.31 | 0.283 | 0.41 | 0.42 | broken |
| coupled, EU lineage portability 0.5 | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU lineage access 0.15 + portability 0.5 | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU lineage access 0.15 + portability 0.5 | EU | 0.72 → 0.74 → 0.76 | 0.88 / 0.63 / 0.56 | 0.32 | 0.311 | 0.42 | 0.41 | broken |
| coupled, EU lineage access 0.15 + portability 0.5 | EU | 0.70 → 0.70 → 0.76 | 0.88 / 0.63 / 0.56 | 0.33 | 0.310 | 0.42 | 0.40 | broken |
| coupled, EU lineage access 0.15 + portability 0.5 | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | EU | 0.72 → 0.74 → 0.77 | 0.88 / 0.63 / 0.91 | 0.31 | 0.303 | 0.42 | 0.41 | broken |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | EU | 0.70 → 0.71 → 0.77 | 0.88 / 0.63 / 0.91 | 0.32 | 0.302 | 0.42 | 0.41 | broken |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | EU | 0.72 → 0.43 → 0.35 | 0.14 / 0.07 / 0.57 | 0.41 | 0.438 | 0.53 | 0.34 | ok |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | EU | 0.70 → 0.36 → 0.35 | 0.14 / 0.07 / 0.57 | 0.43 | 0.438 | 0.53 | 0.34 | ok |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.237 | 0.34 | 0.26 | broken |
| coupled, endogenous foreign shares, current levers | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, endogenous foreign shares, current levers | EU | 0.72 → 0.80 → 0.82 | 0.88 / 0.63 / 0.90 | 0.30 | 0.282 | 0.41 | 0.42 | broken |
| coupled, endogenous foreign shares, current levers | EU | 0.70 → 0.77 → 0.82 | 0.88 / 0.63 / 0.90 | 0.31 | 0.281 | 0.41 | 0.42 | broken |
| coupled, endogenous foreign shares, current levers | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU commons push (IX × 3), fixed shares | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU commons push (IX × 3), fixed shares | EU | 0.72 → 0.79 → 0.81 | 0.88 / 0.63 / 0.91 | 0.33 | 0.328 | 0.42 | 0.40 | broken |
| coupled, EU commons push (IX × 3), fixed shares | EU | 0.70 → 0.76 → 0.81 | 0.88 / 0.63 / 0.91 | 0.34 | 0.327 | 0.42 | 0.40 | broken |
| coupled, EU commons push (IX × 3), fixed shares | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, EU commons push (IX × 3), endogenous shares | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, EU commons push (IX × 3), endogenous shares | EU | 0.72 → 0.79 → 0.81 | 0.88 / 0.63 / 0.90 | 0.33 | 0.327 | 0.42 | 0.40 | broken |
| coupled, EU commons push (IX × 3), endogenous shares | EU | 0.70 → 0.76 → 0.81 | 0.88 / 0.63 / 0.90 | 0.34 | 0.326 | 0.42 | 0.40 | broken |
| coupled, EU commons push (IX × 3), endogenous shares | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, split hook (domestic segment measured), current levers | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, split hook (domestic segment measured), current levers | EU | 0.72 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.30 | 0.283 | 0.41 | 0.42 | broken |
| coupled, split hook (domestic segment measured), current levers | EU | 0.70 → 0.76 → 0.82 | 0.88 / 0.63 / 0.90 | 0.31 | 0.282 | 0.41 | 0.42 | broken |
| coupled, split hook (domestic segment measured), current levers | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, split hook, endogenous shares | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, split hook, endogenous shares | EU | 0.72 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.30 | 0.282 | 0.41 | 0.42 | broken |
| coupled, split hook, endogenous shares | EU | 0.70 → 0.76 → 0.82 | 0.88 / 0.63 / 0.90 | 0.31 | 0.281 | 0.41 | 0.42 | broken |
| coupled, split hook, endogenous shares | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, split hook, commons push, endogenous shares | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, split hook, commons push, endogenous shares | EU | 0.72 → 0.78 → 0.79 | 0.88 / 0.63 / 0.90 | 0.33 | 0.332 | 0.42 | 0.40 | broken |
| coupled, split hook, commons push, endogenous shares | EU | 0.70 → 0.75 → 0.79 | 0.88 / 0.63 / 0.90 | 0.34 | 0.331 | 0.42 | 0.40 | broken |
| coupled, split hook, commons push, endogenous shares | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
| coupled, split hook, lineage portability 0.5 | US | 0.68 → 0.79 → 0.82 | 0.88 / 0.63 / 0.90 | 0.36 | 0.253 | 0.36 | 0.32 | broken |
| coupled, split hook, lineage portability 0.5 | EU | 0.68 → 0.77 → 0.80 | 0.88 / 0.63 / 0.86 | 0.31 | 0.293 | 0.41 | 0.41 | broken |
| coupled, split hook, lineage portability 0.5 | EU | 0.66 → 0.73 → 0.80 | 0.88 / 0.63 / 0.86 | 0.32 | 0.292 | 0.41 | 0.41 | broken |
| coupled, split hook, lineage portability 0.5 | AR | 0.75 → 0.81 → 0.83 | 0.88 / 0.63 / 0.90 | 0.32 | 0.241 | 0.35 | 0.27 | broken |
## EU domination at t 100: effect of each lever (coupled model)
| Lever | EU P t100 | Δ vs. coupled current |
|---|---|---|
| coupled, current levers | 0.821 | +0.000 |
| coupled, DMA as observed (a fitted) | 0.821 | -0.000 |
| coupled, strong access rule a 0.15 (σ 0) | 0.683 | -0.138 |
| coupled, strong access rule, spillover σ 0.5 | 0.684 | -0.137 |
| coupled, US moves to J1 levers | 0.635 | -0.186 |
| coupled, US J1 + DMA as observed | 0.635 | -0.186 |
| coupled, US J1 + strong access rule | 0.423 | -0.398 |
| coupled, EU lineage access rule a 0.15 on Plin | 0.727 | -0.094 |
| coupled, EU lineage portability 0.5 | 0.824 | +0.004 |
| coupled, EU lineage access 0.15 + portability 0.5 | 0.757 | -0.064 |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | 0.766 | -0.055 |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | 0.350 | -0.471 |
| coupled, endogenous foreign shares, current levers | 0.818 | -0.003 |
| coupled, EU commons push (IX × 3), fixed shares | 0.807 | -0.014 |
| coupled, EU commons push (IX × 3), endogenous shares | 0.807 | -0.014 |
| coupled, split hook (domestic segment measured), current levers | 0.817 | -0.004 |
| coupled, split hook, endogenous shares | 0.818 | -0.003 |
| coupled, split hook, commons push, endogenous shares | 0.793 | -0.027 |
| coupled, split hook, lineage portability 0.5 | 0.802 | -0.019 |
| coupled, current levers | 0.822 | +0.000 |
| coupled, DMA as observed (a fitted) | 0.822 | -0.000 |
| coupled, strong access rule a 0.15 (σ 0) | 0.685 | -0.137 |
| coupled, strong access rule, spillover σ 0.5 | 0.685 | -0.137 |
| coupled, US moves to J1 levers | 0.635 | -0.187 |
| coupled, US J1 + DMA as observed | 0.635 | -0.187 |
| coupled, US J1 + strong access rule | 0.417 | -0.405 |
| coupled, EU lineage access rule a 0.15 on Plin | 0.729 | -0.093 |
| coupled, EU lineage portability 0.5 | 0.825 | +0.003 |
| coupled, EU lineage access 0.15 + portability 0.5 | 0.758 | -0.064 |
| coupled, EU cloud switching (Data Act) a 0.15 on Pi | 0.767 | -0.055 |
| coupled, EU all host rules (Pd, Pmem, Plin, Pi 0.15; portability 0.5) | 0.347 | -0.475 |
| coupled, endogenous foreign shares, current levers | 0.819 | -0.002 |
| coupled, EU commons push (IX × 3), fixed shares | 0.808 | -0.013 |
| coupled, EU commons push (IX × 3), endogenous shares | 0.808 | -0.014 |
| coupled, split hook (domestic segment measured), current levers | 0.818 | -0.004 |
| coupled, split hook, endogenous shares | 0.819 | -0.003 |
| coupled, split hook, commons push, endogenous shares | 0.795 | -0.027 |
| coupled, split hook, lineage portability 0.5 | 0.803 | -0.019 |

View file

@ -7,19 +7,19 @@ own start. H2 holds if AR beats the EU on relative output (years 0–100) and on
| Context | Loop | Export share | AR Ȳ 0–25 / 0–100 | EU Ȳ 0–25 / 0–100 | AR − EU VFAC t100 | AR P t100 | H2 |
|---|---|---|---|---|---|---|---|
| X1 US-led concentrated frontier | off | closed (no exports) | 0.99 / 0.81 | 1.01 / 0.85 | -0.041 | 0.83 | no |
| X1 US-led concentrated frontier | off | today, upper bound (1.5 %) | 1.00 / 0.82 | 1.01 / 0.85 | -0.042 | 0.83 | no |
| X1 US-led concentrated frontier | off | sector goal (4.5 %) | 1.03 / 0.85 | 1.01 / 0.85 | -0.045 | 0.83 | no |
| X1 US-led concentrated frontier | off | export hub (10 %) | 1.07 / 0.90 | 1.02 / 0.85 | -0.052 | 0.83 | no |
| X1 US-led concentrated frontier | on | closed (no exports) | 0.90 / 0.68 | 0.95 / 0.76 | -0.036 | 0.78 | no |
| X1 US-led concentrated frontier | on | today, upper bound (1.5 %) | 0.91 / 0.69 | 0.95 / 0.76 | -0.037 | 0.78 | no |
| X1 US-led concentrated frontier | on | sector goal (4.5 %) | 0.92 / 0.70 | 0.95 / 0.76 | -0.038 | 0.78 | no |
| X1 US-led concentrated frontier | on | export hub (10 %) | 0.93 / 0.71 | 0.95 / 0.76 | -0.040 | 0.78 | no |
| X2 open-lineage world | off | closed (no exports) | 1.06 / 0.93 | 1.09 / 1.01 | -0.055 | 0.66 | no |
| X2 open-lineage world | off | today, upper bound (1.5 %) | 1.07 / 0.94 | 1.09 / 1.01 | -0.057 | 0.66 | no |
| X2 open-lineage world | off | sector goal (4.5 %) | 1.10 / 0.96 | 1.09 / 1.01 | -0.061 | 0.66 | no |
| X2 open-lineage world | off | export hub (10 %) | 1.14 / 1.00 | 1.09 / 1.01 | -0.071 | 0.66 | no |
| X2 open-lineage world | on | closed (no exports) | 0.99 / 0.84 | 1.05 / 0.96 | -0.048 | 0.62 | no |
| X2 open-lineage world | on | today, upper bound (1.5 %) | 1.00 / 0.85 | 1.05 / 0.96 | -0.049 | 0.62 | no |
| X2 open-lineage world | on | sector goal (4.5 %) | 1.01 / 0.86 | 1.05 / 0.96 | -0.051 | 0.62 | no |
| X2 open-lineage world | on | export hub (10 %) | 1.03 / 0.87 | 1.05 / 0.96 | -0.055 | 0.62 | no |
| X1 US-led concentrated frontier | off | closed (no exports) | 0.99 / 0.81 | 1.02 / 0.86 | -0.040 | 0.83 | no |
| X1 US-led concentrated frontier | off | today, upper bound (1.5 %) | 1.00 / 0.82 | 1.02 / 0.86 | -0.041 | 0.83 | no |
| X1 US-led concentrated frontier | off | sector goal (4.5 %) | 1.03 / 0.85 | 1.02 / 0.86 | -0.044 | 0.83 | no |
| X1 US-led concentrated frontier | off | export hub (10 %) | 1.07 / 0.90 | 1.03 / 0.86 | -0.051 | 0.83 | no |
| X1 US-led concentrated frontier | on | closed (no exports) | 0.90 / 0.68 | 0.96 / 0.76 | -0.036 | 0.78 | no |
| X1 US-led concentrated frontier | on | today, upper bound (1.5 %) | 0.91 / 0.68 | 0.96 / 0.76 | -0.036 | 0.78 | no |
| X1 US-led concentrated frontier | on | sector goal (4.5 %) | 0.92 / 0.69 | 0.96 / 0.76 | -0.037 | 0.78 | no |
| X1 US-led concentrated frontier | on | export hub (10 %) | 0.93 / 0.70 | 0.96 / 0.76 | -0.039 | 0.78 | no |
| X2 open-lineage world | off | closed (no exports) | 1.06 / 0.93 | 1.10 / 1.03 | -0.055 | 0.66 | no |
| X2 open-lineage world | off | today, upper bound (1.5 %) | 1.07 / 0.94 | 1.10 / 1.03 | -0.057 | 0.66 | no |
| X2 open-lineage world | off | sector goal (4.5 %) | 1.10 / 0.96 | 1.10 / 1.03 | -0.061 | 0.66 | no |
| X2 open-lineage world | off | export hub (10 %) | 1.14 / 1.00 | 1.10 / 1.03 | -0.071 | 0.66 | no |
| X2 open-lineage world | on | closed (no exports) | 0.99 / 0.84 | 1.07 / 0.98 | -0.049 | 0.62 | no |
| X2 open-lineage world | on | today, upper bound (1.5 %) | 1.00 / 0.85 | 1.07 / 0.98 | -0.050 | 0.62 | no |
| X2 open-lineage world | on | sector goal (4.5 %) | 1.01 / 0.86 | 1.07 / 0.98 | -0.052 | 0.62 | no |
| X2 open-lineage world | on | export hub (10 %) | 1.03 / 0.87 | 1.07 / 0.98 | -0.055 | 0.62 | no |

View file

@ -29,16 +29,16 @@ Series: Eurostat isoc_eb_ai, EU27_2020, reference years 2023-2025 (2021: 7.65, b
| Candidate | log-likelihood | weight | t0 | K_Ω at window end |
|---|---|---|---|---|
| B3/loop on | -2.1 | 0.501 | 0.45 | 0.193 |
| B3/loop off | -2.2 | 0.458 | 0.50 | 0.198 |
| B2/loop off | -5.6 | 0.016 | 0.00 | 0.098 |
| B2/loop on | -5.7 | 0.015 | 0.00 | 0.098 |
| B4/loop on | -6.4 | 0.007 | 0.90 | 0.290 |
| B4/loop off | -7.5 | 0.002 | 1.00 | 0.308 |
| B1/loop off | -58.0 | 0.000 | 0.00 | 0.058 |
| B1/loop on | -58.0 | 0.000 | 0.00 | 0.058 |
| B3/loop on | -2.3 | 0.484 | 0.45 | 0.196 |
| B3/loop off | -2.3 | 0.452 | 0.50 | 0.201 |
| B2/loop off | -5.0 | 0.031 | 0.00 | 0.099 |
| B2/loop on | -5.1 | 0.028 | 0.00 | 0.099 |
| B4/loop on | -7.1 | 0.004 | 0.95 | 0.302 |
| B4/loop off | -8.1 | 0.001 | 1.00 | 0.316 |
| B1/loop off | -56.7 | 0.000 | 0.00 | 0.058 |
| B1/loop on | -56.7 | 0.000 | 0.00 | 0.058 |
**Best:** B3/loop on (weight 0.50). Anchor weights: B1 0.00, B2 0.03, B3 0.96, B4 0.01. Loop weights: off 0.48, on 0.52.
**Best:** B3/loop on (weight 0.48). Anchor weights: B1 0.00, B2 0.06, B3 0.94, B4 0.01. Loop weights: off 0.48, on 0.52.
## DE
@ -46,16 +46,16 @@ Series: Eurostat isoc_eb_ai, DE, reference years 2023-2025 (2021: 10.56, exclude
| Candidate | log-likelihood | weight | t0 | K_Ω at window end |
|---|---|---|---|---|
| B3/loop on | -1.2 | 0.295 | 0.65 | 0.211 |
| B3/loop off | -1.3 | 0.263 | 0.65 | 0.214 |
| B2/loop off | -1.4 | 0.225 | 0.00 | 0.101 |
| B2/loop on | -1.5 | 0.216 | 0.00 | 0.101 |
| B4/loop on | -6.7 | 0.001 | 1.25 | 0.344 |
| B4/loop off | -8.3 | 0.000 | 1.35 | 0.370 |
| B1/loop off | -43.4 | 0.000 | 0.00 | 0.059 |
| B1/loop on | -43.5 | 0.000 | 0.00 | 0.059 |
| B2/loop off | -1.1 | 0.277 | 0.00 | 0.102 |
| B2/loop on | -1.2 | 0.267 | 0.00 | 0.102 |
| B3/loop on | -1.2 | 0.249 | 0.65 | 0.215 |
| B3/loop off | -1.4 | 0.205 | 0.70 | 0.221 |
| B4/loop on | -7.1 | 0.001 | 1.25 | 0.352 |
| B4/loop off | -9.3 | 0.000 | 1.40 | 0.385 |
| B1/loop off | -42.3 | 0.000 | 0.00 | 0.060 |
| B1/loop on | -42.3 | 0.000 | 0.00 | 0.060 |
**Best:** B3/loop on (weight 0.29). Anchor weights: B1 0.00, B2 0.44, B3 0.56, B4 0.00. Loop weights: off 0.49, on 0.51.
**Best:** B2/loop off (weight 0.28). Anchor weights: B1 0.00, B2 0.54, B3 0.45, B4 0.00. Loop weights: off 0.48, on 0.52.
## US: IMM regime filter on the observed series (WP-0017-T05)
@ -80,3 +80,23 @@ Robustness of the last evaluation (anchor weights):
| without investment | 0.00 | 0.00 | 0.31 | 0.69 |
**Last evaluation (US):** anchor B4 with weight 1.00; previous quarter B3 1.00. A flip needs the new anchor at ≥ 0.75 in two consecutive quarters; a change seen in one quarter is a **flip candidate** to check at the next review. Confirmed flips: none.
## US: IMM filter with observation noise calibrated from residuals (WP-0015-T07)
Residual standard deviations around the best static regime (B3/loop off), model error included:
| Indicator | assumed noise | residual sd | used |
|---|---|---|---|
| adopt | 0.03 | 0.0258 | 0.0300 |
| invest | 0.05 | 0.0784 | 0.0784 |
| pd | 0.01 | 0.0086 | 0.0100 |
| Calendar t | B1 | B2 | B3 | B4 |
|---|---|---|---|---|
| 0.32 | 0.00 | 0.38 | 0.40 | 0.21 |
| 0.57 | 0.00 | 0.00 | 1.00 | 0.00 |
| 0.82 | 0.00 | 0.00 | 1.00 | 0.00 |
| 1.07 | 0.00 | 0.00 | 0.00 | 1.00 |
Last quarter: B4 1.00. Confirmed flips: none.

View file

@ -10,65 +10,65 @@ output levels are normalized model units and not comparable across jurisdictions
| Loop | Jurisdiction | K_Ω t10 | Ȳ 0–25 / 0–100 | VFAC t100 | P t100 | G | A | Σ end |
|---|---|---|---|---|---|---|---|---|
| off | US | 0.39 | 1.04 / 0.87 | 0.253 | 0.82 | 0.36 | 0.32 | 0.28 |
| off | EU | 0.31 | 1.01 / 0.85 | 0.281 | 0.82 | 0.41 | 0.41 | 0.54 |
| off | EU | 0.32 | 1.02 / 0.86 | 0.280 | 0.82 | 0.41 | 0.41 | 0.54 |
| off | AR | 0.34 | 0.99 / 0.81 | 0.241 | 0.83 | 0.35 | 0.27 | 0.43 |
| off | J4 | 0.40 | 1.07 / 0.92 | 0.285 | 0.77 | 0.38 | 0.41 | 0.28 |
| off | J4 | 0.43 | 1.10 / 0.93 | 0.280 | 0.77 | 0.39 | 0.33 | 0.77 |
| on | US | 0.27 | 0.90 / 0.69 | 0.293 | 0.77 | 0.39 | 0.39 | 0.16 |
| on | EU | 0.27 | 0.95 / 0.76 | 0.310 | 0.77 | 0.42 | 0.46 | 0.44 |
| on | AR | 0.27 | 0.90 / 0.68 | 0.274 | 0.78 | 0.37 | 0.31 | 0.31 |
| on | J4 | 0.38 | 1.03 / 0.85 | 0.296 | 0.76 | 0.39 | 0.43 | 0.24 |
| on | EU | 0.28 | 0.96 / 0.76 | 0.311 | 0.77 | 0.42 | 0.46 | 0.43 |
| on | AR | 0.27 | 0.90 / 0.68 | 0.275 | 0.78 | 0.37 | 0.32 | 0.31 |
| on | J4 | 0.39 | 1.05 / 0.85 | 0.305 | 0.73 | 0.41 | 0.36 | 0.70 |
## X2 open-lineage world
| Loop | Jurisdiction | K_Ω t10 | Ȳ 0–25 / 0–100 | VFAC t100 | P t100 | G | A | Σ end |
|---|---|---|---|---|---|---|---|---|
| off | US | 0.45 | 1.16 / 1.10 | 0.379 | 0.60 | 0.46 | 0.47 | 0.28 |
| off | EU | 0.34 | 1.09 / 1.01 | 0.359 | 0.63 | 0.45 | 0.38 | 0.54 |
| off | EU | 0.35 | 1.10 / 1.03 | 0.358 | 0.64 | 0.45 | 0.38 | 0.54 |
| off | AR | 0.37 | 1.06 / 0.93 | 0.303 | 0.66 | 0.37 | 0.25 | 0.43 |
| off | J4 | 0.40 | 1.07 / 0.92 | 0.285 | 0.77 | 0.38 | 0.41 | 0.28 |
| off | J4 | 0.43 | 1.10 / 0.93 | 0.280 | 0.77 | 0.39 | 0.33 | 0.77 |
| on | US | 0.44 | 1.14 / 1.08 | 0.394 | 0.57 | 0.47 | 0.48 | 0.26 |
| on | EU | 0.32 | 1.05 / 0.96 | 0.378 | 0.60 | 0.46 | 0.40 | 0.46 |
| on | EU | 0.33 | 1.07 / 0.98 | 0.378 | 0.60 | 0.46 | 0.41 | 0.46 |
| on | AR | 0.32 | 0.99 / 0.84 | 0.330 | 0.62 | 0.40 | 0.28 | 0.31 |
| on | J4 | 0.38 | 1.03 / 0.85 | 0.296 | 0.76 | 0.39 | 0.43 | 0.24 |
| on | J4 | 0.39 | 1.05 / 0.85 | 0.305 | 0.73 | 0.41 | 0.36 | 0.70 |
## X3 accelerating frontier
| Loop | Jurisdiction | K_Ω t10 | Ȳ 0–25 / 0–100 | VFAC t100 | P t100 | G | A | Σ end |
|---|---|---|---|---|---|---|---|---|
| off | US | 0.73 | 1.32 / 1.20 | 0.218 | 0.84 | 0.33 | 0.23 | 0.28 |
| off | EU | 0.39 | 1.08 / 0.95 | 0.267 | 0.84 | 0.40 | 0.38 | 0.54 |
| off | AR | 0.41 | 1.06 / 0.89 | 0.226 | 0.85 | 0.34 | 0.24 | 0.43 |
| off | J4 | 0.74 | 1.33 / 1.23 | 0.246 | 0.80 | 0.35 | 0.31 | 0.28 |
| off | EU | 0.40 | 1.09 / 0.95 | 0.267 | 0.84 | 0.40 | 0.38 | 0.54 |
| off | AR | 0.42 | 1.06 / 0.89 | 0.226 | 0.85 | 0.34 | 0.24 | 0.43 |
| off | J4 | 0.75 | 1.34 / 1.23 | 0.238 | 0.80 | 0.34 | 0.23 | 0.77 |
| on | US | 0.44 | 0.99 / 0.74 | 0.288 | 0.78 | 0.39 | 0.37 | 0.13 |
| on | EU | 0.34 | 1.01 / 0.82 | 0.305 | 0.78 | 0.42 | 0.43 | 0.41 |
| on | AR | 0.33 | 0.95 / 0.74 | 0.268 | 0.78 | 0.37 | 0.30 | 0.27 |
| on | J4 | 0.67 | 1.24 / 1.05 | 0.274 | 0.78 | 0.37 | 0.37 | 0.19 |
| on | EU | 0.35 | 1.01 / 0.81 | 0.306 | 0.78 | 0.42 | 0.44 | 0.41 |
| on | AR | 0.33 | 0.95 / 0.72 | 0.269 | 0.78 | 0.37 | 0.30 | 0.28 |
| on | J4 | 0.66 | 1.22 / 1.01 | 0.282 | 0.75 | 0.39 | 0.30 | 0.66 |
## X4 fragmented blocs
| Loop | Jurisdiction | K_Ω t10 | Ȳ 0–25 / 0–100 | VFAC t100 | P t100 | G | A | Σ end |
|---|---|---|---|---|---|---|---|---|
| off | US | 0.39 | 1.04 / 0.87 | 0.253 | 0.82 | 0.36 | 0.32 | 0.28 |
| off | EU | 0.30 | 1.00 / 0.84 | 0.282 | 0.83 | 0.41 | 0.42 | 0.54 |
| off | EU | 0.31 | 1.01 / 0.85 | 0.282 | 0.83 | 0.41 | 0.42 | 0.54 |
| off | AR | 0.34 | 0.99 / 0.80 | 0.235 | 0.85 | 0.34 | 0.27 | 0.43 |
| off | J4 | 0.40 | 1.07 / 0.92 | 0.285 | 0.77 | 0.38 | 0.41 | 0.28 |
| off | J4 | 0.43 | 1.10 / 0.93 | 0.280 | 0.77 | 0.39 | 0.33 | 0.77 |
| on | US | 0.27 | 0.90 / 0.69 | 0.293 | 0.77 | 0.39 | 0.39 | 0.16 |
| on | EU | 0.26 | 0.93 / 0.71 | 0.307 | 0.79 | 0.42 | 0.47 | 0.44 |
| on | EU | 0.26 | 0.94 / 0.72 | 0.307 | 0.79 | 0.42 | 0.48 | 0.43 |
| on | AR | 0.25 | 0.87 / 0.64 | 0.266 | 0.81 | 0.37 | 0.33 | 0.32 |
| on | J4 | 0.38 | 1.03 / 0.85 | 0.296 | 0.76 | 0.39 | 0.43 | 0.24 |
| on | J4 | 0.39 | 1.05 / 0.85 | 0.305 | 0.73 | 0.41 | 0.36 | 0.70 |
## Hypothesis re-test
| Context | Loop | H1 EU adoption lags US and AR (K_Ω t10) | EU − US: ΔȲ 0–25 / ΔVFAC | H2 AR − EU: ΔȲ 0–25 / ΔȲ 0–100 / ΔVFAC | H2 holds? |
|---|---|---|---|---|---|
| X1 US-led concentrated frontier | off | yes (0.31 vs 0.39, 0.34) | -0.031 / +0.028 | -0.016 / -0.040 / -0.041 | no |
| X1 US-led concentrated frontier | on | no (0.27 vs 0.27, 0.27) | +0.050 / +0.017 | -0.048 / -0.073 / -0.036 | no |
| X2 open-lineage world | off | yes (0.34 vs 0.45, 0.37) | -0.074 / -0.020 | -0.028 / -0.083 / -0.055 | no |
| X2 open-lineage world | on | no (0.32 vs 0.44, 0.32) | -0.093 / -0.017 | -0.060 / -0.117 / -0.048 | no |
| X3 accelerating frontier | off | yes (0.39 vs 0.73, 0.41) | -0.235 / +0.049 | -0.024 / -0.052 / -0.041 | no |
| X3 accelerating frontier | on | no (0.34 vs 0.44, 0.33) | +0.022 / +0.017 | -0.053 / -0.082 / -0.037 | no |
| X4 fragmented blocs | off | yes (0.30 vs 0.39, 0.34) | -0.038 / +0.029 | -0.016 / -0.044 / -0.047 | no |
| X4 fragmented blocs | on | no (0.26 vs 0.27, 0.25) | +0.027 / +0.013 | -0.055 / -0.073 / -0.040 | no |
| X1 US-led concentrated frontier | off | yes (0.32 vs 0.39, 0.34) | -0.015 / +0.027 | -0.031 / -0.050 / -0.040 | no |
| X1 US-led concentrated frontier | on | no (0.28 vs 0.27, 0.27) | +0.061 / +0.017 | -0.059 / -0.082 / -0.036 | no |
| X2 open-lineage world | off | yes (0.35 vs 0.45, 0.37) | -0.058 / -0.021 | -0.043 / -0.099 / -0.055 | no |
| X2 open-lineage world | on | no (0.33 vs 0.44, 0.32) | -0.076 / -0.016 | -0.077 / -0.138 / -0.049 | no |
| X3 accelerating frontier | off | yes (0.40 vs 0.73, 0.42) | -0.225 / +0.049 | -0.032 / -0.057 / -0.041 | no |
| X3 accelerating frontier | on | no (0.35 vs 0.44, 0.33) | +0.026 / +0.018 | -0.063 / -0.088 / -0.037 | no |
| X4 fragmented blocs | off | yes (0.31 vs 0.39, 0.34) | -0.027 / +0.028 | -0.027 / -0.054 / -0.047 | no |
| X4 fragmented blocs | on | no (0.26 vs 0.27, 0.25) | +0.038 / +0.013 | -0.066 / -0.083 / -0.040 | no |
## Local-in-context vs. global (EU, context X1, loop off)
@ -76,5 +76,5 @@ EU simulated alone against a US path from a US-only run, compared with the full
| Setting | EU P t100 local | global | EU K_Ω t25 local | global | max |ΔP| over time |
|---|---|---|---|---|---|
| no spillover | 0.821 | 0.821 | 0.303 | 0.303 | 0.000 |
| strong EU access rule, spillover σ 0.5 | 0.683 | 0.684 | 0.340 | 0.340 | 0.000 |
| no spillover | 0.822 | 0.822 | 0.312 | 0.312 | 0.000 |
| strong EU access rule, spillover σ 0.5 | 0.685 | 0.685 | 0.354 | 0.354 | 0.000 |

View file

@ -57,7 +57,10 @@ def build(cal: dict, ctx: dict, sent: float) -> dict:
"US": w.make({**us_p, **ctx.get("us", {}), "sent": sent}, us_s),
"EU": w.make({**eu_p, "sent": sent}, eu_s, home="US", f=f_eu, kappa=kap),
"AR": w.make({**ar_p, "sent": sent}, ar_s, home="US", f=f_ar, kappa=kap),
"J4": w.make({**us_p, **J4, **ctx.get("j4", {}), "sent": sent, "sig_gain": 0.5, "leg_lag": 10.0}, us_s),
# WP-0016-T03: the J4 bloc starts from its own calibrated state (China data, calibrate_data "CN")
"J4": w.make({**cal["CN"][0], **ctx.get("j4", {}), "sent": sent, "sig_gain": 0.5, "leg_lag": 10.0},
cal["CN"][1]) if "CN" in cal else
w.make({**us_p, **J4, **ctx.get("j4", {}), "sent": sent, "sig_gain": 0.5, "leg_lag": 10.0}, us_s),
}

View file

@ -4,13 +4,13 @@ type: workplan
title: "Checkpoint operations: governed execution and 2027 transition"
domain: communication
repo: assembly-economics
status: active
status: blocked
flavor: residual
depends_on: [ASSEMBLY-WP-0010]
owner: claude-code
topic_slug: coulomb-social
created: "2026-10-13"
updated: "2026-10-13"
updated: "2026-10-14"
state_hub_workstream_id: "e07ebc2e-2a59-5d7a-aebe-54d8622617a4"
---
@ -28,11 +28,13 @@ security close-down checklist row 20
```task
id: ASSEMBLY-WP-0014-T01
status: progress
status: wait
priority: high
state_hub_task_id: "2d0f60c8-30c6-589f-ae7c-f26a01f03687"
```
**2026-10-14, blocked on rein-aharness:** operator decisions 0636c577 (tenant-owned blueprint, no Glas profile) and c6f23433 (publisher owned by rein-aharness as a separately granted capability). Our side is done: owner declaration `activity-definitions/assembly-checkpoint.declaration.yaml` with the `repository_grant` v2 block, confirmed to glas-harness (GLAS-WP-0017-T02) and rein-aharness. Waiting for the publisher capability (REINAH-WP-0003-T04), then the canary run before 2026-12-15.
**2026-10-13:** step 2 of rein-aharness's migration sequence prepared:
`checkpoints/EXECUTION_DECLARATION.md`, **approved by the founder 2026-10-13**
(addendum to the 2026-10-12 decision record).
@ -94,6 +96,8 @@ priority: medium
state_hub_task_id: "cc430881-dd0f-57c6-8092-0f884b0f8f6e"
```
**2026-10-14:** local dry run `--kind full --no-llm` (date 2027-01-20, output deleted): 37 ok, 4 not_found (the manual light specs), 0 errors, including E5. Waits for the annual run: the X2 OpenAlex year must move to the last complete year then.
The first `kind: full` run uses the 22 full specs added in WP-0010-T08.
Before it runs, move the publication year in the X2 OpenAlex URLs to the
last complete year (see the spec note). Run `--kind full --no-llm` locally

View file

@ -4,13 +4,13 @@ type: workplan
title: "First checkpoint review: measured targets, manual indicators, re-calibration"
domain: communication
repo: assembly-economics
status: active
status: blocked
flavor: residual
depends_on: [ASSEMBLY-WP-0013, ASSEMBLY-WP-0009]
owner: claude-code
topic_slug: coulomb-social
created: "2026-10-13"
updated: "2026-10-13"
updated: "2026-10-14"
state_hub_workstream_id: "74d02cb9-e4f3-5943-8c33-6db81c8b5acf"
---
@ -143,6 +143,8 @@ priority: medium
state_hub_task_id: "8cce2578-9046-502f-b4a6-bcab272accab"
```
**2026-10-14:** EU market concentration measured (STOXX Europe 600 top-10 about 21 %), re-calibrated (Calibration v0.6: 50/50 targets, 42 measured); readings R1–R4 unchanged; cross-border and world results re-run. **Blocked:** AR market concentration (the MERVAL is too narrow for a comparable operator) and AR adoption growth (needs a second Google/IDB or INDEC data point).
Waits for data that does not exist yet as of 2026-10-13.
- **AR adoption growth:** the second data point of the Google/IDB study, or
@ -161,11 +163,13 @@ R1–R4 change. Also verify the secondary-source figures marked in
```task
id: ASSEMBLY-WP-0015-T07
status: todo
status: wait
priority: high
state_hub_task_id: "73b358e7-d09e-56b8-a1c3-1659e70554f1"
```
**2026-10-14:** step 1 done. Observation noise from real residuals: adoption 0.026, investment 0.078, discovery 0.009. The filter result is unchanged (B4 1.00 in Q3 2026, no confirmed flip), so its sharpness comes from model-structure uncertainty, not from measurement noise. **Blocked:** step 2, the B3 → B4 check, needs Q4 2026 data (next review).
From ASSEMBLY-WP-0017. The IMM filter is overconfident on observed data:
weights jump to 1.00 within a quarter (`research/ModelMatching.md` § 4.3).

View file

@ -4,13 +4,13 @@ type: workplan
title: "Open-economy refinements: lineage access rules, endogenous foreign shares, calibrated coupling"
domain: communication
repo: assembly-economics
status: active
status: finished
flavor: residual
depends_on: [ASSEMBLY-WP-0011]
owner: claude-code
topic_slug: coulomb-social
created: "2026-10-13"
updated: "2026-10-13"
updated: "2026-10-14"
state_hub_workstream_id: "94ce26e9-139a-5da5-947d-8a582495b38f"
---
@ -62,12 +62,12 @@ point. Use indicator CB1 (operator shares over time) to calibrate the speed.
```task
id: ASSEMBLY-WP-0016-T03
status: progress
status: done
priority: medium
state_hub_task_id: "8c6e4c04-5749-52a6-a296-e6fd79eab379"
```
**Partly done 2026-10-13:** κ is not identified by today's data (EU one-year ratio 1.453 at κ 0, 1.470 at 0.8, observed 1.48); 0.8 does not double-count. Open: a calibrated J4 start (no tracked data for a J4 jurisdiction).
**Partly done 2026-10-13:** κ is not identified by today's data (EU one-year ratio 1.453 at κ 0, 1.470 at 0.8, observed 1.48); 0.8 does not double-count. **Done 2026-10-14:** the J4 bloc now starts from China data (`calibrate_data` "CN": search and mobile-OS shares measured with a StatCounter caveat, sentiment Ipsos 83 % benefits > drawbacks, adoption level and growth priors); `world_scenarios.py` uses it. H1 and H2 verdicts unchanged.
κ = 0.8 is a prior. Calibrate it from the lag between frontier releases and
host adoption (indicator CB5, BTOS vs. Eurostat timing). Give the J4 bloc its
@ -96,3 +96,10 @@ Add C6 (trade in organism output), C7 (talent and founders) and C8
whether H2 ("Argentina may thrive") changes with an export channel. That is
the strongest argument for J2-type thriving that the model does not yet
represent (`models/AdoptionBand.md` § 4.5).
## Close-out 2026-10-14
T01–T04 are done (`models/CrossBorder.md` §§ 6–8, `world.py`, `exports.py`,
J4 start from China data). The remaining priors (d0, λ, γ, δ, κ) are tracked
by the coupling indicators CB1–CB6 in `checkpoints/IndicatorCatalog.md`. No
new workplan.

View file

@ -4,7 +4,7 @@ type: workplan
title: "GADM-0.5 grounding: dematerialization, ecological classes, non-rival output"
domain: communication
repo: assembly-economics
status: active
status: finished
flavor: residual
depends_on: [ASSEMBLY-WP-0007]
owner: claude-code
@ -96,11 +96,13 @@ AI-generated output, for example code on public repositories).
```task
id: ASSEMBLY-WP-0018-T04
status: todo
status: done
priority: low
state_hub_task_id: "60940505-b8f9-55f6-b55f-aa4075fe10ff"
```
**Done 2026-10-14:** the speed (0.05/yr) and strengths are consistent with Bessen et al. and Kang 2016; the capture link `o_pd` was tested (with Pd passed to the base auxiliaries): VFAC effect ≤ 0.0003. Capture of selection is not material (`models/GADM-0.5.md` § 8).
Ground the weight adjustment speed (0.05 per year) and the capture
strengths. Test the candidate link `O = Q (1 − Pd)` (organism selection
quality falls with discovery concentration). Only that would make capture of
@ -110,12 +112,21 @@ selection material for VFAC.
```task
id: ASSEMBLY-WP-0018-T05
status: todo
status: done
priority: medium
state_hub_task_id: "3aace583-cc0b-58f7-9eb0-e241dcfddc1e"
```
**Done 2026-10-14 (decision):** GADM-0.4 stays the reference model; GADM-0.5 is the module for ecology and demand questions. Revisit when post-2024 E5/L4 data decide BR-011 (`models/GADM-0.5.md` § 9).
After T01–T03, decide whether GADM-0.5 (classes, demand split, non-rival
output) becomes the reference model for the band probe, the calibration
(WP-0013/0015) and the cross-border world (WP-0011/0016). Re-run the key
readings and record what changes in the break register.
## Close-out 2026-10-14
T01–T05 are done. The open question, BR-011 (decoupling vs. φ_r), is tracked
in the break register, with the trigger "post-2024 E5 and L4 data". E5 is
wired into the full checkpoint, and L4 is collected at reviews
(WP-0015-T01). No new workplan.