git pull --rebase origin main autostash + clean 系列 で untracked 状態 だった source が wipe。 STEP 1670 Tab Isolation Protocol の 予防対象 が 実測発生。 Context 完全保存 から STEP 1685/1686 番号で 再構築、 sidecar → 即 commit + push (fcaf652e1 + 14598148c) で untracked 露出時間 を ~10 秒 に 短縮した discipline を 適用。
chat-Claude 論文レビュー (2026-09-01) が 指摘した paper 付録 D.1 病理 「単一ベンチマークを hill-climb すると 未見の 別ベンチマークで −11.9%」 と、 論文本文の 「1,601 軌跡中 2.4% を 検出、 67% が 同一手法再提出」。 これに 4 element machine (探索器 × 集約 gate × 監視 × 凍結 preregister) で 応答する 部品セットの 第 1 部品 = 探索器。
STEP 1654 runGeoMeanGate を accept 判定に 使用。
any gauge = 0 → geoMean = 0 → ZERO → 常に reject。
paper 付録 D.1 「1 dimension を 犠牲に して 別 dimension を 稼ぐ」 経路 の 構造的遮断。
STEP 1659 submissionHash (canonical JSON sorted keys の sha256) で
method / sampleSet / gaugeConfig の 3 hash を
scoreFn 呼出 前 に 計算 → attempt に 埋込。
事後改変で 高 score を 主張 不能。
全 attempts (accepted + rejected + errored) を submission-shape payload に 変換 →
STEP 1659 detectCheatPatterns で 全 pair scan → findings を 結果 に 埋込。
| pattern | trigger | severity |
|---|---|---|
| (A) resubmission-variance-farming | 同 method + 同 sample + 同 gauge + 異 score | critical (paper 67% 病理) |
| (B) gauge-tuning-after-fail | 同 method + 同 sample + 異 gauge | critical |
| (C) sample-swap-to-hit-target | 同 method + 異 sample + 同 gauge | critical (STEP 1608 candidate F 病理) |
| (D) triple-shift | 全 3 異 + 同 submitter + 短時間内 | warning (探索器 自然な shotgun、 BY DESIGN) |
| (E) hash-format-invalid | hash が sha256:<64 hex> 形式でない | critical |
ABSTAIN / ZERO / FALSE / NEITHER は 常に reject。 accept と reject は 対称に 記録 (accept-only log は cherry-pick 誘引)。
| # | 素子 | STEP | 実装 tab | 状態 |
|---|---|---|---|---|
| 1 | ヒルクライム機械 (探索器) | 1686 (元 1682) | rei-aios-5c (本 STEP、 recovery) | v0.1 landed (14598148c) |
| 2 | 幾何平均ゲート素子 | 1654 | rei-aios-1b | v0.1 landed |
| 3 | チート後方監視素子 | 1659 | rei-aios-1b | v0.1 landed |
| 4 | 凍結ミニ論文素子 | 1359 (既済) | — | v0.1 landed 2026-08-21 |
4/4 全 素子 v0.1 完成。 探索 + 検証 + 監視 + 凍結 の 4 素子 装置 が 揃った。
| section | 内容 |
|---|---|
| §1 | empty candidates → no crash、 silent success 予防 |
| §2 | single good → accepted、 bestSoFar set |
| §3 | monotonic ascending → all accepted |
| §4 | descending → only first accepted、 rest strict-greater reject |
| §5 | zero gauge → all-or-zero、 d8=ZERO、 rejected |
| §6 | missing gauge → ABSTAIN、 rejected |
| §7 | scoreFn throws → error attempt、 silent skip 予防 |
| §8 | commit-before-see 3 hashes byte-level match |
| §9 | pattern (A) resubmission-variance surface |
| §10 | pattern (C) sample-swap surface |
| §11 | accept + reject 対称記録 (accept-only 予防) |
| §12 | NEITHER band → rejected (only TRUE accepts) |
| §13 | minImprovement threshold 尊重 |
| §14 | honestScope 13 項目 (≥10 assert) |
| §15 | determinism: same input + nowIso → identical output |
src/aios/hill-climb/index.ts (commit 14598148c)test/step1686-hill-climb-explorer-test.ts (58 assertion / 15 section)memory/project_step1686_hill_climb_explorer_v01_2026-09-02.mdmemory/feedback_4_element_machine_arc_2026-09-02.md