Skip to content

Coven v0.4.9

Choose a tag to compare

@github-actions github-actions released this 12 Oct 00:10
· 23 commits to main since this release
v0.4.9
171876e

Coven v0.4.9

Coven implements every Automations v1 command: all 19 in the command matrix,
including run-now, cancellation, retry and recovery. The daemon also keeps one
long-lived main session per scope, and the CLI gains coven familiar-ledger
and coven eval-loop.

npm install -g @opencoven/cli@0.4.9
coven doctor

Automations

  • Five commands that v0.4.8 refused, or handled only through a compatibility
    path, are implemented. All five are owner-only.
    • occurrence.runNow.v1 starts one occurrence now. Replaying a request
      never launches a second run. The legacy coven.automations.run is still
      advertised.
    • occurrence.cancel.v1 and attempt.cancel.v1 cancel an occurrence or
      one attempt. A cancel that arrives while a launch is in progress gets the
      retryable CANCEL_PENDING.
    • attempt.retry.v1 retries a held run.
    • occurrence.recover.v1 lets the owner settle an occurrence whose outcome
      is unknown, as failed_deterministic or retry_with_new_attempt.
  • Behaviour change: an ordinary run that fails before its original deadline,
    with fewer than 10 attempts, is now held open for retry instead of settling.
    Under overlap: forbid a held run keeps blocking the next occurrence until
    it is retried, cancelled or reaches its deadline.
  • Cancellation is now stored per attempt instead of per run. Before rolling
    back, let held runs and pending retries drain; a blind rollback can strand
    held runs.
  • legacy.import.v1 stamps drafts and their events with the adoption's
    adoptedAt. A source id repeated within one import is reported as
    duplicate source id; already exists now means only that the store
    already holds it.
  • A routine's authority block is validated, then refused with "authority is
    not supported until this daemon advertises Runtime Authority".

Daemon and API

  • GET /api/v1/main-session and POST /api/v1/main-session/turn, /reset
    and /rollover serve one daemon-owned session per scope (default
    instance:main) on claude or codex. A stale resume rolls over once by
    itself and records a main_session.rollover event. Notices queued for a
    scope arrive with its next turn: up to 20 pending, 16 KiB each. Only the
    daemon posts notices in this version.
  • A failed stream-json session records the harness error, or its exit code
    with up to 4 KiB of redacted stderr, instead of error: null.
  • Breaking for AgentFS clients: POST /api/v1/afs/sessions/:id/join reads
    issueRef instead of beadId, and binding views return issueRef.
    Materialized commits carry a Coven-Issue trailer instead of Coven-Bead.
    An existing delta is upgraded on its next metadata write.
  • Relay: a disconnect notice arrives even when the peer's inbox is full, the
    initiating peer gets a Close acknowledgement, and RUST_LOG=trace no
    longer enables dependency events that carried credentials and frame data.
    Relay endpoint authentication and encryption are still unimplemented.
  • Mobile: a trusted-device registry can record owner-approved introductions
    under an explicit one-approval policy, and refuses them without one. Older
    binaries refuse a registry file that contains introduction receipts.

CLI

  • coven familiar-ledger register|adopt|retire|revoke|restore|history
    records familiar identities and revisions. revoke requires --reason,
    and every subcommand takes --json. adopt and restore create a local
    familiar-binding key under COVEN_HOME/authority-keys/ (mode 0600).
    Nothing else reads the ledger yet, and coven familiar <id> is still the
    roster command.
  • coven eval-loop init|noise|begin|cases|decide|ack|status runs measured
    improvement iterations on a familiar workspace track (synthesis, prompt
    or memory). It exits 0 on success, 3 on a refusal and 1 on an error.

Libraries

  • coven-agents adds a ProposalReview seam that reviews tool calls before
    dispatch and fails closed. Code that matches RunEvent exhaustively needs
    an arm for RunEvent::ProposalReviewed.

Release tooling

  • The GitHub Release step no longer crashes before its npm wait starts, the
    failure that sent v0.4.8 to manual recovery. This release is the first to
    exercise that wait.

Coven remains an early MVP. The Automations manifests remain proposed with
productionReady:false. Runtime Authority groundwork landed (role-separated
keys, owner grants, signed terminal observations, envelope-bound launches),
but production still constructs no Runtime Authority and ships no trusted
keys. The consumer canaries for the five new commands (#1054), conformance
(#858) and Runtime Authority (#857, OpenCoven/coven-runtimes#48) remain open.

Exact source: 171876e37caa5d393d33043acc9c4dcbae4badeb.
-----BEGIN SSH SIGNATURE-----
U1NIU0lHAAAAAQAAADMAAAALc3NoLWVkMjU1MTkAAAAguzqcpSw/45XOhNc1hxn3wh4+l3
iP5p67B5VL9yjNXwMAAAADZ2l0AAAAAAAAAAZzaGE1MTIAAABTAAAAC3NzaC1lZDI1NTE5
AAAAQDjTx6fUmLfrvSNmiQR09REIsR0oGgmEIP6AI8VzMyKiKmaukb5LPEbzTdEe2a9Pdx
ricCc3k2+WHO/7L6JaEAU=
-----END SSH SIGNATURE-----