Skip to content

Commit 9c5be4e

Browse files
committed
chore(release): prune BOOTSTRAP_PACKAGES after rc.1 first-publish bootstrap
The 2026-06-10 bootstrap run published all 9 first-publish names; Trusted Publishers are now bound, so the list empties. Add an empty-list guard: an empty BOOTSTRAP_PACKAGES previously built no --filter args, which would have fallen through to an UNFILTERED token publish of the whole workspace — now it fails loudly instead.
1 parent 580a8c5 commit 9c5be4e

1 file changed

Lines changed: 10 additions & 12 deletions

File tree

.github/workflows/rc-tag-release.yml

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -117,18 +117,16 @@ jobs:
117117
exit 1
118118
fi
119119
# Names that do not exist on npmjs yet — trusted publishing cannot create them (npm/cli#8544).
120-
# After this run succeeds: bind Trusted Publishers for each, then DELETE entries from this list.
121-
BOOTSTRAP_PACKAGES=(
122-
"@loop-engine/auth-iface"
123-
"@loop-engine/canonical-json"
124-
"@loop-engine/entitlements-iface"
125-
"@loop-engine/loop-status-client"
126-
"@loop-engine/runtime-core"
127-
"@loop-engine/runtime-db"
128-
"@loop-engine/runtime-routes"
129-
"@loop-engine/studio-client"
130-
"@loop-engine/studio-ui"
131-
)
120+
# After a bootstrap run succeeds: bind Trusted Publishers for each, then DELETE entries from
121+
# this list. The rc.1 bootstrap (2026-06-10) published the original 9; list is empty until
122+
# the next first-publish name arrives.
123+
BOOTSTRAP_PACKAGES=()
124+
if [ ${#BOOTSTRAP_PACKAGES[@]} -eq 0 ]; then
125+
echo "❌ BOOTSTRAP_PACKAGES is empty — nothing to bootstrap. Add the new package names"
126+
echo " to the list in rc-tag-release.yml before dispatching with token_bootstrap."
127+
echo " (Guard: an empty list must never fall through to an unfiltered token publish.)"
128+
exit 1
129+
fi
132130
FLAGS="--access public --no-git-checks"
133131
if [ "${{ inputs.dry_run }}" = "true" ]; then
134132
FLAGS="$FLAGS --dry-run"

0 commit comments

Comments
 (0)