What problem does it solve?
Bug fixes often get done ad hoc: no reproduction, guesswork patches, and symptom-hiding workarounds. This Skill standardizes a lightweight bug-fix workflow for the Crowi codebase that requires a failing test first, identifies the root cause before touching code, and enforces quality gates before commit.
Core Features & Use Cases
- Repro-first discipline: Write a failing test (Jest + supertest + mongodb-memory-server for the API) before any fix; bugs that cannot be reproduced are not fixed by guesswork.
- Systematic root-cause debugging: Iterate symptom → hypothesis → verification until the root cause is pinpointed at file:line, avoiding symptomatic patches.
- Gated completion: Run type-check, targeted tests, and lint (plus contract build and OpenAPI checks when contracts change), then a single-pass codex adversarial review whose findings are either fixed or dropped.
- Use Case: A user reports that a wiki page API returns stale data. The Skill writes a failing API test reproducing the staleness, traces the root cause to a cache invalidation line, applies a minimal diff, passes all gates, runs the codex review, and commits with a
fix(<scope>) message plus a changeset.
Quick Start
Ask the assistant to fix a specific bug in the Crowi codebase using the crowi-fix workflow, starting with a failing reproduction test.