With skip-labeling: true, release-please couldn't find its own PRs
on subsequent runs (it searches by the autorelease: pending label).
This prevented it from updating the PR body when new commits landed.
With skip-changelog: true, release-please didn't update the PR body
when new commits landed because the tree SHA was unchanged (no
changelog file to diff). Re-enabling changelogs means each new commit
produces different changelog content, forcing release-please to update
both the branch and PR body.
Closing the release PR before release-please runs prevented
release-please from recognizing the PR on merge, so it never created
GitHub Releases or tags. The close-reopen approach is incompatible
with release-please's PR tracking.
Keep cancel-in-progress: true for rapid-succession merges and the
release-merge detection for skipping validate. Accept that the PR
body may be stale -- GitHub Releases get correct changelogs at merge
time regardless.
release-please defaults to walking 500 commits and 400 releases on
every run, making each API call per-commit. With ~20 commits between
releases, this wastes ~2 minutes on unnecessary GitHub API calls.
When a release PR merges, the validate step would fail on version drift
that the release PR itself introduced, blocking release-please from
creating tags and GitHub Releases. Detect release PR merges by commit
message prefix and skip validate + stale-close steps so release-please
runs unimpeded.
- Remove plugin version fields from marketplace.json -- canonical
versions live in each plugin's plugin.json. Duplicating them created
drift that release-please couldn't maintain.
- Remove version sync logic from metadata.ts (description sync kept)
- Fix release-preview test to compute expected versions dynamically
from current manifests instead of hardcoding them
release-please skips updating the PR body when it finds an existing PR,
causing the changelog to miss commits that landed after the PR was
created. Fix by closing the stale PR before release-please runs so it
always creates a fresh PR with the full changelog.
Also set cancel-in-progress: true so rapid successive merges don't
race to create the PR with partial commit history.
Beta skills now use disable-model-invocation: true to prevent accidental
auto-triggering. Descriptions written as future stable descriptions with
[BETA] prefix for clean promotion. Updated solutions doc and AGENTS.md
promotion checklist to include removing the field.
- Beta plans use -beta-plan.md suffix to avoid clobbering stable plans
- Fix internal references in beta skills to use beta names consistently
- Add beta skills section to AGENTS.md with promotion checklist
Create separate beta skills instead of gating existing ones. Stable
ce:plan and deepen-plan are restored to main versions. Beta skills
reference each other and work standalone outside lfg/slfg orchestration.
- Surface deferred implementation questions and scope boundaries
- Use per-unit Patterns and Verification fields for task execution
- Add execution strategy: inline, serial subagents, or parallel
- Reframe Swarm Mode as Agent Teams with opt-in requirement
- Make tool references platform-agnostic
- Remove plan checkbox editing during execution
Restructures ce:plan around a decisions-first philosophy:
- Replace issue-template output with durable implementation plans
- Add blocker classification gate for upstream requirements (R11-R13)
- Replace MINIMAL/MORE/A LOT with Lightweight/Standard/Deep
- Add planning bootstrap fallback with ce:brainstorm recommendation
- Remove all implementation code, shell commands, and executor litter
- Make SpecFlow conditional for Standard/Deep plans
- Keep research agents, brainstorm-origin integration, and handoff options
- Restore origin doc completeness checks, user signal gathering,
research decision examples, filename examples, stakeholder awareness,
and mermaid diagram nudges from the old skill