Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@ Please choose versions by [Semantic Versioning](http://semver.org/).

## Unreleased

- docs: add `docs/three-command-review-split.md` — design note locking the proposed shape for splitting the review commands into three distinct scopes (`/coding:pr-review` remote diff, `/coding:local-review` local pre-commit diff (renamed from current `/coding:code-review`), new `/coding:code-review` whole-codebase audit). No behavior change in this PR; the doc proposes a 5-PR migration plan (rename → deprecation stub → new behavior → flip deprecation) and the three mechanisms (severity filter, rule-id dedup, baseline file `.code-review-baseline.yaml`) that make whole-codebase review useful without drowning in pre-existing tech debt. Optional `golangci-lint` passthrough for Go projects.
- docs: add `docs/three-command-review-split.md` — design note locking the proposed shape for splitting the review commands into three distinct scopes (`/coding:pr-review` remote diff, `/coding:local-review` local pre-commit diff (renamed from current `/coding:code-review`), new `/coding:code-review` whole-codebase audit). The doc pins defaults for baseline-file location (`.code-review-baseline.yaml` at repo root, `--baseline-path` override), monorepo handling (one baseline per repo by default; per-subproject via override), `--refresh-baseline` clean-tree requirement, and `.gitignore` semantics (respected; no separate `.claude-ignore` introduced).
- **feat: split review commands into 3 distinct scopes.** Renames current `/coding:code-review` → `/coding:local-review` (preserving its diff-vs-`HEAD~1` semantics for pre-commit local checks), AND introduces a brand-new `/coding:code-review` that scans the WHOLE codebase via `git ls-files`. New command ships with severity filter (default-on: Must Fix + Should Fix only; `--include-optional` to opt in), rule-id dedup at consolidation (N occurrences → 1 summary with sample sites), and baseline file (`.code-review-baseline.yaml` via `--refresh-baseline`) so subsequent runs only flag NEW findings (drift since last sweep) rather than the operator's full accepted tech-debt set. Design rationale: `docs/three-command-review-split.md`. 10 reference sites updated across `llms.txt`, `README.md`, `scenarios/*`, and 4 agent definitions to point at `/coding:local-review` (preserving old semantics). **Migration**: sharp behavior cutover on the `/coding:code-review` slot — operators previously relying on its diff-vs-`HEAD~1` behavior must move to `/coding:local-review`. The contrast pair `pr-review` (remote, branch vs target) / `local-review` (local, pre-commit) reads cleanly; `code-review` takes the unmarked whole-codebase slot.

## v0.25.0

Expand Down
23 changes: 16 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Opinionated coding guidelines, quality review agents, and slash commands for Go

## Overview

Writing consistent, idiomatic code across a large codebase is hard. This plugin bundles 50+ opinionated guides (Go architecture, error handling, testing, HTTP handlers, Python structure, Git workflow, documentation) together with specialized Claude Code agents that enforce them on your code. Install once, then run `/coding:code-review` or `/coding:pr-review` to review your work against the full ruleset.
Writing consistent, idiomatic code across a large codebase is hard. This plugin bundles 50+ opinionated guides (Go architecture, error handling, testing, HTTP handlers, Python structure, Git workflow, documentation) together with specialized Claude Code agents that enforce them on your code. Install once, then run `/coding:local-review` or `/coding:pr-review` to review your work against the full ruleset.

## Requirements

Expand Down Expand Up @@ -35,11 +35,19 @@ Review your current branch against all guidelines:
/coding:pr-review
```

Review code in standard mode (7 agents) or full mode (14 agents):
Review local uncommitted changes in selector mode (default — zero LLM spawns, in-session classify + adjudicate) or full mode (per-owner dispatch, concurrent agents):

```
/coding:code-review standard
/coding:code-review full
/coding:local-review # selector mode (default)
/coding:local-review full # per-owner dispatch
```

Audit the whole codebase (severity-filtered, baseline-aware):

```
/coding:code-review # whole codebase, Must Fix + Should Fix only
/coding:code-review --include-optional # add Nice to Have
/coding:code-review --refresh-baseline # write current findings to .code-review-baseline.yaml
```

Find relevant guides before starting work:
Expand All @@ -58,8 +66,9 @@ Commit with changelog and version bump:

| Command | Description |
|---------|-------------|
| `/coding:pr-review` | Review pull request diff against standards |
| `/coding:code-review [short\|standard\|full]` | Review code against guidelines (standard: 7 agents, full: 14) |
| `/coding:pr-review` | Branch diff vs target — selector mode default; full mode = per-owner dispatch |
| `/coding:local-review [short\|selector\|full]` | Local uncommitted/recent diff vs `HEAD~1` — selector mode default |
| `/coding:code-review [--include-optional] [--refresh-baseline]` | Whole-codebase audit — severity-filtered (Must + Should) + baseline-aware (`.code-review-baseline.yaml`) |
| `/coding:architecture-review [directory]` | Deep whole-codebase architectural review — top-down + dimensions, consolidated Must/Should/Could |
| `/coding:check-guides "task"` | Find relevant guides before implementation |
| `/coding:commit` | Git commit with changelog and versioning |
Expand Down Expand Up @@ -258,7 +267,7 @@ End-to-end acceptance walks for the doc-driven review pipeline, following the [d
| # | Scenario | Validates |
|---|---|---|
| 001 | [toolchain-preflight](scenarios/001-toolchain-preflight.md) | Step 4.0 / Step 0 preflight blocks exit 1 with documented stderr when `ast-grep` / `sg` is absent from PATH |
| 002 | [clean-pr-zero-findings](scenarios/002-clean-pr-zero-findings.md) | `/coding:code-review master` against a zero-violation diff produces empty Must Fix / Should Fix / Nice to Have (no LLM hallucination) |
| 002 | [clean-pr-zero-findings](scenarios/002-clean-pr-zero-findings.md) | `/coding:local-review master` against a zero-violation diff produces empty Must Fix / Should Fix / Nice to Have (no LLM hallucination) |
| 003 | [scaling-funnel-100-files](scenarios/003-scaling-funnel-100-files.md) | 100-file synthetic fixture: mechanical funnel ≤30s, distinct Owners ≤30 (structural ceiling on Step 4b LLM calls) |
| 004 | [findings-exist-path](scenarios/004-findings-exist-path.md) | `/coding:pr-review` against the stable test PR [bborbe/maintainer#2](https://github.com/bborbe/maintainer/pull/2): Step 4a surfaces ≥4 findings, every Owner has an agent file, citation discipline holds |

Expand Down
2 changes: 1 addition & 1 deletion agents/architecture-dimensions-assistant.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ The user (typically via `/coding:architecture-review`) gives you a target direct

- **No structural review** — that's the sibling agents' job. If you find a layering violation, note it briefly and defer to the structural pass.
- **No code modification** — read-only.
- **No diff-scoped review** — whole-codebase only. For per-PR work, the user should use `/coding:code-review` instead.
- **No diff-scoped review** — whole-codebase only. For per-PR work, the user should use `/coding:pr-review` (branch diff) or `/coding:local-review` (uncommitted) instead.
- **No mechanical findings** — "function too long", "too many params", "name should be camelCase" are owned by linters and `go-quality-assistant` / `python-quality-assistant`. Your altitude is architectural.

## Output format
Expand Down
2 changes: 1 addition & 1 deletion agents/go-architecture-assistant.md
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,7 @@ Package boundary violations: <count>.

## Integration

- Runs alongside `srp-checker` in `/coding:code-review full` — SRP checks unit-level, this checks cross-unit and extraction-quality
- Runs alongside `srp-checker` in `/coding:local-review full` — SRP checks unit-level, this checks cross-unit and extraction-quality
- Invoked directly via `/coding:audit-architecture [directory]`
- Read-only — never edits code

Expand Down
2 changes: 1 addition & 1 deletion agents/python-architecture-assistant.md
Original file line number Diff line number Diff line change
Expand Up @@ -438,7 +438,7 @@ Import-time side effects: <count>.

## Integration

- Runs alongside `python-quality-assistant` in `/coding:code-review full` — quality checks style/idioms, this checks cross-unit architecture and extract-quality
- Runs alongside `python-quality-assistant` in `/coding:local-review full` — quality checks style/idioms, this checks cross-unit architecture and extract-quality
- Invoked directly via `/coding:audit-architecture [directory]`
- Read-only — never edits code

Expand Down
Loading
Loading