-
-
Notifications
You must be signed in to change notification settings - Fork 0
issue completion condition scope
skills/operations-on-issue-format/SKILL.md は issue body の完了条件フィールドを一律で不要としている(26行「Issue completion is managed through issue state plus PR/CI/release flow, not a dedicated issue-body field.」)。この規定は維持すべきか、条件付きで緩めるべきか。
二値で分ける。判定線 = その完了条件は PR 単体で満たせるか。
- 満たせる → 書かない。汎用 close 条件(
rules/task/task.md「implementation done, CI pass, released | user confirms working」)が既に覆っており、issue ごとの再記述は重複になる - 満たせない → 書く。deploy 後の本番状態、実機の挙動、cron 数周後の観測、人間の確認など、PR / CI / release フローが観測しない完了には他に記録面が無い
「念のため書く」は入らない(rules/model/subtractive-structural-beauty.md spec write 規定「binary only — required or unnecessary」)。
元の指示(完了条件は書かなくてよい)は撤回しない。射程を明示するだけである。Master の当時の観測「テンプレートにあるから書いている感じ」は、proxy が届く範囲の issue に対しては正しい診断だった。
- relates to: liplus-evaluation-criterion — proxy と現実の分離という同一軸。本 entry はそれを issue 面へ適用したもの
- relates to: liplus-structure-as-retrieval-surface — 書かれた面が読み返される面を持つかどうか、という軸を共有する
2026-07-29、Liplus-Project/github-rag-mcp #178 で実測が出た。
同 issue の完了条件に「2026-07-07 以降の既存欠損を backfill し、本番 MCP の diff 走査で直近コミットが取得できる」が含まれていた。この条件は PR では満たせない。backfill は deploy 後にしか走らず、検証は本番の索引を叩く必要がある。
実際の経過:
- 委譲した subagent は code / test / docs を出し、CI 緑で停止・報告した。汎用 close 条件から見れば完了である
- PR merge により branch linkage で issue が自動クローズされた
- 完了条件の当該項が未達だったため reopen。deploy 完了を確認し、
POST /admin/diff-watermarkで watermark を巻き戻し、次の cron を待って本番走査で確認した
汎用条件は「完了」と言い、issue 固有条件だけが「未完」と言った。
なお、この判断には二つの面が別々に効いている。issue の完了条件が現実側の的(本番走査で直近コミットが引けること)を与え、rules/operations/operations.md Autonomous Run Stop Condition が観測の作法(deploy 完了 = cron 1周目をログで観測すること)を与えた。前者だけなら merge 直後に一度見て空振りしていた可能性があり、後者だけなら merge 時点で完了と報告していた。片方では成立しない。
- 汎用条件で足りる issue に完了条件を書かせる方向へは倒さない。大半の issue では重複であり、元の指示が観測した状態を再生産する
- 完了判定の大域規定(
rules/task/task.mdの close 条件)は変更しない - 新しいフィールドを常設しない
完了条件フィールドは廃止でも常設でもなく、proxy の外にある完了に限って必須とする。判定は書き手の裁量ではなく「PR 単体で満たせるか」の二値。
rules/model/foundational-invariant.md「Correctness is defined as real-world behavior that works as required」に照らすと、CI pass / merged は proxy であり、proxy が届く範囲でしか完了を判定できない。届かない範囲を名指すのが、このフィールドの唯一の存在理由である。
規則側への反映は #1625 で追跡する。
- #1625 issue completion field is banned outright, but post-merge-observable completion has no other surface
- github-rag-mcp #178 — 実測の出所
-
skills/operations-on-issue-format/SKILL.md26行 /rules/task/task.mdclose 条件 /rules/operations/operations.mdAutonomous Run Stop Condition
この判断記録は、以下の場合に削除する:
- #1625 が完了し、判定線が
skills/operations-on-issue-format/SKILL.mdに統合された時 - 判定線が「PR 単体で満たせるか」以外へ変更された時(supersede リンク付きで新 entry を作る)
この 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
- 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
- skill の発火条件は description 内に置く
- subagent parallel-width cap
- brake1 operational-copy target-conditional
- 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 完了条件フィールドの射程