erp-tune on pfi-gx10
Canonical copies of what is staged on pfi-gx10 for the R47 ERP-seat SFT runs.
The harness itself (eitri-smithy) is not vendored here; it lives on the box at
/home/infra-ops/erp-tune/eitri-smithy, git 0a6bd2e.
| file | deployed to | run |
|---|---|---|
run-03c-gx10.json |
/home/infra-ops/erp-tune/run-03c-gx10.json |
3c |
launch-run-03c.sh |
/home/infra-ops/erp-tune/launch-run-03c.sh |
3c |
run-05-gx10.json |
/home/infra-ops/erp-tune/run-05-gx10.json |
5 |
launch-run-05.sh |
/home/infra-ops/erp-tune/launch-run-05.sh |
5 |
build_r5_survivors.py |
/home/infra-ops/erp-tune/build_r5_survivors.py |
5 |
run-06-gx10.json |
/home/infra-ops/erp-tune/run-06-gx10.json |
6 |
launch-run-06.sh |
/home/infra-ops/erp-tune/launch-run-06.sh |
6 |
pull-verify-jenerallee78.sh |
/home/infra-ops/erp-tune/pull-verify-jenerallee78.sh |
6 (base pull + byte verify) |
run-07-gx10.json |
/home/infra-ops/erp-tune/run-07-gx10.json |
7 |
launch-run-07.sh |
/home/infra-ops/erp-tune/launch-run-07.sh |
7 |
build_r7.py |
/home/infra-ops/erp-tune/build_r7.py |
7 (survivors-r7 + lossmask-r7 union + config) |
base-pin-jenerallee78-shards.txt |
/home/infra-ops/erp-tune/base-pin-jenerallee78-shards.txt |
6 (32 shard pins, from brokkr-smithy base-pin-jenerallee78.json) |
Runbooks: docs/runbooks/gx10-run-03c.md,
docs/runbooks/gx10-run-05.md,
docs/runbooks/gx10-run-06.md.
Run 3c — the LoRA that died on ana-ml2 at step 24 when an Anaheim breaker
tripped, rehomed here unchanged (eight path keys rehomed to local NVMe, two host/
library substitute_controls appended; no hyperparameter/corpus/base/mask/recipe
value differs, verified key-by-key).
Run 5 — third R47 corpus-gate run: the 20% slot's composition changes
(airoboros OUT, dependency-forcing govreport + qmsum IN) at run 4's lr 2e-04,
everything else held; kvasir byte-identical (survivors reused from run 4).
run-05-gx10.json is run 4's config with recipe/survivors/override swapped.
Run 6 — the run-5 recipe byte-held on a different BASE: jenerallee78's ARA
abliteration of Gemma-4-26B-A4B-it @ 0631379a (index sha 33c59654…), the
line's first abliterated base (runs 3–5 were settled as stock). Corpus,
survivors (survivors-r5.jsonl), mask, template and hyperparameters unchanged.
The landed dir carries the STOCK tokenizer set (the repo's tokenizer.json
bakes in a 256-token truncation); repo originals kept beside as *.repo.
Run 7 — run 6 + an OPENING-SPLIT slot (293 rows, opening-split/clean-v1) with its companion
loss mask (224 entries, UNION with lossmask-r3 → lossmask-r7, 1 duplicate). survivors-r7 =
survivors-r5 + the 293 slot ids (8,505). Launched 2026-09-08 23:06 PT under
operator-2026-09-08-rnd-run7. Free check: held roots encode identical to run 6 (same 173
chunked / 30 truncated / 59 lost turns), slot 293/293 fit whole, two cwm conversations
(cwm-2602, cwm-1826) dropped as unfittable because the mask left them no loss turn — their
loss now lives in their opening-split rows. 542 steps, 17.1% padding (run 6: 0%).
Run 4 is not vendored here. It ran on the box (config
run-04-gx10.json, gated STILL-COUPLED) but its canonical copies were never committed; run 5'sbuild_r5_survivors.pyderives fromsurvivors-r4.jsonlon the box, so run 4 is a live dependency of the run-5 build even though it is absent from this repo.
Each run-*-gx10.json carries its run-scoped training_eligibility_override,
overridden_blockers and substitute_controls so the adapter's provenance
manifest records the grant, the two open blockers and their substitute controls.