Files: support two-way remote sync with connector write policy #24

Closed
opened 2026-07-11 03:46:41 +02:00 by zemion · 1 comment
Owner

Context

File connectors currently need a clear policy for whether GovOPlaN only reads from remote storage or also writes changes back.

Requested behavior

Support two-way sync for file connectors, with an explicit connector setting to allow or disallow writing to the remote.

Acceptance criteria

  • Connector settings include a write-back / remote-write policy.
  • Read-only connectors never write, delete, move, or overwrite remote files.
  • Write-enabled connectors can sync supported local changes back to the remote.
  • The design covers conflict handling, deletion propagation, rename/move behavior, remote permissions, and failure recovery.
  • UI clearly displays whether a connector is read-only or two-way.
  • Tests cover read-only enforcement and at least one successful write-back path.

Open decisions

  • Which connector types support write-back first?
  • Are deletes propagated by default, staged for approval, or disabled initially?
## Context File connectors currently need a clear policy for whether GovOPlaN only reads from remote storage or also writes changes back. ## Requested behavior Support two-way sync for file connectors, with an explicit connector setting to allow or disallow writing to the remote. ## Acceptance criteria - Connector settings include a write-back / remote-write policy. - Read-only connectors never write, delete, move, or overwrite remote files. - Write-enabled connectors can sync supported local changes back to the remote. - The design covers conflict handling, deletion propagation, rename/move behavior, remote permissions, and failure recovery. - UI clearly displays whether a connector is read-only or two-way. - Tests cover read-only enforcement and at least one successful write-back path. ## Open decisions - Which connector types support write-back first? - Are deletes propagated by default, staged for approval, or disabled initially?
Author
Owner

Implemented and verified in govoplan-files@6c3cf1c.

  • Connector spaces default to read-only and reject all remote mutations.
  • Explicit two-way mode is available only for S3 profiles advertising write capability.
  • Managed-file write-back uses conditional create/overwrite, revision checks, distributed path fencing, durable Core recovery evidence, and post-effect verification.
  • Rename, move, delete, and ACL propagation remain intentionally disabled and are documented.
  • The UI identifies read-only versus two-way mode.

Verification: Files Ruff and the full 154-test suite passed, including read-only enforcement, successful write-back, conflicts, retry/recovery, and outcome-unknown behavior. The complete workspace focused gate, module-permutation builds, bundle budgets, and Playwright conformance suite also passed.

Implemented and verified in `govoplan-files@6c3cf1c`. - Connector spaces default to read-only and reject all remote mutations. - Explicit two-way mode is available only for S3 profiles advertising write capability. - Managed-file write-back uses conditional create/overwrite, revision checks, distributed path fencing, durable Core recovery evidence, and post-effect verification. - Rename, move, delete, and ACL propagation remain intentionally disabled and are documented. - The UI identifies read-only versus two-way mode. Verification: Files Ruff and the full 154-test suite passed, including read-only enforcement, successful write-back, conflicts, retry/recovery, and outcome-unknown behavior. The complete workspace focused gate, module-permutation builds, bundle budgets, and Playwright conformance suite also passed.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-files#24