Skip to content

fix(gastown): Remove unauthenticated debug UI and introspection endpoints from worker root #1429

@jrf0110

Description

@jrf0110

Bug

The gastown worker exposes a debug dashboard at the worker root that was never intended to be public:

GET / — Renders a full HTML debug dashboard (dashboard.ui.ts, 1342 lines) showing town state, agent metadata, and bead information. This is the first thing anyone sees when they hit the worker URL.

Note: The /debug/towns/:townId/status endpoint is fine — it is protected by Cloudflare Access. The root route is the issue.

Fix

  • Delete GET / route at gastown.worker.ts:191. Replace with a simple JSON response ({ "service": "gastown", "status": "ok" }) or a redirect to the Kilo app.
  • Delete src/ui/dashboard.ui.ts (1342 lines of inline HTML/CSS/JS).
  • Remove the dashboardHtml import from gastown.worker.ts.

Files

  • src/gastown.worker.ts — line 191
  • src/ui/dashboard.ui.ts — entire file (1342 lines)

Impact

Low security risk (Cloudflare Access protects the worker), but unprofessional — the debug dashboard is the landing page of the production worker.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P0Blocks soft launchP1Should fix before soft launchbugSomething isn't workinggt:coreReconciler, state machine, bead lifecycle, convoy flowkilo-auto-fixAuto-generated label by Kilokilo-triagedAuto-generated label by Kilo

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions