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
I1998
A health command in an unsupervised repository does not exit 0
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
1of1
Moves
plan.transitionWhat it is
- Objective
- Make `majordomus doctor`, `session list` and the other read-only commands exit with the missing-artifact code when the repository has no .ai/manifest.yaml, so a caller can tell a healthy repository from one the tool is not installed in.
- Why
- Run by majordomus 0.14.0 on prismatic-platform's main branch on 2026-10-08, which has no layer, `majordomus doctor` and `majordomus session list` each printed only 'no .ai/manifest.yaml ... (run: majordomus init)' and exited 0. A script or an agent that runs doctor as its health check reads that as healthy. The Rust executable already answers the same state with exit 12 and the start directory named; the shell tool disagrees with it.
- Now
- The shell tool's read-only commands print the missing-manifest line and exit 0 outside a supervised repository.
- Wanted
- Outside a supervised repository every command that reports on the layer exits 12 with the line it prints today. Commands whose purpose is to work there — init, version, help — are unchanged.
- Done when
- unknown: the record declares no `completion`
- Risk
- unknown: the record declares no `risk`
Acceptance
- doctor and session list in a git repository with no .ai/manifest.yaml exit 12 and name the missing file
- init, version and help in the same repository exit 0
- The shell tool and the Rust executable exit with the same code for the same missing layer
- Validation
bin/majordomus plan validateMJ_TEST_JOBS=4 bash test/run.sh <the case this issue adds>- Evidence required
unsupervised_exit_code_case- Evidence present
unsupervised_exit_code_case
Scope
- Touches
bin/majordomuslibdocs/CLI.mdtest/cases- Not
- unknown: the record declares no `non_scope`
- Depends on
- unknown: the record declares no `depends_on`
- Priority
- p2
- 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-08
- Updated
- 2026-10-14T11:15:00Z
- Started
- 2026-10-14T11:14:53Z
- Verified
- unknown: the record declares no `verified_at`
- Completed
- 2026-10-14T11:15:00Z
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.