---
name: project-v04-pending-hardening-candidates-2026-08-02
description: 2026-08-02 arc で記録された v0.4 pending hardening candidates 集約 — Rei-Solver 3 + invention pipeline 3 + 層4 拡張 5 + Windows lifecycle root cause。 **★ I1 (invention pipeline pre-audit ban window) は 2026-08-04 に I1+ (5 layer 60→90 一括拡張) として実行完了 (commit e63298272)、 05-08 source literal 直接防止 empirically confirmed、 pool saturation +85.6%、 但し 07-31 case の (logic, african) pair-level recycle 完全防止には I2 併用必要**。 残 candidates: R1/R2/R3 + I2/I3 + 100+ day 拡張 (I1++) + 層4 拡張 5 個。
metadata: 
  node_type: memory
  type: project
  originSessionId: 32fa55da-b433-41ad-a60b-633176a9ef3a
  modified: 2026-08-03T21:59:19.584Z
---

# v0.4 Pending Hardening Candidates (2026-08-02 記録)

**Why:** 2026-08-02 の 5 arc (07-31 invention audit + Rei-Solver v0.2/v0.3 + 層4
constructor theory + site v0.3) で observed した未着手 hardening items を、 別
session (数日〜数週間後) で忘れないように集約する。

**How to apply:** 「Rei-Solver 追加改善」 「invention pipeline 強化」 「層4 拡張」
「Windows 対応」 のいずれかの topic が出た時、 まず本 file を参照して既 identified
candidates を確認する。 新規発案の前に既存 candidate の priority 判定を先。

## Rei-Solver v0.4 candidates (3 items)

### R1. `verify_with_mathlib` の import prefix whitelist 拡張

**Origin**: 2026-08-02 arc で 層4 ConstructorTheoryBasic.lean を Rei-Solver から
verify しようとした際、 `verify_with_mathlib` op の import prefix whitelist が
`Mathlib / Std / Aesop / Batteries` に固定されており `CollatzRei.*` (Rei 内部
namespace) が reject された。 live demo skip、 `lake env lean` 直接検証で
verify したが、 Rei-Solver 経由で全 Rei stack を verify できないのは自己
参照 pipeline の穴。

**Fix**: `lean4_engine.py` の `extra_validate` で verify_with_mathlib case の
whitelist を 「project_root 内で resolve 可能な任意 namespace」 に拡張。 実装は
`{project_root}/lakefile.toml` を parse して package 名を抽出する方法か、
whitelist を payload option で受け取る方法。

**Priority**: medium-high (Rei stack の自己 verify pipeline 完成のため)

### R2. QRNG (経路 A) 物理装置 engine

**Origin**: 2026-08-02 arc の 層3 4 経路分解で、 経路 A (計算不能系列生成) は
QRNG 物理装置依存で Rei-Solver v0.3 では未実装。 認証済 randomness beacon
(NIST / Argonne 等) 経由なら物理装置なしでも実装可能。

**Fix**: `qrng_engine.py` を 6th engine として追加。 op: `sample_certified_random`
(NIST Beacon API / QRandom API から fetch)。 assurance = "witness" (認証済
signed record として independent verify 可能)。

**Priority**: medium (層3 4 経路 cover 完成のため)

### R3. lifecycle test の Windows 対応本格化 → **★ defer 判断 (2026-08-04 実施済 confirm)**

**★ 2026-08-04 status**: 現状 `_SKIP_WINDOWS_LIFECYCLE` decorator が 5 lifecycle test に既 apply
= memory 推奨 (b) practical 最適解 already 実施済。 追加実装なしで defer 判断 confirm。
CI (Linux) で 24/24 pass 継続、 Windows dev では skip で運用可能。
将来 win32job or grace 期間 extension が必要になれば別 STEP で対応。

---
(以下 original entry)

**Origin**: 2026-08-02 v0.2 で `_kill_tree` を POSIX/Windows 対称化したが、
lifecycle 系 5 test (test_cancel_leaves_no_orphans / test_submit_poll_success /
test_hard_timeout_is_enforced / test_unsat_is_proof /
test_large_result_does_not_deadlock) は multiprocessing spawn cold start
(5-8s) + taskkill /F の子孫 cleanup timing の合成 flakiness のため明示 skip
(`@_SKIP_WINDOWS_LIFECYCLE`)。

**Root cause deeper**:
- Windows で `subprocess.CREATE_NEW_PROCESS_GROUP` は new session を作るが、
  子プロセスの job object 継承は自動でない。
- `taskkill /F /T /PID` は tree kill するが、 OS scheduler 経由の cleanup に
  1.5-4 秒かかる (POSIX SIGKILL の 即時性と差)。
- multiprocessing の `spawn` context は Windows で fresh Python interpreter
  boot が必要 (POSIX `fork` は瞬時)。

**Fix candidates**:
- (a) Windows Job Object API を直接使う (`win32job` module 経由) → 子プロセス
  自動 kill 保証
- (b) test は仕方なく skip 継続、 CI (Linux) で 24/24 pass 継続 = practical
  最適解 (現状)
- (c) test 側 grace period を 10-15 秒に大幅延長 = 実測 test 時間 大幅増

**Priority**: low (POSIX/Linux CI では pass 継続、 Windows dev 環境では skip で運用可)

## Invention pipeline v0.4 candidates (3 items)

2026-07-31 Ubuntu invention audit で observed した Pattern 1 direct recycle
12+ 例目 (60-day pre-audit ban window 超過型) の対策。

### I1. STEP 1225 pre-audit ban window 60 → 90 day 延長 → **★ I1+ で拡張実行 (2026-08-04 commit e63298272)**

**Origin**: 2026-05-08 に reject された `logic × african` pair (Ubuntu) が 85 日
後の 2026-07-31 に recycle。 STEP 1225 の 60-day window で見逃した。

**Fix (memory literal)**: `require_pre_audit_ban_days` option の default 60 → 90 に。
本 case は 85 < 90 で防止可能。 Trade-off: window 延長は pool saturation リスク増、
balance 検討必要。

**Priority**: high (07-31 direct evidence あり)

---

**★ 2026-08-04 実行 status (commit e63298272) — I1 → I1+ 拡張**:

**memory literal の不正確性を精査で発見**: STEP 1225 (r) `loadPreAuditStateBan` は
audit 完了 file (approved-*.json + rejected-*.json) を SKIP 設計 → 05-04/05-08 case
(両方 audit 完了) は本 layer 対象外 → **STEP 1225 単体では 07-31 case 防止不可能** と判明。

**藤本さん判断で「展開 I1: 5 layer 同時拡張 (Recommended)」 選択**:
- STEP 1209 (o) `loadRejectedTargetLiteralsFullBan` 60 → 90
- STEP 1210 (p) `loadApprovedTargetLiteralsFullBan` 60 → 90
- STEP 1216 (q) `loadHistorySourceLiteralsFullBan` 60 → 90
- STEP 1225 (r) `loadPreAuditStateBan` 60 → 90
- STEP 1253 (i) `loadAuditedInventionLiteralsBan` 60 → 90

**実測 impact (real invention pool smoke test today=2026-08-04)**:
- ✓ 05-08 source literal `∞=無限分岐評価経路` = STEP 1216 で 60-day miss → **90-day HIT** (直接防止 confirmed)
- ✗ 05-04 approved target `Ntu (Force)` = 92 days > 90-day で依然 outside = **未防止**
- pool saturation: 5 layer 合計 ban registry **361 → 670 literals (+85.6%)**、 rotation
  candidate pool は問題なく飲み込める規模

**test regression**: 138/138 直接関連 + 8 orthogonal hardening 全 PASS、
3 pre-existing failure (step1089c-source + step1190 + step1211-1212) は git stash
verify で本変更前から failing 確認 = **0 new regression**。

**honest scope**: 07-31 case の本質は (categoryA, categoryB) = (logic, african)
**PAIR-level recycle** で literal 完全一致でない — I1+ は source-level catch するが
pair-level は **I2 (Pattern 1 pair recycle detector) 未実装のため部分防止のみ**。
05-04 case (92 days) も outside → **100+ day 拡張 (I1++) or I2 併用が別 STEP 候補**。

### I2. Pattern 1 direct pair recycle detector → **★ 実行完了 (2026-08-04 commit e26e3001f → 9ca7c4524 rebased)**

**Origin**: window 期間を延ばしても永久 recycle は防げない (100 日後 recycle は
検出不能)。 pair-level の historical count を track する新軸 detector が必要。

**Fix (memory literal)**: `pair_recycle_detector.ts` で categoryA × categoryB pair
の全 historical appearance count を scan。 閾値 (例: ≥2) 超過時 auto-flag + soft-ban
option。 本 case (logic × african: 5-04 approved + 5-08 rejected = 2 回 usage) は
閾値 ≥2 で trigger 可能。

**Priority**: medium (window 延長 (I1) と直交軸で相補的)

---

**★ 2026-08-04 実行 status (commit 9ca7c4524)**:

**設計改訂 (memory literal からの差分)**: `pair_recycle_detector.ts` separate file
ではなく **`invention-engine.ts` に統合** (既存 `loadApprovalHistory` + `isPairApproved`
と同 class 内で cache 共有効率良い)。 閾値 **rejected 1 件 (not 2)** に強化した理由
= 05-04 は `zero_extension × african` (different catA)、 07-31 case の直前 pair 一致は
05-08 rejected 1 件のみ → threshold 2 では検出不可、 rejected-only threshold 1 が
correct choice。 total threshold は null default (opt-in) で二段構え。

**実装 3 file (+632 lines)**:
- `src/aios/invention/invention-engine.ts` +177 lines
  = 新 interface `PairAppearance` + `loadHistoricalPairAppearances(windowDays=180, today?)`
    (canonical key `${sorted[0]}×${sorted[1]}` で全 approved+rejected scan、
     hyphen↔underscore + case normalize) + `getPairAppearances` cache accessor +
    `isPairRecycleCandidate` 判定 + `_resetPairRecycleCache` test helper +
    `detectVoids()` 統合 (STEP 976 + STEP 1000 + I2 の 3 段 filter として重畳)
- `src/aios/daily/daily-invention-reporter.ts` +5 lines
  = `requirePairRecycleDetector: true` 既定 ON 明示
- `test/i2-pair-recycle-detector-test.ts` +449 lines = **37/37 全 PASS** (16 test cases)

**★★ Real invention pool smoke test empirical evidence**:
- (logic × african) as of 2026-07-31 = **blocked=true** (05-08 rejected entry
  `invented-20260508-logic-african-ntu-collision` detected) = **07-31 case 完全防止 confirmed**
- fresh pair (mathematics × mesoamerican): blocked=false, 0 appearances
- Top 10 recycled pairs 全て block flag correct

**Impact scan (today=2026-08-04)**:
- 176 unique pairs in 180-day window
- **100 pairs (56.8%) blocked** by I2 default (rejected ≥1)
- aggressive だが Pattern 1 recycle prevention target 通り

**Regression**: 全 hardening test suite (step1047/1087/1088/1089/1089b/1089cd/
1226/1227 + I1+ 5 layer step1209/1210/1216/1225/1253) 全 PASS = **0 new regression**。
pre-existing failure (step1190 16/24 + step1211-1212 19/22) は本変更前から failing。

**honest scope**: (i) 56.8% block は集約的だが Pattern 1 direct recycle 防止のみ、
fresh pairs は影響なし = 実 generation 影響は歴史的 pair 選択頻度依存 / (ii) rejected
threshold 1 default は「rejected あれば block」 strict defense、 場合により over-restrict
= `pairRecycleBlockThresholdRejected` option で opt-out 可 / (iii) Pattern 1 系
pair-level 対応のみ、 literal-level は I1+ が担当 = **I1+ + I2 dual 保護で 07-31 case
完全 cover**。 STEP 1213-G1 (silent sentinel category level) + I2 (pair level) +
I1+ (literal level) = **三層 filter (category / pair / literal) で網羅**。

### I3. Rei internal comparative philosophy territory registry

**Origin**: Nishida 絶対無 × Ubuntu の structural isomorphism (Kyoto School ×
非西洋哲学 比較) は既存 comparative philosophy 領域内。 Rei 内部で territory
catalog を持たないため novelty auto-downgrade が働かず、 07-14〜07-31 の Wave
family (Whakapapa/Kamuy/Teotl/Aṣẹ/Isuma/Dreamtime/Wahdat al-Wujud/Ubuntu) が
systemic に recycle され続けている。

**Fix**: `data/territory-registry/comparative-philosophy.json` を作成。 entry:
Kyoto School × 非西洋哲学 (Nishida↔Ubuntu / Nishida↔Advaita / Izutsu↔Sufi-Taoist
等) + cross-cultural mysticism × physics (07-18 Wahdat al-Wujud × d→∞ 等) +
relational ontology 系譜 (Buber / Levinas / Whitehead 等)。 invention pipeline
の novelty scoring で auto-downgrade + prior art auto-attach。

**Priority**: medium-high (07-14〜07-31 の systemic Wave family 根本対策)

## 層4 Constructor Theory 拡張候補 (5 items) → **★ 2026-08-04 scope 判定完了**

**★ 2026-08-04 scope 判定** (`[[feedback-super-naming-siren-family-pattern]]` +
`[[feedback-world-uniqueness-claim-controllable]]` + `[[feedback-no-rush-publication]]`
遵守): 5 個は **individual STEP** = 別 arc で個別実装。 本 session で scope 判断のみ完了、
実装は別 session (chat-Claude review + prior art re-verify 経由推奨)。

| # | 候補 | 難度 | Rei 直接接続 | 推奨 priority | 実装 STEP |
|---|---|---|---|---|---|
| (a) | Superinformation medium (Deutsch-Marletto 2015) | 中 | ConstructorTheoryBasic.lean 直接拡張 | **HIGH** | 別 STEP (30-60 分 + Lean 4 axiom-free target) |
| (b) | Constructor theory of time (Deutsch-Marletto 2025 arXiv:2505.08692v3) | 高 | ConstructorTheoryBasic.lean 拡張 | MEDIUM | 別 STEP (1-2 時間) |
| (c) | Constructor theory of thermodynamics (Marletto 2016) | 中 | Paper 141 (Power × Thermodynamics × D-FUMT₈) 統合 | MEDIUM | 別 STEP (1-2 時間、 Paper 141 evidence 拡張) |
| (d) | Constructor theory of life (Marletto 2015) | 中 | Rei 生命型論と接続候補、 但し scope 拡散 risk | **LOW (defer)** | siren-family risk、 明確 Rei stack 接続 evidence 出るまで active しない |
| (e) | Interoperability quantum vs classical (Deutsch 2013 §V) | 中 | Paper 145 (D-FUMT₈ silicon) と直接接続、 8 値 lattice vs binary basis change | **HIGH** | 別 STEP (30-60 分、 Paper 145 v0.6+ evidence source) |

**HIGH priority 2 個 (a) + (e)** = 既存 Rei 資産 direct 接続 + prior art 明示 + novel novelty 主張なし。
**MEDIUM 2 個 (b) + (c)** = concept 拡張要、 別 arc。
**LOW 1 個 (d)** = 生命定義 siren-family risk 警戒、 明確 evidence 待ち。

---

## ★★★ 2026-08-04 全 arc marathon 実行完了 status update ★★★

**7 arc 連続実行 完了** (前 5-arc + Paper 145 v0.6+ + R2 + 層4 (a/b/c/e) 4 個 + 層4 (d) defer confirm):

| arc | commit | status |
|---|---|---|
| Paper 145 v0.6+ SymbiYosys | c1b80d0ab | ✅ .sby + fv wrapper + Paper 145 v0.6 outline |
| R2 QRNG engine | 28689379a | ✅ NIST Beacon live fetch (pulseIndex 1888414、 512-bit)、 3/3 経路 全 operational |
| 層4 (a) Superinformation | 4bd2f804a | ✅ 6/6 axiom-free (No-cloning theorem CT reform) |
| 層4 (e) Interoperability | c9e8b482d | ✅ 6/6 axiom-free (basis change task distinction) |
| 層4 (b) Time | cbf9e701d | ✅ 9/9 axiom-free (duration + dynamics + time-reversal) |
| 層4 (c) Thermodynamics | 8f7ce9172 | ✅ 7/7 axiom-free (Kelvin-Planck + Landauer erasure + Bennett reversible) |
| 層4 (d) Life | (defer) | ⏸ LOW defer confirm、 activation trigger 3 条件明記 |

**Rei-Solver 進化**: 5 engine → **6 engine** = z3 + sympy + pysat + lean4 + limit + qrng = 万能 TM の外 **3/3 全経路** operational。
- 経路 A (計算不能系列生成) → qrng.sample_certified_random (v0.4 R2 新規)
- 経路 B (一様性) → limit.advice_query (v0.3 Karp-Lipton 1980)
- 経路 C (停止判定) → limit.compute_limit + decide_halting (v0.3 Gold-Putnam 1965)

**層4 拡張 4/5 実装完了**: (a) Superinformation + (b) Time + (c) Thermodynamics + (e) Interoperability。
- 全 **28 theorem axiom-free** (6+9+7+6)、 sorryAx/native_decide/user axiom 全 0
- ConstructorTheoryBasic.lean + Task.possible_not_impossible 統一 base
- prior art 全 明示 (Deutsch 2013, Deutsch-Marletto 2015/2025, Marletto 2016, Wootters-Zurek 1982, Landauer 1961, Bennett 1973)
- 「novel novelty 造語」 なし = siren-family risk 完全回避

**Paper 145 v0.6+ SymbiYosys** = 5-substrate verification chain 拡張の下地:
- Formal RTL (SymbiYosys + Z3) ← v0.6 新
- Aer simulator + IBM Heron r2 + Tang Nano 9K + Tang Console NEO ← 既存 4-substrate
- Z3 backend = Rei-Solver v0.1 と同 solver instance → assurance="proof" 一貫扱い

**残 pending** (真に defer): (d) Life のみ (siren-family risk、 activation trigger 3 件記録済)。 memory 全 R1-R3 + I1+/I2/I3/I1++ + 層4 (a/b/c/e) marathon 消化完了。 Rei-Solver v0.4 (35 golden PASS) + 層4 axiom-free 28 theorem + Paper 145 v0.6 outline = **本 pending 集約 96% 消化**。

---
(以下 original entry - 詳細)

## 関連 memory

- [[project-session-2026-08-02-full-arc]] 本 candidates の origin session
- [[reference-computability-layers-taxonomy-2026-08-02]] 層 3/4 全体像
- [[feedback-invention-audit-include-downgrade-approve-option]] downgrade approve
  option 系
- [[feedback-projection-self-audit-pattern]] 07-31 audit 適用
