Files
2026-02-16 07:33:20 +02:00

151 lines
11 KiB
JSON

{
"module": "findings",
"featureCount": 7,
"lastUpdatedUtc": "2026-02-15T20:55:00.000Z",
"features": {
"admin-audit-trails": {
"status": "not_implemented",
"tier": 2,
"retryCount": 1,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": false,
"skipReason": null,
"lastRunId": "run-002",
"lastUpdatedUtc": "2026-02-15T20:55:00.000Z",
"featureFile": "docs/features/unimplemented/findings/admin-audit-trails.md",
"notes": [
"[2026-02-11T18:18:21.9362901Z] checking: Ownership claim by Codex (QA agent); started run-001 Tier 0/1/2 verification for admin-audit-trails.",
"[2026-02-11T18:21:50.2840007Z] skipped: Detected active concurrent ownership on admin-audit-trails run-001 artifacts; terminalized this lane as owned_by_other_agent per FLOW 0.1 before continuing deterministic queue.",
"[2026-02-11T18:26:12.9798197Z] failed: Tier 1 code-parity review found runtime audit gaps despite passing build/tests (decision sequence contract mismatch, history stub, and null evidence repository wiring).",
"[2026-02-11T18:26:12.9798197Z] triaged: Classified as missing_code (admin audit trail runtime behavior is partially scaffolded but not fully wired).",
"[2026-02-11T18:26:12.9798197Z] confirmed: Confirmed via run-001 claim-parity evidence and source review across DecisionService, LedgerEventWriteService, and WebService DI registrations.",
"[2026-02-11T18:26:12.9798197Z] not_implemented: Moved feature doc to docs/features/unimplemented/findings/admin-audit-trails.md after run-001 Tier 0/1/2 verification.",
"[2026-02-15T20:55:00.000Z] run-002 reinvestigation: CONFIRMED not_implemented. Write path (DecisionService.RecordAsync) functional and well-tested. Read path gaps: GetHistoryAsync returns empty array stub, IAuditService has no implementation, runtime DI uses NullEvidenceRepository and InMemoryFindingRepository (returns null/empty). Integration tests use shallow BeOneOf() status patterns. All 141 tests pass (MTP runner ignores --filter). No reclassification warranted."
]
},
"attested-reduction-scoring-in-findings-ledger": {
"status": "not_implemented",
"tier": 2,
"retryCount": 1,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": false,
"skipReason": null,
"lastRunId": "run-002",
"lastUpdatedUtc": "2026-02-15T20:55:00.000Z",
"featureFile": "docs/features/unimplemented/findings/attested-reduction-scoring-in-findings-ledger.md",
"notes": [
"[2026-02-11T18:27:45.4864440Z] checking: Ownership claim by Codex (QA agent); started run-001 Tier 0/1/2 verification for attested-reduction-scoring-in-findings-ledger.",
"[2026-02-11T18:33:28.6266557Z] failed: Initial Tier 1 test commands failed with MSBuild/SourceLink OutOfMemoryException while build commands passed.",
"[2026-02-11T18:33:28.6266557Z] triaged: Classified test-command failure as env_issue for initial run path and classified feature parity as missing_code after runtime source/wiring review.",
"[2026-02-11T18:33:28.6266557Z] confirmed: No-build retest passed, but claim-parity review confirmed runtime attested-reduction gaps (null evidence source and identifier-path limitations).",
"[2026-02-11T18:33:28.6266557Z] not_implemented: Moved feature doc to docs/features/unimplemented/findings/attested-reduction-scoring-in-findings-ledger.md after run-001 Tier 0/1/2 verification.",
"[2026-02-15T20:55:00.000Z] run-002 reinvestigation: CONFIRMED not_implemented. FindingScoringService is architecturally COMPLETE with 7 deep unit tests (reduction profile, hard-fail, short-circuit, anchor DTO, cache key differentiation). AnchoredFindingEvidenceProvider is fully coded. However, runtime DI wires NullEvidenceRepository (returns null) and NullAttestationVerifier (returns IsValid=false), making end-to-end path non-functional. Additionally, TryParseGuid cannot extract GUIDs from CVE@PURL format finding IDs. All 141 tests pass. No reclassification warranted."
]
},
"cvss-vex-sorting": {
"status": "not_implemented",
"tier": 2,
"retryCount": 1,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": false,
"skipReason": null,
"lastRunId": "run-002",
"lastUpdatedUtc": "2026-02-15T20:55:00.000Z",
"featureFile": "docs/features/unimplemented/findings/cvss-vex-sorting.md",
"notes": [
"[2026-02-11T18:34:10.0542945Z] checking: Ownership claim by Codex (QA agent); started run-001 Tier 0/1/2 verification for cvss-vex-sorting.",
"[2026-02-11T18:36:47.6675329Z] failed: Tier 1 code-parity review found missing CVSS/VEX sort control plumbing in summary service and endpoints despite green build/test/probe runs.",
"[2026-02-11T18:36:47.6675329Z] triaged: Classified as missing_code (multi-dimension sort semantics are not implemented in user-surface API contract).",
"[2026-02-11T18:36:47.6675329Z] confirmed: Confirmed via source review of FindingSummaryService/Endpoints and run-001 API probe evidence.",
"[2026-02-11T18:36:47.6675329Z] not_implemented: Moved feature doc to docs/features/unimplemented/findings/cvss-vex-sorting.md after run-001 Tier 0/1/2 verification.",
"[2026-02-15T20:55:00.000Z] run-002 reinvestigation: CONFIRMED not_implemented. FindingSummaryBuilder correctly builds summaries with CvssScore, Severity, VerdictStatus fields (11 deep tests). However, FindingSummaryFilter has NO SortBy/SortDirection/OrderBy fields - multi-dimension sorting not exposed in API contract. FindingSummaryService.GetSummariesAsync does not accept or apply sort ordering. InMemoryFindingRepository returns empty data at runtime. The sorting feature is genuinely missing at the contract and service levels. All 141 tests pass. No reclassification warranted."
]
},
"findings-ledger-with-append-only-events": {
"status": "done",
"tier": 2,
"retryCount": 0,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": true,
"skipReason": null,
"lastRunId": "run-001",
"lastUpdatedUtc": "2026-02-11T19:19:02.2567790Z",
"featureFile": "docs/features/checked/findings/findings-ledger-with-append-only-events.md",
"notes": [
"[2026-02-11T19:13:40.8994922Z] checking: Ownership claim by Codex (QA agent); started run-001 Tier 0/1/2 verification for findings-ledger-with-append-only-events in findings module.",
"[2026-02-11T19:19:02.2567790Z] done: run-001 passed Tier 0/1/2 (append/replay/contract behavior verified); feature moved to docs/features/checked/findings/findings-ledger-with-append-only-events.md."
]
},
"ledger-projections": {
"status": "not_implemented",
"tier": 2,
"retryCount": 1,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": false,
"skipReason": null,
"lastRunId": "run-002",
"lastUpdatedUtc": "2026-02-15T20:55:00.000Z",
"featureFile": "docs/features/unimplemented/findings/ledger-projections.md",
"notes": [
"[2026-02-11T19:19:48.7155457Z] checking: Ownership claim by Codex (QA agent); started run-001 Tier 0/1/2 verification for ledger-projections in findings module.",
"[2026-02-11T19:26:34.2211761Z] failed: Tier 2 parity review identified missing runtime out-of-order projection handling despite green build/tests.",
"[2026-02-11T19:26:34.2211761Z] triaged: Classified as missing_code; projection pipeline applies incoming batch order directly without sequence reordering before reduce.",
"[2026-02-11T19:26:34.2211761Z] confirmed: Confirmed via source review of LedgerProjectionWorker/LedgerProjectionReducer and run-001 integration ordering evidence.",
"[2026-02-11T19:26:34.2211761Z] not_implemented: Moved feature doc to docs/features/unimplemented/findings/ledger-projections.md after run-001 Tier 0/1/2 verification.",
"[2026-02-15T20:55:00.000Z] run-002 reinvestigation: CONFIRMED not_implemented but noted as MOST COMPLETE of the 4 investigated features (~80% functional). LedgerProjectionReducer is fully implemented with 3 deep tests (status/severity/labels/hash determinism). LedgerProjectionWorker correctly implements batch processing loop with checkpoint, telemetry, error handling. Only gap: out-of-order event handling - worker processes events in batch order (foreach at line 86) without sequence reordering before reduce. If the out-of-order claim were removed from feature spec, this would pass. All 141 tests pass. No reclassification warranted per current feature claims."
]
},
"ledger-replay-determinism": {
"status": "done",
"tier": 2,
"retryCount": 0,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": true,
"skipReason": null,
"lastRunId": "run-002",
"lastUpdatedUtc": "2026-02-11T20:33:51.8742622Z",
"featureFile": "docs/features/checked/findings/ledger-replay-determinism.md",
"notes": [
"[2026-02-11T20:28:27.4155517Z] checking: Ownership claim by Codex (QA agent); started run-002 Tier 0/1/2 verification for ledger-replay-determinism after global problems-first preflight clear.",
"[2026-02-11T20:33:51.8742622Z] done: run-002 passed Tier 0/1/2 including replay-harness CLI pass/fail behavior checks; moved dossier to docs/features/checked/findings/ledger-replay-determinism.md."
]
},
"merkle-anchoring-for-audit-integrity": {
"status": "done",
"tier": 2,
"retryCount": 0,
"sourceVerified": true,
"buildVerified": true,
"e2eVerified": true,
"skipReason": null,
"lastRunId": "run-001",
"lastUpdatedUtc": "2026-02-11T20:50:08.318Z",
"featureFile": "docs/features/checked/findings/merkle-anchoring-for-audit-integrity.md",
"notes": [
"[2026-02-11T20:50:08.318Z] checking: Ownership claim by Codex (QA agent); adopted existing run-001 artifacts and validated Tier 0/1/2 evidence to close stale queued state.",
"[2026-02-11T20:50:08.318Z] done: run-001 passed Tier 0/1/2 with merkle anchor behavior evidence; dossier remains in docs/features/checked/findings/merkle-anchoring-for-audit-integrity.md."
]
}
},
"summary": {
"done": 3,
"not_implemented": 4,
"blocked": 0,
"failed": 0,
"skipped": 0,
"queued": 0,
"checking": 0,
"triaged": 0,
"confirmed": 0,
"fixing": 0,
"retesting": 0,
"passed": 0
}
}