From a16cf80bd62fcce6127451b18290e18141cb0b76 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 11 Nov 2026 20:27:34 +0100 Subject: [PATCH] K19 (caps in list): mesh-broker's list answers the sum of the caps and the limits MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Builds: design 47 G §661, §547 Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ --- seats/mesh-broker/fixtures/verbs.json | 22 ++++++++++++++++++++++ seats/mesh-broker/seat.json | 21 +++++++++++++++++++++ 2 files changed, 43 insertions(+) diff --git a/seats/mesh-broker/fixtures/verbs.json b/seats/mesh-broker/fixtures/verbs.json index fd280c7..5cf98ac 100644 --- a/seats/mesh-broker/fixtures/verbs.json +++ b/seats/mesh-broker/fixtures/verbs.json @@ -114,5 +114,27 @@ } ] } + }, + { + "name": "list answers the sum of the caps and both limits (design 47 G 661)", + "of": "verb:list.answer", + "given": { + "entries": [], + "caps": { + "sum-mib": 512, + "account-limit-mib": 1024, + "server-limit-mib": 2048 + } + } + }, + { + "name": "list answers a sum with no limit, which is unlimited", + "of": "verb:list.answer", + "given": { + "entries": [], + "caps": { + "sum-mib": 64 + } + } } ] diff --git a/seats/mesh-broker/seat.json b/seats/mesh-broker/seat.json index fefb7c4..69c0849 100644 --- a/seats/mesh-broker/seat.json +++ b/seats/mesh-broker/seat.json @@ -32,6 +32,27 @@ "$ref": "#/defs/Held" }, "description": "every entry" + }, + "caps": { + "type": "object", + "description": "the sum of the bus's caps against its limits, in MiB; an absent limit is unlimited (design 47 G 547, 661)", + "properties": { + "sum-mib": { + "type": "integer", + "minimum": 0 + }, + "account-limit-mib": { + "type": "integer", + "minimum": 0 + }, + "server-limit-mib": { + "type": "integer", + "minimum": 0 + } + }, + "required": [ + "sum-mib" + ] } }, "required": [