{
  "id": "O0-CRP-028",
  "title": "NK-Model Scaling Toward Biological Realism (Track 3 R3)",
  "record_class": "SIMULATION",
  "version": "1.0.0",
  "status": "SUFFICIENCY_SCALES",
  "date": "2026-07-28",
  "program": "CONTACT_AND_REVELATION",
  "category": "emergence",
  "preregistration_version": "1.0.0",
  "preregistration_frozen_before_execution": true,
  "evidence_type": "COMPUTATIONAL SIMULATION",
  "replication_status": "NOT_APPLICABLE",
  "physical_validation": "NONE",
  "source_proposition": "Followup R3 to O0-CRP-023. Tests whether Hatcher's argument (that evolutionary forces are empirically insufficient to explain biological order) gains force at biological-adjacent scale N=50, G=2000.",
  "parent_study": "O0-CRP-023",
  "related_records": ["O0-CRP-023"],
  "verdict": {
    "label": "SUFFICIENCY_SCALES",
    "random_search_no_gain": true,
    "frozen_stays_constant": true,
    "high_mutation_regression": true,
    "selection_beats_random_by_5pct": true,
    "mean_abs_delta_vs_theory": 0.0872,
    "max_abs_delta_vs_theory": 0.1358,
    "per_K_deltas": {"0": -0.1297, "2": -0.0294, "5": 0.0537, "10": 0.1358},
    "N": 50,
    "G": 2000,
    "n_seeds": 20
  },
  "key_findings": {
    "sufficiency_holds_at_larger_scale": "N=50, G=2000: all five sufficiency criteria pass, same as N=20, G=500 in CRP-023",
    "tournament_vs_random_gap_persists": "selection advantage over random search is 0.15-0.17 at N=50 (comparable to N=20)",
    "high_mutation_regression_persists": "excessive mutation reduces fitness relative to tournament at all K",
    "theory_matches_observation_within_010": "mean |delta vs theory| = 0.087 (below 0.10 tolerance)",
    "K10_overshoots_theory": "at K=10, tournament exceeds theoretical adaptive-walk bound by 0.136 - population-based search beats solo-walker prediction at high ruggedness"
  },
  "artifacts": {
    "preregistration": "preregistration.md",
    "scientific_record": "scientific_record.md",
    "runner": "src/run_study.py",
    "analyzer": "src/analyze.py",
    "summary": "results/summary.json",
    "trajectories": "results/raw/trajectories.jsonl",
    "figures": [
      "figures/01_final_fitness_by_K_and_config.png",
      "figures/02_trajectories_by_K.png",
      "figures/03_observed_vs_theory.png",
      "figures/04_scaling_comparison.png"
    ]
  },
  "reproducibility": {
    "runtime_seconds": 1051.8,
    "determinism": "full - fixed seeds throughout",
    "dependencies": ["python 3.10+", "numpy"],
    "note": "reuses O0-CRP-023 src via sys.path import"
  },
  "revision_history": [
    {"version": "1.0.0", "date": "2026-07-28", "notes": "Initial scientific record after preregistered execution"}
  ]
}
