Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
Updated AGENTS.md with implementation planning conventions and stream index. Refactored SPRINT_110_ingestion_evidence.md, SPRINT_125_mirror.md, and SPRINT_300_documentation_process.md to use a topic-oriented template, clarify dependencies, task boards, and checkpoint structure. Archived previous sprint details and added new templates and status snapshot files to docs/implplan.
45 KiB
45 KiB
| 1 | Sprint | Task ID | Status | Missing dependency |
|---|---|---|---|---|
| 2 | SPRINT_110_ingestion_evidence | AIAI-31-008 | TODO | AIAI-31-006 |
| 3 | SPRINT_110_ingestion_evidence | AIAI-31-008 | TODO | AIAI-31-007 |
| 4 | SPRINT_110_ingestion_evidence | CONCELIER-AIAI-31-002 | DOING | CARTO-GRAPH-21-002 |
| 5 | SPRINT_110_ingestion_evidence | CONCELIER-AIRGAP-56-001..58-001 | TODO | Evidence Locker attestation contract |
| 6 | SPRINT_110_ingestion_evidence | CONCELIER-AIRGAP-56-001..58-001 | TODO | Link-Not-Merge schema |
| 7 | SPRINT_110_ingestion_evidence | CONCELIER-ATTEST-73-001 | TODO | Evidence Locker contract |
| 8 | SPRINT_110_ingestion_evidence | CONCELIER-CONSOLE-23-001..003 | TODO | Link-Not-Merge schema |
| 9 | SPRINT_110_ingestion_evidence | EXCITITOR-AIAI-31-002 | TODO | Evidence Locker contract |
| 10 | SPRINT_110_ingestion_evidence | EXCITITOR-AIAI-31-002 | TODO | Link-Not-Merge schema |
| 11 | SPRINT_110_ingestion_evidence | EXCITITOR-AIRGAP-56 | TODO | Link-Not-Merge schema |
| 12 | SPRINT_110_ingestion_evidence | EXCITITOR-AIRGAP-56 | TODO | attestation plan |
| 13 | SPRINT_110_ingestion_evidence | EXCITITOR-ATTEST-01-003 | TODO | Evidence Locker contract |
| 14 | SPRINT_110_ingestion_evidence | EXCITITOR-CONN-TRUST-01-001 | TODO | Link-Not-Merge schema |
| 15 | SPRINT_110_ingestion_evidence | EXCITITOR-CONN-TRUST-01-001 | TODO | attestation plan |
| 16 | SPRINT_110_ingestion_evidence | FEEDCONN-ICSCISA-02-012 | BLOCKED | Feed owner remediation plan |
| 17 | SPRINT_110_ingestion_evidence | FEEDCONN-KISA-02-008 | BLOCKED | Feed owner remediation plan |
| 18 | SPRINT_110_ingestion_evidence | MIRROR-CRT-56-001 | TODO | Staffing decision |
| 19 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | Instrument metrics (`ledger_write_latency` |
| 20 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | LEDGER-29-006 |
| 21 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | Merkle anchoring alerts |
| 22 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | `ledger_events_total`) |
| 23 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | `projection_lag_seconds` |
| 24 | SPRINT_120_policy_reasoning | LEDGER-29-007 | TODO | structured logs |
| 25 | SPRINT_120_policy_reasoning | LEDGER-29-008 | TODO | Develop unit/property/integration tests |
| 26 | SPRINT_120_policy_reasoning | LEDGER-29-008 | TODO | determinism harness |
| 27 | SPRINT_120_policy_reasoning | LEDGER-29-008 | TODO | replay/restore tooling |
| 28 | SPRINT_120_policy_reasoning | LEDGER-29-009 | TODO | Merkle anchor externalization (optional) |
| 29 | SPRINT_120_policy_reasoning | LEDGER-29-009 | TODO | Provide deployment manifests (Helm/Compose) |
| 30 | SPRINT_120_policy_reasoning | LEDGER-29-009 | TODO | backup/restore guidance |
| 31 | SPRINT_120_policy_reasoning | LEDGER-34-101 | TODO | Link orchestrator run ledger exports into Findings Ledger provenance chain |
| 32 | SPRINT_120_policy_reasoning | LEDGER-34-101 | TODO | index by artifact hash |
| 33 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-56-001 | TODO | Record bundle provenance (`bundle_id` |
| 34 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-56-001 | TODO | `merkle_root` |
| 35 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-56-001 | TODO | `time_anchor`) on ledger events for advisories/VEX/policies imported via Mirror Bundles |
| 36 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-56-002 | TODO | Surface staleness metrics for findings |
| 37 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-56-002 | TODO | block risk-critical exports when stale beyond thresholds |
| 38 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-57-001 | TODO | Link findings evidence snapshots to portable evidence bundles |
| 39 | SPRINT_120_policy_reasoning | LEDGER-AIRGAP-58-001 | TODO | Emit timeline events for bundle import impacts (new findings |
| 40 | SPRINT_120_policy_reasoning | LEDGER-ATTEST-73-001 | TODO | Persist pointers from findings to verification reports |
| 41 | SPRINT_120_policy_reasoning | LEDGER-ATTEST-73-001 | TODO | attestation envelopes for explainability |
| 42 | SPRINT_121_policy_reasoning | LEDGER-ATTEST-73-002 | TODO | Enable search/filter in findings projections by verification result |
| 43 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | Provide paginated streaming endpoints for advisories |
| 44 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | SBOMs |
| 45 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | VEX |
| 46 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | findings aligned with export filters |
| 47 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | including deterministic ordering |
| 48 | SPRINT_121_policy_reasoning | LEDGER-EXPORT-35-001 | TODO | provenance metadata |
| 49 | SPRINT_121_policy_reasoning | LEDGER-OAS-61-001 | TODO | Expand Findings Ledger OAS to include projections |
| 50 | SPRINT_121_policy_reasoning | LEDGER-OAS-61-001 | TODO | evidence lookups |
| 51 | SPRINT_121_policy_reasoning | LEDGER-OAS-61-001 | TODO | filter parameters with examples |
| 52 | SPRINT_121_policy_reasoning | LEDGER-OAS-61-002 | TODO | Implement `/.well-known/openapi` endpoint |
| 53 | SPRINT_121_policy_reasoning | LEDGER-OAS-62-001 | TODO | Provide SDK test cases for findings pagination |
| 54 | SPRINT_121_policy_reasoning | LEDGER-OAS-62-001 | TODO | evidence links |
| 55 | SPRINT_121_policy_reasoning | LEDGER-OAS-62-001 | TODO | filtering |
| 56 | SPRINT_121_policy_reasoning | LEDGER-OAS-63-001 | TODO | Support deprecation headers |
| 57 | SPRINT_121_policy_reasoning | LEDGER-OBS-50-001 | TODO | Integrate telemetry core within ledger writer/projector services |
| 58 | SPRINT_121_policy_reasoning | LEDGER-OBS-50-001 | TODO | emitting structured logs |
| 59 | SPRINT_121_policy_reasoning | LEDGER-OBS-50-001 | TODO | projector replay |
| 60 | SPRINT_121_policy_reasoning | LEDGER-OBS-50-001 | TODO | query APIs with tenant context |
| 61 | SPRINT_121_policy_reasoning | LEDGER-OBS-50-001 | TODO | trace spans for ledger append |
| 62 | SPRINT_121_policy_reasoning | LEDGER-OBS-51-001 | TODO | Publish metrics for ledger latency |
| 63 | SPRINT_121_policy_reasoning | LEDGER-OBS-51-001 | TODO | event throughput |
| 64 | SPRINT_121_policy_reasoning | LEDGER-OBS-51-001 | TODO | policy evaluation linkage. Define SLOs (ledger append P95 < 1s |
| 65 | SPRINT_121_policy_reasoning | LEDGER-OBS-51-001 | TODO | projector lag |
| 66 | SPRINT_121_policy_reasoning | LEDGER-OBS-51-001 | TODO | replay lag < 30s) with burn-rate alerts |
| 67 | SPRINT_121_policy_reasoning | LEDGER-OBS-52-001 | TODO | Emit timeline events for ledger writes |
| 68 | SPRINT_121_policy_reasoning | LEDGER-OBS-52-001 | TODO | `ledger.projection.updated`) with trace ID |
| 69 | SPRINT_121_policy_reasoning | LEDGER-OBS-52-001 | TODO | policy version |
| 70 | SPRINT_121_policy_reasoning | LEDGER-OBS-52-001 | TODO | projector commits (`ledger.event.appended` |
| 71 | SPRINT_121_policy_reasoning | LEDGER-OBS-53-001 | TODO | Persist evidence bundle references (evaluation/job capsules) alongside ledger entries |
| 72 | SPRINT_121_policy_reasoning | LEDGER-OBS-53-001 | TODO | exposing lookup API linking findings to evidence manifests |
| 73 | SPRINT_121_policy_reasoning | LEDGER-OBS-54-001 | TODO | Verify attestation references for ledger-derived exports |
| 74 | SPRINT_121_policy_reasoning | LEDGER-OBS-54-001 | TODO | expose `/ledger/attestations` endpoint returning DSSE verification state |
| 75 | SPRINT_121_policy_reasoning | LEDGER-OBS-55-001 | TODO | Enhance incident mode to record additional replay diagnostics (lag traces |
| 76 | SPRINT_121_policy_reasoning | LEDGER-OBS-55-001 | TODO | conflict snapshots) |
| 77 | SPRINT_121_policy_reasoning | LEDGER-PACKS-42-001 | TODO | CLI offline mode |
| 78 | SPRINT_121_policy_reasoning | LEDGER-PACKS-42-001 | TODO | Provide snapshot/time-travel APIs |
| 79 | SPRINT_121_policy_reasoning | LEDGER-PACKS-42-001 | TODO | digestable exports for task pack simulation |
| 80 | SPRINT_121_policy_reasoning | LEDGER-RISK-66-001 | TODO | Add schema migrations for `risk_score` |
| 81 | SPRINT_121_policy_reasoning | LEDGER-RISK-66-001 | TODO | `explanation_id` |
| 82 | SPRINT_121_policy_reasoning | LEDGER-RISK-66-001 | TODO | `profile_version` |
| 83 | SPRINT_121_policy_reasoning | LEDGER-RISK-66-001 | TODO | `risk_severity` |
| 84 | SPRINT_121_policy_reasoning | LEDGER-RISK-66-001 | TODO | supporting indexes |
| 85 | SPRINT_122_policy_reasoning | LEDGER-RISK-67-001 | TODO | Expose query APIs for scored findings with score/severity filters |
| 86 | SPRINT_122_policy_reasoning | LEDGER-RISK-67-001 | TODO | pagination |
| 87 | SPRINT_122_policy_reasoning | LEDGER-RISK-68-001 | TODO | Enable export of scored findings |
| 88 | SPRINT_122_policy_reasoning | LEDGER-RISK-69-001 | TODO | Emit metrics/dashboards for scoring latency |
| 89 | SPRINT_122_policy_reasoning | LEDGER-RISK-69-001 | TODO | result freshness |
| 90 | SPRINT_122_policy_reasoning | LEDGER-RISK-69-001 | TODO | severity distribution |
| 91 | SPRINT_122_policy_reasoning | LEDGER-TEN-48-001 | TODO | Partition ledger tables by tenant/project |
| 92 | SPRINT_122_policy_reasoning | LEDGER-TEN-48-001 | TODO | enable RLS |
| 93 | SPRINT_122_policy_reasoning | LEDGER-TEN-48-001 | TODO | stamp audit metadata |
| 94 | SPRINT_122_policy_reasoning | LEDGER-TEN-48-001 | TODO | update queries/events |
| 95 | SPRINT_123_policy_reasoning | EXPORT-CONSOLE-23-001 | TODO | Build evidence bundle/export generator producing signed manifests |
| 96 | SPRINT_123_policy_reasoning | EXPORT-CONSOLE-23-001 | TODO | CSV/JSON replay endpoints |
| 97 | SPRINT_123_policy_reasoning | EXPORT-CONSOLE-23-001 | TODO | expose progress telemetry |
| 98 | SPRINT_123_policy_reasoning | EXPORT-CONSOLE-23-001 | TODO | integrate with scheduler jobs |
| 99 | SPRINT_123_policy_reasoning | EXPORT-CONSOLE-23-001 | TODO | trace attachments |
| 100 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-56-001 | TODO | Support policy pack imports from Mirror Bundles |
| 101 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-56-001 | TODO | ensure deterministic caching |
| 102 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-56-001 | TODO | track `bundle_id` metadata |
| 103 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-57-001 | TODO | Enforce sealed-mode guardrails in evaluation (no outbound fetch) |
| 104 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-57-002 | TODO | Annotate rule explanations with staleness information |
| 105 | SPRINT_123_policy_reasoning | POLICY-AIRGAP-57-002 | TODO | fallback data (cached EPSS |
| 106 | SPRINT_123_policy_reasoning | POLICY-AOC-19-001 | TODO | Add Roslyn/CI lint preventing ingestion projects from referencing Policy merge/severity helpers |
| 107 | SPRINT_123_policy_reasoning | POLICY-AOC-19-001 | TODO | block forbidden writes at compile time |
| 108 | SPRINT_123_policy_reasoning | POLICY-AOC-19-003 | TODO | Update readers/processors to consume only `content.raw` |
| 109 | SPRINT_123_policy_reasoning | POLICY-AOC-19-003 | TODO | `identifiers` |
| 110 | SPRINT_123_policy_reasoning | POLICY-AOC-19-003 | TODO | `linkset`. Remove dependencies on legacy normalized fields |
| 111 | SPRINT_123_policy_reasoning | POLICY-AOC-19-004 | TODO | Add regression tests ensuring policy derived outputs remain deterministic when ingesting revised raw docs (supersedes) |
| 112 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-001 | TODO | Introduce VerificationPolicy object: schema |
| 113 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-001 | TODO | lifecycle |
| 114 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-001 | TODO | persistence |
| 115 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-001 | TODO | versioning |
| 116 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-002 | TODO | Provide Policy Studio editor with validation |
| 117 | SPRINT_123_policy_reasoning | POLICY-ATTEST-73-002 | TODO | dry-run simulation |
| 118 | SPRINT_123_policy_reasoning | POLICY-ATTEST-74-001 | TODO | Integrate verification policies into attestor verification pipeline with caching |
| 119 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | Optimize findings/explain APIs for Console: cursor-based pagination at scale |
| 120 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | aggregation hints for dashboard cards. Ensure deterministic ordering |
| 121 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | expose provenance refs |
| 122 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | global filter parameters (severity bands |
| 123 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | policy version |
| 124 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | rule trace summarization |
| 125 | SPRINT_123_policy_reasoning | POLICY-CONSOLE-23-001 | TODO | time window) |
| 126 | SPRINT_124_policy_reasoning | POLICY-CONSOLE-23-002 | TODO | Produce simulation diff metadata (before/after counts |
| 127 | SPRINT_124_policy_reasoning | POLICY-CONSOLE-23-002 | TODO | approval state endpoints consumed by Console policy workspace |
| 128 | SPRINT_124_policy_reasoning | POLICY-CONSOLE-23-002 | TODO | rule impact summaries) |
| 129 | SPRINT_124_policy_reasoning | POLICY-CONSOLE-23-002 | TODO | severity deltas |
| 130 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-002 | BLOCKED | Build deterministic evaluator honoring lexical/priority order |
| 131 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-002 | BLOCKED | first-match semantics |
| 132 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-002 | BLOCKED | safe value types (no wall-clock/network access) |
| 133 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-003 | TODO | Implement selection joiners resolving SBOM↔advisory↔VEX tuples using linksets |
| 134 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-003 | TODO | PURL equivalence tables |
| 135 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-004 | TODO | Ship materialization writer that upserts into `effective_finding_{policyId}` with append-only history |
| 136 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-004 | TODO | tenant scoping |
| 137 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-005 | TODO | Enforce determinism guard banning wall-clock |
| 138 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-005 | TODO | RNG |
| 139 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-006 | TODO | Implement incremental orchestrator reacting to advisory/vex/SBOM change streams |
| 140 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-007 | TODO | Emit structured traces/logs of rule hits with sampling controls |
| 141 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-007 | TODO | `vex_overrides_total`) |
| 142 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-007 | TODO | metrics (`rules_fired_total` |
| 143 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-008 | TODO | Add unit/property/golden/perf suites covering policy compilation |
| 144 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-008 | TODO | determinism |
| 145 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-008 | TODO | evaluation correctness |
| 146 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-009 | TODO | Define Mongo schemas/indexes for `policies` |
| 147 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-009 | TODO | `effective_finding_*` |
| 148 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-009 | TODO | `policy_runs` |
| 149 | SPRINT_124_policy_reasoning | POLICY-ENGINE-20-009 | TODO | implement migrations |
| 150 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-001 | TODO | Extend compile outputs to include rule coverage metadata |
| 151 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-001 | TODO | inline documentation |
| 152 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-001 | TODO | rule index for editor autocomplete |
| 153 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-001 | TODO | symbol table |
| 154 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-002 | TODO | Enhance simulate endpoints to emit rule firing counts |
| 155 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-002 | TODO | heatmap aggregates |
| 156 | SPRINT_124_policy_reasoning | POLICY-ENGINE-27-002 | TODO | sampled explain traces with deterministic ordering |
| 157 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | Implement batch evaluation endpoint (`POST /policy/eval/batch`) returning determinations + rationale chain for sets of `(artifact |
| 158 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | POLICY-ENGINE-27-004 |
| 159 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | advisory)` tuples |
| 160 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | purl |
| 161 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | support pagination |
| 162 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-001 | TODO | version |
| 163 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-002 | TODO | Provide streaming simulation API comparing two policy versions |
| 164 | SPRINT_124_policy_reasoning | POLICY-ENGINE-29-002 | TODO | returning per-finding deltas without writes |
| 165 | SPRINT_125_mirror | MIRROR-CRT-56-001 | TODO | Staffing decision |
| 166 | SPRINT_125_policy_reasoning | POLICY-ENGINE-29-003 | TODO | Surface path/scope awareness in determinations (signal optional/dev/test downgrade |
| 167 | SPRINT_125_policy_reasoning | POLICY-ENGINE-29-004 | TODO | Add metrics/logs for batch evaluation (latency |
| 168 | SPRINT_125_policy_reasoning | POLICY-ENGINE-29-004 | TODO | queue depth) |
| 169 | SPRINT_125_policy_reasoning | POLICY-ENGINE-29-004 | TODO | simulation diff counts |
| 170 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-001 | TODO | Define overlay contract for graph nodes/edges (status |
| 171 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-001 | TODO | expose projection API for Cartographer |
| 172 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-001 | TODO | path relevance) |
| 173 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-001 | TODO | rationale refs |
| 174 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-001 | TODO | severity |
| 175 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-002 | TODO | Implement simulation bridge returning on-the-fly overlays for Cartographer/Graph Explorer when invoking Policy Engine simulate |
| 176 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-002 | TODO | ensure no writes |
| 177 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-101 | TODO | Surface trust weighting configuration (issuer base weights |
| 178 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-101 | TODO | recency decay |
| 179 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-101 | TODO | scope adjustments) for VEX Lens via Policy Studio + API |
| 180 | SPRINT_125_policy_reasoning | POLICY-ENGINE-30-101 | TODO | signature modifiers |
| 181 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-001 | TODO | Expose policy knobs for Advisory AI (trust presets |
| 182 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-001 | TODO | TTLs) via Policy Studio |
| 183 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-001 | TODO | plan ranking weights |
| 184 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-001 | TODO | temperature |
| 185 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-001 | TODO | token limits |
| 186 | SPRINT_125_policy_reasoning | POLICY-ENGINE-31-002 | TODO | Provide batch endpoint delivering policy context (thresholds |
| 187 | SPRINT_125_policy_reasoning | POLICY-ENGINE-32-101 | TODO | Define orchestrator `policy_eval` job schema |
| 188 | SPRINT_125_policy_reasoning | POLICY-ENGINE-32-101 | TODO | idempotency keys |
| 189 | SPRINT_125_policy_reasoning | POLICY-ENGINE-33-101 | TODO | Implement orchestrator-driven policy evaluation workers using SDK heartbeats |
| 190 | SPRINT_125_policy_reasoning | POLICY-ENGINE-33-101 | TODO | respecting throttles |
| 191 | SPRINT_125_policy_reasoning | POLICY-ENGINE-34-101 | TODO | Publish policy run ledger exports + SLO burn-rate metrics to orchestrator |
| 192 | SPRINT_125_policy_reasoning | POLICY-ENGINE-35-201 | TODO | Expose deterministic policy snapshot API |
| 193 | SPRINT_125_policy_reasoning | POLICY-ENGINE-38-201 | TODO | Emit enriched policy violation events (decision rationale ids |
| 194 | SPRINT_125_policy_reasoning | POLICY-ENGINE-40-001 | TODO | Update severity/status evaluation pipelines to consume multiple source severities per linkset |
| 195 | SPRINT_125_policy_reasoning | POLICY-ENGINE-40-001 | TODO | preferred source |
| 196 | SPRINT_125_policy_reasoning | POLICY-ENGINE-40-001 | TODO | supporting selection strategies (max |
| 197 | SPRINT_125_policy_reasoning | POLICY-ENGINE-40-002 | TODO | Accept VEX linkset conflicts |
| 198 | SPRINT_125_policy_reasoning | POLICY-ENGINE-40-002 | TODO | provide rationale references in effective findings |
| 199 | SPRINT_126_policy_reasoning | POLICY-ENGINE-40-003 | TODO | Graph Explorer) to request policy decisions with source evidence summaries (top severity sources |
| 200 | SPRINT_126_policy_reasoning | POLICY-ENGINE-40-003 | TODO | Provide API/SDK utilities for consumers (Web Scanner |
| 201 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-001 | TODO | Implement SPL compiler: validate YAML |
| 202 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-001 | TODO | canonicalize |
| 203 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-001 | TODO | produce signed bundle |
| 204 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-001 | TODO | store artifact in object storage |
| 205 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-002 | TODO | Build runtime evaluator executing compiled plans over advisory/vex linksets + SBOM asset metadata with deterministic caching (Redis) |
| 206 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-003 | TODO | Implement evaluation/compilation metrics |
| 207 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-003 | TODO | `policy_compiles_total` |
| 208 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-003 | TODO | structured logs (`policy_eval_seconds` |
| 209 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-003 | TODO | tracing |
| 210 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-004 | TODO | Build event pipeline: subscribe to linkset/SBOM updates |
| 211 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-004 | TODO | schedule re-eval jobs |
| 212 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | Design |
| 213 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | TTL |
| 214 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | `policy_artifacts` collections with indexes |
| 215 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | `policy_revisions` |
| 216 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | `policy_runs` |
| 217 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-005 | TODO | implement `policy_packs` |
| 218 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-006 | TODO | Implement explainer persistence + retrieval APIs linking decisions to explanation tree |
| 219 | SPRINT_126_policy_reasoning | POLICY-ENGINE-50-007 | TODO | Provide evaluation worker host/DI wiring |
| 220 | SPRINT_126_policy_reasoning | POLICY-ENGINE-60-001 | TODO | Maintain Redis effective decision maps per asset/snapshot for Graph overlays |
| 221 | SPRINT_126_policy_reasoning | POLICY-ENGINE-60-001 | TODO | implement versioning |
| 222 | SPRINT_126_policy_reasoning | POLICY-ENGINE-60-002 | TODO | Expose simulation bridge for Graph What-if APIs |
| 223 | SPRINT_126_policy_reasoning | POLICY-ENGINE-60-002 | TODO | supporting hypothetical SBOM diffs |
| 224 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-002 | TODO | Design |
| 225 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-002 | TODO | `exception_bindings`) with indexes |
| 226 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-002 | TODO | `exception_reviews` |
| 227 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-002 | TODO | create Mongo collections (`exceptions` |
| 228 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-002 | TODO | migrations |
| 229 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-004 | TODO | Extend metrics/tracing/logging for exception application (latency |
| 230 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-004 | TODO | counts |
| 231 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-004 | TODO | expiring events) |
| 232 | SPRINT_126_policy_reasoning | POLICY-ENGINE-70-005 | TODO | Provide APIs/workers hook for exception activation/expiry (auto start/end) |
| 233 | SPRINT_126_policy_reasoning | POLICY-ENGINE-80-001 | TODO | Integrate reachability/exploitability inputs into evaluation pipeline (state/score/confidence) with caching |
| 234 | SPRINT_126_policy_reasoning | POLICY-RISK-90-001 | TODO | Ingest entropy penalty inputs from Scanner (`entropy.report.json` |
| 235 | SPRINT_126_policy_reasoning | POLICY-RISK-90-001 | TODO | `layer_summary.json`) |
| 236 | SPRINT_126_policy_reasoning | POLICY-RISK-90-001 | TODO | expose explanations/metrics for opaque ratio penalties (`docs/modules/scanner/entropy.md`). |
| 237 | SPRINT_126_policy_reasoning | POLICY-RISK-90-001 | TODO | extend trust algebra with configurable weights/caps |
| 238 | SPRINT_127_policy_reasoning | POLICY-ENGINE-80-002 | TODO | Create joining layer to read `reachability_facts` efficiently (indexes |
| 239 | SPRINT_127_policy_reasoning | POLICY-ENGINE-80-002 | TODO | projections) |
| 240 | SPRINT_127_policy_reasoning | POLICY-ENGINE-80-003 | TODO | Extend SPL predicates/actions to reference reachability state/score/confidence |
| 241 | SPRINT_127_policy_reasoning | POLICY-ENGINE-80-004 | TODO | Emit metrics (`policy_reachability_applied_total` |
| 242 | SPRINT_127_policy_reasoning | POLICY-ENGINE-80-004 | TODO | `policy_reachability_cache_hit_ratio`) |
| 243 | SPRINT_127_policy_reasoning | POLICY-OBS-50-001 | TODO | Integrate telemetry core into policy API + worker hosts |
| 244 | SPRINT_127_policy_reasoning | POLICY-OBS-50-001 | TODO | `decision_effect` |
| 245 | SPRINT_127_policy_reasoning | POLICY-OBS-50-001 | TODO | `policy_version` |
| 246 | SPRINT_127_policy_reasoning | POLICY-OBS-50-001 | TODO | ensuring spans/logs cover compile/evaluate flows with `tenant_id` |
| 247 | SPRINT_127_policy_reasoning | POLICY-OBS-50-001 | TODO | trace IDs |
| 248 | SPRINT_127_policy_reasoning | POLICY-OBS-51-001 | TODO | Emit golden-signal metrics (compile latency |
| 249 | SPRINT_127_policy_reasoning | POLICY-OBS-51-001 | TODO | evaluate latency |
| 250 | SPRINT_127_policy_reasoning | POLICY-OBS-51-001 | TODO | override counts) |
| 251 | SPRINT_127_policy_reasoning | POLICY-OBS-51-001 | TODO | rule hits |
| 252 | SPRINT_127_policy_reasoning | POLICY-OBS-52-001 | TODO | Emit timeline events `policy.evaluate.started` |
| 253 | SPRINT_127_policy_reasoning | POLICY-OBS-52-001 | TODO | `policy.decision.recorded` with trace IDs |
| 254 | SPRINT_127_policy_reasoning | POLICY-OBS-52-001 | TODO | `policy.evaluate.completed` |
| 255 | SPRINT_127_policy_reasoning | POLICY-OBS-52-001 | TODO | input digests |
| 256 | SPRINT_127_policy_reasoning | POLICY-OBS-52-001 | TODO | rule summary. Provide contract tests |
| 257 | SPRINT_127_policy_reasoning | POLICY-OBS-53-001 | TODO | Produce evaluation evidence bundles (inputs slice |
| 258 | SPRINT_127_policy_reasoning | POLICY-OBS-53-001 | TODO | config snapshot) through evidence locker integration |
| 259 | SPRINT_127_policy_reasoning | POLICY-OBS-53-001 | TODO | engine version |
| 260 | SPRINT_127_policy_reasoning | POLICY-OBS-53-001 | TODO | rule trace |
| 261 | SPRINT_127_policy_reasoning | POLICY-OBS-54-001 | TODO | Generate DSSE attestations for evaluation outputs |
| 262 | SPRINT_127_policy_reasoning | POLICY-OBS-54-001 | TODO | expose `/evaluations/{id}/attestation` |
| 263 | SPRINT_127_policy_reasoning | POLICY-OBS-55-001 | TODO | Implement incident mode sampling overrides (full rule trace capture |
| 264 | SPRINT_127_policy_reasoning | POLICY-OBS-55-001 | TODO | extended retention) with auto-activation on SLO breach |
| 265 | SPRINT_127_policy_reasoning | POLICY-RISK-66-001 | TODO | Develop initial JSON Schema for RiskProfile (signals |
| 266 | SPRINT_127_policy_reasoning | POLICY-RISK-66-001 | TODO | overrides) with validator stubs |
| 267 | SPRINT_127_policy_reasoning | POLICY-RISK-66-001 | TODO | severity |
| 268 | SPRINT_127_policy_reasoning | POLICY-RISK-66-001 | TODO | transforms |
| 269 | SPRINT_127_policy_reasoning | POLICY-RISK-66-001 | TODO | weights |
| 270 | SPRINT_127_policy_reasoning | POLICY-RISK-66-002 | TODO | Implement inheritance/merge logic with conflict detection |
| 271 | SPRINT_127_policy_reasoning | POLICY-RISK-66-003 | TODO | Integrate RiskProfile schema into Policy Engine configuration |
| 272 | SPRINT_127_policy_reasoning | POLICY-RISK-66-003 | TODO | ensuring validation |
| 273 | SPRINT_127_policy_reasoning | POLICY-RISK-66-004 | TODO | Extend Policy libraries to load/save RiskProfile documents |
| 274 | SPRINT_127_policy_reasoning | POLICY-RISK-66-004 | TODO | compute content hashes |
| 275 | SPRINT_127_policy_reasoning | POLICY-RISK-67-001 | TODO | Integrate profile storage |
| 276 | SPRINT_128_policy_reasoning | POLICY-RISK-67-002 | TODO | Implement profile lifecycle APIs (`/risk/profiles` create/publish/deprecate) |
| 277 | SPRINT_128_policy_reasoning | POLICY-RISK-67-002 | TODO | Publish `.well-known/risk-profile-schema` endpoint |
| 278 | SPRINT_128_policy_reasoning | POLICY-RISK-67-003 | TODO | Provide policy-layer APIs to trigger risk simulations |
| 279 | SPRINT_128_policy_reasoning | POLICY-RISK-68-001 | TODO | Implement scope selectors |
| 280 | SPRINT_128_policy_reasoning | POLICY-RISK-68-001 | TODO | Provide simulation API bridging Policy Studio with risk engine |
| 281 | SPRINT_128_policy_reasoning | POLICY-RISK-68-001 | TODO | precedence rules |
| 282 | SPRINT_128_policy_reasoning | POLICY-RISK-68-001 | TODO | returns distributions |
| 283 | SPRINT_128_policy_reasoning | POLICY-RISK-68-002 | TODO | Add override/adjustment support with audit metadata |
| 284 | SPRINT_128_policy_reasoning | POLICY-RISK-69-001 | TODO | Emit events/notifications on profile publish |
| 285 | SPRINT_128_policy_reasoning | POLICY-RISK-69-001 | TODO | deprecate |
| 286 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | Define SPL v1 YAML + JSON Schema |
| 287 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | VEX precedence |
| 288 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | exceptions |
| 289 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | including advisory rules |
| 290 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | layering metadata. Publish schema resources |
| 291 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | severity mapping |
| 292 | SPRINT_128_policy_reasoning | POLICY-SPL-23-001 | TODO | validation fixtures |
| 293 | SPRINT_128_policy_reasoning | POLICY-SPL-23-002 | TODO | Implement canonicalizer that normalizes policy packs (ordering |
| 294 | SPRINT_128_policy_reasoning | POLICY-SPL-23-002 | TODO | computes content hash |
| 295 | SPRINT_128_policy_reasoning | POLICY-SPL-23-002 | TODO | defaults) |
| 296 | SPRINT_128_policy_reasoning | POLICY-SPL-23-003 | TODO | Build policy layering/override engine (global/org/project/env/exception) with field-level precedence matrices |
| 297 | SPRINT_128_policy_reasoning | POLICY-SPL-23-004 | TODO | Design explanation tree model (rule hits |
| 298 | SPRINT_128_policy_reasoning | POLICY-SPL-23-004 | TODO | UI |
| 299 | SPRINT_128_policy_reasoning | POLICY-SPL-23-004 | TODO | decisions) |
| 300 | SPRINT_128_policy_reasoning | POLICY-SPL-23-004 | TODO | inputs |
| 301 | SPRINT_128_policy_reasoning | POLICY-SPL-23-004 | TODO | persistence structures reused by runtime |
| 302 | SPRINT_128_policy_reasoning | POLICY-SPL-23-005 | TODO | Create migration tool to snapshot existing behavior into baseline SPL packs (`org.core.baseline`) |
| 303 | SPRINT_128_policy_reasoning | POLICY-SPL-23-005 | TODO | including policy docs |
| 304 | SPRINT_128_policy_reasoning | POLICY-SPL-24-001 | TODO | Extend SPL schema to expose reachability/exploitability predicates |
| 305 | SPRINT_128_policy_reasoning | POLICY-SPL-24-001 | TODO | update documentation |
| 306 | SPRINT_128_policy_reasoning | POLICY-SPL-24-001 | TODO | weighting functions |
| 307 | SPRINT_129_policy_reasoning | POLICY-TEN-48-001 | TODO | Add `tenant_id`/`project_id` columns |
| 308 | SPRINT_129_policy_reasoning | POLICY-TEN-48-001 | TODO | emit rationale IDs including tenant metadata |
| 309 | SPRINT_129_policy_reasoning | POLICY-TEN-48-001 | TODO | enable RLS |
| 310 | SPRINT_129_policy_reasoning | POLICY-TEN-48-001 | TODO | update evaluators to require tenant context |
| 311 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | Define OpenAPI specification covering workspaces |
| 312 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | attestations |
| 313 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | promotions |
| 314 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | publish typed clients for Console/CLI |
| 315 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | reviews |
| 316 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | simulations |
| 317 | SPRINT_129_policy_reasoning | REGISTRY-API-27-001 | TODO | versions |
| 318 | SPRINT_129_policy_reasoning | REGISTRY-API-27-002 | TODO | Implement workspace storage (Mongo collections |
| 319 | SPRINT_129_policy_reasoning | REGISTRY-API-27-002 | TODO | diff history |
| 320 | SPRINT_129_policy_reasoning | REGISTRY-API-27-002 | TODO | object storage buckets) with CRUD endpoints |
| 321 | SPRINT_129_policy_reasoning | REGISTRY-API-27-003 | TODO | Integrate compile endpoint: forward source bundle to Policy Engine |
| 322 | SPRINT_129_policy_reasoning | REGISTRY-API-27-003 | TODO | persist diagnostics |
| 323 | SPRINT_129_policy_reasoning | REGISTRY-API-27-003 | TODO | rule index |
| 324 | SPRINT_129_policy_reasoning | REGISTRY-API-27-003 | TODO | symbol table |
| 325 | SPRINT_129_policy_reasoning | REGISTRY-API-27-004 | TODO | Implement quick simulation API with request limits (sample size |
| 326 | SPRINT_129_policy_reasoning | REGISTRY-API-27-004 | TODO | heatmap |
| 327 | SPRINT_129_policy_reasoning | REGISTRY-API-27-004 | TODO | returning counts |
| 328 | SPRINT_129_policy_reasoning | REGISTRY-API-27-004 | TODO | timeouts) |
| 329 | SPRINT_129_policy_reasoning | REGISTRY-API-27-005 | TODO | Build batch simulation orchestration: enqueue shards |
| 330 | SPRINT_129_policy_reasoning | REGISTRY-API-27-005 | TODO | collect partials |
| 331 | SPRINT_129_policy_reasoning | REGISTRY-API-27-005 | TODO | reduce deltas |
| 332 | SPRINT_129_policy_reasoning | REGISTRY-API-27-006 | TODO | Implement review workflow (comments |
| 333 | SPRINT_129_policy_reasoning | REGISTRY-API-27-006 | TODO | required approvers |
| 334 | SPRINT_129_policy_reasoning | REGISTRY-API-27-006 | TODO | status transitions) with audit trails |
| 335 | SPRINT_129_policy_reasoning | REGISTRY-API-27-006 | TODO | votes |
| 336 | SPRINT_129_policy_reasoning | REGISTRY-API-27-007 | TODO | Implement publish pipeline: sign source/compiled digests |
| 337 | SPRINT_129_policy_reasoning | REGISTRY-API-27-007 | TODO | create attestations |
| 338 | SPRINT_129_policy_reasoning | REGISTRY-API-27-007 | TODO | mark version immutable |
| 339 | SPRINT_129_policy_reasoning | REGISTRY-API-27-008 | TODO | Implement promotion bindings per tenant/environment with canary subsets |
| 340 | SPRINT_129_policy_reasoning | REGISTRY-API-27-008 | TODO | rollback path |
| 341 | SPRINT_129_policy_reasoning | REGISTRY-API-27-009 | TODO | Instrument metrics/logs/traces (compile time |
| 342 | SPRINT_129_policy_reasoning | REGISTRY-API-27-009 | TODO | approval latency) |
| 343 | SPRINT_129_policy_reasoning | REGISTRY-API-27-009 | TODO | diagnostics rate |
| 344 | SPRINT_129_policy_reasoning | REGISTRY-API-27-009 | TODO | sim queue depth |
| 345 | SPRINT_129_policy_reasoning | REGISTRY-API-27-010 | TODO | Build unit/integration/load test suites for compile/sim/review/publish/promote flows |
| 346 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-001 | TODO | Scaffold scoring service (job queue |
| 347 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-001 | TODO | provider registry) with deterministic execution harness |
| 348 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-001 | TODO | worker loop |
| 349 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | Implement default transforms (linear |
| 350 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | clamping |
| 351 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | gating |
| 352 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | logistic |
| 353 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | minmax |
| 354 | SPRINT_129_policy_reasoning | RISK-ENGINE-66-002 | TODO | piecewise) |
| 355 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-001 | TODO | Integrate CVSS |
| 356 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-001 | TODO | KEV providers pulling data from Conseiller |
| 357 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-001 | TODO | `any` |
| 358 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-001 | TODO | implement reducers (`max` |
| 359 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-002 | TODO | Integrate VEX gate provider |
| 360 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-003 | TODO | Add fix availability |
| 361 | SPRINT_129_policy_reasoning | RISK-ENGINE-67-003 | TODO | asset criticality |
| 362 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-001 | TODO | Persist scoring results + explanation pointers to Findings Ledger |
| 363 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-002 | TODO | Expose APIs (`/risk/jobs` |
| 364 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-002 | TODO | `/risk/results/{id}/explanation`) |
| 365 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-002 | TODO | `/risk/results` |
| 366 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-002 | TODO | filtering |
| 367 | SPRINT_129_policy_reasoning | RISK-ENGINE-68-002 | TODO | include pagination |
| 368 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-001 | TODO | Implement simulation mode producing distributions |
| 369 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-002 | TODO | Add telemetry (spans |
| 370 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-002 | TODO | cache hits |
| 371 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-002 | TODO | job throughput |
| 372 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-002 | TODO | logs) for provider latency |
| 373 | SPRINT_129_policy_reasoning | RISK-ENGINE-69-002 | TODO | metrics |
| 374 | SPRINT_129_policy_reasoning | RISK-ENGINE-70-001 | TODO | Support offline provider bundles with manifest verification |
| 375 | SPRINT_129_policy_reasoning | RISK-ENGINE-70-002 | TODO | Integrate runtime evidence provider |
| 376 | SPRINT_129_policy_reasoning | VEXLENS-30-001 | TODO | CycloneDX VEX (status mapping |
| 377 | SPRINT_129_policy_reasoning | VEXLENS-30-001 | TODO | Implement normalization pipeline for CSAF VEX |
| 378 | SPRINT_129_policy_reasoning | VEXLENS-30-001 | TODO | OpenVEX |
| 379 | SPRINT_129_policy_reasoning | VEXLENS-30-001 | TODO | justification mapping |
| 380 | SPRINT_129_policy_reasoning | VEXLENS-30-001 | TODO | product tree parsing) |
| 381 | SPRINT_129_policy_reasoning | VEXLENS-30-002 | TODO | CPE2.3 |
| 382 | SPRINT_129_policy_reasoning | VEXLENS-30-003 | TODO | DSSE |
| 383 | SPRINT_129_policy_reasoning | VEXLENS-30-003 | TODO | Integrate signature verification (Ed25519 |
| 384 | SPRINT_129_policy_reasoning | VEXLENS-30-003 | TODO | PKIX) using issuer keys |
| 385 | SPRINT_129_policy_reasoning | VEXLENS-30-003 | TODO | annotate evidence with verification state |
| 386 | SPRINT_129_policy_reasoning | VEXLENS-30-004 | TODO | Implement trust weighting engine (issuer base weights |
| 387 | SPRINT_129_policy_reasoning | VEXLENS-30-004 | TODO | justification modifiers |
| 388 | SPRINT_129_policy_reasoning | VEXLENS-30-004 | TODO | recency decay |
| 389 | SPRINT_129_policy_reasoning | VEXLENS-30-004 | TODO | signature modifiers |
| 390 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | AFFECTED |
| 391 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | DISPUTED |
| 392 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | FIXED |
| 393 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | Implement consensus algorithm producing `consensus_state` |
| 394 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | UNDER_INVESTIGATION |
| 395 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | `confidence` |
| 396 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | `quorum` |
| 397 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | `rationale` |
| 398 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | `weights` |
| 399 | SPRINT_129_policy_reasoning | VEXLENS-30-005 | TODO | support states: NOT_AFFECTED |
| 400 | SPRINT_129_policy_reasoning | VEXLENS-30-006 | TODO | Materialize consensus projection storage with idempotent workers triggered by VEX/Policy changes |
| 401 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | Expose APIs (`/vex/consensus` |
| 402 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | `/vex/consensus/export`) with pagination |
| 403 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | `/vex/consensus/query` |
| 404 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | `/vex/consensus/simulate` |
| 405 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | `/vex/consensus/{id}` |
| 406 | SPRINT_129_policy_reasoning | VEXLENS-30-007 | TODO | cost budgets |
| 407 | SPRINT_129_policy_reasoning | VEXLENS-30-008 | TODO | Integrate consensus signals with Policy Engine (thresholds |
| 408 | SPRINT_129_policy_reasoning | VEXLENS-30-008 | TODO | simulation inputs) |
| 409 | SPRINT_129_policy_reasoning | VEXLENS-30-008 | TODO | suppression |
| 410 | SPRINT_129_policy_reasoning | VEXLENS-30-009 | TODO | Instrument metrics (`vex_consensus_compute_latency` |
| 411 | SPRINT_129_policy_reasoning | VEXLENS-30-009 | TODO | `vex_consensus_disputed_total` |
| 412 | SPRINT_129_policy_reasoning | VEXLENS-30-009 | TODO | `vex_signature_verification_rate`) |
| 413 | SPRINT_129_policy_reasoning | VEXLENS-30-009 | TODO | structured logs |
| 414 | SPRINT_129_policy_reasoning | VEXLENS-30-009 | TODO | traces |
| 415 | SPRINT_129_policy_reasoning | VEXLENS-30-010 | TODO | Develop unit/property/integration/load tests (10M records) |
| 416 | SPRINT_129_policy_reasoning | VEXLENS-30-010 | TODO | determinism harness |
| 417 | SPRINT_129_policy_reasoning | VEXLENS-30-011 | TODO | Provide deployment manifests |
| 418 | SPRINT_129_policy_reasoning | VEXLENS-30-011 | TODO | caching configuration |
| 419 | SPRINT_129_policy_reasoning | VEXLENS-30-011 | TODO | offline kit seeds |
| 420 | SPRINT_129_policy_reasoning | VEXLENS-30-011 | TODO | scaling guides |
| 421 | SPRINT_129_policy_reasoning | VEXLENS-AIAI-31-001 | TODO | Expose consensus rationale API enhancements (policy factors |
| 422 | SPRINT_129_policy_reasoning | VEXLENS-AIAI-31-001 | TODO | issuer details |
| 423 | SPRINT_129_policy_reasoning | VEXLENS-AIAI-31-001 | TODO | mapping issues) for Advisory AI conflict explanations |
| 424 | SPRINT_129_policy_reasoning | VEXLENS-AIAI-31-002 | TODO | Provide caching hooks for consensus lookups used by Advisory AI (batch endpoints |
| 425 | SPRINT_129_policy_reasoning | VEXLENS-EXPORT-35-001 | TODO | Provide consensus snapshot API delivering deterministic JSONL (state |
| 426 | SPRINT_129_policy_reasoning | VEXLENS-EXPORT-35-001 | TODO | confidence |
| 427 | SPRINT_129_policy_reasoning | VEXLENS-EXPORT-35-001 | TODO | provenance) for exporter mirror bundles |
| 428 | SPRINT_129_policy_reasoning | VEXLENS-ORCH-33-001 | TODO | Register `consensus_compute` job type with orchestrator |
| 429 | SPRINT_129_policy_reasoning | VEXLENS-ORCH-33-001 | TODO | expose job planning hooks for consensus batches |
| 430 | SPRINT_129_policy_reasoning | VEXLENS-ORCH-33-001 | TODO | integrate worker SDK |
| 431 | SPRINT_129_policy_reasoning | VEXLENS-ORCH-34-001 | TODO | Emit consensus completion events into orchestrator run ledger |
| 432 | SPRINT_129_policy_reasoning | VEXLENS-ORCH-34-001 | TODO | provenance chain |
| 433 | SPRINT_129_policy_reasoning | VULN-API-29-001 | TODO | Define OpenAPI spec (list/detail/query/simulation/workflow/export) |
| 434 | SPRINT_129_policy_reasoning | VULN-API-29-001 | TODO | error codes |
| 435 | SPRINT_129_policy_reasoning | VULN-API-29-001 | TODO | pagination/grouping contracts |
| 436 | SPRINT_129_policy_reasoning | VULN-API-29-001 | TODO | query JSON schema |
| 437 | SPRINT_129_policy_reasoning | VULN-API-29-002 | TODO | Implement list/query endpoints with policy parameter |
| 438 | SPRINT_129_policy_reasoning | VULN-API-29-002 | TODO | caching |
| 439 | SPRINT_129_policy_reasoning | VULN-API-29-002 | TODO | grouping |
| 440 | SPRINT_129_policy_reasoning | VULN-API-29-002 | TODO | server paging |
| 441 | SPRINT_129_policy_reasoning | VULN-API-29-003 | TODO | Implement detail endpoint aggregating evidence |
| 442 | SPRINT_129_policy_reasoning | VULN-API-29-003 | TODO | paths (Graph Explorer deep link) |
| 443 | SPRINT_129_policy_reasoning | VULN-API-29-003 | TODO | policy rationale |
| 444 | SPRINT_129_policy_reasoning | VULN-API-29-004 | TODO | Expose workflow endpoints (assign |
| 445 | SPRINT_129_policy_reasoning | VULN-API-29-004 | TODO | accept-risk |
| 446 | SPRINT_129_policy_reasoning | VULN-API-29-004 | TODO | comment |
| 447 | SPRINT_129_policy_reasoning | VULN-API-29-004 | TODO | target-fix |
| 448 | SPRINT_129_policy_reasoning | VULN-API-29-004 | TODO | verify-fix |
| 449 | SPRINT_129_policy_reasoning | VULN-API-29-005 | TODO | Implement simulation endpoint comparing `policy_from` vs `policy_to` |
| 450 | SPRINT_129_policy_reasoning | VULN-API-29-005 | TODO | returning diffs without side effects |
| 451 | SPRINT_129_policy_reasoning | VULN-API-29-006 | TODO | Integrate resolver results with Graph Explorer: include shortest path metadata |
| 452 | SPRINT_129_policy_reasoning | VULN-API-29-006 | TODO | line up deep-link parameters |
| 453 | SPRINT_129_policy_reasoning | VULN-API-29-007 | TODO | Enforce RBAC/ABAC scopes |
| 454 | SPRINT_129_policy_reasoning | VULN-API-29-007 | TODO | implement CSRF/anti-forgery checks for Console |
| 455 | SPRINT_129_policy_reasoning | VULN-API-29-007 | TODO | secure attachment URLs |
| 456 | SPRINT_129_policy_reasoning | VULN-API-29-008 | TODO | Build export orchestrator producing signed bundles (manifest |
| 457 | SPRINT_129_policy_reasoning | VULN-API-29-008 | TODO | NDJSON |
| 458 | SPRINT_129_policy_reasoning | VULN-API-29-008 | TODO | checksums |
| 459 | SPRINT_129_policy_reasoning | VULN-API-29-008 | TODO | signature). Integrate with Findings Ledger for evidence |
| 460 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | Instrument metrics (`vuln_list_latency` |
| 461 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | `vuln_export_duration` |
| 462 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | `vuln_simulation_latency` |
| 463 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | `vuln_workflow_events_total`) |
| 464 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | structured logs |
| 465 | SPRINT_129_policy_reasoning | VULN-API-29-009 | TODO | traces |
| 466 | SPRINT_129_policy_reasoning | VULN-API-29-010 | TODO | Provide unit/integration/perf tests (5M findings) |
| 467 | SPRINT_129_policy_reasoning | VULN-API-29-010 | TODO | fuzz query validation |
| 468 | SPRINT_129_policy_reasoning | VULN-API-29-011 | TODO | CI smoke |
| 469 | SPRINT_129_policy_reasoning | VULN-API-29-011 | TODO | Package deployment (Helm/Compose) |
| 470 | SPRINT_129_policy_reasoning | VULN-API-29-011 | TODO | health checks |
| 471 | SPRINT_129_policy_reasoning | VULN-API-29-011 | TODO | offline kit steps |
| 472 | SPRINT_131_scanner_surface | SCANNER-ANALYZERS-DENO-26-009 | TODO | SCANNER-ANALYZERS-DENO-26-008 |
| 473 | SPRINT_131_scanner_surface | SCANNER-ANALYZERS-JAVA-21-005 | TODO | — |
| 474 | SPRINT_131_scanner_surface | SCANNER-ANALYZERS-LANG-11-001 | TODO | SCANNER-ANALYZERS-LANG-10-309 |
| 475 | SPRINT_132_scanner_surface | SCANNER-ANALYZERS-NATIVE-20-001 | TODO | — |
| 476 | SPRINT_132_scanner_surface | SCANNER-ANALYZERS-NODE-22-001 | TODO | — |
| 477 | SPRINT_133_scanner_surface | SCANNER-ANALYZERS-PHP-27-001 | TODO | — |
| 478 | SPRINT_134_scanner_surface | SCANNER-ANALYZERS-PYTHON-23-001 | TODO | — |
| 479 | SPRINT_135_scanner_surface | SCANNER-ANALYZERS-RUBY-28-001 | TODO | — |
| 480 | SPRINT_135_scanner_surface | SCANNER-ENTRYTRACE-18-502 | TODO | SCANNER-ENTRYTRACE-18-508 |
| 481 | SPRINT_136_scanner_surface | SCANNER-ENG-0020 | TODO | — |
| 482 | SPRINT_136_scanner_surface | SCANNER-ENG-0021 | TODO | — |
| 483 | SPRINT_136_scanner_surface | SCANNER-ENG-0022 | TODO | — |
| 484 | SPRINT_136_scanner_surface | SCANNER-ENG-0023 | TODO | — |
| 485 | SPRINT_136_scanner_surface | SCANNER-ENG-0024 | TODO | — |
| 486 | SPRINT_136_scanner_surface | SCANNER-ENG-0025 | TODO | — |
| 487 | SPRINT_136_scanner_surface | SCANNER-ENG-0026 | TODO | — |
| 488 | SPRINT_136_scanner_surface | SCANNER-ENG-0027 | TODO | — |
| 489 | SPRINT_136_scanner_surface | SCANNER-ENV-01 | TODO | — |
| 490 | SPRINT_136_scanner_surface | SCANNER-EVENTS-16-301 | BLOCKED | — |
| 491 | SPRINT_136_scanner_surface | SCANNER-GRAPH-21-001 | TODO | — |
| 492 | SPRINT_136_scanner_surface | SCANNER-LNM-21-001 | TODO | — |
| 493 | SPRINT_136_scanner_surface | SCANNER-SECRETS-03 | TODO | SCANNER-SECRETS-02 |
| 494 | SPRINT_136_scanner_surface | SCANNER-SURFACE-04 | TODO | SCANNER-SURFACE-01 |
| 495 | SPRINT_136_scanner_surface | SCHED-SURFACE-02 | TODO | SURFACE-FS-02 |
| 496 | SPRINT_136_scanner_surface | SURFACE-FS-03 | TODO | SURFACE-FS-02 |
| 497 | SPRINT_136_scanner_surface | SURFACE-FS-04 | TODO | SURFACE-FS-02 |
| 498 | SPRINT_136_scanner_surface | SURFACE-FS-06 | TODO | SURFACE-FS-02..05 |
| 499 | SPRINT_136_scanner_surface | SURFACE-SECRETS-01 | DOING | — |
| 500 | SPRINT_136_scanner_surface | SURFACE-VAL-01 | DOING | SURFACE-FS-01 |
| 501 | SPRINT_136_scanner_surface | SURFACE-VAL-02 | TODO | SURFACE-FS-02 |
| 502 | SPRINT_136_scanner_surface | ZASTAVA-SURFACE-02 | TODO | SURFACE-FS-02 |
| 503 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0008 | TODO | — |
| 504 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0010 | TODO | SCANNER-ANALYZERS-PHP-27-001..012 |
| 505 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0011 | TODO | — |
| 506 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0012 | TODO | — |
| 507 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0013 | TODO | — |
| 508 | SPRINT_138_scanner_ruby_parity | SCANNER-ENG-0014 | TODO | — |
| 509 | SPRINT_301_docs_tasks_md_i | DOCS-AIAI-31-004 | DOING | DOCS-AIAI-31-003 |
| 510 | SPRINT_301_docs_tasks_md_i | DOCS-AIAI-31-008 | BLOCKED | DOCS-AIAI-31-007 |
| 511 | SPRINT_301_docs_tasks_md_i | DOCS-AIRGAP-56-001 | TODO | — |
| 512 | SPRINT_301_docs_tasks_md_i | DOCS-POLICY-DET-01 | TODO | POLICY-DET backlog |
| 513 | SPRINT_301_docs_tasks_md_i | DOCS-SCANNER-DET-01 | DOING | Sprint 136 outputs |
| 514 | SPRINT_301_docs_tasks_md_i | DOCS-SCANNER-DET-01 | DOING | scanner determinism fixtures |