---
name: project-step1372-mcp-wrapper-finding-32-2026-08-23
description: "STEP 1372 rei-aios MCP wrapper for d8_verdict_from_multi_trial + finding #32 訂正 (banner off-by-one drift、 STEP 1349 pattern 再発)"
metadata: 
  node_type: memory
  type: project
  originSessionId: 1f71dc26-eff6-41db-8142-70648b0a0ec2
  modified: 2026-08-22T15:25:48.161Z
---

# STEP 1372 — d8_verdict_from_multi_trial MCP wrapper + finding #32 訂正

**Date**: 2026-08-23
**Status**: MCP wrapper 統合完了、smoke test 全 pass、site page + memory + docs 更新
**契機**: 藤本さん directive 「defer 5 項目 (a)-(e) を進めて頂けますか」 の (a) MCP wrapper 統合

## 実装 (rei-aios single-commit)

### `src/mcp/rei-mcp-server.ts` 4 edit
1. **import** `mapMultiTrialToD8` + `d8MultiTrialSpecTable`
2. **Tool 定義** `d8_verdict_from_multi_trial` (description ~1500 chars で 8 rule + STEP 1350 相補 + 順序原則 + honest scope 全列挙、finding #30/#31 preventive design 継承)
3. **Case handler** thin wrapper (trials array normalize + fdrQ/alpha pass-through + includeSpec で specTable dump)、STEP 1350 case pattern 完全 mirror
4. **Banner update** v2.8.1 → **v2.8.2**、「38ツール」→ **「40ツール」** (実 39 + 新 1)、finding #32 訂正明記

### Finding #32 訂正 (banner off-by-one drift)
- **Pre**: banner 「38ツール」 vs `grep -cE '^\s*name:\s*"'` = 39 → drift
- **Origin**: STEP 1349 memory 2026-08-20 で 「description drift 3 例目 = finding #30 (rei-aios `get_kernel_status`) + finding #31 (rei-meta 自身) 同型」 記載済、本 STEP で 再発 spot fix
- **Post**: banner 「40ツール」 = 実 tool count 一致
- **Pattern**: 「開通した計器が 最初に映したもの」 4 例目 (STEP 1334 KA wiring + 1336 Rei-Automator revival + 1349 D8 connectors の 系譜)

## Verify 実測

- **tool count exact**: `grep -cE '^\s*name:\s*"'` = **40**
- **MCP stdio smoke test** (chat-Claude 核心 M6 case): trials=[{p:0.04},{p:0.045},{p:0.06}], q=0.05, alpha=0.05 →
  - `aggregateVerdict.name = "NEITHER"` ✓
  - `aggregateReason = "all_naive_killed_by_fdr"` ✓
  - `naiveSignificantCount = 2`, `fdrSurvivorCount = 0` ✓
  - per-trial: [0] NEITHER + [1] NEITHER + [2] FALSE ✓
  - `source = "multi-trial-fdr-verdict-mapping"` ✓ 静的引き当て機械保証
  - `honestScope` embedded ✓
- **Regression**: STEP 1371 primitive test 89/89 PASS、STEP 1350 case 無変更 (MCP init 全 case parse 成功で confirmed)

## Site 反映

- **URL**: https://rei-aios.pages.dev/tools/step-1372-mcp-wrapper-finding-32/ (deploy verify pending)
- **file**: `public/tools/step-1372-mcp-wrapper-finding-32/index.html` (~11 KB self-contained HTML、5 section)
- **dist-renderer mirror**: force-track、md5 一致 `510b0ed7a4fec01a8c4c41009442f6f8`
- **2026-08-06 「全研究 site 反映 default」 protocol 継続**

## Honest scope (5 条)

1. 「世界初」 主張ゼロ ([[feedback-world-uniqueness-claim-controllable]])、wrapper wire-up + drift 訂正のみ novelty ゼロ
2. Finding #32 = 累積 drift の 一部、systemic 対策 (init 時 auto-count + banner 自動生成) は 別 STEP candidate
3. Wrapper は thin、schema validation は primitive の decision-table に委譲
4. Description ~1500 chars 意図的 = finding #30/#31 preventive design 継承 (返却 field 全列挙 + honest scope)
5. Rei stack MCP 8 systems 数不変 (rei-aios 内 tool 39→40、systems 数 8)、MEMORY.md L10 header 「v2.8.1 tool 38」 は drift → 「v2.8.2 tool 40」 に update 対象 (STEP 1374 doc cleanup で bulk)

## 関連

- [[project-step1371-d8-verdict-from-multi-trial-v01-2026-08-22]] — primitive origin
- [[project-step1350-d8-verdict-mapping-phase-a-2026-08-20]] — wrapper pattern mirror 元
- [[project-step1349-d8-operator-connectors-2026-08-20]] — finding #30/#31 origin、本 STEP #32 は 同 pattern 再発
- [[feedback-super-naming-siren-family-pattern]] — description 長化 preventive design 根拠
- [[feedback-all-research-site-reflection-default]] — 2026-08-06 protocol
- Defer 5 項目 の (a) 完了、残 (b)-(e) 別 STEP 進行 (STEP 1373 = Welch-t / STEP 1374 = doc cleanup / STEP 1375 = discovery-worker adapter)
