Skip to content

chore(release): 0.2.1, cut by the merge - #10

Merged
fcsouza merged 2 commits into
mainfrom
chore/release-0.2.1
Sep 13, 2026
Merged

fcsouza merged 2 commits into
mainfrom
chore/release-0.2.1

Conversation

@fcsouza

@fcsouza fcsouza commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

Two things: the 0.2.1 version bump, and the workflow change that makes the merge cut the release.

Why the release exists

Documentation only. No code that runs in Foundry changed since 0.2.0: the only files under scripts/ since that tag are tests, and those do not ship.

module.json points readme at a path inside the module folder, so Foundry reads the README out of the installed package. The zip on the current release carries the old one: no screenshots, headings written for developers, and a macro example that throws when pasted because it declares the same name twice.

Why the workflow changes

Releasing meant remembering to push a tag by hand. Now a push to main whose package.json version has no tag yet builds the zip, creates the tag and opens the release. A version that is already tagged does nothing, so every other merge is a no-op and a re-run is harmless.

The v* trigger stays for what the merge cannot cover: re-cutting a release that failed halfway, and tagging an older commit. A tag pushed by this workflow does not start a second run, because GitHub does not trigger workflows on its own token.

Typecheck and the unit tests now run before the build. CI covers every pull request; this covers what is about to be handed to people.

Checked

The version resolution ran locally in all four paths:

Case Result
push to main, package.json 0.2.1, tag absent version=0.2.1 skip=false
push to main, version already tagged skip=true, nothing runs
push of tag v0.2.1 version=0.2.1 skip=false
tag v1.0.0; touch /tmp/pwned refused, exit 1, nothing executed

pnpm run build produces settings-vault-0.2.1.zip. The manifest inside reads "version": "0.2.1", and README.md, docs/vault-window.png and docs/updates-window.png sit at the package root.

Lint, typecheck and the 40 unit tests are green.

What happens when this merges

The workflow sees 0.2.1 with no tag, runs typecheck and the tests, builds, pushes v0.2.1 and opens the release with the zip and the manifest attached. Nothing to do by hand.

Documentation only. No code that runs in Foundry changed since 0.2.0.

The zip on the current release carries the old README: no screenshots, and a
macro example that throws when pasted. Foundry points at that README from the
manifest, so what ships in the package is what people read.
A push to main whose package.json version has no tag yet builds the zip,
creates the tag and opens the release. A version already tagged does nothing,
so every other merge is a no-op and a re-run is harmless.

The v* trigger stays for what the merge cannot cover: re-cutting a release that
failed halfway, and tagging an older commit. A tag pushed by this workflow does
not start a second run, because GitHub does not trigger workflows on its own
token.

Typecheck and the unit tests run before the build. CI covers every pull
request; this covers what is about to be handed to people.
@fcsouza fcsouza changed the title chore(release): 0.2.1 chore(release): 0.2.1, cut by the merge Sep 13, 2026
@fcsouza
fcsouza merged commit 5a19b39 into main Sep 13, 2026
1 check passed
@fcsouza
fcsouza deleted the chore/release-0.2.1 branch September 13, 2026 23:48
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