shutdown handoff: SHUTDOWN_HANDOFF.md
Browse files- SHUTDOWN_HANDOFF.md +141 -0
SHUTDOWN_HANDOFF.md
ADDED
|
@@ -0,0 +1,141 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# DNAThinker server3 → lab handoff (server3 shutdown 2026-05-07)
|
| 2 |
+
|
| 3 |
+
server3 (the H100/H200 box that ran the multi-seed reasoning RL +
|
| 4 |
+
production-route MoE eval + paper iteration) is being shut down
|
| 5 |
+
permanently. **The paper is at 56 pages, all paper-grade artifacts
|
| 6 |
+
mirrored to HuggingFace, all commits pushed to GitHub.** This doc
|
| 7 |
+
tells the lab cluster how to keep going.
|
| 8 |
+
|
| 9 |
+
---
|
| 10 |
+
|
| 11 |
+
## TL;DR for the lab
|
| 12 |
+
|
| 13 |
+
1. `git fetch origin && git checkout mllm-integrate-server3 && git pull` —
|
| 14 |
+
server3's branch has the paper (56 pp, multi-seed n=200/n=1000,
|
| 15 |
+
§app:rqsamples, edit-tight derivation, dnaseq autowrap macro).
|
| 16 |
+
2. Optionally merge `mllm-integrate-server3` → `mllm-integrate` for
|
| 17 |
+
trunk continuity (no conflicts expected — the branches diverged
|
| 18 |
+
only in main.tex content, with server3 being the superset).
|
| 19 |
+
3. **Restart the HF auto-uploader** on a long-running lab box. It is
|
| 20 |
+
the only continuously-running service we need to preserve. See
|
| 21 |
+
§"HF auto-uploader" below.
|
| 22 |
+
4. There is **NO blocked or in-flight server3 work that needs lab
|
| 23 |
+
pickup**. The cycle 70zz49 T2 rebalance was rate-limited at
|
| 24 |
+
25920 rows (sufficient for §sec:rqrl); cycles 70zz44–48 finished;
|
| 25 |
+
nothing is mid-train.
|
| 26 |
+
|
| 27 |
+
If you only do step 1, the paper still compiles and reproduces. The
|
| 28 |
+
HF mirror at the URLs in §"Where everything is" is the source of
|
| 29 |
+
truth for any artifact server3 produced.
|
| 30 |
+
|
| 31 |
+
---
|
| 32 |
+
|
| 33 |
+
## Where everything is (HuggingFace, all public)
|
| 34 |
+
|
| 35 |
+
| Repo | What | Notes |
|
| 36 |
+
|---|---|---|
|
| 37 |
+
| `explcre/dnathinker_t1_v3` | T1 paper-headline trunk + fusion-SFT base | `exp_t1_fusion_sft_unified_20260428_h100/best.pt` (6.5 GB) **uploaded 2026-05-07 09:07 UTC during shutdown prep** |
|
| 38 |
+
| `explcre/dnathinker_t2_dual_xa` | T2 dual-XA Variant C + 600M overfit ablation | `exp_t2_ntv3_dual_xa_FULLFT600M_natural3m_20260504_063140/best.pt` (5.4 GB) **uploaded 2026-05-07 09:08 UTC during shutdown prep** |
|
| 39 |
+
| `explcre/dnathinker_t3_trunks` | T3 edit-tight 500-bp Path-A production trunk | `exp_t3_edit_tight_20260505/best.pt` + 360-bp baseline `exp_t3_ntv3_100m_rich_cond_editing_20260503_222416/best.pt` |
|
| 40 |
+
| `explcre/ntv3_rich_cond_mdlm_phase4_family` | T1 trunks (v3 paper-headline + v5full15m + others) | ~7 GB |
|
| 41 |
+
| `explcre/phase7_multitask` | Joint MoE LoRAs (T1+T2+T3 r=64) — **mode-collapsed**, ablation only | ~150 MB; paper §sec:joinmoe-collapse |
|
| 42 |
+
| `explcre/phase8_rl` | All Phase-8 RL ckpts incl. multi-seed reasoning RL, FIXED grid, KD/BIGLR | ~5 GB; **422 files, last sync 2026-05-07 09:06 UTC** |
|
| 43 |
+
| `explcre/phase8_rl/_paper_results/` | 9 paper-grade tables/CIs (FID, embed-cos, TFG, multiseed) | Reproducible from raw logs in same repo |
|
| 44 |
+
| `explcre/phase5_stage_a` / `phase5_stage_b` | Phase-5 SFT bases | varies |
|
| 45 |
+
| `explcre/phase6_grpo` | Phase-6 GRPO RL | varies |
|
| 46 |
+
|
| 47 |
+
A combined download command for the must-haves:
|
| 48 |
+
|
| 49 |
+
```bash
|
| 50 |
+
huggingface-cli download explcre/dnathinker_t3_trunks --include "exp_t3_edit_tight_20260505/*" --local-dir ./_dl_t3
|
| 51 |
+
huggingface-cli download explcre/dnathinker_t2_dual_xa --include "exp_t1_fusion_sft_unified_20260428_h100/*" "exp_t2_ntv3_dual_xa_FULLFT600M_natural3m_20260504_063140/*" --local-dir ./_dl_t1t2
|
| 52 |
+
huggingface-cli download explcre/phase8_rl --include "_paper_results/*" "exp_phase8_reasoning_grounded_rl_*/best.pt" "exp_phase8_reasoning_grounded_rl_*/manifest.json" --local-dir ./_dl_p8
|
| 53 |
+
```
|
| 54 |
+
|
| 55 |
+
---
|
| 56 |
+
|
| 57 |
+
## HF auto-uploader (the only running service)
|
| 58 |
+
|
| 59 |
+
The auto-uploader continuously mirrors `runs/_paper_results/`,
|
| 60 |
+
`runs/exp_phase8_reasoning_*`, etc. to the HF repos above. It is
|
| 61 |
+
the safety net for any new artifact you produce.
|
| 62 |
+
|
| 63 |
+
**Where:** `regureasoner_loop/scripts/innovations/hf_auto_uploader.py`
|
| 64 |
+
**Wrapper:** `regureasoner_loop/slurm/run_hf_auto_uploader.sh`
|
| 65 |
+
**Watchlist:** at the bottom of `hf_auto_uploader.py` — 60 watches
|
| 66 |
+
covering every `runs/exp_*` glob the paper cares about.
|
| 67 |
+
|
| 68 |
+
**To restart on a lab box** (any box with HF token + the dnathinker
|
| 69 |
+
runs dir mounted):
|
| 70 |
+
|
| 71 |
+
```bash
|
| 72 |
+
cd $REPO_ROOT/regureasoner_loop
|
| 73 |
+
nohup bash slurm/run_hf_auto_uploader.sh \
|
| 74 |
+
> /workspace/dnathinker/runs/_bench_logs/hf_auto_uploader.daemon.log 2>&1 &
|
| 75 |
+
# verify:
|
| 76 |
+
sleep 5 && tail /workspace/dnathinker/runs/_bench_logs/hf_auto_uploader.log
|
| 77 |
+
# expected: "INFO start hf_auto_uploader · interval=30m · watches=60"
|
| 78 |
+
```
|
| 79 |
+
|
| 80 |
+
If the lab cluster's `runs/` path differs from
|
| 81 |
+
`/workspace/dnathinker/runs/`, edit `Watch.local_dir` at the bottom
|
| 82 |
+
of `hf_auto_uploader.py` to match.
|
| 83 |
+
|
| 84 |
+
---
|
| 85 |
+
|
| 86 |
+
## Paper compile (sanity check after pulling)
|
| 87 |
+
|
| 88 |
+
```bash
|
| 89 |
+
cd regureasoner_loop/paper
|
| 90 |
+
rm -f main.aux main.log main.bbl main.blg main.toc main.out
|
| 91 |
+
pdflatex -interaction=nonstopmode main.tex
|
| 92 |
+
bibtex main
|
| 93 |
+
pdflatex -interaction=nonstopmode main.tex
|
| 94 |
+
pdflatex -interaction=nonstopmode main.tex
|
| 95 |
+
# expected: "Output written on main.pdf (56 pages, ~5.1 MB)"
|
| 96 |
+
```
|
| 97 |
+
|
| 98 |
+
All required figures are tracked in `paper/figures/`. The
|
| 99 |
+
`\dnaseq` macro (defined at the top of main.tex) auto-wraps long
|
| 100 |
+
DNA listings at the page boundary.
|
| 101 |
+
|
| 102 |
+
---
|
| 103 |
+
|
| 104 |
+
## What server3 was working on, status snapshot
|
| 105 |
+
|
| 106 |
+
| Cycle | Task | Status | Artifact location |
|
| 107 |
+
|---|---|---|---|
|
| 108 |
+
| 70zz44 | Production-route MoE end-to-end eval | DONE | `explcre/phase8_rl/_paper_results/cycle_70zz44_*` |
|
| 109 |
+
| 70zz45 | Joint MoE end-task scoring | DONE | mirrored, paper §sec:joinmoe-collapse |
|
| 110 |
+
| 70zz46 | T1 reasoning RL multi-seed (s=2,3) | DONE | `explcre/phase8_rl/exp_phase8_reasoning_grounded_rl_t1_*` |
|
| 111 |
+
| 70zz47 | T2/T3 reasoning RL multi-seed (s=2,3) | DONE | ditto, T2 t3 dirs |
|
| 112 |
+
| 70zz48 | T3 reasoning RL parallel | DONE | mirrored |
|
| 113 |
+
| 70zz49 | T2 reasoning rebalance (prod_samples balanced) | RATE-LIMITED at 25920 rows | sufficient for paper, §sec:rqrl unaffected |
|
| 114 |
+
|
| 115 |
+
Multi-seed reasoning RL aggregator output:
|
| 116 |
+
`_paper_results/reasoning_rl_multiseed_summary.{md,json}` — T1
|
| 117 |
+
0.412±0.023, T2 0.324±0.051, T3 0.225±0.026 (n=3 seeds each).
|
| 118 |
+
|
| 119 |
+
---
|
| 120 |
+
|
| 121 |
+
## What is NOT preserved
|
| 122 |
+
|
| 123 |
+
- `/shm/dnathinker_quarantine/` (intermediate ckpt staging) was on
|
| 124 |
+
tmpfs and got cleared on remount — these were intentionally
|
| 125 |
+
non-load-bearing intermediates (best.pt's already on HF). No data
|
| 126 |
+
loss for paper purposes.
|
| 127 |
+
- Local `runs/` dirs that are NOT in the HF watchlist: these are
|
| 128 |
+
training intermediates (per-step ckpts before best.pt). The
|
| 129 |
+
best.pt + `manifest.json` + `log.jsonl` for every paper-cited
|
| 130 |
+
experiment is on HF.
|
| 131 |
+
- Local `.env` with OPENROUTER_API_KEY_{1..N}: backed up to
|
| 132 |
+
the user's local machine via rsync per `PROJECT_RESUME_MANIFEST.md`.
|
| 133 |
+
Only needed for re-running reasoning expansion (already complete).
|
| 134 |
+
|
| 135 |
+
---
|
| 136 |
+
|
| 137 |
+
## If you need to resume server3-style work elsewhere
|
| 138 |
+
|
| 139 |
+
Follow `regureasoner_loop/docs/PROJECT_RESUME_MANIFEST.md` — 6-step
|
| 140 |
+
playbook that pulls the repo, restores Claude memory, downloads
|
| 141 |
+
critical ckpts, and verifies the paper compiles.
|