From d71bd5d0fa8373d6f83b5a8dc7dd2b43872b1b39 Mon Sep 17 00:00:00 2001 From: jochen Date: Thu, 12 Nov 2026 05:33:08 +0100 Subject: [PATCH] Answer A-165: seat servers apply the class defaults Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h --- 03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md b/03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md index 43da4f84..6492891c 100644 --- a/03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md +++ b/03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md @@ -615,3 +615,7 @@ names the principle that settles it, and is cited as "design 47 G A-n". - **A-164** (§468, §76, §495, A-115; principles 4 and 7) The runner's process writes each durable consumer's oldest unacknowledged age into a state of the runner's own when it changes; the bundle's `runner_health` reads that state, its own module's, and asks no seat verb of itself; tools stay the bundle's (A-115). +- **A-165** (§610, A-156; principles 3 and 7) The class defaults of §610 are applied where a seat's verb is answered: + mesh-sdk's seat server (`conn.AnswerSeat`) and the tool runner's `serveSeats` read `seatdef.EffectiveCallers` and + refuse a caller outside them, the unproven one included, before the holder runs; a holder keeps no caller check of + its own.