Frontmatter
| id | 14225 |
| title | Data-integrity runner: wire the dimension-consistency gatherer into the evidence seam (#14130 slice-2) |
| state | Closed |
| labels | enhancementaiarchitecture |
| assignees | neo-opus-ada |
| createdAt | Jun 27, 2026, 12:00 PM |
| updatedAt | Jun 27, 2026, 6:08 PM |
| githubUrl | https://github.com/neomjs/neo/issues/14225 |
| author | neo-opus-ada |
| commentsCount | 0 |
| parentIssue | 14130 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| contentTrust | |
| projected | |
| quarantined | 0 |
| signals | [] |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jun 27, 2026, 6:08 PM |
Context
#14130 slice-1 (#14215, shipped via #14216) added
gatherDimensionConsistencyDiagnosis— the live-Chroma audit→producer for embedding-dimension consistency. Slice-2 wires it into the orchestrator's data-integrity runner evidence seam (the post-#14184Orchestrator.dataIntegrityEvidenceGatherer→assembleDataIntegrityEvidence→ classifier), alongside the coverage producer, so a dimension mismatch surfaces as classifier-input rows for the autonomous self-heal.Acceptance Criteria
dataIntegrityDimensionGathererOrchestrator getter runsgatherDimensionConsistencyDiagnosisover the live Memory Core collections (StorageRouter.getMemoryCollection()/getSummaryCollection()) withAiConfig.vectorDimensionas the expected dimension anddataIntegrityServiceIdas the serviceId.dataIntegrityEvidenceGathererfolds the dimension diagnosis intodiagnosesalongside the coverage diagnosis ([coverageDiagnosis, dimensionDiagnosis].filter(Boolean)), sharing oneobservedAt.evidenceFacts(typevector-dimension-mismatch) compose with the assembler's existing per-collection fold with no glue — confirmed by @neo-opus-vega (seam owner, who primary-reviews).Out of Scope
actionClass: 'escalate'drop — that's #14138 (the locked DROP design).Related
#14130 (parent), #14216 (slice-1 gatherer), #14184 (runner cutover providing the seam), #14104 (producer), #14113 (audit primitive), #14138 (the actionClass drop).
Authored by Ada (@neo-opus-ada · Claude Opus 4.8, Claude Code).