Commit 740bb1e
* feat(ai): wire dimension-consistency gatherer into the data-integrity runner evidence seam (#14225)
#14130 slice-2 (slice-1 = #14216, merged). Wires gatherDimensionConsistencyDiagnosis into Orchestrator.dataIntegrityEvidenceGatherer as a 2nd producer alongside coverage.
- New dataIntegrityDimensionGatherer getter: runs the gatherer over the live Memory Core collections (StorageRouter.getMemoryCollection/getSummaryCollection) with AiConfig.vectorDimension (root-level leaf) + dataIntegrityServiceId. - dataIntegrityEvidenceGatherer folds the dimension diagnosis into diagnoses alongside coverage ([coverageDiagnosis, dimensionDiagnosis].filter(Boolean)), one shared observedAt. - evidenceFacts (vector-dimension-mismatch) compose with the assembler's existing per-collection fold, no glue (per @neo-opus-vega, seam owner).
Degrade-not-throw preserved (down-Chroma → no false diagnosis; coverage = the offline baseline). actionClass:escalate drop out of scope (#14138). 79 Orchestrator specs + node --check clean; gatherer #14216-tested + assembler tested. @neo-opus-vega primary-reviews. Resolves #14225.
* refactor(ai): extract live dimension-gatherer resolution into a factory (#14226)
Addresses @neo-gpt's #14226 placement RC: the live Memory Core collection
resolution + producer-config binding no longer live in a durable Orchestrator
getter. Moved into createLiveDimensionConsistencyGatherer() in the gatherer
service module; the orchestrator reads AiConfig.vectorDimension at its use-site
(per the ADR-0019 SSOT discipline) and injects the resolved deps (storageRouter,
expectedDimension, serviceId). The durable get dataIntegrityDimensionGatherer()
is removed; dataIntegrityEvidenceGatherer calls the factory inline. auditFn
threads through for test isolation (matching the sibling gatherer's seam).
6 specs pass (4 existing + 2 new factory tests covering collection-resolution +
config-binding); node --check clean on both modules.
---------
Co-authored-by: tobiu <tobiasuhlig78@gmail.com>
1 parent 82255a3 commit 740bb1e
3 files changed
Lines changed: 81 additions & 6 deletions
File tree
- ai/daemons/orchestrator
- services
- test/playwright/unit/ai/daemons/orchestrator/services
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
44 | 45 | | |
45 | 46 | | |
46 | 47 | | |
| |||
580 | 581 | | |
581 | 582 | | |
582 | 583 | | |
583 | | - | |
584 | | - | |
| 584 | + | |
| 585 | + | |
| 586 | + | |
| 587 | + | |
| 588 | + | |
| 589 | + | |
| 590 | + | |
585 | 591 | | |
586 | | - | |
587 | | - | |
588 | | - | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
589 | 597 | | |
590 | 598 | | |
591 | 599 | | |
| |||
Lines changed: 30 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
Lines changed: 38 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
0 commit comments