Skip to content

chore: record the completed adoption, drop content-build, and cut the README's history lessons - #19

Merged
toastygm merged 3 commits into
mainfrom
chore/record-adoption-complete
Sep 2, 2026
Merged

chore: record the completed adoption, drop content-build, and cut the README's history lessons#19
toastygm merged 3 commits into
mainfrom
chore/record-adoption-complete

Conversation

@toastygm

@toastygm toastygm commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

chore: drop every content-build reference

Four in README.md, one in the shared release workflow's comments and one in
actions/todos. Each named a repository that no longer figures in how anything
here is built, so each was a pointer readers would follow to nothing.

Nothing is annotated as gone — the references are simply removed, and the points
they were making are kept. The intro now describes one build toolchain rather
than two split by what they read. The release workflow still explains why
version-script must stay a single command, stated as the mechanism —
changeset receives the second command's flags and rejects them — instead of by
citing where it once happened. actions/todos still explains why it formats its
own findings rather than taking a dependency to do it.

Verified: no occurrence remains anywhere in the repository, actionlint is
clean and todos.mjs parses.


chore: record that all six repositories have adopted

The adoption section described a migration that had not started: a numbered
order to work through, and a signal to watch for. All six now call this
workflow, so the file was describing a state it has left.

Replaced with the outcome and the two things worth keeping from it — why the
order was what it was, and what actually proved the workflow, since the first
release run is the only one that could. With changesets pending, a correct
outputs['has-changesets'] and a stale one both skip the decision step, so only
the no-changesets-left case distinguishes them; harn-adventures cutting v0.0.1
is that case, and the re-run that declined to cut it again is the other half.

Also records how to verify a caller — parse it and assert the job carries no
steps of its own, rather than reading it, since a half-migrated file looks
right at a glance.

And the finding adoption turned up, which was not its point: three of the six
had a red build:noci that no CI job ran, because the release workflow was the
only thing that executed it and only at release time. That is why two of the six
have never cut a release. A gate that runs only at release time is not a gate.


Tom Rodriguez added 2 commits September 1, 2026 17:35
The adoption section described a migration that had not started: a numbered
order to work through, and a signal to watch for. All six now call this
workflow, so the file was describing a state it has left.

Replaced with the outcome and the two things worth keeping from it — why the
order was what it was, and what actually proved the workflow, since the first
release run is the only one that could. With changesets pending, a correct
`outputs['has-changesets']` and a stale one both skip the decision step, so only
the no-changesets-left case distinguishes them; harn-adventures cutting v0.0.1
is that case, and the re-run that declined to cut it again is the other half.

Also records how to verify a caller — parse it and assert the job carries no
`steps` of its own, rather than reading it, since a half-migrated file looks
right at a glance.

And the finding adoption turned up, which was not its point: three of the six
had a red `build:noci` that no CI job ran, because the release workflow was the
only thing that executed it and only at release time. That is why two of the six
have never cut a release. A gate that runs only at release time is not a gate.
Four in README.md, one in the shared release workflow's comments and one in
`actions/todos`. Each named a repository that no longer figures in how anything
here is built, so each was a pointer readers would follow to nothing.

Nothing is annotated as gone — the references are simply removed, and the points
they were making are kept. The intro now describes one build toolchain rather
than two split by what they read. The release workflow still explains why
`version-script` must stay a single command, stated as the mechanism —
`changeset` receives the second command's flags and rejects them — instead of by
citing where it once happened. `actions/todos` still explains why it formats its
own findings rather than taking a dependency to do it.

Verified: no occurrence remains anywhere in the repository, `actionlint` is
clean and `todos.mjs` parses.
@toastygm toastygm changed the title chore: record that all six repositories have adopted chore: record the completed adoption, and drop every content-build reference Sep 2, 2026
827 lines to 707, with no fact removed that changes what a reader would write.
The test applied throughout: does knowing this change what you would do? If not,
it went.

What went:

- **Twelve near-identical YAML blocks**, six per shared workflow. Repetition is
  not information: one worked example and a table of what each caller passes
  says the same thing, and says it in a form you can scan.
- **Two of the three "why this is an Action" essays.** All three answered the
  same question from different directions, and the answer is a rule, not a
  history: a job moves as a reusable workflow, a step as a composite action, and
  CI code that wants nothing but a token stays an action rather than becoming an
  npm package. Stated once now.
- **The adoption narrative**, which described a migration that is over. What
  survives is how to verify a caller and the one durable lesson — a gate that
  runs only at release time is not a gate.
- **Incident retellings.** The NXDOMAIN outage is not the point; the point is
  that registering a Pages custom domain does not write its DNS record, that the
  record step must stay separate from the domain step, and that an existing
  record pointing elsewhere is a warning rather than an overwrite. Those are now
  stated as constraints that survive tidying, which is what they are for.

What deliberately stayed: every input table, every constraint that changes what
you would write (`min-pages` required in content mode, homepage mode's one-page
licensing boundary, the two token permissions, the load-bearing workflow
filename), the standing rule about output names, and the git hook that carries
the no-attribution pattern and cannot move here — the one thing in that section
that tells you to go and edit a second file.
@toastygm toastygm changed the title chore: record the completed adoption, and drop every content-build reference chore: record the completed adoption, drop content-build, and cut the README's history lessons Sep 2, 2026
@toastygm
toastygm merged commit 94b6f32 into main Sep 2, 2026
2 checks passed
@toastygm
toastygm deleted the chore/record-adoption-complete branch September 2, 2026 00:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant