chore(modules): bump MODULE_API_VERSION to 1.4.0 — the sidecar rule
Phase 5 decision 4 (MODULE_SYSTEM.md §2.11.1): a module does not open a connection to a game server from the website process. It talks to a sidecar, which owns the durable copy of the game's state. No member was added, removed or changed — the surface is identical to 1.3.0. Minor rather than major because module-uo's `coreApi: "^1.3.0"` still resolves and module-uo already complies, but a module written against 1.3.0 could satisfy every member and still be built the wrong way round, which is what this number now says. The rule itself is MODULE_API.md §2.7 (docs, separate PR) and is the one prohibition there with no CI behind it: an outbound socket is not statically detectable the way an internal require is (§5.1). 742 server + 187 client tests pass; routes.manifest.json and swagger-output.json regenerate byte-identical. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -9,6 +9,15 @@
|
||||
// Deliberately separate from PROTOCOL_VERSION (which versions the shard wire and
|
||||
// has nothing to say about a website module) and from any module's own version.
|
||||
|
||||
// 1.4.0 — no member changed. §2.7 gained one prohibition: a module does not open
|
||||
// a connection to a game server from the website process; it talks to a sidecar,
|
||||
// which owns the durable copy of the game's state. Minor rather than major
|
||||
// because the SURFACE is identical to 1.3.0 — module-uo's `coreApi: "^1.3.0"`
|
||||
// still resolves, and it already complies — but a module written against 1.3.0
|
||||
// could satisfy every member and still be built the wrong way round, which is
|
||||
// what this number now says. The one §2.7 rule with no CI behind it: an outbound
|
||||
// socket is not statically detectable the way an internal require is.
|
||||
//
|
||||
// 1.3.0 — three CLIENT additions from Phase 3 slice 3: a nav item may carry an
|
||||
// `icon`, core declares a `player.invite.accepted` slot, and `window.__rg.api`
|
||||
// gained `BASE` (which §3.5 always specified and shared.js never published).
|
||||
@@ -26,6 +35,6 @@
|
||||
// an admin action a module performs belongs in core's one audit log, the
|
||||
// extension slot needs the user its prefix names, and §2.7 forbids a module
|
||||
// reading core's `APP_BASE_URL` for itself. Additions only, so minor.
|
||||
const MODULE_API_VERSION = '1.3.0'
|
||||
const MODULE_API_VERSION = '1.4.0'
|
||||
|
||||
module.exports = { MODULE_API_VERSION }
|
||||
|
||||
Reference in New Issue
Block a user