more features checks. setup improvements
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
# Canonical Advisory Source Edge Schema (Database Layer)
|
||||
|
||||
## Module
|
||||
Concelier
|
||||
|
||||
## Status
|
||||
VERIFIED
|
||||
|
||||
## Description
|
||||
Database schema for provenance-scoped canonical advisory deduplication. Stores deduplicated advisories with merge_hash identity and links each to source documents via DSSE-signed source edges. Enables multi-source advisory merge with full provenance tracking.
|
||||
|
||||
## Implementation Details
|
||||
- **Modules**: `src/Concelier/__Libraries/StellaOps.Concelier.Persistence/`, `src/Concelier/__Libraries/StellaOps.Concelier.Merge/`
|
||||
- **Key Classes**:
|
||||
- `AdvisorySourceEdgeEntity` (`src/Concelier/__Libraries/StellaOps.Concelier.Persistence/Postgres/Models/AdvisorySourceEdgeEntity.cs`) - database entity linking canonical advisories to source documents
|
||||
- `AdvisoryCanonicalRepository` (`src/Concelier/__Libraries/StellaOps.Concelier.Persistence/Postgres/Repositories/AdvisoryCanonicalRepository.cs`) - canonical advisory CRUD with merge_hash identity
|
||||
- `AdvisoryRepository` (`src/Concelier/__Libraries/StellaOps.Concelier.Persistence/Postgres/Repositories/AdvisoryRepository.cs`) - raw advisory persistence
|
||||
- `MergeHashCalculator` (`src/Concelier/__Libraries/StellaOps.Concelier.Merge/Identity/MergeHashCalculator.cs`) - deterministic merge hash for deduplication identity
|
||||
- `ConcelierDbContext` (`src/Concelier/__Libraries/StellaOps.Concelier.Persistence/EfCore/Context/ConcelierDbContext.cs`) - EF Core context with source edge schema
|
||||
- `ConcelierDataSource` (`src/Concelier/__Libraries/StellaOps.Concelier.Persistence/Postgres/ConcelierDataSource.cs`) - PostgreSQL data source configuration
|
||||
- **Source**: SPRINT_8200_0012_0002_DB_canonical_source_edge_schema.md
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Insert a canonical advisory with merge_hash and verify it persists in PostgreSQL via `AdvisoryCanonicalRepository`
|
||||
- [ ] Insert two source edges linking different raw advisories to the same canonical and verify both edges are retrievable
|
||||
- [ ] Verify merge_hash uniqueness: attempting to insert a duplicate merge_hash updates the existing canonical rather than creating a new one
|
||||
- [ ] Verify source edge provenance: query a canonical and verify all linked source documents are returned with provenance metadata
|
||||
- [ ] Verify schema migration applies cleanly on a fresh database
|
||||
|
||||
## Verification
|
||||
- **Run ID**: run-001
|
||||
- **Date**: 2026-02-12
|
||||
- **Result**: PASSED - All tiers verified. Core.Tests 452/454 (2 pre-existing FeedSnapshotPinningService failures), Merge.Tests 687/687. CanonicalDeduplicationTests (7 tests) and CanonicalAdvisoryServiceTests (28 tests) verify source edge schema, merge hash identity, deduplication, and DSSE signing.
|
||||
Reference in New Issue
Block a user