Skip to content

feat(tasks): add pre-validation service and bulk task creation endpoint - #184

Merged
Abd-Standard merged 1 commit into
Core-Foundry:mainfrom
Osuochasam:fix/import-validation
Sep 1, 2026
Merged

feat(tasks): add pre-validation service and bulk task creation endpoint#184
Abd-Standard merged 1 commit into
Core-Foundry:mainfrom
Osuochasam:fix/import-validation

Conversation

@Osuochasam

Copy link
Copy Markdown
Contributor

Implemented a bulk task upload endpoint (POST /api/tasks/bulk) backed by a non-blocking pre-validation service to process batch task creation safely.

Key Changes

Validation Engine (bulk-task-validation.ts): Built validateBulkRows() to evaluate batch payloads row-by-row using taskSchema.safeParse() across six fields without exiting early. Formats field errors, checks poster validity, and enforces the 365-day deadline rule. Implemented insertValidRows() to execute createTask() for valid rows with defensive error isolation.

API Route (route.ts): Created the POST /api/tasks/bulk endpoint featuring 10 sequential checks—including rate-limiting, 415 Content-Type verification, array validation, and a 100-row batch cap—returning a structured { totalProcessed, successCount, errorCount, errors } payload.

Test Coverage (bulk-task-validation.test.ts): Added 11 tests across 5 suites validating 100% valid batches, mixed payloads with correct row-index error mapping, 100% invalid payloads, structural guardrails, and invariant accounting (successCount + errorCount === totalProcessed).

closes #162

@Abd-Standard
Abd-Standard merged commit 7ca1e35 into Core-Foundry:main Sep 1, 2026
2 of 3 checks passed
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.

Implement Import Validation for Bulk Grant Uploads

2 participants