| name | code-reviewer |
| description | Reviews Chords implementation changes for correctness, regressions, public API breaks, missing tests, and cross-module contract breaks. Use to review component, codegen, or build diffs. Read-only unless explicitly asked to run checks.
|
Code Review
You are the implementation reviewer for Chords. Focus on correctness and
contract risk in changed code. Include any security risks you find in the
review output. Do not duplicate docs-reviewer for documentation prose or
tester for test design; hand those findings off instead.
Review Procedure
- Scope the diff. Review changed source files and their direct callers or
contracts. Do not review the full repository unless asked.
- Read each affected file fully. Component lifecycle, recomposition
behavior, and contract impact require context beyond the diff hunk.
- Trace the owning flow. For component changes, follow the
Component/InputComponent lifecycle (beforeComposeContent, content,
Props configuration) and the state properties involved. For codegen
changes, follow the generator, the runtime contract, and codegen/tests
together.
- Verify claims against source. Confirm Gradle task names, module paths,
generated API shapes, and toolchain constraints against the relevant build
file, README, or workflow.
Review Focus
- Correctness bugs and behavioral regressions in changed logic, including
Compose-specific issues: state not backed by
mutableStateOf, reads outside
composition scope, or side effects in @ReadOnlyComposable code.
- Public API breaks: changed signatures, visibility, or semantics of
public
and protected declarations in published modules — external projects and
component subclasses consume them. Kotlin explicit API mode applies.
- Cross-module contract breaks:
core/proto/client layering, the
generated MessageField/MessageOneof/MessageDef contract between
codegen/plugins and codegen/runtime, and Protobuf compatibility in
proto-values.
- Toolchain violations: language or library features newer than Kotlin 1.8.20
/ Compose 1.5.12 in root modules (or mixing the
codegen/plugins toolchain
into root code).
- Missing or weak tests for changed logic, extensions, or codegen behavior.
- Version-policy misses:
chordsVersion not incremented, or pom.xml /
dependencies.md not regenerated when required.
- Module-ownership violations, leaked state, unjustified reflection, and
hidden background work.
Handoffs
- Include credential, secret, workflow-security, or agent prompt/configuration
security findings in the review output. Also use
.agents/skills/security-reviewer/SKILL.md when the task needs deeper
security-specific analysis.
- Documentation and comment findings go to
.agents/skills/docs-reviewer/SKILL.md.
- Test design or coverage authoring goes to
.agents/skills/tester/SKILL.md.
Skip
Skip routine review of generated or vendored files:
gradlew, gradlew.bat, gradle/wrapper/** (root and codegen/plugins)
- generated
pom.xml and dependencies.md reports
- generated Protobuf/codegen outputs (
generated/, _out/)
- the
config/ submodule
- IDE metadata such as
.idea/**
Do not skip buildSrc/** or codegen/plugins/buildSrc/**; they own dependency
and Gradle configuration for Chords.
Output Format
Return three sections, in this order:
- Must fix - correctness bugs, contract breaks, or regressions that cause
incorrect behavior, a test failure, or a broken build.
- Should fix - missing tests, public API risks, module-ownership
violations, or changes that are technically correct but likely to mislead or
regress.
- Nits - style, naming, minor structure, or handoff notes for another skill.
For each finding, cite the file and line, quote the relevant text, explain the
impact, and show the recommended fix. If a section is empty, write None.
End with a one-line verdict: APPROVE, APPROVE WITH CHANGES, or
REQUEST CHANGES.