# Feature → Query Parity Check

## Context

Module: {{MODULE_NAME}}
Feature docs: {{FEATURE_DOCS}}
Query docs: {{QUERY_DOCS}}

## Instructions

1. Read ALL feature docs at the paths above
2. Read ALL query docs at the paths above
3. For each feature, identify read-only operations
4. Run every parity check below
5. Return results as JSON per the Output Format section

## Extraction: Read Operations

Identify read-only operations in each feature:

- "look up", "get", "list", "convert", "calculate"
- Any data retrieval that doesn't modify state

## Expected Query Docs for Feature

| Feature Operation | Expected Query Doc  |
| ----------------- | ------------------- |
| "Get X"           | GetX                |
| "Look up X by Y"  | GetX (with Y input) |
| "List X by Y"     | ListXsByY           |
| "Convert X"       | ConvertX            |
| "Calculate X"     | CalculateX          |

## Parity Checks

For each read operation implied by the feature:

| Check ID        | Question                                                              |
| --------------- | --------------------------------------------------------------------- |
| query_existence | Does a query doc exist for lookups, conversions, or aggregations?     |
| input_coverage  | Are all lookup dimensions documented (by id, by unique field, by FK)? |
| error_handling  | Are error scenarios for missing data documented?                      |

### How to Check

1. Identify read-only operations in the feature
2. Verify corresponding query doc exists in `docs/queries/`
3. Check that query docs have error scenarios where applicable

## Common Gap Patterns

- **Missing query docs**: Feature implies read operation but no query doc exists
- **Missing conversions**: Feature mentions unit/currency conversion but no query doc
- **Missing lookups**: Feature requires data retrieval not covered by a query doc

## Output Format

Return a JSON object:

```json
{
  "check_type": "feature-query-parity",
  "module": "{{MODULE_NAME}}",
  "gaps": [...],
  "inconsistencies": [...],
  "summary": { "total_checks": N, "passed": N, "failed": N, "skipped": N }
}
```

See [parity-report-format.md](parity-report-format.md) for field definitions.
