Skip to content

feat(web): ingest CT-CVE finding batches#820

Merged
simonjcarr merged 1 commit intomainfrom
feat/ct-cve-finding-ingest
Apr 30, 2026
Merged

feat(web): ingest CT-CVE finding batches#820
simonjcarr merged 1 commit intomainfrom
feat/ct-cve-finding-ingest

Conversation

@simonjcarr
Copy link
Copy Markdown
Collaborator

Summary

  • Add signed POST /api/integrations/ct-cve/v1/finding-batches ingestion for CT-CVE finding deliveries.
  • Validate contract payloads, enforce body-size/rate limits, reject invalid host/package references, and upsert imported CVE/finding rows with CT-CVE batch metadata.
  • Update the CT-CVE migration plan with the Phase 9 slice and remaining connector work.

Validation

  • node --experimental-strip-types --test lib/integrations/ct-cve/finding-ingest.test.mjs
  • pnpm --filter web type-check
  • pnpm --filter web lint -- app/api/integrations/ct-cve/v1/finding-batches/route.ts lib/integrations/ct-cve/finding-ingest.ts lib/integrations/ct-cve/finding-ingest.test.mjs
  • pnpm --filter web db:validate
  • pnpm --filter web test:unit

Related follow-up

  • Investigated CT-CVE release/GHCR publishing before opening this PR. Root cause is tracked in carrtech-dev/ct-cve#9: the CT-CVE default branch is feat/bootstrap-service, while the release workflow only triggers on main, and main does not contain the release workflow or later CT-CVE work.

@simonjcarr simonjcarr merged commit 85a38ec into main Apr 30, 2026
17 checks passed
@github-actions github-actions Bot mentioned this pull request Apr 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant