void 0.27.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/dist/{account-cmd-l-FM7Ioq.mjs → account-cmd-Ci00cncT.mjs} +5 -5
- package/dist/{agents-B_pX_HmQ.mjs → agents-CuNtT0D_.mjs} +5 -2
- package/dist/{application-analysis-DKy02UY0.mjs → application-analysis-D72ZQfMZ.mjs} +118 -135
- package/dist/{application-routing-DQyUh_5S.mjs → application-routing-Dy589Vgn.mjs} +1 -2
- package/dist/atomic-write-Dq6R0BPN.mjs +18 -0
- package/dist/{auth-Dn2vw-SG.mjs → auth-B6iOCjKI.mjs} +23 -56
- package/dist/{auth-link-vz9Z2kmG.mjs → auth-link-DWr6Afao.mjs} +10 -10
- package/dist/{auth-migrations-BwHgeEsD.mjs → auth-migrations-Cgs0k6lS.mjs} +28 -5
- package/dist/{auth-router-DvsCUVw4.mjs → auth-router-DP14wVkZ.mjs} +4 -4
- package/dist/auth-wn6F8dB8.mjs +2 -0
- package/dist/base64-DVrOndmI.mjs +16 -0
- package/dist/{better-auth-shared-CPvWD3nG.d.mts → better-auth-shared-B74NJIus.d.mts} +8 -13
- package/dist/{better-auth-shared-DPpj8zxc.mjs → better-auth-shared-CMXlZG7W.mjs} +56 -68
- package/dist/{build-cmd-D6we0VjO.mjs → build-cmd-Cr3FJxv0.mjs} +5 -5
- package/dist/{cache-CZRdzKx1.mjs → cache-D0Tt28cn.mjs} +5 -5
- package/dist/{cancel-deploy-CQ3NnMvf.mjs → cancel-deploy-CJKvk7AN.mjs} +4 -4
- package/dist/{cf-access-TWNzXltp.mjs → cf-access-BM9G0lhO.mjs} +4 -3
- package/dist/{cf-access-BcIBSKqG.mjs → cf-access-CWP4avfP.mjs} +3 -7
- package/dist/cf-build-output-2u583yJK.mjs +2 -0
- package/dist/{cf-build-output-DjvB_872.mjs → cf-build-output-Bc8i3dzE.mjs} +2 -2
- package/dist/cf-user-agent-ChjQp2MU.mjs +33 -0
- package/dist/cli/cli.mjs +198 -311
- package/dist/cli/cloudflare-operation-process.mjs +41 -15
- package/dist/cli/env-schema-probe.d.mts +5 -43
- package/dist/cli/env-schema-probe.mjs +14 -80
- package/dist/client-C1BjRn3g.mjs +2 -0
- package/dist/{client-DlDJuY0s.mjs → client-DM9Kcf4e.mjs} +161 -415
- package/dist/{cloudflare-auth-CuxfF6OA.mjs → cloudflare-auth-CqFBDo52.mjs} +12 -39
- package/dist/{cloudflare-cmd-lHqNlJGW.mjs → cloudflare-cmd-CTrn-lXJ.mjs} +6 -5
- package/dist/{cloudflare-config-BmhBv3HV.mjs → cloudflare-config-DV60XFFK.mjs} +16 -28
- package/dist/{cloudflare-connect-2G3rL2rP.mjs → cloudflare-connect-BosmCNlq.mjs} +3 -3
- package/dist/{cloudflare-operations-CwI1bChl.mjs → cloudflare-operations-BKdSfNBN.mjs} +26 -34
- package/dist/{cloudflare-operations-BlYLlowZ.mjs → cloudflare-operations-Ds-lX3Ts.mjs} +1 -1
- package/dist/{cloudflare-process-2-TfIEzB.mjs → cloudflare-process-CeDWJRhj.mjs} +12 -7
- package/dist/collect-NUlJMpLY.mjs +2 -0
- package/dist/{collect-DiTn9yr6.mjs → collect-xjffdCdk.mjs} +1 -1
- package/dist/{config-CSa15FvD.d.mts → config-7qoq2p9v.d.mts} +2 -2
- package/dist/{config-CLYAosnQ.mjs → config-BEm9vRvS.mjs} +11 -5
- package/dist/{config-DiowPT80.mjs → config-Bx_1SpnO.mjs} +87 -177
- package/dist/config-CNnrSMYm.mjs +2 -0
- package/dist/{config-DPByhVck.mjs → config-D0GY5ItR.mjs} +1 -1
- package/dist/config-entry.d.mts +1 -1
- package/dist/{connect-BfPBHHm-.mjs → connect-nukQSoEO.mjs} +8 -8
- package/dist/{create-project-BdXEFKal.mjs → create-project-D4APeBwX.mjs} +7 -7
- package/dist/{create-project-qFDC45zg.mjs → create-project-DL7YXpjj.mjs} +1 -1
- package/dist/{db-Xs80hcaA.mjs → db-27RztQLy.mjs} +173 -263
- package/dist/{delete-d2vuou3j.mjs → delete-BbsZFZIw.mjs} +5 -5
- package/dist/deploy-B06EQq4t.mjs +6009 -0
- package/dist/deploy-Db2ALnQP.mjs +3 -0
- package/dist/deploy-managed-static-CGswbcay.mjs +2277 -0
- package/dist/deploy-transport-BiicfoQW.mjs +180 -0
- package/dist/deploy.d.mts +10 -0
- package/dist/deploy.mjs +82 -0
- package/dist/dev-inbox-Rd6j_8vM.mjs +217 -0
- package/dist/discover-CTUiSsfG.mjs +2 -0
- package/dist/{discover-CkCYv9T_.mjs → discover-D2PGT63u.mjs} +2 -2
- package/dist/{dist-BVqXeR_h.mjs → dist-ipQi0Q8y.mjs} +2 -3
- package/dist/{domain-BsDUBAvt.mjs → domain-Bfq9n03H.mjs} +7 -22
- package/dist/{dotenv-BfU6eqFt.mjs → dotenv-CNazY3-w.mjs} +4 -16
- package/dist/{email-d_Aux1vM.mjs → email-BcjSyAL0.mjs} +4 -20
- package/dist/{email-_lGAHOhp.mjs → email-DIwaQU4P.mjs} +99 -191
- package/dist/email-cloudflare-CH053RxK.mjs +1096 -0
- package/dist/email-protocol-D9nTvhCp.mjs +82 -0
- package/dist/{entry-CMAkqBmU.mjs → entry-ehmBvs5w.mjs} +2 -2
- package/dist/{env-BxocywBB.mjs → env-BJjULvL0.mjs} +2 -2
- package/dist/{env-DMA3cXZt.mjs → env-BhdWMrNy.mjs} +2 -13
- package/dist/{env-C74QepDE.mjs → env-C6ipBLp3.mjs} +8 -8
- package/dist/{env-public-DR7ZM6d-.d.mts → env-public-CCdykygU.d.mts} +6 -23
- package/dist/{env-raw-jZpP5n47.mjs → env-raw-Cklzcde3.mjs} +3 -20
- package/dist/{env-types-CwXgeMgL.mjs → env-types-DS2_y4X8.mjs} +2 -2
- package/dist/{env-validation-CrVNjsPm.mjs → env-validation-CTn-HhG1.mjs} +1 -1
- package/dist/env-validation-cE0zcmzO.mjs +486 -0
- package/dist/{gen-DtkQhvQg.mjs → gen-CnN1Xidx.mjs} +131 -253
- package/dist/gen-F8pSZnhc.mjs +2 -0
- package/dist/{generate-GDbL7sUr.mjs → generate-Dat0UTry.mjs} +38 -4
- package/dist/generate-Rii9klHB.mjs +2 -0
- package/dist/generated-wrangler-config-DeWj5F9Y.mjs +18 -0
- package/dist/{github-cmd-DaDdBbSS.mjs → github-cmd-BdkU4Nhe.mjs} +27 -71
- package/dist/{handler-BHAn2fZJ.mjs → handler-BZ1t7-Rv.mjs} +2 -2
- package/dist/{handler-CNAwjRcW.d.mts → handler-_PqY82xe.d.mts} +1 -1
- package/dist/{headers-DlfR78Nu.mjs → headers-Di1FsD3e.mjs} +26 -81
- package/dist/{help-0bTe_lID.mjs → help-Bug7pyK_.mjs} +18 -10
- package/dist/help-s9q7LTcu.mjs +2 -0
- package/dist/{inbound-PfQDLXc5.mjs → inbound-DmkTQeWp.mjs} +71 -222
- package/dist/{inbound-CH5Mksyy.d.mts → inbound-brj2-TM5.d.mts} +19 -58
- package/dist/index.d.mts +2 -18
- package/dist/index.mjs +200 -496
- package/dist/{info-PYWwkWyt.mjs → info-CujPwtMe.mjs} +5 -5
- package/dist/{init-DaBGmaXC.mjs → init-ZWOJvc-Z.mjs} +179 -388
- package/dist/isr-config-DPjXM8J2.mjs +194 -0
- package/dist/{link-C6fjafep.mjs → link-UEc7bnF4.mjs} +8 -8
- package/dist/{list-BTFBlqKl.mjs → list-CuWeOnzk.mjs} +6 -17
- package/dist/{live-CgQuTpqD.mjs → live-BxLX-JqJ.mjs} +19 -17
- package/dist/{live-Du8jXwOW.d.mts → live-DJONVlQK.d.mts} +1 -1
- package/dist/load-user-env-DD5qveNU.mjs +49 -0
- package/dist/{local-d1-ga5O_idV.mjs → local-d1-BM3p74mm.mjs} +6 -6
- package/dist/{login-GKcNUmtI.mjs → login-CZ2Cqa-D.mjs} +11 -11
- package/dist/login-DhK7o1oJ.mjs +2 -0
- package/dist/{logs-BiMSULmc.mjs → logs-TihRcLTk.mjs} +5 -5
- package/dist/migrate-BgT-hmu8.mjs +2 -0
- package/dist/{migrate-NLsjBbuM.mjs → migrate-uFwojusJ.mjs} +69 -21
- package/dist/migration-handler-Cg0Y4EPu.mjs +470 -0
- package/dist/{migration-handler-DM4clYj5.d.mts → migration-handler-CwlEQUoo.d.mts} +17 -26
- package/dist/{mime-DxCznlJq.mjs → mime-srOklVVv.mjs} +92 -395
- package/dist/{node-DJicPvPj.mjs → node-DoKbo1SZ.mjs} +8 -24
- package/dist/{operator-args-DOBhIaIg.mjs → operator-args-UnE8Y2eK.mjs} +27 -26
- package/dist/{operator-auth-BEZ_u0Cz.mjs → operator-auth-Cr2zCc-J.mjs} +2 -2
- package/dist/{operator-client-DbDv4vtE.mjs → operator-client-C-ROjk1I.mjs} +4 -4
- package/dist/{operator-cmd-BT4hgavL.mjs → operator-cmd-C5lCctnc.mjs} +8 -8
- package/dist/operator-cmd-Cjk5DiRx.mjs +2 -0
- package/dist/{output-C50ag2r3.mjs → output-FNHKw5Ac.mjs} +36 -5
- package/dist/{package-json-DXfiT1jV.mjs → package-json-BjYqR-So.mjs} +1 -1
- package/dist/pages/client.d.mts +1 -1
- package/dist/pages/client.mjs +91 -5
- package/dist/pages/index.d.mts +1 -2
- package/dist/pages/index.mjs +6 -6
- package/dist/pages/islands-plugin.mjs +5 -83
- package/dist/pages/protocol.d.mts +2 -2
- package/dist/pages/protocol.mjs +1 -1
- package/dist/pages/serialize.mjs +1 -1
- package/dist/{platform-args-DUeXY9Om.mjs → platform-args-C6Mb_I3a.mjs} +34 -58
- package/dist/platform-args-Cm7x-fot.mjs +2 -0
- package/dist/{platform-auth-config-CkSx3usH.mjs → platform-auth-config-CJmNkFT2.mjs} +10 -11
- package/dist/{platform-auth-protection-BJimB_p9.mjs → platform-auth-protection-D5wvsI-Y.mjs} +36 -26
- package/dist/{platform-auth-recovery-BU6izFAU.mjs → platform-auth-recovery-D_0I3n-1.mjs} +8 -9
- package/dist/{platform-cmd-BbmJiq5O.mjs → platform-cmd-Cuj4oUVo.mjs} +1 -1
- package/dist/{platform-cmd-BbY1dWiM.mjs → platform-cmd-DxxZO6e5.mjs} +15 -15
- package/dist/{platform-discovery-DIYz8V63.mjs → platform-discovery-CHhNs8Nn.mjs} +1 -1
- package/dist/{platform-domain-CHVS6cV0.mjs → platform-domain-zLXnW1G_.mjs} +5 -5
- package/dist/{platform-lifecycle-DzCwqhFq.mjs → platform-lifecycle-DOW-wLfx.mjs} +1398 -2043
- package/dist/{platform-lifecycle-ByAlpkhV.mjs → platform-lifecycle-_gfnjUBr.mjs} +1 -1
- package/dist/{platform-management-CBOT4BSM.mjs → platform-management-CYrLvTGH.mjs} +1 -1
- package/dist/{platform-management-CuuVDhyt.mjs → platform-management-t7HKy4-U.mjs} +632 -124
- package/dist/{platform-plans-config-CN-heS4q.mjs → platform-plans-config-CNH6zbPX.mjs} +15 -11
- package/dist/{platform-recovery-CskSJgLh.mjs → platform-recovery-DeucI7A9.mjs} +6 -9
- package/dist/{platform-registry-Cjv2Qf0r.mjs → platform-registry-B9mWX9LO.mjs} +13 -18
- package/dist/{platform-setup-BBxRxmFC.mjs → platform-setup-CTf6MMT9.mjs} +19 -26
- package/dist/{plugin-inference-BlQbOL0P.mjs → plugin-inference-DsARdQKE.mjs} +18 -33
- package/dist/{prepare-Dq9hTIbo.mjs → prepare-C4zfwks4.mjs} +3 -3
- package/dist/{prepare-Do96654b.mjs → prepare-CSH9dKTI.mjs} +11 -13
- package/dist/prepare-dr9uxQSV.mjs +2 -0
- package/dist/{prerender-render-Ct20jftc.mjs → prerender-render-Bfsumdkv.mjs} +8 -2
- package/dist/prerender-render.d.mts +2 -0
- package/dist/prerender-render.mjs +2 -2
- package/dist/project-DiiOBZPF.mjs +2 -0
- package/dist/{project-cmd-DaoRrn-8.mjs → project-cmd-Dq75AXzy.mjs} +19 -19
- package/dist/{project-paths-GgcMozYz.mjs → project-paths-DMvEeSau.mjs} +9 -14
- package/dist/{project-BAm2aB6Q.mjs → project-rqDnVsJN.mjs} +8 -4
- package/dist/{project-team-Q_lCA7Io.mjs → project-team-B3_QcStG.mjs} +6 -6
- package/dist/{project-token-BArgK9o1.mjs → project-token-CvsRvv2I.mjs} +5 -5
- package/dist/{project-tsconfig-CVJhNMxs.mjs → project-tsconfig-bveqhlYA.mjs} +3 -5
- package/dist/{project-zero-trust-KO9Hu2Pq.mjs → project-zero-trust-D1ICiwN_.mjs} +5 -5
- package/dist/{protocol-BPZaNqBo.d.mts → protocol-4H7V_3Os.d.mts} +1 -1
- package/dist/{protocol-CfaUwNs8.mjs → protocol-RNP0u7UY.mjs} +9 -3
- package/dist/{provision-BfaLiWbj.mjs → provision-DDh7ITVS.mjs} +118 -865
- package/dist/{requests-C7Oeoh5u.mjs → requests-3CL3BuZh.mjs} +4 -4
- package/dist/resolve-project-B9Hr0D3n.mjs +2 -0
- package/dist/resolve-project-C_Cu7E8a.mjs +48 -0
- package/dist/{rollback-DVAtrLAl.mjs → rollback-Ce1d_0J9.mjs} +7 -17
- package/dist/{route-types-CbtsIeFn.mjs → route-types-IrBuwJ7u.mjs} +35 -70
- package/dist/routing-assets-VkrKIbxE.mjs +139 -0
- package/dist/{runner-9wjsSZx-.mjs → runner-B5huK2eC.mjs} +1 -1
- package/dist/{runner-DMBKSrRk.mjs → runner-DcVDrzuR.mjs} +7 -28
- package/dist/{runner-mysql-CEzKtmFb.mjs → runner-mysql-CCtyI0p6.mjs} +4 -3
- package/dist/runner-mysql-CaJq-hd6.mjs +2 -0
- package/dist/runner-pg-BJhFZZG4.mjs +2 -0
- package/dist/{runner-pg-DV8p_zjA.mjs → runner-pg-CPd-CB_F.mjs} +1 -1
- package/dist/runtime/ai.mjs +9 -22
- package/dist/runtime/better-auth-mysql.d.mts +2 -5
- package/dist/runtime/better-auth-mysql.mjs +6 -31
- package/dist/runtime/better-auth-pg.d.mts +2 -5
- package/dist/runtime/better-auth-pg.mjs +6 -32
- package/dist/runtime/better-auth.d.mts +2 -4
- package/dist/runtime/better-auth.mjs +9 -19
- package/dist/runtime/db.mjs +1 -1
- package/dist/runtime/durable.d.mts +16 -0
- package/dist/runtime/durable.mjs +26 -2
- package/dist/runtime/email/testing.d.mts +1 -1
- package/dist/runtime/email/testing.mjs +9 -23
- package/dist/runtime/email-protocol.d.mts +12 -0
- package/dist/runtime/email-protocol.mjs +2 -70
- package/dist/runtime/email.d.mts +1 -1
- package/dist/runtime/email.mjs +79 -221
- package/dist/runtime/env-public.d.mts +1 -1
- package/dist/runtime/env-public.mjs +12 -38
- package/dist/runtime/env.d.mts +1 -12
- package/dist/runtime/env.mjs +1 -1
- package/dist/runtime/handler.d.mts +1 -1
- package/dist/runtime/handler.mjs +1 -1
- package/dist/runtime/isr.mjs +1 -1
- package/dist/runtime/kv.mjs +1 -1
- package/dist/runtime/live-client.d.mts +1 -1
- package/dist/runtime/live-server.mjs +1 -16
- package/dist/runtime/live.d.mts +1 -1
- package/dist/runtime/live.mjs +1 -1
- package/dist/runtime/migration-handler-mysql.d.mts +2 -2
- package/dist/runtime/migration-handler-mysql.mjs +3 -2
- package/dist/runtime/migration-handler-pg.d.mts +2 -2
- package/dist/runtime/migration-handler-pg.mjs +1 -1
- package/dist/runtime/migration-handler.d.mts +2 -2
- package/dist/runtime/migration-handler.mjs +2 -470
- package/dist/runtime/queues.mjs +1 -1
- package/dist/runtime/remote/binding-handler.mjs +62 -62
- package/dist/runtime/remote/index.mjs +16 -77
- package/dist/runtime/routing.d.mts +1 -4
- package/dist/runtime/routing.mjs +82 -218
- package/dist/runtime/sandbox-container.d.mts +2 -2
- package/dist/runtime/sandbox-container.mjs +2 -2
- package/dist/runtime/sandbox.d.mts +2 -2
- package/dist/runtime/sandbox.mjs +13 -6
- package/dist/runtime/storage.mjs +1 -1
- package/dist/runtime/validator.d.mts +1 -1
- package/dist/runtime/ws-server.d.mts +2 -3
- package/dist/runtime/ws-server.mjs +6 -28
- package/dist/runtime/ws.d.mts +1 -1
- package/dist/{sandbox-container-Bo0eiFKz.d.mts → sandbox-container-ChQRum-j.d.mts} +3 -1
- package/dist/{sandbox-container-C6ItmVuN.mjs → sandbox-container-DBKIqDEK.mjs} +12 -1
- package/dist/{sandbox-C5LFoJMf.d.mts → sandbox-q3waMc2T.d.mts} +1 -1
- package/dist/{scan-C3uDzz6J.mjs → scan-C0BMdmEd.mjs} +84 -7
- package/dist/{secret-BvtB7IjY.mjs → secret-B5J8bBsI.mjs} +62 -80
- package/dist/{serialize-BPvnNQuA.mjs → serialize-BtQyaYoC.mjs} +10 -4
- package/dist/{skills-BgVMvQdy.mjs → skills-BJsan98C.mjs} +2 -2
- package/dist/{subcommand-prompt-BSlnD1fI.mjs → subcommand-prompt-gQ-NDA-u.mjs} +38 -43
- package/dist/sveltekit.mjs +1 -1
- package/dist/validate-C9xtFOYR.mjs +2 -0
- package/dist/{validate-C9qJArv7.mjs → validate-CheZGRE7.mjs} +4 -8
- package/dist/version-metadata-DIrqEHQo.mjs +73 -0
- package/dist/{wrangler-D9KTuqnv.mjs → wrangler-BYs07Rxy.mjs} +119 -378
- package/dist/{ws-CChrrAU-.d.mts → ws-aKVYB-fA.d.mts} +1 -1
- package/dist/yarn-pnp-DLbEFMT0.mjs +92 -0
- package/docs/guide/auth.md +2 -0
- package/docs/guide/database/postgresql.md +2 -0
- package/docs/guide/database.md +2 -0
- package/docs/guide/durable-state.md +24 -0
- package/docs/guide/platform/administration/access.md +4 -0
- package/docs/guide/platform/administration/connected-apps.md +55 -0
- package/docs/guide/platform/installation/credentials.md +3 -1
- package/docs/guide/quickstart.md +2 -0
- package/docs/guide/sandboxes.md +2 -0
- package/docs/reference/api/deploy.md +23 -0
- package/docs/reference/api/pages.md +2 -0
- package/docs/reference/api.md +2 -1
- package/docs/reference/cli/database.md +9 -3
- package/docs/reference/cli/platform-installation.md +1 -1
- package/docs/reference/cli/setup.md +2 -0
- package/package.json +13 -16
- package/skills/void/SKILL.md +1 -0
- package/dist/auth-LMJcNESe.mjs +0 -2
- package/dist/cf-build-output-H9a97vME.mjs +0 -2
- package/dist/cf-user-agent-lKblH3zU.mjs +0 -17
- package/dist/client-tso2OfcG.mjs +0 -2
- package/dist/collect-DLyFDiKW.mjs +0 -2
- package/dist/config-5r-YpMC-.mjs +0 -2
- package/dist/config-B_ggY-IO.mjs +0 -89
- package/dist/config-BtSFvXZx.mjs +0 -2
- package/dist/config-write-AHGesphx.mjs +0 -61
- package/dist/deploy-Bqe1PYBw.mjs +0 -10458
- package/dist/deploy-VsWsVQkw.mjs +0 -2
- package/dist/dev-inbox-CK-UuPob.mjs +0 -297
- package/dist/discover-EDUf6JJw.mjs +0 -2
- package/dist/dist-_UUlL6bg.mjs +0 -2
- package/dist/env-validation-Dxdx_5wo.mjs +0 -951
- package/dist/gen-dA9hW7AV.mjs +0 -2
- package/dist/head-client-DzmJGN4C.mjs +0 -90
- package/dist/help-DfQYVfGY.mjs +0 -2
- package/dist/login-mx_ydhmp.mjs +0 -2
- package/dist/migrate-BHp07yJE.mjs +0 -2
- package/dist/operator-cmd-CwBB-1yb.mjs +0 -2
- package/dist/pages/head-client.d.mts +0 -13
- package/dist/pages/head-client.mjs +0 -2
- package/dist/platform-args-D4E1PjVw.mjs +0 -2
- package/dist/prepare-DRUV-g3X.mjs +0 -2
- package/dist/project-DedqCp59.mjs +0 -2
- package/dist/provision-Wu9ZBk9L.mjs +0 -2
- package/dist/resolve-project-BIeYs9Cw.mjs +0 -2
- package/dist/resolve-project-CP8rZs_p.mjs +0 -28
- package/dist/runner-mysql-CkFqZ6CE.mjs +0 -2
- package/dist/runner-pg-BGYRFdRp.mjs +0 -2
- package/dist/runtime/env-helpers.d.mts +0 -2
- package/dist/runtime/env-helpers.mjs +0 -2
- package/dist/validate-BJr9LfXy.mjs +0 -2
- package/dist/yarn-pnp-CUX_iTPA.mjs +0 -188
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { n as __toESM } from "../rolldown-runtime-DXIUcv95.mjs";
|
|
3
|
-
import { a as join,
|
|
3
|
+
import { a as join, c as resolve, n as dirname } from "../dist-ipQi0Q8y.mjs";
|
|
4
4
|
import { t as require_picocolors } from "../picocolors-BTps1_gs.mjs";
|
|
5
|
-
import {
|
|
5
|
+
import { l as formatUrl } from "../output-FNHKw5Ac.mjs";
|
|
6
|
+
import { i as safePositional, n as getVoidUserAgent, r as readCfUploadOutput, t as getCfCliVersion } from "../cf-user-agent-ChjQp2MU.mjs";
|
|
6
7
|
import { t as sanitizeTerminalLogText } from "../terminal-log-text-D9ACPOuG.mjs";
|
|
7
8
|
import { copyFileSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from "node:fs";
|
|
8
9
|
import { fileURLToPath } from "node:url";
|
|
10
|
+
import { parsePlatformResourceOwnershipMarker } from "@void/platform";
|
|
9
11
|
import { tmpdir } from "node:os";
|
|
10
|
-
import { parse } from "jsonc-parser";
|
|
11
12
|
import { stripVTControlCharacters } from "node:util";
|
|
13
|
+
import { parse } from "jsonc-parser";
|
|
12
14
|
import { spawn, spawnSync } from "node:child_process";
|
|
13
15
|
import { setGlobalProxyFromEnv } from "node:http";
|
|
14
16
|
import { getCloudflareAuthUseKeyringFromEnv } from "@cloudflare/workers-auth";
|
|
@@ -68,12 +70,33 @@ function cloudflareVerificationUrl(output) {
|
|
|
68
70
|
return /(?:Opening a link in your default browser:|Visit this link to authenticate:)\s*(https?:\/\/\S+)\s/i.exec(plain)?.[1] ?? /please visit:\s*(https?:\/\/\S+)\s/i.exec(plain)?.[1] ?? null;
|
|
69
71
|
}
|
|
70
72
|
function printCloudflareLoginLink(url) {
|
|
71
|
-
console.log(`Open this link if your browser did not open: ${url}`);
|
|
73
|
+
console.log(`Open this link if your browser did not open: ${formatUrl(url)}`);
|
|
72
74
|
}
|
|
73
75
|
function printCloudflareLoginPrompt(code) {
|
|
74
76
|
console.log(code ? `Opening Cloudflare login in your browser. Confirm the code ${import_picocolors.default.blue(code)} in your browser. Press Ctrl+C to cancel.` : "Opening Cloudflare login in your browser. Confirm the code shown in your browser. Press Ctrl+C to cancel.");
|
|
75
77
|
}
|
|
76
78
|
//#endregion
|
|
79
|
+
//#region src/cli/platform-worker-user-agent.ts
|
|
80
|
+
/** Attribute infrastructure uploads using the installer's existing ownership proof. */
|
|
81
|
+
function platformWorkerUploadAttribution(config) {
|
|
82
|
+
const vars = config.vars;
|
|
83
|
+
if (typeof vars?.PLATFORM_OWNERSHIP_MARKER !== "string") return;
|
|
84
|
+
try {
|
|
85
|
+
const marker = parsePlatformResourceOwnershipMarker(JSON.parse(vars.PLATFORM_OWNERSHIP_MARKER));
|
|
86
|
+
if (marker.resourceKind !== "worker" || marker.accountId !== config.account_id || marker.resourceName !== config.name || ![
|
|
87
|
+
"api-worker",
|
|
88
|
+
"proxy-worker",
|
|
89
|
+
"dispatch-worker",
|
|
90
|
+
"tail-worker",
|
|
91
|
+
"email-gateway-worker"
|
|
92
|
+
].includes(marker.resourceKey)) return;
|
|
93
|
+
const version = typeof vars.PLATFORM_VERSION === "string" ? vars.PLATFORM_VERSION : "unknown";
|
|
94
|
+
return `void-platform-install/${encodeURIComponent(version)} void-role/${marker.resourceKey} void-installation/${encodeURIComponent(marker.installationId)}`;
|
|
95
|
+
} catch {
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
//#endregion
|
|
77
100
|
//#region src/cli/cloudflare-operation-process.ts
|
|
78
101
|
const cf = join(dirname(fileURLToPath(import.meta.resolve("cf/package.json"))), "bin", "cf");
|
|
79
102
|
const operation = (() => {
|
|
@@ -95,7 +118,7 @@ function cfEnvironment() {
|
|
|
95
118
|
const env = {
|
|
96
119
|
...process.env,
|
|
97
120
|
CF_DELEGATION: "1",
|
|
98
|
-
CLI_VERSION: getCfCliVersion(),
|
|
121
|
+
CLI_VERSION: getCfCliVersion(operation.type === "versions.upload" || operation.type === "worker.deploy" ? platformWorkerUploadAttribution(config()) : void 0),
|
|
99
122
|
CF_SEND_TELEMETRY: "false",
|
|
100
123
|
CF_NO_OSC_PROGRESS: "1",
|
|
101
124
|
CLOUDFLARE_AUTH_USE_KEYRING: process.env.CLOUDFLARE_AUTH_USE_KEYRING
|
|
@@ -230,7 +253,7 @@ async function withBuildOutput(raw, sourceMain, action) {
|
|
|
230
253
|
}), { mode: 384 });
|
|
231
254
|
const accountId = process.env.CLOUDFLARE_ACCOUNT_ID ?? raw.account_id;
|
|
232
255
|
if (typeof accountId !== "string" || !accountId) throw new Error("Cloudflare account is not pinned for Worker deployment.");
|
|
233
|
-
const { prepareCfBuildOutput } = await import("../cf-build-output-
|
|
256
|
+
const { prepareCfBuildOutput } = await import("../cf-build-output-2u583yJK.mjs");
|
|
234
257
|
const output = await prepareCfBuildOutput(scratch, accountId);
|
|
235
258
|
if (!output) throw new Error("Could not prepare the Cloudflare Worker build output.");
|
|
236
259
|
try {
|
|
@@ -399,7 +422,13 @@ async function readVersionResources(worker, versionId) {
|
|
|
399
422
|
if (!Array.isArray(resources.bindings) || !resources.script || !resources.script_runtime) throw new Error("Cloudflare Worker version resources were incomplete.");
|
|
400
423
|
return resources;
|
|
401
424
|
}
|
|
402
|
-
|
|
425
|
+
let cachedApiHeaders;
|
|
426
|
+
/** This process runs one operation, so the credential is read once. */
|
|
427
|
+
function apiHeaders() {
|
|
428
|
+
cachedApiHeaders ??= readApiHeaders();
|
|
429
|
+
return cachedApiHeaders;
|
|
430
|
+
}
|
|
431
|
+
async function readApiHeaders() {
|
|
403
432
|
const key = process.env.CLOUDFLARE_API_KEY ?? process.env.CF_API_KEY;
|
|
404
433
|
const email = process.env.CLOUDFLARE_EMAIL ?? process.env.CF_EMAIL;
|
|
405
434
|
if (key && email) return {
|
|
@@ -909,10 +938,7 @@ async function workerChanges() {
|
|
|
909
938
|
});
|
|
910
939
|
if (matching.length > 1) throw new Error("Queue consumer Worker identity is ambiguous.");
|
|
911
940
|
for (const item of matching) {
|
|
912
|
-
if (
|
|
913
|
-
const code = character.charCodeAt(0);
|
|
914
|
-
return code < 32 || code === 127;
|
|
915
|
-
}) || item.type !== void 0 && item.type !== "worker") throw new Error("Queue consumer ID or type is invalid.");
|
|
941
|
+
if (!safePositional(item.consumer_id) || /\s/.test(item.consumer_id) || item.type !== void 0 && item.type !== "worker") throw new Error("Queue consumer ID or type is invalid.");
|
|
916
942
|
const deleted = runCf([
|
|
917
943
|
"queues",
|
|
918
944
|
"consumers",
|
|
@@ -959,11 +985,11 @@ async function workerChanges() {
|
|
|
959
985
|
try {
|
|
960
986
|
uploaded = object(parsedJson(called.stdout));
|
|
961
987
|
} catch {}
|
|
962
|
-
const
|
|
963
|
-
const versionId = uploaded.version_id ?? uploaded.id ?? uploaded.versionId ??
|
|
988
|
+
const printed = readCfUploadOutput(called.stdout);
|
|
989
|
+
const versionId = uploaded.version_id ?? uploaded.id ?? uploaded.versionId ?? printed.versionId;
|
|
964
990
|
if (typeof versionId !== "string" || !/^[0-9a-f]{8}-[0-9a-f-]{27}$/i.test(versionId)) throw new Error("Cloudflare did not return the uploaded Worker version ID.");
|
|
965
|
-
const previewUrl = typeof uploaded.preview_url === "string" ? uploaded.preview_url :
|
|
966
|
-
const workersDevUrl = typeof uploaded.workers_dev_url === "string" ? uploaded.workers_dev_url :
|
|
991
|
+
const previewUrl = typeof uploaded.preview_url === "string" ? uploaded.preview_url : printed.previewUrl;
|
|
992
|
+
const workersDevUrl = typeof uploaded.workers_dev_url === "string" ? uploaded.workers_dev_url : printed.workersDevUrl;
|
|
967
993
|
return result(0, "", called.stderr, {
|
|
968
994
|
versionId,
|
|
969
995
|
...previewUrl ? { previewUrl } : {},
|
|
@@ -1,44 +1,20 @@
|
|
|
1
|
-
import "../env-public-
|
|
1
|
+
import "../env-public-CCdykygU.mjs";
|
|
2
2
|
import "../types-CKWnYgfy.mjs";
|
|
3
3
|
import "@void/deploy-cloudflare";
|
|
4
4
|
//#region src/cli/env-validation.d.ts
|
|
5
|
-
/**
|
|
6
|
-
* The stable, values-free classification of a self-host schema failure.
|
|
7
|
-
* env.ts evaluation and Standard-Schema validators run ARBITRARY user code that
|
|
8
|
-
* can embed an env value in a thrown/rejected error (its `message`, `stack`, or
|
|
9
|
-
* `cause`), and `VOID_ENV_UNMASK` disables redaction — so the original error is
|
|
10
|
-
* never surfaced. Every {@link SelfHostSchemaError} instead carries only one of
|
|
11
|
-
* these codes plus fixed text, so neither its message, its `reason` field, nor
|
|
12
|
-
* its JSON serialization can echo a value.
|
|
13
|
-
* - `schema-load-failed` — importing/evaluating the user's env.ts threw.
|
|
14
|
-
* - `schema-validation-error` — a registered validator threw or rejected while
|
|
15
|
-
* checking a production value.
|
|
16
|
-
*/
|
|
17
5
|
type SelfHostSchemaFailureReason = "schema-load-failed" | "schema-validation-error";
|
|
18
|
-
/**
|
|
19
|
-
* The env-INSENSITIVE structural facts the self-host secret gate needs from the
|
|
20
|
-
* project's env schema: whether a schema is registered, every server key, and the
|
|
21
|
-
* REQUIRED key names (validators that reject the absent value). These are fixed by
|
|
22
|
-
* env.ts's structure and require no dotenv loading.
|
|
23
|
-
*/
|
|
6
|
+
/** Schema structure the gate needs, read once in the env-schema probe child. */
|
|
24
7
|
type SelfHostSchemaFacts = {
|
|
25
|
-
/** Whether the project registered an env schema at all (no schema → nothing to gate). */
|
|
26
8
|
hasSchema: boolean;
|
|
27
|
-
/**
|
|
9
|
+
/** Server-only keys. These may never be emitted as plaintext vars. */
|
|
28
10
|
serverKeys: Array<string>;
|
|
29
|
-
/** Required key NAMES — validator rejects `undefined`. Values-free. */
|
|
30
11
|
requiredKeys: Array<string>;
|
|
31
12
|
};
|
|
32
13
|
//#endregion
|
|
33
14
|
//#region src/cli/env-schema-probe.d.ts
|
|
34
|
-
/** Input handed to the child (JSON in argv[3]). Path only — no env values cross here. */
|
|
35
15
|
export type EnvSchemaProbeInput = {
|
|
36
16
|
root: string;
|
|
37
17
|
};
|
|
38
|
-
/**
|
|
39
|
-
* The structured result of the `facts` operation. `ok` carries the env-insensitive
|
|
40
|
-
* schema facts; `schema-error` surfaces a values-free env.ts/validator failure.
|
|
41
|
-
*/
|
|
42
18
|
export type EnvSchemaProbeResult = {
|
|
43
19
|
kind: "ok";
|
|
44
20
|
facts: SelfHostSchemaFacts;
|
|
@@ -46,11 +22,6 @@ export type EnvSchemaProbeResult = {
|
|
|
46
22
|
kind: "schema-error";
|
|
47
23
|
reason: SelfHostSchemaFailureReason;
|
|
48
24
|
};
|
|
49
|
-
/**
|
|
50
|
-
* The structured result of the `validate-emitted` operation. `invalid-keys` carries
|
|
51
|
-
* the FAILING key NAMES only (never a value); `schema-error` surfaces a values-free
|
|
52
|
-
* env.ts/validator failure.
|
|
53
|
-
*/
|
|
54
25
|
export type EnvSchemaValidateResult = {
|
|
55
26
|
kind: "invalid-keys";
|
|
56
27
|
invalidKeys: Array<string>;
|
|
@@ -58,10 +29,8 @@ export type EnvSchemaValidateResult = {
|
|
|
58
29
|
kind: "schema-error";
|
|
59
30
|
reason: SelfHostSchemaFailureReason;
|
|
60
31
|
};
|
|
61
|
-
/** Minimal structural shape of a `spawnSync`-style result (injectable in tests). */
|
|
62
32
|
export type EnvSchemaProbeSpawnResult = {
|
|
63
33
|
status: number | null;
|
|
64
|
-
/** The fd-3 buffer (the framed result) — dedicated so stdout noise can't truncate it. */
|
|
65
34
|
fd3: string | null;
|
|
66
35
|
error?: Error | null;
|
|
67
36
|
signal?: NodeJS.Signals | null;
|
|
@@ -70,15 +39,8 @@ export type EnvSchemaProbeSpawn = (command: string, args: Array<string>, options
|
|
|
70
39
|
cwd: string;
|
|
71
40
|
env: NodeJS.ProcessEnv;
|
|
72
41
|
}) => EnvSchemaProbeSpawnResult;
|
|
73
|
-
/**
|
|
74
|
-
* PARENT side (`facts`): return the env-insensitive schema facts. Runs pre-build so
|
|
75
|
-
* a broken env.ts fails fast, before any account operation.
|
|
76
|
-
*/
|
|
42
|
+
/** Runs before the build so a broken env.ts fails before any account operation. */
|
|
77
43
|
export declare function resolveEnvSchemaFactsViaSubprocess(input: EnvSchemaProbeInput, env: NodeJS.ProcessEnv, spawn?: EnvSchemaProbeSpawn): Promise<EnvSchemaProbeResult>;
|
|
78
|
-
/**
|
|
79
|
-
* PARENT side (`validate-emitted`): validate the REAL emitted worker `vars` against
|
|
80
|
-
* the schema validators and return the FAILING key NAMES only. Runs post-build so
|
|
81
|
-
* the values validated are exactly what the worker ships.
|
|
82
|
-
*/
|
|
44
|
+
/** Runs after the build so it validates exactly the vars the Worker ships. */
|
|
83
45
|
export declare function validateEmittedVarsViaSubprocess(input: EnvSchemaProbeInput, env: NodeJS.ProcessEnv, spawn?: EnvSchemaProbeSpawn): Promise<EnvSchemaValidateResult>;
|
|
84
46
|
//#endregion
|
|
@@ -1,47 +1,19 @@
|
|
|
1
|
-
import { t as findEnvFile } from "../env-types-
|
|
1
|
+
import { t as findEnvFile } from "../env-types-DS2_y4X8.mjs";
|
|
2
2
|
import { writeSync } from "node:fs";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
4
|
import { spawnSync } from "node:child_process";
|
|
5
5
|
//#region src/cli/env-schema-probe.ts
|
|
6
6
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* 1. `facts` — the env-INSENSITIVE server and required key names, fixed by
|
|
15
|
-
* env.ts's structure.
|
|
16
|
-
* 2. `validate-emitted` — validate the REAL emitted worker `vars` (post-build
|
|
17
|
-
* ground truth) against the schema's Standard-Schema validators and return the
|
|
18
|
-
* FAILING key NAMES only. A required var shipped with an INVALID value (fails
|
|
19
|
-
* the validator) must fail the deploy closed before any remote mutation, not
|
|
20
|
-
* only at worker boot.
|
|
21
|
-
*
|
|
22
|
-
* Three hardening rules apply to the child:
|
|
23
|
-
* - the framed result is written to a DEDICATED file descriptor (fd 3), NOT
|
|
24
|
-
* stdout, so anything the user's code prints while evaluating can never
|
|
25
|
-
* truncate or interleave with the result;
|
|
26
|
-
* - the caller scrubs the FULL wrangler-auth credential set from the child env
|
|
27
|
-
* (neither derivation needs credentials);
|
|
28
|
-
* - the parent NEVER captures the child's stdout/stderr — they are IGNORED
|
|
29
|
-
* (fds 1 + 2), never buffered — so a leaking env.ts / validator cannot print a
|
|
30
|
-
* raw secret to the terminal or CI log, and every failure surfaces as a stable
|
|
31
|
-
* classification only.
|
|
7
|
+
* Runs the project's env.ts for the self-host deploy in a child process. The caller
|
|
8
|
+
* passes the build env with Cloudflare credentials removed. Two operations: `facts`
|
|
9
|
+
* (server and required key names) and `validate-emitted` (emitted vars that fail the
|
|
10
|
+
* schema). The child writes its result to fd 3 and its stdout/stderr are ignored, so
|
|
11
|
+
* user output cannot corrupt the result or print a secret into the deploy log.
|
|
12
|
+
* Anything unexpected fails closed.
|
|
32
13
|
*/
|
|
33
|
-
/** argv[2]
|
|
14
|
+
/** argv[2] marker that runs this module as the child. */
|
|
34
15
|
const PROBE_MARKER = "__void-deploy-env-schema-probe__";
|
|
35
|
-
/** The dedicated fd the child writes its framed result to (see stdio config below). */
|
|
36
16
|
const RESULT_FD = 3;
|
|
37
|
-
/**
|
|
38
|
-
* Default spawner: run THIS module as a child and read ONLY the dedicated fd-3
|
|
39
|
-
* result. stdin is ignored, stdout/stderr are IGNORED (fds 1 + 2) so a broken /
|
|
40
|
-
* leaking env.ts can never print a raw secret to the terminal or a captured CI log,
|
|
41
|
-
* and fd 3 is a pipe carrying the framed JSON result. `spawnSync`'s `output` array
|
|
42
|
-
* is indexed by fd, so `output[3]` is the result channel — isolated from stdout
|
|
43
|
-
* entirely (and unaffected by ignoring fds 1 + 2).
|
|
44
|
-
*/
|
|
45
17
|
const defaultSpawn = (command, args, options) => {
|
|
46
18
|
const result = spawnSync(command, args, {
|
|
47
19
|
cwd: options.cwd,
|
|
@@ -62,19 +34,7 @@ const defaultSpawn = (command, args, options) => {
|
|
|
62
34
|
signal: result.signal ?? null
|
|
63
35
|
};
|
|
64
36
|
};
|
|
65
|
-
/**
|
|
66
|
-
* Spawn THIS module as a child (`node <self> <marker> <json>`) under the scrubbed
|
|
67
|
-
* `env` for one operation, and return its framed fd-3 result. The child inherits
|
|
68
|
-
* ONLY `env` (the caller scrubs the full wrangler-auth credential set), so the
|
|
69
|
-
* arbitrary project code never sees the parent's credentials. `import.meta.url` is
|
|
70
|
-
* this module's own path — a named build entry (`dist/cli/env-schema-probe.mjs`),
|
|
71
|
-
* stable in source and dist — so the child re-enters here and hits the {@link
|
|
72
|
-
* PROBE_MARKER} branch. Throws (caller fails closed) on a spawn error, a signal-kill,
|
|
73
|
-
* a nonzero exit, or a missing/unparseable result — exactly the cases where the
|
|
74
|
-
* project code itself could not be evaluated. NEVER echoes the child's
|
|
75
|
-
* stdout/stderr (never captured), so no env value the child may have printed can
|
|
76
|
-
* reach the thrown error.
|
|
77
|
-
*/
|
|
37
|
+
/** Run this module as the child for one operation and parse its fd-3 result. */
|
|
78
38
|
async function spawnEnvSchemaProbe(op, input, env, spawn) {
|
|
79
39
|
const childInput = {
|
|
80
40
|
op,
|
|
@@ -96,10 +56,7 @@ async function spawnEnvSchemaProbe(op, input, env, spawn) {
|
|
|
96
56
|
if (!parsed) throw new Error("the env-schema probe produced no parseable result.");
|
|
97
57
|
return parsed;
|
|
98
58
|
}
|
|
99
|
-
/**
|
|
100
|
-
* PARENT side (`facts`): return the env-insensitive schema facts. Runs pre-build so
|
|
101
|
-
* a broken env.ts fails fast, before any account operation.
|
|
102
|
-
*/
|
|
59
|
+
/** Runs before the build so a broken env.ts fails before any account operation. */
|
|
103
60
|
async function resolveEnvSchemaFactsViaSubprocess(input, env, spawn = defaultSpawn) {
|
|
104
61
|
if (findEnvFile(input.root) === null) return {
|
|
105
62
|
kind: "ok",
|
|
@@ -113,22 +70,12 @@ async function resolveEnvSchemaFactsViaSubprocess(input, env, spawn = defaultSpa
|
|
|
113
70
|
if (result.kind === "invalid-keys") throw new Error("the env-schema probe returned an unexpected result for the facts operation.");
|
|
114
71
|
return result;
|
|
115
72
|
}
|
|
116
|
-
/**
|
|
117
|
-
* PARENT side (`validate-emitted`): validate the REAL emitted worker `vars` against
|
|
118
|
-
* the schema validators and return the FAILING key NAMES only. Runs post-build so
|
|
119
|
-
* the values validated are exactly what the worker ships.
|
|
120
|
-
*/
|
|
73
|
+
/** Runs after the build so it validates exactly the vars the Worker ships. */
|
|
121
74
|
async function validateEmittedVarsViaSubprocess(input, env, spawn = defaultSpawn) {
|
|
122
75
|
const result = await spawnEnvSchemaProbe("validate-emitted", input, env, spawn);
|
|
123
76
|
if (result.kind === "ok") throw new Error("the env-schema probe returned an unexpected result for the validate-emitted operation.");
|
|
124
77
|
return result;
|
|
125
78
|
}
|
|
126
|
-
/**
|
|
127
|
-
* Parse the child's framed result from the DEDICATED fd-3 channel. The whole buffer
|
|
128
|
-
* is the JSON result (nothing else writes to fd 3), so no sentinel scan is needed:
|
|
129
|
-
* config/env.ts stdout noise lives on a different fd and can never reach here. Returns undefined on a missing/unparseable/ill-shaped result
|
|
130
|
-
* so the caller fails closed.
|
|
131
|
-
*/
|
|
132
79
|
function parseProbeResult(fd3) {
|
|
133
80
|
const trimmed = fd3.trim();
|
|
134
81
|
if (!trimmed) return;
|
|
@@ -153,22 +100,16 @@ function parseProbeResult(fd3) {
|
|
|
153
100
|
reason: record.reason
|
|
154
101
|
};
|
|
155
102
|
}
|
|
156
|
-
/** Structural guard for the values-free facts the child returns. */
|
|
157
103
|
function isSchemaFacts(value) {
|
|
158
104
|
if (!value || typeof value !== "object") return false;
|
|
159
105
|
const f = value;
|
|
160
106
|
return typeof f.hasSchema === "boolean" && Array.isArray(f.requiredKeys) && f.requiredKeys.every((k) => typeof k === "string") && Array.isArray(f.serverKeys) && f.serverKeys.every((k) => typeof k === "string");
|
|
161
107
|
}
|
|
162
|
-
/** Write the framed result to the dedicated fd 3 (synchronous → flushed before exit). */
|
|
163
108
|
function emitResult(result) {
|
|
164
109
|
writeSync(RESULT_FD, JSON.stringify(result));
|
|
165
110
|
}
|
|
166
|
-
/**
|
|
167
|
-
* CHILD side (`facts`): import the user's env.ts and derive its structural schema
|
|
168
|
-
* facts. The import stays isolated because env.ts is arbitrary project code.
|
|
169
|
-
*/
|
|
170
111
|
async function runFactsChild(root) {
|
|
171
|
-
const { deriveSelfHostSchemaFacts, SelfHostSchemaError } = await import("../env-validation-
|
|
112
|
+
const { deriveSelfHostSchemaFacts, SelfHostSchemaError } = await import("../env-validation-CTn-HhG1.mjs");
|
|
172
113
|
try {
|
|
173
114
|
emitResult({
|
|
174
115
|
kind: "ok",
|
|
@@ -185,15 +126,9 @@ async function runFactsChild(root) {
|
|
|
185
126
|
throw err;
|
|
186
127
|
}
|
|
187
128
|
}
|
|
188
|
-
/**
|
|
189
|
-
* CHILD side (`validate-emitted`): read the REAL emitted worker `vars` the build
|
|
190
|
-
* baked into `dist/ssr/wrangler.json` (ground truth), validate them against the
|
|
191
|
-
* schema's validators, and emit the FAILING key NAMES only. The parent already
|
|
192
|
-
* confirmed the artifact exists, so a read failure here is a probe-infrastructure
|
|
193
|
-
* fault → fail closed as a values-free schema error.
|
|
194
|
-
*/
|
|
129
|
+
/** The parent already found the emitted config, so a read failure here fails closed. */
|
|
195
130
|
async function runValidateEmittedChild(root) {
|
|
196
|
-
const { computeInvalidEmittedKeys, readEmittedWorkerVars, SelfHostSchemaError } = await import("../env-validation-
|
|
131
|
+
const { computeInvalidEmittedKeys, readEmittedWorkerVars, SelfHostSchemaError } = await import("../env-validation-CTn-HhG1.mjs");
|
|
197
132
|
const emitted = readEmittedWorkerVars(root);
|
|
198
133
|
if (!emitted.ok) {
|
|
199
134
|
emitResult({
|
|
@@ -218,7 +153,6 @@ async function runValidateEmittedChild(root) {
|
|
|
218
153
|
throw err;
|
|
219
154
|
}
|
|
220
155
|
}
|
|
221
|
-
/** Dispatch the child to the requested operation. */
|
|
222
156
|
async function runEnvSchemaProbeChild(rawInput) {
|
|
223
157
|
const input = JSON.parse(rawInput);
|
|
224
158
|
if (input.op === "validate-emitted") {
|