ci: replace release-please with flywheel - #29
Merged
Conversation
SPEC.md predates the notation contract: headings carried numeric ordinals, none carried a §spec: slug, and status lines appended provenance the contract does not allow. Renames every ## heading to `Title §spec:slug`, drops the ordinals, and reduces the status lines to the three permitted values. The provenance they carried moves to a `Delivered in ...` line rather than being lost. No prose changes. 23 governance errors to 0. Nothing referenced the old numbering, so this is the cheapest moment to do it — a slug is a permanent address, and every later reference would have had to move.
Converges this repository on the release tooling used by the other projects maintained alongside it. Removed: release-please.yml, release-please-config.json, .release-please-manifest.json, auto-merge-release.yml, and ci.yml. Added: .flywheel.yml plus flywheel-pr.yml and flywheel-push.yml. The action is SHA-pinned, not tagged: it receives a GitHub App private key, and a floating tag would let its repository repoint that credential at new code without review. ci.yml becomes quality.yml with the job id `quality`, the context the ruleset registers. It stays a single job because it is a single setup — splitting analyze, format and test would pay for the Dart SDK and libudev three times for no extra signal. The Flywheel classify step guards each step rather than the job, so a release commit skips the work while the check still reports success; a job-level skip would report nothing and leave a pull request pending forever. governance-lint.yml is new, calling the notation contract at @notation--v0 with the `library` profile. It emits `governance / lint`, the second required context. release_files keeps pubspec.yaml current, which release-please owned under its `dart` release type. Tags change shape from hidapi-vX.Y.Z to vX.Y.Z; nothing consumes the old form, since this package is not auto-published.
repentsinner
marked this pull request as ready for review
September 1, 2026 01:56
repentsinner
disabled auto-merge
September 1, 2026 17:22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
replace release-please with flywheel
Changes
docs
ci
Increment type: none
Target branch: main
Status: ✅
flywheel:auto-merge—ciis in auto_merge list formainQuality checks: see required status checks for live state.