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

I0701

Reproduce the misattribution as an executable case

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
Behind it in all
3
Evidence
1 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 I0701

majordomus plan verify I0701

majordomus plan done I0701

What it is

Objective
Write a behavioural case in which two workers share one checkout — one starts a task, the other records a decision — and assert what happens today, so that the defect stops being an anecdote and becomes something a command demonstrates.
Why
This was found by three sessions colliding in one evening, which is a story rather than a test. A characterisation case is what makes the fix provable and what turns the eventual behaviour change red if it regresses.
Now
decision, checkpoint and question resolve the active task from .majordomus/state/current.yaml. Nothing in test/cases exercises a second worker writing while somebody else's task is active.
Wanted
A case runs the sequence in a disposable repository, asserts that the record is attributed to the active task rather than to the worker that wrote it, and says in a comment that this is the gap being characterised rather than the behaviour being blessed.
Done when
unknown: the record declares no `completion`
Risk
A characterisation test that pins the wrong behaviour is a trap unless the comment saying so is unmissable; that comment is the whole safety mechanism.

Acceptance

  • The case starts a task, then records a decision as a second worker, and reaches an entry in decisions.md
  • It asserts the current attribution explicitly and marks it in a comment as the gap, not the goal
  • It covers checkpoint and question as well as decision, or says why they are out of its reach
  • It runs in a disposable repository like every other case
Validation
bash test/run.sh
Evidence required
gap_reproduced
Evidence present
gap_reproduced

Scope

Touches
test/cases
Not
Any change to lib/decision.sh, lib/checkpoint.sh or lib/question.sh
Depends on
none
Priority
p1
Profile
debugging
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-09-04
Updated
2026-10-15T00:48:23Z
Started
2026-10-15T00:47:59Z
Verified
unknown: the record declares no `verified_at`
Completed
2026-10-15T00:48:23Z

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.