Skip to content

rig 3.25.0

Choose a tag to compare

@github-actions github-actions released this 29 Sep 19:25
e043132

Add "Say it once" to what rig believes (#195)

Adds principle 10 to docs/philosophy.md:

A copy is a promise to keep two things in step, and nothing keeps it. [...] Deleting a copy beats checking it, and checking beats trusting it.

Three steps in a row came back to it:

  • The adversarial review of #190 found the org doc described seven ways across the tool.
  • #191 added a test holding the six lists of the data root's contents together.
  • #194 deleted the list of lesson homes in rig next's offer instead of checking it.

A lesson from the rig work for #185, carried here through the philosophy home that #194 added. Docs only, so the docs/ branch asks for no release.

Small fixes: help never acts, impact, catalog, demo, new --type (#225)

Small fixes: help never acts, impact, catalog, demo, new --type

Tickets: #199, #147, #134

Direction

Four stacked stages on the rig repo, each small and reviewed on its own, in this order:

  1. fix/help-never-acts (#199): --help/-h on any command prints that command's usage and exits 0 without acting. The per-command usage is cut out of the one rig help text, so there is one source. A flag a command's usage does not name is refused with that usage, exit non-zero, before anything runs — if that check proves wide, ship --help alone and report the rest.
  2. fix/impact-catalog-demo (#147): rig impact says "keeps happening" only for a count above one; rig catalog --verbose reads a bare-string talks_to item as buildGraph does; rig demo (and list/dash if they share it) reads records through readRecords/sayUnreadable, so one unreadable work.json is named, not a stack trace.
  3. fix/new-type-prefixes (#134): rig new --type is checked against the prefixes bin/release.mjs exports, and the refusal names them. perf joins PREFIX_BUMPS as a patch, by Hugo's decision: a performance change is visible to users, so it releases.
  4. fix/test-leak-and-engines (part of #154, items 4 and 5): a failed billingInstall removes its temp dir; engines requires the Node the suite needs.

Why not more: #154's other items belong to other works, and moving the test helpers out of test/ is deliberately left for later.

Stages

Order Stage Delivers Repos PR State
1 fix/help-never-acts help on any command prints its usage and never acts; an unknown flag is refused rig #204 landed
2 fix/impact-catalog-demo impact counts what it saw, catalog reads a bare talks_to item, demo names an unreadable record rig #207 landed
3 fix/new-type-prefixes rig new refuses a --type the release check would refuse, and names the list rig #209 landed
4 fix/test-leak-and-engines a failed billingInstall leaves no temp dir; engines asks for the Node the suite needs rig #214 landed

Context doc: https://github.com/hugoforte/rig-data/blob/main/work/small-fixes/context.md

Full changelog: v3.24.0...v3.25.0