STEPs 2176 · 2180 · 2181 · v0.7 → v0.8 → v0.9 · 2026-09-21 · rei-aios-fe

孤立度計 recall chain — v0.7 → v0.8 → v0.9

chat-Claude Code review が 順序 D→B→C→A を 提案。 D+#1 (cap-hit + git ctime) は v0.6 で 対応 済。 本 chain は B → C → A の 順で 3 STEP land。 v0.7 (B) = recall fixture と baseline metric、 v0.8 (C) = bare TS import + entry-point reachability filter、 v0.9 (A) = 意図宣言軸 (orphan-gauge: keep marker)。 fixture 上 F1 は 0.57 → 0.86 → 1.00 と 段階的 に 上昇、 chat-Claude 予想 完全一致。

Attribution: [via 藤本さん / orig: chat-Claude Code review 2026-09-21 v0.7/0.8/0.9 順番 request]
Route: chat-Claude review 6 items → 藤本さん explicit go 「v0.7/0.8/0.9 順番」 → rei-aios-fe tab で 3 STEP 連続 land → 3 STEP 統合 site page (本 page) → 帰宅後 review 待ち status「(未 review)」 明示。
Prior: STEP 2174 v0.6.1 · STEP 2171 v0.6 (D+#1) · STEP 1926 v0.1→v0.6-beta arc

Chain summary (chat-Claude review 対応 表)

STEPversion主 改善fixture Pfixture Rfixture F1
2171v0.6 (D+#1)cap-hit exit + git-ctime diff(recall metric 未実装)
2174v0.6.1flip stats + rename(recall metric 未実装)
2176v0.7 (B)recall fixture + baseline0.500.670.57
2180v0.8 (C)bare TS import + entry-point reachability0.751.000.86
2181v0.9 (A)intent-declaration axis1.001.001.00
Fixture F1 は 0.57 → 1.00 (75% 上昇) — chat-Claude 予想 「v0.8 で recall 1.00、 v0.9 で precision 1.00」 が 実装後 fixture で 完全一致。

v0.7 = B = recall fixture + baseline metric (STEP 2176)

chat-Claude review item B (「偽陰性 (recall) 未測」) の 対応。 従来 の tool は 「予測 orphan 件数」 は 出せたが、 「本当は orphan なのに LIVE 判定 した 件数 (FN)」 は 測っていなかった。 controlled fixture で ground truth を 定義、 混同行列 P/R/F1 を 計算可能に。

Fixture 7 file (chat-Claude 4 case を 全カバー)

file設定ground truthv0.7 予測 quadrant
src/entry.tsentry point、 3 import (2 with ext + 1 bare)not-orphanORPHAN (no incoming)
src/live1.tsentry で .ts extension importnot-orphanLIVE
src/live2.tsentry で 拡張子省略 bare importnot-orphanORPHAN (regex miss)
src/orphan1.ts誰も 参照しないorphanORPHAN
src/stale_ref.tsentry + dead_source 両方からnot-orphanLIVE
src/dead_source.ts誰も import しない、 outgoing のみorphanORPHAN
src/only_ref_by_dead.tsDEAD source のみから参照orphanLIVE (v0.7 は count 1 で LIVE)
v0.7 baseline:  TP=2 FP=2 FN=1 TN=2  |  P=0.5000  R=0.6667  F1=0.5714

v0.8 = C = bare TS import + entry-point reachability (STEP 2180)

chat-Claude review item C の 2 gap を 塞ぐ:

実装

v0.8 no-entry (bare-import 単独): TP=2 FP=1 FN=1 TN=3  |  P=0.6667  R=0.6667  F1=0.6667
v0.8 +entryPoints=[src/entry.ts]: TP=3 FP=1 FN=0 TN=3  |  P=0.7500  R=1.0000  F1=0.8571

Real repo 実測 (src/)

v0.9 = A = intent-declaration axis (STEP 2181)

chat-Claude review item A の 実装。 「意図して 保存 する 仕組み」 「RUIN ∧ 宣言あり → 正常、 RUIN ∧ 宣言なし → 規律違反」 を 具体化。

Marker syntax (substring match、 任意 text file で 動く)

// orphan-gauge: keep
// orphan-gauge: keep = "top-level CLI, imported by shell wrapper"

---
orphan-gauge: keep
---
v0.9 no-entry (intent 単独):    TP=2 FP=0 FN=1 TN=4  |  P=1.0000  R=0.6667  F1=0.8000
v0.9 +entryPoints+intent:      TP=3 FP=0 FN=0 TN=4  |  P=1.0000  R=1.0000  F1=1.0000

Chat-Claude 6 items 対応 status

item内容対応 STEPstatus
1mtime > commit 解釈 危ういv0.6.1 (STEP 2174)FIXED
2決定材料 = 象限 flip 件数v0.6.1 (STEP 2174)FIXED
3ctime naming 混同v0.6.1 (STEP 2174)FIXED
4test 件数 算数 (私 report 誤り)私 発話 訂正CORRECTED
5exit 1 blast radiusverify zeroNO-OP
A意図宣言軸 (manifest / frontmatter)v0.9 (STEP 2181)LANDED
Brecall (偽陰性) 未測v0.7 (STEP 2176)LANDED
C 前半regex 拡張 + entry-point reachabilityv0.8 (STEP 2180)LANDED
C 後半n=50 manual audit やり直し(手動 audit)DEFER — 藤本さん judgment 待ち
D + #1cap-hit + git-ctime diffv0.6 (STEP 2171)FIXED

Test coverage 合計

test filecountdomain
test/step1926-orphan-gauge-test.ts90/90 PASSv0.1 → v0.6.1 累積 (regression preserve、 deprecated alias 経路 verify 込)
test/step2176-orphan-gauge-recall-fixture-test.ts58/58 PASSv0.7/0.8/0.9 chain fixture + metric + reachability + intent + skipIntentScan regression

Honest scope

主張する

主張しない

Failure mode (未来 Claude 用 dataset)

Pattern: 分類器 の 精度 を 追う 時、 「fixture 上 F1=1.00」 と 「real repo 上 F1=1.00」 は 全く 別 の 主張。 fixture は 「該当 4 case を 全て 拾う」 の 確認、 real repo は 「該当 4 case 以外 の failure mode が 見えない」 blind spot が 残る。 honest scope で 「fixture 上」 の 限定 を 必ず 明記。

Prevention: real repo で 発見された 新 failure mode は fixture case に 追加、 baseline 更新、 対策 実装 (chain 継続)。 「4 case 完全対応」 で 満足 せず 「real 側 の unknown case」 を 常に 想定。

Recovery: v0.10+ で real repo audit で 新 pattern emerge したら 対応 STEP を chain に 継足す。 chat-Claude review が 4 case を 「代表的」 と 明示していた 通り、 網羅ではない。

defer chain (次 candidate)