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

I2741

Merged work the plan has not recorded is drift, and on the trunk past a window it is red

Where it stands

devtask.issue
Readiness
blocked 1 of its dependencies is not DONE
Status
BLOCKED
Can start
not now
Milestone
Milestone status
ACTIVE
Wave
1
Waiting on
Holds back
Behind it in all
1
Evidence
0 of 2
In the waySubjectDetail
issueI2740I2740 is not DONE
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 I2741

majordomus plan verify I2741

majordomus plan done I2741

What it is

Objective
Add plan.drift over plan.delivery with the classes merged_not_recorded, active_without_work and done_without_trace (advisory), and a gate scripts/ci/plan-drift-check that refuses merged_not_recorded older than a window declared in .ai/repo/ci/plan.yaml on the trunk, naming majordomus plan verify|done <id>.
Why
ADR 0166 decision 2. Nothing compares declared status with merged work; the drift is what made the public roadmap a parallel universe.
Now
No drift report exists between an issue's stamps and its delivery.
Wanted
majordomus plan drift [--json] lists every contradiction with its proof; the gate runs in validate, reports PENDING on a head and inside the window, and refuses past it; a missing or unreadable window refuses.
Done when
unknown: the record declares no `completion`
Risk
unknown: the record declares no `risk`

Acceptance

  • A READY issue whose merged pull request names it is reported merged_not_recorded with the pull request and merge commit
  • The trunk's gate refuses it past the window and passes it inside the window, naming the settling command
  • done_without_trace never refuses
Validation
cargo test --manifest-path apps/majordomus-cli/Cargo.toml --test plan_driftbash test/run.sh 3101_merged_work_unrecorded_is_drift
Evidence required
drift_casemutations_fail_the_case
Evidence present
unknown: the record carries no `evidence` entries

Scope

Touches
apps/majordomus-cli/src/capability/builtin/plan.rsapps/majordomus-cli/src/planapps/majordomus-cli/tests/plan_drift.rsscripts/ci/plan-drift-check.ai/repo/ci/plan.yaml.ai/repo/ci/README.md.github/workflows/validate.yml.ai/repo/automation/inventory.jsonldocs/PLANNING.mdtest/cases/3101_merged_work_unrecorded_is_drift.sh
Not
unknown: the record declares no `non_scope`
Depends on
Priority
p0
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-16
Updated
2026-10-16
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

Nothing is wrong with these records.