| name | doncheli-drift |
| description | Detect and reconcile divergence between specs and implementation. Activate when user mentions "drift", "sync", "spec divergence", "out of sync", "spec doesn't match", "implementation differs". |
Don Cheli: Spec Drift Detector
Instructions
- Read the current spec files in
.dc/specs/ and the relevant source code
- Compare spec scenarios (Gherkin / acceptance criteria) against the actual implementation
- Identify three categories of drift:
- Ghost: code exists but no spec covers it
- Phantom: spec exists but no code implements it
- Mutant: code and spec exist but behavior diverges
- For each drift finding, report: file path, spec reference, severity (critical / warning / info)
- Propose a reconciliation: either update the spec or flag the code for correction
- Never auto-modify code — output a reconciliation plan for human approval
- Save a drift report to
.dc/drift-report-<date>.md if findings exceed 3 items
- If zero drift is found, confirm with a brief "No drift detected — spec and code are aligned"
Output Format
## Drift Report — <date>
### Ghost (code without spec)
- src/payments/refund.ts:42 — no spec covers the refund edge case
### Phantom (spec without code)
- specs/checkout.feature:Scenario 3 — "Apply coupon on mobile" — not implemented
### Mutant (behavior mismatch)
- specs/auth.feature:Scenario 1 expects 401 on expired token; code returns 403
### Reconciliation Plan
1. [Phantom] Implement "Apply coupon on mobile" or mark as backlog in .dc/backlog.md
2. [Mutant] Fix auth.ts to return 401 — spec is correct per RFC 7235
3. [Ghost] Add spec for refund edge case before next release
Do not use this skill when
- The user only wants to run tests (use doncheli-tea instead)
- The spec has not been written yet (use dc:especificar first)