From 3e7befcb0bb174b24d2be5a3dc6c30c3d1da789c Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 11 Nov 2026 21:31:14 +0100 Subject: [PATCH] Answer A-2: busarchive moves with bussnap into mesh-sdk Claude-Session: https://claude.ai/code/session_01JG73KEq4zoDfM9WtYpcQgZ --- 03-DESIGN/01-to-be/47-milestones/G-20-lead-answers.md | 3 +++ 1 file changed, 3 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 23609e30..a2e8d4b8 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 @@ -18,3 +18,6 @@ names the principle that settles it, and is cited as "design 47 G A-n". contract struct's order; the writer is given the generated contract's constructors for `finding-cleared`, `findings-stated` and `findings-asked` when it is made, never plain maps, so a contract mismatch fails at compile time; `Observed.Findings` and `Pending` hold `FindingBody` values. +- **A-2** (ยง655; principle 7, the rule that code shared between modules lives in mesh-sdk) `nats-tools/internal/busarchive` + moves whole with `bussnap` into mesh-sdk as its own package `go/busarchive`, its tests with it; every other importer + (verify, the nightly dump) imports it from there, and no copy stays in mesh-catalog.