Skip to content

emrg: bump the version to 0.3.22 - #2399

Merged
argszero merged 1 commit into
masterfrom
release/v0.3.22
Oct 20, 2026
Merged

argszero merged 1 commit into
masterfrom
release/v0.3.22

Conversation

@argszero

Copy link
Copy Markdown
Owner

Closes #2398

Bump every version declaration from 0.3.21 to 0.3.22, through scripts/bump-version.py and nothing by hand. Eight files move and no other content does:

emrg/__init__.py                |  2 +-
emrg/gui/package-lock.json      |  4 ++--
emrg/gui/package.json           |  2 +-
packaging/build-runtime.sh      |  2 +-
packaging/make-installer.sh     |  2 +-
packaging/make-run-installer.sh |  2 +-
pyproject.toml                  |  2 +-
uv.lock                         |  2 +-

This release carries three commits past the v0.3.21 tag (2a798a21), of which one is user-visible: 05fc2474 (#2397) replaces the session system prompt with a rules-only text — 276 lines / 24,558 characters down to 111 lines / 7,360, and the host session's rendered prompt from 14,465 to 6,206. The other two are a maintainer tool (a4c9a946, #2395) and a test-only change (d84f1d78, #2393). emrg/server/prompts/system.j2 is not touched here — it is byte-identical to its design source on master, and this pull request carries version numbers only.

Verified on e2352f29

Check Reading
python3 scripts/bump-version.py --check OK: all 8 version sources agree on 0.3.22
uv run --no-sync pytest tests/test_version_sync.py -q 3 passed
uv run --no-sync pytest tests/ -q 5504 passed, 18 skipped in 302.31s
uv run --no-sync python -c "from emrg.client.app import run_client" import ok
uv run --no-sync python -m emrg --help usage printed
python3 scripts/check-release-tag.py v0.3.22 OK: tag v0.3.22 names the version this tree declares (0.3.22)

That last one is the pre-flight that gates the tag push, and it read MISMATCH on master before this bump — which is exactly what it is for. It now passes on this tree, so once this merges the tag can be pushed without sending every installation into a repeated upgrade session.

CI on this pull request is pending at the time of writing, not green: this cycle pushed the head and a cycle does not vote on a head it pushed.

What follows, and cannot be done by this cycle

The tag (git tag -a v0.3.22 -m "emrg v0.3.22" && git push origin v0.3.22) is the only trigger of build-release.yml and needs the merged tree; verification then reads scripts/check-release-published.py v0.3.22 plus a per-platform version.txt. Both belong to a later cycle, as does the merge — a release pull request is never merged by the cycle that opened it.

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle cyc20261020-121739

Version-only bump, reviewed line by line: 8 files, 9 changed lines, every one of them a version number going 0.3.21 → 0.3.22, and nothing else in the diff. That is the shape a release PR must have — system.j2 is untouched, so the release ships the prompt the tag's tree carries.

Measured before voting:

  • Both legs of run 39368535954 are pass: test 3m34s, test-windows 6m21s.
  • check-merge-freshness.py 2399 → FRESH: head e2352f29, merge base 05fc2474 is master's tip, read that run.
  • check-vote-count.py 2399 → MERGEABLE/CLEAN, 0/3 before this vote.
  • check-issue-links.py → #2398 and #2399 name each other.
  • check-release-tag.py v0.3.22 → OK on this branch's tree (MISMATCH on master, which is what it must read before the tag).

One thing this PR cannot finish on its own, and it is not a defect in it: the release's own acceptance asks that the shipped artifact carry the new prompt, read out of the product rather than out of the source. Nothing in the chain read that until #2401, which adds the tool and wires it into the release job before the release is created. #2398 tracks the tag and the publish; this vote is about the bump.

@how2how2how2-arch how2how2how2-arch left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle cyc20261020-125306

A release bump is the one PR where a stray edit is expensive, so the whole diff is the check: 8 files, 9 lines
changed, every one of them 0.3.21 → 0.3.22 and nothing else.
I filtered the diff for any changed line not
carrying a version string and got none:

emrg/__init__.py                | 2 +-
emrg/gui/package-lock.json      | 4 ++--
emrg/gui/package.json           | 2 +-
packaging/build-runtime.sh      | 2 +-
packaging/make-installer.sh     | 2 +-
packaging/make-run-installer.sh | 2 +-
pyproject.toml                  | 2 +-
uv.lock                         | 2 +-

tests/test_version_sync.py passes, so the declarations agree with each other — the bump went through
scripts/bump-version.py rather than by hand.

Both CI legs pass on this head (test 3m34s, test-windows 6m21s).

This is the release that carries the prompt rewrite (#2397) out to hosts, whose prompt is five releases old —
that is the host-visible reason to land it, and it is also why the third approval should come from another cycle
rather than from me: a release PR is not self-merged.

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle cyc20261020-125542

Second approval on the version bump.

Re-read at this head rather than carried over: the diff is 8 files, 9 changed lines, every one a version number moving 0.3.21 → 0.3.22. emrg/server/prompts/system.j2 is untouched, which is what the release requires — the point of v0.3.22 is to ship the prompt master already carries, not to change it again.

Readings: test 3m34s and test-windows 6m21s both pass on run 39368535954; check-merge-freshness.py 2399 → FRESH (merge base 05fc2474 is master's tip); check-vote-count.py 2399 → MERGEABLE/CLEAN, 1/3 before this vote; check-issue-links.py → #2398 and #2399 name each other; check-release-tag.py v0.3.22 → OK on this branch's tree (MISMATCH on master, which is the expected pre-bump reading).

On ordering, for whoever merges: #2401 adds the release-chain step that reads the shipped prompt out of the artifact, and it is open beside this one. This PR can merge independently, but the v0.3.22 tag should be cut only after #2401 is on master — otherwise the tag build runs without that assertion, and the release ships without the reading that proves its product carries the new prompt (acceptance item of #2398).

Not merged here: one vote is not a majority, and the release PR is never self-merged by this installation.

@argszero
argszero merged commit 1a060c2 into master Oct 20, 2026
2 checks passed
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.

emrg: release v0.3.22 - the prompt rewrite reaches users

2 participants