Changelog

Changelog

Two version numbers matter, and they move independently. Draft revisions (-00, -01, ...) version the document. contract_version, carried in AMMP's documents, versions the wire.

Where versions stand

Internet-Draft

draft-rapp-ammp-00, posted 22 October 2026. An individual Internet-Draft: no working group has adopted it.

Wire version

contract_version is "2". A consumer accepts the wire version it supports and refuses any other value, failing closed.

Implementations

Released together as pinned sets in amap-release. As of 27 October 2026, the most recent is amap-2026-10-10; the releases list is always current.

Internet-Draft revisions

Open questions for -01 are tracked in the draft-rapp-ammp-01 milestone.

Before the IETF

The contract was versioned on its own scale, 1.0.0 to 3.1.0, while implementations were built against it. That scale numbered the document, not the wire: the wire value has been "2" since contract 2.0.0, and the draft keeps it, so nothing on the wire was renumbered when the contract reached 3.x. That history, newest first, is the "Historical Background" appendix of the draft. In short:

An entry that turned out to be wrong is left standing with a correction attached, rather than rewritten.

How changes are versioned

The wire major, contract_version, changes only when a counterpart speaking the old major could no longer accept whole documents safely. Changes short of that leave it alone. Contract 3.0.0 tightened obligations and moved fixtures, yet the wire stayed "2", because a bump would have made every major-2 counterpart refuse all traffic. A consumer that reads a version it doesn't support fails closed, as a logged version refusal, never a silent mis-parse. Draft revisions are numbered separately. Every capability change lands as specification, schemas and fixtures together. See Get involved.