When github.action_ref is not a semver tag (e.g. main), skip binary
download and run vociferate directly via 'go run ./cmd/vociferate' from
the action's own source directory (GITHUB_ACTION_PATH). A conditional
Setup Go step installs the toolchain only on that path.
When pinned to a semver tag (v*), the existing prebuilt binary download
and cache behaviour is unchanged.
This makes the prepare-release workflow self-contained on main — it no
longer requires a published release to bootstrap itself.
Add two focused subdirectory composite actions:
- prepare/action.yml: downloads the vociferate binary, runs it to update
changelog and release-version, then commits, tags, and pushes — replacing
the boilerplate git steps consumers previously had to write inline.
- publish/action.yml: extracts the matching changelog section and creates or
updates the Gitea/GitHub release. Outputs release-id, tag, and version so
consumers can upload their own assets after it runs.
Simplify the vociferate workflows to use ./prepare and ./publish directly,
validating both actions in the self-release pipeline.
Update README to show the clean two-action usage pattern.