| Metadata | Value |
|---|---|
| Status | Active |
| Version | 1.0.0 |
| Last Updated | 2026-09-10 |
| Author | Sangeetha Grantha Team |
| Document Type | Evidence record |
[!NOTE] Historical evidence: results, counts, commands, and observations below belong to the original work described here. The editorial update date is not a new test or corpus verification. For present behavior, use current feature map.
Add end-to-end testing and runtime validation for the import pipeline so that silent failures (like TRACK-094’s format mismatch) are caught immediately rather than discovered after manual DB inspection.
LyricVariantPersistenceServiceTest.kt with 3 test cases:
CanonicalExtractionDto → asserts krithi_sections (3), krithi_lyric_variants (2: SA + TE), krithi_lyric_sections (3 per variant)ScrapedKrithiMetadata payload → backward compatibilitylogger.error logged, approval succeeds without crashGET /v1/admin/imports/:id/validation — per-import health check (section/variant/lyric counts, payload format, issue list)GET /v1/admin/imports/validation/summary — batch-level health check (total, withPayload, withVariants, needsBackfill)ImportValidationResponse, ValidationSummaryResponse (both @Serializable)| File | Change |
|---|---|
modules/backend/api/src/test/kotlin/.../services/LyricVariantPersistenceServiceTest.kt |
New: 3 integration tests |
modules/backend/api/src/test/kotlin/.../services/ExtractionResultProcessorTest.kt |
Updated tests to reflect existing payload enrichment |
modules/backend/api/.../services/ImportValidationService.kt |
New: validation logic (section/variant/lyric counts, payload format detection) |
modules/backend/api/.../routes/ImportRoutes.kt |
Validation endpoints |
Ref: application_documentation/10-implementations/track-095-import-pipeline-test-validation.md