mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
A whitelist or priority entry was a role name and nothing else, so a run could not ask for "this variant, on swarm, behind the onion". It either covered everything the role offers or waited for the rotation to come around to the combination that broke. An entry is now a token that may carry the axes, either as web-app-x#0,2@swarm+tor or as the job label pasted straight back out of the run that failed. What a token leaves open still belongs to the line it stands in: priority covers every remaining combination in one sweep, whitelist keeps the rotation and its position in the matrix. A pin the row cannot take aborts the matrix rather than dropping the row, because a dropped row reports a green run for a combination that never ran. The onion state spells out as +clearnet, not as a -tor suffix: svc-net-tor would otherwise read as role svc-net on the clearnet. Chunk membership still follows the discovery ranking, which is what decides who makes the budget cut, but the rows inside a chunk are sorted by display name, variant, mode and onion state, so a chunk's job list reads like the plan table instead of like the sweep's rotation. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
GitHub Workflow Helpers 🔧
This directory holds the shell helpers that GitHub Actions workflows under .github/workflows/ call. Helpers are grouped by responsibility into subfolders so each workflow file pulls only from the clusters it actually needs.
Subfolders 🗂️
| Subfolder | Responsibility |
|---|---|
| runner/ | Host-runner hygiene around image builds and deploys (disk, swap, Docker daemon, diagnostics). |
| cancel/ | Cancellation of in-progress workflow runs on PR-close and branch-delete events. |
| cleanup/ | Scheduled repository maintenance that prunes stale GitHub resources. |
| resolve/ | Derivation of structured workflow inputs and outputs from repository state. |
| sync/ | Ref synchronization before workflow jobs derive CI scope from git history. |
| update/ | The scheduled Update: Versions pipeline (version bumps and PR open/refresh). |
| release/ | Release-time gates that decide whether a tagged commit may be released. |
A new helper MUST live in the subfolder that matches its responsibility. New responsibilities MAY motivate a new subfolder, but MUST NOT flatten back into the top level.
For the workflow catalog see workflows.md. For the repository Make target index see make.md.