Skip to content

v0.3.1

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Oct 14:51
· 596 commits to main since this release
  • The hub: a local agent reaches a cloud product through Fabric, on your consent
    (ADR-0115). Fabric listens
    for agents registered on this Mac on a stable loopback port, FABRIC_HUB_PORT (default 47070), published in
    ~/Library/Application Support/ai.passioncode.fabric/hub.json beside a door token (both 0600, rewritten on
    start, removed on quit). An agent asks once with fabric.access.request; you answer once in a native prompt,
    or from the attention queue when Fabric is in the background; on Allow the agent collects a revocable binding
    credential and calls the product with agent.call, narrowed by your grants and again by the product.
    Settings → Agent access lists products, waiting requests, agents with their grants (Revoke, Revoke all)
    and standing denials (Clear).
  • Fabric Inbox connects once, by its own consent. Connect opens the Fabric Inbox app; its key goes to
    Project Observatory's vault, never into Fabric's database or logs. It needs a Fabric Inbox server with
    account narrowing (fabric-inbox#24). Fabric checks that the runtime reports version 0.9.0 or later, but a
    version check does not prove narrowing: the deployed source and a live acceptance remain open (CO-195,
    fabric-inbox#26). The 0.9.0 app supplies the connect link.
  • Hardening from three verification iterations: a per-request poll secret, so only the agent that asked
    can read its answer and collect its credential; the registry reads regular files only and never blocks the
    app; the connect callback answers the product within its 10 seconds and keeps nothing it could not confirm,
    except a late record whose withdrawal itself failed, which stays and is shown to you as such; hub authority
    restored from an archive comes back revoked, for you to approve again; each estate keeps its own product
    secret slot; the consent, grant and queue wording is in English and Russian; a call whose outcome is unknown
    is never sent again under the same key; a caller that disconnects no longer holds an admission slot; quitting
    can no longer hang on a special file planted at hub.json.
  • First run shows whether Claude Code and Codex are signed in (CO-176), read with each tool's own read-only
    status command on the exact builds Fabric has verified; any other answer is shown as unknown, never as signed
    in, and the step never waits for it.
  • Stopping an agent: asking again to stop a Claude Code or Codex run whose stop was already sent answers with
    that first outcome instead of a refusal that would read as "nothing was sent".
  • Smaller fixes: the onboarding launcher no longer covers the project controls, onboarding scrolls inside
    narrow windows, and restoring saved drafts reads one consistent snapshot.
  • Schema 75 → 78 (migrations 76, 77 and the file with suffix 80; the schema version is the migration count).
    Fabric 0.3.1 does not migrate an existing database itself: it refuses a database below schema 78 and names the
    upgrade procedure (release runbook, upgrading an existing database).
    Once a database is migrated to 78, Fabric 0.3.0 can no longer open it, so take the backup the procedure
    describes first.
  • Not done yet: agent.call takes product tool names the agent contract's capabilityName pattern refuses
    (CO-193); a session Fabric starts cannot reach a product through Fabric (CO-194); no live end-to-end run with
    the Fabric Inbox app yet (CO-195); the knowledge base needs final released facts (CO-196); final-source workspace
    publication and acceptance remain open (CO-197).

Verify

gpg --verify SHA256SUMS.asc SHA256SUMS      # key 63B30DC324BD697487AA31944FAFB8AEC803B6A7
shasum -a 256 -c SHA256SUMS --ignore-missing
gh attestation verify <file> --owner passioncode-ai --signer-repo passioncode-ai/.github

The organization's public key: https://github.com/passioncode-ai/.github/blob/main/release-signing/passioncode-release-signing.asc