ワンクリックで
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.