Skip to content

Harden organizer transfers, undo, and compression publication - #2

Draft
JayacharanR wants to merge 5 commits into
mainfrom
codex/audit-file-safety
Draft

JayacharanR wants to merge 5 commits into
mainfrom
codex/audit-file-safety

Conversation

@JayacharanR

@JayacharanR JayacharanR commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Organizer moves can overwrite colliding targets, undo can remove newer edits, and compression can replace its own input. This first audit-repair phase adds verified private staging, exclusive publication, intent journals, and conflict-aware undo. Organization retains filename variants and names colliding outputs uniquely. Compression refuses existing outputs and overlapping roots. The scan and organize forms also preserve threshold zero. Legacy callers close their journals on return and failure; API Trash requests use independent sessions.

Validation: 65 Python tests pass in the working tree, including the existing API/workflow suite; all 49 added regressions pass from a clean export of the committed tree. Ruff and the frontend production build pass. GitHub Actions passed lint, Rust/Python tests, and the Docker build/smoke test on final head fb915ad: https://github.com/JayacharanR/Clean-Backup/actions/runs/43293216322. Regressions include separate-process collisions, failed/corrupt copies, changed sources, journal failures, interrupted undo, abrupt process exits at three transfer boundaries, and legacy session lifetimes.

Scope and limits: publication requires hard-link support and fails closed otherwise. Old path-only journals require manual review, and abrupt exits may leave private staging files. Classification, CLI duplicate handling, and Trash still need migration to the executor. Deletion plans, API access boundaries, cloud object identity, compression fidelity, and the remaining audit findings are open. See docs/AUDIT_REPAIRS.md for finding-level status. This draft is the first repair phase, not a release-readiness claim.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant