Skip to content

The install command this project advertises is fetched and run from the published site on every push to the default branch, and the branch is red while it does not install a working tool

Every document here shows one line to a stranger:

guaranteed Deterministic and blocking. Implemented, and a behavioural test proves it.

The line is run as it is written, pipe included, on Linux and macOS, into a home directory of the run's own. It proves the metadata resolves, the tool reports the version that was resolved, the MCP launcher runs with no toolchain, and a repository can be initialised. A release proves the same thing once at publication; this keeps proving it afterwards.

What it means

Every document here shows one line to a stranger:

curl -fsSL https://majordomus.dev/install.sh | sh

That line is fetched and run — as it is written, pipe included — on Linux and on macOS, against what GitHub Pages and GitHub Releases are serving at that moment, on every push to the default branch and on the weekly schedule. The tool it installs must report the version the metadata resolved, serve MCP with no toolchain present, and initialise a repository. While any of that is untrue, the default branch is red.

How it works

scripts/ci/install-check is the gate installer-live in .ai/repo/ci/gates.yaml, job install. It states no address of its own: the installer's URL, the metadata's URL and the command line itself are read from site/data/registry/distribution.json, the generated projection of share/distribution.yaml.

No path class selects it, which is deliberate. Every other gate answers a question about this tree, and a changed path is evidence about which of those answers could have moved. This one answers a question about a deployment, and no change to a tree can move it — so it runs in the full plan: a push to the default branch, the schedule, a dispatch, and a pull request labelled ci:full.

It installs into a home directory of its own under TMPDIR and removes it, so it neither reads nor writes the machine it runs on.

How to see it

scripts/ci/install-check                    # against the published site, right now
bash test/run.sh 97_install_gate            # the gate itself, against a local fixture

What it does not cover

It proves the advertised command works on the two platforms it runs on. The other four supported targets are proved once each, at publication, by the release pipeline's smoke phase — cross-built targets have no runner to install on.

It is a check on a deployment, so it cannot be green before the first release is published, and it says exactly that rather than passing quietly.

Why it exists

Because the failure it catches happened, and nothing caught it. A tagged release failed in its build phase on one platform, so nothing was published; the cause was fixed on the default branch the same evening and the tag was never cut again. For a day and a half the advertised command answered every reader with "no stable release is published yet", while every gate over the tree was green — correctly, because no gate over a tree can see the site. A promise made in the present tense needs a check in the present tense.

Detail rendered from docs/claims/advertised-install-command-works.md.

Provenance

defined in
read it on this site · docs/DISTRIBUTION.md
implemented in
scripts/ci/install-check
proved by
test/cases/97_install_gate.sh
claim id
advertised-install-command-works

Verify it yourself

The test runs in a disposable temporary repository and asserts the behaviour, not a string in the source.

from a clone of the repository
bash test/run.sh 97_install_gate

Where this claim is used

responsibilities it covers