Repository navigation
brake1 bounded convergence loop on pr comments
brake 1(skills/evolution-parallel-agent-eval)は単巡で打ち切る単発測定であり、所見は評価者 → 親 → 統合コメント1本 → 著者、裁定は commit body という経路を取っていた。#1862 が「受け皿より先に検出幅が縮んだ」窓を観測したとき、幅(N)を戻す以外にゲートの形で答える道はあるか。あるなら、ラウンド数・伝達面・裁定の置き場・親の位置はそれぞれどうなるか。
brake 1 は上限 3 往復の収束ループである。評価者と著者は PR コメントを直接の伝達面として往復し、親はその往復の内容を監督しない。
- 1 往復の定義 = 評価ラウンドの所見投稿 → 著者の応答(修正 commit /却下コメント/両方)→ CI green。初回の評価が 1 往復目。
- 上限は 3。 評価ラウンドも著者の応答も最大 3。出口は step 8 で、所見ゼロのラウンドが返ればそこで早く抜け、そうでなければ上限で抜ける。超過時に新しい機構は無く、現行 step 9 の位置でセルフレビューとマージ判断に入る。
- 所見の経路から統合の段が消える。 評価者は自分の所見コメント 1 本を PR へ直接投稿する。親は読まず、統合せず、取捨選択せず、順位を付けず、回答しない。親の取り分は中継とスケジューリングのみ(次のラウンドを開くこと、著者を resume して「スレッドを読んで裁け」と入口だけ渡すこと)。
-
裁定の置き場は PR コメント。 accept / reject とその理由は commit の有無で分岐せず、常に所見が届いたスレッドへ載る。「何も受理しなかった場合は commit body が無い」という旧分岐は消える(
rules/model/subtractive-structural-beauty.mdCore principle (A))。 - 却下は loop の内側では最終。 著者が理由とともに却下した所見は、以降のラウンドの評価者が再提起せず、著者も再裁定しない。
- 親の点検は消えず、位置が移る。 「読んでいないものは判断できない」は保たれるが、per-round から出口 1 回(step 9 のセルフレビューでスレッド全体を読み、却下が残ったままで妥当かを含めてマージ判断を記録する)へ移る。
- 評価者は毎ラウンド新規に spawn する。 resume はしない。器具が対象について無知な外部であること、および前回の所見はすでに PR スレッドに載っていることが根拠。ただしこれは暫定であり、fresh spawn と resume のどちらが多く検出するかは未測定(測定先 = #1848)。
-
supersedes
brake1-single-round-cap— 単巡打ち切りの規定そのものを置き換える。「修正後の再検証ラウンドを行わない」は「上限 3 往復まで行う」になった。同 entry の Non-scope が列挙していた降りた欠陥クラス 3 種のうち、親の修正が新設した欠陥と後半ラウンドでしか出ない散文層の 2 件は、修正が最終ラウンドより前に着地する限りループの射程に入る(skills/evolution-parallel-agent-eval/SKILL.mdNon-scope, What the three-round cap gives up)。初回実装に在り どのラウンドも届かなかった挙動欠陥は降りたまま。再評価条件(1 巡制限下で merge した変更が本番挙動として実害を出した場合)は形を変えて生きており、本判断では「上限内で打ち切った merge が観測可能な本番実害を出した場合」として引き継ぐ -
supersedes
brake1-findings-routed-through-parent— 転送経路・裁定の置き場・往復の上限の 3 点すべてを置き換える。評価者は PR へ直接投稿し(統合コメントは廃止)、裁定は commit body ではなく PR コメントに載り(分岐表の 3 行は 1 つの着地面へ畳まれた)、親→著者の無上限往復とその収束判断を親がskills/model-loop-safetyで保持する形は、固定上限 3 に置き換わって親は数えるのをやめた。同 entry が置いた原理「findings が親のコンテキストを通ることが監督を買う対価である」は位置が変わっただけで生きている — 親はスレッド全体を出口で読む。取捨選択の禁止 3 件(drop / rank / reply)も、親が中継役である限りそのまま効く -
depends on
brake1-evaluator-floor-lowered-to-one— 幅(N=1 の床と既定)は本判断で動かない。動いたのはラウンド数という第四の変数だけであり、幅と門とラウンド数は別軸である -
depends on
brake1-rerun-gated-on-what-the-round-audited— 同 entry の再走判定(停止理由ではなく「そのラウンドが何を監査したか」)は不変。その Ceiling(同一 baseline に対する 3 回目の試行)と本判断の 3 往復は数字が同じで宛先が違う。前者は verdict がゼロの周を数えて human へ上げ、後者は完了した往復を数えて親へ抜ける。ceiling の 2 回目の試行に居る run はまだ往復 1 の内側である -
depends on
brake1-firing-closed-by-criterion— 発火条件は本判断で一切動かない。全自己進化 PR で brake 1 は必須のままである -
relates to
brake-adjudication-by-resumed-author— 同 entry が元々置いていた「評価者は指摘を PR コメントに直接投稿する」という転送経路は、brake1-findings-routed-through-parentが一度置き換えた後、本判断で再び直接投稿へ戻る。ただし戻り値を 1 行に絞るという形ではなく、親は戻り値の内容を読まない中継役という形である。裁定主体(著者)・エージェント深さ 1・再構成フォールバックはいずれも不変 - conflicts with (現時点で対立 entry なし)
2026-09-03、Master 判断(dialogue)。起点は #1862 が観測した窓 — brake 1 の検出幅(N=3 → N=1)が、それを引き受けるはずの受け皿(#1853 の行動照合 probe)より先に縮んだ、という観測である。本判断はその論点に対し、幅を戻すのではなくゲートの形を変える側の答えを採った。
理由の根が動いていたことも駆動要因である。却下を commit body に置く根拠は rules/evolution/initiator-autonomy.md Merge brake の「単一ラウンド上限の下では評価者が再論しないので、親の点検だけがそれを支えている」という条件節だった。上限を外せばその条件節が外れ、却下は次ラウンドの評価者が検査できる。置き場を PR コメントへ移す根拠はここにある。
起票 = #1863、実装 = PR #1864。
-
基板の制約は仕様で回避できない。 サブエージェントは自分で起きられず、
SendMessageはサブエージェント同士を直結しない(サブエージェント発の送信は親セッションのアドレスで出る)。PR に webhook を張っても起きるのは親セッションである。したがって親は監督からは降りられるが、スケジューラからは降りられない。到達可能な形は「内容を読まない中継役」だけであり、本判断が採ったのはそれである -
却下を loop 内で最終としたのは上限を守るため。 再提起を許すと 3 往復すべてが一件の押し問答で埋まりえ、押し問答を決着させられるのは親だけである。それを許せば、本判断が往復の内側から外した裁定役が上限の内側へ戻る。代償として誤った却下は出口まで検査されない(
skills/evolution-parallel-agent-eval/SKILL.mdNon-scope, What the three-round cap gives up が「見落とし」ではなく「降りた」として明記している) -
収束は上限が担保し、
skills/model-loop-safetyの判断を親が保持する形は不要になった。 上限は run ごとに読むものではなく固定であり、ループの内側に数えている actor は居ない -
観測 n=0。 本 PR 自身の brake 1 は旧仕様(単巡)で走っており、ループが効くのはマージ後から。post-merge observation(
rules/evolution/memory-entry-format.mdSelf-Evolution Observation Format、2 週サイクル)に載せる - 再評価条件 = 上限 3 往復の内側で打ち切った merge が、本番挙動として観測可能な実害を出した場合。あるいは往復が常に上限まで伸び、削減したはずのコストが単巡時を上回った場合
採用:評価者 → PR コメント → 著者 → PR コメント、を上限 3 往復。親は入口を渡し、次のラウンドを開き、出口でスレッド全体を読む。
却下した案:
- 幅(N)を戻す。 #1862 の窓に対する直接の答えだが、床を下げた根拠(検出面を #1853 の probe へ移す)を撤回することになる。ゲートの形を変える方が、幅の判断を維持したまま検出の機会を増やせる
- 親が往復を監督し続ける形(現行の統合コメント経路を保ったまま上限だけ足す)。 親が per-round で所見を読む限り、ラウンドが増えるほど親のコンテキストに往復が積み上がる。監督は出口 1 回で足りるという判断がここに立っている
- 評価者を resume する形。 前回の所見を覚えているため上辺だけの修正を見抜けるが、自分の前回の所見にアンカーし、器具が「対象について無知な外部」でなくなる。効きが読めないため暫定で fresh spawn を採り、判断は #1848 の測定へ送った
この 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-L)
- 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
- L. Hop Count Instrument
判断構造
- 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
- Hook-driven gate trigger
- ゲート適用漏れは強制より先に測る
- dynamic-workflows non-adoption
- ACE context-engineering non-adoption
- memory GraphRAG SQLite exploration
- Li+ context-rot tension
- Li+ structure as retrieval surface
- 常時ロード分の重複を削る向き
- Li+ evaluation criterion
- Li+ self-evolution lineage
- Li+ judgment-learning telos
- Sheepdog Engineering publish intent
- Implementation always delegated
- brake evaluator baseline integrity
- brake1 single-round cap
- brake1 の再実行可否は監査内容で決める
- brake 指摘の裁定を再開した著者が持つ
- brake1 の発火条件を基準で閉じる
- skill の発火条件は description 内に置く
- subagent parallel-width cap
- brake1 operational-copy target-conditional
- brake1 findings は親を経由する
- brake1 の per-draft 軸を 2 本に固定する
- brake 2 の DEVIATION を人間が上書きする
- wiki sync code-notation strip
- wiki sync drift-targeted mirror
- decision structure writer surface activation
- decision structure state-form edge binding
- Neuron Graph RAG integrated prototype
- issue 完了条件フィールドの射程
- body 節と description の被覆ずれの解き方
- グラフエンジニアリング非採用
- Li+ の配布形式は GitHub 直配布
- 配布される source に config の解決値を書かない
- ルールは基準を持ち、来歴は git に置く
- 人間と AI の関係条項を absolute.md に置く
- 来歴を預けた retrieval 面が実際に答えるか
- 存在側の欠陥は空欄ラベルの可視性に届かない
- brake 2 の判定対象は変更の内容
- エージェント定義の判定基準を sentinel 区画で所有
- brake 2 を廃し L1 のゲートを brake 1 へ一本化
- 多セッションが効くのは入力が変わるとき
- source 本文は振る舞いのみ、理由は移設
- parallel-agent-eval 本文は振る舞いのみ
- agentic-search 蒸留版は full と同等(実測)
- 読みの除去テストが通した削除を実測が差し戻した
- brake1 の評価者数の床を N=1 へ
- Judgment record ポインタ要件を撤廃
- brake1 を上限 3 往復の収束ループへ
- 受け皿より先に縮んだ検出幅の窓を閉じる
- issue constraints の「対象ではない」は宣言
- クローン同一性は remote で解決
- tally は機構の名前の下に置く
- config 値比較は厳格に、外れた値は名指し
- webhook 到着通知の消去は確認を伴う
- 検索性能比較コーパスは既存リポジトリ内の path で隔離する
- MSYS のパス変換は argv だけに効く
- 観測不能な主張は書き手を替えても記録にならない
- parallel-agent-eval の 1 周目の跡に残っていたのは再掲
- 実装委譲エージェントに定義ファイルを与え effort を固定
- cold-start diff-only 状態は agent key でパーティション分割
- 観測不能の宣告はホストの母集団に対する主張
- 検出器は到達可能な位置にあって初めて検出器である
- ランタイムの rules はタグへ解決する
- 記録面の除外は読み直しで捕まる行にだけ成り立つ
- 再開プロンプトの注入項目は基準で閉じる
- 委譲プロンプトが運ぶのは境界であって手順ではない
- 規則の効きの実測の各条件は観測された失敗の上に置かれている
- parallel-agent-eval は蒸留で約 5,340 トークン、残りの超過は受容
- brake 1 の往復上限を撤廃し、同じ指摘の再発を人間へ上げる
- rules/evolution と rules/task の本文は振る舞いのみ
- rules/operations と adapter の本文は振る舞いのみ
- rules/model(L1)の本文は振る舞いのみ
- main-agent-procedures の常時ロード本文はメインの運用場面で行いを決める文のみ
- cold-start-synthesis の本文は振る舞いのみ、フックの仕様は docs へ
- initiator-autonomy の常時ロード本文は振る舞いのみ、tests の散文規則は skill へ
- operations.md の常時ロード本文は振る舞いのみ、索引と label 辞書の写しは持たない
- memory-entry-format.md の常時ロード本文は書式と保守のみ、observation 手順は skill へ
- promotion-judgment の常時ロード本文は振る舞いのみ、軸の関係の説明は docs へ
- execution-mode.md の常時ロード本文は、マトリクスを言い直さず、他の常時ロード面の写しも持たない
- task.md の常時ロード本文は issue とラベルの行いだけを持ち、写しと層の説明は持たない
- main-agent-procedures の場面に限られる手順は、名指しが届く skill へ
- evolution.md の常時ロード本文は振る舞いのみ、レイヤーの位置づけと他面の写しは持たない
- operations.md の場面に限られる節は、名指しが届く skill へ
- CLAUDE.md の常時ロード本文は振る舞いのみ、位置づけ・読込の説明・常時ロード面の写しは持たない
- initiator-autonomy の場面に限られる記述は、brake 1 の skill へ
- skill description の詰めは、場面を狭めない句だけを切る
- L1 の 5 本の 2 周目は内側の写しと位置づけの説明を外し、書く規律は常時ロードに残す
- subtractive-structural-beauty と trigger-check-gate の常時ロード本文は振る舞いのみ、言い直し・位置づけ・他所の再掲は持たない
- absolute.md の常時ロード本文は振る舞いのみ、Name prefix scope の言い直し・位置づけは持たない
- サブエージェント起動の着地点の目安と数値の出典