Skip to content

Integrate sourceos-syncd as the local-first State Integrity daemon for Workspace Operations #3

Description

@mdheller

Purpose

Make sourceos-syncd the SourceOS State Integrity daemon for local-first object, actor, schema, repair, provenance, and policy-governed replication across Workspace Operations.

Context

This repo was created after the April 29 repository dossier and must be integrated into the estate map via SocioProphet/workspace-inventory#6.

Required operation responsibilities

  • Maintain local operation log durability.
  • Map local_operation_id to remote_operation_id.
  • Manage provisional artifact IDs and final artifact reconciliation.
  • Track sync checkpoints and causal ordering.
  • Produce conflict records for merge/fork/skip decisions.
  • Apply tombstones for deletes.
  • Track device identity and local encryption profile.
  • Detect stale tasks, lease expiry, and replay safety conditions.
  • Emit repair/provenance/evidence records to ledger-facing integrations.

Required operation types

  • sync.operation.enqueue
  • sync.operation.replay
  • sync.operation.reconcile
  • sync.conflict.detect
  • sync.conflict.resolve
  • sync.repair.apply
  • sync.tombstone.apply
  • sync.checkpoint.write

Integration targets

  • SourceOS-Linux/sourceos-spec#87
  • SociOS-Linux/workstation-contracts#28
  • SocioProphet/prophet-core-contracts#1
  • SocioProphet/prophet-platform#376
  • SocioProphet/prophet-core-ledger#1
  • SocioProphet/policy-fabric#46
  • SourceOS-Linux/sourceos-shell
  • SourceOS-Linux/sourceos-devtools#19

Acceptance criteria

  • Sync operations are represented as WorkspaceOperation/OperationTask state.
  • Local replay is idempotent and evidence-producing.
  • Conflict records use DecisionCard semantics for human/agent resolution.
  • Repair actions are auditable and compensatable where possible.
  • No remote/cloud sync bypasses policy gates, artifact admission, or ledger evidence.

Hard rule

Local-first sync must be inspectable, repairable, and policy-aware. It cannot silently mutate workspace state.

Activity

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

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions