You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Comment] § 1, § 4.1 — Name the operations that move a proposal, and which AAMP binding carries them #113
OpenProposal defines an object and its states, but not the operations that change them, so two implementations can agree on every field and still not interoperate. The draft implies these operations without naming them:
fetch summary and fetch full (§ 2.1)
request a requestable value (§ 3)
counter, accept, decline and withdraw (negotiation_history[].action, § 4.1)
request and release a hold (§ 5.6.2)
commit with an idempotency_key (§ 5.6.1)
assent (§ 4.1)
We are not asking 3.0 to define a wire protocol. We ask for two things:
One sentence naming where the binding lives. For example: "Operations are carried by the AAMP buyer/seller agent protocol (MCP / A2A mapping, see …)." Or, if no binding is settled, say so and name the workstream that will set it.
Without (2), buy-side platforms will bind OpenProposal to whatever agent protocol they already speak. We would bind it to AdCP's get_products / request_proposals / create_media_buy today, and so would others. That is the fragmentation AAMP set out to avoid.
Filed after the 2026-10-22 close of the comment period, so we understand this is post-comment and for the next draft. Submitted by Hypermindz (buy-side agentic media planning platform).
The binding.Our scope comment (#59) proposes a § 1.2 that leaves messages and transport to "[the AAMP wire and lifecycle contract]", a bracket for the working group. Your sentence (2) fills it.
We ask the working group to decide both together: the table names operations, and § 1.2 names where their messages live.
Activity
KonstantinMirin commentedon Oct 25, 2026
Thank you, @dineshbhat. Postindustria (IAB Tech Lab member) supports both asks. Our open change requests fill most columns:
negotiation_history[]actioneach one writes. Our hold-states change request (#66) does the same for holds; both keep holds out ofstatusand history.commitand the seller's onaccept([Change] § 4, § 5.1 — Add § 4.3 Lifecycle: who moves each status #65 rule 3). Our binding-record change request (#63) defines the entry.We ask the working group to decide both together: the table names operations, and § 1.2 names where their messages live.
Open questions:
Analyzed and generated with the help of Claude, fully reviewed by me.