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

I2731

Every failure class in the published failure table names its test or its stated limitation

Where it stands

devtask.issue
Readiness
ready no dependency and no gate holds it; nobody has started it
Status
READY
Can start
startable
Milestone
Milestone status
ACTIVE
Wave
0
Waiting on
none
Holds back
none
Behind it in all
0
Evidence
0 of 1
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 I2731

majordomus plan verify I2731

majordomus plan done I2731

What it is

Objective
Give the runtime's published failure table a proof column, in which every failure class names the tests that drive it or states the limitation that nothing does, and hold the column with a case that refuses a row with neither and a citation that does not resolve.
Why
Leaf FV.3 of 2026-10-15 found the milestone's evidence token failure_class_table owned by no issue: docs/MCP.md's 'Failure behaviour' table said what each failure does and nothing about what shows it, docs/DEVELOPMENT_RUNTIME.md had no such table, and no case refused a row with no proof. The runtime baseline audit of 2026-10-09 (master 1fb8d6be44) named classes no test drives: disk full, a read-only journal directory, a frozen worker, a kill between lease creation and its first write. A table of behaviours with no proof column reads as a list of guarantees.
Now
docs/MCP.md 'Failure behaviour' has a proof column over 28 failure classes: 23 cite tests under apps/majordomus-cli/tests/ or cases under test/cases/, and 5 state a limitation (a frozen request handler, a full disk, a read-only mesh journal directory, a kill between lease creation and its first write, a failing lease keep-alive write). The read-only journal row names PRs #1179 and #1196 (I2706, case 3052) as pending; on this tree no test drives it. docs/DEVELOPMENT_RUNTIME.md points at the table. Case 3056 refuses a row with neither a resolvable citation nor a reasoned limitation, a citation of a test function or case file the tree does not hold, a limitation with no reason, and a table without its proof column.
Wanted
The published failure table has no row without a test or a stated limitation, and a case refuses one; a limitation row is replaced by a citation when a test for its class lands.
Done when
unknown: the record declares no `completion`
Risk
unknown: the record declares no `risk`

Acceptance

  • Every row of the 'Failure behaviour' table in docs/MCP.md names a test or case this tree holds, or a limitation with its reason
  • Case 3056 fails on a row with neither, on a cited test function or case file that does not exist, and on a table without its proof column
Validation
bin/majordomus plan validatebash test/run.sh 3056_every_failure_class_names_its_proof
Evidence required
failure_class_table
Evidence present
unknown: the record carries no `evidence` entries

Scope

Touches
docs/MCP.mddocs/DEVELOPMENT_RUNTIME.mdtest/cases
Not
Writing the missing tests themselves (disk full, a frozen handler, a kill between lease creation and its first write, a failing keep-alive write); each is its own issue when takenReadiness and request deadlines, which I2157 and I2156 ownJournal durability, which I2706 delivers in PRs #1179 and #1196
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-15
Updated
2026-10-15
Started
unknown: the record declares no `started_at`
Verified
unknown: the record declares no `verified_at`
Completed
unknown: the record declares no `completed_at`

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

LevelCodeMessageReproduce
WARNscope_conflictshares test/cases with I2734; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2740; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2742; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2747; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2760; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2786; they may not run concurrentlymajordomus plan validate