feat(quality): trial CodeRabbit alongside critic#192
Conversation
Add a scoped CodeRabbit configuration so the trial reviews forge-loop production code for correctness and security while leaving style/lint ownership with Ruff and the manifesto-aware critic. Document reviewer responsibilities and the conflict-resolution rule for contributors.
|
Operator handoff for #159: I cannot install the GitHub App from this CLI session. Please install CodeRabbit for \ only at https://github.com/apps/coderabbitai, keep it on the free OSS plan, then re-trigger CodeRabbit on this PR. Verify the repo is visible in the CodeRabbit dashboard at https://app.coderabbit.ai/dashboard by selecting/filtering . |
|
Operator handoff for #159: I cannot install the GitHub App from this CLI session. Please install CodeRabbit for |
hadamrd
left a comment
There was a problem hiding this comment.
[sev2/product] NO-SCAFFOLD-THEATRE: this PR adds the CodeRabbit integration config while the downstream consumer is not wired up; the PR also leaves manual smoke PRs unrun, so the config is orphaned and unverified. Install/wire CodeRabbit for this repo and run the src/tests/style smoke checks, or keep the integration out of the default surface until it is live.
| @@ -0,0 +1,30 @@ | |||
| language: en-US | |||
There was a problem hiding this comment.
[sev2/product] NO-SCAFFOLD-THEATRE: this PR adds the CodeRabbit integration config while the downstream consumer is not wired up; the PR also leaves manual smoke PRs unrun, so the config is orphaned and unverified. Install/wire CodeRabbit for this repo and run the src/tests/style smoke checks, or keep the integration out of the default surface until it is live.
hadamrd
left a comment
There was a problem hiding this comment.
Critic findings:
- [sev1/product] Issue #159 requires the CodeRabbit GitHub App to be installed on hadamrd/forge-loop and visible in repo integrations, but the PR body explicitly marks that acceptance item incomplete and only leaves an operator handoff. Complete the app installation, link the live repo dashboard, and re-trigger before merge.
|
Closing this because the current CodeRabbit trial spec depends on external GitHub App installation plus manual smoke PRs. That leaves a PR waiting on operator action, which is not acceptable for ForgeLoop as a fully automated repo tool. If we revisit second-opinion review, it should be implemented as an automated, locally invokable reviewer/tool adapter with a deterministic skip/fail contract, not as a manual install handoff. |
Summary
.coderabbit.yamlscoped tosrc/forge_loop/**withtests/**excluded from CodeRabbit review.reviews.profile: assertive, enable Ruff, and disable overlapping generic style/language lint tools so CodeRabbit focuses on correctness and security.docs/CONTRIBUTING.md: manifesto-aware critic owns style/architecture/testing rules; CodeRabbit is the second-opinion correctness/security reviewer.CodeRabbit install handoff
I cannot install the GitHub App from this CLI session. Operator: install CodeRabbit for
hadamrd/forge-looponly at https://github.com/apps/coderabbitai, keep it on the free OSS plan, then re-trigger CodeRabbit on this PR.CodeRabbit dashboard URL for repo verification: https://app.coderabbit.ai/dashboard (filter/select
hadamrd/forge-loopafter install).Acceptance criteria
.coderabbit.yamlexists at repo root.src/forge_loop/**and excludetests/**.reviews.profile: assertiveis set.docs/CONTRIBUTING.mdhas a Reviewers section and conflict-resolution rule.hadamrd/forge-loopunder the free OSS plan.Testing
uv run python -c 'import yaml; yaml.safe_load(open(".coderabbit.yaml")); print("yaml: ok")'uv run python -c 'import yaml; data=yaml.safe_load(open(".coderabbit.yaml")); assert data["reviews"]["profile"] == "assertive"; assert "src/forge_loop/**" in data["reviews"]["path_filters"]; assert "!tests/**" in data["reviews"]["path_filters"]; assert data["reviews"]["tools"]["ruff"]["enabled"] is True; print("coderabbit config sanity: ok")'rg -n "CodeRabbit|manifesto-aware critic|Reviewers" docs/CONTRIBUTING.mduv run pre-commit run --files .coderabbit.yaml docs/CONTRIBUTING.mduv run pre-commit run --all-filesfails on pre-existing repo-wide Ruff/Pyright issues unrelated to this config/docs PR; Ruff also attempted broad Python rewrites, which were restored before this PR.lumen: discovery skipped (mcp__lumen__semantic_search unavailable in this session)Fixes #159