Roadmap

task-plus is the tooling for the development method (method) and the software maturity ladders (maturity): the manual owns the definitions, this repo the commands and checks. The work is a set of named epics, each a list of open issues labelled roadmap; a story cites the item it serves, and an item leaves for the changelog once its issue is closed (tp roadmap check keeps the file and the forge in step; docs/roadmap.md).

Release workflow

tp release from a committed tree to a published, deployed version, failing before anything is public rather than after.

  • #46 Custom step ordering of the release.
  • #79 tp release takes a green commit status on HEAD in place of running the checks locally (CI on push, with #51)

Development method tooling

The method's artifacts — issues, stories, ADRs, roadmap — scaffolded and checked by tp.

  • #48 tp adr — number, scaffold, supersede.
  • #49 tp roadmap check across every local checkout at once: a sweep (the dashboard, or tp repos) reporting the roadmaps that no longer pass.
  • #62 tp family — map, bump and sweep the module family across local checkouts. map draws a build's dependency graph as d2: one node per repository of ours with the version the build selected (go list -m all), one edge per requirement (go mod graph), a requirement older than the selected version drawn as a lag; gobank's internal/family (v0.40.0) is the seed and moves here so each project's docs:build calls tp family map instead of carrying the code. bump takes the latest release of every module of ours in each module of the repo (go get …@latest restricted to our hosts, then tidy). sweep walks the local checkouts in work order (leaves first, as the dashboard's deps page orders them), runs bump and the project's checks in each, and stops at the first repo that needs a release: the release train that clears the lags. Out of scope: third-party bumps (a slower, changelog-reading story), go.work or replace across checkouts (the laptop build would differ from the tagged build). Open: where the work order comes from — the dashboard computes it across repos from their go.mod files, tp would read the local checkouts' — and whether sweep runs tp release itself or hands over at each stop

Software maturity

The manual's two ladders — code flow 0–2, deployment 0–4 — declared in task-plus.yml and enforced by tp; docs/maturity.md here will document only the checks, linking back.

  • #51 Code level 2: tp check confirms branch protection on main and a CI config that runs the check task on pull requests.
  • #52 Deploy level 2: tp release records downtime per upgrade from the post_release deploy's report. First consumer: gobank at ADR-0002 stage 2.

Ongoing support

Fixes and small corrections to shipped behaviour: each one an issue, a changelog entry and, while open, a line here; no story.

Secrets

The Bitwarden session behind tp unlock and tp secrets, per machine.

Beyond one repository

  • #53 Monorepo support.
  • #54 Additional deploy providers.