Skip to content

ci: release and publish each framework module on its own version - #131

Merged
wolfy-j merged 1 commit into
masterfrom
ci/per-module-releases
Sep 22, 2026
Merged

wolfy-j merged 1 commit into
masterfrom
ci/per-module-releases

Conversation

@wolfy-j

@wolfy-j wolfy-j commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Cause

Framework modules are versioned independently on the hub (facade 0.6.40, llm 0.5.0, relay 0.3.15, ...), but the release setup had one repository version: publish.yml published every module at the repository tag through wippyai/action-module-release, a repository that no longer exists. The v0.5.0 publish failed for all 14 modules, and would have regressed facade and views had the action existed.

Change

  • release-please-config.json: 14 packages (src/<module>), component tags (llm-v0.5.1), per-module CHANGELOG.md, one combined release PR, last-release-sha at the v0.5.0 release commit so earlier history is never released again.
  • .release-please-manifest.json: seeded with the versions published to the hub today from v0.5.0.
  • release.yml: CI checks, then release-please with the wippy-releases app token (release PRs keep running CI), then a matrix over released paths: check out the component tag, install wippy via the verified setup-wippy action (copied from dataflow), dry-run, then wippy publish --version <released version> with release notes from the module changelog.
  • publish.yml removed; Makefile publish-all removed (manual publishing documented for recovery).
  • Module wippy.yaml files stay version-less: the version comes from the release manifest. Declaring version: in a module that test apps replace locally makes the runtime resolver reject the pinned lock version ("manifest version mismatch"), so every bump would break dependent test apps.
  • check-manifests also verifies every module is registered in both release-please files.
  • ci.yml: callable from release.yml; master pushes run it through the release workflow.

Required before the next release

The repository has no WIPPY_TOKEN secret (dataflow has its own). Publishing fails with an explicit error until it is set:

gh secret set WIPPY_TOKEN -R wippyai/framework

Verification

make check-manifests, make run-tests, make run-lint pass; wippy publish --version <manifest version> --dry-run packs all 14 modules.

Every module is a release-please package with its own version, tag and
changelog, seeded from the versions on the Wippy hub. A release publishes
each released module to the hub with wippy publish at the released
version. The single repository version and publish.yml, which used a
removed action and published every module at the repository tag, are
replaced.
@wolfy-j
wolfy-j merged commit 2764c9d into master Sep 22, 2026
21 checks passed
@wolfy-j
wolfy-j deleted the ci/per-module-releases branch September 22, 2026 19:03
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