VXP docs · draft 0.1
Changelog
Every notable change to the specification and the repository, by version.
All notable changes to the VXP specification and to this repository. Draft versions are incompatible with each other until 1.0.
0.1.0-rc.4 · 23 October 2026#
Editorial review of the site, the documentation and the specification against the code. No rule changes what an implementation that passed rc.3 does.
Specification#
- I2 and O6 state the scope of “one execution”: each accepted revision executes at most once, and of several operations competing for one resource only the first that passes the precondition takes effect. A later request on the same resource is a new operation.
resource(RFC 8707) goes in the native profile's device authorization and token requests, and is how an authorization server shared with the Poppy adapter tells the two apart.- Approving a revision needs no grant of its own: the sentence about a
vxpprotocol.org/operationgrant type, which no implementation had, is removed. - Relationship over a Poppy conversation: the
relationshipandreply_errormessages, and that accepting a change the company proposes (R8) uses the native profile. - Errors: the codes a native client meets (
customer_not_linked,not_authorized,sign_in_required,invalid_target),404 request_not_foundon/v1/requests/{id}/proof. - Key rotation: what losing a key means, and how a verdict states that it used saved material.
- Conformance by role: an issuer that offers VXP Relationship meets R1 to R17.
- The design draft that VXP Proof comes from is named as unpublished; prior art cites the Internet-Drafts by name.
Repository#
verifier/:key_sourceisissuer_metadata_savedwhen the keys come from saved material, andissuer_metadata_livewhen they are fetched for the check.site/anddocs/: wording, dates and status brought up to date; the Quickstart runs as written; Demos in the menu; adding a demo is described in CONTRIBUTING.md; Conformance says which code its recorded run checked; the site has its icon.
0.1.0-rc.3 · 23 October 2026#
Repository#
agent/: a URL a company gives is accepted only in canonical form, so no server can resolve it differently from the agent; under PACT, the interface that receives the delegation must be on the authorization server's origin. Tests inagent/test/untrusted-ids.test.ts.
0.1.0-rc.2 · 23 October 2026#
Specification#
- Two public components, VXP Proof and VXP Relationship. Operation requirements O1–O7 replace the earlier presentation of a third component; the rules themselves did not change.
- Native-only gateway (§8): a company can implement VXP with the native profile alone.
- Implementation paths (§8): only the well-known locations and the native endpoints are fixed; key sets, log and proof bundle are discovered through the issuer metadata.
- Reading a verdict, key rotation and historical verification (§10).
- WhatsApp no longer named in normative rules: «a channel the company has linked to the customer».
- Native endpoints (§8): read capabilities answer at once with
{operation, effect: "read", result}and create no request;approved_byisuser, orstanding_permissiononly for a revision withuser_approval_required: false(otherwise403 user_approval_required);user_approvalstatements may carrybasis: "standing_permission". - JSON Schemas (§12, informative) for every object of the draft.
Repository#
docs/: documentation in Markdown, built into the site, withllms.txt; a page of failures with the test that covers each one.schemas/0.1/: JSON Schemas (2020-12), published atvxpprotocol.org/schemas/0.1/;schemas/check.tsvalidates real runs, proof packages, vectors and the agent's run against them and requires a set of invalid objects to be rejected; the conformance validator checks every object an implementation returns (S1).conformance/: a validator that acts as an agent against any native-profile implementation and reports every check with its rule; a conformance matrix and a checklist of what only a person can check.agent/: client library, CLI, MCP server and example personal agent; optional Poppy draft 0.2 and PACT 1.0 adapters in the library, which the native profile does not import.reference/: optional adapters (VXP_ADAPTERS=none), persistent and rotating proof keys (VXP_KEYS_DIR), proof material under/vxp/(/sovras/kept as an alias), the simulated company channel printed to the console (VXP_SHOW_CHANNEL=1).reference/, company side for a personal agent: public reads in the native profile (effect: "read",access: "public" | "delegated"invxp.json), a cap the person approves beforehand (user_approval_required: falseandapproved_by: "standing_permission"within it), the hotel's late-arrival question started by the company every minute, and a relationship key that persists withVXP_KEYS_DIR.- Network tests no longer block the event loop while the Python verifier runs (an idle keep-alive socket closed meanwhile caused
ECONNRESET). site/: the home page starts from the work inside companies; Proof and Relationship have their own interactive views; Docs and Demos in every page; the native walkthrough states that the code linked the account and granted authority, while the terms wereagent_asserted.- Vectors use
*.examplehosts. Continuous integration runs the suites on every push.
0.1.0-rc.1 · 22 October 2026#
First complete draft: specification, reference implementation with the native profile and the Poppy draft 0.2 and PACT 1.0 adapters, three verifiers (two in Python, one in JavaScript for the browser), test vectors, and the site.