feat(templates): unify What's new into the plugin-release pipeline#14
Merged
Conversation
Implements spec/plan 0006. Closes the dogfood gap from 0005: an automated release tagged + published but never refreshed the README "What's new". Root causes (feedback 0006): - A GITHUB_TOKEN-created Release does not fire release: published workflows (GitHub suppresses token events to prevent recursion), so a release-triggered whats-new could never run after an automated release. - The old whats-new.yml pushed straight to a ruleset-protected main, which rejects direct pushes. Fix - the plugin-release template now owns the whole pipeline: - whats-new.yml triggers on workflow_run of the Release workflow (fires regardless of how the release was made), reads the released version's notes via gh, and lands the README headline through an auto-created, self-squash-merged PR. Job-scoped contents+pull-requests: write, SHA-pinned checkout, release body via env only. - One canonical, dependency-free whats-new.sh with neutral <!-- whats-new:start/end --> markers, so Trellis and Spectra run the same one. - whats-new.test.sh (10 checks, sh + dash) wired into ci.yml. Trellis re-adopts: functional whats-new.yml/whats-new.sh swapped to the owned versions, README markers migrated, owned-list extended, 0005 architecture/features corrected, feedback + learnings recorded. Bumped to 0.4.1 so the pipeline refreshes the README end-to-end. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
Author
Review notePersona sub-agents are still stalling on infra, so I reviewed inline across the four facets. No blockers.
|
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.
Implements spec/plan 0006. Closes the dogfood gap from 0005: the automated
0.4.0release tagged + published but the README "What's new" never refreshed.Root cause (feedback 0006)
GITHUB_TOKEN-created Release does not firerelease: publishedworkflows (GitHub suppresses token-made events to prevent recursion) - so a release-triggered whats-new never ran after the automated release.whats-new.ymlpushed straight to a ruleset-protectedmain, which rejects direct pushes (it had been failing every release).Fix - the template now owns the whole pipeline
whats-new.yml(owned): triggers onworkflow_runof theReleaseworkflow (fires regardless of how the release was made), reads the released version's notes viagh release view, and lands the README headline through an auto-created, self-squash-merged PR. Job-scopedcontents+pull-requests: write, SHA-pinned checkout, release body viaenv:only.whats-new.sh(owned): one canonical, dependency-free script with neutral<!-- whats-new:start/end -->markers, so Trellis and Spectra run the same one.whats-new.test.sh(10 checks,sh+dash) wired intoci.yml.Trellis re-adoption (dogfood)
Functional
whats-new.yml/whats-new.shswapped to the owned versions; README markers migrated; owned-list extended; 0005architecture.md/features.mdcorrected; feedback + learnings recorded. Bumped to0.4.1so the pipeline refreshes the README end-to-end on merge.Testing
whats-new.test.sh10/10,bump-version.test.sh22/22,check-compliance.test.sh20/20 (sh+dash);bump-version.sh --checkclean across 7 manifests; dogfood diff (installed == owned) clean; compliance clean; exactly one README marker pair.🤖 Generated with Claude Code