Skip to content

a-second-adopter-is-served — A second adopter is served: what a foreign repository met on its first day is fixed in the tool

Each finding is fixed generically, with no test of whether the repository is this one: by a declaration, a derivation or a default that an adopter can state. Each fix carries a case that fails without it, its derived files regenerated and its page of the documentation corrected.

VERIFY 4 of 4 issues done

ready
0
blocked
0
active
0
verify
0
done
4
cancelled
0

Problem

Majordomus 0.21.0 and 0.22.0 were adopted on 2026-10-13 in a repository that shares nothing with this one: pnpm and TypeScript, vitest, pull requests into an integration branch, Docker Compose on two machines, no tags. Twenty-four findings were recorded (docs/ADOPTION_SECOND_RUN.md). Twenty-two are still present on master e506c041a4; most are a constant, a path or a vocabulary of this repository read as if it were every repository's.

Outcome

Each finding is fixed generically, with no test of whether the repository is this one: by a declaration, a derivation or a default that an adopter can state. Each fix carries a case that fails without it, its derived files regenerated and its page of the documentation corrected.

Scope

  • lib
  • apps/majordomus-cli/src
  • share
  • docs
  • test/cases

Out of scope

  • The adopting repository itself: it is the evidence, read only
  • I1982 and I1996 of adopter-upgrades, which I2597 and I2587 widen rather than replace
  • Accepting any ADR these issues propose; acceptance is the owner's act

Acceptance criteria

  • Every issue of this milestone is DONE or CANCELLED with its reason
  • No fix decides by the identity of the repository it runs in

Validation

  • bin/majordomus plan validate
  • scripts/derive-check

Evidence required

  • findings_recorded

Issues

Each one is an execution contract with its own acceptance criteria, validation command and required evidence. The wave column is the layer of the dependency graph it sits in.

issuestatuswavedepends ontitle
I2601 DONE 0 — majordomus evidence reaches record, stamp and show
I2987 DONE 0 — server.status and peers.list ask every checkout at once, a bounded number at a time
I2993 DONE 0 — doctor counts the work no remote holds in one walk, whatever the number of branches
I2995 DONE 0 — doctor does no work whose answer cannot change a finding: the roadmap lookups and the board's wide status

The graph

a-second-adopter-is-served dependency graphfrom .ai/repo/project
flowchart LR
    I2601["I2601<br/>majordomus evidence reaches record, stamp and show"]:::done
    I2987["I2987<br/>server.status and peers.list ask every checkout at once, a bounded number at a time"]:::done
    I2993["I2993<br/>doctor counts the work no remote holds in one walk, whatever the number of branches"]:::done
    I2995["I2995<br/>doctor does no work whose answer cannot change a finding: the roadmap lookups and the board's wide status"]:::done
    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:2px

Canonical record: .ai/repo/project/milestones/a-second-adopter-is-served.yaml. Read it back with majordomus plan show a-second-adopter-is-served.

Searches the titles and descriptions of every page this site publishes.