Add Canonical JSON serialization library with tests and documentation
- Implemented CanonJson class for deterministic JSON serialization and hashing. - Added unit tests for CanonJson functionality, covering various scenarios including key sorting, handling of nested objects, arrays, and special characters. - Created project files for the Canonical JSON library and its tests, including necessary package references. - Added README.md for library usage and API reference. - Introduced RabbitMqIntegrationFactAttribute for conditional RabbitMQ integration tests.
This commit is contained in:
@@ -18,6 +18,45 @@ Design and build the StellaOps web user experience that surfaces backend capabil
|
||||
- `docs/` — UX specs and mockups (to be added).
|
||||
- `ops/` — Web deployment manifests for air-gapped environments (future).
|
||||
|
||||
## Reachability Drift UI (Sprint 3600)
|
||||
|
||||
### Components
|
||||
- **PathViewerComponent** (`app/features/reachability/components/path-viewer/`) - Interactive call path visualization
|
||||
- Displays entrypoint → key nodes → sink paths
|
||||
- Highlights changed nodes with change kind indicators
|
||||
- Supports collapse/expand for long paths
|
||||
- **RiskDriftCardComponent** (`app/features/reachability/components/risk-drift-card/`) - Summary card for drift analysis
|
||||
- Shows newly reachable / mitigated path counts
|
||||
- Displays associated CVEs
|
||||
- Action buttons for drill-down
|
||||
|
||||
### Models
|
||||
- `PathNode` - Node in a reachability path with symbol, file, line
|
||||
- `CompressedPath` - Compact path representation
|
||||
- `DriftedSink` - Sink with reachability change and cause
|
||||
- `DriftCause` - Explanation of why reachability changed
|
||||
|
||||
### Services
|
||||
- `DriftApiService` (`app/core/services/drift-api.service.ts`) - API client for drift endpoints
|
||||
- Mock implementations available for offline development
|
||||
|
||||
### Integration Points
|
||||
- Scan detail page includes PathViewer for reachability visualization
|
||||
- Drift results linked to DSSE attestations for evidence chain
|
||||
- Path export supports JSON and SARIF formats
|
||||
|
||||
## Witness UI (Sprint 3700) - TODO
|
||||
|
||||
### Planned Components
|
||||
- **WitnessModalComponent** - Modal for viewing witness details
|
||||
- **PathVisualizationComponent** - Detailed path rendering with gates
|
||||
- **ConfidenceTierBadgeComponent** - Tier indicators (Confirmed/Likely/Present/Unreachable)
|
||||
- **GateBadgeComponent** - Auth gate visualization
|
||||
|
||||
### Planned Services
|
||||
- `witness.service.ts` - API client for witness endpoints
|
||||
- Browser-based Ed25519 signature verification
|
||||
|
||||
## Coordination
|
||||
- Sync with DevEx for project scaffolding and build pipelines.
|
||||
- Partner with Docs Guild to translate UX decisions into operator guides.
|
||||
|
||||
Reference in New Issue
Block a user