2025-11-11 - 2026-11-11
Overview
408 Pull requests merged by 2 users
Merged
#414 docs(runicnpc): the cutover's gate 1 asks Steam when public was set (D397)
Merged
#413 docs(demo): the wipe prunes the images its pull replaced
Merged
#412 docs(runicnpc): the automated cutover as built, and its dry run (D332)
Merged
#411 docs(runicnpc): the automated wipe-day cutover, planned (D332)
Merged
#410 docs(runicnpc): 9c, the three fight checks explained; D331 (runicnpc-rust#20, #22)
Merged
#409 docs(module-rust): note the core.lease retry: false fix (website#206)
Merged
#408 docs(runicnpc): 9c, the first drill that failed (runicnpc-rust#20)
Merged
#407 docs(safety): team notifications and digests follow a reader's blocks
Merged
#406 docs(android): record M8's cutover, the signing key and the Console
Merged
#405 docs(tree): sync android/PROJECT_TREE.md
Merged
#393 docs(tree): sync website/PROJECT_TREE.md
Merged
#404 docs(safety): the demo gets report, block and hide from the module release
Merged
#403 docs(safety): record the org lead's answer to step 5's W1-W4
Merged
#402 docs(safety): record USER_SAFETY step 5, the walk on a local copy of the demo
Merged
#401 docs(safety): record USER_SAFETY step 4, the app's chat-line menu
Merged
#400 docs(safety): record USER_SAFETY step 3, Module-Rust's chat lines
Merged
#399 docs(safety): record S11-S14 and the user-safety core, MODULE_API 1.21.0
Merged
#398 docs(account): W1-W3 from the deletion walk are fixed; correct rust PLAN §29.8
Merged
#397 docs(account): record step 6, the account deletion walk
Merged
#396 docs(account): record step 5 (runicgateway.com /delete-account/) as built
Merged
#395 docs(account): record step 4 (the Android screen) as built
Merged
#394 docs(account): record step 3 (module hooks, kit re-pin) as built
Merged
#392 docs(website): document account deletion core and MODULE_API 1.20.0
Merged
#391 docs: record M8 step 2 (data safety) and plan self-service account deletion
Merged
#390 docs: plan report/block/hide, decide M8's open items, plan demo content
Merged
#389 docs(website): record the demo's step 6 site side and Play state (DM30, DM31)
Merged
#388 docs(website): record the demo's re-check after DM27/DM28 and the play-review walk
Merged
#387 docs(website): record the demo's step-5 walk, its findings and the answers (DM27-DM29)
Merged
#386 docs(website): demo DM25 + DM26, first wipes, default set, public URL
Merged
#379 docs(tree): sync website/PROJECT_TREE.md
Merged
#384 docs(website): Node 22.23.4 floor in the README mirror (Node2Shell)
Merged
#385 docs(website): demo step 5 built — deploy files, DM22-DM24
Merged
#383 docs(website): demo hero editor previews but does not publish (DM21)
Merged
#382 docs(website): demo mode step 4 built — DM19, DM20 (the app)
Merged
#381 docs(website): demo mode step 3 built (kit re-pin to 1.19.0)
Merged
#380 docs(website): demo mode step 2 built — DM18, MODULE_API 1.19.0
Merged
#378 docs(website): demo mode core built — DM15-DM17, MODULE_API 1.18.0
Merged
#377 docs(website): design demo mode for demo.runicgateway.com
Merged
#376 docs(android): M8 step 1 built — API 36, the bundle and the Play upload
Merged
#375 docs(android): plan M8 — Google Play
Merged
#374 docs(tree): sync android/PROJECT_TREE.md
Merged
#373 docs(android): record M20 as built
Merged
#372 docs: plan the app's vocabulary sweep (M20) and record weapon names
Merged
#368 docs(tree): sync website/PROJECT_TREE.md
Merged
#371 docs(runicnpc): rejoin API.md's profile table so the boss and loot rows render
Merged
#370 docs(rust-link): bring INTEGRATION.md up to protocol 14 and name all three helpers
Merged
#369 docs(rust): stage 6 of the last fixes — protocol 14 released, the cutover landed
Merged
#367 docs(rust): the last fixes' docs (N1 N2 W20 W22 W23) and stage 4's core docs
Merged
#366 docs(rust): the last fixes before the cutover
Merged
#365 docs(rust): plan the end walk's in-game pass, with Steam sign-in
Merged
#364 docs(website): Steam sign-in built (MODULE_API 1.17.0)
Merged
#363 docs(website): Steam sign-in's questions answered (D392–D396)
Merged
#362 docs(rust): record the end walk so far (PLAN_REDESIGNS §9.1); runicgateway.com becomes phase 20
Merged
#361 docs(rust): RaidableBases built (PROTOCOL §20.12, PLAN_REDESIGNS §11.4.6, D391, MODULE_API 1.16.0)
Merged
#360 docs(rust): paid RaidableBases spiked on both rigs (PLAN_REDESIGNS §11.4.2, D386–D390)
Merged
#359 docs(rust): console commands built — command.run (PROTOCOL §20.11, PLAN_REDESIGNS §16.10, D385)
Merged
#357 docs(tree): sync website/PROJECT_TREE.md
Merged
#358 docs(rust): console commands as event steps and rewards (§16, D382-D384)
Merged
#356 docs(events): a trigger can start a run (Rust §14.3 stage 9, D370)
Merged
#355 docs(rust): take Server Rewards off the plan (D381)
Merged
#354 docs(rust): stage 7 built — ZLevels (PROTOCOL §20.10, PLAN_REDESIGNS §14.3.20)
Merged
#353 docs(rust): stage 6 built — Guarded Crate (PROTOCOL §20.9, PLAN_REDESIGNS §14.3.19, D380)
Merged
#352 docs(rust): stage 5 built — Dangerous Treasures (PROTOCOL §20.8, PLAN_REDESIGNS §14.3.18)
Merged
#351 docs(rust): stage 4 built — Dynamic PVP's zones (PROTOCOL §20.7, PLAN_REDESIGNS §14.3.17)
Merged
#350 docs(rust): stage 3 built — TruePVE in the zone step (PROTOCOL §20.6, PLAN_REDESIGNS §14.3.16)
Merged
#349 docs(events): a step's retry delay, MODULE_API 1.15.0 (PLAN_REDESIGNS §14.3.15)
Merged
#348 docs(rust): stage 1 built — world events on protocol 14 (PROTOCOL §20.5, D378, D379)
Merged
#347 docs(rust): the §14.3 integration plan for world events and six plugins (D370–D377)
Merged
#346 docs(rust): record the §14.2 test phase findings and answers (D361–D369)
Merged
#345 docs: plan Rust's world events, six optional plugins, and Steam sign-in (D349–D360)
Merged
#337 docs(tree): sync website/PROJECT_TREE.md
Merged
#344 docs(rust): RaidableBases deferred for the current paid copy; both editions supported (D347, D348)
Merged
#343 docs(events,rust): MODULE_API 1.14.0's multiple param; permission rewards built (PLAN_REDESIGNS §12.10)
Merged
#342 docs(rust): plan permission rewards — lend or give any registered permission (PLAN_REDESIGNS §12, D342–D346)
Merged
#341 docs(rust): protocol 14 — Backpacks, as built; D340, D341 (PROTOCOL §20.4, PLAN_REDESIGNS §11.3.4)
Merged
#340 docs(rust): the Backpacks spike and its design — D337–D339 (PLAN_REDESIGNS §11.3)
Merged
#339 docs(rust): protocol 14 — Economics, as built (PROTOCOL §20.3, PLAN_REDESIGNS §11.2.4)
Merged
#338 docs(rust): the Economics spike and its design — D335, D336 (PLAN_REDESIGNS §11.2)
Merged
#336 docs(rust): protocol 14 — kits.uses and reward notices (PROTOCOL §20, PLAN_REDESIGNS §2.9)
Merged
#334 docs(rust): resume the redesigns at §2 — D331–D334
Merged
#333 docs(runicnpc): 9e step 3 — the cutover, RunicNPC v1.0.0 and bundle 2026.10.09 (D330)
Merged
#332 docs(tree): sync installer/PROJECT_TREE.md
Merged
#331 docs(runicnpc): 9e step 2 — the Carbon Kits reload, found and fixed (D329)
Merged
#330 docs(runicnpc): 9e step 1 — dome stack 3 and the PopupNotifications banner (D326–D328)
Merged
#329 docs(runicnpc): stage 9e is three steps — the session's asks, the Carbon check, the cutover
Merged
#328 docs(runicnpc): 9d player session — all rows pass; D323–D325
Merged
#327 docs(runicnpc): stage 9d server-side walk; animals, heals and zone flags fixed (D320–D322)
Merged
#322 docs(tree): sync website/PROJECT_TREE.md
Merged
#326 docs(runicnpc): stage 9c built, the staging drill (D317, D318, D319)
Merged
#325 docs(runicnpc): stage 9b built; INSTALL and COMMANDS; RunicNPC required (D315, D316)
Merged
#324 docs(runicnpc): stage 9 decisions D306–D314 and its design
Merged
#323 docs(runicnpc): stage 8 built and walked; MODULE_API 1.12.0 progress(), map.live's RunicNPC rows
Merged
#321 docs(runicnpc): stage 8 decisions D302–D305 and its design
Merged
#320 docs(runicnpc): stage 7 built and walked; API 6 and the dropLoot switch
Merged
#319 docs(runicnpc): stage 7 spike, measured on both rigs; D300–D301
Merged
#318 docs(runicnpc): stage 7 decisions D290–D299 (loot)
Merged
#315 docs(runicnpc): stage 6 spike questions answered, D283–D284
Merged
#314 docs(runicnpc): stage 6 spike, measured on both rigs; D283–D284
Merged
#308 docs(tree): sync installer/PROJECT_TREE.md
Merged
#313 docs(runicnpc): stage 6 decisions D273–D282
Merged
#312 docs(runicnpc): stage 5 built, tested and walked; API 4; protocol 13 §19.13
Merged
#310 docs(runicnpc): stage 5 spike, measured, and D263–D266
Merged
#309 docs(runicnpc): stage 5 decisions D253–D262
Merged
#307 docs(runicnpc): stage 4 built and walked; protocol 13 §19.12; API 3
Merged
#306 docs(runicnpc): stage 4 decisions D249–D251
Merged
#305 docs(runicnpc): stage 4 decisions D243–D248
Merged
#304 docs(runicnpc): stage 3 as built, and its in-game walk
Merged
#303 docs(runicnpc): stage 3's design, D239–D242
Merged
#302 docs(runicnpc): stage 2 as built, and API.md
Merged
#301 docs(runicnpc): stage 2's design, D232–D238
Merged
#300 docs(runicnpc): stage 1 measured, D231
Merged
#299 docs(runicnpc): stage 0 as built, D229–D230
Merged
#298 docs(runicnpc): plan RunicNPC, our own Rust NPC plugin (D214–D220)
Merged
#297 docs(rust): the map's monument labels as built and walked — PLAN_REDESIGNS 4.1, D213
Merged
#295 docs(rust): the chat-title conditions as built — PROTOCOL 19.10, PLAN_REDESIGNS 5.8 and D209
Merged
#296 docs(rust): zones and the dome as built and walked — PROTOCOL 19.11, PLAN_REDESIGNS 3.4, D210-D212
Merged
#294 docs(rust): the RaidableBases spikes, and D203-D208
Merged
#293 docs(rust): perm.inventory in PROTOCOL 19.9, and the permission manager as built
Merged
#292 docs(rust): first-class optional plugins in the redesign plan (D199-D202)
Merged
#291 docs(rust): plan the six step-3 redesigns, and D188-D198
Merged
#290 docs(rust): the step-2 player walk, and D186-D187
Merged
#289 docs(rust): protocol 13 step 2 — expiry, plugin loads, the zone helper, the tally (§19.4-19.8, MODULE_API 1.11.0)
Merged
#287 docs(rust): protocol 13 — the reload as the rigs showed it (W1-W5, D180)
Merged
#285 docs(rust): plan fixes — D176-D179, how step 1 is built
Merged
#286 docs(rust): protocol 13 opens — the configuration save that answers first (PROTOCOL.md §19)
Merged
#284 docs(rust): plan fixes — D173 quests, D174 title rules, D175 admin-owned titles
Merged
#283 docs(rust): plan fixes — D169-D172, the org lead's answers
Merged
#282 docs(rust): plan fixes — the first player walk's findings, gating the cutover
Merged
#263 docs(modules): a site runs one module (decision 35)
Merged
#280 docs(tree): sync installer/PROJECT_TREE.md
Merged
#281 docs(rust): phase 18 as built — the Rust operator guide, bundle schema 2, D154-D158, and the walk
Merged
#279 docs(rust): phase 18 plan of record — the installer and the egg (PLAN §34, D145–D153)
Merged
#278 docs(rust): phase 17 as built and walked — protocol 12, D144 (PLAN §33.5–§33.7, M19)
Merged
#277 docs(rust): phase 17 plan of record — BetterChat and popups (PLAN.md §33, M19)
Merged
#276 docs(rust): phase 16 as built and walked (PLAN.md §32.5–32.7, M18)
Merged
#275 docs(rust): phase 16 plan of record — slash commands and the next wipe (PLAN.md §32)
Merged
#274 docs(rust): phase 15 as built — the map and events on a phone (PLAN.md §31.5–§31.7)
Merged
#273 docs(rust): phase 15 plan of record — the map and events on a phone (PLAN.md §31)
Merged
#272 docs(rust): phase 14 as built — the live map (PLAN.md §30.6–§30.9, PROTOCOL.md §17)
Merged
#271 docs(rust): phase 14 plan of record — the live map (PLAN.md §30)
Merged
#270 docs(rust): phase 13b as built — the rewards (PLAN.md §29.6–29.9, PROTOCOL.md §16)
Merged
#269 docs(rust): phase 13b plan of record (PLAN.md §29)
Merged
#268 docs(rust): phase 13 plan, and 13a as built (PLAN.md §28, PROTOCOL.md §15)
Merged
#267 docs(rust): phase 12 — the leases (PLAN.md §27, PROTOCOL.md §14)
Merged
#266 docs(rust): phase 11 — a Rust notification on a phone (PLAN.md §26, android M16)
Merged
#265 docs(rust): phase 10 — notifications and engagement (PLAN.md §25, PROTOCOL.md §13)
Merged
#264 docs(rust): phase 9 — Teams from first-party clans (PLAN.md §24, PROTOCOL.md §12)
Merged
#262 docs(modules): the presence fix — nothing names who is online by default
Merged
#261 docs(modules): phase 8 as built, and the rig that put the sidecar where the design says it lives
Merged
#260 docs(modules): phase 7b as built — configuration from the site, and the undo that makes it safe
Merged
#259 docs(modules): phase 7 as built — the permission mirror, and the set arithmetic behind it
Merged
#258 docs(modules): phase 6 as built — identity, and the sentence a player could not see
Merged
#257 docs(modules): phase 5 as built — Android leg A, and the capability a client had to be given
Merged
#256 docs(modules): phase 4 as built — the first pages, and the four defects a browser walk found
Merged
#255 docs(rust-link): protocol 2 — the read path, and phase 3 as built
Merged
#254 docs(modules): phase 2 as built — packaging, release and the frozen manifest
Merged
#253 docs(modules): module-rust supports Carbon too, ships a Pterodactyl egg, and the rigs move to the panel
Merged
#252 docs(modules): module-rust phase 1 as built — the transport, and three org-lead decisions
Merged
#251 docs(modules): module-rust phase 0 as built — the rig is current, and four plan claims were wrong
Merged
#250 docs(modules): second contract pass over MODULE_API.md — restores a dropped reconcile, reprices R9
Merged
#249 docs(modules): the module-rust plan — 18 decisions of record and a 21-phase schedule
Merged
#246 docs(tree): sync website/PROJECT_TREE.md
Merged
#248 docs(modules): mirror the uMod/Oxide ecosystem for module-rust
Merged
#247 docs(link): the site leg, and the nine keys no phase row could catch (Phase 9c, the last)
Merged
#245 docs(link): the cutover, and the counter two branches bumped at once (Phase 9b, 5 of 5)
Merged
#244 docs(link): the guide an integrator reads stopped at protocol 6 (Phase 9a)
Merged
#243 docs(link): the panel, and the two deletions it could see and no test could (Phase 8)
Merged
#242 docs(link): what a 4 MB spawn file does to a 1 MiB wire (Phase 7)
Merged
#241 docs(link): the phase the measurement cancelled, and the 452 wrong pictures it found on the way (Phase 6)
Merged
#240 docs(link): the hue belongs where the files are, and the cache poisons it (Phase 5)
Merged
#239 docs(link): two of the eight player bodies existed, and 233 nobody asked about (Phase 4)
Merged
#238 docs(link): the catalogue is real, and UOFiddler's last job is gone (Phase 3)
Merged
#237 docs(link): clilocs come over the bridge now, and UOFiddler's first job is gone
Merged
#236 docs(link): phase 1 built the transport, and re-measured the catalogue
Merged
#235 docs(link): phase 0 ran, and the fault it found is not a crash
Merged
#234 docs(link): the Asset Bridge (Protocol 8) — client assets without UOFiddler
Merged
#233 docs(events): the site, the landing page, and the cutover step they found (Phase 16c)
Merged
#232 docs(events): the Event System record — the cutover step 16b missed (edge → main)
Merged
#231 docs(events): the cutover, the outage it survived, and the defect it exposed (Phase 16b cutover, 6 of 6)
Merged
#230 docs(tree): sync website/PROJECT_TREE.md
Merged
#229 docs(tree): sync android/PROJECT_TREE.md
Merged
#228 docs(events): the acceptance walk, and the three contracts it moved (Phase 16a)
Merged
#227 docs(events): detail is a real envelope member now
Merged
#226 docs(events): what the integration kit's fifth chapter settled (Phase 15)
Merged
#225 docs(android): the app's events screens, and the module rows that were never gated (Phase 14b)
Merged
#224 docs(website): the public surface, and the flag that decides what reaches it (Phase 14a)
Merged
#223 docs(website): the authoring UI proper, and the one route it needed (Phase 13)
Merged
#222 docs(link): protocol 7 part b — what an event borrows, and the one-shots
Merged
#221 docs(link): protocol 7 — what an event owns, and the split that carries it
Merged
#220 docs(link): protocol 6 part b — leases, participation, and what the walk found
Merged
#219 docs(link): protocol 6 as built — a guarantee, and the kind that pays for it
Merged
#218 docs(events): Phase 10 as built — the integrations, and a ceiling per firing
Merged
#217 docs(events): Phase 9 as built — UO wave 1, and a budgetMs rule the phase found
Merged
#216 docs(events): Phase 8 as built — the resource ledger, leases and cleanup
Merged
#215 docs(events): Phase 7 as built — the module contract at MODULE_API 1.10.0
Merged
#214 docs(events): Phase 6 as built — enablement, caps and mayInvoke
Merged
#213 docs(events): Phase 5 as built — conditions, phase advancement and the panel
Merged
#212 docs(events): Phase 4 as built — schedule, recurrence and the calendar
Merged
#211 docs(events): Phase 3 as built — the minimal admin surface
Merged
#210 docs(events): Phase 2 as built — the runner
Merged
#209 docs(events): Phase 1 as built — schema, CRUD and the core action registry
Merged
#208 docs(events): Phase 0 — the eleven decisions, and the two documents they reach into
Merged
#207 docs(events): the Event System design of record and its phased plan
Merged
#206 docs(tree): sync website/PROJECT_TREE.md
Merged
#205 docs(engagement): Phase 14 as built — retention
Merged
#204 docs(engagement): the two walk defects, fixed — and what digest is
Merged
#203 docs(engagement): Phase 13 as built, and Phase 14 — retention
Merged
#202 docs(tree): sync android/PROJECT_TREE.md
Merged
#201 docs(tree): sync website/PROJECT_TREE.md
Merged
#200 docs: the engagement workstream — cutover 1 of 7 (edge → main)
Merged
#199 docs(website): the engagement release note — three things that arrive switched off
Merged
#198 docs(engagement): Phase 12 as built — the 12a/12b split and three findings
Merged
#197 docs(engagement): Phase 11b's live walk — three decisions and six defects
Merged
#196 docs(engagement): Phase 11b — the seed API, the in-universe voice, the governor's letter
Merged
#194 docs(engagement): scope Phase 11 — six decisions, three carve-outs, the 11a/11b split
Merged
#195 docs(engagement): MODULE_API 1.8.0, the UO trigger catalogue, the news publish path
Merged
#193 docs(link): protocol 5 — the decay schedule, vendor fee state and account.login.result
Merged
#191 docs(engagement): Phase 9 as built — deliverability, suppression and bounces
Merged
#190 docs(engagement): the in-app channel on Android, as built (Phase 8)
Merged
#189 docs(website): §7.1 Q9 — core's own news.post emitter
Merged
#188 docs(website): the in-app channel as built (engagement Phase 7)
Merged
#187 docs(website): the email channel and the Teams migration as built (engagement Phase 6)
Merged
#186 docs(website): the template editor as built (engagement Phase 5b)
Merged
#185 docs(website): the seeded template set as built (engagement Phase 5a)
Merged
#184 docs(website): the engagement admin surface as built (Phase 4b)
Merged
#183 docs(website): the engagement engine as built (Phase 4a)
Merged
#182 docs(website): per-channel notification preferences (engagement Phase 3)
Merged
#181 docs(website): event triggers, audiences and the ceiling lattice (engagement Phase 2)
Merged
#180 docs(website): unique, changeable, verifiable email addresses (engagement Phase 1b)
Merged
#179 docs(website): one self-service surface — /auth/me/account (engagement Phase 1a)
Merged
#178 docs(website): §7 rewritten for SMTP, plus an upgrade-notes home
Merged
#177 docs(website): record the org lead's answers to Q1/Q3/Q5/Q7, and add Phase 1b
Merged
#176 docs(website): add ENGAGEMENT.md, the engagement system design of record
Merged
#175 fix(link): a protocol bump owes four declaration sites, not three
Merged
#174 docs: the shard screen's real path, and the two keys a deploy cannot boot without
Merged
#172 docs(link,installer): protocol 4 is live — correct every stale 3
Merged
#173 docs: hygiene sweep — the four places the docs describe a site that no longer exists
Merged
#168 docs(tree): sync website/PROJECT_TREE.md
Merged
#171 docs(modules): the module release version is derived, not declared
Merged
#170 docs(modules): the Rust dry run reaches the game through an Oxide plugin, not RCON
Merged
#169 docs(teams): the Teams bet, as built (Teams cutover 6/6)
Merged
#167 docs(modules): the Rust dry run, revisited for Teams
Merged
#166 docs(teams): phase 11 as built, and what the rig walk found
Merged
#165 docs(modules): core offers a contribution, never a slot name — and phase 11 as built
Merged
#164 docs(teams): cancel phase 10, and say what that leaves behind
Merged
#163 docs(teams): phase 9 as built — roles, not overwrites, and three things §7.3 named that do not exist
Merged
#162 docs(teams): phase 8 as built — the gate §7.2 could not check, and the key it could not hold
Merged
#161 docs(teams): phase 7 as built — five amendments to §7.1
Merged
#160 docs(teams): queue the integration kit as phase 11, last before the cutover
Merged
#159 docs(teams): phase 6 as built — four deviations and a ninth contract member
Merged
#158 docs(teams): phase 5 — discussion, the edit window, and reports that route around leadership
Merged
#157 docs(teams): phase 4 — the forum's access model, switches and image policy
Merged
#156 docs(teams): phase 3 — Teams is a contract, not a surface
Merged
#155 docs(link): roster members carry guild rank
Merged
#154 docs(teams): Team core, MODULE_API 1.6.0, and what phase 2 disproved
Merged
#153 docs(link): protocol 4 — guild membership on the wire
Merged
#152 docs(teams): use the correct presentation of the project name, and match both forms
Merged
#151 docs(teams): design of record for platform Teams & community integration
Merged
#150 docs(tree): sync website/PROJECT_TREE.md
Merged
#149 docs(modules): record the cutover, and retire what it makes untrue
Merged
#148 docs(modules): correct F3 in the acceptance record
Merged
#147 docs(modules): close Phase 5 — the acceptance run, and the page shell it found
Merged
#146 docs(modules): record the kit's extra checks and slice 2
Merged
#145 docs(modules): settle Phase 5 — the Integration Kit, and the sidecar rule
Merged
#144 docs(modules): close Phase 4 — de-UO the backend reference, record the acceptance run
Merged
#143 docs(website): record phase 4 slice 3, and the boot-order defect it created
Merged
#142 docs(website): phase 4 decisions 5-6, slices 1-2, and a rule main currently gets wrong
Merged
#141 docs(website): settle phase 4's shape — delivery
Merged
#140 docs(website): close phase 3 — slice 5, the fragment obligation, and the rust dry run
Merged
#139 docs(website): record slice 4, and the §5.2 check as built
Merged
#138 docs(website): record slice 3, and MODULE_API 1.3.0
Merged
#137 docs(website): client extension slots, and the client half is one slice (phase 3, slice 2)
Merged
#136 docs(website): the server half does not slice, and slice 1's record
Merged
#135 docs(website): settle Phase 3's shape, correct the library build, record slice 0
Merged
#134 docs(website): Phase 2 PR 9 — the modules mount, and Phase 2 complete
Merged
#133 docs(website): Phase 2 PR 8 — the nav interleave and the feature-provider seam
Merged
#132 docs(website): Phase 2 PR 7 — the client chunk's delivery contract
Merged
#131 docs(website): settle what core publishes about an installed module
Merged
#130 docs(website): settle boot/shutdown dispatch and what a boot writes down
Merged
#129 docs(website): settle the three de-entanglement registries and what they cost
Merged
#128 docs(website): settle how module schema fragments are validated and replayed
Merged
#127 docs(website): settle the module loader's trigger and its collision check
Merged
#126 docs(website): plan the Integration Kit — the module-builder's instruction book
Merged
#125 docs(website): where the module state machine lives, and how boot treats it
Merged
#124 docs(website): the module API contract, validated by the atlas spike (phase 1)
Merged
#123 docs(website): record the edge branch strategy and the Module-uo repo
Merged
#121 docs(tree): sync android/PROJECT_TREE.md
Merged
#122 docs(website): add the module system design of record
Merged
#120 docs(android): M12 theming & navigation, all phases as landed (cutover)
Merged
#119 docs(android): M12 phase 8 as landed, and the two defects AC-5 found
Merged
#118 docs(android): M12 phase 6 as landed
Merged
#117 docs(android): M12 phase 5 as landed
Merged
#116 docs(android): M12 phase 4 as landed
Merged
#115 docs(android): M12 phase 3 as landed
Merged
#114 docs(android): M12 phase 2 as landed
Merged
#113 docs(android): M12 phase 1 as landed
Merged
#112 docs(android): M12 phase 0 as landed, and phase 7 cancelled
Merged
#111 docs(android): build contract for admin theming and navigation parity (M12)
Merged
#110 docs(tree): sync website/PROJECT_TREE.md
Merged
#109 docs(website): theming & navigation, complete (edge → main)
Merged
#108 docs(website): phase 10 — public nav sections and added links, and the §7 amendment
Merged
#107 docs(website): theming phases 6-8 as built, and phase 9 cancelled
Merged
#106 docs(website): theming phase 5 as built — brand assets and the cached HTML shell
Merged
#105 docs(website): theming & nav phases 3-4 as built
Merged
#104 docs(website): theming & nav phases 0-2 as built
Merged
#103 docs(website): add theming & nav build contract
Merged
#102 docs(installer): lead with the installer now that it is released
Merged
#101 docs(tree): sync installer/PROJECT_TREE.md
Merged
#97 docs(installer): bundles publish to a branch, releases only tag
Merged
#100 docs(tree): sync installer/PROJECT_TREE.md
Merged
#99 docs(tree): sync link/PROJECT_TREE.md
Merged
#98 docs(installer): correct the Windows service decision, and the 1053 advice
Merged
#96 docs(installer): Phase 5 — scope, the §5.3 correction, and the operator guide
Merged
#95 docs(installer): put Phase 5 before the cutover, and flag Windows SCM as untested
Merged
#94 docs(installer): record the first real systemd verification
Merged
#93 docs(installer): record Phase 4 — doctor, update and uninstall as built
Merged
#92 docs(installer): record Phase 3 — the patch tier as built
Merged
#91 docs(installer): record Phase 2 as built — sidecar install and service
Merged
#90 docs(installer): record Phase 1 as built
Merged
#89 docs(installer): review the patched region, not the whole-file hash
Merged
#88 docs(installer): mark Phase 0.4 merged in the status table
Merged
#86 docs(tree): sync installer/PROJECT_TREE.md
Merged
#87 docs(installer): add the operator install guide (Phase 0.4)
Merged
#85 docs(installer): record Phase 0.3 — the bundle CI and where bundles live
Merged
#83 docs(tree): sync link/PROJECT_TREE.md
Merged
#84 docs(installer): record Phase 0.2 — the sidecar's CLI and settled data paths
Merged
#82 docs(installer): record Phase 0 progress and the overlay manifest
Merged
#81 docs(installer): add release orchestration and the bundle manifest
Merged
#80 docs(installer): plan the Runic Gateway installer
Merged
#79 docs(tree): sync android/PROJECT_TREE.md
Merged
#77 docs(tree): sync link/PROJECT_TREE.md
Merged
#78 docs(tree): sync website/PROJECT_TREE.md
Merged
#73 docs!: Protocol 3.0 cutover — the 3.0 documentation set
Merged
#76 docs(link): the shard-name fallback, the atlas places shape, and two traps
Merged
#75 docs(website): an operator runbook for extracting from your own UO client
Merged
#74 docs(android): scope M11 — Protocol 3.0 shard parity for the app
Merged
#72 docs(link): the Protocol 3.0 cutover (v3.md order 6)
Merged
#71 docs(link): the player-vendor marketplace (Protocol 3.0 §8)
Merged
#70 docs(link): the cliloc table, and why §8.6's recommendation was not implementable
Merged
#69 docs(link): points.board, the leaderboards API, and what a real shard changed
Merged
#68 docs(website): the spawn atlas API, the admin panel, and the delay-unit trap
Merged
#67 docs(website): record the spawn atlas pipeline and what real data changed
Merged
#66 docs(link): record world.ruleset and mark Protocol 3.0 progress
Merged
#65 docs(shard): record the REST projection gap the Part A smoke test found
Merged
#64 docs(website): record the shard visibility framework
Merged
#59 docs(tree): sync website/PROJECT_TREE.md
Merged
#63 docs(link): add the Protocol 3.0 design
Merged
#62 docs(website): record trusted-device support on the SSO login paths
Merged
#61 docs(website): record the uo-link client config-decrypt contract and the dashboard mixed tier
Merged
#60 docs(website): record PR 5 — public, player and auth capability split
Merged
#57 docs(tree): sync website/PROJECT_TREE.md
Merged
#58 docs(website): record the PR 4 admin router split and the end of admin.routes.js
Merged
#55 docs(tree): sync website/PROJECT_TREE.md
Merged
#56 docs(website): record the PR 3 admin router split (posts, uploads, wiki, pages)
Merged
#54 docs(website): record the PR 2 admin router split (moderation, bot-activity, activity)
Merged
#50 docs(tree): sync website/PROJECT_TREE.md
Merged
#53 docs(website): record split PR 1 — admin users, account, invites, auth providers
Merged
#52 docs(website): document the OpenAPI path-key normalization
Merged
#51 docs(website): correct the CSP delta to one directive and document the report sink
Merged
#49 docs(website): record the landed route manifest and resequence CSP after PR 0
Merged
#48 docs(website): finalize the API plan — in-place router split, no /api/v2
Merged
#47 docs(website): cross-component blast-radius review + /api/mobile facade (Phase 0)
Merged
#46 docs(website): add /api/v2 skeleton (PR 1 scaffold)
Merged
#45 docs(website): add API v2 plan (auth merge, CSP hardening, domain split)
Merged
#44 docs(tree): sync website/PROJECT_TREE.md
Merged
#42 docs(tree): sync link/PROJECT_TREE.md
Merged
#43 docs(tree): sync android/PROJECT_TREE.md
Merged
#41 docs(tree): add per-repo PROJECT_TREE snapshots + index them
Merged
#40 docs(android): add test coverage plan to reach the 50% gate
Merged
#39 docs(android): record SonarQube coverage wiring and issue triage (§12.1)
Merged
#38 docs(android): note the empty-subscriptions PUT serialization gotcha
Merged
#37 docs(ntfy): ntfy publishes a host port for the external reverse proxy
Merged
#36 docs(backend): note the /player/* group is role-agnostic self-service
Merged
#35 docs(android): full trusted-devices/MFA smoke-test walkthrough frames
Merged
#34 docs(android): trusted-devices/MFA live smoke-test screenshots
Merged
#33 docs(android): record trusted-devices app implementation in PLAN §4.1.1
Merged
#32 docs: trusted devices & MFA improvements
Merged
#31 docs(website): add architecture diagram
Merged
#30 docs(android): M10 — native SSO fixes + staff operations scope
Merged
#29 docs(website): add Discord bot test plan
Merged
#28 docs(android): note explicit network security config for cleartext posture
Merged
#27 docs(ci): document the SonarQube static-analysis setup
Merged
#26 docs(website): document the SPA Content-Security-Policy
Merged
#25 docs(android): spec Android App Links (assetlinks.json + build-time host)
Merged
#24 docs(android): record the M9 Part 2 native-SSO app plan
Merged
#23 docs(auth): design the mobile SSO authorization bridge (M9)
Merged
#22 docs: M7 Part 2 landed — embedded ntfy distributor + push.ntfyUrl
Merged
#21 docs(android): plan M7 Part 2 — app UnifiedPush push notifications
Merged
#20 docs: M7 push-notification backend contract + plan
Merged
#19 docs(android): record M6 (release mechanics) landed
Merged
#18 docs(android): record M5 (design pass) landed
Merged
#17 docs(android): summarize website frontend theme for Android client
Merged
#16 docs(android): record M4 (player self-service & game data) landed
Merged
#15 docs(android): record M2 (public shard) + M3 (auth) landed
Merged
#14 docs(android): record M2 (public shard + SSE) landed
Merged
#13 docs(android): record M1 (connect & browse) landed
Merged
#12 docs(android): mark M0 scaffold landed, M1 next
Merged
#11 docs: /public version+brand; mark PLAN §8 items 4 & 6 done
Merged
#10 docs: document /auth/me self surface; mark PLAN §8.1 done
Merged
#9 docs(android): mark the password-reset prerequisite done in PLAN
Merged
#8 docs(backend): document the password-reset endpoints and table
Merged
#7 docs(android): add design-pass workflow to app PLAN
Merged
#6 docs(android): add Android app design plan
Merged
#5 docs(website): moderation appeals + Discord reversal (Phase 6c/6d)
Merged
#4 docs(website): staff in-game location is admin/moderator-only
Merged
#3 chore: add open-source governance files (GPLv3 + contributing docs)
Merged
#2 docs(website): rebrand website-README to Runic Gateway
Merged
#1 docs: fix cross-refs and scrub machine paths