From e39faa0f38274c97d8800da3c9225963d220b406 Mon Sep 17 00:00:00 2001 From: jochen Date: Wed, 4 Nov 2026 12:54:26 +0100 Subject: [PATCH] SDK-1: the parts helper reads the registry part's shapes from a registry seat's module MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Interim, for the lead's ruling: ADR 0625 §1 cuts the registry part into each registry seat's own Go module, and §3 lets no mesh-sdk package but catalogue import a contracts module; this helper is logic shared over a seat, a client in §4's sense, which no clause lets the registry milestone build. Kept building meanwhile. Claude-Session: https://claude.ai/code/session_01JG73KJNrH5EgFXMKKYSrig --- go/publish/publish.go | 5 +++-- go/publish/publish_test.go | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/go/publish/publish.go b/go/publish/publish.go index 30eead2..3503fb1 100644 --- a/go/publish/publish.go +++ b/go/publish/publish.go @@ -1,7 +1,8 @@ // Package publish is the runtime's helper for sending a file to a registry seat in parts (novox/hq ADR 0611, design // 51 *Publishing*): `publish` opens a transfer naming every part's digest, the holder answers the parts it lacks, and // only those travel, by `publish-part`, in chunks a bus message carries. A cut transfer goes on from what the holder -// answers when the same transfer is opened again. The seat's messages are mesh-contracts' (parts/registry); the call is +// answers when the same transfer is opened again. The seat's messages are mesh-contracts' +// (the registry part's, read through containerimageregistry, the four registry seats' shapes being one); the call is // the caller's own (a bundle's stdio.Ask, a process's call of a seat verb), so this package holds no transport. package publish @@ -15,7 +16,7 @@ import ( "fmt" "io" - "git.novox.be/novox/mesh-contracts/go/parts/registry" + registry "git.novox.be/novox/mesh-contracts/go/seats/containerimageregistry" ) // MaxChunk is the most bytes of a part one publish-part carries: base64 makes it about 1 000 KiB, under 1 MiB, the diff --git a/go/publish/publish_test.go b/go/publish/publish_test.go index 08bf439..1e33c51 100644 --- a/go/publish/publish_test.go +++ b/go/publish/publish_test.go @@ -11,7 +11,7 @@ import ( "strings" "testing" - "git.novox.be/novox/mesh-contracts/go/parts/registry" + registry "git.novox.be/novox/mesh-contracts/go/seats/containerimageregistry" ) // A file travels to a registry seat in parts (ADR 0611, design 51 *Publishing*; SDK-1): only the parts the holder says