feat(configs): author T7 integrated continuous-C3 cells (6 MUST arms) - #249
Conversation
Promote the locked T7 continuous-2D integrated-C3 cell out of evaluation forensics into committed configs, ahead of the n>=8 ranking (Stage 6). Each of the 6 MUST arms gets one combined config (food + predator + thermotaxis) sharing an identical locked env/reward/satiety block; only the brain differs. Locked difficulty (full 5-arm @ n=4): count 2 / speed 0.4 / detection 15 / steep predator field decay 5 (real flee-direction signal, not the pre-fix saturated-field racing) / thermal linear gradient 0.4 / 60 mm. count 2 (over count 3) preserves rank structure; supersedes the recalibration's recommended count 1 / thermal 1.5. Per-arch recipes tuned ON the integrated cell (they do not port between cells): LSTM flat entropy 0.02 (drop the peak-anneal schedule -> 35->42), CfC entropy 0.01 (40->48), Transformer 0.005/lr 1e-4 (stability; lr 3e-4 collapses), MLP keeps 0.08->0.02/800ep (the leader), connectome 0.005 + predator+thermo projections (35 is its structural ceiling â tuning only hurts). FeedforwardGA runs via the env's discrete-action fallback (no continuous head, no code change); champion full-clear ~0-23% (below the connectome floor), optimiser-fundamental last place -> resolves the line-381 repair-or-drop as "keep the discrete cell, document, no repair". Integrated cell discriminates: MLP 80 >> Transformer 52 > CfC 48 > LSTM 42 > connectome 35 >> GA ~12. Also records the C1 substrate-scale-consistency resolution (C1 stays 20 mm; foraging difficulty is scale-invariant by construction, confirmed 100% at 60 mm). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. ð âđïļ Recent review infoâïļ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ð Files selected for processing (1)
ð§ Files skipped from review as they are similar to previous changes (1)
ð WalkthroughWalkthroughSix new YAML configuration files are added for the integrated C3 combined-behaviour task (food chemotaxis + predator evasion + thermotaxis with klinotaxis sensing) on a continuous-2D 60mm arena, covering MLPPPO, LSTMPPO, CfCPPO, TransformerPPO, ConnectomePPO, and FeedforwardGA architectures. Three lines in the Phase 6 task tracker record T7 Stage 3 completion, locked parameters, and substrate-scale decisions. ChangesC3 Integrated Scenario and Evolution Configs
Estimated code review effortðŊ 2 (Simple) | âąïļ ~10 minutes Possibly related PRs
Poem
ðĨ Pre-merge checks | â 5â Passed checks (5 passed)
âïļ Tip: You can configure your own custom pre-merge checks in the settings. âĻ Finishing Touchesð§Š Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
ðĪ Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@configs/evolution/feedforwardga_small_continuous2d_combined_klinotaxis.yml`:
- Around line 5-7: Update the filename pattern referenced in the header comment
(lines 5-7) from `*_small_combined_continuous2d_klinotaxis.yml` to
`*_small_continuous2d_combined_klinotaxis.yml` to match the actual scenario
filenames committed in this PR, where the word order of "continuous2d" and
"combined" has been reversed.
In `@openspec/changes/phase6-tracking/tasks.md`:
- Line 362: The entries at lines 362, 382, and 393 are marked as resolved on
2026-06-21, but the current date is 2026-06-20, making these completion dates in
the future. Update each of these entries to use the actual completion date (if
already completed today) or remove the future date and mark the items as pending
until the correct date arrives. Check all three locations mentioned: line 362
with the "STAGE 3 ASSEMBLY + DIFFICULTY/RECIPE LOCK DONE" entry, and the
additional lines at 382 and 393, ensuring no future-dated completions appear in
the tracker.
ðŠ Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
âđïļ Review info
âïļ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 4a53c177-24a5-4a8a-9bda-35cc2ec6d9c9
ð Files selected for processing (7)
configs/evolution/feedforwardga_small_continuous2d_combined_klinotaxis.ymlconfigs/scenarios/foraging_predator_thermal/cfcppo_small_continuous2d_combined_klinotaxis.ymlconfigs/scenarios/foraging_predator_thermal/connectomeppo_small_continuous2d_combined_klinotaxis.ymlconfigs/scenarios/foraging_predator_thermal/lstmppo_small_continuous2d_combined_klinotaxis.ymlconfigs/scenarios/foraging_predator_thermal/mlpppo_small_continuous2d_combined_klinotaxis.ymlconfigs/scenarios/foraging_predator_thermal/transformerppo_small_continuous2d_combined_klinotaxis.ymlopenspec/changes/phase6-tracking/tasks.md
| - [x] T7.prep.continuous_behaviours.s1_substrate_canary **Stage 1 â substrate behaviour canary (MLP + Transformer; resolved 2026-06-14).** Authored predator-only + thermotaxis-only configs for the two robust arms on the calibrated substrate + tuned recipe, run against the Euclidean-coherent reward (`T7.prep.reward_coherence`). **Gate met â the substrate is learnable.** **Calibration:** the T4-carried difficulties were NOT in band (predators ~95% lethal even trained; thermal gradient 1.5 forced MLP into degenerate park-in-comfort/starve â number-matched T4 values are non-commensurable). Calibrated DOWN on the continuous substrate's own terms (reward frozen): **predator `count 1 / speed 0.3 / detection_radius 5`** (+ 1.0 mm damage-radius fallback) â MLP learns evasion (predator-death 65â59%, survival ~41%, foraging maintained); **thermal `gradient_strength 1.25`** â avoidance learnable with foraging preserved, in-band on both arms. Gentler side leaves stacking headroom for the integrated cell (Stage-3 relaxes further as pressure compounds). **Architectural finding (preview of the ranking):** the Transformer does **not** learn reactive continuous predator-evasion at any difficulty or temporal-window length (flat death-trend) â ruled out as a wiring/sensor bug (identical sensors/env to MLP, which learns) and a window-length artifact (flat at window 4/8/16); a robust architecture result, not a substrate defect. The two-robust-arm check did its job: one arm learns + one doesn't â arm-specific, not substrate. **Deliverables:** `{mlpppo,transformerppo}_small_continuous2d_predator_klinotaxis.yml` (in `configs/scenarios/pursuit/`) + `..._thermal_klinotaxis.yml` (in `configs/scenarios/thermal_foraging/`). Forensics fold into the T7 logbook. | ||
| - [ ] T7.prep.continuous_behaviours.s3_generic_and_assemble **Stage 3 â generic-arm behaviours + assemble integrated configs.** After Stage 1 proves the substrate and Stage 2 brings up the connectome: bring **LSTM/CfC** to their predator + thermo ceilings as part of the **C1/C2 convergence evaluations** (nâĨ4 + time-boxed per-arch tuning â promoted from n=1 smokes 2026-06-14, see the C1/C2 convergence checkpoint; MLP/Transformer already canaried at Stage 1), then author the **6 combined integrated-C3 continuous configs** (`*_small_continuous2d_combined_klinotaxis.yml`, one per MUST family) mirroring T4's grid `foraging_predator_thermal/*_small_combined_klinotaxis.yml` reward *formula* + behaviour composition, on the calibrated substrate + tuned recipe, with **substrate difficulty calibrated for multi-objective learnability** (Stage-1 per-behaviour calibration carried in, then relaxed further as stacked pressure compounds â exactly as T4 dropped combined-cell `predator_damage` 20â6; reframed 2026-06-14, two-regimes checkpoint â difficulty is continuous-native, NOT number-matched to T4). **GATE: re-calibrate predator + thermal difficulty on the corrected substrate FIRST (the Stage-1 bands are pre-fix â calibrated 2026-06-14, before the #239/#240/#241 reward+channel+sensing fixes; see the 2c difficulty-provenance caveat above). Use a fast MLP canary to find a band that is pressured-but-learnable AND spreads the arms â 2c's 90% at the provisional `predator_damage 10` is a soft-ceiling warning that a too-easy band won't discriminate at C3.** | ||
| - **RE-CALIBRATION DONE (2026-06-18, branch `openspec/t7-difficulty-recalibration`).** Four findings: **(1) predator DAMAGE does not bind** â a forage-to-complete worm is 3.3Ã faster than the speed-0.3 predator and out-heals chip damage via `food_healing`, so count1â2 Ã damage 14â22 all sit at 80â99% survival. **The binding lever is predator SPEED.** **(2) The MLP canary must use biological klinotaxis predator sensing, NOT `_oracle`** (the Stage-1 canary + my first sweep used oracle â over-optimistic; the T4 ranking arms use `predator_mechanosensation_klinotaxis` + `predator_chemosensation_klinotaxis`). Methodology lock: all generic arms use klinotaxis predator sensing. **(3) The connectome's apparent evasion "cliff/floor" was the documented constant-entropy late drift (logbook 023 R2b / T4.0d), NOT an architectural ceiling** â at `entropy_coef 0.02` it peaks ~40% then collapses (worse with more budget/lr); `entropy 0.005` (the grid connectome lock) stabilises it (holds, no collapse over 3000ep). **Connectome continuous canonical entropy corrected 0.02â0.005** in the merged 2b-predator + 2c-C2 configs (re-validated n=4: 2b ~50% â prior 51.5% but stable; 2c ~90% â prior 89.5%, mid-run wobble gone). **(4) Recommended discriminating band (MLP-klino vs connectome@ent0.005, dmg15, biological sensing, n=2):** **C2 = count 2 / speed 0.4 / damage 15** â MLP-klino 78% / connectome 43% (both pressured + on-board, spread +35; each predator slower than the worm = pack-cornering, biologically clean); **C3 = relax to count 1 / speed 0.4** (thermal stacks on top). **Thermal: gradient 1.5** (up from the pre-fix 1.25; ~14% lethality) â NB foraging-through-thermal is bimodal (forage-vs-collapse basin) at every gradient â Stage-3 needs nâĨ4 + a foraging warm-up. **These difficulty values are recommended, NOT yet committed to configs â they get locked at the Stage-3 cross-arm C2 (all 6 MUST arms @ count2/speed0.4, connectome @ent0.005), which confirms the strong arms (LSTM/CfC/Transformer) spread and nobody unexpectedly floors before they enter the C3 configs. Only the entropy-recipe fix is committed now.** Assembly is known-feasible â a thermotaxis+oxygen+predators-on-continuous proof-of-concept was validated during the renderer manual review (gitignored `tmp/`). These configs are what the `T7.*.c3_integrated` ranking cells (Stage 6) consume. | ||
| - **STAGE 3 ASSEMBLY + DIFFICULTY/RECIPE LOCK DONE â 6 combined continuous-C3 configs committed (2026-06-21, branch `openspec/t7-c3-cell-finalized`).** Authored the **6 integrated-C3 continuous configs** â `configs/scenarios/foraging_predator_thermal/{mlpppo,lstmppo,cfcppo,transformerppo,connectomeppo}_small_continuous2d_combined_klinotaxis.yml` + `configs/evolution/feedforwardga_small_continuous2d_combined_klinotaxis.yml` â each = the tuned per-arch brain + a shared locked env/reward/satiety block. **(Gate 2) Difficulty LOCKED: `count 2` / `speed 0.4` / `detection 15` / steep predator field `gradient_decay_constant 5` (REAL flee-direction signal â NOT the pre-fix saturated-field racing) / thermal LINEAR `gradient_strength 0.4` / `reward_mode distal_chemo_contact_trigger` / 60 mm.** This **supersedes** the recalibration's *recommended* `C3 = count 1 / speed 0.4`, thermal `gradient 1.5` (line 361): the actual C3 canary + full 5-arm @ n=4 found **`count 2`** preserves rank structure (count 3 over-compresses 2ndâ5th into 33â44) while staying learnable, and a **linear `gradient 0.4`** is the thermal form that pressures a gradient-sensing worm without flat saturation. **(Gate 1) The integrated cell DISCRIMINATES â full 5-arm @ n=4 final-quarter success: MLP 80 âŦ Transformer 52 > CfC 48 > LSTM 42 > connectome 35.** MLP (all-rounder) leads decisively; NOT the flat-compression tie of the T4 grid integrated cell â the per-behaviour profiles (MLP strong-both; CfC evasion-strong/thermo-weak; connectome evasion-weak) produce real separation. **(Gate 3) Per-arch recipes tuned ON the integrated cell (they do NOT port between cells):** **LSTM** flat `entropy 0.02` â dropping the peak-anneal schedule (its high early entropy handicaps it, same as CfC) lifts it 35â42; **CfC** `entropy 0.01` lifts it 40â48 (tight); **Transformer** `entropy 0.005` / `lr 1e-4` is load-bearing (lr 3e-4 collapses â22, learn-then-collapse); **MLP** keeps its `0.08â0.02/800ep` schedule (works for the leader); **connectome** `entropy 0.005` + predator+thermo projections â **`35` is its STRUCTURAL ceiling** (both tuning directions, more entropy + deeper forward pass, made it WORSE â the evasion-lag is architectural, not under-training). **(Gate 4 â resolves the line-381 GA repair-or-drop) FeedforwardGA brought up via the env's discrete-action fallback (`_apply_movement`; no continuous head, NO code change).** Champion full-clear ~0â23% (n=2; below the connectome floor 35) â bootstraps off 0 (progress fitness plateaus ~0.57â0.61) but the low ceiling is **optimiser-fundamental** (gradient-free in ~6 k-D), reproducing T4's ~0% and action-space-agnostic (T4 sep-CMA tie) â **Option A: keep the discrete fallback + document; no repair** (a continuous head won't lift an optimiser-bound last-place arm). **Full 6-arm picture: MLP 80 âŦ Transformer 52 > CfC 48 > LSTM 42 > connectome 35 âŦ GA ~12.** All n=4 (GA n=2); the Stage-6 cells re-run these locked configs at nâĨ8 for the ranking. *(Per-cell scales: C1 20 mm / C2·C3 60 mm â see the substrate-scale-consistency note above.)* |
There was a problem hiding this comment.
Avoid future-dated âresolvedâ entries in the tracker.
These lines mark items as resolved on 2026-06-21, which is in the future relative to today (June 20, 2026). Please use the actual completion date or mark as pending until that date.
Also applies to: 382-382, 393-393
ðĪ Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@openspec/changes/phase6-tracking/tasks.md` at line 362, The entries at lines
362, 382, and 393 are marked as resolved on 2026-06-21, but the current date is
2026-06-20, making these completion dates in the future. Update each of these
entries to use the actual completion date (if already completed today) or remove
the future date and mark the items as pending until the correct date arrives.
Check all three locations mentioned: line 362 with the "STAGE 3 ASSEMBLY +
DIFFICULTY/RECIPE LOCK DONE" entry, and the additional lines at 382 and 393,
ensuring no future-dated completions appear in the tracker.
The FeedforwardGA header referenced the sibling PPO C3 cells as *_small_combined_continuous2d_klinotaxis.yml, but they were committed as *_small_continuous2d_combined_klinotaxis.yml (the continuous2d/combined word order was reversed at rename). Match the actual filenames. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Codecov Reportâ All modified and coverable lines are covered by tests. ðĒ Thoughts on this report? Let us know! |
What
Promotes the locked T7 continuous-2D integrated-C3 cell out of evaluation forensics into committed configs, ahead of the nâĨ8 architecture ranking (Stage 6). Each of the 6 MUST arms gets one combined config (food + predator + thermotaxis active simultaneously) sharing an identical locked env/reward/satiety block â only the brain differs.
New configs (6):
configs/scenarios/foraging_predator_thermal/{mlpppo,lstmppo,cfcppo,transformerppo,connectomeppo}_small_continuous2d_combined_klinotaxis.ymlconfigs/evolution/feedforwardga_small_continuous2d_combined_klinotaxis.yml(launched viarun_evolution.py)Tracking (
phase6-tracking/tasks.md): Stage-3 assembly + difficulty/recipe-lock checkpoint, GA repair-or-drop resolution, and the C1 substrate-scale-consistency note.Why these values (the locked decisions)
count 2 / speed 0.4 / detection 15 / predator field decay 5 / thermal linear gradient 0.4 / 60 mm. The steep predator field gives a real flee-direction signal (not the pre-fix saturated-field racing).count 2preserves rank structure (count 3 over-compresses 2ndâ5th); supersedes the recalibration's recommended count 1 / thermal 1.5.0.02(dropping the peak-anneal schedule lifts it 35â42), CfC entropy0.01(40â48), Transformer0.005/lr1e-4(stability â lr 3e-4 collapses), MLP keeps0.08â0.02/800ep(the leader), connectome0.005+ predator+thermo projections (35 is its structural ceiling â tuning only hurt it).Result â the integrated cell discriminates
MLP 80 âŦ Transformer 52 > CfC 48 > LSTM 42 > connectome 35 âŦ GA ~12 (final-quarter success, n=4; GA n=2). Not the flat-compression tie of the T4 grid cell â the all-rounder (MLP) leads, the connectome's evasion-lag drags it to a structural floor.
Scope
This PR freezes the inputs the nâĨ8 ranking depends on. Out of scope (â follow-up PR): the nâĨ8 protocol wiring (per-seed sub-metric export + Wilcoxon/bootstrap harness) and the main ranking runs.
Verification
openspec validate phase6-tracking --strictpasses.tmp/links or home paths in committed content.ðĪ Generated with Claude Code
Summary by CodeRabbit
New Features
Documentation