STEP 1345v0.5.0-alpha SPIKE
benchtop-mcp v0.5.0-alpha 機器層/記録層 分割 spike — 4 agent verify 済 (30 min) 後の 半日実装
1. 経緯 (chat-Claude report → 4 agent verify → GO 判断)
藤本さん質問 (2026-08-19): 「何とかコネクタで世界一になれないものでしょうか?」
別 Claude session 出力 (2026-08-18): 「コネクタで世界一になれるか — 市場調査レポート」 (~21 KB、 256 行、 Anthropic 公式 dir 空白カテゴリ + Keysight 2026-07 公式 MCP 出荷 + QPillars 競合分析 + benchtop の 上半分 = 記録層 が 空白との 診断)。
私 (Claude Code) 対応: verify 先行 (option 1、 藤本さん承認) → 4 parallel general-purpose agent で 独立検証 → 判定 統合 → GO with framing 訂正 3 件 → 半日 spike 実装 (option 2、 藤本さん承認) → retain + STEP 化 (option 1、 藤本さん承認)。
4 agent verify 結果 summary
| # | Verify 対象 | 判定 | Confidence |
|---|---|---|---|
| 1 | MCPB stdio 配布 route 実在 | CONFIRMED | High |
| 2 | Anthropic 公式 dir T&M カテゴリ空白 (1,625 entry grep 0 hit) | CONFIRMED | High |
| 3 | Hash-chain × 測定 MCP ゼロ (8 query + 4 README 直読) | NOT REFUTED (narrow) | Medium |
| 4 | QPillars = 0 競合 (6 characterization all accurate、 但し 2 missed) | Partially defensible | High |
Report 側で 検出された 欠陥 (verify で判明)
agent-audit-trail-mcp README 「科学データ規格に非対応と明記」 の phrasing = README 直読で 該当箇所存在せず。 report は 隣接 primitive の脅威を 過小評価。
- Vouched KYA-OS MCP = RFC 9162 Merkle checkpoint + Ed25519 + JCS + DIF TAAWG WG 寄贈済 = 事実上の web 標準化進行中。 npm
@kya-os/mcp出荷済。 22 stars / 345 commits。 - EQTY Lab MCP Guardian = Apache-2.0 OSS、 199 stars、 透明 proxy pattern。 crypto は 親会社 AI Integrity Suite (TEE/confidential-compute on GPUs)。
2. Framing 訂正 3 件 (verify 後の 戦略 update)
訂正 1: 「0 競合」 → 「3-way intersection 空白」
crypto hash chain × SCPI/benchtop 機器 × Peace-Axiom safety layer の 3 way 交差点 のみ空白。 単純 「hash chain MCP」 は Vouched に 既に埋まっている。
訂正 2: 独自 primitive = hash chain ではなく Peace-Axiom safety layer
Rei stack STEP 1344 Asset ④ (Hash chain VerificationLog pattern) は domain-agnostic 永久 asset だが Vouched が同抽象で先行。 Rei 唯一の primitive = STEP 1344 Asset ② (Peace Axiom 物理 I/O 拡張) の operational 実装 = 本 spike の SafetyGate layer。
訂正 3: 速度 window 短縮
「NI 12-18 か月」 は正しいが、 Vouched が measurement 特化 pivot する window は 2-3 か月。 chat-Claude report §3-4 手順 #3 (仕様公開) を 手順 #1 (benchtop 分割) 直後に前倒し必要。
3. 実装内容 (benchtop-mcp commit 55706cc)
新 module benchtop_provenance.py (+458 行)
ProvenanceRecord (dataclass)
= instrument-agnostic 測定 record
fields: source, ts, channels, values, unit_hints, instrument, raw, attestation
SafetyVerdict (dataclass)
= safety check 出力
fields: ok, severity, rule_id, reason, suggested_fix, detail
SafetyGate (class)
= composable rule registry
built-in rule 1 個: Kikusui PLZ-5W CR mode Siemens/Ω 混同 hazard
import_external_session(source, records, ...)
= schema 検証 + safety check + 部分 accept/reject
build_session_dict_from_import(...)
= 既存 Session persistence 経路への adapter
benchtop_mcp.py 変更 (+221 行、 breaking なし)
- Session dataclass に
source: str = "benchtop"追加 (default で 全 backward compat、load_session()の forward-filter が protect) - MCP tool
import_external_session()追加 (regression_check と list_sessions の間、 audit log hook 済) - selftest phase [19a-19f] 6 sub-test 追加
- 既存
measure()flow は 完全に無変更
SafetyGate built-in rule 詳細 (Kikusui PLZ-5W CR mode)
Pattern: [SOURce:]CONDuctance[:LEVel][:IMMediate][:AMPlitude] <value>
Threshold: value > 1 S ⇒ < 1 Ω = 「100 Ω のつもり」 と 誤解 risk 大
Failure mode: 「100 Ω にする」 つもりで 100 を送ると 100 S = 0.01 Ω 短絡、 構文 error にならず silent 実行 (大容量 SR series 最大 2160 A 定格 では 人身安全 escalation)。
Source: data/external-prior-art/benchtop-devicedef-2026-08-17/devices/kikusui_plz5w.yaml quirk cr_mode_is_conductance_not_resistance、 severity dangerous、 Kikusui 自マニュアル 「ジーメンス」 単位表 明記 evidence。
4. selftest 実測 (18 既存 + 19 新規 6 sub = 全 PASS)
| Phase | Test | Result |
|---|---|---|
| 19a | valid rigol-mock (3 records) | accepted=3, session_id=ext-external-rigol-mcp-mock-* |
| 19b | Kikusui PLZ-5W hazard (2 safe + 1 hazard) | accepted=2, rejected=1, rule_id=kikusui-plz5w-cr-conductance-hazard, severity=dangerous, detail.equivalent_ohms=0.01 |
| 19c | all-reject batch | ok=False, session_id=None, records_rejected=2 |
| 19d | audit chain integrity (3 imports 後) | valid=True, total=15 (import 3 件 含む) |
| 19e | Siglent SDL1000X (non-Kikusui vendor) | accepted=1 (bypass、 Siglent は Ω 単位) |
| 19f | backward compat (旧 JSON, source field なし) | source='benchtop' default 適用 |
5. 独自 primitive の位置付け (2026-08-19 verify 後 確定)
| Layer | 状態 | 差別化 |
|---|---|---|
| Hash chain (v0.3.0 既存) | Vouched KYA-OS DIF 寄贈済 = 先行 | interop 目的で kya-os 互換 verify() 追加は 別 STEP |
| Session persistence (v0.4.0 既存) | ELN 系 商用多数 | novelty ゼロ、 audit chain 統合が 差 |
| SafetyGate (本 spike) | 誰も触れていない domain (4 agent verify) | Rei stack 独自 primitive = STEP 1344 Asset ② の operational 実装 |
| External import layer (本 spike) | Vouched は 直接 wrap route、 本実装は 独立 schema | 「他社 MCP output 潜在流入経路化」 の 実現 |
6. Rei stack impact
- benchtop-mcp: v0.4.0 → v0.5.0-alpha (spike bump)
- Rei stack MCP systems 5 → 5 (systems 数不変、 benchtop 内 tool 数 11 → 12)
- STEP 1344 Asset ② Peace Axiom hardware I/O 拡張 の operational form が 第 2 domain 拡張 (asset original = Kikusui manual audit archival、 本 spike = SafetyGate runtime rejection)
- chat-Claude report §3-4 手順 #1 「機器層/記録層 分割」 の 第 1 段完了
- 手順 #2 (他社 MCP output 受入 schema 拡張) は 本 spike で primitive 完成
- 手順 #3 (Measurement Provenance Spec 公開文書化) は 藤本さん stance judgment 次第
7. Honest scope (譲れない線)
8. commit + archival + 関連 memory
commit 一覧
| Repo | Commit | 内容 |
|---|---|---|
| benchtop-mcp | 55706cc | feat(v0.5.0-alpha): provenance layer + SafetyGate + import_external_session (SPIKE) |
| rei-aios | (本 commit) | STEP 1345 memory + site page + external-prior-art archival + index update |
Archival
data/external-prior-art/mcp-world-first-strategy-2026-08-18/mcp_world_first_strategy.md= chat-Claude 別 session 由来 report (immutable)data/external-prior-art/mcp-world-first-strategy-2026-08-18/ATTRIBUTION.md= source + purpose + license + verify 結果 summarydata/external-prior-art/mcp-world-first-strategy-2026-08-18/VERIFY_RESULTS.md= 4 agent verify 詳細記録 (8 query + verbatim quote + Vouched/EQTY 追加 audit)
関連 memory
project_step1345_benchtop_provenance_spike_2026-08-19.md(本 STEP arc、 full detail)project_benchtop_devicedef_external_asset_2026-08-17.md(前 別 session archival precedent、 本 arc 5 例目)feedback_peace_axiom_hardware_io_extension_2026-08-17.md(STEP 1344 Asset ② origin、 本 spike operational 実装 起点)feedback_super_naming_siren_family_pattern.mdinverse siren subtype (100=Ω vs 100=S)feedback_chat_claude_hallucination_warning.mdPattern 1/5 累計 (本 verify で +1/+2)feedback_world_uniqueness_claim_controllable.md(novelty 主張ゼロ discipline)feedback_all_research_site_reflection_default.md(2026-08-06 site 反映 protocol)feedback_no_rush_publication.md(急がずゆっくりと、 spike level 継続)project_research_only_stance.md(SaaS 化 判断 待ち)feedback_independent_verification_cross_agent_collaboration_2026-08-15.md(別 session cross-agent 扱い precedent、 本 spike 6 例目)feedback_one_reproduction_over_ten_unverified.md(load-bearing 主張の 順序原則 = verify 先、 実装後)
9. 次手 candidate (藤本さん judgment 待ち)
- SafetyGate rule 3 vendor 拡張 (PLZ-3W + SDL1000X + PLZ-5W input state = 別 STEP、 2-3 時間)
- kya-os interop 実装 (verify() 相当 interface + JOSE 検証 = 別 STEP、 1-2 日)
- Measurement Provenance Spec 起草 (C2PA + in-toto 参照 + ALCOA+/17025 対応表 = 別 STEP、 数日)
- MCPB desktop extension 提出 準備 (privacy policy 3 箇所 + manifest.json 整備 = 別 STEP、 stance shift 待ち)
- defer = 本 spike で primitive 段階 close、 藤本さん stance judgment 後 再開