docs(adr): D-1 ADR amendments bundle + workflow gap#145
Conversation
…4) + workflow gap 反映 Phase D dogfood の 1 本目 (D-1)。3 件 ADR 採用 + Phase D 計画 land + workflow gap 反映を bundled。 順位 112 (PR #142 T3-#3): ADR-038 に 2 section 追記 - Diagnostic logging scope: eprintln (CLI 前提) と structured logging 移行条件 - 90% 閾値 rationale: 保守採用根拠 + Phase D 完了時の precision/recall 評価方針 順位 113 (PR #142 T3-#4): ADR-027 に metrics override 判断基準追記 - Incidental change vs Responsibility change の線引き - Override 記述様式 (Override / Reason / Rationale の 3 項目) 順位 114 (PR #143 T3-#1): ADR-040 新規作成 - mistral:7b context size 実測値 (8K 512MB 5-20s ↔ 32K 2GB 30-90s) - step_timeout 3.33x 比例係数の根拠 - num_ctx 選定 flow chart - CLAUDE.md ADR index 追加 - lib-ollama-client/src/lib.rs L128-139 dogfood evolution コメントを 4 行参照に短縮 Phase D 計画 land + workflow gap (新規): - analysis.md に D-1/D-2/D-3 PR 構成 + 計測手順 + 想定リスクを追加 - D-1 着手時に判明した workflow gap (jj auto-snapshot vs session-only opt-in) を計測手順に反映 - env var override (LINT_SCREEN_ENABLED) を todo8.md / todo-summary.md (順位 115) に backlog 登録 - D-1 自身は dogfood skip、env var override land 後に D-2 / D-3 で実 dogfood 実施 D-1 lint_screen 状態: skipped。Phase D guide §1 session-only opt-in workflow が jj auto-snapshot と 本質的に衝突するため、配列 env var override の cli-push-runner 実装 (順位 115) を D-2 前に land 必須。
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (9)
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthroughこのPRはドキュメント主体の更新であり、ローカルLLMのコンテキストサイズ選定方針を ADR-040 として新規定義し、既存ADRの運用指針を拡張、Phase D実行計画を整理している。タスク追跡の完了処理と LINT_SCREEN_ENABLED オーバーライド機構も併行更新。 ChangesLocal LLM Context Size ADR及びPhase D実行計画
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…1/103/106) (#146) * docs(todo,analysis): post-merge-feedback PR #145 採用 2 件登録 + Phase D D-1 完了反映 PR #145 (D-1) merge 後の post-merge-feedback で採用された 2 件 (Tier 3 #1 + #3) を todo 系列に登録し、analysis.md の Phase D section に D-1 land 状況と副産物を反映する。 順位 116 (Tier 3 XS、PR #145 T3-#1): - ADR-040 step_timeout 説明に sublinear / KV cache locality clarification 追記 - 実測値 600s 採択 / 保守上限 720s / sublinear 性の KV cache 根拠 順位 117 (Tier 3 S、PR #145 T3-#3): - coding-style.md § Cross-File Reference Lifecycle に ephemeral → permanent 知識移管 edit order を追記 - 3 ステップ原則 (① permanent target 先行作成・validate → ② 参照追加 → ③ 参照元削除) analysis.md Phase D section 更新: - D-1 land 状況 (PR #145、298 行、ZERO findings APPROVE) を table の状態列に反映 - 順位 115 を D-2 前 critical path として明示 - D-1 dogfood outcome として 4 項目記録 (skip 理由 / workflow gap 発見 / ADR-040 fix / migration codify) 順位 115 (Tier 1) の rationale に「post-merge-feedback Tier 1 #1 で再 validate 済」を追記。 * feat(hooks-post-tool-linter): D-2 lint rule code touch (順位 101/103/106) Phase D dogfood の 2 本目 (D-2)。lint rule の test gap + struct doc + self-exclusion guards を bundled。 順位 101 (PR #140 T1-#1 採用): rule⑧ depth-1 root MD edge case test 2 件追加 - md_no_docs_relative_detects_root_level_back_reference (CLAUDE.md fixture) - md_no_docs_relative_detects_root_readme_back_reference (README.md fixture) - 「fire = true positive」整理を doc comment と test 名で明示 - root-level MD からの ../docs/ 参照は repo 外を指す broken link で真陽性が正しい挙動 順位 103 (PR #140 T1-#3 採用): CustomRule struct に lint runner field reference doc comment 追加 - サポート field 一覧 (id/pattern/severity/message/extensions/why/fix/example) を /// で記述 - planned field (paths、順位 102) も併記し設計-実装 gap を構造的に予防 - custom-lint-rules.toml 冒頭コメントに main.rs CustomRule struct への動線追加 順位 106 (PR #141 T2-#1 採用): self-exclusion invariant test に 2 false-green guards 追加 - assert!(path.exists()) — deployed TOML 削除 / 移動時の silent pass 抑止 - assert!(extensions contains "toml") — rule scope 変更時の silent degradation 抑止 - 各 assertion message に silent degradation のリスクと由来 (順位 106 / PR #141 T2-#1) を inline で記述 cargo test pass: hooks-post-tool-linter 95 tests (新規 2 + 既存 +1 強化、ZERO regression)。 PR #145 = D-1 と同様、lint_screen dogfood は順位 115 (env var override) land 前のため skip。
…hase D D-1 workflow gap 解消) Phase D D-1 (PR #145) 着手時に発見した workflow gap (jj auto-snapshot vs session-only opt-in) を 解消する env var override 経路を cli-push-runner に追加する。post-merge-feedback Tier 1 #1 で再 validate された Tier 1 priority。D-3 (順位 102) 着手前の critical path。 順位 115 (PR #145 post-merge-feedback Tier 1 #1): 実装 (config.rs): - ENV_LINT_SCREEN_ENABLED const = "LINT_SCREEN_ENABLED" - parse_lint_screen_env() pure function: env raw value → LintScreenEnvOverride enum * true / 1 / yes / on (case-insensitive、空白 trim) → ForceEnable * false / 0 / no / off / "" / unset → RespectToml (no-op) * その他 → InvalidValue (warning emit + 安全側で TOML 値尊重) - apply_lint_screen_env_override() side-effect: env をTOML override に適用 * ForceEnable + [lint_screen] section absent → default LintScreenConfig 生成 (enabled=true) * ForceEnable + section present → enabled = true で上書き * RespectToml → no-op (片方向設計、誤って commit しても remote PR は default OFF) - load_config() で TOML parse 後・validate 前に apply_lint_screen_env_override 呼出 unit test 10 件追加: - parse_lint_screen_env_unset_yields_respect_toml - parse_lint_screen_env_force_enable_variants (8 variants) - parse_lint_screen_env_respect_toml_variants (8 variants) - parse_lint_screen_env_invalid_value (5 variants) - apply_env_override_force_enable_on_absent_section_creates_lint_screen_config - apply_env_override_force_enable_overwrites_toml_false - apply_env_override_respect_toml_keeps_toml_enabled_true - apply_env_override_respect_toml_keeps_toml_enabled_false - apply_env_override_unset_keeps_toml_section_absent - apply_env_override_invalid_value_respects_toml docs: - Phase D guide §1 Setup を env var ベースに rewrite (旧 'config 編集' 記述を削除) * PowerShell example: $env:LINT_SCREEN_ENABLED = "true" / Remove-Item env:LINT_SCREEN_ENABLED * 片方向設計の意義 + ADR-039 試験運用標準パターンとの整合 - analysis.md Phase D section を順位 115 land 反映に更新 (D-3 unblock、D-1/D-2 副産物 list 整理) - todo8.md / todo-summary.md から順位 115 entry 削除 cargo test pass: cli-push-runner 67 tests (新規 10 + 既存 57、ZERO regression)。 Phase D 進行: D-1 ✅ / D-2 ✅ / 順位 115 ✅ / D-3 ⏳ (env var workflow で初の実 dogfood)
…hase D D-1 workflow gap 解消) (#147) Phase D D-1 (PR #145) 着手時に発見した workflow gap (jj auto-snapshot vs session-only opt-in) を 解消する env var override 経路を cli-push-runner に追加する。post-merge-feedback Tier 1 #1 で再 validate された Tier 1 priority。D-3 (順位 102) 着手前の critical path。 順位 115 (PR #145 post-merge-feedback Tier 1 #1): 実装 (config.rs): - ENV_LINT_SCREEN_ENABLED const = "LINT_SCREEN_ENABLED" - parse_lint_screen_env() pure function: env raw value → LintScreenEnvOverride enum * true / 1 / yes / on (case-insensitive、空白 trim) → ForceEnable * false / 0 / no / off / "" / unset → RespectToml (no-op) * その他 → InvalidValue (warning emit + 安全側で TOML 値尊重) - apply_lint_screen_env_override() side-effect: env をTOML override に適用 * ForceEnable + [lint_screen] section absent → default LintScreenConfig 生成 (enabled=true) * ForceEnable + section present → enabled = true で上書き * RespectToml → no-op (片方向設計、誤って commit しても remote PR は default OFF) - load_config() で TOML parse 後・validate 前に apply_lint_screen_env_override 呼出 unit test 10 件追加: - parse_lint_screen_env_unset_yields_respect_toml - parse_lint_screen_env_force_enable_variants (8 variants) - parse_lint_screen_env_respect_toml_variants (8 variants) - parse_lint_screen_env_invalid_value (5 variants) - apply_env_override_force_enable_on_absent_section_creates_lint_screen_config - apply_env_override_force_enable_overwrites_toml_false - apply_env_override_respect_toml_keeps_toml_enabled_true - apply_env_override_respect_toml_keeps_toml_enabled_false - apply_env_override_unset_keeps_toml_section_absent - apply_env_override_invalid_value_respects_toml docs: - Phase D guide §1 Setup を env var ベースに rewrite (旧 'config 編集' 記述を削除) * PowerShell example: $env:LINT_SCREEN_ENABLED = "true" / Remove-Item env:LINT_SCREEN_ENABLED * 片方向設計の意義 + ADR-039 試験運用標準パターンとの整合 - analysis.md Phase D section を順位 115 land 反映に更新 (D-3 unblock、D-1/D-2 副産物 list 整理) - todo8.md / todo-summary.md から順位 115 entry 削除 cargo test pass: cli-push-runner 67 tests (新規 10 + 既存 57、ZERO regression)。 Phase D 進行: D-1 ✅ / D-2 ✅ / 順位 115 ✅ / D-3 ⏳ (env var workflow で初の実 dogfood)
Summary
Phase D dogfood の 1 本目 (D-1)。Phase D 前提整備 PR #144 land 後の 3 件 ADR 採用 + Phase D 計画 land + workflow gap 反映 を bundled。
採用済 task (順位)
eprintln!(CLI 前提) と structured logging 移行条件step_timeoutの sublinear scaling (context 4x = timeout 3.33x、reference table 形式)src/lib-ollama-client/src/lib.rsL128-139 dogfood evolution コメントを ADR-040 参照に圧縮LINT_SCREEN_ENABLEDenv var override を cli-push-runner に追加D-1 lint_screen dogfood: skipped
Phase D guide §1 の「session-only opt-in」 (
[lint_screen] enabled = trueを commit せず runtime のみ反映) は jj の auto-snapshot 性質と本質的に衝突する ことが D-1 着手時に判明。push-runner-config.tomlを編集すると即座に @ にスナップショットされ、pnpm pushがその commit を remote に送ってしまうため「local enable / remote disable」が成立しない。D-1 は ADR markdown のみで lint_screen が code lint findings を検出しない予測 (informational 0 件) のため、本 PR は
enabled = falseのまま push して dogfood をスキップ。Phase A 前提整備 PR #144 で pipeline integration は smoke test 4 件で seal 済のため、D-1 skip による metrics ロスは限定的。順位 115 (env var override) を D-2 着手前に land して、D-2 / D-3 で実 dogfood を実施する。
diff stat
lib-ollama-client/src/lib.rsコメント圧縮)Test plan
関連
DEFAULT_NUM_CTX = 32768overflow_hint+ diagnostic log🤖 Generated with Claude Code
Summary by CodeRabbit
リリースノート
Documentation
Chores