ADR 0187: a module's own code is bundles in any language, and a tools bundle speaks MCP to the runtime; design 38 gains WP1b
The operator's direction, absent from every record until now: the SDK must not limit who writes a module; tools and services may be written in any language; one module may ship several bundles (tools, a seat's implementation, a daemon); skeleton first, a full implementation when the work requires it. ADR 0175 had the runtime import a bundle, which only JavaScript can be. 0187 makes a tools bundle a process the node's runtime launches and speaks MCP over stdio to — the vocabulary the runtime already speaks outward — so any language with an MCP library can write one today and the mesh's SDK per language is thin; the transport stays in the runtime (0039's refusal, kept). Importing a TypeScript bundle is the shortcut, not the contract. Notes in 0175, 0039 and 0150 say where their mechanism moved; design 38 records WP1 as built and adds WP1b (the launcher and the skeleton SDKs); the glossary's bundle widens.
This commit is contained in:
+1
-1
@@ -108,7 +108,7 @@ term retired here may still appear there, and the mapping above is how to read i
|
||||
memberships issue; its serving mode on loopback is what was called **the console**
|
||||
([ADR 0175](../02-DECISIONS/0175-one-tool-runtime-per-node-serves-every-modules-tools-on-the-host-side.md)).
|
||||
Replaces **"console"** as the module's name; *console* remains the word for the person's end of it.
|
||||
- **bundle** — the artifact a module's tools are built into, interpreted or compiled; never an image.
|
||||
- **bundle** — the artifact a module's own code is built into — its tools, a seat's implementation, a daemon — in any language the mesh has a toolchain for, interpreted or compiled; never an image. One module may declare several ([ADR 0187](../02-DECISIONS/0187-a-modules-own-code-is-bundles-in-any-language-and-a-tools-bundle-speaks-mcp-to-the-runtime.md)).
|
||||
- **kept region** — a marked block in a managed file the mesh writes *into*, where the operator's own
|
||||
lines survive every push and are given back when the module goes
|
||||
([ADR 0174](../02-DECISIONS/0174-a-node-varies-a-module-through-settings-and-kept-regions-never-an-edit.md)).
|
||||
|
||||
Reference in New Issue
Block a user