56 Commits
Author SHA1 Message Date
Frank14f 1a8b994a03 refactor(workflow): update JFM research workflow and remove obsolete figures
Revise the JFM research workflow documentation to clarify project structure, decision-making processes, and tool routing. Remove outdated figures and images that are no longer relevant to the current manuscript. Ensure that the workflow aligns with the latest research objectives and safety protocols.
2026-08-11 21:25:33 +08:00
Frank14fandCursor 0ade812864 docs(jfm): establish traceable manuscript planning baseline
Track the research dossiers, section freezes, supporting manuscript materials, and round-aware agent controls so future drafting decisions can be reviewed across both repository mirrors.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-10 18:51:53 +08:00
Frank14fandCursor 140eea4d25 chore(repo): close out project indexes and evidence boundaries
Add a canonical src package index, synchronize cross-project status and root navigation, and ignore local generated/runtime payloads while preserving the documented solver and evidence boundaries.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 22:32:55 +08:00
Frank14fandCursor 86157c6f31 feat(drl): publish writing-ready documentation and training tables
Add indexed DRL pinball documentation, provenance-aware training CSV export, first-phase flow rendering, and audited reproduction assets so the retained results are ready for manuscript analysis.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 22:10:05 +08:00
Frank14fandCursor 7eab04869c feat(ccd): publish writing-ready corrected analysis
Consolidate the validated Karman CCD chain into a bounded, navigable package with reproducible diagnostics and lightweight plotting contracts while keeping dense evidence external.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 21:25:18 +08:00
Frank14fandCursor a451dca961 feat(theory): publish steady cloak result package
Freeze the bounded steady-flow evidence, reader documentation, lattice-exact plotting package, and reproducible diagnostics for writing and review.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 21:04:54 +08:00
Frank14fandCursor 3a12e29571 refactor(SR): consolidate Karman closeout evidence
Narrow active SR claims to Karman cloaking, preserve Illusion as an indexed historical route, and add readable provenance catalogs and acquisition documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-09 08:23:33 +08:00
Frank14fandCursor 08ee312ef7 feat(eval): add Legacy SR acquisition matrix
Extend the canonical Legacy collector to deploy hash-bound symbolic policies across training, generalization, and ablation scenarios with reproducible execution provenance.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 16:32:18 +08:00
Frank14fandCursor 326d642751 refactor(eval): consolidate drl-pinball reproduction
Retire duplicate reproduction paths in favor of the canonical V5 and Legacy runners, while preserving historical tooling in archives and publishing audited summary plots.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 16:19:11 +08:00
Frank14fandCursor 61e82ec90a feat(eval): publish cycle-mean wake acquisition
Add deterministic phase-filtered V5 and Legacy acquisition with complete-cycle mean fields, then evaluate controlled wakes against target and zero baselines offline.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 15:50:49 +08:00
Frank14fandCursor b144d62920 feat(ccd): freeze dynamic-increment analysis pipeline
Replace the legacy CCD workspace with acquisition, direct-dq, original and lagged CCD contracts so the DRL-versus-constant-mean mechanism is reproducible and fail-closed.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-07 16:41:00 +08:00
Frank14fandCursor 7323a235f4 refactor(SR): freeze compact legacy evidence package
Archive excluded experiments and superseded outputs so the active tree exposes only the auditable Kármán and Illusion workflow while preserving scientific provenance.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-06 22:16:53 +08:00
Frank14fandCursor b702fb7300 feat(train): freeze canonical V5 training release
Publish the unified scratch-training contract, compact best-policy bundles, calibrated targets, tests, and presentation-ready retained evidence while excluding archived and intermediate run payloads.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-04 14:12:27 +08:00
Frank14fandCursor 01645f8d1c feat(theory): establish steady-cloak analytical baseline
Freeze the source-derived action contract and direct q-in objective so the new MFS strip model and serial CFD runner provide a compact, auditable basis for the steady-cloak study.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-03 14:55:10 +08:00
Frank14fandCursor 2cf38b6cf9 feat(SR): publish canonical analysis package
Canonicalize V5 case identities and preserve the SR evidence chain while replacing ambiguous diagnostics with reproducible tables, phase-matched flow fields, and presentation-ready summaries.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 21:59:18 +08:00
Frank14fandCursor 213956d964 refactor(oid): reset analysis to claim-free core
Archive superseded studies and payload metadata while preserving a tested Schlegel LR/LE implementation with explicit scientific and physics contracts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-02 21:38:24 +08:00
Frank14fandCursor 8d760145de feat(ccd): add dual-clock field sampling
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 14:07:05 +08:00
Frank14fandCursor c9ce3e6dcb Add lightweight ParaView plotting interface
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-22 14:07:00 +08:00
Frank14fandCursor eac8c0018e feat(SR): complete article-grade symbolic regression evidence
Freeze the contract-audited discovery, closed-loop validation, robustness, plotting, and manuscript evidence so the SR section is reproducible and ready for paper development.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-21 20:06:13 +08:00
Frank14fandCursor ca8ee5f238 chore(SR): freeze legacy SR_analysis snapshot before contract repair
Create pre-fix baseline with:
- Manifest recording ignored NPZ hashes, model inventory, env versions
- Plan file for long-term SR Legacy Pipeline execution
- Snapshot of current stage_1_infer, PIPELINE, STAGE_1_INFER, results/README

This commit preserves the frozen historical state before Stage 1-3
contract repair begins. All canonical results are marked historical_frozen;
no formula or validation data will be overwritten during round 1.

Round 1 scope: legacy Karman (code Re 50/100/200/400) + Illusion (0.75L/1L).
V5, Vortex, unseen-Re, erase, 1.5L, and paper figures excluded.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 22:03:20 +08:00
Frank14fandCursor 4feac49f1c feat: eval benchmark + cloud-trained models replace train/
- eval/: 统一推理评估框架 (infer_train.py, infer_reproduce.py, viz_flow.py,
  viz_signals.py, generate_report.py, run_all.sh, scene_manifest.py)
- train/: 替换为云端正式训练产出,覆盖 11 个场景
  - Karman: Re100 (5 seeds), Re60/200/400 transfer
  - VarDist: d075/d15/d2 scratch
  - Illusion: 0.75L/1.0L/1.5L/2.0L scratch
- train_karman.py: 新增 --resume-from 断点续训支持
- calibrations: 17 组标定数据 (kar/ill 命名规范)
- scripts/: 7 个自动化训练脚本
- 清理旧 calibrations/shell scripts/visualize

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-12 23:56:02 +08:00
Frank14fandCursor f2f88c2442 feat(reproduce): legacy-test framework + fixed-inlet reproduce pipeline
- Track A (legacy_test): systematic validation scripts for all trained PPO
  models using LegacyCelerisLab. Each test script rebuilds the exact legacy
  CFD environment, runs deterministic inference, and compares against
  SR_analysis reference data using DTW-based comparison. Verified: Karman
  re100/re50/re200, Vortex lamb/taylor all pass (DTW > 0.95).

- Track B (reproduce): Phase 2 open-loop CFD validation + Phase 3 DRL
  inference using the legacy-compatible config (regularized inlet with
  neq_damp=1.0, matching the legacy NBB formula). The inlet scheme fix
  improves new-CFD Karman DTW from 0.916 to 0.943.

- Fixes: action_wrapper sign convention docstring, model inventory
  duplicate entries and missing models, stale config paths in legacy
  run_all_cases.py/run_illusion_vortex.py, illusion label formatting

- Add READMEs and run-all shell scripts for both tracks
- Add .gitignore entries for runtime output directories

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-12 23:09:53 +08:00
Frank14fandCursor 4360bb2047 feat(ccd): light reorganization — results/ dir, PIPELINE.md, numbered figures
- Add PIPELINE.md as primary entry (pipeline overview, conventions, results index,
  new training integration guide)
- Create results/ directory with numbered symlinks to all 16 core figures
- Copy final CCD JSON into results/ccd/
- Rewrite README.md to point to PIPELINE.md

Design follows SR_analysis lightweight pattern: clear structure,
small number of entry files, results/ as canonical output directory.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-05 18:15:12 +08:00
Frank14fandCursor 44f7687509 refactor(oid): lightweight reorganization — PIPELINE.md, scene_registry.json, move papers
- Move Sch12.md, Li22b.md → papers/ (reference papers, not code docs)
- Add PIPELINE.md — pipeline overview, scene table, conventions, quick commands
- Add scene_registry.json — machine-readable index (from configs.py + master_table.json)
- Rewrite README.md — lean entry point with file map + core results table

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-05 18:09:02 +08:00
Frank14fandCursor 1835f517e9 chore: SR pipeline restructuring + DRL training infrastructure
SR_analysis restructured:
- Stage 1/2/3/4 unified pipeline with per-stage docs
- Old scripts/sindy/validate moved to old/archive
- Results reorganized: formulas/validations/figures with scene_registry.json
- Added diagnostic plots and PIPELINE.md

drl_pinball/train:
- New illusion training pipeline: env_illusion.py, train_illusion.py
- Cross-Re transfer: crossre_transfer.sh, extend_transfer.sh
- Calibration data: 0.75L/1L/1.5L/2L + re60/re100/re200/re400
- Launch scripts for multi-GPU training

Cleaned 100+ intermediate/dead files from SR_analysis.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-05 17:36:29 +08:00
Frank14fandCursor 5f061bec06 feat(train): cross-Re transfer pipeline — re60/re200/re400 calibrations + script
- Add crossre_transfer.sh: calibrate → transfer-train for re60→re200→re400
- Add re60 config (ν=0.006667, SI=800, uniform+free-slip, very weak shedding)
- Calibrate re60, re200, re400: FORCE_SCALE, SENS_SCALE, dtw_norm_scale, SIM_BP
- Fix all paths: use DynamisLab submodule CelerisLab, remove external ~/CelerisLab
- Remove _clean_cache() from envs/calibrate — CelerisLab handles internally
- Move V4 backups to old/: env_karman_2000x600, train_karman_2000x600, etc.
- train_karman.py: save model + vecnormalize every episode (non-optional)
- Update TRAIN_KNOWLEDGE.md: file structure, calibration table, cross-re guide
- All 3 Re verified: 5-episode transfer test passed (re60: 0.64, re200: 0.43, re400: 0.49)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-03 00:21:49 +08:00
Frank14fandCursor b3ee72e144 feat(train): V5 parameterized training pipeline — Karman + Illusion verified
Calibration-driven, no_bias only, 2000x600 grid. All cases share unified
env/train/calibrate pattern. Multi-GPU server deployment ready.

Core additions:
- calibrate.py: Phase 0 calibration (karman/illusion), produces
  calibration.json with rounded FORCE_SCALE, SENS_SCALE, SIM_BP/VAL
- env_karman.py: parameterized Karman cloak env (calibration + config_path)
- env_illusion.py: illusion env with FFT harmonics target (S_DIM=14)
- env_vortex.py: vortex cloaking env (lamb/taylor, MAX_STEPS=150)
- train_karman.py, train_illusion.py: parameterized training scripts
- launch_multi.sh: sequential multi-GPU launcher (7-min staggered)
- SERVER_DEPLOY.md: complete server setup, calibration, training guide
- calibrations/re100/ & calibrations/illusion_1L/: pre-run calibrations

Fixes:
- SIM_VAL[-1] 0.95 -> 1.0 (r_sim maps to full [0,1] range)
- Cross-Re configs: re50/200/400 (viscosity-only variants)

Verified end-to-end on GPU0+GPU1:
- Karman V5 20-ep: best reward 0.459 at Ep16 (monotonic rise)
- Illusion 20-ep: best reward 0.224 at Ep19 (harmonics, DTW learning)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 20:10:27 +08:00
Frank14fandCursor b1ac9ceabb fix(SR): stage_3_validate.py all modes verified, legacy_karman_env.py cylinder order corrected
- Fix stage_3_validate.py Illusion PPO mode: observation was always zero
  (unused before, now builds correct 14-dim obs from flow field)
- Rewrite Illusion pysr mode: use sympy.lambdify + v23 structure,
  matches validate_karman approach. Verified similarity=0.975 (100 steps).
- Fix Karman pysr mode: strip "bias" from JSON feature_names before
  build_feature_matrix(add_bias=True), fix alpha→omega conversion.
  Verified similarity=0.887 (100 steps, matches old 0.888 at 160 steps).
- Fix legacy_karman_env.py cylinder order: front→TOP→BOTTOM matching
  training env (was front→BOTTOM→TOP). Also fix bias assignment.
  Verified via cylinder ID dump against training env layout.
- Remove dead eval_math() function.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 13:54:00 +08:00
Frank14fandCursor 9c3f93d58d fix(ccd): update run_zone_ccd.py zone definitions to unified geometry
Old zones (350-500, 500-700, 580-650) were based on pre-unification
illusion-only coordinates. Updated to match diagnose_corrections.py:
near_body 580-720, body_wake 720-850, sensor_zone 780-850.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 12:45:10 +08:00
Frank14fandCursor 2ae248421d fix(oid): confirm FIFO bias bug has no structural impact
- Fixed bias_arr[4] (front 0), bias_arr[5] (bottom -4U0), bias_arr[6] (top +4U0)
- Re-ran full karman pipeline: force-sig overlap unchanged (-0.034)
- Force-OID still beats POD (0.295 vs 0.068, was 0.750 vs 0.418)
- Absolute R2 shifted because corrected FIFO changed PPO trajectory start
- Structural conclusion (force-sig near-orthogonal) is robust

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 16:26:54 +08:00
Frank14fandCursor 5c55c5bdf7 fix(oid): correct FIFO bias in karman_blk and collect_controlled
- collect_karman_blk.py: bias_arr[4]=front (was -4U0, should be 0),
  bias_arr[5]=bottom (was +4U0, should be -4U0),
  bias_arr[6]=top (was 0, should be +4U0).
  Matches legacy_karman_env.py:179-182.
- collect_controlled.py: same fix for Karman branch.
- Add missing import data_dir_for_scene in collect_controlled.py

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-30 15:55:15 +08:00
Frank14fandCursor 8df40fb5bd chore(oid): final cleanup for paper-readiness
Remove:
  - scripts/compute_delta_fields.py (DEPRECATED, always SKIPPED)
  - scripts/replay_verify.py (duplicated logic)
  - analysis/save_robustness.py (hardcoded, superseded)

Archive:
  - scripts/collect_fields_replay.py -> archive/ (superseded by replay_full_fields.py)

Fix:
  - NaN->null in master_table.json and steady_reanalysis.json
  - Regenerate master_table.json with canonical overlap + three-layer action-OID
  - Update OID_knowledge.md with three-layer overlap table + data provenance
  - Update README: remove stale replay_verify reference, add action-OID finding

Result: 27 Python files (was 31), 3 deleted, 1 archived. All JSON valid.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 16:12:10 +08:00
Frank14fandCursor 4ae6e2e45c feat(oid): Li22b full DB collection complete — 51 commands, pipeline runner
- 51 steady open-loop commands collected (2.1h on device 2)
- q_in and q_blk reference fields collected
- Full pipeline: run_full_pipeline.py (A.2 POD -> A.3 LSE -> B OID -> C synthesis)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 22:35:14 +08:00
Frank14fandCursor 52229ea0f0 feat(oid): Li22b replication — collection, POD, LSE, OID, synthesis scripts
Phase A.1: Open-loop DB collection (50 commands, LHS, new CelerisLab)
Phase A.2: Snapshot POD on Li22b DB (ROI-masked, energy analysis)
Phase A.3: LSE [sensors, b] -> POD coefficients
Phase B: Delta-q OID + cross-mapping + joint-input OID
Phase C: Three-framework synthesis (SR, Li22b, OID)

Partial data collected (in progress). Reference fields done.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 21:00:18 +08:00
Frank14fandCursor 3e9cffda8e feat(oid): joint analysis — OID mode zone partition, action-OID, SR validation
P3.1: Zone energy partition from OID spatial modes
P3.3: Three-layer overlap (action-OID, force-OID, signature-OID)
  - Key finding: action is near-orthogonal to both force and sig OID modes
  - Confirms OID finds observable-relevant, not action-relevant structures
P3.5: SR formula → OID coordinate validation
  - Karman: corr(OID_z1, Cl_tot) = -0.82 (strong)
Fix: Restore ROI masking in phase1_correction_pod.py (OOM prevention)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 19:21:53 +08:00
Frank14fandCursor 3edf964f34 fix(oid): restore ROI masking in phase1 POD to prevent OOM
Full 1280x512 POD with 500 snapshots needs ~50 GB RAM.
ROI [400:1000, 100:400] (600x300 px) reduces to ~1.4 GB.
This was the original design — removing it was a critical mistake.
Fields saved at full resolution (Rule 5); ROI applied at analysis stage only.

Also add phase_error_karman_sig.py for P2.4b future work.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 19:07:16 +08:00
Frank14fandCursor 31e367db0e test(oid): Sch12 code mapping and 7 unit tests for POD/OID/PCD
- Add docs/sch12_code_mapping.md: formula-to-code traceability
- Add tests/test_analysis.py: 7 unit tests, all passing
- Tests: POD energy, OID cross-covariance, field reconstruction,
  PCD whitening, standardize edge cases, snapshot method, cum_corr

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 17:43:46 +08:00
Frank14fandCursor f66671a498 docs(oid): consolidate documentation and organize data directories
- Fix illusion rank sensitivity inconsistency (0.75L std=0.26, not 1.000)
- Unify all dates to 2026-06-28 across 4 markdown files
- Remove empty derived/delta_fields/ directory
- Update README reading order and scope date

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 17:26:55 +08:00
Frank14fandCursor 225f653840 fix(oid): code cleanup — fix NameError, remove ROI cropping, consolidate
- Fix NameError (cfg_sid -> cfg["scene_id"]) in collect_controlled.py
- Remove ROI cropping in phase1_correction_pod.py (use full 1280x512)
- Add pinball_baseline_illusion to configs.py and data_dir_for_scene()
- Deprecate compute_delta_fields.py (superseded by phase1_correction_pod)
- Fix absolute path in save_robustness.py
- Clean redundant import in phase3_force_oid.py
- Suppress module-level print in phase6_comparison.py

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 17:13:32 +08:00
Frank14fandCursor 56e3c78a83 chore: project-wide cleanup — consolidate docs, remove obsolete code, update .gitignore
- Remove obsolete docs (OID_handover, SR_analysis_results, ccd_* handover)
- Remove CCD legacy output_redux and old scripts
- Remove SR old sindy scripts and compare modules
- Update .gitignore to cover all analysis-generated outputs
- Retain all active code in OID/SR/CCD analysis directories

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-28 16:52:48 +08:00
Frank14fandCursor c918ac0de4 Update CelerisLab submodule to v0.5.1 (6e3756c).
Pull latest fix for EsoPull init layout and pre-streaming semantics.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-27 22:36:25 +08:00
Frank14fandCursor 85d1222139 CCD analysis: correction-field framework complete (Round 6)
- Shift analysis from raw-field q_ctl to correction-field dq_ctl = q_ctl - q_blk
- Force/action/signature CCD for illusion 0.75L, 1.0L, 1.5L
- Zone-restricted CCD (near_body/body_wake/sensor_zone) with spatial separation evidence
- 1.5L identified as special mechanism (low action coupling, phase drift)
- Karman reference data collected (q_in, q_blk)
- Snapshot POD speedup (96x96 instead of 1310720x96)
- Comprehensive report: docs/ccd_correction_field_report.md (412 lines)
- Handover document: docs/ccd_handover.md

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 19:30:16 +08:00
Frank14fandCursor 92845d6026 OID Analysis: project report and handover document
Add comprehensive project report (292 lines, 7 figure references)
and handover notes for the next agent.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 17:19:56 +08:00
Frank14fandCursor 6614f18248 OID Analysis: correction-field structure diagnosis pipeline
Complete implementation of Observable-Inferred Decomposition (OID)
for the fluidic pinball project. Covers Phases 0-7 for all 5 scenes
(steady cloak, Karman cloak, illusion 0.75L/1.0L/1.5L).

Key deliverables:
- Full analysis pipeline: configs, utils, 11 collection scripts, 7 phase
  scripts, robustness analysis, figure generator, batch runner
- Data collected: 500 snapshots per scene, separate illusion-position q_blk
- 7 publication-quality figures: force-sig overlap, rank sensitivity,
  OID vs POD comparison, tau_c sensitivity, POD energy, steady metrics,
  white-box chain
- Comprehensive report at docs/OID_analysis_results.md (292 lines)
- Handover document at docs/OID_handover.md
- Updated knowledge base and notes with all Phase 2 results

Core finding: force-relevant and signature-relevant correction structures
systematically separate across control tasks (steady: +0.763 -> Karman: -0.034
-> illusion: -0.082 to -0.932), with OID consistently outperforming POD.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 17:18:19 +08:00
Frank14fandCursor 8e62716ce4 SR Analysis: Phase-state SINDy + ablation study + documentation
Core changes:
- New phase-state features (PHASE_STATE_KEYS, ILLUSION_PHASE_KEYS) with obs dynamics
- Derivative and absolute output modes (output_mode="deriv"|"absolute")
- predict_v23_deriv() with integration support for closed-loop
- Offline multi-step rollout evaluator (eval_rollout.py)

Key results:
- Illusion 0.75L/1L: phase-state+error-state+abs achieves 0.974/0.958 closed-loop
  with zero action history features — proving the new route works
- Karman re100: phase-state+abs reaches 0.699 (vs 0.901 with action history)
- 1.5L confirmed as bang-bang regime (R2=0.12 for linear SINDy)
- Feature ablation: 6-dim phase-state outperforms 16-dim full-lag in closed-loop

Documentation:
- docs/SR_analysis_results.md: comprehensive analysis report
- docs/HANDOVER_SR_ANALYSIS.md: handover notes for next coder
- 6 figures in docs/figures/SR_analysis/
- Updated README.md, sindy_sr_notes.md, sindy_sr_knowledge.md
- Updated configs.py with generalization scenes

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 16:55:03 +08:00
Frank14fandCursor dd71af901d chore: update CelerisLab submodule to 00b957f
- feat(esopull): runtime body sync for EsoPull streaming mode

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 22:47:38 +08:00
Frank14fandCursor 76dd321139 chore: update CelerisLab submodule to 04c2bc7
Includes feat(obs): unified zero_obs control and time-normalised readback

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 00:56:32 +08:00
Frank14fandCursor 52df8620f0 chore: update CelerisLab submodule to latest
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 19:12:17 +08:00
Frank14f 096d9dcd0f 第二轮:整理两个工作目录 2026-06-10 15:59:52 +08:00
Frank14f d1b9922c6b 第一轮分析工作暂存 2026-06-09 18:46:59 +08:00