fix(facts): installer v0.1.1 is released, so the note names a version
All checks were successful
PR checks / checks (pull_request) Successful in 9m22s

Recovering installer's orphan tag published v0.1.1, which moved the platform
under this branch and turned checkFacts red -- the check working exactly as it
should, since a version this site quotes had changed.

  FAIL  release installer
        platform.json says : v0.1.0
        installer releases/latest says : v0.1.1

The 500 that orphaned the tag was a race with the tag push one second earlier,
not a structural failure: re-running the workflow took the built-in orphan-tag
recovery path and published all four assets unchanged.

So the stale-path Aside stops saying "v0.1.0 is still the current download",
which is no longer true, and says the durable thing instead -- v0.1.0 prints
the old path, v0.1.1 prints the real one -- which stays correct however many
releases follow. platform.json and the PLAN.md version table move to v0.1.1,
and the phase 7 findings record the pipeline defect as a fourth finding.

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2026-08-24 11:50:38 -05:00
parent a993b872ac
commit e8cb6061fe
3 changed files with 13 additions and 9 deletions

12
PLAN.md
View File

@@ -86,7 +86,7 @@ All values re-read from the Gitea API on **2026-08-19**, after revision 1.
| **Current bundle** | **2026.08.19** (protocol 4, generated 09:05:52Z) | `installer` branch `bundles``current.json` | | **Current bundle** | **2026.08.19** (protocol 4, generated 09:05:52Z) | `installer` branch `bundles``current.json` |
| uo-link sidecar | **v2.0.0** (2026-08-19) | release; in bundle 2026.08.19 | | uo-link sidecar | **v2.0.0** (2026-08-19) | release; in bundle 2026.08.19 |
| Plugin overlay | **v1.0.0** (2026-08-19) | release; in bundle 2026.08.19 | | Plugin overlay | **v1.0.0** (2026-08-19) | release; in bundle 2026.08.19 |
| Installer | **v0.1.0** (2026-08-07) | release | | Installer | **v0.1.1** (2026-08-24) | release |
| `module-uo` | **v1.0.1** (2026-08-19) | release | | `module-uo` | **v1.0.1** (2026-08-19) | release |
| Android app | **v0.5.0** (2026-08-08), id `com.runicgateway.app` | release; `app/build.gradle.kts` | | Android app | **v0.5.0** (2026-08-08), id `com.runicgateway.app` | release; `app/build.gradle.kts` |
| ServUO | **57.4** — min version, and the only version the patch tier is verified against | bundle `overlay.servuo` | | ServUO | **57.4** — min version, and the only version the patch tier is verified against | bundle `overlay.servuo` |
@@ -918,10 +918,12 @@ Hero editor into Branding and theming, Web Bot Activity into Authentication.
one path segment, and the screen is **`/admin/uo/link`**, labelled *Shard (uo-link)*. The old path one path segment, and the screen is **`/admin/uo/link`**, labelled *Shard (uo-link)*. The old path
does not even 404 — the SPA sends the operator to the dashboard, so the link looks like it worked does not even 404 — the SPA sends the operator to the dashboard, so the link looks like it worked
and the four values have nowhere to go. **Fixed in installer#22** (the path is a named constant and and the four values have nowhere to go. **Fixed in installer#22** (the path is a named constant and
both handoff tests assert it) **and docs#174**, both merged 2026-08-24. The note here is pinned to both handoff tests assert it) **and docs#174**, both merged 2026-08-24, and shipped in installer
**v0.1.0** because that is still the current download: the release run for the fix built every **v0.1.1**. Getting there found a fourth defect, in `installer`'s release pipeline: the run for the
artifact and pushed tag `v0.1.1`, then took a `500` creating the release, leaving the tag orphaned fix built every artifact and pushed tag `v0.1.1`, then took a `500` from `POST /releases` one
and no binaries published. That is an `installer` problem, not this repo's, and is raised there. second later, leaving an orphan tag and no binaries. Re-running the workflow published it — the
failure was a race with the tag push, not a structural one — so the note here names v0.1.0 as the
version that prints the old path rather than describing the installer as currently wrong.
- **The admin "Restart the server" button opens a `window.confirm`.** Its text is the honest - **The admin "Restart the server" button opens a `window.confirm`.** Its text is the honest
warning that a deployment with no supervisor does not come back — which is exactly why warning that a deployment with no supervisor does not come back — which is exactly why
`restart: unless-stopped` is called out as load-bearing on the install page rather than left as `restart: unless-stopped` is called out as load-bearing on the install page rather than left as

View File

@@ -107,14 +107,16 @@ sidebar — `/admin/uo/link`. Tick *Enable the shard integration*, paste **Base
immediately. immediately.
<Aside type="caution" title="Installer v0.1.0 prints an older path for that screen"> <Aside type="caution" title="Installer v0.1.0 prints an older path for that screen">
It prints `…/admin/shard`. Since the shard screens became part of the `uo` module — and a v0.1.0 prints `…/admin/shard`. Since the shard screens became part of the `uo` module — and
module owns one path segment wherever it appears — the screen moved to **`/admin/uo/link`**. a module owns one path segment wherever it appears — the screen moved to
**`/admin/uo/link`**.
The old path does not fail visibly: the site has no route for it, so it sends you to the The old path does not fail visibly: the site has no route for it, so it sends you to the
dashboard, and that looks like the link worked. The four values you were just told to paste dashboard, and that looks like the link worked. The four values you were just told to paste
then have nowhere to go. Use the sidebar, or the path above. then have nowhere to go. Use the sidebar, or the path above.
Corrected in the installer's `main`; v0.1.0 is still the current download. Fixed in **v0.1.1**, which prints the real path. Only matters if you are running the older
binary.
</Aside> </Aside>
The token is encrypted at rest and **never returned to any client** — losing it means The token is encrypted at rest and **never returned to any client** — losing it means

View File

@@ -27,7 +27,7 @@
"releases": { "releases": {
"link": "v2.0.0", "link": "v2.0.0",
"installer": "v0.1.0", "installer": "v0.1.1",
"Module-uo": "v1.0.1", "Module-uo": "v1.0.1",
"Android-app": "v0.5.0" "Android-app": "v0.5.0"
}, },