Technical Audit tracks duplicate findings and lifecycle across runs #11

Closed
opened 2026-05-28 18:14:40 +01:00 by bingoss · 1 comment
Owner

What to build

Type: AFK.

Extend Technical Audit so repeated runs collapse or link duplicate findings and track whether issues are new, still present, fixed pending verification, verified fixed, or regressed. This should preserve historical evidence while keeping the dashboard current.

Acceptance criteria

  • Repeated findings for the same issue and affected scope are linked or collapsed without creating noisy duplicate dashboard cards.
  • Findings can move through fixed pending verification and verified fixed states based on subsequent evidence.
  • Regressed issues become visible with safe diagnostics and event history.
  • Tests are written first for duplicate collapse, fixed verification, regression, and event history.

Blocked by

None - can start immediately

## What to build Type: AFK. Extend Technical Audit so repeated runs collapse or link duplicate findings and track whether issues are new, still present, fixed pending verification, verified fixed, or regressed. This should preserve historical evidence while keeping the dashboard current. ## Acceptance criteria - [ ] Repeated findings for the same issue and affected scope are linked or collapsed without creating noisy duplicate dashboard cards. - [ ] Findings can move through fixed pending verification and verified fixed states based on subsequent evidence. - [ ] Regressed issues become visible with safe diagnostics and event history. - [ ] Tests are written first for duplicate collapse, fixed verification, regression, and event history. ## Blocked by None - can start immediately
Author
Owner

Issue #11 completion audit

Requirements checked:

  • Repeated Technical Audit findings for the same issue, affected scope, and URL now update the existing normalized finding instead of creating duplicate active dashboard cards.
  • Subsequent clean evidence for an audited URL marks matching prior active findings verified_fixed with verified_at and event history.
  • Verified-fixed findings that reappear are marked actionable again and emit a technical_finding_regressed event.
  • Lifecycle changes are recorded as append-only events: duplicate collapsed, verified fixed, and regressed.
  • Tests were written first for duplicate collapse, fixed verification, regression, and event history.

Verification on codex-server:

  • python3 -m unittest tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_collapses_duplicate_findings_across_runs tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_verifies_fixed_findings_when_evidence_is_clean tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_marks_verified_fixed_findings_regressed -> OK
  • python3 -m unittest tests.test_site_crawler tests.test_technical_audit_worker -> 41 tests OK
Issue #11 completion audit Requirements checked: - Repeated Technical Audit findings for the same issue, affected scope, and URL now update the existing normalized finding instead of creating duplicate active dashboard cards. - Subsequent clean evidence for an audited URL marks matching prior active findings verified_fixed with verified_at and event history. - Verified-fixed findings that reappear are marked actionable again and emit a technical_finding_regressed event. - Lifecycle changes are recorded as append-only events: duplicate collapsed, verified fixed, and regressed. - Tests were written first for duplicate collapse, fixed verification, regression, and event history. Verification on codex-server: - python3 -m unittest tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_collapses_duplicate_findings_across_runs tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_verifies_fixed_findings_when_evidence_is_clean tests.test_technical_audit_worker.TechnicalAuditWorkerTests.test_technical_audit_worker_marks_verified_fixed_findings_regressed -> OK - python3 -m unittest tests.test_site_crawler tests.test_technical_audit_worker -> 41 tests OK
Commenting is not possible because the repository is archived.
No milestone
No project
No assignees
1 participant
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
bingoss/owned-growth-engine#11
No description provided.