Skip to content

feat: a shipped-bundle caller — the one app whose bundle ships as committed bytes - #3

Merged
ddespinoza merged 1 commit into
mainfrom
feat/shipped-bundle
Oct 24, 2026
Merged

ddespinoza merged 1 commit into
mainfrom
feat/shipped-bundle

Conversation

@ddespinoza

Copy link
Copy Markdown
Contributor

What

shipped-bundle: true, a new input of the shared release workflow, for the one kind of caller that needs it: side_menu (instalador #38), seeded from upstream's AGPL 6.0.1 tarball because its source is unreachable, with no build manifest of its own — its js/ bundle is vendored bytes, not something the release builds.

  • scripts/pack-app.sh keeps the committed-bundle refusal as the default and adds the named exception: SHIPPED_BUNDLE=1 accepts a committed js/ bundle and still refuses a package.json beside it, because a buildable app builds instead of shipping. Deterministic packing, the tag/version check, the signature.json refusal and signing are untouched.
  • .github/workflows/app-release.yml carries the input down to the pack step.

Evidence

  • pack-app.sh --self-test: 27 checks, 0 failed (two new arms: a shipped bundle packs and ships; a package.json refuses it).
  • shellcheck clean; actionlint clean.

Instalador #38 rides this; its caller pins the SHA this PR lands on main.

Assisted-by: pi:glm-5.3

…mitted bytes

side_menu (instalador #38) is seeded from upstream's AGPL 6.0.1 tarball
because its source is unreachable, so it carries no build manifest of its
own: its js/ bundle is vendored bytes, not something the release builds.
The packer refused any committed js/*.js — the right default, kept — and
gains the one exception, named by the caller: `shipped-bundle: true` makes
the workflow set SHIPPED_BUNDLE=1, which accepts the committed bundle and
still refuses a package.json beside it, because a buildable app builds
instead of shipping. Deterministic packing, the tag/version check, the
signature.json refusal and signing all stay exactly as they are.

- scripts/pack-app.sh: the bundle rule and its exception, one branch; two
  self-test arms (a shipped bundle packs and ships; a package.json refuses
  it) — 27 checks OK.
- app-release.yml: the shipped-bundle input, documented at the top with the
  one caller it exists for; actionlint clean.

Assisted-by: pi:glm-5.3
@ddespinoza
ddespinoza merged commit 6fa99e3 into main Oct 24, 2026
4 checks passed
@ddespinoza
ddespinoza deleted the feat/shipped-bundle branch October 24, 2026 17:12
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