원클릭으로
source-command-megaminx-rescue
Run the top-N long-pid sym-ensemble rescue + merge cycle on the current best megaminx submission.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Run the top-N long-pid sym-ensemble rescue + merge cycle on the current best megaminx submission.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use this skill for any task in the cayley IHES Picture Cube project — training, solving, evaluation, ensembling, submission. Covers the full ML+search pipeline.
Strat-5 acceptance gate for a megaminx V model. Runs 51-pid stratified eval at beam 65k, compares to m05 baseline (50/51 / mean 89.4), reports pass/fail.
One-shot status across GCP solves, Kaggle kernels, and local runs for the megaminx competition.
Verify a megaminx submission CSV, submit to Kaggle, and update HANDOFF / SUBMISSION_JOURNEY / to_do_shortlist with the new score.
Pull the latest cayleypy-tpu-beam-smoke kernel output, aggregate per-rank JSONs, merge with current best, verify, and prep for submission.
Combine candidate submissions, post-process, verify, and submit to Kaggle.
| name | source-command-megaminx-rescue |
| description | Run the top-N long-pid sym-ensemble rescue + merge cycle on the current best megaminx submission. |
Use this skill when the user asks to run the migrated source command megaminx-rescue.
Automate the canonical "rescue the long-tail" cycle that we run after each new best submission. Extracts the top-N longest paths from the current best CSV, runs sym-ensemble + qshort + beam 524k on those pids, merges the rescued paths into the base, verifies the merged CSV, and prepares it for submission.
/megaminx-rescue 50 — rescue top 50 long-pids of current best submission with K=4 sym (default)./megaminx-rescue 80 K=8 — rescue top 80 with K=8 (diminishing returns past K=4)./megaminx-rescue 50 base=path/to/sub.csv K=4 — explicit base CSV.megaminx/submissions/ matching merge_*.csv (highest path count = lowest score).megaminx/models/m05_bellman_warm/epoch_0499.pt.megaminx/models/m23_v2_sym_aware/epoch_0499.pt (sym-aware, pair with --sym-ensemble).merge_plus_sym{K}_top{N}.megaminx/data/rotations.npy (default; auto-loaded by --sym-ensemble).PYTHONUTF8=1 .venv/Scripts/python.exe -c "
import csv
sub = '<base>'
rows = list(csv.DictReader(open(sub)))
rows.sort(key=lambda r: -len(r['path'].split('.')))
print(','.join(r['initial_state_id'] for r in rows[:<N>]))
"
Report the pid list, length range of top-N, and sum of path lengths.
nohup .venv/Scripts/python.exe megaminx/scripts/03_solve.py \
--checkpoint megaminx/models/m05_bellman_warm/epoch_0499.pt \
--qshort-student megaminx/models/m23_v2_sym_aware/epoch_0499.pt \
--qshort-alpha 2 \
--out megaminx/submissions/<output>.csv \
--pids <pid_list> \
--beams 524288 --max-steps 150 --bf16 \
--sym-ensemble <K> \
> megaminx/submissions/<output>.log 2>&1 &
# expected wall: K=2 ≈ 137s/pid, K=4 ≈ 280s/pid, K=8 ≈ 560s/pid
tail -F megaminx/submissions/<output>.log | grep -E --line-buffered \
"attempts=20/|attempts=40/|attempts=60/|attempts=80/|Traceback|Error|verify:|stats:|wrote |OOM"
(Use Monitor tool with persistent: true.)
.venv/Scripts/python.exe megaminx/scripts/16_merge_rescue.py \
--base <base>.csv \
--rescue megaminx/submissions/<output>.csv \
--out megaminx/submissions/<merged>.csv
Report: replaced X/N (saved Y moves), new total, regressions count (must be 0).
The merge script verifies inline and prints verify: 1001/1001 valid, total <T>.
If anything other than 1001/1001 valid: STOP, do not proceed to submit.
Print: "ready to submit .csv (current_best - delta = new_total)".
Suggest /megaminx-submit <merged>.csv "<description>" as next step.
DO NOT submit automatically. The user controls Kaggle slot usage.
--sym-ensemble, not the original m23 (distilled
on forward-state V; lower recall on inverted/rotated states). See
megaminx_gotchas.md "Q-shortlister student must match teacher" entry.| K | wall/pid | 50 pids | 80 pids |
|---|---|---|---|
| 2 | ~140s | ~2h | ~3h |
| 4 | ~280s | ~4h | ~6h |
| 8 | ~560s | ~8h | ~12h |
Pick K based on remaining session time and previous-pass exhaustion.