Repository navigation
chore: ai-repo-ops を導入 (aro init) - #3
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DLYNURXo71mPZJUBePwFgr
WalkthroughAIレビュー基盤を追加し、プロジェクト設定、JSON Schema、リスク別ポリシー、運用プロンプト、ロック情報、GitHub Actionsワークフロー、関連するGit設定を定義しました。 ChangesAIリポジトリ運用基盤
Estimated code review effort: 3 (Moderate) | ~20 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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 |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
.ai/managed/schemas/project.schema.json (1)
39-105: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winスキーマの堅牢性向上のため、各オブジェクトに
requiredの定義を追加することを推奨します。現在、
runtime、commands、quality_gates、ai、reviewの各オブジェクトにはプロパティの型定義が存在しますが、それらが必須フィールドとして指定されていません。
このため、該当フィールドがproject.yamlから誤って欠落してもスキーマ検証を通過してしまい、後続のaroコマンドで予期せぬエラーが発生する可能性があります。各オブジェクト内で必須とすべきプロパティを明示的に指定することで、設定漏れをスキーマレベルで防ぐことができます。♻️ 提案する修正
"runtime": { "description": "実行環境設定。", "type": "object", + "required": ["devcontainer"], "properties": { "devcontainer": {"commands": { "description": "repo の標準コマンド。空文字は未設定を表し doctor で WARN(init 直後は言語/FW 不明のため FAIL にしない)。", "type": "object", + "required": ["setup", "lint", "typecheck", "test", "build"], "properties": {"quality_gates": { "description": "PR / 改善で必須にする品質ゲート。required の各要素は commands のキーを指す。", "type": "object", + "required": ["required"], "properties": { "required": {"ai": { "description": "AI ハーネスの動作制約。", "type": "object", + "required": ["max_loops", "max_changed_files", "allowed_paths", "forbidden_paths"], "properties": { "max_loops": {"review": { "description": "レビュー / マージ方針。", "type": "object", + "required": ["create_pr", "require_human_review", "auto_merge"], "properties": { "create_pr": { "type": "boolean" },🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In @.ai/managed/schemas/project.schema.json around lines 39 - 105, Add required arrays to the runtime, commands, quality_gates, ai, and review object schemas, listing every property that project.yaml must provide in each object. Include devcontainer as required while preserving its nullable value, and ensure all command, quality-gate, AI, and review settings are validated as present.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Nitpick comments:
In @.ai/managed/schemas/project.schema.json:
- Around line 39-105: Add required arrays to the runtime, commands,
quality_gates, ai, and review object schemas, listing every property that
project.yaml must provide in each object. Include devcontainer as required while
preserving its nullable value, and ensure all command, quality-gate, AI, and
review settings are validated as present.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 94f3cd42-be17-4f58-8cff-fe0ef77ef3c6
📒 Files selected for processing (16)
.ai/ai-repo-ops.lock.yaml.ai/managed/policies/default.yaml.ai/managed/policies/low-risk.yaml.ai/managed/policies/security.yaml.ai/managed/prompts/improve.md.ai/managed/prompts/issue-fix.md.ai/managed/prompts/knowledge-refresh.md.ai/managed/prompts/release-check.md.ai/managed/prompts/review.md.ai/managed/schemas/knowledge.schema.json.ai/managed/schemas/project.schema.json.ai/project.yaml.gitattributes.github/workflows/ai-review.yml.gitignore.prettierignore
概要
ai-repo-ops v0.3.1 (distribution base 0.1.5) を
aro initで導入する。.ai/配下: project.yaml / managed policies / prompts / schemas / lock file.github/workflows/ai-review.yml: PR ごとにaro guard+aro knowledge checkを決定的に実行する reusable workflow 呼び出し (@v1= v0.3.1).gitattributes/.prettierignore/.gitignorepatch備考
aro doctorは 12 PASS / 5 WARN / 0 FAIL。WARN はすべてcommands.*が空 (init 初期値) によるものallowed_paths初期値 (src/**等) は本 repo の実態 (app/convex/) と乖離しているため、merge 後に別 PR で project.yaml を調整する (ai-repo-ops#22 の dogfooding データとして記録)🤖 Generated with Claude Code
https://claude.ai/code/session_01DLYNURXo71mPZJUBePwFgr
Summary by CodeRabbit
新機能
設定