Skip to content

feat: US-40101 CRA mandatory field validation with auto-hold for incomplete records#415

Merged
plakkara-bc merged 7 commits into
chore/release-26.10from
feat/cra-fields-validation
Jul 23, 2026
Merged

feat: US-40101 CRA mandatory field validation with auto-hold for incomplete records#415
plakkara-bc merged 7 commits into
chore/release-26.10from
feat/cra-fields-validation

Conversation

@saifrazabc

@saifrazabc saifrazabc commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Description

Implemented CRA mandatory field validation for batch addition (US 40101). Added S1 (manual add with incomplete records response) and S2 (auto-batch with auto-hold for incomplete records). Pure validator function validates 6 always-required fields plus conditional/transaction-specific fields with per-contact specific missing field reasons.

S1 (Manual Add): User adds incomplete contacts → returns incomplete records array with specific missing fields
S2 (Auto-batch): System auto-batches incomplete contacts → automatically puts them on hold with per-contact reasons

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

How Has This Been Tested?

Automated/Unit tests

npm test -- src/api/batches/cra-fields-validator.spec
npm test -- src/api/batches/batches.service.spec
npm test -- src/sync/eligibility/auto-batch.service.spec

Checklist
 I have tested my changes locally
 The code builds and passes all tests, no warnings
 I have made corresponding changes to the documentation (validator comments, service comments)
 All 1150+ tests passing with no failures

@plakkara-bc
plakkara-bc merged commit 4509372 into chore/release-26.10 Jul 23, 2026
@plakkara-bc
plakkara-bc deleted the feat/cra-fields-validation branch July 23, 2026 15:34
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.

3 participants