Concession guide — ASTRA 2.8.12

Runnable companion to Prewritten Protocols. Requires Java/Maven compatible with ASTRA 2.8.12 and the matching Maven artifacts.

mvn clean compile astra:run
mvn test

Add -o to use only cached artifacts. The parent selects the ASTRA compiler, plugin, interpreter and APIs at 2.8.12; protocols and unit tests are pinned too.

guide.Main creates two price negotiators and three allocators, then prints:

price-1: agreement(price(50))
allocation-1: agreement(shares(30,30,30))
tie-1: agreement(shares(15,15,60))
majority-1: conflict(no_concession())

The coordinator prints results with the normal agent-name prefix. Participant end notifications are best effort; the demo exits after coordinator completion. The 200 ms startup warm-up is for this local example only, not a distributed readiness handshake.

The named-package strategies and 25 tests adapt astra-protocols’ MCPBuyer, MCPSeller, MUCPAllocator, MCPTests and MUCPTests. Class references include guide.; the noise fixture sends to guide.MUCPTests, the unit runner’s coordinator name. Test modes are strategy fixtures, not built-in protocol options. Tests cover agreement, stalemate, regression, round limits, missing offers/assessments, invalid configuration, unanimous versus majority selection, deterministic ties, 2/3/4 members, stale/duplicate messages and multilateral state cleanup.

Do not run duplicate monitors or reuse session IDs on a coordinator. Use trusted agents and finite, stable utilities; see the protocol page for semantics and limits.