ci: enforce wix gateway proxy in all workflows - #247
Conversation
Routes every npm-registry fetch in this repo's CI through the Wix npm embargo gateway, ported from base44-dev/vite-plugin#105. All jobs run on ubuntu-latest; the action is byte-identical to the vite-plugin/apper copy. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Superseded by #248, which carries this commit unchanged plus a follow-up porting base44/cli#597. The reason for rolling them together rather than stacking: the Thanks @dorraba — your gateway commit is unmodified in #248. GitHub won't let me add you as a reviewer (not a collaborator on this repo), so flagging it here: a look over #248 would be welcome. |
What
Routes every npm-registry fetch in this repo's CI through the Wix npm embargo gateway — the same Shai-Hulud supply-chain protection already merged in base44-dev/apper#19112, base44-dev/vite-plugin#105, base44/cli#592, and the rest of the org rollout. All jobs run on
ubuntu-latest, so the action, CA cert, and checker are ported byte-identical from vite-plugin/apper..github/actions/wix-gateway-proxy(+ gateway CA cert): pinsregistry.npmjs.orgto the gateway in/etc/hosts, trusts the gateway CA system-wide, exportsNODE_EXTRA_CA_CERTS/DENO_TLS_CA_STORE.sparse-checkout: .githubbootstrap inmanual-publish.yml(its token-generation step precedes its checkout).check-wix-proxy.yml+ checker script + tests: CI fails if any job — present or future — skips the action. Verified locally: 10/10 jobs.wix-gateway-proxy-check.yml(manual dispatch) for connectivity debugging.Why this repo
CI installs npm dependencies on every PR (
lint,unit-tests,security-audit,preview-publish) and publishes the public@base44/sdkpackage withNPM_TOKEN— the package ships into every Base44 user app, the same profile that motivated the vite-plugin and cli ports.Publish flows: both
npm publishsteps (manual-publish.yml,preview-publish.yml) are preceded by an Unpin npm registry for first-party publish step — the gateway refuses versions younger than its cooldown, including the version the job just built. All installs before it stay gatewayed.Stays gatewayed by design:
npm install -g npm@11in both publish flows — if that npm release is younger than the cooldown the job fails until it ages, which is the embargo working as intended.Watch item:
security-audit.ymlrunsnpm audit, which POSTs to the registry's bulk-advisory endpoint through the pinned gateway. If the gateway doesn't proxy that endpoint, the weekly audit will fail loudly — dispatch it once after merge to confirm.Verification
lint,unit-tests,security-audit,preview-publish) runs installs through the gatewayCheck Wix Gateway Proxypassesdry_run=trueWix Gateway Proxya required status check🤖 Generated with Claude Code