Skip to content

GitHub Pages is a signed bootstrap anchor for the mesh, never its signalling channel

GitHub Pages is a signed bootstrap anchor for the mesh, never its signalling channel

majordomus://adr/adr-0203proposed mesh-runtimechatgpt-project

it references

referenced by

Nothing in the layer names it. Backlinks are derived, so an empty list is an answer rather than an omission.

203. GitHub Pages is a signed bootstrap anchor for the mesh, never its signalling channel

Context

On 2026-10-16 the owner asked whether Pages can serve as serverless discovery. Pages is static and cannot accept writes; the GitHub API is rate limited and unsuited to heartbeats.

Decision

Pages carries a signed manifest of hub identities and public reachability hints, with the trust root delivered independently, canonical serialisation, a monotonic sequence and an expiry; a node falls back to its last valid copy. Discovery is hierarchical (existing mesh, local cache and multicast, the manifest, rendezvous) tried in parallel with bounded attempts. Once linked a node needs Pages for nothing.

Alternatives rejected

  • Pages plus GitHub API polling as signalling
  • A custom rendezvous server as the only path
  • A fixed try-one-to-five order

Consequences

I3188; private addresses never enter the manifest (I3176).

Sources

Promoted on 2026-10-18 from the owner's ChatGPT project (workspace chatgpt-majordomus, issue I3100). The owner has not accepted it; it is proposed for the owner's decision.

  • chatgpt-majordomus:c282#2

Where this comes from

canonical file
.ai/repo/adrs/0203-github-pages-is-a-signed-bootstrap-anchor-for-the-mesh-never-its.md
identity
adr-0203
also served as
MCP resource majordomus://adr/adr-0203 · majordomus entity show adr/adr-0203 · GET /api/v1/entity?uri=majordomus://adr/adr-0203
in the Cockpit
/cockpit/objects/adr/adr-0203

This page is generated from the file above by scripts/generate-site-data; editing the page changes nothing, editing the file changes every surface. The relations above are edges of docs/generated/graph.json, which the executable writes from the same index.

Searches the titles and descriptions of every page this site publishes.