@pyric/cli 0.1.0-alpha.20 → 0.1.0-alpha.21
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 +64 -89
- package/dist/assurance/.generated/conformance-verdicts.d.ts +68 -1
- package/dist/assurance/.generated/conformance-verdicts.d.ts.map +1 -1
- package/dist/assurance/.generated/conformance-verdicts.js +68 -1
- package/dist/assurance/.generated/conformance-verdicts.js.map +1 -1
- package/dist/bridge/client/dispatch.d.ts +25 -19
- package/dist/bridge/client/dispatch.d.ts.map +1 -1
- package/dist/bridge/client/dispatch.js +41 -48
- package/dist/bridge/client/dispatch.js.map +1 -1
- package/dist/bridge/client/tool-family-factories.d.ts +26 -0
- package/dist/bridge/client/tool-family-factories.d.ts.map +1 -0
- package/dist/bridge/client/tool-family-factories.js +10 -0
- package/dist/bridge/client/tool-family-factories.js.map +1 -0
- package/dist/bridge/server/mcp-contract.d.ts +7 -6
- package/dist/bridge/server/mcp-contract.d.ts.map +1 -1
- package/dist/bridge/server/mcp-contract.js +9 -48
- package/dist/bridge/server/mcp-contract.js.map +1 -1
- package/dist/bridge/server/peer.d.ts +11 -1
- package/dist/bridge/server/peer.d.ts.map +1 -1
- package/dist/bridge/server/peer.js +22 -1
- package/dist/bridge/server/peer.js.map +1 -1
- package/dist/bridge/server/tool-family-factories.d.ts +30 -0
- package/dist/bridge/server/tool-family-factories.d.ts.map +1 -0
- package/dist/bridge/server/tool-family-factories.js +22 -0
- package/dist/bridge/server/tool-family-factories.js.map +1 -0
- package/dist/bridge/server/tool-metadata.d.ts +17 -18
- package/dist/bridge/server/tool-metadata.d.ts.map +1 -1
- package/dist/bridge/server/tool-metadata.js +24 -59
- package/dist/bridge/server/tool-metadata.js.map +1 -1
- package/dist/bridge/tool-families.d.ts +48 -0
- package/dist/bridge/tool-families.d.ts.map +1 -0
- package/dist/bridge/tool-families.generated.d.ts +32 -0
- package/dist/bridge/tool-families.generated.d.ts.map +1 -0
- package/dist/bridge/tool-families.generated.js +15 -0
- package/dist/bridge/tool-families.generated.js.map +1 -0
- package/dist/bridge/tool-families.js +51 -0
- package/dist/bridge/tool-families.js.map +1 -0
- package/dist/bridge/tool-family-records/conformance.d.ts +7 -0
- package/dist/bridge/tool-family-records/conformance.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/conformance.js +6 -0
- package/dist/bridge/tool-family-records/conformance.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-data.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-data.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-data.js +15 -0
- package/dist/bridge/tool-family-records/firestore-data.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-inspect.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-inspect.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-inspect.js +6 -0
- package/dist/bridge/tool-family-records/firestore-inspect.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-rules.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-rules.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-rules.js +15 -0
- package/dist/bridge/tool-family-records/firestore-rules.js.map +1 -0
- package/dist/bridge/tool-family-records/firestore-simulator.d.ts +7 -0
- package/dist/bridge/tool-family-records/firestore-simulator.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/firestore-simulator.js +16 -0
- package/dist/bridge/tool-family-records/firestore-simulator.js.map +1 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.d.ts +7 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.d.ts.map +1 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.js +6 -0
- package/dist/bridge/tool-family-records/rtdb-inspection.js.map +1 -0
- package/dist/bundler/externals.d.ts +37 -0
- package/dist/bundler/externals.d.ts.map +1 -0
- package/dist/bundler/externals.js +52 -0
- package/dist/bundler/externals.js.map +1 -0
- package/dist/bundler/index.d.ts +17 -0
- package/dist/bundler/index.d.ts.map +1 -0
- package/dist/bundler/index.js +17 -0
- package/dist/bundler/index.js.map +1 -0
- package/dist/cli/inlined-sdk-scanner.d.ts +6 -0
- package/dist/cli/inlined-sdk-scanner.d.ts.map +1 -0
- package/dist/cli/inlined-sdk-scanner.js +82 -0
- package/dist/cli/inlined-sdk-scanner.js.map +1 -0
- package/dist/cli/sandbox-interlock.d.ts +97 -0
- package/dist/cli/sandbox-interlock.d.ts.map +1 -0
- package/dist/cli/sandbox-interlock.js +112 -0
- package/dist/cli/sandbox-interlock.js.map +1 -0
- package/dist/cli/sandbox-runner.d.ts +20 -12
- package/dist/cli/sandbox-runner.d.ts.map +1 -1
- package/dist/cli/sandbox-runner.js +24 -21
- package/dist/cli/sandbox-runner.js.map +1 -1
- package/dist/cli/serve.d.ts +6 -10
- package/dist/cli/serve.d.ts.map +1 -1
- package/dist/cli/serve.js +57 -77
- package/dist/cli/serve.js.map +1 -1
- package/dist/cli/unsupported-runtime.d.ts +27 -0
- package/dist/cli/unsupported-runtime.d.ts.map +1 -0
- package/dist/cli/unsupported-runtime.js +63 -0
- package/dist/cli/unsupported-runtime.js.map +1 -0
- package/dist/conformance/.generated/can-i-use-browser.d.ts +1 -1
- package/dist/conformance/.generated/can-i-use-browser.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js +1 -1
- package/dist/conformance/.generated/can-i-use-browser.js.map +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts +1 -1
- package/dist/conformance/.generated/can-i-use.d.ts.map +1 -1
- package/dist/conformance/.generated/can-i-use.js +1 -1
- package/dist/conformance/.generated/can-i-use.js.map +1 -1
- package/dist/conformance/.generated/conformance-docs.d.ts.map +1 -1
- package/dist/conformance/.generated/conformance-docs.js +1 -1
- package/dist/conformance/.generated/conformance-docs.js.map +1 -1
- package/dist/functions-rtdb/child.d.ts +37 -0
- package/dist/functions-rtdb/child.d.ts.map +1 -1
- package/dist/functions-rtdb/child.js +90 -21
- package/dist/functions-rtdb/child.js.map +1 -1
- package/dist/functions-rtdb/development-runtime.d.ts +3 -0
- package/dist/functions-rtdb/development-runtime.d.ts.map +1 -1
- package/dist/functions-rtdb/development-runtime.js +1 -0
- package/dist/functions-rtdb/development-runtime.js.map +1 -1
- package/dist/google-endpoints.d.ts +67 -0
- package/dist/google-endpoints.d.ts.map +1 -0
- package/dist/google-endpoints.js +119 -0
- package/dist/google-endpoints.js.map +1 -0
- package/dist/next/runtime-env.d.ts.map +1 -1
- package/dist/next/runtime-env.js +5 -0
- package/dist/next/runtime-env.js.map +1 -1
- package/dist/next/with-pyric.d.ts +1 -1
- package/dist/next/with-pyric.js +1 -1
- package/dist/register/beacon.d.ts +69 -0
- package/dist/register/beacon.d.ts.map +1 -0
- package/dist/register/beacon.js +199 -0
- package/dist/register/beacon.js.map +1 -0
- package/dist/register/index.d.ts.map +1 -1
- package/dist/register/index.js +65 -6
- package/dist/register/index.js.map +1 -1
- package/dist/register/net-guard.d.ts +110 -0
- package/dist/register/net-guard.d.ts.map +1 -0
- package/dist/register/net-guard.js +462 -0
- package/dist/register/net-guard.js.map +1 -0
- package/dist/serve/ai-diagnostics-relay.d.ts +63 -0
- package/dist/serve/ai-diagnostics-relay.d.ts.map +1 -0
- package/dist/serve/ai-diagnostics-relay.js +125 -0
- package/dist/serve/ai-diagnostics-relay.js.map +1 -0
- package/dist/serve/ai-proxy.d.ts +92 -0
- package/dist/serve/ai-proxy.d.ts.map +1 -0
- package/dist/serve/ai-proxy.js +269 -0
- package/dist/serve/ai-proxy.js.map +1 -0
- package/dist/serve/ai-status.d.ts +44 -0
- package/dist/serve/ai-status.d.ts.map +1 -0
- package/dist/serve/ai-status.js +77 -0
- package/dist/serve/ai-status.js.map +1 -0
- package/dist/serve/ai-terminal-blocks.d.ts +97 -0
- package/dist/serve/ai-terminal-blocks.d.ts.map +1 -0
- package/dist/serve/ai-terminal-blocks.js +128 -0
- package/dist/serve/ai-terminal-blocks.js.map +1 -0
- package/dist/serve/ai-terminal-text.d.ts +36 -0
- package/dist/serve/ai-terminal-text.d.ts.map +1 -0
- package/dist/serve/ai-terminal-text.js +48 -0
- package/dist/serve/ai-terminal-text.js.map +1 -0
- package/dist/serve/beacon-route.d.ts +53 -0
- package/dist/serve/beacon-route.d.ts.map +1 -0
- package/dist/serve/beacon-route.js +101 -0
- package/dist/serve/beacon-route.js.map +1 -0
- package/dist/serve/entries/active-auth-registry.d.ts +16 -0
- package/dist/serve/entries/active-auth-registry.d.ts.map +1 -0
- package/dist/serve/entries/active-auth-registry.js +48 -0
- package/dist/serve/entries/active-auth-registry.js.map +1 -0
- package/dist/serve/entries/active-auth.d.ts +18 -0
- package/dist/serve/entries/active-auth.d.ts.map +1 -0
- package/dist/serve/entries/active-auth.js +84 -0
- package/dist/serve/entries/active-auth.js.map +1 -0
- package/dist/serve/entries/auth-helper-core.d.ts +1 -0
- package/dist/serve/entries/auth-helper-core.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-core.js +4 -0
- package/dist/serve/entries/auth-helper-core.js.map +1 -1
- package/dist/serve/entries/auth-helper-dom.d.ts.map +1 -1
- package/dist/serve/entries/auth-helper-dom.js +28 -2
- package/dist/serve/entries/auth-helper-dom.js.map +1 -1
- package/dist/serve/entries/auth.d.ts.map +1 -1
- package/dist/serve/entries/auth.js +8 -0
- package/dist/serve/entries/auth.js.map +1 -1
- package/dist/serve/entries/bridge-url.d.ts +1 -1
- package/dist/serve/entries/bridge-url.js +1 -1
- package/dist/serve/entries/init.d.ts.map +1 -1
- package/dist/serve/entries/init.js +70 -4
- package/dist/serve/entries/init.js.map +1 -1
- package/dist/serve/entries/runtime.d.ts.map +1 -1
- package/dist/serve/entries/runtime.js +9 -0
- package/dist/serve/entries/runtime.js.map +1 -1
- package/dist/serve/namespace.d.ts +14 -5
- package/dist/serve/namespace.d.ts.map +1 -1
- package/dist/serve/namespace.js +57 -124
- package/dist/serve/namespace.js.map +1 -1
- package/dist/serve/runtime/chip-config.d.ts.map +1 -1
- package/dist/serve/runtime/chip-config.js +16 -2
- package/dist/serve/runtime/chip-config.js.map +1 -1
- package/dist/serve/runtime/chip-dialog.d.ts +18 -0
- package/dist/serve/runtime/chip-dialog.d.ts.map +1 -0
- package/dist/serve/runtime/chip-dialog.js +315 -0
- package/dist/serve/runtime/chip-dialog.js.map +1 -0
- package/dist/serve/runtime/chip-install.d.ts +2 -0
- package/dist/serve/runtime/chip-install.d.ts.map +1 -1
- package/dist/serve/runtime/chip-install.js +9 -4
- package/dist/serve/runtime/chip-install.js.map +1 -1
- package/dist/serve/runtime/chip-user-search.d.ts +16 -0
- package/dist/serve/runtime/chip-user-search.d.ts.map +1 -0
- package/dist/serve/runtime/chip-user-search.js +354 -0
- package/dist/serve/runtime/chip-user-search.js.map +1 -0
- package/dist/serve/runtime/chip.d.ts +10 -0
- package/dist/serve/runtime/chip.d.ts.map +1 -1
- package/dist/serve/runtime/chip.js +118 -15
- package/dist/serve/runtime/chip.js.map +1 -1
- package/dist/serve/runtime/identity.d.ts +17 -0
- package/dist/serve/runtime/identity.d.ts.map +1 -0
- package/dist/serve/runtime/identity.js +10 -0
- package/dist/serve/runtime/identity.js.map +1 -0
- package/dist/serve/sandbox-session.d.ts +7 -0
- package/dist/serve/sandbox-session.d.ts.map +1 -1
- package/dist/serve/sandbox-session.js +2 -0
- package/dist/serve/sandbox-session.js.map +1 -1
- package/dist/serve/site-ui/_astro/{RulesCodeEditor.XtDmHOlN.js → RulesCodeEditor.DsTAsKIa.js} +1 -1
- package/dist/serve/site-ui/_astro/app.BOr2kwae.js +115 -0
- package/dist/serve/site-ui/_astro/app.DhAcImFD.js +1 -0
- package/dist/serve/site-ui/_astro/{chess-showcase.B72XYeoh.js → chess-showcase.Bn_pP6UJ.js} +2 -2
- package/dist/serve/site-ui/_astro/{example-runtime.C25_lx6Z.js → example-runtime.CXopTGv7.js} +1 -1
- package/dist/serve/site-ui/_astro/sandbox-controls.rOuZTOUG.js +510 -0
- package/dist/serve/site-ui/_astro/{seed.Co0yUJY5.js → seed.03a08f9t.js} +2 -2
- package/dist/serve/site-ui/_astro/writes.BsPBG3dp.js +653 -0
- package/dist/serve/site-ui/auth/index.html +1 -1
- package/dist/serve/site-ui/docs/_rhythm/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/set-up-your-agent/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/watch-and-review/index.html +1 -1
- package/dist/serve/site-ui/docs/agent/work-with-an-agent/index.html +1 -1
- package/dist/serve/site-ui/docs/ai-compat/index.html +1 -1
- package/dist/serve/site-ui/docs/api-reference/index.html +8 -1
- package/dist/serve/site-ui/docs/api-reference.md +7 -0
- package/dist/serve/site-ui/docs/app-compat/index.html +1 -1
- package/dist/serve/site-ui/docs/auth-compat/index.html +3 -3
- package/dist/serve/site-ui/docs/auth-compat.md +2 -2
- package/dist/serve/site-ui/docs/build/ai-logic/index.html +6 -1
- package/dist/serve/site-ui/docs/build/ai-logic.md +6 -0
- package/dist/serve/site-ui/docs/build/authentication/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-firestore/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-messaging/index.html +1 -1
- package/dist/serve/site-ui/docs/build/cloud-storage/index.html +1 -1
- package/dist/serve/site-ui/docs/build/realtime-database/index.html +1 -1
- package/dist/serve/site-ui/docs/conformance-scores/index.html +6 -2
- package/dist/serve/site-ui/docs/conformance-scores.md +5 -1
- package/dist/serve/site-ui/docs/create-pyric-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/database-compat/index.html +44 -44
- package/dist/serve/site-ui/docs/database-compat.md +43 -43
- package/dist/serve/site-ui/docs/examples/chess/index.html +1 -1
- package/dist/serve/site-ui/docs/examples/index.html +1 -1
- package/dist/serve/site-ui/docs/firestore-compat/index.html +4 -4
- package/dist/serve/site-ui/docs/firestore-compat.md +3 -3
- package/dist/serve/site-ui/docs/firestore-flutter-compat/index.html +319 -0
- package/dist/serve/site-ui/docs/firestore-flutter-compat.md +344 -0
- package/dist/serve/site-ui/docs/functions-rtdb-compat/index.html +1 -1
- package/dist/serve/site-ui/docs/get-started/backend-bundlers/index.html +105 -0
- package/dist/serve/site-ui/docs/get-started/backend-bundlers.md +165 -0
- package/dist/serve/site-ui/docs/get-started/how-the-swap-works/index.html +1 -1
- package/dist/serve/site-ui/docs/get-started/nextjs/index.html +1 -1
- package/dist/serve/site-ui/docs/get-started/start-building/index.html +1 -1
- package/dist/serve/site-ui/docs/get-started/vite/index.html +1 -1
- package/dist/serve/site-ui/docs/index.json +2967 -1482
- package/dist/serve/site-ui/docs/messaging-compat/index.html +1 -1
- package/dist/serve/site-ui/docs/observe/resolve-runtime-status/index.html +1 -1
- package/dist/serve/site-ui/docs/observe/see-whats-happening/index.html +1 -1
- package/dist/serve/site-ui/docs/observe/shape-your-data/index.html +1 -1
- package/dist/serve/site-ui/docs/overview/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-app-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-auth-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-database-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-firestore-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-messaging-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-admin-storage-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ai-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ai-scripting-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-analytics-reference-api/index.html +124 -0
- package/dist/serve/site-ui/docs/pyric-analytics-reference-api.md +287 -0
- package/dist/serve/site-ui/docs/pyric-app-check-reference-api/index.html +87 -0
- package/dist/serve/site-ui/docs/pyric-app-check-reference-api.md +199 -0
- package/dist/serve/site-ui/docs/pyric-app-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-auth-reference-api/index.html +6 -2
- package/dist/serve/site-ui/docs/pyric-auth-reference-api.md +2 -1
- package/dist/serve/site-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-assurance-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bridge-client-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-cli-bridge-client-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bridge-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-bundler-reference-api/index.html +56 -0
- package/dist/serve/site-ui/docs/pyric-cli-bundler-reference-api.md +72 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +2 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-browser-reference-api.md +1 -0
- package/dist/serve/site-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api/index.html +2 -1
- package/dist/serve/site-ui/docs/pyric-cli-conformance-reference-api.md +1 -0
- package/dist/serve/site-ui/docs/pyric-cli-credentials-node-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-discover-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-cli-next-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-register-app-bridge-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-register-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-remote-reference-api/index.html +34 -9
- package/dist/serve/site-ui/docs/pyric-cli-remote-reference-api.md +16 -8
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api/index.html +133 -93
- package/dist/serve/site-ui/docs/pyric-cli-serve-worker-reference-api.md +61 -1
- package/dist/serve/site-ui/docs/pyric-cli-verify-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-cli-verify-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-cli-vite-reference-api.md +2 -2
- package/dist/serve/site-ui/docs/pyric-database-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-database-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-firestore-lite-reference-api/index.html +559 -0
- package/dist/serve/site-ui/docs/pyric-firestore-lite-reference-api.md +1240 -0
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api/index.html +40 -11
- package/dist/serve/site-ui/docs/pyric-firestore-reference-api.md +18 -8
- package/dist/serve/site-ui/docs/pyric-functions-reference-api/index.html +67 -0
- package/dist/serve/site-ui/docs/pyric-functions-reference-api.md +149 -0
- package/dist/serve/site-ui/docs/pyric-messaging-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-messaging-sw-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-performance-reference-api/index.html +35 -0
- package/dist/serve/site-ui/docs/pyric-performance-reference-api.md +69 -0
- package/dist/serve/site-ui/docs/pyric-remote-config-reference-api/index.html +132 -0
- package/dist/serve/site-ui/docs/pyric-remote-config-reference-api.md +307 -0
- package/dist/serve/site-ui/docs/pyric-rules-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api/index.html +52 -17
- package/dist/serve/site-ui/docs/pyric-sandbox-database-reference-api.md +48 -9
- package/dist/serve/site-ui/docs/pyric-sandbox-firestore-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api/index.html +239 -49
- package/dist/serve/site-ui/docs/pyric-sandbox-reference-api.md +148 -31
- package/dist/serve/site-ui/docs/pyric-storage-reference-api/index.html +22 -4
- package/dist/serve/site-ui/docs/pyric-storage-reference-api.md +24 -2
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api/index.html +26 -96
- package/dist/serve/site-ui/docs/pyric-ui-agents-reference-api.md +20 -51
- package/dist/serve/site-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-auth-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-ui-auth-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-events-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-events-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-firestore-reference-api/index.html +2 -2
- package/dist/serve/site-ui/docs/pyric-ui-firestore-reference-api.md +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-primitives-reference-api/index.html +124 -26
- package/dist/serve/site-ui/docs/pyric-ui-primitives-reference-api.md +58 -5
- package/dist/serve/site-ui/docs/pyric-ui-rtdb-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-rules-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api/index.html +4 -5
- package/dist/serve/site-ui/docs/pyric-ui-storage-reference-api.md +3 -4
- package/dist/serve/site-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/pyric-ui-traffic-reference-api/index.html +1 -1
- package/dist/serve/site-ui/docs/reference/cli/index.html +6 -3
- package/dist/serve/site-ui/docs/reference/cli.md +8 -2
- package/dist/serve/site-ui/docs/rules-compat/index.html +10 -2
- package/dist/serve/site-ui/docs/rules-compat.md +9 -1
- package/dist/serve/site-ui/docs/secure/audit-your-rules/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/firestore-rules-limits/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/read-a-denial/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/rtdb-rules-in-typescript/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/rules-standard-library/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/secure-it-with-rules/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/simulate-and-lint/index.html +1 -1
- package/dist/serve/site-ui/docs/secure/write-a-rules-test-suite/index.html +1 -1
- package/dist/serve/site-ui/docs/ship/ship-to-production/index.html +1 -1
- package/dist/serve/site-ui/docs/ship/test-in-node/index.html +1 -1
- package/dist/serve/site-ui/docs/storage-compat/index.html +13 -13
- package/dist/serve/site-ui/docs/storage-compat.md +12 -12
- package/dist/serve/site-ui/docs/trust/how-we-know-it-matches-firebase/index.html +1 -1
- package/dist/serve/site-ui/docs/trust/rules-standard-library/index.html +1 -1
- package/dist/serve/site-ui/docs/trust/versioning-and-compatibility/index.html +1 -1
- package/dist/serve/site-ui/docs/tutorial/index.html +1 -1
- package/dist/serve/site-ui/examples/chess/index.html +1 -1
- package/dist/serve/site-ui/firestore/index.html +1 -1
- package/dist/serve/site-ui/llms.txt +9 -0
- package/dist/serve/site-ui/rtdb/index.html +1 -1
- package/dist/serve/site-ui/settings/index.html +1 -1
- package/dist/serve/site-ui/storage/index.html +1 -1
- package/dist/serve/site-ui/studio/index.html +1 -1
- package/dist/serve/site-ui/traffic/index.html +1 -1
- package/dist/serve/studio/disk-workspace.d.ts.map +1 -1
- package/dist/serve/studio/disk-workspace.js +64 -2
- package/dist/serve/studio/disk-workspace.js.map +1 -1
- package/dist/serve/vite-plugin.d.ts +7 -7
- package/dist/serve/vite-plugin.js +1 -1
- package/dist/serve/vite-plugin.js.map +1 -1
- package/dist/serve/vite-sandbox-generation.d.ts.map +1 -1
- package/dist/serve/vite-sandbox-generation.js +12 -0
- package/dist/serve/vite-sandbox-generation.js.map +1 -1
- package/dist/serve/worker/client/auth.js +1 -2
- package/dist/serve/worker/client/auth.js.map +1 -1
- package/dist/serve/worker/client/core.d.ts +21 -1
- package/dist/serve/worker/client/core.d.ts.map +1 -1
- package/dist/serve/worker/client/core.js +79 -3
- package/dist/serve/worker/client/core.js.map +1 -1
- package/dist/serve/worker/client.d.ts +1 -1
- package/dist/serve/worker/client.d.ts.map +1 -1
- package/dist/serve/worker/client.js +1 -1
- package/dist/serve/worker/client.js.map +1 -1
- package/dist/serve/worker/context-resolver.d.ts +30 -0
- package/dist/serve/worker/context-resolver.d.ts.map +1 -0
- package/dist/serve/worker/context-resolver.js +44 -0
- package/dist/serve/worker/context-resolver.js.map +1 -0
- package/dist/serve/worker/entry.js +23 -19
- package/dist/serve/worker/entry.js.map +1 -1
- package/dist/serve/worker/host/core.d.ts +1 -0
- package/dist/serve/worker/host/core.d.ts.map +1 -1
- package/dist/serve/worker/host/core.js +12 -6
- package/dist/serve/worker/host/core.js.map +1 -1
- package/dist/serve/worker/host/storage.js +2 -2
- package/dist/serve/worker/host-auth.js +1 -2
- package/dist/serve/worker/host-auth.js.map +1 -1
- package/dist/serve/worker/index.d.ts +1 -1
- package/dist/serve/worker/index.d.ts.map +1 -1
- package/dist/serve/worker/index.js +2 -2
- package/dist/serve/worker/index.js.map +1 -1
- package/dist/serve/worker/port-lifecycle.d.ts +18 -0
- package/dist/serve/worker/port-lifecycle.d.ts.map +1 -0
- package/dist/serve/worker/port-lifecycle.js +28 -0
- package/dist/serve/worker/port-lifecycle.js.map +1 -0
- package/dist/serve/worker/serve-init.d.ts.map +1 -1
- package/dist/serve/worker/serve-init.js +8 -2
- package/dist/serve/worker/serve-init.js.map +1 -1
- package/dist/verify/fixture.d.ts +1 -1
- package/package.json +16 -5
- package/src/assurance/.generated/conformance-verdicts.ts +68 -1
- package/src/bridge/client/dispatch.ts +52 -56
- package/src/bridge/client/tool-family-factories.ts +34 -0
- package/src/bridge/server/mcp-contract.ts +15 -59
- package/src/bridge/server/peer.ts +24 -1
- package/src/bridge/server/tool-family-factories.ts +40 -0
- package/src/bridge/server/tool-metadata.ts +29 -61
- package/src/bridge/tool-families.generated.ts +17 -0
- package/src/bridge/tool-families.ts +87 -0
- package/src/bridge/tool-family-records/conformance.ts +6 -0
- package/src/bridge/tool-family-records/firestore-data.ts +15 -0
- package/src/bridge/tool-family-records/firestore-inspect.ts +6 -0
- package/src/bridge/tool-family-records/firestore-rules.ts +15 -0
- package/src/bridge/tool-family-records/firestore-simulator.ts +16 -0
- package/src/bridge/tool-family-records/rtdb-inspection.ts +6 -0
- package/src/bundler/externals.ts +55 -0
- package/src/bundler/index.ts +21 -0
- package/src/cli/cli.test.ts +0 -44
- package/src/cli/inlined-sdk-scanner.ts +77 -0
- package/src/cli/sandbox-interlock.ts +167 -0
- package/src/cli/sandbox-runner.ts +37 -26
- package/src/cli/serve.ts +68 -69
- package/src/cli/unsupported-runtime.ts +68 -0
- package/src/conformance/.generated/can-i-use-browser.ts +2 -2
- package/src/conformance/.generated/can-i-use.ts +2 -2
- package/src/conformance/.generated/conformance-docs.ts +1 -1
- package/src/functions-rtdb/child.ts +115 -21
- package/src/functions-rtdb/development-runtime.ts +4 -0
- package/src/google-endpoints.ts +155 -0
- package/src/next/runtime-env.ts +5 -0
- package/src/next/with-pyric.ts +1 -1
- package/src/register/beacon.ts +232 -0
- package/src/register/index.ts +68 -6
- package/src/register/net-guard.ts +567 -0
- package/src/serve/ai-diagnostics-relay.ts +243 -0
- package/src/serve/ai-proxy.ts +327 -0
- package/src/serve/ai-status.ts +109 -0
- package/src/serve/ai-terminal-blocks.ts +210 -0
- package/src/serve/ai-terminal-text.ts +52 -0
- package/src/serve/beacon-route.ts +141 -0
- package/src/serve/entries/active-auth-registry.ts +56 -0
- package/src/serve/entries/active-auth.ts +100 -0
- package/src/serve/entries/auth-helper-core.ts +5 -0
- package/src/serve/entries/auth-helper-dom.ts +26 -2
- package/src/serve/entries/auth.ts +8 -0
- package/src/serve/entries/bridge-url.ts +1 -1
- package/src/serve/entries/init.ts +78 -3
- package/src/serve/entries/runtime.ts +10 -0
- package/src/serve/namespace.ts +73 -140
- package/src/serve/runtime/chip-config.ts +16 -2
- package/src/serve/runtime/chip-dialog.ts +366 -0
- package/src/serve/runtime/chip-install.ts +10 -4
- package/src/serve/runtime/chip-user-search.ts +391 -0
- package/src/serve/runtime/chip.ts +140 -15
- package/src/serve/runtime/identity.ts +26 -0
- package/src/serve/sandbox-session.ts +9 -0
- package/src/serve/studio/disk-workspace.ts +76 -2
- package/src/serve/vite-plugin.ts +8 -8
- package/src/serve/vite-sandbox-generation.ts +15 -0
- package/src/serve/worker/client/auth.ts +1 -1
- package/src/serve/worker/client/core.ts +80 -3
- package/src/serve/worker/client.ts +1 -1
- package/src/serve/worker/context-resolver.ts +60 -0
- package/src/serve/worker/entry.ts +22 -18
- package/src/serve/worker/host/core.ts +9 -7
- package/src/serve/worker/host/storage.ts +2 -2
- package/src/serve/worker/host-auth.ts +1 -1
- package/src/serve/worker/index.ts +4 -1
- package/src/serve/worker/port-lifecycle.ts +45 -0
- package/src/serve/worker/serve-init.ts +9 -2
- package/src/verify/fixture.ts +1 -1
- package/dist/serve/site-ui/_astro/app.B52xr-DK.js +0 -1
- package/dist/serve/site-ui/_astro/app.DWBraPUw.js +0 -12
- package/dist/serve/site-ui/_astro/sandbox-controls.DEpnKg-O.js +0 -1169
- package/dist/serve/site-ui/_astro/writes.rpjrFzmu.js +0 -102
package/dist/cli/serve.js
CHANGED
|
@@ -10,12 +10,15 @@
|
|
|
10
10
|
* rules load (fail fast on broken rules) → SDK bundle (cached per pyric
|
|
11
11
|
* version) → static server with the `/__pyric/` namespace + HTML injection.
|
|
12
12
|
*/
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
13
|
+
import { randomBytes } from 'node:crypto';
|
|
14
|
+
import { relative, resolve } from 'node:path';
|
|
15
|
+
import { existsSync, watch as watchFile } from 'node:fs';
|
|
15
16
|
import { readFirebaseJson, readFirebaseRc } from './firebase-json.js';
|
|
16
17
|
import { bundleSdk, bundleWorker, defaultSdkEntries, resolveSiteUiDir } from '../serve/bundler.js';
|
|
17
18
|
import { isStandalone, materializeServeAssets, materializeSiteUi, embeddedWorkerVersion, } from '../serve/standalone-assets.js';
|
|
18
19
|
import { hasSandboxBuildMarker } from '../serve/sandbox-marker.js';
|
|
20
|
+
import { formatBeaconReceipt } from '../serve/beacon-route.js';
|
|
21
|
+
import { formatAiStatusLine } from '../serve/ai-status.js';
|
|
19
22
|
import { injectServeTags } from '../serve/html-injection.js';
|
|
20
23
|
import { formatActivityWarning } from '../serve/activity-warning.js';
|
|
21
24
|
import { consoleServeLogger, startStaticServer, stderrServeLogger } from '../serve/server.js';
|
|
@@ -23,6 +26,8 @@ import { createBridgeMount } from '../serve/bridge-mount.js';
|
|
|
23
26
|
import { openBrowser, shouldAutoOpen } from '../serve/open-browser.js';
|
|
24
27
|
import { readPyricConfig } from './pyric-config.js';
|
|
25
28
|
import { buildChildEnv, formatStartupEnvExport, registerModuleUrl, resolveSandboxChild, spawnSandboxChild, waitForSandboxPeer, } from './sandbox-runner.js';
|
|
29
|
+
import { reportLaunchChecks, startBeaconWatchdog, } from './sandbox-interlock.js';
|
|
30
|
+
import { scanForInlinedFirebase } from './inlined-sdk-scanner.js';
|
|
26
31
|
import { createFunctionsDevelopmentRuntime, createHttpFunctionsPeerReadiness, } from '../functions-rtdb/development-runtime.js';
|
|
27
32
|
import { discoverFunctionsRtdbProject, } from '../functions-rtdb/project.js';
|
|
28
33
|
import { createSandboxSession, SandboxSeedError, } from '../serve/sandbox-session.js';
|
|
@@ -63,6 +68,11 @@ export function serveJsonLine(runtime) {
|
|
|
63
68
|
*/
|
|
64
69
|
export async function startServe(opts) {
|
|
65
70
|
const logger = opts.logger ?? consoleServeLogger();
|
|
71
|
+
// Handshake beacons from pyric-launched children, plus the per-launch secret
|
|
72
|
+
// that authorizes one. Both live here because the route does.
|
|
73
|
+
let beaconsSeen = 0;
|
|
74
|
+
const beaconCount = () => beaconsSeen;
|
|
75
|
+
const beaconToken = randomBytes(24).toString('base64url');
|
|
66
76
|
// --fresh only means anything against the state.json file `--persist`
|
|
67
77
|
// maintains — without `--persist` there is no file to discard, so
|
|
68
78
|
// `--fresh` alone was a silent no-op (nothing happened, nothing said so).
|
|
@@ -120,12 +130,12 @@ export async function startServe(opts) {
|
|
|
120
130
|
}
|
|
121
131
|
// The import map can only remap BARE `firebase/*` specifiers. A plain bundler
|
|
122
132
|
// build (`vite build`) inlines the real SDK into the app chunk, leaving
|
|
123
|
-
// nothing to intercept
|
|
133
|
+
// nothing to intercept: the page would then talk to REAL Firebase endpoints
|
|
124
134
|
// with the sandbox's fake credentials while the injected banner claims
|
|
125
135
|
// otherwise. That hole is structural, so `pyric sandbox` refuses such a dist
|
|
126
136
|
// rather than serving it. A pyric SANDBOX build (`vite build --mode
|
|
127
137
|
// development`) carries the marker and bundles pyric's in-page adapters, so it
|
|
128
|
-
// is trusted and the scan is skipped (marker present
|
|
138
|
+
// is trusted and the scan is skipped (marker present, no real SDK to find).
|
|
129
139
|
if (!hasSandboxBuildMarker(publicDir)) {
|
|
130
140
|
const inlined = scanForInlinedFirebase(publicDir);
|
|
131
141
|
if (inlined.length > 0) {
|
|
@@ -210,6 +220,11 @@ export async function startServe(opts) {
|
|
|
210
220
|
studio: opts.ui ? { siteUiDir } : false,
|
|
211
221
|
bridgeUrl: () => mount && origin.port > 0 ? mount.wsUrl(origin) : null,
|
|
212
222
|
activity: (incident) => logger.note(formatActivityWarning(incident)),
|
|
223
|
+
beaconToken,
|
|
224
|
+
beacon: (report) => {
|
|
225
|
+
beaconsSeen += 1;
|
|
226
|
+
logger.note(formatBeaconReceipt(report));
|
|
227
|
+
},
|
|
213
228
|
permissive: opts.permissive,
|
|
214
229
|
logger,
|
|
215
230
|
});
|
|
@@ -396,7 +411,7 @@ export async function startServe(opts) {
|
|
|
396
411
|
logger.info(session.payload().storageRules
|
|
397
412
|
? `✔ rules ${session.summary.rules.storage.sourcePath} → deployed to the storage sandbox (hash ${session.summary.rules.storage.hash}; ` +
|
|
398
413
|
`edits require a restart — storage rules do not hot-reload)`
|
|
399
|
-
: `• rules no storage.rules — storage sandbox
|
|
414
|
+
: `• rules no storage.rules — storage sandbox denies client operations by default`);
|
|
400
415
|
if (uiUrl) {
|
|
401
416
|
logger.info(`✔ studio Pyric Studio: ${uiUrl}`);
|
|
402
417
|
}
|
|
@@ -406,6 +421,13 @@ export async function startServe(opts) {
|
|
|
406
421
|
if (mount) {
|
|
407
422
|
logger.info(`✔ bridge MCP endpoint: ${mount.mcpUrl(origin)} (sandbox peers over ws at /__pyric/sandbox)`);
|
|
408
423
|
}
|
|
424
|
+
// AI is a mounted service like the bridge: `/__pyric/ai-proxy` answers from
|
|
425
|
+
// the first request on, whether or not anything is configured. `pyric
|
|
426
|
+
// sandbox` has no AI flag, so the ENGINE is always the page's own `getAI()`
|
|
427
|
+
// choice (resolved lazily in the browser, since nothing here instantiates a
|
|
428
|
+
// broker to find out); what this server does decide is where the proxy
|
|
429
|
+
// forwards, and that is what the line reports.
|
|
430
|
+
logger.info(formatAiStatusLine({}));
|
|
409
431
|
let persistSummary = null;
|
|
410
432
|
const persistence = session.summary.persistence;
|
|
411
433
|
if (persistence) {
|
|
@@ -449,7 +471,8 @@ export async function startServe(opts) {
|
|
|
449
471
|
logger.note('');
|
|
450
472
|
logger.note(' ⚠ the pyric sandbox runs IN the served page — keep the browser tab open.');
|
|
451
473
|
logger.note(' Firestore/auth data and persistence stop when no page is open.');
|
|
452
|
-
|
|
474
|
+
const mcpUrl = mount ? mount.mcpUrl(origin) : null;
|
|
475
|
+
return { handle, publicDir, payload, uiUrl, mcpUrl, persist: persistSummary, beaconCount, beaconToken };
|
|
453
476
|
}
|
|
454
477
|
/**
|
|
455
478
|
* `--ui` implies `--bridge` (hybrid-MCP plan Phase 3): a Studio user almost
|
|
@@ -638,6 +661,7 @@ export async function runServe(parsed) {
|
|
|
638
661
|
void openBrowser(targetUrl);
|
|
639
662
|
}
|
|
640
663
|
let devChild = null;
|
|
664
|
+
let beaconWatchdog = null;
|
|
641
665
|
let functionsRuntime = null;
|
|
642
666
|
let resolveFunctionsExit;
|
|
643
667
|
const functionsExited = new Promise((resolve) => { resolveFunctionsExit = resolve; });
|
|
@@ -659,6 +683,7 @@ export async function runServe(parsed) {
|
|
|
659
683
|
]);
|
|
660
684
|
const stopAfterSignal = async () => {
|
|
661
685
|
(json ? process.stderr : process.stdout).write('\nShutting down...\n');
|
|
686
|
+
beaconWatchdog?.stop();
|
|
662
687
|
if (devChild && devChild.child.exitCode === null)
|
|
663
688
|
devChild.signal(await signal);
|
|
664
689
|
await functionsRuntime?.close().catch(() => undefined);
|
|
@@ -701,6 +726,7 @@ export async function runServe(parsed) {
|
|
|
701
726
|
baseEnv: process.env,
|
|
702
727
|
serveUrl: runtime.handle.url,
|
|
703
728
|
registerUrl: registerModuleUrl(),
|
|
729
|
+
beaconToken: runtime.beaconToken,
|
|
704
730
|
instance: `${functionsProjectId}-default-rtdb`,
|
|
705
731
|
location: process.env.PYRIC_FUNCTIONS_RTDB_REGION ?? 'us-central1',
|
|
706
732
|
projectId: functionsProjectId ?? 'demo-project',
|
|
@@ -758,19 +784,36 @@ export async function runServe(parsed) {
|
|
|
758
784
|
`open ${runtime.handle.url} to connect if your command performs Firebase operations.\n`);
|
|
759
785
|
}
|
|
760
786
|
info.write(`✔ run \`${plan.label}\` — firebase-admin/firebase imports are routed to the sandbox at ${runtime.handle.url}\n`);
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
787
|
+
const childEnv = buildChildEnv(process.env, {
|
|
788
|
+
serveUrl: runtime.handle.url,
|
|
789
|
+
registerUrl: registerModuleUrl(),
|
|
790
|
+
beaconToken: runtime.beaconToken,
|
|
791
|
+
});
|
|
792
|
+
// What we are handing the child, stated before it starts: the interlock
|
|
793
|
+
// line and the unsupported-runtime check.
|
|
794
|
+
const interlock = reportLaunchChecks({
|
|
795
|
+
childEnv,
|
|
796
|
+
registerUrl: registerModuleUrl(),
|
|
797
|
+
argv: plan.argv,
|
|
798
|
+
write: (line) => info.write(line),
|
|
799
|
+
});
|
|
800
|
+
devChild = spawnSandboxChild(plan, { cwd, json, env: childEnv });
|
|
801
|
+
// A child still alive well after launch that never posted a beacon is very
|
|
802
|
+
// likely not intercepted. `startBeaconWatchdog` says why this only warns.
|
|
803
|
+
const beaconsAtSpawn = runtime.beaconCount();
|
|
804
|
+
beaconWatchdog = startBeaconWatchdog({
|
|
805
|
+
label: plan.label,
|
|
806
|
+
beacon: interlock.beacon,
|
|
807
|
+
sawBeacon: () => runtime.beaconCount() > beaconsAtSpawn,
|
|
808
|
+
isAlive: () => devChild !== null && devChild.child.exitCode === null,
|
|
809
|
+
warn: (line) => void process.stderr.write(`${line}\n`),
|
|
768
810
|
});
|
|
769
811
|
}
|
|
770
812
|
else if (!json) {
|
|
771
813
|
process.stdout.write(formatStartupEnvExport({
|
|
772
814
|
serveUrl: runtime.handle.url,
|
|
773
815
|
registerUrl: registerModuleUrl(),
|
|
816
|
+
beaconToken: runtime.beaconToken,
|
|
774
817
|
}));
|
|
775
818
|
}
|
|
776
819
|
return await new Promise((resolveExit) => {
|
|
@@ -781,6 +824,7 @@ export async function runServe(parsed) {
|
|
|
781
824
|
return;
|
|
782
825
|
settled = true;
|
|
783
826
|
void (async () => {
|
|
827
|
+
beaconWatchdog?.stop();
|
|
784
828
|
await functionsRuntime?.close().catch(() => undefined);
|
|
785
829
|
if (devChild && devChild.child.exitCode === null) {
|
|
786
830
|
devChild.signal('SIGTERM');
|
|
@@ -821,68 +865,4 @@ export async function runServe(parsed) {
|
|
|
821
865
|
void signal.then(shutdown);
|
|
822
866
|
});
|
|
823
867
|
}
|
|
824
|
-
/**
|
|
825
|
-
* Detect a bundler build that INLINED the real firebase SDK into its served
|
|
826
|
-
* assets (`vite build` output). The served import map remaps only bare
|
|
827
|
-
* `firebase/*` specifiers, so such a build cannot be sandboxed — its calls
|
|
828
|
-
* reach real Google endpoints. Fingerprints are real-SDK-only endpoint hosts
|
|
829
|
-
* that never appear in a sandbox-clean app (whose calls all route to
|
|
830
|
-
* `/__pyric/*`). Bounded: depth ≤ 4, ≤ 200 script files, first hit per file.
|
|
831
|
-
* Returns publicDir-relative paths of offending assets.
|
|
832
|
-
*/
|
|
833
|
-
export function scanForInlinedFirebase(dir) {
|
|
834
|
-
const FINGERPRINTS = [
|
|
835
|
-
'identitytoolkit.googleapis.com',
|
|
836
|
-
'firestore.googleapis.com',
|
|
837
|
-
'securetoken.googleapis.com',
|
|
838
|
-
'firebasedatabase.app',
|
|
839
|
-
];
|
|
840
|
-
const hits = [];
|
|
841
|
-
let scanned = 0;
|
|
842
|
-
const walk = (d, rel, depth) => {
|
|
843
|
-
if (depth > 4 || scanned >= 200)
|
|
844
|
-
return;
|
|
845
|
-
let names;
|
|
846
|
-
try {
|
|
847
|
-
names = readdirSync(d);
|
|
848
|
-
}
|
|
849
|
-
catch {
|
|
850
|
-
return;
|
|
851
|
-
}
|
|
852
|
-
for (const name of names) {
|
|
853
|
-
if (scanned >= 200)
|
|
854
|
-
return;
|
|
855
|
-
const p = join(d, name);
|
|
856
|
-
const r = rel ? `${rel}/${name}` : name;
|
|
857
|
-
let st;
|
|
858
|
-
try {
|
|
859
|
-
st = statSync(p);
|
|
860
|
-
}
|
|
861
|
-
catch {
|
|
862
|
-
continue;
|
|
863
|
-
}
|
|
864
|
-
if (st.isDirectory()) {
|
|
865
|
-
// The pyric namespace itself never lands in hosting.public, but a
|
|
866
|
-
// node_modules inside a served dir would be a scan-cost trap.
|
|
867
|
-
// Dot-directories (.next, .git, .pyric) are internal caches and must be ignored.
|
|
868
|
-
if (name === 'node_modules' || name.startsWith('.'))
|
|
869
|
-
continue;
|
|
870
|
-
walk(p, r, depth + 1);
|
|
871
|
-
}
|
|
872
|
-
else if (/\.(js|mjs)$/.test(name)) {
|
|
873
|
-
scanned++;
|
|
874
|
-
try {
|
|
875
|
-
const text = readFileSync(p, 'utf8');
|
|
876
|
-
if (FINGERPRINTS.some((f) => text.includes(f)))
|
|
877
|
-
hits.push(r);
|
|
878
|
-
}
|
|
879
|
-
catch {
|
|
880
|
-
// unreadable asset: skip
|
|
881
|
-
}
|
|
882
|
-
}
|
|
883
|
-
}
|
|
884
|
-
};
|
|
885
|
-
walk(dir, '', 0);
|
|
886
|
-
return hits;
|
|
887
|
-
}
|
|
888
868
|
//# sourceMappingURL=serve.js.map
|
package/dist/cli/serve.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/cli/serve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/cli/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Child runtimes that cannot evaluate Node loader hooks, and the one warning
|
|
3
|
+
* that says what is lost when a command starts one.
|
|
4
|
+
*/
|
|
5
|
+
/** Tokens that end one command and begin the next inside a shell string. */
|
|
6
|
+
export declare const SHELL_OPERATORS: Set<string>;
|
|
7
|
+
/**
|
|
8
|
+
* Decide whether the child command starts a runtime that cannot intercept.
|
|
9
|
+
*
|
|
10
|
+
* Detection is by command name: argv[0], and any token that begins a new
|
|
11
|
+
* command after a shell operator, with leading `KEY=VAL` assignments skipped
|
|
12
|
+
* and the path and `.exe` decoration stripped. That is the honest 90%.
|
|
13
|
+
* `npm run dev` whose package script shells out to bun is undetectable from
|
|
14
|
+
* here, and guessing would cost false positives on names that merely start
|
|
15
|
+
* with the same letters (`bundle exec`).
|
|
16
|
+
*
|
|
17
|
+
* Returns the canonical runtime name (`bun` for `bunx` too) or null.
|
|
18
|
+
*/
|
|
19
|
+
export declare function detectUnsupportedRuntime(argv: readonly string[]): string | null;
|
|
20
|
+
/**
|
|
21
|
+
* The one warning. It has to say both halves of what is lost: the loader swap
|
|
22
|
+
* (interception itself) and the net guard (the socket backstop that would
|
|
23
|
+
* otherwise catch the egress), because the guard is installed by the same
|
|
24
|
+
* `--import`ed register module and is therefore just as absent.
|
|
25
|
+
*/
|
|
26
|
+
export declare function formatUnsupportedRuntimeWarning(runtime: string): string;
|
|
27
|
+
//# sourceMappingURL=unsupported-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsupported-runtime.d.ts","sourceRoot":"","sources":["../../src/cli/unsupported-runtime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4EAA4E;AAC5E,eAAO,MAAM,eAAe,aAAuC,CAAC;AAkBpE;;;;;;;;;;;GAWG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAe/E;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQvE"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Child runtimes that cannot evaluate Node loader hooks, and the one warning
|
|
3
|
+
* that says what is lost when a command starts one.
|
|
4
|
+
*/
|
|
5
|
+
/** Tokens that end one command and begin the next inside a shell string. */
|
|
6
|
+
export const SHELL_OPERATORS = new Set(['&&', '||', '|', ';', '&']);
|
|
7
|
+
/** Command basenames that cannot evaluate Node loader hooks, to the runtime. */
|
|
8
|
+
const UNSUPPORTED_RUNTIME_BINARIES = new Map([
|
|
9
|
+
['bun', 'bun'],
|
|
10
|
+
['bunx', 'bun'],
|
|
11
|
+
['deno', 'deno'],
|
|
12
|
+
]);
|
|
13
|
+
/** Leading `KEY=VAL` environment assignments in a shell command. */
|
|
14
|
+
const ENV_ASSIGNMENT = /^[A-Za-z_][A-Za-z0-9_]*=/;
|
|
15
|
+
/** Strip directory and a Windows `.exe` suffix from a command token. */
|
|
16
|
+
function commandBasename(token) {
|
|
17
|
+
const base = token.split(/[\\/]/).pop() ?? token;
|
|
18
|
+
return base.toLowerCase().replace(/\.exe$/, '');
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Decide whether the child command starts a runtime that cannot intercept.
|
|
22
|
+
*
|
|
23
|
+
* Detection is by command name: argv[0], and any token that begins a new
|
|
24
|
+
* command after a shell operator, with leading `KEY=VAL` assignments skipped
|
|
25
|
+
* and the path and `.exe` decoration stripped. That is the honest 90%.
|
|
26
|
+
* `npm run dev` whose package script shells out to bun is undetectable from
|
|
27
|
+
* here, and guessing would cost false positives on names that merely start
|
|
28
|
+
* with the same letters (`bundle exec`).
|
|
29
|
+
*
|
|
30
|
+
* Returns the canonical runtime name (`bun` for `bunx` too) or null.
|
|
31
|
+
*/
|
|
32
|
+
export function detectUnsupportedRuntime(argv) {
|
|
33
|
+
let atCommandStart = true;
|
|
34
|
+
for (const token of argv) {
|
|
35
|
+
if (atCommandStart && ENV_ASSIGNMENT.test(token))
|
|
36
|
+
continue;
|
|
37
|
+
if (SHELL_OPERATORS.has(token)) {
|
|
38
|
+
atCommandStart = true;
|
|
39
|
+
continue;
|
|
40
|
+
}
|
|
41
|
+
if (atCommandStart) {
|
|
42
|
+
const runtime = UNSUPPORTED_RUNTIME_BINARIES.get(commandBasename(token));
|
|
43
|
+
if (runtime !== undefined)
|
|
44
|
+
return runtime;
|
|
45
|
+
atCommandStart = false;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The one warning. It has to say both halves of what is lost: the loader swap
|
|
52
|
+
* (interception itself) and the net guard (the socket backstop that would
|
|
53
|
+
* otherwise catch the egress), because the guard is installed by the same
|
|
54
|
+
* `--import`ed register module and is therefore just as absent.
|
|
55
|
+
*/
|
|
56
|
+
export function formatUnsupportedRuntimeWarning(runtime) {
|
|
57
|
+
return (` ⚠ runtime: pyric interception is not supported under \`${runtime}\`. It does not evaluate ` +
|
|
58
|
+
`Node loader hooks, so the child's firebase/firebase-admin imports will NOT be rewritten and ` +
|
|
59
|
+
`may reach LIVE Firebase. The net-guard socket backstop also only applies under Node, so it ` +
|
|
60
|
+
`will not catch that egress either. Run the command under \`node\` (or \`npx tsx\`) for the ` +
|
|
61
|
+
`sandbox swap. Warning only: nothing was blocked.\n`);
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=unsupported-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unsupported-runtime.js","sourceRoot":"","sources":["../../src/cli/unsupported-runtime.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4EAA4E;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAEpE,gFAAgF;AAChF,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAiB;IAC3D,CAAC,KAAK,EAAE,KAAK,CAAC;IACd,CAAC,MAAM,EAAE,KAAK,CAAC;IACf,CAAC,MAAM,EAAE,MAAM,CAAC;CACjB,CAAC,CAAC;AAEH,oEAAoE;AACpE,MAAM,cAAc,GAAG,0BAA0B,CAAC;AAElD,wEAAwE;AACxE,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC;IACjD,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAuB;IAC9D,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,KAAK,MAAM,KAAK,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,cAAc,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,SAAS;QAC3D,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,cAAc,GAAG,IAAI,CAAC;YACtB,SAAS;QACX,CAAC;QACD,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,OAAO,GAAG,4BAA4B,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACzE,IAAI,OAAO,KAAK,SAAS;gBAAE,OAAO,OAAO,CAAC;YAC1C,cAAc,GAAG,KAAK,CAAC;QACzB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B,CAAC,OAAe;IAC7D,OAAO,CACL,4DAA4D,OAAO,2BAA2B;QAC9F,8FAA8F;QAC9F,6FAA6F;QAC7F,6FAA6F;QAC7F,oDAAoD,CACrD,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type DeveloperSurface = "ai" | "app" | "auth" | "firestore" | "firestore-rules" | "functions-rtdb" | "messaging" | "messaging-admin" | "rtdb" | "rtdb-rules" | "storage" | "storage-rules";
|
|
1
|
+
export type DeveloperSurface = "ai" | "app" | "auth" | "firestore" | "firestore-flutter" | "firestore-rules" | "functions-rtdb" | "messaging" | "messaging-admin" | "rtdb" | "rtdb-rules" | "storage" | "storage-rules";
|
|
2
2
|
export type Availability = 'available' | 'unavailable' | 'deferred' | 'out-of-scope';
|
|
3
3
|
export type Fidelity = 'conforms' | 'diverged' | 'bug' | 'unsupported' | 'unverified' | 'not-applicable';
|
|
4
4
|
export type Assurance = 'eligible' | 'qualified' | 'ineligible' | 'not-applicable';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"can-i-use-browser.d.ts","sourceRoot":"","sources":["../../../src/conformance/.generated/can-i-use-browser.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,WAAW,GAAG,iBAAiB,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"can-i-use-browser.d.ts","sourceRoot":"","sources":["../../../src/conformance/.generated/can-i-use-browser.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,mBAAmB,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,WAAW,GAAG,iBAAiB,GAAG,MAAM,GAAG,YAAY,GAAG,SAAS,GAAG,eAAe,CAAC;AACxN,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,GAAG,cAAc,CAAC;AACrF,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,GAAG,aAAa,GAAG,YAAY,GAAG,gBAAgB,CAAC;AACzG,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,gBAAgB,CAAC;AACnF,MAAM,WAAW,qBAAqB;IAAG,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAC;IAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;CAAE;AAC/P,eAAO,MAAM,oBAAoB,EAAE,SAAS,qBAAqB,EAAqhsX,CAAC;AAEvlsX,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,WAAW,GAAG,aAAa,GAAG,MAAM,CAAC;AAE1E,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,uBAAuB;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACtC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;6BAE6B;AAC7B,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,uBAAuB,EACrE,QAAQ,EAAE,SAAS,CAAC,EAAE,EACtB,UAAU,EAAE,MAAM,GACjB,CAAC,GAAG,SAAS,CAEf;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEtD;AAoBD;;8EAE8E;AAC9E,wBAAgB,cAAc,CAAC,CAAC,SAAS,uBAAuB,EAC9D,QAAQ,EAAE,SAAS,CAAC,EAAE,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,cAAmB,GAC3B,aAAa,CAAC,CAAC,CAAC,CAwClB"}
|