Skip to content

Milestone template (spec-led)

_-prefixed: the spec guardrails ignore this file.

Name: the spec’s file name without .md (e.g. preview-surface). check_spec_milestones.py enforces that spec name = milestone name = test tag. GitHub matches milestone names CASE-INSENSITIVELY, so never create one differing only in case from another. Move issues by milestone NUMBER (gh api -X PATCH repos/dtubb/fichero/issues/<n> -F milestone=<number>).

Description (first line is what GitHub shows):

Spec: docs/contributor_manual/specs/<area>/<name>.md
Goal: <one sentence: what a person can do when this milestone is done>
Done when: every behaviour in the spec is [OK] or explicitly deferred with an issue;
UX and server both done; no open issue without a spec behaviour.

Hygiene: - Each open issue cites a behaviour in the spec, or is the task of writing one. - Close issues as they are fixed (Fixes #N plus scripts/close_fixed_issues.py --apply). - needs-your-test and needs-your-decision surface through scripts/maintainer_queue.py. - Legacy capitalised milestones (pre-spec buckets) are folded into spec milestones as their issues are touched; the ops buckets (Bugs, Lint, Ratchets, Performance, Testing Overhaul) stay as they are.