Skip to content

Paper-matrix harness, Tunix backend, GCP scaffolding#1

Merged
jadenfix merged 2 commits into
mainfrom
paper-framework
Apr 15, 2026
Merged

Paper-matrix harness, Tunix backend, GCP scaffolding#1
jadenfix merged 2 commits into
mainfrom
paper-framework

Conversation

@jadenfix
Copy link
Copy Markdown
Owner

Summary

  • Experiment harness: scripts/run_paper_matrix.py runs the paper's B0–B5 × tasks × seeds matrix with a fairness-fingerprint guard; scripts/aggregate_results.py builds the Holm-corrected results table; scripts/gen_all_teacher_data.sh fans out the teacher CLI over (gsm8k, apps) × (train, val, test).
  • Tunix backend (M8): src/cts/backends/tunix_adapter.py now has table-driven trainer resolution + real Orbax checkpoint/restore. Clean ImportError without the tunix dep. cts.train.main routes backend=tunix through it.
  • GCP scaffolding (ready, not run): deploy/{Dockerfile.cpu, Dockerfile.tpu, cloudbuild.yaml, launch_tpu.sh, launch_vertex.py, gcs_sync.py, README.md}. --gcs-bucket flag in cts.train.main lazily wires gcs_sync.upload.
  • Local dev QoL: Makefile, .pre-commit-config.yaml, .github/workflows/ci.yml. gcp extra added to pyproject.toml. .gitignore expanded (build, IDE, coverage, GCP service-account keys).

- scripts/run_paper_matrix.py drives B0-B5 x tasks x seeds with fairness
  fingerprint guard via cts.train.fairness.assert_consistent.
- scripts/aggregate_results.py builds the Holm-corrected paper table
  using the existing cts.eval.stats primitives.
- scripts/gen_all_teacher_data.sh fans out the teacher CLI across
  (gsm8k, apps) x (train, val, test).
- src/cts/backends/tunix_adapter.py: M8 wiring (table-driven trainer
  resolution, real Orbax checkpoint/restore). Construction-time guard
  raises a clean ImportError without the tunix dep installed.
- src/cts/train/main.py: route backend=tunix through the adapter; add
  --gcs-bucket flag that lazily imports deploy/gcs_sync.upload.
- deploy/: Dockerfile.cpu, Dockerfile.tpu, cloudbuild.yaml, launch_tpu.sh
  (DRY_RUN=1 honored), launch_vertex.py, gcs_sync.py, README.md. Files
  in place; nothing executed yet.
- Makefile, .pre-commit-config.yaml, .github/workflows/ci.yml for local
  dev QoL and CI.
- pyproject.toml: gcp extra (google-cloud-storage, google-cloud-aiplatform).
- .gitignore: build artifacts, IDE, coverage, GCP service-account keys.
- src/cts/train/loop.py: bind `step` as default arg to silence B023
  (loop variable not bound in nested function); preserves behavior.
- src/cts/rl/verifier.py, src/cts/eval/stats.py, src/cts/losses/sinkhorn.py:
  remove dead variables, replace try/except/pass with contextlib.suppress.
- tests/unit/test_bug_fixes.py: rewrite
@jadenfix jadenfix merged commit 8762bd9 into main Apr 15, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant