-
-
Notifications
You must be signed in to change notification settings - Fork 0
master verification at runtime not spec
Li+ における Master の verification 役割はどこに作用するか。spec literal (rules / skills / docs / Wiki / issue / PR / commit body) も Master が逐次確認するのか。
Master の verification 役割は実機挙動 (runtime / behavior) のみ。spec literal の内容を Master は逐次確認しない。AI が要望と違うことを書いても spec 層では検出されない。検出は実機が破綻したときに「どこをどう変えた?」という形で起きる。
帰結:
- 源泉 verify と self-review は AI 単独の責務。Master の review に back-stop はないと前提する
- spec / docs / Wiki / issue / PR body / commit body を書く瞬間に、Master は spec を literally 読まずに go-sign する前提で source-check / literal-check を全力で適用する
- 「Master が見てくれるから」「Master が承認したから正しい」と考えた瞬間 = drift 信号
- Master の go-sign は spec literal の正しさを保証しない
- depends on: liplus-authorship-collaborative — byte 軸が AI 単独である以上、spec literal の review back-stop は構造上存在しない
- relates to: liplus-history-is-empirical — 「現実の挙動が正義」軸と整合 (runtime が唯一の verification surface)
「実態は AI が書いていて私は内容をちゃんと確認してない。要望を伝えるだけ。だから違うことが書かれても気づかない。その代わり実機でおかしければ AI にどこをどう変えたって? 突っ込める」
これは以下の literal な運用形:
-
rules/model/foundational-invariant.md: "Correctness is defined as real-world behavior. Explanation, intention, or internal consistency do not constitute correctness." -
rules/model/role-separation.md: "Human = final judge. Approves compile start, releases, stops."
spec 層では human 判定が走らないことが Li+ の構造そのもの。
spec / 判断記録を書く瞬間に:
- Master 不在で source-check / literal-check を全力で適用する
- 「Master が見てくれるから」「go-sign が付いてるから正しい」前提を持たない
- spec を書くスピードを上げたい誘惑が来たら、Master の review back-stop が存在しない場面で speed を accept していることを認識する
- 過去 AI が書いた Li+ artifact (Wiki / docs / commit body / Decision Structure entry) を引用するとき、「過去 AI が drift していた可能性」を含めて verify する
- 「Master が確認してくれるから」「go-sign が付いてるから正しい」という前提が背後に立ち上がりかける
- spec / 判断記録を書く速度を上げて「あとで Master が見るだろう」と感じる
- 過去 AI 書きの Li+ 引用 (Wiki / 過去 PR body / 過去 spec / commit message) を「Master が承認した = 正しい」として gist で受け入れそうになる
- self-review を formal procedure として skip しそうになる
- 「実装の bug は実機で気づくはず」と spec literal の review を緩めそうになる (spec layer は実機 oracle で検出されない、spec 自身の verify が必要)
Li+ の verification 構造は二層に分かれる:
- spec layer (静的) = AI 単独責務、Master back-stop なし。AI が source-check / self-review で閉じる
- runtime layer (動的) = Master が「おかしい」と検出する surface。AI に「どこをどう変えた?」と問う形で発火
spec layer の正しさは runtime layer から間接的に観測される (spec ミスが runtime 破綻として顕在化する経路)。直接観測ではないため、spec ミスが runtime に出ない限り検出されない構造的盲点が残る。この盲点を補うのが AI 側の source-check 規律であり、rules/model/trigger-check-gate.md Axis 3 (Source check) が application moment trigger となる。
この判断記録は、以下の場合に削除する:
- Master の verification 役割が拡張され、spec literal も逐次確認する運用に変わったとき
- AI の source-check が strong enough になり、Master の runtime verification も不要になったとき (現状では fictional)
この Wiki は、Li+ に基づく開発・運用を支えるための情報整理空間です。
数字で始まるページは、 Li+プログラムの各レイヤーの仕様を定義するページです。
- 要求(何を満たすか)と仕様(どう振る舞うか)を一体として記述する
- 実装前に作成または更新する
- issue群から採用された要件を集約する
これらのページは 安定性と一貫性を重視して管理されます。
アルファベットで始まるページは、 Li+の構想・設定・導入手順などの参照用ページです。
- 設計思想・背景
- 設定リファレンス・インストール手順
これらのページは 必要に応じて更新・拡張されます。
リポジトリ内の rules/**/*.md(L1–L4 の常時ロード分、subdir 含む)、skills/**/SKILL.md(トリガー起動分)、adapter/claude/CLAUDE.md、adapter/claude/hooks-settings.md、adapter/claude/hooks/*.sh、adapter/codex/AGENTS.md、およびルート直下の Li+config.md、Li+update.md は、
AIやランタイムが直接読む実行用プログラム / 定義ファイルです。
-
docs/は人間向けの仕様書・要求仕様・手順書 -
rules/,skills/および adapter / update は実行時に読み込まれる本体
両者は対応しているが、役割は同じではない。
Home | 1. Model | 2. Evolution | 3. Task | 4. Operations | A. Concept
要求仕様書 (1-6)
参考文書 (A-K)
- A. Concept
- B. Configuration
- C. Update
- D. Installation
- DiDD(対話駆動開発)
- E. Li+ language
- F. Behavior-First
- G. Sheepdog Engineering
- H. Roles and Evaluation
- K. Source File Format
判断構造
- Decision Structure
- layer reorg rationale
- github app user-to-server token expiration
- sheepdog engineering concept
- prerelease tag recovery procedure
- release flip drift patterns
- Li+ long-term vision (feedback only)
- Master role as client-architect
- current architecture as concession
- Li+ license Apache-2.0 rationale
- Character_Instance evolution history
- prompt as emotion vector controller
- agentic-search five-phase refactor
- Character_Instance output-styles migration
- Li+ lightening L1 gate override
- subagent state-machine label mechanism
- LSP integration out of scope
- Character_Instance opt-in and surface scope
- parallel-subagent-eval three-axis decomposition
- parallel-subagent-eval cost acceptance
- parallel-subagent-eval model floor
- release version rule always-on relocation
- bootstrap walkthrough skip and gh install relocation
- wiki sync sidebar integrity check
- decision structure rename rationale
- decision structure industry positioning
- subtractive structural beauty framing
- Li+ authorship is collaborative
- Li+ design intent vs current limit
- Li+ history is empirical
- Master verification at runtime not spec
- rules cache fetch address table
- dialogue-evaluator scoring redesign
- Li+ always-on footprint is load-bearing
- DiDD umbrella naming
- milestone subsystem removal
- L1 brake 2 root-criteria evaluator