Weekly Alignment Audit

Run: 2026-05-12. 26 finding(s) — 1 high, 0 medium.. Auto-generated by bundle exec rake docs:alignment_audit; checks routes vs OpenAPI, ERD vs schema, envelope-drift gate health, and model-name clashes across packs. Origin: #420 / #459.

✗ Findings recorded — high-severity gaps

Checks

Routes ↔ OpenAPI 26 finding(s)

ERD ↔ db/schema.rb ok

Envelope-drift gate health ok

Model-name clashes across packs ok

Findings

SeverityCheckDetail
high Routes ↔ OpenAPI Route declared but not in swagger.yaml: /api/v1/evidence/uploads/{upload_id}/blob
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/billing/checkout_sessions
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/billing/portal_sessions
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/billing/subscription
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/calendar_entries/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/checklist_tasks/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/checklist_templates
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/document_generations/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/evidence/exports/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/inventories/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/me/entitlement
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/property_reports/{id}/sections
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/property_reports/{id}/sections/{section}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/rent_ledger_entries/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/share_artefacts/{id}
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/share_artefacts/{id}.pdf
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/share_artefacts/{id}/access_events
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/calendar_entries
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/checklist_tasks
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/document_generations
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/evidence/exports
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/evidence/search
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/handover_workflows
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/inventories
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/rent_ledger_entries
low Routes ↔ OpenAPI Swagger path declared but no matching route (likely a pending rswag stub): /api/v1/tenancies/{tenancy_id}/share_artefacts