v0.7.0
·
28 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
[0.7.0] - 2026-08-31
Publication is gated on exact-source CI and the tag-triggered release workflow.
Provider activation, native signing/notarization, and customer acceptance
remain separate evidence gates.
Breaking changes and migration
- Positional secret values are rejected. Replace
phantom add KEY VALUEwith
phantom add KEYfor a hidden trusted-terminal prompt, or pipe one value to
phantom add KEY --stdinfrom a trusted producer. - Plaintext backup export is removed. Use
phantom export --output FILEand a
hidden passphrase prompt, or--passphrase-file PRIVATE_FILEfor bounded
automation; use the same input mode withphantom import. - The former
--passphrasecommand-line option is rejected because process
arguments are observable. Move automation to a private, non-symlink regular
file with mode0600or stricter on Unix. - Noninteractive reveal through
--yesis rejected. Runphantom reveal KEY
from a trusted interactive terminal; Phantom copies to the clipboard and
refuses plaintext stdout fallback. phantom initno longer leaves plaintext dotenv backup files. Create a
separately protected recovery copy before upgrading if your operating
procedure depended on the former backup behavior.
Added
- Trusted-terminal
phantom grant add,list, andstatusworkflows for
provider credentials, with implemented issuance paths for GitHub App,
Vercel Integration, Sentry Integration, Supabase OAuth, and Stripe App OAuth. - Direct-to-vault issuance root storage and value-free provider-grant lifecycle
output. The current grant specification is distinct
from inactive execution-kernel authority grants. - Value-blind workspace planning and bearerless request handling, with a
separate trusted-terminal Unix apply transaction. - Fail-closed authority, Locus-contract, broker, runtime, session, and evidence
foundations for future governed engineering execution. - Canonical architecture, platform-support, release-readiness, audit-index,
security-policy, and repository-contribution documentation. - Bounded web request parsing and an atomic Stripe billing-event transaction
with retryable claims, historical subscription bindings, and monotonic
event ordering. - Six-target release packaging with exact artifact-set verification,
archive-specific SPDX 2.3 SBOMs, and GitHub provenance attestations.
Changed
- The primary npm CLI wrapper now verifies a private cached binary through an
exact version and checksum manifest, uses bounded allowlisted downloads and
archive validation, and preserves the prior verified binary across failed
installation attempts. - Encrypted backup and restore now use hidden or private-file passphrase input,
bounded reads, zeroizing buffers, private staging, durable atomic
no-overwrite publication, and nonzero partial-restore failures. phantom setupremoves only legacy dotenv read grants while preserving all
unrelated allow and deny rules.phantom initno longer creates plaintext
dotenv backups.
Security
- Provider issuance uses a closed production endpoint map, names provider
client secrets by environment variable instead of command-line value, and
keeps issued roots out of CLI output. phantom grant revokefails closed before local mutation while supported
provider remote revocation remains unwired.- Production engineering execution remains unavailable: provider grants do not
become authority grants, broker leases, or execution permits. - Plaintext backup export, positional secret values, argv passphrases, and
noninteractive secret reveal bypasses fail closed before project mutation. - Rust advisories, licenses, duplicate families, and registry sources are
enforced by cargo-deny; the documented no-fix RSA advisory remains limited
to a dev-only test dependency.
What's Changed
- ci: add portable Ashlr verification contract by @masonwyatt23 in #71
- feat(rotation): real vendor credential rotation — provider dispatch-by-identity, Vercel minting, security hardening by @masonwyatt23 in #72
- docs: Phantom Grants — one human consent, perpetual agent-safe credential lifecycle by @masonwyatt23 in #73
- feat(issuance): credential issuance — loopback-PKCE + device-flow consent engines + GitHub App bootstrap by @masonwyatt23 in #74
- feat(issuance): Vercel, Supabase, Sentry, Stripe issuers — complete the sanctioned-issuance suite by @masonwyatt23 in #75
- feat: harden agentic workflows for v0.7.0 by @masonwyatt23 in #76
Full Changelog: v0.6.0...v0.7.0