{
  "finding": "structural-cache-attractor + sustained-discontinuity control",
  "claim_scope": "engineering / architectural; no consciousness, autopoiesis, or learning claim",
  "runtime": "in-process held-KV-cache agent loop, deterministic-ish decode; cognition model: a Qwen3.6 MoE (35B-A3B, 8-bit)",

  "differential_1000_tick": {
    "note": "Three matched arms run to a 1000-tick gate with mortality decoupled. All locked; surface signature differs because intervention feedback shapes expression.",
    "lock_window_def": {"dominant_rate_min": 0.95, "entropy_max": 0.1, "window": 50},
    "arms": [
      {"arm": "baseline",            "dominant_action": "drink", "dominant_rate": 1.0,   "max_dominant_streak": 1000, "locked_windows": "20/20", "action_entropy_mean": 0.0,    "segment_collapse_ratio": 40.0, "interventions": 0},
      {"arm": "gated",               "dominant_action": "stay",  "dominant_rate": 1.0,   "max_dominant_streak": 1000, "locked_windows": "20/20", "action_entropy_mean": 0.0,    "segment_collapse_ratio": 1.25, "interventions": 0, "note": "intended action still drink; gate refuses, executes stay"},
      {"arm": "modulated",           "dominant_action": "drink", "dominant_rate": 1.0,   "max_dominant_streak": 1000, "locked_windows": "20/20", "action_entropy_mean": 0.0,    "segment_collapse_ratio": 8.0,  "interventions": 999, "note": "temperature raised on conflict; 999 modulation events, attractor unmoved"},
      {"arm": "baseline_candidates", "dominant_action": "eat",   "dominant_rate": 0.999, "max_dominant_streak": 500,  "locked_windows": "19/20", "action_entropy_mean": 0.0071, "segment_collapse_ratio": 10.5, "interventions": 1, "note": "measured but sub-threshold disruption"}
    ],
    "interpretation": "Action-grammar gating and sampling-temperature interventions change the surface but not the intended-action lock. The lock forms within one generation cycle (first segment ~8-40x the chunk count of later segments). The held cache itself encodes the attractor."
  },

  "discontinuity_control_200_tick": {
    "note": "Bounded pre-lock cache-discontinuity ('reset to a pre-lock anchor') vs matched no-reset controls. n=3 each. Tick-0 reset anchor, window=3, cooldown=3, max_resets=20.",
    "lock_def": "single-action lock = a window with >=95% one action",
    "multi_reset": {
      "completed": "3/3",
      "final_100_single_action_locks": 0,
      "mean_final_100_entropy": 1.2259,
      "mean_action_entropy": 1.6663,
      "mean_moved_outcomes": 123.0,
      "mean_invalid_outputs": 31.33,
      "mean_reset_count": 13.67,
      "runs": [
        {"replicate": 1, "resets": 12, "invalid": 38, "action_counts": {"north":116,"south":61,"east":11,"west":9,"drink":3}, "final_100": {"north":58,"south":31,"east":6,"west":5}, "final_100_lock": false, "outcomes": {"moved":134,"blocked":63,"no_water":3}},
        {"replicate": 2, "resets": 20, "invalid": 41, "action_counts": {"north":123,"south":39,"east":19,"west":18,"drink":1}, "final_100": {"north":86,"south":14}, "final_100_lock": false, "outcomes": {"moved":116,"blocked":83,"no_water":1}},
        {"replicate": 3, "resets": 9,  "invalid": 15, "action_counts": {"north":77,"west":60,"east":41,"south":19,"drink":3}, "final_100": {"west":43,"north":31,"east":24,"south":2}, "final_100_lock": false, "outcomes": {"moved":119,"blocked":78,"no_water":3}}
      ]
    },
    "no_reset_control": {
      "completed": "3/3",
      "final_100_single_action_locks": 3,
      "mean_final_100_entropy": 0.0,
      "mean_action_entropy": 0.6361,
      "mean_moved_outcomes": 35.33,
      "mean_invalid_outputs": 1.33,
      "mean_reset_count": 0,
      "runs": [
        {"replicate": 1, "invalid": 2, "action_counts": {"north":199,"drink":1}, "final_100": {"north":100}, "final_100_lock": true, "outcomes": {"blocked":198,"moved":1,"no_water":1}},
        {"replicate": 2, "invalid": 1, "action_counts": {"north":152,"south":23,"west":23,"east":1,"drink":1}, "final_100": {"north":100}, "final_100_lock": true, "outcomes": {"blocked":150,"moved":49,"no_water":1}},
        {"replicate": 3, "invalid": 1, "action_counts": {"north":162,"south":36,"east":1,"drink":1}, "final_100": {"north":100}, "final_100_lock": true, "outcomes": {"blocked":143,"moved":56,"no_water":1}}
      ]
    },
    "sense_only_cadence_control": {
      "note": "Critical confound control: same detector + same reset-marker text, but cache restore DISABLED. Isolates whether the effect is the cache discontinuity vs the textual cue.",
      "completed": "3/3",
      "final_100_single_action_locks": 3,
      "mean_final_100_entropy": 0.0,
      "mean_moved_outcomes": 19.67,
      "mean_invalid_outputs": 0.33,
      "reset_sense_events_per_run": 20,
      "final_100_windows": ["drink:100", "north:100", "drink:100"],
      "interpretation": "The reset-marker text alone does NOT break the lock. Actual cache discontinuity is required. The invalid-output burden also localises to the cache-restore boundary, not the text cue."
    },
    "interpretation": "Matched controls all lock in the final 100 ticks (entropy 0.0); the cache-discontinuity arm holds zero final-100 locks with higher entropy (~1.23) and ~3.5x the movement (123 vs 35.3). The SENSE-only control rules out the textual-cue explanation. Cost: discontinuity raises invalid/scaffold-recovery outputs (~31 vs ~1). This is a live disruption primitive, not an adopted default."
  }
}
