Files
mercadodevida/work/artifacts/F-150/implementer.md
2026-08-22 13:08:16 +02:00

1.2 KiB

F-150 — Implementer evidence

What

F-150 build evidence: GET /reporting/export/:report streaming CSV endpoint; REPORTING_EXPORT granted to admin+editor. Backend tsc 0, boundaries 0, verify.sh verde.

Files

  • src/modules/reporting/api/reporting.routes.ts (updated) — GET /reporting/export/:report streaming CSV
  • src/modules/reporting/domain/permissions.ts (updated) — REPORTING_EXPORT added to admin + editor roles

Verification

  • npm run build → 0 TypeScript errors.
  • check-module-boundaries.mjs src → 0 NEW violations.
  • ./scripts/verify.sh → green (F-150 in_progress, runtime-consistent).

AC traceability

AC Estado Evidencia
AC1 CSV endpoint GET /reporting/export/(summary
AC2 RBAC REPORTING_EXPORT permissions.ts: admin + editor have REPORTING_EXPORT; requireReportingPermission checked
AC3 Streaming Page-by-page fetch (500/page, max 10k rows), reply.raw.write per row
AC4 Metadata headers # report:... header lines before data
AC5 Permissions requireReportingPermission('REPORTING_EXPORT') on export route
AC6 tsc/verify tsc 0, boundaries 0, verify verde