finish the offscale sweep: two real remnants and eleven stale names
Asked for a thorough check that nothing of offscale is left in the platform. The extraction was sound — no router, no permission entry, no app-store entry, no screen, no panel app, no env var anything reads. Two things were genuinely wrong, and both were in setup rather than in the server. ── The secret store minted a key for a plugin ── `officer-setup` bootstrapped two purposes: `jwt` and `headscale`. The second was a key for a PLUGIN, under a name the rename had already replaced, on a machine where the plugin is not installed and nothing would ever ask for it. offscale encrypts under `offscale`, and `getKey` creates on demand — which is precisely what lets core know nothing about plugins. Now core bootstraps `jwt` alone. ── `.env.example` documented variables for a deleted router ── HEADSCALE_URL, HEADSCALE_API_KEY and HEADSCALE_USER were described as driving `/api/vpn`. That router was deleted on 2026-08-14 and nothing has read any of them since. Left as a note saying where the tailnet's credentials live now, because somebody with an older `.env` will otherwise wonder why setting them does nothing. ── Names that outlived the thing ── Eleven comments referred to the plugin's route, panels, console or server registry as "headscale": three sidecar config files describing their own shape by pointing at it, two screens citing `/headscale` as the example of a Workspace/Panel route, the terminal's note about the Console, and the photos types. Also `catalogue.ts`, which still claimed headscale "is CORE now", and `working-on-officer.md`, which told the reader a core install runs six processes including `officer-headscale`. Upstream references are deliberately untouched: "Headscale's API", "the Headscale admin credential", "is this a Headscale server?" all name the thing the plugin drives, and renaming those would make the sentences false. `docs/secret-store.md` argued headscale must be core because the tailnet is the perimeter. Marked superseded rather than deleted, with the distinction that settles it: the perimeter is the tailnet EXISTING, which machine-setup still arranges on a core install — not the platform shipping the screen that administers it. Verified by counting: live code, setup provisioning, env references, permission entries, app-store entries, hono mounts, dock defaults, screens and panel apps all zero. What is left is generated files (Plugins.gen, plugin-schemas.gen), the bundled catalogue entry, test fixtures using "offscale" as an example app name, and history. tsgo clean, frontend builds, 873 pass / 7 fail unchanged, setup scripts parse. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+5
-7
@@ -63,13 +63,11 @@ PUBLIC_URL=http://localhost:9000
|
||||
# http://localhost:8899.
|
||||
# RECLIP_URL=http://localhost:8899
|
||||
|
||||
# ── Headscale (/api/vpn) ────────────────────────────────────────────────────────────────────────
|
||||
# These drive the /api/vpn router, NOT the officer-headscale sidecar. The sidecar deliberately reads
|
||||
# neither, keeping its registered servers and their keys in Postgres so host env can never shadow
|
||||
# one. Set these only if you use /api/vpn.
|
||||
# HEADSCALE_URL=https://headscale.example.com
|
||||
# HEADSCALE_API_KEY="<headscale admin api key>"
|
||||
# HEADSCALE_USER=officer
|
||||
# ── The tailnet is a plugin now, and takes no env ────────────────────────────────────────────────
|
||||
# HEADSCALE_URL, HEADSCALE_API_KEY and HEADSCALE_USER were here for the `/api/vpn` router. That router
|
||||
# was deleted on 2026-08-14 and the rest left with offscale on the 15th, so nothing in this repository
|
||||
# has read any of them since. Install offscale from the marketplace and register a server in the app:
|
||||
# its URL and admin key live encrypted in Postgres, where host env cannot shadow them.
|
||||
|
||||
# ── Bitcoin wallet (officer-wallet) ─────────────────────────────────────────────────────────────
|
||||
# The chain data source is NOT here — it is configured from the app, at Wallet → Settings → Chain
|
||||
|
||||
Reference in New Issue
Block a user