docs: module dossier + install/quickstart sync for truthful cutover sprints
- API_CLI_REFERENCE.md, INSTALL_GUIDE.md, quickstart.md, architecture/integrations.md, dev/DEV_ENVIRONMENT_SETUP.md, integrations/LOCAL_SERVICES.md: reflect real-service wiring. - docs/modules/**: module dossier updates across the modules touched by SPRINT_20260415_001..007 + SPRINT_20260416_003..017 + SPRINT_20260417_018..024 + SPRINT_20260418_025 + SPRINT_20260419_026. - docs/features/checked/web/**: update feature notes where UI changed. - docs/qa/feature-checks/runs/web/evidence-presentation-ux/: QA evidence artifacts. - docs/setup/**, docs/technical/**: align with setup wizard contracts. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -13,11 +13,11 @@ Defines the graph-ready overlay built from Link-Not-Merge observations/linksets
|
||||
- Provenance: carries `linksetId`, `linksetHash`, `observationHashes[]`, optional `policyHash`, `sbomContextHash`, and `planCacheKey` for replay.
|
||||
|
||||
## Postgres materialization (IAppendOnlyLinksetStore)
|
||||
- Table `vex_overlays` (materialized cache):
|
||||
- Table `vex.graph_overlays` (materialized cache):
|
||||
- Primary key: `(tenant, purl, advisory_id, source)`.
|
||||
- Columns: `status`, `justifications` (jsonb), `conflicts` (jsonb), `observations` (jsonb), `provenance` (jsonb), `cached_at`, `ttl_seconds`, `schema_version`.
|
||||
- Indexes: unique `(tenant, purl, advisory_id, source)`, plus `(tenant, cached_at)` for TTL sweeps.
|
||||
- Overlay rows are regenerated when linkset hash or observation hash set changes; cache evictions use `cached_at + ttl_seconds`.
|
||||
- Columns: `tenant`, `purl`, `advisory_id`, `source`, `generated_at`, `payload` (`jsonb`).
|
||||
- Indexes: primary key plus `(tenant, generated_at DESC)` for deterministic recency reads.
|
||||
- Overlay rows are regenerated when linkset hash or observation hash set changes; the latest materialized payload is upserted per `(tenant, purl, advisory_id, source)` key.
|
||||
- Linksets and observation hashes come from the append-only linkset store (`IAppendOnlyLinksetStore`) to preserve Aggregation-Only Contract guarantees.
|
||||
|
||||
## API shape (Graph/Vuln Explorer)
|
||||
@@ -84,4 +84,4 @@ Defines the graph-ready overlay built from Link-Not-Merge observations/linksets
|
||||
- Consumers (Console, Vuln Explorer, Policy Engine, Risk) should treat `vex_overlay.schema.json` as the authoritative contract.
|
||||
- Offline kits must bundle the schema file and sample payloads under `docs/modules/excititor/samples/` with SHA256 manifests.
|
||||
- Future schema versions must bump `schemaVersion` and add migration notes to this document and `docs/modules/excititor/architecture.md`.
|
||||
- Policy and Risk surfaces in WebService now read overlays directly (with claim-store fallback for policy tests) to produce lookup and risk feeds; overlay cache/store are selected per tenant (in-memory by default, Postgres `vex.graph_overlays` when configured).
|
||||
- Policy and Risk surfaces in WebService now read overlays directly (with claim-store fallback for policy tests) to produce lookup and risk feeds; the live WebService binds `IGraphOverlayStore` to the Postgres-backed `vex.graph_overlays` store and does not fall back to an in-memory runtime implementation.
|
||||
|
||||
Reference in New Issue
Block a user