From 230dc73bc1646f908ee82c6b127d8f519ac1bcaa Mon Sep 17 00:00:00 2001 From: jochens Date: Fri, 13 Nov 2026 01:29:19 +0100 Subject: [PATCH] Design 42 zfs-owns-zfs: A-41, the keeper publishes on its events stream's subject --- .../01-to-be/42-milestones/zfs-owns-zfs-lead-answers.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/03-DESIGN/01-to-be/42-milestones/zfs-owns-zfs-lead-answers.md b/03-DESIGN/01-to-be/42-milestones/zfs-owns-zfs-lead-answers.md index d5bf7984..1abd0958 100644 --- a/03-DESIGN/01-to-be/42-milestones/zfs-owns-zfs-lead-answers.md +++ b/03-DESIGN/01-to-be/42-milestones/zfs-owns-zfs-lead-answers.md @@ -149,3 +149,9 @@ settles it (`00-META/principles.md`), cited as "design 42 zfs-owns-zfs A-n". The - **A-40** (A-36, met in develop; principle 3) A ledger instance not yet written is the tool runner's answer to `mesh/ledger.get` with a state `null` and sequence 0 (the tool runner's `internal/ledger/read.go` `Get`, in mesh-tools), never an error: the module reads it so, and recognises no error by its text. +- **A-41** (ยง25, A-37, A-38, review round 1; principles 1 and 7; shared code belongs in mesh-sdk) The events stream a + module asks for by template `events` captures `mesh.bus...>` (the bus module's keeper, `PlanOf`), and + that is what the grants of A-38 give. The keeper publishes each event there, as a JetStream publish the bus + acknowledges, on `mesh.bus...`, the subject named by a new mesh-sdk helper + `process.Account.BusSubject(local, event)` beside `EventSubject` and `StreamSubject`; never `process.Conn.Emit`, + which publishes on the module's old event subjects.