One abstract step. An instance with a repository is rendered for
publication at its site address, and the address answers. How the
rendering is staged, committed and checked is the toolset's own subprocess
(its render-to-GitHub-Pages skill and diagram), so this skill stays a list
of checks. Owner, 2026-09-30: bootstrap is not to be overloaded with the
publication lifecycle.
The site is the vehicle, not the goal. The goal is the harness's JSON
Schemas and JSON-LD answering at the IRIs they name
(publish-documents, the primary step); a README
page for people rides along.
Where the README page lands. At <site address>README.html, and the site
address itself (index.html) is the landing page: by default a plain
redirect to README.html, so a Harness that wants a different front page puts
its own index.html or index.md at its root and changes nothing else
(owner, 2026-10-01: "the harness landing page at …/index.html is a redirect
to the README.html. Will make it easier for harnesses to change landing page
behaviour"). A page generated from the instance's files says so at its top,
and its footer points to what it was generated from, never to an editor for
the published copy: that copy is replaced on every publish.
The site address is the declaration's iriBase when it declares one,
otherwise https://<owner>.github.io/<repo>/. An address a declaration
names and that answers 404 is a broken promise, and every IRI minted under
it breaks with it.
initialization-steps)| step | done when |
|---|---|
site:workflow | a workflow commits the rendering onto gh-pages: one under the instance's own .github/workflows/, or one in the toolset that publishes it from outside. bootstrap carries none; its site is published from outside, so it names no toolset |
site:branch | a gh-pages branch exists. It must exist before Pages can be switched on (owner, 2026-10-01: "need to create gh-pages branch before can turn on"); where it does not, the step says how to create it (an orphan branch with a placeholder page) |
site:enabled | Pages is on, serving gh-pages at /. Switched on only by an authenticated forge CLI once the branch exists; otherwise the person gets the one step below |
site:live | the address answers 200, and so does its README page, README.html. 404 after Pages is on usually means the workflow has not run yet. A 403, 407, 5xx or no answer is about the way from here: could not determine, never done |
When site:enabled cannot be done here, it goes to the person through
human-agent-discussion, written so it can be
followed without opening anything else:
Open
https://github.com/<owner>/<repo>/settings/pages. Under "Build and deployment", set Source to Deploy from a branch, branchgh-pages, folder/ (root). It is free for a public repository. Then re-run the workflow that publishes the site from its Actions tab.
If Pages is already on but serves something else, do not switch it yourself: that changes how an existing site is built, so ask.
Never silent: a step that could not be checked is said to be unchecked.
Pages on a public repository, and the Actions minutes its workflow uses, are free. Nothing else is switched on.