cycle-001 · 2026-10-20

Cycle 1

Batch cycle-001: 25 experiments and 2,401 simulations under parameters 0.1.0. 251 checks passed, 69 warned and 0 failed; 23 findings and 17 recommendations.

Model 0.1.0 · graph 0.2.0 · parameters 0.1.0

The batch

Every experiment the cycle ran: The batch every improvement cycle runs: the null experiment (E0) and the E3 baselines for five nations under four methods, 20 years, 100 seeds each with counterfactual probes on 20, and greedy over 10 and 30 years for two nations. Seeds are fixed, so a change between cycles is the model's, not luck's.

Experiment
Scenario
Position
Horizon
Simulations
Index
Rank
Tier 1
Tier rank
South Korea, hold, 30 yearscycle-001.e0-null-kor · Null experimentNo shocks202630116.00 → 6.21(−9.79)6.21 to 6.216 → 942 → 07 → 75
United Kingdom, hold, 20 yearscycle-001.e3-gbr-hold · Baseline2 shocks (median)20262010016.45 → 16.14(−0.31)15.18 to 17.013 → 52 → 15 → 10
United Kingdom, random, 20 yearscycle-001.e3-gbr-random · Baseline2 shocks (median)20262010016.45 → 17.39(+0.93)16.54 to 18.143 → 22 → 75 → 2
United Kingdom, greedy, 20 yearscycle-001.e3-gbr-greedy-marginal · Baseline2 shocks (median)20262010016.45 → 18.35(+1.90)18.02 to 18.563 → 12 → 75 → 2
United Kingdom, mirror a peer, 20 yearscycle-001.e3-gbr-mirror-peer · Baseline2 shocks (median)20262010016.45 → 17.33(+0.87)16.90 to 17.753 → 22 → 25 → 5
South Korea, hold, 20 yearscycle-001.e3-kor-hold · Baseline2 shocks (median)20262010016.00 → 15.71(−0.29)14.61 to 16.556 → 62 → 17 → 12
South Korea, random, 20 yearscycle-001.e3-kor-random · Baseline2 shocks (median)20262010016.00 → 16.94(+0.93)15.95 to 17.676 → 22 → 67 → 2
South Korea, greedy, 20 yearscycle-001.e3-kor-greedy-marginal · Baseline2 shocks (median)20262010016.00 → 17.98(+1.98)17.62 to 18.266 → 22 → 77 → 2
South Korea, mirror a peer, 20 yearscycle-001.e3-kor-mirror-peer · Baseline2 shocks (median)20262010016.00 → 17.20(+1.20)16.63 to 17.646 → 22 → 37 → 5
Estonia, hold, 20 yearscycle-001.e3-est-hold · Baseline2 shocks (median)20262010011.49 → 10.59(−0.90)9.46 to 11.4333 → 420 → 027 → 32
Estonia, random, 20 yearscycle-001.e3-est-random · Baseline2 shocks (median)20262010011.49 → 11.32(−0.17)10.12 to 12.1833 → 340 → 027 → 22
Estonia, greedy, 20 yearscycle-001.e3-est-greedy-marginal · Baseline2 shocks (median)20262010011.49 → 12.95(+1.47)11.78 to 13.7633 → 220 → 127 → 16
Estonia, mirror a peer, 20 yearscycle-001.e3-est-mirror-peer · Baseline2 shocks (median)20262010011.49 → 12.52(+1.03)11.43 to 13.1533 → 250 → 027 → 20
Brazil, hold, 20 yearscycle-001.e3-bra-hold · Baseline2 shocks (median)20262010011.69 → 11.24(−0.45)10.31 to 11.7430 → 340 → 033 → 34
Brazil, random, 20 yearscycle-001.e3-bra-random · Baseline2 shocks (median)20262010011.69 → 12.04(+0.35)11.11 to 12.5730 → 290 → 033 → 31
Brazil, greedy, 20 yearscycle-001.e3-bra-greedy-marginal · Baseline2 shocks (median)20262010011.69 → 13.62(+1.93)12.79 to 14.0930 → 210 → 133 → 13
Brazil, mirror a peer, 20 yearscycle-001.e3-bra-mirror-peer · Baseline2 shocks (median)20262010011.69 → 13.04(+1.35)12.17 to 13.6030 → 220 → 033 → 27
Kenya, hold, 20 yearscycle-001.e3-ken-hold · Baseline2 shocks (median)2026201007.18 → 6.40(−0.77)4.67 to 7.1879 → 910 → 091 → 98
Kenya, random, 20 yearscycle-001.e3-ken-random · Baseline2 shocks (median)2026201007.18 → 6.76(−0.42)4.96 to 7.5579 → 850 → 091 → 96
Kenya, greedy, 20 yearscycle-001.e3-ken-greedy-marginal · Baseline2 shocks (median)2026201007.18 → 7.38(+0.21)5.74 to 8.0579 → 760 → 091 → 72
Kenya, mirror a peer, 20 yearscycle-001.e3-ken-mirror-peer · Baseline2 shocks (median)2026201007.18 → 6.97(−0.21)5.22 to 7.7579 → 810 → 091 → 96
South Korea, greedy, 10 yearscycle-001.e3-kor-greedy-marginal-10y · Baseline, 10-year horizon1 shock (median)20261010016.00 → 17.41(+1.41)16.96 to 17.706 → 22 → 67 → 2
Kenya, greedy, 10 yearscycle-001.e3-ken-greedy-marginal-10y · Baseline, 10-year horizon1 shock (median)2026101007.18 → 7.25(+0.07)5.97 to 7.6579 → 780 → 091 → 82
South Korea, greedy, 30 yearscycle-001.e3-kor-greedy-marginal-30y · Baseline, 30-year horizon4 shocks (median)20263010016.00 → 18.08(+2.07)17.77 to 18.446 → 12 → 77 → 2
Kenya, greedy, 30 yearscycle-001.e3-ken-greedy-marginal-30y · Baseline, 30-year horizon3 shocks (median)2026301007.18 → 7.52(+0.34)5.81 to 8.5979 → 730 → 091 → 66

These experiments as cards

Checks

Every experiment is checked before anything is written about it: invariants, plausibility, saturation, degeneracy, dead parameters, calibration, regression, performance and vocabulary. A warning is a candidate finding.

251 of 328 checks passed; 77 warned and 0 failed.

InvariantStatus

  • credits_conservedpass
  • ledger_balancespass
  • no_nanspass
  • probe_replay_reproducespass
  • scores_in_boundspass

Across the batch

  • greedy_dominates (warn): BRA: greedy is best on 4 of 4 objectives
  • greedy_dominates (warn): EST: greedy is best on 4 of 4 objectives
  • greedy_dominates (warn): KEN: greedy is best on 4 of 4 objectives
  • backcast (warn): no reconstructed historical starting states exist yet (nation_states holds 2026 only), so no backcast error can be computed
  • dead_parameter:maintenance_share (warn): maintenance_share = 0.5: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:upstream_lambda (warn): upstream_lambda = 0.3: +-20 per cent moves the objectives by at most 0.43%
  • dead_parameter:depth_gain (warn): depth_gain = 0.15: +-20 per cent moves the objectives by at most 0.01%
  • dead_parameter:depth_erosion (warn): depth_erosion = 0.06: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:depth0_intercept (warn): depth0_intercept = 0.2: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:depth0_slope (warn): depth0_slope = 0.5: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:partner_vulnerability (warn): partner_vulnerability = 0.5: +-20 per cent moves the objectives by at most 0.06%
  • dead_parameter:propagation_floor (warn): propagation_floor = 2: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:carry_decay (warn): carry_decay = 0.05: +-20 per cent moves the objectives by at most 0.08%
  • dead_parameter:headroom_base (warn): headroom_base = 0.1: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:headroom_slope (warn): headroom_slope = 0.3: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:chunk_small (warn): chunk_small = 0.01: +-20 per cent moves the objectives by at most 0.03%
  • dead_parameter:chunk_medium (warn): chunk_medium = 0.02: +-20 per cent moves the objectives by at most 0.04%
  • dead_parameter:chunk_large (warn): chunk_large = 0.05: +-20 per cent moves the objectives by at most 0.43%
  • dead_parameter:shock_magnitude_low (warn): shock_magnitude_low = 0.6: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:shock_magnitude_high (warn): shock_magnitude_high = 1.2: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:upside_magnitude_low (warn): upside_magnitude_low = 0.3: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:upside_magnitude_high (warn): upside_magnitude_high = 0.6: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:upside_probability_scale (warn): upside_probability_scale = 0.5: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:absorption_max (warn): absorption_max = 0.75: +-20 per cent moves the objectives by at most 0.45%
  • dead_parameter:credit_effect_high (warn): credit_effect_high = -0.12: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:credit_effect_medium (warn): credit_effect_medium = -0.06: +-20 per cent moves the objectives by at most 0.00%
  • dead_parameter:credit_effect_low (warn): credit_effect_low = -0.03: +-20 per cent moves the objectives by at most 0.00%
  • retired_words (warn): diagnosis.md: 'runs' 10 time(s), first near line 71; use 'simulations'
  • retired_words (warn): diagnosis.md: 'policy' 34 time(s), first near line 16; use 'method'
  • retired_words (warn): diagnosis.md: 'steps' 1 time(s), first near line 186; use 'round'
  • retired_words (warn): next-steps.md: 'policy' 14 time(s), first near line 15; use 'method'
  • retired_words (warn): next-steps.md: 'steps' 2 time(s), first near line 115; use 'round'
  • retired_words (warn): master-recommendation.md: 'runs' 7 time(s), first near line 3; use 'simulations'
  • retired_words (warn): master-recommendation.md: 'policy' 15 time(s), first near line 1; use 'method'
  • retired_words (warn): master-recommendation.md: 'steps' 2 time(s), first near line 1; use 'round'

Experiment: checks that warned or failed42

  • United Kingdom, hold, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (8 simulations above 2)
  • United Kingdom, random, 20 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.18 points; 3% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (4 simulations above 2)
    • saturation_high (warn): 65% of simulations end with a group at 20 that did not start there (median 1 groups)
  • United Kingdom, greedy, 20 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.20 points; 67% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 3 tiers (12 simulations above 2)
    • saturation_high (warn): 96% of simulations end with a group at 20 that did not start there (median 8 groups)
  • United Kingdom, mirror a peer, 20 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.33 points; 55% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (8 simulations above 2)
  • South Korea, hold, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (25 simulations above 2)
  • South Korea, random, 20 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.84 points; 3% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 5 tiers (82 simulations above 2)
    • saturation_high (warn): 57% of simulations end with a group at 20 that did not start there (median 1 groups)
  • South Korea, greedy, 20 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.20 points; 2% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 6 tiers (100 simulations above 2)
    • saturation_high (warn): 95% of simulations end with a group at 20 that did not start there (median 8 groups)
  • South Korea, mirror a peer, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (36 simulations above 2)
    • saturation_high (warn): 76% of simulations end with a group at 20 that did not start there (median 1 groups)
    • same_action (warn): the most repeated move (group and mode) appears in a median 95% of rounds
  • Estonia, random, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 3 tiers (4 simulations above 2)
  • Estonia, greedy, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 5 tiers (76 simulations above 2)
  • Estonia, mirror a peer, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 3 tiers (30 simulations above 2)
  • Brazil, random, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (32 simulations above 2)
  • Brazil, greedy, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 6 tiers (100 simulations above 2)
    • saturation_high (warn): 64% of simulations end with a group at 20 that did not start there (median 1 groups)
  • Brazil, mirror a peer, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (100 simulations above 2)
  • Kenya, hold, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 3 tiers (1 simulations above 2)
    • saturation_low (warn): 31% of simulations end with a group at 0 that did not start there (median 0 groups)
  • Kenya, random, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (11 simulations above 2)
  • Kenya, greedy, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (96 simulations above 2)
  • Kenya, mirror a peer, 20 years
    • tier_jump (warn): largest gain in one domain within five years: 3 tiers (1 simulations above 2)
    • saturation_low (warn): 26% of simulations end with a group at 0 that did not start there (median 0 groups)
    • same_action (warn): the most repeated move (group and mode) appears in a median 65% of rounds
  • South Korea, greedy, 10 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.11 points; 1% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 6 tiers (100 simulations above 2)
    • saturation_high (warn): 92% of simulations end with a group at 20 that did not start there (median 6 groups)
  • Kenya, greedy, 10 years
    • tier_jump (warn): largest gain in one domain within five years: 4 tiers (94 simulations above 2)
    • same_action (warn): the most repeated move (group and mode) appears in a median 80% of rounds
  • South Korea, greedy, 30 years
    • move_without_shock (warn): largest one-year move in a group with no shock landing: 3.11 points; 4% of simulations have one above 3
    • tier_jump (warn): largest gain in one domain within five years: 6 tiers (100 simulations above 2)
    • saturation_high (warn): 47% of simulations end with a group at 20 that did not start there (median 0 groups)
  • Kenya, greedy, 30 years
    • tier_jump (warn): largest gain in one domain within five years: 5 tiers (100 simulations above 2)

Diagnosis

The loop's analyst's write-up of the cycle, as it was written. Cycles before the vocabulary of 20 October 2026 use the older words.

23 findings. Ordered by priority: invariants, calibration, degeneracy, plausibility, saturation, sensitivity, framework.

F-cycle-001-01: No backcast can be scored: there are no reconstructed historical starting states.

Layer: harness. Class: data_gap. Source: rules

Evidence: checks.parquet backcast: nation_states holds year 2026 only; backcast_comparison returns no rows.

Hypothesis: The calibration loop needs starting states for the five calibration nations and the two hold-outs before 2026.

Proposed change: Reconstruct nation_states rows for KOR 1990, EST 1995, ARE 2005, SGP 1990 and IRL 1995 (calibration) and CHL and POL (hold-out) from the GINC Research, Patents, Trade and Infrastructure indices, with provenance = reconstructed and a confidence grade; add scripted historical shock schedules and an E4 batch.

Scope: harness

Expected effect: The backcast check reports an error by nation and domain.

Verification: Run E4; accept if the backcast check returns an error for all seven nations.

Risk: Reconstructed data is itself uncertain: every backcast report must carry the caveat. Never tune to CHL or POL.

F-cycle-001-02: Greedy marginal is the best policy on every objective for 3 of the five E3 nations.

Layer: harness. Class: degenerate_strategy. Source: rules

Evidence: checks.parquet greedy_dominates: BRA: greedy is best on 4 of 4 objectives; EST: greedy is best on 4 of 4 objectives; KEN: greedy is best on 4 of 4 objectives [baseline_comparison].

Hypothesis: The other baselines are deliberately naive, so greedy's lead says little about whether the model rewards sequencing. Its value model is the only one that sees the graph's long-run spillovers.

Proposed change: Add a sequencing-aware comparison policy to the E3 batch (greedy with a two-round lookahead on the same value model) so that the bar a solver must beat is tested against a policy that can exploit lags.

Scope: harness

Expected effect: A comparison that can tell whether order matters: lookahead beats greedy where lags matter.

Verification: Run E3 with the lookahead policy; accept if it differs from greedy on at least one objective for at least two nations.

Risk: Adds run time; a lookahead policy multiplies policy cost by the branching factor.

F-cycle-001-03: The same move is repeated in most rounds in 3 experiments.

Layer: harness. Class: degenerate_strategy. Source: rules

Evidence: checks.parquet same_action: e3-kor-mirror-peer 95% of rounds; e3-ken-mirror-peer 65% of rounds; e3-ken-greedy-marginal-10y 80% of rounds [decision_sequence].

Hypothesis: The mirror-peer policy measures its gaps against current scores and ignores levels still in delivery, so it keeps funding a gap it has already paid to close; near its horizon greedy can only value fast (bought) moves, so it repeats them.

Proposed change: Count levels still in delivery when mirror_peer measures a gap and when greedy measures the room left below 20 (pipeline/sim/policies).

Scope: harness

Expected effect: same_action passes for the mirror-peer experiments.

Verification: Rerun e3-*-mirror-peer; accept if same_action passes for all five nations.

Risk: Changes the baselines' behaviour, so cycle-on-cycle comparison of those experiments breaks once.

F-cycle-001-04: Groups move more than 3 points in a year without any shock.

Layer: parameter. Class: implausible_dynamics. Source: rules

Evidence: 7 experiments: e3-kor-random move_without_shock 3.84; e3-gbr-mirror-peer move_without_shock 3.33; e3-kor-greedy-marginal move_without_shock 3.20; e3-gbr-greedy-marginal move_without_shock 3.20; e3-gbr-random move_without_shock 3.18 (checks.parquet) [decision_sequence]. Of the 135 group-years that moved more than 3 points without a shock, investment arriving averaged 3.11 points and propagation -0.000: the moves are investment, not the graph.

Hypothesis: A move is a share of income, and income scales with the cost of holding the whole position, so the largest chunk buys several levels of a weak group in one year.

Proposed change: Lower chunk_large from 0.05 to 0.03 in data/sim/seed/params_v0_1.yaml (model).

Scope: parameter

Expected effect: move_without_shock at or below 3 points in the E3 experiments that fail it.

Verification: Rerun e3-gbr-greedy-marginal, e3-gbr-mirror-peer, e3-gbr-random; accept if the share of failing experiments falls by half.

Risk: Slower growth for every nation and policy; less of the headroom is spent, so carried credits rise.

F-cycle-001-05: Domains gain more than two tiers within five years, including under the hold policy, which makes no moves.

Layer: methodology. Class: methodology_question. Source: rules

Evidence: 22 experiments: e3-bra-greedy-marginal 6 tiers; e3-kor-greedy-marginal-30y 6 tiers; e3-kor-greedy-marginal-10y 6 tiers; e3-kor-greedy-marginal 6 tiers; 3 of them hold experiments (checks.parquet) [tier_transitions].

Hypothesis: Below Tier 1 the Pareto layers of a domain are close together (a tolerance of a quarter of a point across 197 nations), so a small move crosses several layers. The heuristic's two tiers may suit coarse tiers, not Pareto layers.

Proposed change: Decide how the model should read tier movement: against the Index's published tier bands, with a wider tolerance, or not at all.

Scope: methodology

Expected effect: A tier measure that moves only when capability moves materially.

Verification: Rerun the cycle batch with the chosen measure; accept if tier_jump passes for the hold experiments.

Risk: Changing the tiering here would make results incomparable with the Index's own tiers.

F-cycle-001-06: The tier rank picks the same best policy as the capability index for 5 of 5 nations, and ties policies for 3.

Layer: methodology. Class: methodology_question. Source: rules

Evidence: batch_summary: median tier rank and median index by nation and policy, 20-year E3 experiments [objective_distributions]. Tier rank has whole-number values over 197 nations and frozen rivals, so it is coarse at the top and saturates once a nation leads.

Hypothesis: As an objective, the lexicographic tier rank mostly repeats the index where they agree and adds noise where they tie; its value is in describing position (which domains lead), not in choosing between policies.

Proposed change: Keep tiers as a reported outcome; use the capability index (the mean of domains of groups) and score_sum as the objectives policies optimise and are ranked by; review whether the tier rank should be dropped from the objective set.

Scope: methodology

Expected effect: Policy rankings stop depending on ties in the tier rank.

Verification: Rerun E3; compare policy rankings by index and by tier rank.

Risk: Dropping tier rank from the objectives loses the brief's lexicographic reward, which the search layer was designed around.

F-cycle-001-07: Groups are driven to 20 and held there in many runs, across nations and policies.

Layer: parameter. Class: saturation. Source: rules

Evidence: 8 experiments above 25 per cent of runs: e3-gbr-greedy-marginal 96%; e3-kor-greedy-marginal 95%; e3-kor-greedy-marginal-10y 92%; e3-kor-mirror-peer 76%; e3-gbr-random 65%. Groups most often driven to 20: Technical & Vocational Skills (321), Advanced Education (223), Foundational Education (215), Digital & AI Competence (209), Lifelong Learning & Reskilling (174) [trajectory_by_domain].

Hypothesis: Costs above the frontier (17) do not steepen enough to stop a well-funded nation buying the last levels.

Proposed change: Raise frontier_premium from 0.6 to 0.9 (model).

Scope: parameter

Expected effect: The share of runs ending with a group newly at 20 falls below 25 per cent in the greedy E3 experiments.

Verification: Rerun the E3 greedy experiments; accept if saturation_high passes in at least half of those that failed.

Risk: Frontier nations gain less; the frontier parameter is already the most sensitive.

F-cycle-001-08: Groups of low-rated nations are driven to 0 by shocks and stay there.

Layer: mechanic. Class: saturation. Source: rules

Evidence: e3-ken-hold: 31% of runs end with a group at 0 that did not start there (median 0 groups); e3-ken-mirror-peer: 26% of runs end with a group at 0 that did not start there (median 0 groups) (checks.parquet) [shock_damage_by_group].

Hypothesis: Shock damage is in points regardless of the group's score, so a group rated near 1 loses everything to one shock; nothing rebuilds it unless the policy chooses it.

Proposed change: Scale a shock's points on each group by min(1, score / 10) in model.event_scale, so damage is proportional for weak groups.

Scope: structural

Expected effect: saturation_low passes for KEN.

Verification: Rerun e3-ken-*; accept if saturation_low passes and the shock tests of the scenario library are unchanged for nations above 10.

Risk: Departs from the scenario load test, which is in points; needs approval.

F-cycle-001-09: 23 of the model's scalar parameters move no objective by more than 0.5 per cent at +-20 per cent.

Layer: harness. Class: dead_parameter. Source: rules

Evidence: checks.parquet dead_parameter: maintenance_share, upstream_lambda, depth_gain, depth_erosion, depth0_intercept, depth0_slope, partner_vulnerability, propagation_floor, carry_decay, headroom_base, headroom_slope, chunk_small, chunk_medium, chunk_large, shock_magnitude_low, shock_magnitude_high, upside_magnitude_low, upside_magnitude_high, upside_probability_scale, absorption_max, credit_effect_high, credit_effect_medium, credit_effect_low (sensitivity.parquet; one nation, greedy, 12 seeds).

Hypothesis: The sweep runs one nation under one policy, which exercises few mechanics: shock magnitudes matter little to a rich nation, chunk sizes change how lumpy spending is but not how much, and depth acts only through vulnerability. Most are untested rather than dead.

Proposed change: Run the sensitivity sweep across three nations (KOR, EST, KEN), two policies (hold, greedy) and a stress scenario before removing any parameter; remove only those still inert.

Scope: harness

Expected effect: A list of parameters inert across the wider sweep, each then removed or justified.

Verification: The next scheduled sensitivity batch.

Risk: Removing a parameter is a model change and bumps the minor version.

F-cycle-001-10: frontier dominates the model's sensitivity.

Layer: parameter. Class: sensitivity. Source: rules

Evidence: sensitivity.parquet: +-20 per cent moves the score sum by -213.4 / +42.3 (max 100.0 per cent of an objective).

Hypothesis: A structural judgement with no evidence behind it carries the results.

Proposed change: Put frontier to the expert network for an elicited range, and report results at both ends.

Scope: parameter

Expected effect: A range with provenance 'expert' instead of a structural point value.

Verification: Rerun E3 at both ends of the elicited range.

Risk: None to the model; delays the next change to this parameter.

F-cycle-001-11: Monetary & Currency Capability cannot be given a defensible cost, decay or vulnerability.

Layer: framework. Class: framework_question. Source: rules

Evidence: cost_params and decay_params, defensible = false: Monetary credibility and the international use of a currency follow from history and the size of the economy; neither a cost per level nor a decay rate is defensible. Left at the class values.

Hypothesis: The group may be mis-specified for a single-nation investment model.

Proposed change: None here: a question for the framework review.

Scope: framework

Expected effect: A decision from the framework review.

Verification: Not applicable.

Risk: Tuning it here would hide a framework question.

F-cycle-001-12: Economic Leverage & Dependence cannot be given a defensible cost, decay or vulnerability.

Layer: framework. Class: framework_question. Source: rules

Evidence: cost_params and decay_params, defensible = false: Leverage is relational; a nation's level depends on others' dependence on it, which phase one freezes. No cost or vulnerability is defensible for a single-nation model.

Hypothesis: The group may be mis-specified for a single-nation investment model.

Proposed change: None here: a question for the framework review.

Scope: framework

Expected effect: A decision from the framework review.

Verification: Not applicable.

Risk: Tuning it here would hide a framework question.

F-cycle-001-13: Nuclear Deterrence cannot be given a defensible cost, decay or vulnerability.

Layer: framework. Class: framework_question. Source: rules

Evidence: cost_params and decay_params, defensible = false: Deterrence is close to binary and governed by treaty; a level scale, a yearly cost per level and a decay rate do not describe it. Kept expensive and unbuyable so the solver cannot treat it as a cheap source of points.

Hypothesis: The group may be mis-specified for a single-nation investment model.

Proposed change: None here: a question for the framework review.

Scope: framework

Expected effect: A decision from the framework review.

Verification: Not applicable.

Risk: Tuning it here would hide a framework question.

F-cycle-001-14: Early Childhood Development cannot be given a defensible cost, decay or vulnerability.

Layer: framework. Class: framework_question. Source: rules

Evidence: cost_params and decay_params, defensible = false: Early childhood investment pays out in adult skills ten to fifteen years later; a six-year delivery and a decay rate on the group's own score do not represent that lag. The graph's edges carry it instead.

Hypothesis: The group may be mis-specified for a single-nation investment model.

Proposed change: None here: a question for the framework review.

Scope: framework

Expected effect: A decision from the framework review.

Verification: Not applicable.

Risk: Tuning it here would hide a framework question.

F-cycle-001-15: Diaspora & Global Communities cannot be given a defensible cost, decay or vulnerability.

Layer: framework. Class: framework_question. Source: rules

Evidence: cost_params and decay_params, defensible = false: A diaspora is a demographic stock formed over generations; a budget does not build it, so no cost per level is defensible. Kept costly so that it is not a cheap target.

Hypothesis: The group may be mis-specified for a single-nation investment model.

Proposed change: None here: a question for the framework review.

Scope: framework

Expected effect: A decision from the framework review.

Verification: Not applicable.

Risk: Tuning it here would hide a framework question.

F-cycle-001-AI01: One-year moves above 3 points occur in groups with no shock landing, but the check does not distinguish new moves from delivery of earlier multi-year build/buy/partner decisions.

Layer: mechanic. Class: implausible_dynamics. Source: ai:deepseek-v4-pro

Evidence: move_without_shock warnings for KOR random 3.84, GBR mirror 3.33, KOR greedy 3.20 [checks].

Hypothesis: Stacked delivery from prior years, not only current chunk_large, contributes to the largest one-year changes.

Proposed change: Add a diagnostic that decomposes each non-shock one-year move into new move, prior-year delivery, partner delivery and propagation before changing chunk sizes.

Scope: structural

Expected effect: Would identify the true source of large moves and avoid over-tuning chunk_large.

Verification: Re-run the warning after decomposition; if new moves dominate, then reduce chunk_large.

Risk: Delays a parameter fix, but prevents an ineffective change.

F-cycle-001-AI02: Many high-income active runs end with groups at 20 that did not start there.

Layer: parameter. Class: saturation. Source: ai:deepseek-v4-pro

Evidence: e3-gbr-greedy-marginal 96 per cent of runs, median 8 groups; e3-kor-greedy-marginal 95 per cent, median 8 groups [checks].

Hypothesis: The current frontier_premium of 0.60 does not make the top of the scale expensive enough under high income and greedy spending.

Proposed change: Raise frontier_premium in steps, beginning with 0.9, while holding frontier fixed and monitoring distributional effects.

Scope: parameter

Expected effect: Would reduce the share of runs with saturated groups and increase differentiation among high performers.

Verification: Re-run the batch; expect saturation_high share to fall substantially, but not eliminate all gains.

Risk: May over-penalise high scorers and reduce realistic high-end progress.

F-cycle-001-AI03: Weak groups in Kenya can be driven to zero and remain there, especially under hold and mirror-peer.

Layer: mechanic. Class: saturation. Source: ai:deepseek-v4-pro

Evidence: e3-ken-hold saturation_low 31 per cent of runs; e3-ken-mirror-peer 26 per cent [checks].

Hypothesis: Shock damage is proportional to exposure but not to the group's starting level, so low-score groups can be eliminated by a single large shock.

Proposed change: Apply a score-sensitive shock scaling such as min(1, score/10) or a floor that leaves weak groups at a small positive level, rather than reducing global shock magnitudes.

Scope: structural

Expected effect: Would reduce pathological zero saturation while preserving relative vulnerability across groups.

Verification: Re-run Kenya experiments; saturation_low should fall without eliminating shock losses altogether.

Risk: May understate the collapse risk of very weak groups.

F-cycle-001-AI04: Greedy marginal is the best policy on every objective for three of five nations, and the same move is repeated in most rounds in several experiments.

Layer: harness. Class: degenerate_strategy. Source: ai:deepseek-v4-pro

Evidence: Research notes: greedy best for 3 of 5; same_action warnings for e3-kor-mirror-peer median 95 per cent, e3-ken-mirror-peer 65 per cent, e3-ken-greedy-marginal-10y 80 per cent [checks].

Hypothesis: The policy set lacks a comparator that accounts for multi-year delivery lags, so greedy marginal wins too easily.

Proposed change: Add a sequencing-aware policy such as greedy with a two-round lookahead on the same value model, and count levels already in delivery when measuring gaps or remaining room.

Scope: harness

Expected effect: Would provide a stronger benchmark and reduce repeated identical moves.

Verification: Compare policies across all five nations; if the lookahead beats greedy on index or resilient score, replace the default.

Risk: More complex policy may be harder to interpret and verify.

F-cycle-001-AI05: No backcast comparison exists, so the model cannot be tested against observed historical capability changes.

Layer: harness. Class: data_gap. Source: ai:deepseek-v4-pro

Evidence: Both experiment reports end with 'No backcast comparison' [TWO_EXPERIMENT_REPORTS].

Hypothesis: Reconstructed historical states and event schedules would allow a meaningful out-of-sample test of the model's dynamics.

Proposed change: Construct reconstructed nation_states rows for KOR 1990, EST 1995, ARE 2005, SGP 1990 and IRL 1995, plus CHL and POL as hold-outs, with provenance and confidence grades, and add scripted historical shock schedules.

Scope: harness

Expected effect: Would enable backcast scoring and reveal whether the model's decay, shock and propagation dynamics reproduce history.

Verification: Run an E4 batch and compare simulated backcasts with observed historical scores.

Risk: Reconstructed data quality may be low and could mislead calibration if treated as observed.

F-cycle-001-AI06: The tier rank chooses the same best policy as the capability index for all five nations and ties policies for three, while tier_jump warnings show tier movement is noisy.

Layer: methodology. Class: methodology_question. Source: ai:deepseek-v4-pro

Evidence: F-cycle-001-06: tier rank same best policy for 5 of 5 and ties 3; tier_jump warnings all experiments, including hold [checks].

Hypothesis: The lexicographic Pareto tier rank adds little decision value over the capability index and score_sum, but may still be a useful reported diagnostic.

Proposed change: Use capability index and score_sum as the objectives policies optimise and are ranked by; retain tier rank and Tier 1 count as reported outcomes, not primary objectives.

Scope: methodology

Expected effect: Would reduce noise in policy selection while preserving the non-linear top-end information for descriptive analysis.

Verification: Confirm policy ranking remains stable and that dropping tier rank from objectives does not change the recommended best policy.

Risk: Could lose a signal that matters for top-ranked nations if the capability index is too coarse.

F-cycle-001-AI07: Many scalar parameters show zero sensitivity in the single Korea greedy sweep, but this may not generalise across nations, policies or scenarios.

Layer: parameter. Class: dead_parameter. Source: ai:deepseek-v4-pro

Evidence: Sensitivity table: 23 parameters with max_rel_change 0.0000 or below 0.001 [sensitivity]; F-cycle-001-09 already flags this.

Hypothesis: Parameters inert under one baseline may become active under low-income or stress conditions.

Proposed change: Run the sensitivity sweep across KOR, EST and KEN, under hold and greedy, plus a stress scenario, before removing any parameter.

Scope: parameter

Expected effect: Would identify genuinely dead parameters and avoid deleting context-dependent ones.

Verification: Compare sensitivity ranks across conditions; remove only parameters inert in all.

Risk: More computational cost, but affordable for 23 candidate parameters.

F-cycle-001-AI08: Several capability groups lack a defensible cost, decay or vulnerability as investment targets.

Layer: framework. Class: framework_question. Source: ai:deepseek-v4-pro

Evidence: F-cycle-001-11 to -15 list Monetary & Currency Capability, Economic Leverage & Dependence, Nuclear Deterrence, Early Childhood Development, Diaspora & Global Communities [RECOMMENDATIONS_ALREADY_RAISED].

Hypothesis: These groups should be treated as scenario-driven or exogenous rather than directly investable until the framework review defines credible cost and decay structures.

Proposed change: Hold a framework review to classify these groups as non-scorable or scenario-only for the next model version.

Scope: framework

Expected effect: Would reduce implausible investment decisions and improve the remaining groups' calibration.

Verification: Framework review output and subsequent batch with revised group treatment.

Risk: May alter the model's group set and require regression against the 2026 index.

What the batch taught (research notes, not defects)

Policy ranking by median index at 20 years is not the same for every nation: BRA: greedy_marginal > mirror_peer > random > hold; EST: greedy_marginal > mirror_peer > random > hold; GBR: greedy_marginal > random > mirror_peer > hold; KEN: greedy_marginal > mirror_peer > random > hold; KOR: greedy_marginal > mirror_peer > random > hold [baseline_comparison].

What greedy is worth over holding, in median index points at 20 years: KEN +0.98, GBR +2.21, KOR +2.27, EST +2.36, BRA +2.38. Low-rated nations gain least, because income is calibrated to the cost of their position [objective_distributions].

Removing the shock library raises the median index by 0.205 to 1.509 points at 20 years across E3 experiments: the cost of the scenario library's risks, as the model prices them [probe_attribution].

Greedy by horizon (median index): KEN: 10y 7.25, 20y 7.38, 30y 7.52; KOR: 10y 17.41, 20y 17.98, 30y 18.08. The 10-year greedy stops investing in slow builds near its horizon, so horizons recommend different strategies [objective_distributions].

Across the batch, the graph's busiest edges are Semiconductors & Advanced Computing to Artificial Intelligence (+0.51 points a run); Semiconductors & Advanced Computing to Economic Leverage & Dependence (+0.19 points a run); Economic Output & Productivity to Fiscal Capacity & Public Finance (+0.18 points a run) [top_edges].

Master recommendation

M-cycle-001, written by the reviewer (deepseek-v4-pro) from every recommendation of the cycle. It changes nothing until a person approves it in loop/approvals.yaml.

M-cycle-001Proposed

Fix measurement and policy degeneracy before parameter reductions: backcast, pipeline-aware moves, objective demotion, shock scaling, and two parameter steps

This package first repairs measurement and policy degeneracy before parameter reductions. It adds historical backcast states and shock schedules, makes gap measurement delivery-aware, adds a two-round lookahead comparison policy, demotes tier rank to a reported outcome, applies score-sensitive shock scaling, then reduces chunk_large and raises frontier_premium. The next run repeats E3 with these changes, adds E4 backcast, and runs a multi-context sensitivity sweep across three nations, two policies, a stress scenario, and frontier/frontier_premium ranges. Hold-out nations are validation only; 2026 starting scores remain fixed.

  1. 1
    Harness and databackcast data

    Reconstruct historical nation_states for KOR 1990, EST 1995, ARE 2005, SGP 1990, IRL 1995 plus hold-out CHL and POL, with provenance and confidence grades; add scripted historical shock schedules and an E4 backcast comparison batch.

  2. 2
    Harness and datapipeline/sim/policies

    Add pipeline-aware gap and remaining-room measurement by counting levels already in delivery; add a greedy two-round lookahead comparison policy; add a diagnostic decomposing each non-shock one-year move into new move, prior-year delivery, partner delivery, and propagation.

  3. 3
    Methodologyobjectives

    Rank and optimise policies with the capability index and score_sum; retain tier rank and Tier 1 count as reported outcomes only; add a tier transition check against published bands with an explicit tolerance.

  4. 4
    Mechanicmodel.event_scale

    Apply score-sensitive shock scaling to each group's shock points: multiplier = min(1, score / 10), so damage is proportional for weak groups and does not drive them to zero.

  5. 5
    Parameterchunk_large

    Reduce chunk_large from 0.05 to 0.03 after the decomposed move diagnostic confirms new chunk delivery causes more than 3 non-shock one-year moves; if the diagnostic attributes the moves to stacked delivery, retain 0.05. Sets chunk_large to 0.03.

  6. 6
    Parameterfrontier_premium

    Raise frontier_premium from 0.60 to 0.90 as a first step to dampen saturation; run companion runs at 0.60 and 1.20 while holding frontier at 17. Sets frontier_premium to 0.9.

Every recommendation, by layer

All the cycle's recommendations, from the rules and from the reviewer, each tied to the finding behind it. The master recommendation chooses among them.

NS-cycle-001-01Harness and dataCarried overdata gap

No backcast can be scored: there are no reconstructed historical starting states.

Change. Reconstruct nation_states rows for KOR 1990, EST 1995, ARE 2005, SGP 1990 and IRL 1995 (calibration) and CHL and POL (hold-out) from the GINC Research, Patents, Trade and Infrastructure indices, with provenance = reconstructed and a confidence grade; add scripted historical shock schedules and an E4 batch.

Verify. Run E4; accept if the backcast check returns an error for all seven nations.

not chosen for cycle 2

The finding behind it (F-cycle-001-01)
Evidence
checks.parquet backcast: nation_states holds year 2026 only; backcast_comparison returns no rows.
Hypothesis
The calibration loop needs starting states for the five calibration nations and the two hold-outs before 2026.
Expected effect
The backcast check reports an error by nation and domain.
Verification
Run E4; accept if the backcast check returns an error for all seven nations.
Risk
Reconstructed data is itself uncertain: every backcast report must carry the caveat. Never tune to CHL or POL.
NS-cycle-001-02Harness and dataCarried overdegenerate strategy

Greedy marginal is the best policy on every objective for 3 of the five E3 nations.

Change. Add a sequencing-aware comparison policy to the E3 batch (greedy with a two-round lookahead on the same value model) so that the bar a solver must beat is tested against a policy that can exploit lags.

Verify. Run E3 with the lookahead policy; accept if it differs from greedy on at least one objective for at least two nations.

not chosen for cycle 2

The finding behind it (F-cycle-001-02)
Evidence
checks.parquet greedy_dominates: BRA: greedy is best on 4 of 4 objectives; EST: greedy is best on 4 of 4 objectives; KEN: greedy is best on 4 of 4 objectives [baseline_comparison].
Hypothesis
The other baselines are deliberately naive, so greedy's lead says little about whether the model rewards sequencing. Its value model is the only one that sees the graph's long-run spillovers.
Expected effect
A comparison that can tell whether order matters: lookahead beats greedy where lags matter.
Verification
Run E3 with the lookahead policy; accept if it differs from greedy on at least one objective for at least two nations.
Risk
Adds run time; a lookahead policy multiplies policy cost by the branching factor.
NS-cycle-001-03Harness and dataCarried overdegenerate strategy

The same move is repeated in most rounds in 3 experiments.

Change. Count levels still in delivery when mirror_peer measures a gap and when greedy measures the room left below 20 (pipeline/sim/policies).

Verify. Rerun e3-*-mirror-peer; accept if same_action passes for all five nations.

not chosen for cycle 2

The finding behind it (F-cycle-001-03)
Evidence
checks.parquet same_action: e3-kor-mirror-peer 95% of rounds; e3-ken-mirror-peer 65% of rounds; e3-ken-greedy-marginal-10y 80% of rounds [decision_sequence].
Hypothesis
The mirror-peer policy measures its gaps against current scores and ignores levels still in delivery, so it keeps funding a gap it has already paid to close; near its horizon greedy can only value fast (bought) moves, so it repeats them.
Expected effect
same_action passes for the mirror-peer experiments.
Verification
Rerun e3-*-mirror-peer; accept if same_action passes for all five nations.
Risk
Changes the baselines' behaviour, so cycle-on-cycle comparison of those experiments breaks once.
NS-cycle-001-04ParameterCarried overimplausible dynamics

Groups move more than 3 points in a year without any shock.

Change. Lower chunk_large from 0.05 to 0.03 in data/sim/seed/params_v0_1.yaml (model).

Verify. Rerun e3-gbr-greedy-marginal, e3-gbr-mirror-peer, e3-gbr-random; accept if the share of failing experiments falls by half.

not chosen for cycle 2

The finding behind it (F-cycle-001-04)
Evidence
7 experiments: e3-kor-random move_without_shock 3.84; e3-gbr-mirror-peer move_without_shock 3.33; e3-kor-greedy-marginal move_without_shock 3.20; e3-gbr-greedy-marginal move_without_shock 3.20; e3-gbr-random move_without_shock 3.18 (checks.parquet) [decision_sequence]. Of the 135 group-years that moved more than 3 points without a shock, investment arriving averaged 3.11 points and propagation -0.000: the moves are investment, not the graph.
Hypothesis
A move is a share of income, and income scales with the cost of holding the whole position, so the largest chunk buys several levels of a weak group in one year.
Expected effect
move_without_shock at or below 3 points in the E3 experiments that fail it.
Verification
Rerun e3-gbr-greedy-marginal, e3-gbr-mirror-peer, e3-gbr-random; accept if the share of failing experiments falls by half.
Risk
Slower growth for every nation and policy; less of the headroom is spent, so carried credits rise.
NS-cycle-001-05MethodologyCarried overmethodology question

Domains gain more than two tiers within five years, including under the hold policy, which makes no moves.

Change. Decide how the model should read tier movement: against the Index's published tier bands, with a wider tolerance, or not at all.

Verify. Rerun the cycle batch with the chosen measure; accept if tier_jump passes for the hold experiments.

not chosen for cycle 2

The finding behind it (F-cycle-001-05)
Evidence
22 experiments: e3-bra-greedy-marginal 6 tiers; e3-kor-greedy-marginal-30y 6 tiers; e3-kor-greedy-marginal-10y 6 tiers; e3-kor-greedy-marginal 6 tiers; 3 of them hold experiments (checks.parquet) [tier_transitions].
Hypothesis
Below Tier 1 the Pareto layers of a domain are close together (a tolerance of a quarter of a point across 197 nations), so a small move crosses several layers. The heuristic's two tiers may suit coarse tiers, not Pareto layers.
Expected effect
A tier measure that moves only when capability moves materially.
Verification
Rerun the cycle batch with the chosen measure; accept if tier_jump passes for the hold experiments.
Risk
Changing the tiering here would make results incomparable with the Index's own tiers.
NS-cycle-001-06MethodologyCarried overmethodology question

The tier rank picks the same best policy as the capability index for 5 of 5 nations, and ties policies for 3.

Change. Keep tiers as a reported outcome; use the capability index (the mean of domains of groups) and score_sum as the objectives policies optimise and are ranked by; review whether the tier rank should be dropped from the objective set.

Verify. Rerun E3; compare policy rankings by index and by tier rank.

not chosen for cycle 2

The finding behind it (F-cycle-001-06)
Evidence
batch_summary: median tier rank and median index by nation and policy, 20-year E3 experiments [objective_distributions]. Tier rank has whole-number values over 197 nations and frozen rivals, so it is coarse at the top and saturates once a nation leads.
Hypothesis
As an objective, the lexicographic tier rank mostly repeats the index where they agree and adds noise where they tie; its value is in describing position (which domains lead), not in choosing between policies.
Expected effect
Policy rankings stop depending on ties in the tier rank.
Verification
Rerun E3; compare policy rankings by index and by tier rank.
Risk
Dropping tier rank from the objectives loses the brief's lexicographic reward, which the search layer was designed around.
NS-cycle-001-07ParameterCarried oversaturation

Groups are driven to 20 and held there in many runs, across nations and policies.

Change. Raise frontier_premium from 0.6 to 0.9 (model).

Verify. Rerun the E3 greedy experiments; accept if saturation_high passes in at least half of those that failed.

not chosen for cycle 2

The finding behind it (F-cycle-001-07)
Evidence
8 experiments above 25 per cent of runs: e3-gbr-greedy-marginal 96%; e3-kor-greedy-marginal 95%; e3-kor-greedy-marginal-10y 92%; e3-kor-mirror-peer 76%; e3-gbr-random 65%. Groups most often driven to 20: Technical & Vocational Skills (321), Advanced Education (223), Foundational Education (215), Digital & AI Competence (209), Lifelong Learning & Reskilling (174) [trajectory_by_domain].
Hypothesis
Costs above the frontier (17) do not steepen enough to stop a well-funded nation buying the last levels.
Expected effect
The share of runs ending with a group newly at 20 falls below 25 per cent in the greedy E3 experiments.
Verification
Rerun the E3 greedy experiments; accept if saturation_high passes in at least half of those that failed.
Risk
Frontier nations gain less; the frontier parameter is already the most sensitive.
NS-cycle-001-08MechanicCarried oversaturation

Groups of low-rated nations are driven to 0 by shocks and stay there.

Change. Scale a shock's points on each group by min(1, score / 10) in model.event_scale, so damage is proportional for weak groups.

Verify. Rerun e3-ken-*; accept if saturation_low passes and the shock tests of the scenario library are unchanged for nations above 10.

not chosen for cycle 2

The finding behind it (F-cycle-001-08)
Evidence
e3-ken-hold: 31% of runs end with a group at 0 that did not start there (median 0 groups); e3-ken-mirror-peer: 26% of runs end with a group at 0 that did not start there (median 0 groups) (checks.parquet) [shock_damage_by_group].
Hypothesis
Shock damage is in points regardless of the group's score, so a group rated near 1 loses everything to one shock; nothing rebuilds it unless the policy chooses it.
Expected effect
saturation_low passes for KEN.
Verification
Rerun e3-ken-*; accept if saturation_low passes and the shock tests of the scenario library are unchanged for nations above 10.
Risk
Departs from the scenario load test, which is in points; needs approval.
NS-cycle-001-09Harness and dataCarried overdead parameter

23 of the model's scalar parameters move no objective by more than 0.5 per cent at +-20 per cent.

Change. Run the sensitivity sweep across three nations (KOR, EST, KEN), two policies (hold, greedy) and a stress scenario before removing any parameter; remove only those still inert.

Verify. The next scheduled sensitivity batch.

not chosen for cycle 2

The finding behind it (F-cycle-001-09)
Evidence
checks.parquet dead_parameter: maintenance_share, upstream_lambda, depth_gain, depth_erosion, depth0_intercept, depth0_slope, partner_vulnerability, propagation_floor, carry_decay, headroom_base, headroom_slope, chunk_small, chunk_medium, chunk_large, shock_magnitude_low, shock_magnitude_high, upside_magnitude_low, upside_magnitude_high, upside_probability_scale, absorption_max, credit_effect_high, credit_effect_medium, credit_effect_low (sensitivity.parquet; one nation, greedy, 12 seeds).
Hypothesis
The sweep runs one nation under one policy, which exercises few mechanics: shock magnitudes matter little to a rich nation, chunk sizes change how lumpy spending is but not how much, and depth acts only through vulnerability. Most are untested rather than dead.
Expected effect
A list of parameters inert across the wider sweep, each then removed or justified.
Verification
The next scheduled sensitivity batch.
Risk
Removing a parameter is a model change and bumps the minor version.
NS-cycle-001-10ParameterCarried oversensitivity

frontier dominates the model's sensitivity.

Change. Put frontier to the expert network for an elicited range, and report results at both ends.

Verify. Rerun E3 at both ends of the elicited range.

not chosen for cycle 2

The finding behind it (F-cycle-001-10)
Evidence
sensitivity.parquet: +-20 per cent moves the score sum by -213.4 / +42.3 (max 100.0 per cent of an objective).
Hypothesis
A structural judgement with no evidence behind it carries the results.
Expected effect
A range with provenance 'expert' instead of a structural point value.
Verification
Rerun E3 at both ends of the elicited range.
Risk
None to the model; delays the next change to this parameter.
NS-cycle-001-11MechanicCarried overimplausible dynamicsReviewer's proposal (deepseek-v4-pro)

One-year moves above 3 points occur in groups with no shock landing, but the check does not distinguish new moves from delivery of earlier multi-year build/buy/partner decisions.

Change. Add a diagnostic that decomposes each non-shock one-year move into new move, prior-year delivery, partner delivery and propagation before changing chunk sizes.

Verify. Re-run the warning after decomposition; if new moves dominate, then reduce chunk_large.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI01)
Evidence
move_without_shock warnings for KOR random 3.84, GBR mirror 3.33, KOR greedy 3.20 [checks].
Hypothesis
Stacked delivery from prior years, not only current chunk_large, contributes to the largest one-year changes.
Expected effect
Would identify the true source of large moves and avoid over-tuning chunk_large.
Verification
Re-run the warning after decomposition; if new moves dominate, then reduce chunk_large.
Risk
Delays a parameter fix, but prevents an ineffective change.
NS-cycle-001-12ParameterCarried oversaturationReviewer's proposal (deepseek-v4-pro)

Many high-income active runs end with groups at 20 that did not start there.

Change. Raise frontier_premium in steps, beginning with 0.9, while holding frontier fixed and monitoring distributional effects.

Verify. Re-run the batch; expect saturation_high share to fall substantially, but not eliminate all gains.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI02)
Evidence
e3-gbr-greedy-marginal 96 per cent of runs, median 8 groups; e3-kor-greedy-marginal 95 per cent, median 8 groups [checks].
Hypothesis
The current frontier_premium of 0.60 does not make the top of the scale expensive enough under high income and greedy spending.
Expected effect
Would reduce the share of runs with saturated groups and increase differentiation among high performers.
Verification
Re-run the batch; expect saturation_high share to fall substantially, but not eliminate all gains.
Risk
May over-penalise high scorers and reduce realistic high-end progress.
NS-cycle-001-13MechanicCarried oversaturationReviewer's proposal (deepseek-v4-pro)

Weak groups in Kenya can be driven to zero and remain there, especially under hold and mirror-peer.

Change. Apply a score-sensitive shock scaling such as min(1, score/10) or a floor that leaves weak groups at a small positive level, rather than reducing global shock magnitudes.

Verify. Re-run Kenya experiments; saturation_low should fall without eliminating shock losses altogether.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI03)
Evidence
e3-ken-hold saturation_low 31 per cent of runs; e3-ken-mirror-peer 26 per cent [checks].
Hypothesis
Shock damage is proportional to exposure but not to the group's starting level, so low-score groups can be eliminated by a single large shock.
Expected effect
Would reduce pathological zero saturation while preserving relative vulnerability across groups.
Verification
Re-run Kenya experiments; saturation_low should fall without eliminating shock losses altogether.
Risk
May understate the collapse risk of very weak groups.
NS-cycle-001-14Harness and dataCarried overdegenerate strategyReviewer's proposal (deepseek-v4-pro)

Greedy marginal is the best policy on every objective for three of five nations, and the same move is repeated in most rounds in several experiments.

Change. Add a sequencing-aware policy such as greedy with a two-round lookahead on the same value model, and count levels already in delivery when measuring gaps or remaining room.

Verify. Compare policies across all five nations; if the lookahead beats greedy on index or resilient score, replace the default.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI04)
Evidence
Research notes: greedy best for 3 of 5; same_action warnings for e3-kor-mirror-peer median 95 per cent, e3-ken-mirror-peer 65 per cent, e3-ken-greedy-marginal-10y 80 per cent [checks].
Hypothesis
The policy set lacks a comparator that accounts for multi-year delivery lags, so greedy marginal wins too easily.
Expected effect
Would provide a stronger benchmark and reduce repeated identical moves.
Verification
Compare policies across all five nations; if the lookahead beats greedy on index or resilient score, replace the default.
Risk
More complex policy may be harder to interpret and verify.
NS-cycle-001-15Harness and dataCarried overdata gapReviewer's proposal (deepseek-v4-pro)

No backcast comparison exists, so the model cannot be tested against observed historical capability changes.

Change. Construct reconstructed nation_states rows for KOR 1990, EST 1995, ARE 2005, SGP 1990 and IRL 1995, plus CHL and POL as hold-outs, with provenance and confidence grades, and add scripted historical shock schedules.

Verify. Run an E4 batch and compare simulated backcasts with observed historical scores.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI05)
Evidence
Both experiment reports end with 'No backcast comparison' [TWO_EXPERIMENT_REPORTS].
Hypothesis
Reconstructed historical states and event schedules would allow a meaningful out-of-sample test of the model's dynamics.
Expected effect
Would enable backcast scoring and reveal whether the model's decay, shock and propagation dynamics reproduce history.
Verification
Run an E4 batch and compare simulated backcasts with observed historical scores.
Risk
Reconstructed data quality may be low and could mislead calibration if treated as observed.
NS-cycle-001-16MethodologyCarried overmethodology questionReviewer's proposal (deepseek-v4-pro)

The tier rank chooses the same best policy as the capability index for all five nations and ties policies for three, while tier_jump warnings show tier movement is noisy.

Change. Use capability index and score_sum as the objectives policies optimise and are ranked by; retain tier rank and Tier 1 count as reported outcomes, not primary objectives.

Verify. Confirm policy ranking remains stable and that dropping tier rank from objectives does not change the recommended best policy.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI06)
Evidence
F-cycle-001-06: tier rank same best policy for 5 of 5 and ties 3; tier_jump warnings all experiments, including hold [checks].
Hypothesis
The lexicographic Pareto tier rank adds little decision value over the capability index and score_sum, but may still be a useful reported diagnostic.
Expected effect
Would reduce noise in policy selection while preserving the non-linear top-end information for descriptive analysis.
Verification
Confirm policy ranking remains stable and that dropping tier rank from objectives does not change the recommended best policy.
Risk
Could lose a signal that matters for top-ranked nations if the capability index is too coarse.
NS-cycle-001-17ParameterCarried overdead parameterReviewer's proposal (deepseek-v4-pro)

Many scalar parameters show zero sensitivity in the single Korea greedy sweep, but this may not generalise across nations, policies or scenarios.

Change. Run the sensitivity sweep across KOR, EST and KEN, under hold and greedy, plus a stress scenario, before removing any parameter.

Verify. Compare sensitivity ranks across conditions; remove only parameters inert in all.

not chosen for cycle 2

The finding behind it (F-cycle-001-AI07)
Evidence
Sensitivity table: 23 parameters with max_rel_change 0.0000 or below 0.001 [sensitivity]; F-cycle-001-09 already flags this.
Hypothesis
Parameters inert under one baseline may become active under low-income or stress conditions.
Expected effect
Would identify genuinely dead parameters and avoid deleting context-dependent ones.
Verification
Compare sensitivity ranks across conditions; remove only parameters inert in all.
Risk
More computational cost, but affordable for 23 candidate parameters.

The reviewer's review

What the reviewer (deepseek-v4-pro) made of the cycle, given the batch summary, the checks, the rule findings and two reports. Its proposals appear above and always wait for approval.

Batch cycle-001 shows a model in which the hold policy decays the capability index for all five e3 nations over 20 years, with median changes from -0.31 for Great Britain (16.454 to 16.142) to -1.10 for Estonia (11.487 to 10.589) [batch_summary]. Active policies reverse some of this: greedy_marginal is best in median index for all five, but the gain over holding is uneven, from +0.98 points for Kenya to +2.38 for Brazil [research_notes]. The e0-null run for Korea falls to 6.214 after 30 years, consistent with no income by design. Shocks are a large drag: removing the shock library raises median index by 0.205 to 1.509 points across e3 experiments, with Kenya hold benefiting by 1.473 and Korea hold by 1.008 [batch_summary, probe_attribution]. Saturation is common in high-income active runs: 95-96 per cent of Korea and Great Britain greedy runs end with at least one group at 20 that did not start there, median 8 groups [checks]. Low-rated Kenya can be driven to zero groups: 31 per cent of hold runs and 26 per cent of mirror-peer runs end with a group at 0 that did not start there [checks]. The graph's busiest edges are Semiconductors & Advanced Computing to Artificial Intelligence and to Economic Leverage & Dependence, implying technology investments spread widely [research_notes]. The sensitivity sweep shows the frontier parameter dominates, with a relative change of 1.000 at +-20 per cent, while many scalars show zero movement in these probes [sensitivity]. Policy ranking is stable for the best policy but horizon changes choices: 10-year greedy stops investing in slow builds near its horizon [research_notes]. Tier measures are noisy: tier_jump warns in all experiments, including hold, with up to six tiers in five years [checks].

  • Greedy's advantage is largest for nations that already have more capability

    The median index gain from greedy over holding is +0.98 for Kenya, +2.21 for Great Britain, +2.27 for Korea, +2.36 for Estonia and +2.38 for Brazil, suggesting the policy's returns are constrained by low income in weak nations.

    Research notes: what greedy is worth over holding [baseline_comparison].

  • The scenario library's shocks are priced very differently across nations

    Removing the shock library raises median index by 0.205 to 1.509 points across e3 experiments; the largest benefits appear in Kenya hold (1.473) and Estonia hold (1.402), showing weak nations bear more shock cost.

    Research notes: probe_attribution [probe_attribution]; batch summary no_shocks_d_index column [batch_summary].

  • Technology edges propagate strongly through the graph

    Semiconductors & Advanced Computing to Artificial Intelligence is the busiest edge per run in the batch, carrying +0.51 points overall and +1.38 points in Kenya greedy, while Semiconductors to Economic Leverage & Dependence also carries significant change.

    Research notes top_edges [top_edges]; Kenya report top edges [TWO_EXPERIMENT_REPORTS].

  • The largest moves by credits are not necessarily the most valuable

    In Korea greedy, removing any single one of the five largest moves changes the index by only -0.020 to -0.012, and large moves come late when income is highest; Kenya shows similarly small single-move attribution.

    Korea and Kenya experiment reports, Why sections [TWO_EXPERIMENT_REPORTS].

  • Horizon changes the strategy

    The 10-year greedy stops investing in slow builds near its horizon, so the median index and strategy differ from the 20-year and 30-year runs.

    Research notes: greedy by horizon [objective_distributions].

  • Tier movement is sensitive even without policy moves

    Hold experiments show tier_jump warnings, with Korea hold recording up to 4 tiers gained within five years in 25 runs and Kenya hold 3 tiers in 1 run, so events and propagation alone can produce large tier changes.

    Checks tier_jump warnings [checks].

  • Critique of a rule finding

    F-cycle-001-04: I disagree with lowering chunk_large from 0.05 to 0.03 before decomposing the one-year moves; the move_without_shock check may include delivery from earlier multi-year build/buy/partner decisions, so chunk_large may not be the sole cause.

  • Critique of a rule finding

    F-cycle-001-06: I disagree with dropping tier rank from the objective set before checking whether the lexicographic tier rank carries information in tail runs or hold-out nations; the current batch has only five nations and tier rank may still add value at the top.

  • Critique of a rule finding

    F-cycle-001-07: I disagree with setting frontier_premium to 0.9 solely on saturation warnings; the sensitivity table shows frontier_premium changes the objective only 0.0145 at +-20 per cent, so saturation may be driven more by the frontier threshold or chunk sizes.

  • Critique of a rule finding

    F-cycle-001-08: I disagree with scaling every shock by min(1, score/10) as a first fix; it changes the meaning of exposure for weak groups and may mask where resilience is actually missing. A floor or buffer-based absorption is preferable.

Parameter judgements

The reviewer's verdict on each parameter or family of parameters: too high, too low or about right, with what it would set instead. The 2026 starting scores are fixed inputs and are never judged.

The AI reviewer's verdict on each parameter or family of parameters
ParameterNowVerdictSuggestedWhy
frontier17.0Cannot tellElicit a plausible range, e.g. 14-20, and test both endsThe frontier parameter dominates the sensitivity sweep, so a single value cannot be judged from one batch.Sensitivity table shows max_rel_change = 1.000 for frontier at +-20 per cent [sensitivity].
convexity and frontier_premiumconvexity 2.0-2.5 by domain; frontier_premium 0.60Cannot tellTest frontier_premium from 0.6 to 1.2 while holding frontier fixedSaturation warnings suggest the combined cost of high scores may be too low, but the two parameters confound and frontier_premium alone has small sensitivity.Sensitivity table gives frontier_premium max_rel_change = 0.0145; saturation_high warnings affect 64-96 per cent of greedy runs in GBR, KOR, EST and BRA [sensitivity, checks].
chunk_large0.05Too high0.03 if a diagnostic confirms that new large chunks, not stacked delivery from earlier years, cause the movesIt permits one-year moves above 3 points in the absence of shocks, which is implausible for most capability groups.move_without_shock warnings: KOR random 3.84 points, GBR mirror-peer 3.33 points, KOR greedy 3.20 points, GBR random 3.18 points [checks].
shock magnitudes (low/high)0.60 / 1.20Too highDo not lower globally; apply score-sensitive scaling or a floor to weak groupsThe same global magnitudes produce disproportionate losses in low-rated nations and can drive groups to zero.Removing shocks raises Kenya hold index by 1.473, compared with 1.008 for Korea hold; saturation_low warns 31 per cent of Kenya hold runs end with a group at 0 [batch_summary, checks].
decay rates by domaintechnology 0.05 built / 0.09 bought; institutions 0.01 / 0.03; other domains betweenAbout rightLeave unchanged pending backcast and stress testsHold-policy declines are moderate and ordered by domain class, with no sign of runaway decay.Hold medians decline from -0.31 to -1.10 index points over 20 years across five nations [batch_summary]; domain class decay values are in the domain table [domain_class_values].
credit function coefficientscredit_eta = 1.00, headroom_base = 0.10, headroom_slope = 0.30Cannot tellRetain until the multi-nation, multi-policy sensitivity sweep distinguishes dead versus context-dependent parametersOnly credit_eta shows a modest sensitivity, while headroom parameters show zero in a single KOR greedy sweep; this may not mean they are inert for other nations.Sensitivity table: credit_eta max_rel_change = 0.0087; headroom_base and headroom_slope = 0.0000 [sensitivity].
absorption_max0.75About rightLeave unchangedIts sensitivity is modest and the mechanism operates through buffer means, which is plausible.Sensitivity table: absorption_max max_rel_change = 0.0045 [sensitivity].

Research notes

What the cycle taught that is not a defect, as written at the time.

  • Policy ranking by median index at 20 years is not the same for every nation: BRA: greedy_marginal > mirror_peer > random > hold; EST: greedy_marginal > mirror_peer > random > hold; GBR: greedy_marginal > random > mirror_peer > hold; KEN: greedy_marginal > mirror_peer > random > hold; KOR: greedy_marginal > mirror_peer > random > hold [baseline_comparison].
  • What greedy is worth over holding, in median index points at 20 years: KEN +0.98, GBR +2.21, KOR +2.27, EST +2.36, BRA +2.38. Low-rated nations gain least, because income is calibrated to the cost of their position [objective_distributions].
  • Removing the shock library raises the median index by 0.205 to 1.509 points at 20 years across E3 experiments: the cost of the scenario library's risks, as the model prices them [probe_attribution].
  • Greedy by horizon (median index): KEN: 10y 7.25, 20y 7.38, 30y 7.52; KOR: 10y 17.41, 20y 17.98, 30y 18.08. The 10-year greedy stops investing in slow builds near its horizon, so horizons recommend different strategies [objective_distributions].
  • Across the batch, the graph's busiest edges are Semiconductors & Advanced Computing to Artificial Intelligence (+0.51 points a run); Semiconductors & Advanced Computing to Economic Leverage & Dependence (+0.19 points a run); Economic Output & Productivity to Fiscal Capacity & Public Finance (+0.18 points a run) [top_edges].

Every check that warned or failed

From the loop's history, with the check's category, for filtering.

69 of 69 checks

Check
Category
Experiment
Status
Detail
tier_jumpplausibilitye3-gbr-holdwarnlargest gain in one domain within five years: 4 tiers (8 simulations above 2)
move_without_shockplausibilitye3-gbr-randomwarnlargest one-year move in a group with no shock landing: 3.18 points; 3% of simulations have one above 3
tier_jumpplausibilitye3-gbr-randomwarnlargest gain in one domain within five years: 4 tiers (4 simulations above 2)
saturation_highsaturatione3-gbr-randomwarn65% of simulations end with a group at 20 that did not start there (median 1 groups)
move_without_shockplausibilitye3-gbr-greedy-marginalwarnlargest one-year move in a group with no shock landing: 3.20 points; 67% of simulations have one above 3
tier_jumpplausibilitye3-gbr-greedy-marginalwarnlargest gain in one domain within five years: 3 tiers (12 simulations above 2)
saturation_highsaturatione3-gbr-greedy-marginalwarn96% of simulations end with a group at 20 that did not start there (median 8 groups)
move_without_shockplausibilitye3-gbr-mirror-peerwarnlargest one-year move in a group with no shock landing: 3.33 points; 55% of simulations have one above 3
tier_jumpplausibilitye3-gbr-mirror-peerwarnlargest gain in one domain within five years: 4 tiers (8 simulations above 2)
tier_jumpplausibilitye3-kor-holdwarnlargest gain in one domain within five years: 4 tiers (25 simulations above 2)
move_without_shockplausibilitye3-kor-randomwarnlargest one-year move in a group with no shock landing: 3.84 points; 3% of simulations have one above 3
tier_jumpplausibilitye3-kor-randomwarnlargest gain in one domain within five years: 5 tiers (82 simulations above 2)
saturation_highsaturatione3-kor-randomwarn57% of simulations end with a group at 20 that did not start there (median 1 groups)
move_without_shockplausibilitye3-kor-greedy-marginalwarnlargest one-year move in a group with no shock landing: 3.20 points; 2% of simulations have one above 3
tier_jumpplausibilitye3-kor-greedy-marginalwarnlargest gain in one domain within five years: 6 tiers (100 simulations above 2)
saturation_highsaturatione3-kor-greedy-marginalwarn95% of simulations end with a group at 20 that did not start there (median 8 groups)
tier_jumpplausibilitye3-kor-mirror-peerwarnlargest gain in one domain within five years: 4 tiers (36 simulations above 2)
saturation_highsaturatione3-kor-mirror-peerwarn76% of simulations end with a group at 20 that did not start there (median 1 groups)
same_actiondegeneracye3-kor-mirror-peerwarnthe most repeated move (group and mode) appears in a median 95% of rounds
tier_jumpplausibilitye3-est-randomwarnlargest gain in one domain within five years: 3 tiers (4 simulations above 2)

Showing 1–20 of 69 checks · page 1 of 4