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

I1990

The pre-push check judges the refs being pushed, or says why the checkout's task binds them

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
1 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 I1990

majordomus plan verify I1990

majordomus plan done I1990

What it is

Objective
Decide whether `finish --check` in the pre-push hook should read the refs git passes on stdin and judge only those carrying the active task's branch, and implement or document the decision.
Why
In OSCILLA, pushing branch X from a checkout whose task is on branch Y fails with different_context, so feature branches were pushed from the main checkout as a workaround. Binding a task to its branch is coherent with one task per checkout and one branch per worktree; the hook ignoring which refs are pushed is the part nobody decided.
Now
lib/finish.sh ignores the hook's stdin; mj_validate_state compares the checkout's branch with the task's.
Wanted
The decision recorded (decision or ADR) and the hook's behaviour matching it, with a case.
Done when
unknown: the record declares no `completion`
Risk
unknown: the record declares no `risk`

Acceptance

  • Pushing a ref other than the task's branch is judged by the recorded rule, proven by a case
Validation
bin/majordomus plan validateMJ_TEST_JOBS=4 bash test/run.sh <the case this issue adds>
Evidence required
prepush_refs_casedecision_recorded
Evidence present
decision_recorded

Scope

Touches
lib/finish.shshare/skeletondocs/CLI.mdtest/cases
Not
unknown: the record declares no `non_scope`
Depends on
unknown: the record declares no `depends_on`
Priority
p3
Profile
deep-work
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-04
Updated
2026-10-14T23:19:09Z
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 I1997; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares lib/finish.sh with I1999; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2059; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares docs/CLI.md with I2114; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2282; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2410; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2411; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares share/skeleton with I2412; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2413; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2653; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2713; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2714; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2716; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2717; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2718; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares docs/CLI.md with I2720; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2723; they may not run concurrentlymajordomus plan validate
WARNscope_conflictshares test/cases with I2731; they may not run concurrentlymajordomus plan validate
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