Skip to content

Define OpenCoven cross-repository protocol ownership and compatibility #12

Description

@BunsDev

Outcome

Define and approve one cross-repository ownership and compatibility policy for Psyche, Familiar Contract, Coven Threads, Coven, Psyche Build, Cave, SDK, runtimes, and memory before downstream implementations create competing identities or lifecycle truth.

Parent roadmap: #9
Priority: P0
Target phase: Phase 1, with design beginning during Phase 0
Accountable owner: @BunsDev

Decisions required

  • Name the canonical repository for every durable identity and transition.
  • Define how Familiar IDs/person bindings enter Psyche without Psyche redefining identity.
  • Define how Threads authorization decisions constrain Psyche execution without either layer duplicating policy.
  • Define how Coven daemon/session/runtime authority is referenced without making daemon process identity the orchestration identity.
  • Define Psyche's task, graph, lane, attempt, delegation, delivery, approval, receipt, artifact, cancellation, and recovery ownership.
  • Define how Psyche Build panes, worktrees, branches, tmux sessions, provider sessions, and UI selections map to—but never replace—protocol IDs.
  • Define Cave's observation/approval role and cross-device continuity.
  • Define SDK, runtime, and memory consumer profiles and mutation limits.
  • Define version negotiation, dependency direction, compatibility canaries, release ordering, rollback, and emergency break-glass rules.
  • Detect and prohibit circular canonical ownership.

Proposed ownership baseline

Domain Canonical owner
Familiar/person binding OpenCoven/familiar-contract
Protected-surface authorization OpenCoven/coven-threads
Orchestration identities and lifecycle OpenCoven/psyche
Daemon/session/persistence authority OpenCoven/coven
Runtime descriptors and conformance OpenCoven/coven-runtimes
Coding cockpit and reference adapter OpenCoven/psyche-build
Human oversight UI OpenCoven/coven-cave
Read-only public clients OpenCoven/sdk, constrained by profile
Read-only memory access OpenCoven/coven-memory

This table is a proposal until the decision record is reviewed and merged.

Deliverables

  • Versioned ownership matrix.
  • Dependency and release-order diagram.
  • Producer/consumer compatibility matrix.
  • ADRs for disputed boundaries and non-goals.
  • Contract-change PR checklist.
  • Cross-repository canary policy with immutable pins.
  • Migration map from current Psyche Build local contracts.
  • One executable reference flow specification.

Acceptance criteria

  • Every durable ID and consequential transition has exactly one canonical owner.
  • No consumer can infer authority from transport, UI state, a tracker, or a provider-local identifier.
  • Cross-repository release ordering is acyclic and rollback is possible.
  • A contract change cannot merge without identifying affected consumers and canary updates.
  • The Psyche Build migration in Prove Psyche Build as the first Psyche-conforming reference client #13 is possible incrementally.
  • Cave/iOS reconnect preserves protocol identity across transport changes.
  • The final ADR is linked from all participating active roadmaps.

Non-goals

  • A monorepo.
  • A shared database.
  • A framework rewrite.
  • Requiring cloud/team infrastructure.
  • Letting one product repository become the canonical owner merely because it has the first implementation.

Evidence

Link the approved decision record, ownership matrix, participating repository issues/PRs, canary policy, and reference-flow contract.

Activity

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

Metadata

Metadata

Assignees

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