Skip to content
Cockpit0.29.0
A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live

I2162

A released archive, installed, serves a foreign repository over the shared server in CI

Where it stands

devtask.issue
Readiness
complete completion is recorded and every required evidence token is present
Status
DONE
Can start
not now
Milestone
Milestone status
ACTIVE
Wave
0
Waiting on
none
Holds back
none
Behind it in all
0
Evidence
2 of 2
A move writes the repository: it stamps one field of this issue's record and appends one event to the ledger, and a commit will carry both.
The same moves from a terminal

majordomus plan start I2162

majordomus plan verify I2162

majordomus plan done I2162

What it is

Objective
Make the install check and the release smoke start a shared server from the installed binary in a fresh repository that is not this one, and stop the smoke from swallowing the launcher's failure.
Why
The release smoke checks the version and init only, and swallows the launcher's failure with majordomus-mcp --help >/dev/null 2>&1 || true (.github/workflows/release.yml:452), while docs/DISTRIBUTION.md describes the smoke as installing the release. scripts/ci/install-check runs majordomus-mcp --standalone --repo $ROOT against this repository (scripts/ci/install-check:176). The suite's adopter cases (test/cases/90_mcp_shared_server.sh, apps/majordomus-cli/tests/external_extension.rs) use the checkout's binary. Nothing starts a shared server from an installed release in a foreign repository. Pack M10 asks for injection into a separate minimal foreign repository. Baseline audit of 2026-10-09 at master 1fb8d6be44, failure gap 9 and drift 9.
Now
An installed release is proven to print its version and run init, not to serve.
Wanted
install-check, and the release smoke on the published archive, init a temporary foreign repository, start majordomus-mcp without --standalone, run initialize and tools/list over stdio, and read /api/v1/ready and the repository id of the server it started; no smoke step ends in || true.
Done when
unknown: the record declares no `completion`
Risk
unknown: the record declares no `risk`

Acceptance

  • The release workflow fails when the installed launcher cannot start, proved by a fixture archive whose launcher exits non-zero
  • install-check starts a shared server from the installed binary in a fresh repository and reads its readiness and a repository id that differs from this repository's
  • No step of the release smoke ends in || true
Validation
bin/majordomus plan validateMJ_TEST_JOBS=4 bash test/run.sh 85_installer 87_release_pipelineMJ_TEST_JOBS=4 bash test/run.sh <the case this issue adds>
Evidence required
installed_release_serves_foreign_repo_casesmoke_fails_on_launcher_failure_case
Evidence present
installed_release_serves_foreign_repo_casesmoke_fails_on_launcher_failure_case

Scope

Touches
scripts/ci/install-check.github/workflows/release.ymlsite/static/install.shtest/casesdocs/DISTRIBUTION.md
Not
unknown: the record declares no `non_scope`
Depends on
none
Priority
p1
Profile
implementation
Parallel safe
true
Owner
unknown: the record declares no `owner`

The work so far

Branches
none
Merged
none
Commits
0
Trunk
master
Sessions
none
Created
2026-10-09
Updated
2026-10-14T08:02:17Z
Started
2026-10-14T08:02:09Z
Verified
unknown: the record declares no `verified_at`
Completed
2026-10-14T08:02:17Z

Synchronisation

Adapter
scripts/github-sync
Repository
unknown: the derived plan's header carries no repository
External issue
unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
State there
unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it

Findings

Nothing is wrong with these records.