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
I2742
A milestone's version is inferred from the release that carried it, never typed
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
- Behind it in all
1- Evidence
0of1
Moves
plan.transitionWhat it is
- Objective
- Remove version from the milestone schema and the eight records that carry it, refuse a record that carries one, and derive released_in for a milestone as the first v* tag containing the merge of its last accepted issue (unreleased while open), in both the awk and the Rust engines' output; rewrite the vendored roadmap-integrity rule and its validator to match.
- Why
- ADR 0166 decision 3. version is typed by hand: 0.1 to 1.0 on eight milestones written before releases existed, two of them 0.5, out of rank order, beside a product at v0.27.0.
- Now
- lib/project.awk:359 and plan.rs:289 emit the raw field; site/templates/roadmap.html filters on it; lib/doctor.sh mj_validate_roadmap checks a README table against it.
- Wanted
- No version field anywhere in .ai/repo/project/milestones; plan.roadmap and roadmap.json carry released_in with its tag; the README roadmap table and its validator use released_in.
- Done when
- unknown: the record declares no `completion`
- Risk
- unknown: the record declares no `risk`
Acceptance
- plan validate refuses a milestone record carrying version
- A milestone whose last issue's merge is contained in v0.27.0 reads released_in v0.27.0; an open one reads unreleased
- The awk and Rust engines agree (case 99)
- Validation
bin/majordomus plan validatebash test/run.sh 49_roadmap_integrity 99_engines_agree 3102_a_milestone_version_is_inferred- Evidence required
version_inferred_case- Evidence present
- unknown: the record carries no `evidence` entries
Scope
- Touches
.ai/repo/project/milestonesshare/schemasshare/allowlib/project.awklib/project.shlib/plan.shlib/doctor.shapps/majordomus-cli/src/plan.rs.ai/repo/rules/vendor/majordomus/rules/roadmap-integrity.v1.mdshare/standard/majordomus/rules/roadmap-integrity.v1.mdREADME.mddocs/PLANNING.mdsite/data/generateddocs/generatedtest/cases/49_roadmap_integrity.shtest/cases/3102_a_milestone_version_is_inferred.sh- Not
- unknown: the record declares no `non_scope`
- Depends on
- none
- 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.