4ad8b2bb0eMerge pull request 'feat(modules): PublicLayout takes a shell, MODULE_API_VERSION 1.5.0' (#148) from fix/public-layout-shell into edgeColby Whitlock2026-08-12 19:26:42 +00:00
1433b60d6cfeat(modules): PublicLayout takes a shell, MODULE_API_VERSION 1.5.0wtclaude2026-08-12 14:23:26 -05:00
1b692bf624Merge pull request 'chore(modules): bump MODULE_API_VERSION to 1.4.0 — the sidecar rule' (#147) from chore/module-api-1.4.0 into edgeColby Whitlock2026-08-12 14:41:26 +00:00
5410e7e0b3chore(modules): bump MODULE_API_VERSION to 1.4.0 — the sidecar rulewtclaude2026-08-12 09:37:47 -05:00
c3120ea3daMerge pull request 'fix(modules): stop a module before purging its tables' (#146) from fix/module-uninstall-stop-before-purge into edgeColby Whitlock2026-08-12 14:18:47 +00:00
a4da1cc438fix(modules): stop a module before purging its tableswtclaude2026-08-12 09:05:21 -05:00
12df79430fMerge pull request 'test(login): stop the backoff-guard test racing its own one-second lock' (#145) from fix/login-backoff-flake into edgeColby Whitlock2026-08-12 13:39:50 +00:00
ec2b530be7test(login): stop the backoff-guard test racing its own one-second lockwtclaude2026-08-12 08:04:56 -05:00
7a236cad8bMerge pull request 'refactor(modules)!: move the UO server half out to module-uo (phase 3, slice 1)' (#137) from feature/module-extract-server into edgeColby Whitlock2026-08-11 21:06:23 +00:00
f5e6025dcctest: re-point core's suite at what core still ownswtclaude2026-08-11 12:08:26 -05:00
39d731d87arefactor(modules)!: move the UO server half out to module-uowtclaude2026-08-11 12:08:03 -05:00
f50541f374feat(modules): ctx additions and the post-hook registry (API 1.1.0)wtclaude2026-08-11 12:07:45 -05:00
b649345484Merge pull request 'feat(modules): mount the modules directory as a volume (phase 2, PR 9)' (#136) from feature/module-compose-volume into edgeColby Whitlock2026-08-11 05:58:18 +00:00
a103e0ce10feat(modules): mount the modules directory as a volume (phase 2, PR 9)wtclaude2026-08-11 00:48:48 -05:00
0a3f1eb9faMerge pull request 'feat(modules): interleave module nav items and derive moderator confinement (phase 2, PR 8)' (#135) from feature/module-nav-interleave into edgeColby Whitlock2026-08-11 05:29:40 +00:00
a45a3d120afeat(modules): interleave module nav, derive moderator confinementwtclaude2026-08-10 23:42:02 -05:00
e3c999b704Merge pull request 'feat(modules): the client registry, window.__rg and the chunk's script injection' (#134) from feature/module-client-registry into edgeColby Whitlock2026-08-11 04:01:59 +00:00
e0927bc255feat(modules): the client registry, window.__rg and the chunk's script injectionwtclaude2026-08-10 22:54:16 -05:00
fe83c91ba9Merge pull request 'feat(modules): publish the installed-module list at /api/v1/public/modules' (#133) from feature/module-public-endpoint into edgeColby Whitlock2026-08-11 03:16:49 +00:00
291c30f6fffeat(modules): publish the installed-module list at /api/v1/public/moduleswtclaude2026-08-10 22:03:22 -05:00
85f563fc16Merge pull request 'feat(modules): boot/shutdown hook dispatch and the installed_modules reconcile' (#132) from feature/module-lifecycle into edgeColby Whitlock2026-08-11 02:34:46 +00:00
32ed8e4411fix(test): stop the suite reaching a real database, and make it exitwtclaude2026-08-10 21:27:47 -05:00
21196466edfeat(modules): boot/shutdown hook dispatch and the installed_modules reconcilewtclaude2026-08-10 20:32:00 -05:00
39eaae90a8Merge pull request 'feat(modules): the three de-entanglement registries, with core as the registrant' (#131) from feature/module-registries into edgeColby Whitlock2026-08-10 23:18:57 +00:00
97f19b4221docs(modules): note that registerExtension's spec-file argument is core-onlywtclaude2026-08-10 17:53:59 -05:00
6195c76d61feat(modules): the three de-entanglement registries, with core as the registrantwtclaude2026-08-10 17:47:59 -05:00
bd749d4f1fMerge pull request 'feat(modules): replay module schema fragments after core's (phase 2, PR 3)' (#130) from feat/modules-schema into edgeColby Whitlock2026-08-10 22:06:44 +00:00
2892d01b24feat(modules): replay module schema fragments after core'swtclaude2026-08-10 16:56:58 -05:00
7780fb033bMerge pull request 'feat(modules): the filesystem module loader (phase 2, PR 2)' (#129) from feat/modules-loader into edgeColby Whitlock2026-08-10 21:31:24 +00:00
ec1ca7e794feat(modules): the filesystem module loaderwtclaude2026-08-10 14:35:27 -05:00
dcf6ef1886Merge pull request 'feat(modules): installed_modules and the module state machine (phase 2, PR 1)' (#128) from feat/modules-state into edgeColby Whitlock2026-08-10 19:04:58 +00:00
3add0063bffeat(modules): installed_modules and the module state machinewtclaude2026-08-10 06:35:22 -05:00
f1dda8fe66Merge pull request 'ci: run PR checks on pull requests into edge as well as main' (#127) from ci/pr-checks-on-edge into mainColby Whitlock2026-08-10 07:42:15 +00:00
4691fd6633ci: run PR checks on pull requests into edge as well as mainwtclaude2026-08-10 02:31:43 -05:00
265042eaa5Merge pull request 'feat(theming): admin-configurable theme, brand assets and navigation (edge → main)' (#126) from edge into mainColby Whitlock2026-08-08 06:19:34 +00:00
18815f4c7aMerge pull request 'feat(theming): dropdown sections and added links in the public header (phase 10)' (#125) from feat/theming-nav-phase-10 into edgeColby Whitlock2026-08-08 06:07:15 +00:00
15cefe5ea1fix(theme): state .pill's line-height so a button pill matches a link pillwtclaude2026-08-08 00:56:50 -05:00
b517d7b2dffeat(theming): dropdown sections and added links in the public headerwtclaude2026-08-08 00:42:19 -05:00
78f994955cMerge pull request 'feat(theming): nav wiring and the admin nav builder (phases 6-8)' (#124) from feat/theming-nav-phase-6-8 into edgeColby Whitlock2026-08-08 05:11:33 +00:00
32a3ff104afeat(theming): wire the three navs and add the admin nav builderwtclaude2026-08-08 00:02:33 -05:00
42a403ad2eMerge pull request 'feat(theming): brand-asset overrides and a cached, settings-aware HTML shell (phase 5)' (#123) from feat/theming-nav-phase-5 into edgeColby Whitlock2026-08-08 02:12:46 +00:00
847cfd2d2bfeat(theming): brand-asset overrides and a cached, settings-aware HTML shellwtclaude2026-08-07 20:09:56 -05:00
02580ebda3Merge pull request 'feat(theming): server-resolved theme engine and admin appearance UI (phases 3-4)' (#122) from feat/theming-nav-phase-3-4 into edgeColby Whitlock2026-08-08 00:22:31 +00:00
3d6b2e23a7feat(theming): server-resolved theme engine and admin appearance UIwtclaude2026-08-07 19:16:23 -05:00
0a2ccafff6Merge pull request 'feat(theming): settings-store, nav merge util and radius tokens (phases 0-2)' (#121) from feat/theming-nav-phase-0-2 into edgeColby Whitlock2026-08-07 23:25:25 +00:00
ec0036ce6dfeat(theming): settings-store, nav merge util and radius tokenswtclaude2026-08-07 18:15:29 -05:00
d765280e28Merge pull request 'docs(readme): say how to get a sidecar before explaining how it is used' (#120) from docs/installer-first-setup into mainColby Whitlock2026-08-07 21:31:17 +00:00
03534c8db1docs(readme): say how to get a sidecar before explaining how it is usedwtclaude2026-08-07 16:05:57 -05:00
c91fd128bfMerge pull request 'fix(shard): answer with the instance name when the shard is unnamed' (#119) from fix/ruleset-shard-name into edgeColby Whitlock2026-08-01 06:04:19 +00:00
01a559792cfix(shard): answer with the instance name when the shard is unnamedwtclaude2026-08-01 00:58:21 -05:00
e50fab241fMerge pull request 'feat(shard)!: declare wire protocol 3' (#117) from chore/protocol-3-cutover into edgeColby Whitlock2026-07-30 03:02:20 +00:00
c6c0c257ddMerge pull request 'feat(shard): the player-vendor marketplace' (#116) from feat/vendor-listing into edgeColby Whitlock2026-07-29 20:03:22 +00:00
8771a1cf6cfeat(shard): the player-vendor marketplacewtclaude2026-07-29 09:51:50 -05:00
8da658f223Merge pull request 'feat(shard): resolve cliloc names for items and reward titles' (#115) from feat/cliloc-table into edgeColby Whitlock2026-07-29 11:58:54 +00:00
bda031566afeat(shard): read clilocs from a source SET so shard items get nameswtclaude2026-07-29 06:46:12 -05:00
b61a4d6721feat(shard): resolve cliloc names for items and reward titleswtclaude2026-07-29 04:21:38 -05:00
1e1a3d67c3Merge pull request 'feat(shard): ingest points.board and publish the leaderboards' (#114) from feat/points-board into edgeColby Whitlock2026-07-29 07:52:52 +00:00
26094459aefeat(shard): ingest points.board and publish the leaderboardswtclaude2026-07-28 21:04:44 -05:00
bfa1db58c4Merge pull request 'feat(atlas): serve the spawn atlas and give operators a panel for it' (#113) from feat/spawn-atlas-api into edgeColby Whitlock2026-07-29 00:53:21 +00:00
7c769ea8fdfeat(atlas): serve the spawn atlas and give operators a panel for itwtclaude2026-07-28 19:51:22 -05:00
f3d084e046Merge pull request 'feat(atlas): derive a spawn atlas from the shard tree on every boot' (#112) from feat/spawn-atlas-parse into edgeColby Whitlock2026-07-28 21:51:28 +00:00
a4ef9d676dMerge remote-tracking branch 'origin/edge' into feat/spawn-atlas-parseClaude2026-07-28 16:45:56 -05:00
2801ec8f4drefactor(atlas): derive the atlas from the shard's tree on every bootwtclaude2026-07-28 16:41:33 -05:00
353cce9f26feat(atlas): parse a ServUO tree into a committed spawn atlas artifactwtclaude2026-07-28 16:07:30 -05:00
7b98f1a778Merge pull request 'feat(shard): ingest world.ruleset and publish it at /site/rules' (#111) from feat/shard-ruleset into edgeColby Whitlock2026-07-28 20:50:35 +00:00
61d6bfaca2feat(shard): ingest world.ruleset and publish it at /site/ruleswtclaude2026-07-28 14:35:24 -05:00
6b1396dd2fMerge pull request 'fix(shard): enforce visibility on the REST reads that bypassed it' (#110) from fix/shard-visibility-rest-projection into edgeColby Whitlock2026-07-28 15:58:29 +00:00
f30ea66fcefix(shard): enforce visibility on the REST reads that bypassed itwtclaude2026-07-28 10:49:55 -05:00
cd56af3f12Merge pull request 'feat(shard): admin-configurable visibility for every shard surface' (#109) from feat/shard-visibility-framework into edgeColby Whitlock2026-07-28 15:08:12 +00:00
f3450686e0feat(shard): admin-configurable visibility for every shard surfacewtclaude2026-07-28 10:04:48 -05:00
a3407ae654Merge pull request 'feat(auth): honor and establish trusted devices on the SSO login paths' (#108) from feat/sso-trusted-device into mainColby Whitlock2026-07-28 06:12:57 +00:00
620781b7bcfeat(auth): honor and establish trusted devices on the SSO login pathswtclaude2026-07-28 01:01:12 -05:00
f6611231c4Merge pull request 'fix(shard): stop an undecryptable uo-link token 500ing every live-shard route' (#107) from fix/uolink-client-throw-and-sitemode-gate into mainColby Whitlock2026-07-28 05:33:33 +00:00
a6fd5659c4fix(shard): stop an undecryptable uo-link token 500ing every live-shard routewtclaude2026-07-28 00:22:40 -05:00
068844bfd9Merge pull request 'refactor(server): split public, player and residual auth into capability routers (PR 5)' (#106) from refactor/router-split-5 into mainColby Whitlock2026-07-28 02:04:57 +00:00
565a7d2c20refactor(server): split public, player and residual auth into capability routers (PR 5)wtclaude2026-07-27 20:52:14 -05:00
3fcc64ab96Merge pull request 'refactor(server): split admin shard, uo-link, email, discord-bot, settings and dashboard into capability routers (PR 4)' (#105) from refactor/admin-router-split-4 into mainColby Whitlock2026-07-28 01:33:45 +00:00
8fd0d82580refactor(server): split admin shard, uo-link, email, discord-bot, settings and dashboard into capability routerswtclaude2026-07-27 20:02:28 -05:00