[Feature] Add file-integrity scan and reconciliation UI #40

Closed
opened 2026-08-02 04:11:04 +02:00 by zemion · 2 comments
Owner

Context

Files has bounded integrity scan, finding, recheck, cleanup, and batch-run APIs, but no operator UI. GovOPlaN #26 identified this as a missing surface; it complements the database/blob reconciliation work in #36 and lifecycle work in #38.

Acceptance criteria

  • List scans and findings with stable status, provenance, and affected object references.
  • Allow authorized operators to start/resume bounded scans, recheck findings, and request safe cleanup.
  • Explain blockers from shared references, retention, legal hold, or unavailable object storage.
  • Keep cleanup idempotent and require confirmation for destructive effects.
  • Cover interrupted scans, concurrent reconciliation, unavailable providers, and stale revisions.
  • Update operations documentation and endpoint-surface declarations.
## Context Files has bounded integrity scan, finding, recheck, cleanup, and batch-run APIs, but no operator UI. GovOPlaN #26 identified this as a missing surface; it complements the database/blob reconciliation work in #36 and lifecycle work in #38. ## Acceptance criteria - List scans and findings with stable status, provenance, and affected object references. - Allow authorized operators to start/resume bounded scans, recheck findings, and request safe cleanup. - Explain blockers from shared references, retention, legal hold, or unavailable object storage. - Keep cleanup idempotent and require confirmation for destructive effects. - Cover interrupted scans, concurrent reconciliation, unavailable providers, and stale revisions. - Update operations documentation and endpoint-surface declarations.
zemion added the module/files
priority
p1
type
feature
status
ready
area/apiarea/webui
labels 2026-08-02 04:11:04 +02:00
Author
Owner

Closure audit (2026-08-03)

The bounded resumable scan, finding, recheck, dry-run cleanup, recovery-ledger integration, API, and operations documentation are implemented and tested. This issue is not yet closable because Files exposes no operator panel for those APIs. The action contract also needs an explicit stale-action token so a finding cannot be acted on from an obsolete screen state.

Shortest closure path:

  1. Add a finding/scan revision or conditional-action token and validate it on recheck/cleanup.
  2. Contribute a Files integrity administration section with scan progress, findings, blocker explanations, resume/recheck, dry-run preview, and separately confirmed cleanup.
  3. Cover interruption, concurrent actions, unavailable storage, stale UI state, docs, and declarations.
## Closure audit (2026-08-03) The bounded resumable scan, finding, recheck, dry-run cleanup, recovery-ledger integration, API, and operations documentation are implemented and tested. This issue is **not yet closable** because Files exposes no operator panel for those APIs. The action contract also needs an explicit stale-action token so a finding cannot be acted on from an obsolete screen state. Shortest closure path: 1. Add a finding/scan revision or conditional-action token and validate it on recheck/cleanup. 2. Contribute a Files integrity administration section with scan progress, findings, blocker explanations, resume/recheck, dry-run preview, and separately confirmed cleanup. 3. Cover interruption, concurrent actions, unavailable storage, stale UI state, docs, and declarations.
Author
Owner

Codex State: done

Summary

  • Added stale-action preconditions and an operator-facing integrity operations surface.
  • PostgreSQL visibility queries were corrected and the interface inventory now marks integrity operations UI-reachable.

Changed Files

  • commit 7e6be4b (plus prerequisite 04882f1)

Verification

  • 15 focused Python tests passed; Files WebUI interface test passed; all-module startup smoke passed.
## Codex State: done ### Summary - Added stale-action preconditions and an operator-facing integrity operations surface. - PostgreSQL visibility queries were corrected and the interface inventory now marks integrity operations UI-reachable. ### Changed Files - `commit 7e6be4b (plus prerequisite 04882f1)` ### Verification - `15 focused Python tests passed; Files WebUI interface test passed; all-module startup smoke passed.`
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-files#40