Skip to content

feat(csa): add pre-review quality gate, project hooks, and configurable timeout#383

Merged
RyderFreeman4Logos merged 1 commit intomainfrom
feat/pre-review-gate
Mar 8, 2026
Merged

feat(csa): add pre-review quality gate, project hooks, and configurable timeout#383
RyderFreeman4Logos merged 1 commit intomainfrom
feat/pre-review-gate

Conversation

@RyderFreeman4Logos
Copy link
Owner

Summary

  • Pre-review quality gate: Runs just pre-commit before review/debate sessions to catch lint/test failures early, with configurable retry count and pass-through mode
  • Project-level hooks: New [hooks] section in .csa/config.toml supporting pre_review, post_review, and pre_commit hooks with global/project merge
  • Configurable review timeout: ReviewConfig.timeout field with proper is_default() guard for serde-default safety (rule 016)
  • review_cmd refactor: Extract argument resolution into review_cmd_resolve.rs, reducing review_cmd.rs from monolith to focused orchestrator

Key Files Changed

New modules

  • crates/cli-sub-agent/src/pipeline_gate.rs — Quality gate implementation (245 lines)
  • crates/cli-sub-agent/src/pipeline_gate_tests.rs — Gate unit tests (334 lines)
  • crates/cli-sub-agent/src/review_cmd_resolve.rs — Review arg resolution (377 lines)
  • crates/csa-config/src/config_merge_tests_tail.rs — Config merge tests (260 lines)

Modified (key changes)

  • crates/csa-config/src/config.rsProjectHooksConfig, ReviewConfig.timeout, is_default() methods
  • crates/csa-config/src/global.rs — Global hooks support
  • crates/csa-config/src/config_merge.rs — Hooks merge logic
  • crates/cli-sub-agent/src/review_cmd.rs — Slimmed down, delegates to resolve module
  • crates/cli-sub-agent/src/debate_cmd.rs — Quality gate integration
  • crates/csa-scheduler/src/failover.rs — Hook-aware failover
  • crates/csa-scheduler/src/rotation.rs — Hook-aware rotation

Stats

  • 44 files changed, +2315 / -418 lines
  • 2439 unit tests + 16 e2e tests all passing

Test Results

Summary [10.232s] 2439 tests run: 2439 passed, 1 skipped
Summary [0.031s]  16 tests run: 16 passed, 0 skipped

Closes #378

🤖 Generated with Claude Code

…le timeout

Add a pre-review quality gate that runs `just pre-commit` before review/debate
sessions to catch issues early. Introduce project-level hooks configuration in
.csa/config.toml with pre_review, post_review, and pre_commit hook support.

Key changes:
- pipeline_gate: new module implementing quality gate with configurable retries,
  pass-through mode, and structured error reporting
- review_cmd_resolve: extract review argument resolution into dedicated module,
  reducing review_cmd.rs from god-object to focused orchestrator
- config: add ProjectHooksConfig and ReviewConfig.timeout field with global/project
  merge support and is_default() for serde-default safety
- debate_cmd: integrate quality gate with debate workflow
- Comprehensive test coverage (334 lines of gate tests, 452 lines of merge tests)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@RyderFreeman4Logos RyderFreeman4Logos merged commit 1475710 into main Mar 8, 2026
4 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: project-level CSA hooks (e.g., auto-fmt before commit)

1 participant