save checkpoint: save features
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# Advisory Locks / LISTEN-NOTIFY
|
||||
|
||||
## Module
|
||||
Platform
|
||||
|
||||
## Status
|
||||
NOT_IMPLEMENTED
|
||||
|
||||
## Description
|
||||
Advisory lock patterns are used in classification history for safe concurrent updates; LISTEN/NOTIFY patterns support real-time event propagation.
|
||||
|
||||
## Implementation Details
|
||||
- **PlatformAnalyticsMaintenanceService**: `src/Platform/StellaOps.Platform.WebService/Services/PlatformAnalyticsMaintenanceService.cs` -- BackgroundService using PeriodicTimer to run analytics maintenance; calls `REFRESH MATERIALIZED VIEW CONCURRENTLY` for `analytics.mv_supplier_concentration`, `analytics.mv_license_distribution`, `analytics.mv_vuln_exposure`, `analytics.mv_attestation_coverage`; uses `SELECT analytics.compute_daily_rollups(@date)` for daily rollup computation
|
||||
- **AnalyticsIngestionDataSource**: `src/Platform/StellaOps.Platform.Analytics/Services/AnalyticsIngestionDataSource.cs` -- PostgreSQL data source for analytics with connection management
|
||||
- **VulnerabilityCorrelationService**: `src/Platform/StellaOps.Platform.Analytics/Services/VulnerabilityCorrelationService.cs` -- correlates vulnerabilities with SBOM components using PURL matching
|
||||
- **ScannerOrchestratorEvents**: `src/Platform/StellaOps.Platform.Analytics/Models/ScannerOrchestratorEvents.cs` -- event models for scanner report ready / scan completed events via event streams
|
||||
- **Source**: Feature matrix scan
|
||||
|
||||
## E2E Test Plan
|
||||
- [ ] Verify advisory locks prevent concurrent classification history updates
|
||||
- [ ] Test LISTEN/NOTIFY propagates real-time events to subscribers
|
||||
- [ ] Verify materialized view concurrent refresh completes without locking reads
|
||||
- [ ] Test daily rollup computation produces correct aggregates for a given date
|
||||
|
||||
## Verification
|
||||
- Re-verified on 2026-02-11 via `run-002`.
|
||||
- Confirmed implemented behavior:
|
||||
- `PlatformAnalyticsMaintenanceService` executes `SELECT analytics.compute_daily_rollups(@date)` and `REFRESH MATERIALIZED VIEW CONCURRENTLY ...` commands.
|
||||
- `PlatformAnalyticsMaintenanceServiceTests` and `AnalyticsSchemaIntegrationTests` pass for rollup/materialized-view behavior (`23/23` in scoped runs).
|
||||
- Missing behavior relative to feature claim:
|
||||
- No advisory lock implementation signal (`pg_advisory*`) found under `src/Platform`.
|
||||
- No PostgreSQL LISTEN/NOTIFY implementation signal (`LISTEN`, `NOTIFY`, `NpgsqlConnection.Notification`) found under `src/Platform`.
|
||||
- Classification: feature claim is partially implemented and terminalized as `not_implemented` until advisory lock and LISTEN/NOTIFY behavior is actually implemented.
|
||||
- Evidence:
|
||||
- `docs/qa/feature-checks/runs/platform/advisory-locks-listen-notify/run-002/tier0-source-check.json`
|
||||
- `docs/qa/feature-checks/runs/platform/advisory-locks-listen-notify/run-002/tier1-build-check.json`
|
||||
- `docs/qa/feature-checks/runs/platform/advisory-locks-listen-notify/run-002/tier2-integration-check.json`
|
||||
- `docs/qa/feature-checks/runs/platform/advisory-locks-listen-notify/run-002/evidence/04b-missing-advisory-listen-notify-signal.txt`
|
||||
Reference in New Issue
Block a user