landing-survives-any-session — Landing green work survives any session, any restart and any machine
Landing green work on master never waits on a person or on one session staying alive.
PLÁNOVÁNO 0 z 6 úkolů hotovo
- připraveno
- 2
- blokováno
- 4
- aktivní
- 0
- verify
- 0
- hotovo
- 0
- zrušeno
- 0
Problém
On 2026-10-22 a machine restart ended the landing seat, the release seat and the loop that landed green trains; the executor that exists, majordomus prs drain, had merged nothing since 2026-10-11, its trail and lease were one clone's, and the auto-mode classifier refused every landing a session tried. Green work waited for hours until the owner fast-forwarded master by hand.
Výsledek
Landing green work on master never waits on a person or on one session staying alive.
Aktuální stav
Landing is a loop inside one session reading a queue file in one home directory; prs drain lands one pull request at a time with a merge commit and keeps its audit trail in .git/majordomus/integration/events.jsonl of one clone; a seat whose holder died stays vacant; standing approvals live in one machine's ~/.claude/settings.json; train order lives in ~/.cache/mj-a3.
Cílový stav
Každé kritérium záměru nese zde některý úkol a dokazuje ho jeho test.
Rozsah
- apps/majordomus-cli/src/integration
- apps/majordomus-cli/src/mesh
- apps/majordomus-cli/src/autonomy
- .ai/repo/rules/project
- docs/INTEGRATION.md
- docs/MESH.md
Kritéria přijetí
- Every landing on master, a combined top included, is a fast-forward made by majordomus prs drain; none is made by hand, by --admin or by a loop that lives in one session
- The executor reads its audit trail, its halt and its lease from origin, so a clone that takes over starts with the same verified count and the same halt, and a holder whose lease expired is refused before it lands
- A seat whose holder stopped beating is reported vacant within one expiry and offered to live sessions by capability, and the session that accepts it resumes from the newest handover for that seat
- The executor runs as a user service outside every agent session; an exit that is not a halt or a refusal is restarted, and a halt or refusal is not
- A standing approval of the owner is one dated, owner-attributed record in the repository, every machine says whether its settings carry it, and only the owner, interactively, writes it
- A combined top is composed by a typed command from members declared in a tracked train manifest, and two machines compose the same pre-derive tree from it
Validace
- bin/majordomus plan validate
- bin/majordomus intent validate
Požadované důkazy
- one_executor
- state_on_origin
- vacant_seat_is_taken
- survives_a_restart
- approvals_are_declared
- trains_are_composed
Úkoly
Každý z nich je prováděcí kontrakt s vlastními kritérii přijetí, validačním příkazem a požadovanými důkazy. Sloupec wave je vrstva grafu závislostí, v níž úkol leží.
| issue | status | vlna | závisí na | název |
|---|---|---|---|---|
| I3910 | PŘIPRAVENO | 0 | — | The integration executor fast-forwards master to every green head, a combined top included, and nothing else lands |
| I3911 | PŘIPRAVENO | 0 | — | The executor reads its audit trail, its halt and its lease from origin, so any clone continues it and a stale holder is refused |
| I3912 | BLOKOVÁNO | 2 | I3174, I3182, I3198 | A seat whose holder stopped beating is reported vacant and offered to live sessions by capability |
| I3913 | BLOKOVÁNO | 2 | I3910, I3911, I2722 | The executor runs as a user service outside every agent session, restarted after a crash and never after a halt |
| I3914 | BLOKOVÁNO | 1 | I3910 | A standing approval is one owner-attributed record in the repository, each machine reports whether it carries it, and only the owner writes it |
| I3915 | BLOKOVÁNO | 1 | I3910 | A combined top is composed by a typed command from members declared in a tracked train manifest |
Graf
flowchart LR
I3910["I3910<br/>The integration executor fast-forwards master to every green head, a combined top included, and nothing else lands"]:::ready
I3911["I3911<br/>The executor reads its audit trail, its halt and its lease from origin, so any clone continues it and a stale holder is refused"]:::ready
I3912["I3912<br/>A seat whose holder stopped beating is reported vacant and offered to live sessions by capability"]:::blocked
I3913["I3913<br/>The executor runs as a user service outside every agent session, restarted after a crash and never after a halt"]:::blocked
I3914["I3914<br/>A standing approval is one owner-attributed record in the repository, each machine reports whether it carries it, and only the owner writes it"]:::blocked
I3915["I3915<br/>A combined top is composed by a typed command from members declared in a tracked train manifest"]:::blocked
I3910 --> I3913
I3910 --> I3914
I3910 --> I3915
I3911 --> I3913
classDef done stroke:#16a34a,fill:#dcfce7,color:#14532d,stroke-width:2px
classDef active stroke:#2563eb,fill:#eff6ff,color:#1e3a8a,stroke-width:2px
classDef verify stroke:#7c3aed,fill:#f5f3ff,color:#4c1d95,stroke-width:2px
classDef ready stroke:#0891b2,fill:#ecfeff,color:#164e63,stroke-width:2px
classDef planned stroke:#0891b2,fill:#ecfeff,color:#164e63,stroke-width:2px
classDef blocked stroke:#b45309,fill:#fffbeb,color:#78350f,stroke-width:2px
classDef cancelled stroke:#6b7280,fill:#f9fafb,color:#374151,stroke-width:2px
classDef superseded stroke:#6b7280,fill:#f9fafb,color:#374151,stroke-width:2pxOdkazuje z tohoto diagramu (6)
- I3910 The integration executor fast-forwards master to every green head, a combined top included, and nothing else lands
- I3911 The executor reads its audit trail, its halt and its lease from origin, so any clone continues it and a stale holder is refused
- I3912 A seat whose holder stopped beating is reported vacant and offered to live sessions by capability
- I3913 The executor runs as a user service outside every agent session, restarted after a crash and never after a halt
- I3914 A standing approval is one owner-attributed record in the repository, each machine reports whether it carries it, and only the owner writes it
- I3915 A combined top is composed by a typed command from members declared in a tracked train manifest
Canonical record: .ai/repo/project/milestones/landing-survives-any-session.yaml. Read it back with majordomus plan show landing-survives-any-session.