diff --git a/workplans/ASSEMBLY-WP-0011-cross-border-coupling.md b/workplans/ASSEMBLY-WP-0011-cross-border-coupling.md new file mode 100644 index 0000000..1b99e02 --- /dev/null +++ b/workplans/ASSEMBLY-WP-0011-cross-border-coupling.md @@ -0,0 +1,118 @@ +--- +id: ASSEMBLY-WP-0011 +type: workplan +title: "Cross-border coupling: jurisdiction-local and global scenarios" +domain: communication +repo: assembly-economics +status: proposed +flavor: implementation +depends_on: [ASSEMBLY-WP-0013] +owner: claude-code +topic_slug: coulomb-social +created: "2026-10-13" +updated: "2026-10-13" +--- + +# Cross-border coupling: jurisdiction-local and global scenarios + +GADM is a closed economy. The jurisdiction archetypes (WP-0009-T04, +`models/AdoptionBand.md` § 4) showed that this is the largest gap for both +owner hypotheses ("Europe lags", "Argentina may thrive"). A jurisdiction +with rights-first rules still runs on lineages, platforms and capital set +abroad. + +Goal: two scenario modes on one model. + +- **Jurisdiction-local in a defined context:** one jurisdiction is simulated + in full; the rest of the world is an exogenous context scenario (given + paths for foreign lineages, prices, capital, sentiment). +- **Global:** all jurisdictions are simulated together and exchange + cross-border flows at every time step. + +Starts only after WP-0013 gives a calibrated, reality-aligned starting +point for each jurisdiction. + +## Cross-border channels: inventory and evidence + +```task +id: ASSEMBLY-WP-0011-T01 +status: todo +priority: high +``` + +List the channels through which jurisdictions affect each other, with +evidence and a candidate indicator for each. Candidates: lineage import +(models built under foreign rules: effective L, lin_open, m), platform and +membrane reach (foreign operators' discovery and attention extraction), +compute and capital flows (`aO` funded abroad), trade in organism output, +talent migration (H, F), regulatory spillover ("Brussels effect"), and +sentiment and media contagion (Σ). Choose the minimal set that can change +the readings in § 4.3. Write `models/CrossBorder.md`. + +## Coupling structure in the model + +```task +id: ASSEMBLY-WP-0011-T02 +status: todo +priority: high +``` + +Design how jurisdictions share state: a coupling matrix per channel +(weights from trade, platform market shares, lineage origin), and which +stocks become partly shared (lineage control, discovery channel, organism +capability frontier). Keep each jurisdiction's own levers. Decide the +numerical scheme: synchronous step, all jurisdictions read the previous step +of the others. The uncoupled case must reproduce the single-jurisdiction +model exactly. + +## Multi-jurisdiction simulator + +```task +id: ASSEMBLY-WP-0011-T03 +status: todo +priority: high +``` + +Implement `simulate_world(jurisdictions, coupling, T)` on top of `gadm04`. +Each jurisdiction has its own state, parameters and archetype. Tests: +coupling 0 equals independent runs; symmetric coupling of identical +jurisdictions equals one jurisdiction; conservation of shared quantities. + +## Context scenarios for jurisdiction-local runs + +```task +id: ASSEMBLY-WP-0011-T04 +status: todo +priority: medium +``` + +Define rest-of-world context scenarios (for example: "US-led concentrated +frontier", "open-lineage world", "fragmented blocs") as exogenous paths of +the coupled quantities, derived from global runs or set by hand. A local +run is one jurisdiction × one context × one band anchor. + +## Global scenarios and hypothesis re-test + +```task +id: ASSEMBLY-WP-0011-T05 +status: todo +priority: high +``` + +Run EU, US, AR (and a J4 reference bloc) together across B1–B4, with and +without the legitimacy loop. Re-test "Europe lags" and "Argentina may +thrive" with lineage import. Compare local-in-context and global results: +when does the context approximation fail? Update the break register. + +## Checkpoint indicators for the coupling + +```task +id: ASSEMBLY-WP-0011-T06 +status: todo +priority: medium +``` + +Add indicators for the coupling weights to the catalog (lineage origin of +deployed models, cloud and platform market shares by jurisdiction, AI trade +and investment flows), so that the matrix can be updated from checkpoints +(WP-0010). diff --git a/workplans/ASSEMBLY-WP-0012-model-matching-flipping.md b/workplans/ASSEMBLY-WP-0012-model-matching-flipping.md new file mode 100644 index 0000000..5da3c87 --- /dev/null +++ b/workplans/ASSEMBLY-WP-0012-model-matching-flipping.md @@ -0,0 +1,109 @@ +--- +id: ASSEMBLY-WP-0012 +type: workplan +title: "Model matching and regime flipping" +domain: communication +repo: assembly-economics +status: proposed +flavor: implementation +depends_on: [ASSEMBLY-WP-0013, ASSEMBLY-WP-0010] +owner: claude-code +topic_slug: coulomb-social +created: "2026-10-13" +updated: "2026-10-13" +--- + +# Model matching and regime flipping + +Decide from gathered data which model (and which regime within a model) +fits each jurisdiction best, and use the best-fitting one for predictions and +simulations. When new measured or simulated data shows that another model or +regime fits better, record a **flipping event**: a signal that the regime a +jurisdiction or society operates under has changed significantly. + +Candidates are combinations of model version (GADM-0.2 … 0.4, later the +coupled model of WP-0011), adoption anchor (B1–B4), archetype (J1–J4), and +loop structure (legitimacy loop on/off, self-enhancement). Starts after +WP-0013 provides the calibration machinery and a reality-aligned baseline. + +## Candidate set and fit criterion + +```task +id: ASSEMBLY-WP-0012-T01 +status: todo +priority: high +``` + +Define the candidate regimes and a fit criterion per jurisdiction: a +likelihood or scaled-error score over the checkpoint indicators, with +indicator noise and proxy uncertainty (catalog caveat: no indicator equals +a model quantity). Penalize complexity (for example an information +criterion), so that a richer model wins only when the data demands it. +Write `research/ModelMatching.md`. + +## Matching engine + +```task +id: ASSEMBLY-WP-0012-T02 +status: todo +priority: high +``` + +Implement `matching.py`: for each jurisdiction, fit each candidate to the +checkpoint series (using the WP-0013 calibration routine), score it, and +produce a ranked table with weights (for example Akaike or Bayesian model +weights). Output: `results/matching.md` and a machine-readable record per +checkpoint. + +## Flipping events: definition and detection + +```task +id: ASSEMBLY-WP-0012-T03 +status: todo +priority: high +``` + +Define a flipping event: the best-fitting regime changes **and** the +evidence for the change exceeds a threshold that persists over at least two +checkpoints, so that noise does not flip. Distinguish measured flips (from +observed data) and simulated flips (a run crosses into another regime's +basin, for example the B4 boom-bust of BR-005). Record each event in a +flip register (`research/FlipRegister.md`), linked to the break register. + +## Predictions from the matched model + +```task +id: ASSEMBLY-WP-0012-T04 +status: todo +priority: medium +``` + +Use the best-fitting regime, or a weighted ensemble, for the prediction +register (`checkpoints/predictions.md`). Each prediction states which +regime produced it. After a flip, new predictions use the new regime; old +predictions remain and are scored as they were made. + +## Checkpoint integration + +```task +id: ASSEMBLY-WP-0012-T05 +status: todo +priority: medium +``` + +Run matching at every full checkpoint (and optionally at light ones), and +report the current regime per jurisdiction and any flip candidates in the +checkpoint record. Coordinate the runner change with WP-0010. + +## Test on synthetic data + +```task +id: ASSEMBLY-WP-0012-T06 +status: todo +priority: high +``` + +Before trusting real flips: generate synthetic indicator series from a known +regime that switches at a known time, add realistic noise and gaps, and +check that matching recovers the regime and detects the flip with an +acceptable delay and false-alarm rate. diff --git a/workplans/ASSEMBLY-WP-0013-calibration.md b/workplans/ASSEMBLY-WP-0013-calibration.md new file mode 100644 index 0000000..8776495 --- /dev/null +++ b/workplans/ASSEMBLY-WP-0013-calibration.md @@ -0,0 +1,90 @@ +--- +id: ASSEMBLY-WP-0013 +type: workplan +title: "Calibration of GADM to measured data" +domain: communication +repo: assembly-economics +status: ready +flavor: implementation +depends_on: [ASSEMBLY-WP-0009, ASSEMBLY-WP-0010] +owner: claude-code +topic_slug: coulomb-social +created: "2026-10-13" +updated: "2026-10-13" +--- + +# Calibration of GADM to measured data + +Tune model parameters and initial states to the measured checkpoint data, so +that scenarios start from a reasonably reality-aligned state per +jurisdiction. WP-0011 (cross-border coupling) and WP-0012 (model matching +and flipping) start only after this. + +Grounding in WP-0008 fixed some parameters from the literature. This +workplan fits the remaining ones to observed levels and trends. + +## Calibration targets from checkpoint data + +```task +id: ASSEMBLY-WP-0013-T01 +status: todo +priority: high +``` + +Translate catalog indicators (`checkpoints/IndicatorCatalog.md`) into model +targets per jurisdiction: an observation operator from the raw indicator to +the normalized model quantity (for example AI firm-use share → K_Ω), with +an uncertainty range that reflects proxy quality. Start with the stocks +that have data: K_Ω (L1, L2), investment (L5), labour share (F1), attention +(F4), domination (F2), sentiment (L6), ecology (E1). Write +`models/Calibration.md` and `simulations/gadm02/calibration_targets.json`. + +## Calibration routine + +```task +id: ASSEMBLY-WP-0013-T02 +status: todo +priority: high +``` + +Implement `calibrate_data.py`: choose free parameters (those that GSA +identifies as influential and grounding did not fix), fit them to the +targets with a bounded, derivative-free optimizer (standard library only, +for example Nelder–Mead or a coarse grid followed by local search), and +report fit, residuals and identifiability (which parameters the data does +not constrain). + +## Per-jurisdiction starting states + +```task +id: ASSEMBLY-WP-0013-T03 +status: todo +priority: high +``` + +Fit initial states and archetype levers for US, EU, DE and AR from the +checkpoint 0 data. Where data is missing (AR adoption, sentiment), keep the +prior and widen the uncertainty instead of guessing. + +## Re-run readings from the calibrated start + +```task +id: ASSEMBLY-WP-0013-T04 +status: todo +priority: medium +``` + +Re-run the band probe, legitimacy loop and jurisdiction archetypes from the +calibrated starting states. Record which readings survive calibration and +which change (break register). + +## Re-calibration at checkpoints + +```task +id: ASSEMBLY-WP-0013-T05 +status: todo +priority: low +``` + +Document how calibration is repeated when new checkpoint data arrives, and +hand the routine to WP-0012 for model matching.