[8] BFF #8

Closed
opened 2026-06-13 19:00:00 +02:00 by dernbu · 0 comments
Owner

Objective

Implement the typed backend-for-frontend and public/internal HTTP APIs.

Scope

  • Add Kysely, pg, and generated database types.
  • Implement health and schema-readiness checks.
  • Implement judgment search, filtering, sorting, grouping, and opaque cursor pagination.
  • Implement canonical and unmatched judgment detail lookup.
  • Stream artifacts with secure response headers and disposition rules.
  • Implement bearer-protected reconciliation and dead-job endpoints.

Dependencies

Depends on #7.

Completion criteria

  • APIs return typed source metadata without exposing raw payloads.
  • Correlated and unmatched records both work.
  • Cursor validation and grouping pass integration tests.
  • Artifact security headers are correct.
  • Internal endpoints enforce authentication and pagination limits.

Closure

Complete all child issues, or merge a feature-branch pull request that resolves this issue.

Detailed requirements: docs/plans/high-level-plan.md, Phase 8.

## Objective Implement the typed backend-for-frontend and public/internal HTTP APIs. ## Scope - Add Kysely, `pg`, and generated database types. - Implement health and schema-readiness checks. - Implement judgment search, filtering, sorting, grouping, and opaque cursor pagination. - Implement canonical and unmatched judgment detail lookup. - Stream artifacts with secure response headers and disposition rules. - Implement bearer-protected reconciliation and dead-job endpoints. ## Dependencies Depends on #7. ## Completion criteria - APIs return typed source metadata without exposing raw payloads. - Correlated and unmatched records both work. - Cursor validation and grouping pass integration tests. - Artifact security headers are correct. - Internal endpoints enforce authentication and pagination limits. ## Closure Complete all child issues, or merge a feature-branch pull request that resolves this issue. Detailed requirements: `docs/plans/high-level-plan.md`, Phase 8.
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dernbu/lawnet-scraper#8
No description provided.