# Wow Code Review

> Use when reviewing Wow framework code, PR diffs, or pre-merge changes involving aggregates, commands, events, sourcing, sagas, projections, command gateway, Query DSL, starter configuration, or Wow tests

- **Type:** Skill
- **Install:** `agentstack add skill-ahoo-wang-skills-wow-code-review`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [Ahoo-Wang](https://agentstack.voostack.com/s/ahoo-wang)
- **Installs:** 0
- **Category:** [AI & ML](https://agentstack.voostack.com/c/ai-and-ml)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [Ahoo-Wang](https://github.com/Ahoo-Wang)
- **Source:** https://github.com/Ahoo-Wang/skills/tree/main/sources/Wow/skills/wow-code-review
- **Website:** https://skills.ahoo.me/

## Install

```sh
agentstack add skill-ahoo-wang-skills-wow-code-review
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# Wow Code Review

Review Wow code for framework semantics first, style second. The goal is to catch event-sourcing, CQRS, routing, and test-coverage mistakes before they become production behavior.

## Iron Laws

- No aggregate behavior without focused `AggregateSpec` or verifier coverage.
- No saga branch without trigger and no-command coverage when conditions branch.
- No command handler may mutate aggregate state directly.
- No sourcing handler may perform side effects or non-deterministic work.
- No configuration claim without checking current `@ConfigurationProperties`.
- No approval without exact verification evidence.

## Review Flow

1. **Scope the diff**: list touched modules and files. Resolve module names from `settings.gradle.kts`.
2. **Load context**: use `../wow/SKILL.md` as router. Load only the relevant reference files such as `../wow/references/modeling.md`, `../wow/references/annotations.md`, or `../wow/references/testing.md`.
3. **Find working examples**: use `rg` to compare with nearby aggregate, saga, projection, query, or configuration code.
4. **Review by semantics**: check the lists below before naming style or formatting issues.
5. **Verify tests**: identify the narrowest Gradle command that proves the changed behavior.

## Semantic Checklist

| Area | Check |
|------|-------|
| Aggregate | Command handlers return events, enforce invariants, and do not mutate state. |
| State | State changes are deterministic and sourced from events. |
| Events | Event payloads are sufficient to rebuild state and preserve compatibility. |
| API metadata | Commands and domain events include `@Summary` and `@Description`; long descriptions use raw string annotation syntax. |
| Field contracts | Important repeated domain fields are extracted into `Capable` interfaces when reuse improves the model. |
| Routing | Aggregate ID, owner, tenant, and command route rules are explicit and tested. |
| Polymorphic returns | `Any` or multi-event returns declare metadata when current APIs require it. |
| Saga | Trigger, no-command, multi-command, and dependency branches are tested. |
| Projection/EventProcessor | Side effects stay outside aggregates; retry behavior is intentional and annotation-driven. |
| Query DSL | Uses current `condition`, `pagination`, `projection`, and `sort` APIs. |
| Configuration | Examples match current `@ConfigurationProperties` classes. |
| Tests | Use `.assert()`, cover error paths, lifecycle paths, and branch conditions. |

## Red Flags

- "This aggregate is simple, tests can come later."
- A command handler sets state fields directly.
- Sourcing calls services, clocks, random IDs, databases, or buses.
- Saga has only happy-path tests.
- Projection updates are not idempotent enough for retries.
- Review accepts a config key without checking source properties.
- Verification says "should pass" instead of showing the command.

## Findings Format

Lead with findings, ordered by severity. Use file and line references.

```text
Critical: breaks correctness or event-sourcing guarantees.
Important: likely bug, missing behavior coverage, or framework misuse.
Minor: clarity, maintainability, naming, or follow-up improvement.
```

If there are no findings, say that directly and name residual risks or test gaps.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [Ahoo-Wang](https://github.com/Ahoo-Wang)
- **Source:** [Ahoo-Wang/skills](https://github.com/Ahoo-Wang/skills)
- **License:** Apache-2.0
- **Homepage:** https://skills.ahoo.me/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-ahoo-wang-skills-wow-code-review
- Seller: https://agentstack.voostack.com/s/ahoo-wang
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
