@pyric/cli 0.1.0-alpha.12 → 0.1.0-alpha.14

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.
Files changed (230) hide show
  1. package/dist/cli/serve.js +5 -5
  2. package/dist/cli/serve.js.map +1 -1
  3. package/dist/serve/bundler.d.ts +15 -8
  4. package/dist/serve/bundler.d.ts.map +1 -1
  5. package/dist/serve/bundler.js +38 -37
  6. package/dist/serve/bundler.js.map +1 -1
  7. package/dist/serve/docs-ui/docs/_rhythm/index.html +1 -1
  8. package/dist/serve/docs-ui/docs/agent/set-up-your-agent/index.html +1 -1
  9. package/dist/serve/docs-ui/docs/agent/watch-and-review/index.html +1 -1
  10. package/dist/serve/docs-ui/docs/agent/work-with-an-agent/index.html +1 -1
  11. package/dist/serve/docs-ui/docs/ai-compat/index.html +1 -1
  12. package/dist/serve/docs-ui/docs/api-reference/index.html +1 -1
  13. package/dist/serve/docs-ui/docs/app-compat/index.html +1 -1
  14. package/dist/serve/docs-ui/docs/auth-compat/index.html +1 -1
  15. package/dist/serve/docs-ui/docs/build/ai-logic/index.html +44 -22
  16. package/dist/serve/docs-ui/docs/build/ai-logic.md +69 -21
  17. package/dist/serve/docs-ui/docs/build/authentication/index.html +1 -1
  18. package/dist/serve/docs-ui/docs/build/cloud-firestore/index.html +1 -1
  19. package/dist/serve/docs-ui/docs/build/cloud-messaging/index.html +1 -1
  20. package/dist/serve/docs-ui/docs/build/cloud-storage/index.html +1 -1
  21. package/dist/serve/docs-ui/docs/build/realtime-database/index.html +1 -1
  22. package/dist/serve/docs-ui/docs/conformance-scores/index.html +1 -1
  23. package/dist/serve/docs-ui/docs/create-pyric-reference-api/index.html +1 -1
  24. package/dist/serve/docs-ui/docs/database-compat/index.html +1 -1
  25. package/dist/serve/docs-ui/docs/firestore-compat/index.html +1 -1
  26. package/dist/serve/docs-ui/docs/functions-rtdb-compat/index.html +1 -1
  27. package/dist/serve/docs-ui/docs/get-started/how-the-swap-works/index.html +2 -1
  28. package/dist/serve/docs-ui/docs/get-started/how-the-swap-works.md +2 -0
  29. package/dist/serve/docs-ui/docs/get-started/start-building/index.html +3 -2
  30. package/dist/serve/docs-ui/docs/get-started/start-building.md +3 -1
  31. package/dist/serve/docs-ui/docs/index.json +149 -4
  32. package/dist/serve/docs-ui/docs/messaging-compat/index.html +1 -1
  33. package/dist/serve/docs-ui/docs/observe/resolve-runtime-status/index.html +28 -0
  34. package/dist/serve/docs-ui/docs/observe/resolve-runtime-status.md +47 -0
  35. package/dist/serve/docs-ui/docs/observe/see-whats-happening/index.html +1 -1
  36. package/dist/serve/docs-ui/docs/observe/shape-your-data/index.html +1 -1
  37. package/dist/serve/docs-ui/docs/overview/index.html +1 -1
  38. package/dist/serve/docs-ui/docs/pyric-admin-app-reference-api/index.html +1 -1
  39. package/dist/serve/docs-ui/docs/pyric-admin-auth-reference-api/index.html +1 -1
  40. package/dist/serve/docs-ui/docs/pyric-admin-database-reference-api/index.html +1 -1
  41. package/dist/serve/docs-ui/docs/pyric-admin-firestore-reference-api/index.html +1 -1
  42. package/dist/serve/docs-ui/docs/pyric-admin-messaging-reference-api/index.html +1 -1
  43. package/dist/serve/docs-ui/docs/pyric-admin-storage-reference-api/index.html +1 -1
  44. package/dist/serve/docs-ui/docs/pyric-ai-reference-api/index.html +1 -1
  45. package/dist/serve/docs-ui/docs/pyric-ai-scripting-reference-api/index.html +1 -1
  46. package/dist/serve/docs-ui/docs/pyric-app-reference-api/index.html +1 -1
  47. package/dist/serve/docs-ui/docs/pyric-auth-reference-api/index.html +1 -1
  48. package/dist/serve/docs-ui/docs/pyric-cli-assurance-browser-reference-api/index.html +1 -1
  49. package/dist/serve/docs-ui/docs/pyric-cli-assurance-reference-api/index.html +1 -1
  50. package/dist/serve/docs-ui/docs/pyric-cli-bridge-client-reference-api/index.html +1 -1
  51. package/dist/serve/docs-ui/docs/pyric-cli-bridge-reference-api/index.html +1 -1
  52. package/dist/serve/docs-ui/docs/pyric-cli-conformance-browser-reference-api/index.html +1 -1
  53. package/dist/serve/docs-ui/docs/pyric-cli-conformance-docs-reference-api/index.html +1 -1
  54. package/dist/serve/docs-ui/docs/pyric-cli-conformance-reference-api/index.html +1 -1
  55. package/dist/serve/docs-ui/docs/pyric-cli-credentials-node-reference-api/index.html +1 -1
  56. package/dist/serve/docs-ui/docs/pyric-cli-discover-reference-api/index.html +1 -1
  57. package/dist/serve/docs-ui/docs/pyric-cli-register-reference-api/index.html +1 -1
  58. package/dist/serve/docs-ui/docs/pyric-cli-remote-reference-api/index.html +1 -1
  59. package/dist/serve/docs-ui/docs/pyric-cli-serve-worker-reference-api/index.html +38 -11
  60. package/dist/serve/docs-ui/docs/pyric-cli-serve-worker-reference-api.md +26 -8
  61. package/dist/serve/docs-ui/docs/pyric-cli-verify-reference-api/index.html +1 -1
  62. package/dist/serve/docs-ui/docs/pyric-cli-vite-reference-api/index.html +11 -8
  63. package/dist/serve/docs-ui/docs/pyric-cli-vite-reference-api.md +17 -4
  64. package/dist/serve/docs-ui/docs/pyric-database-reference-api/index.html +1 -1
  65. package/dist/serve/docs-ui/docs/pyric-firestore-reference-api/index.html +1 -1
  66. package/dist/serve/docs-ui/docs/pyric-messaging-reference-api/index.html +1 -1
  67. package/dist/serve/docs-ui/docs/pyric-messaging-sw-reference-api/index.html +1 -1
  68. package/dist/serve/docs-ui/docs/pyric-rules-reference-api/index.html +1 -1
  69. package/dist/serve/docs-ui/docs/pyric-sandbox-database-reference-api/index.html +1 -1
  70. package/dist/serve/docs-ui/docs/pyric-sandbox-firestore-reference-api/index.html +1 -1
  71. package/dist/serve/docs-ui/docs/pyric-sandbox-reference-api/index.html +1 -1
  72. package/dist/serve/docs-ui/docs/pyric-storage-reference-api/index.html +1 -1
  73. package/dist/serve/docs-ui/docs/pyric-ui-agents-reference-api/index.html +1 -1
  74. package/dist/serve/docs-ui/docs/pyric-ui-auth-hooks-reference-api/index.html +1 -1
  75. package/dist/serve/docs-ui/docs/pyric-ui-auth-reference-api/index.html +1 -1
  76. package/dist/serve/docs-ui/docs/pyric-ui-events-hooks-reference-api/index.html +1 -1
  77. package/dist/serve/docs-ui/docs/pyric-ui-events-reference-api/index.html +1 -1
  78. package/dist/serve/docs-ui/docs/pyric-ui-firestore-hooks-reference-api/index.html +1 -1
  79. package/dist/serve/docs-ui/docs/pyric-ui-firestore-reference-api/index.html +1 -1
  80. package/dist/serve/docs-ui/docs/pyric-ui-primitives-reference-api/index.html +1 -1
  81. package/dist/serve/docs-ui/docs/pyric-ui-rtdb-reference-api/index.html +1 -1
  82. package/dist/serve/docs-ui/docs/pyric-ui-rules-hooks-reference-api/index.html +1 -1
  83. package/dist/serve/docs-ui/docs/pyric-ui-rules-reference-api/index.html +1 -1
  84. package/dist/serve/docs-ui/docs/pyric-ui-storage-hooks-reference-api/index.html +1 -1
  85. package/dist/serve/docs-ui/docs/pyric-ui-storage-reference-api/index.html +1 -1
  86. package/dist/serve/docs-ui/docs/pyric-ui-traffic-hooks-reference-api/index.html +1 -1
  87. package/dist/serve/docs-ui/docs/pyric-ui-traffic-reference-api/index.html +1 -1
  88. package/dist/serve/docs-ui/docs/rules-compat/index.html +1 -1
  89. package/dist/serve/docs-ui/docs/secure/audit-your-rules/index.html +1 -1
  90. package/dist/serve/docs-ui/docs/secure/firestore-rules-limits/index.html +1 -1
  91. package/dist/serve/docs-ui/docs/secure/read-a-denial/index.html +1 -1
  92. package/dist/serve/docs-ui/docs/secure/rtdb-rules-in-typescript/index.html +1 -1
  93. package/dist/serve/docs-ui/docs/secure/rules-standard-library/index.html +1 -1
  94. package/dist/serve/docs-ui/docs/secure/secure-it-with-rules/index.html +1 -1
  95. package/dist/serve/docs-ui/docs/secure/simulate-and-lint/index.html +1 -1
  96. package/dist/serve/docs-ui/docs/secure/write-a-rules-test-suite/index.html +1 -1
  97. package/dist/serve/docs-ui/docs/ship/ship-to-production/index.html +1 -1
  98. package/dist/serve/docs-ui/docs/ship/test-in-node/index.html +1 -1
  99. package/dist/serve/docs-ui/docs/storage-compat/index.html +1 -1
  100. package/dist/serve/docs-ui/docs/trust/how-we-know-it-matches-firebase/index.html +1 -1
  101. package/dist/serve/docs-ui/docs/trust/versioning-and-compatibility/index.html +1 -1
  102. package/dist/serve/docs-ui/docs/tutorial/index.html +429 -0
  103. package/dist/serve/docs-ui/docs/tutorial.md +701 -0
  104. package/dist/serve/docs-ui/llms.txt +2 -0
  105. package/dist/serve/entries/init.d.ts.map +1 -1
  106. package/dist/serve/entries/init.js +3 -0
  107. package/dist/serve/entries/init.js.map +1 -1
  108. package/dist/serve/entries/runtime.d.ts.map +1 -1
  109. package/dist/serve/entries/runtime.js +20 -5
  110. package/dist/serve/entries/runtime.js.map +1 -1
  111. package/dist/serve/entries/worker-runtime.d.ts +2 -2
  112. package/dist/serve/entries/worker-runtime.d.ts.map +1 -1
  113. package/dist/serve/entries/worker-runtime.js +45 -10
  114. package/dist/serve/entries/worker-runtime.js.map +1 -1
  115. package/dist/serve/runtime/chip-config.d.ts +19 -0
  116. package/dist/serve/runtime/chip-config.d.ts.map +1 -0
  117. package/dist/serve/runtime/chip-config.js +19 -0
  118. package/dist/serve/runtime/chip-config.js.map +1 -0
  119. package/dist/serve/runtime/chip-install.d.ts +10 -0
  120. package/dist/serve/runtime/chip-install.d.ts.map +1 -0
  121. package/dist/serve/runtime/chip-install.js +15 -0
  122. package/dist/serve/runtime/chip-install.js.map +1 -0
  123. package/dist/serve/runtime/chip.d.ts +17 -0
  124. package/dist/serve/runtime/chip.d.ts.map +1 -0
  125. package/dist/serve/runtime/chip.js +257 -0
  126. package/dist/serve/runtime/chip.js.map +1 -0
  127. package/dist/serve/runtime/manifest.d.ts +22 -0
  128. package/dist/serve/runtime/manifest.d.ts.map +1 -0
  129. package/dist/serve/runtime/manifest.js +20 -0
  130. package/dist/serve/runtime/manifest.js.map +1 -0
  131. package/dist/serve/runtime/status.d.ts +49 -0
  132. package/dist/serve/runtime/status.d.ts.map +1 -0
  133. package/dist/serve/runtime/status.js +164 -0
  134. package/dist/serve/runtime/status.js.map +1 -0
  135. package/dist/serve/runtime/worker-connection.d.ts +4 -0
  136. package/dist/serve/runtime/worker-connection.d.ts.map +1 -0
  137. package/dist/serve/runtime/worker-connection.js +11 -0
  138. package/dist/serve/runtime/worker-connection.js.map +1 -0
  139. package/dist/serve/runtime/worker-generation.d.ts +22 -0
  140. package/dist/serve/runtime/worker-generation.d.ts.map +1 -0
  141. package/dist/serve/runtime/worker-generation.js +77 -0
  142. package/dist/serve/runtime/worker-generation.js.map +1 -0
  143. package/dist/serve/runtime/worker-replacement.d.ts +18 -0
  144. package/dist/serve/runtime/worker-replacement.d.ts.map +1 -0
  145. package/dist/serve/runtime/worker-replacement.js +29 -0
  146. package/dist/serve/runtime/worker-replacement.js.map +1 -0
  147. package/dist/serve/standalone-assets.d.ts +2 -2
  148. package/dist/serve/standalone-assets.d.ts.map +1 -1
  149. package/dist/serve/standalone-assets.js +1 -1
  150. package/dist/serve/standalone-assets.js.map +1 -1
  151. package/dist/serve/studio-ui/assets/{RulesCodeEditor-CxVYcZXw.js → RulesCodeEditor-BDlH-5lp.js} +1 -1
  152. package/dist/serve/studio-ui/assets/{index-cpSfgQ7H.js → index-Bf9SSE8L.js} +5 -5
  153. package/dist/serve/studio-ui/assets/{seed-DeuFKi4J.js → seed-D_UjxfOU.js} +1 -1
  154. package/dist/serve/studio-ui/index.html +1 -1
  155. package/dist/serve/vite-ai-config.d.ts +27 -0
  156. package/dist/serve/vite-ai-config.d.ts.map +1 -0
  157. package/dist/serve/vite-ai-config.js +49 -0
  158. package/dist/serve/vite-ai-config.js.map +1 -0
  159. package/dist/serve/vite-plugin.d.ts +17 -36
  160. package/dist/serve/vite-plugin.d.ts.map +1 -1
  161. package/dist/serve/vite-plugin.js +38 -57
  162. package/dist/serve/vite-plugin.js.map +1 -1
  163. package/dist/serve/vite-rules-source.d.ts +8 -0
  164. package/dist/serve/vite-rules-source.d.ts.map +1 -0
  165. package/dist/serve/vite-rules-source.js +23 -0
  166. package/dist/serve/vite-rules-source.js.map +1 -0
  167. package/dist/serve/vite-worker-runtime.d.ts +20 -0
  168. package/dist/serve/vite-worker-runtime.d.ts.map +1 -0
  169. package/dist/serve/vite-worker-runtime.js +29 -0
  170. package/dist/serve/vite-worker-runtime.js.map +1 -0
  171. package/dist/serve/worker/client/connection.d.ts +7 -2
  172. package/dist/serve/worker/client/connection.d.ts.map +1 -1
  173. package/dist/serve/worker/client/connection.js +13 -16
  174. package/dist/serve/worker/client/connection.js.map +1 -1
  175. package/dist/serve/worker/client/core.d.ts +7 -0
  176. package/dist/serve/worker/client/core.d.ts.map +1 -1
  177. package/dist/serve/worker/client/core.js +28 -0
  178. package/dist/serve/worker/client/core.js.map +1 -1
  179. package/dist/serve/worker/client/runtime-control.d.ts +8 -0
  180. package/dist/serve/worker/client/runtime-control.d.ts.map +1 -0
  181. package/dist/serve/worker/client/runtime-control.js +11 -0
  182. package/dist/serve/worker/client/runtime-control.js.map +1 -0
  183. package/dist/serve/worker/entry.js +44 -2
  184. package/dist/serve/worker/entry.js.map +1 -1
  185. package/dist/serve/worker/host/studio.js +1 -1
  186. package/dist/serve/worker/host/studio.js.map +1 -1
  187. package/dist/serve/worker/host-context.d.ts +1 -1
  188. package/dist/serve/worker/host-context.d.ts.map +1 -1
  189. package/dist/serve/worker/protocol.d.ts +15 -1
  190. package/dist/serve/worker/protocol.d.ts.map +1 -1
  191. package/dist/serve/worker/protocol.js.map +1 -1
  192. package/dist/serve/worker/retirement.d.ts +21 -0
  193. package/dist/serve/worker/retirement.d.ts.map +1 -0
  194. package/dist/serve/worker/retirement.js +97 -0
  195. package/dist/serve/worker/retirement.js.map +1 -0
  196. package/dist/serve/worker/serve-init.d.ts.map +1 -1
  197. package/dist/serve/worker/serve-init.js +5 -6
  198. package/dist/serve/worker/serve-init.js.map +1 -1
  199. package/dist/vite.d.ts +1 -0
  200. package/dist/vite.d.ts.map +1 -1
  201. package/dist/vite.js.map +1 -1
  202. package/package.json +5 -4
  203. package/src/cli/serve.ts +5 -5
  204. package/src/serve/bundler.ts +49 -16
  205. package/src/serve/entries/init.ts +3 -0
  206. package/src/serve/entries/runtime.ts +23 -7
  207. package/src/serve/entries/worker-runtime.ts +69 -9
  208. package/src/serve/runtime/chip-config.ts +30 -0
  209. package/src/serve/runtime/chip-install.ts +27 -0
  210. package/src/serve/runtime/chip.ts +282 -0
  211. package/src/serve/runtime/manifest.ts +37 -0
  212. package/src/serve/runtime/status.ts +216 -0
  213. package/src/serve/runtime/worker-connection.ts +14 -0
  214. package/src/serve/runtime/worker-generation.ts +97 -0
  215. package/src/serve/runtime/worker-replacement.ts +42 -0
  216. package/src/serve/standalone-assets.ts +2 -2
  217. package/src/serve/vite-ai-config.ts +85 -0
  218. package/src/serve/vite-plugin.ts +61 -87
  219. package/src/serve/vite-rules-source.ts +28 -0
  220. package/src/serve/vite-worker-runtime.ts +58 -0
  221. package/src/serve/worker/client/connection.ts +29 -4
  222. package/src/serve/worker/client/core.ts +34 -0
  223. package/src/serve/worker/client/runtime-control.ts +22 -0
  224. package/src/serve/worker/entry.ts +46 -2
  225. package/src/serve/worker/host/studio.ts +1 -1
  226. package/src/serve/worker/host-context.ts +1 -1
  227. package/src/serve/worker/protocol.ts +13 -1
  228. package/src/serve/worker/retirement.ts +125 -0
  229. package/src/serve/worker/serve-init.ts +5 -6
  230. package/src/vite.ts +1 -0
@@ -1,4 +1,4 @@
1
- import{s as f,a as o,b as d,d as s,G as h,c as n,e as w,f as A,u as m,r as p,T as g}from"./index-cpSfgQ7H.js";async function y(a){n.createUser(a,{uid:"alice",email:"alice@gmail.com",displayName:"Alice Nguyen",emailVerified:!0,photoUrl:"https://lh3.googleusercontent.com/a/alice",providerUserInfo:[{providerId:"google.com"}],customClaims:{plan:"pro"}}),n.createUser(a,{uid:"bob",email:"bob@example.com",password:"pyric-demo",displayName:"Bob Carter",emailVerified:!0,customClaims:{role:"editor"}}),n.createUser(a,{uid:"carol",email:"carol@example.com",displayName:"Carol Diaz",emailVerified:!1}),await w(a),await A(a)}const b=new h(37.7749,-122.4194);async function C(a){const r=Date.now(),i=e=>g.fromMillis(r-e*6e4),l=[{id:"alice",name:"Alice Nguyen",email:"alice@gmail.com",plan:"pro"},{id:"bob",name:"Bob Carter",email:"bob@example.com",plan:"free"},{id:"carol",name:"Carol Diaz",email:"carol@example.com",plan:"free"}];for(const e of l)await o(s(a,"users",e.id),{name:e.name,email:e.email,plan:e.plan,createdAt:d()});const t=["alice","bob","carol"],c=["Ship the redesign","Reply to carol","Buy milk","Draft the launch post","Review the rules","Plan offsite","Renew the domain","Read the spec","Fix the flaky test","Call the bank","Water the plants","Book the flights"];for(let e=0;e<c.length;e++){const u=t[e%t.length];await o(s(a,"notes",`note-${String(e+1).padStart(2,"0")}`),{title:c[e],done:e%3===0,pinned:e===0,priority:e%3+1,ownerId:u,ownerRef:`users/${u}`,tags:e%2===0?["work","urgent"]:["personal"],meta:{source:e%2===0?"app":"import",revision:e+1,flags:{starred:e%4===0,archived:!1}},location:e%3===0?b:null,createdAt:i(120-e*7),updatedAt:d()})}await o(s(a,"posts","post-hello"),{title:"Hello world",body:"First post from the seeded sandbox.",authorRef:"users/alice",published:!0,publishedAt:i(8)}),await o(s(a,"posts","post-draft"),{title:"Draft: roadmap",body:"Unpublished draft.",authorRef:"users/bob",published:!1})}async function R(a){const r=new TextEncoder,l=Uint8Array.from(atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYPhfDwAChwGA60e6kgAAAABJRU5ErkJggg=="),t=>t.charCodeAt(0));await m(p(a,"avatars/alice.png"),l,{contentType:"image/png"}),await m(p(a,"notes/note-01/attachment.txt"),r.encode(`Attachment for the redesign note.
1
+ import{s as f,a as o,b as d,d as s,G as h,c as n,e as w,f as A,u as m,r as p,T as g}from"./index-Bf9SSE8L.js";async function y(a){n.createUser(a,{uid:"alice",email:"alice@gmail.com",displayName:"Alice Nguyen",emailVerified:!0,photoUrl:"https://lh3.googleusercontent.com/a/alice",providerUserInfo:[{providerId:"google.com"}],customClaims:{plan:"pro"}}),n.createUser(a,{uid:"bob",email:"bob@example.com",password:"pyric-demo",displayName:"Bob Carter",emailVerified:!0,customClaims:{role:"editor"}}),n.createUser(a,{uid:"carol",email:"carol@example.com",displayName:"Carol Diaz",emailVerified:!1}),await w(a),await A(a)}const b=new h(37.7749,-122.4194);async function C(a){const r=Date.now(),i=e=>g.fromMillis(r-e*6e4),l=[{id:"alice",name:"Alice Nguyen",email:"alice@gmail.com",plan:"pro"},{id:"bob",name:"Bob Carter",email:"bob@example.com",plan:"free"},{id:"carol",name:"Carol Diaz",email:"carol@example.com",plan:"free"}];for(const e of l)await o(s(a,"users",e.id),{name:e.name,email:e.email,plan:e.plan,createdAt:d()});const t=["alice","bob","carol"],c=["Ship the redesign","Reply to carol","Buy milk","Draft the launch post","Review the rules","Plan offsite","Renew the domain","Read the spec","Fix the flaky test","Call the bank","Water the plants","Book the flights"];for(let e=0;e<c.length;e++){const u=t[e%t.length];await o(s(a,"notes",`note-${String(e+1).padStart(2,"0")}`),{title:c[e],done:e%3===0,pinned:e===0,priority:e%3+1,ownerId:u,ownerRef:`users/${u}`,tags:e%2===0?["work","urgent"]:["personal"],meta:{source:e%2===0?"app":"import",revision:e+1,flags:{starred:e%4===0,archived:!1}},location:e%3===0?b:null,createdAt:i(120-e*7),updatedAt:d()})}await o(s(a,"posts","post-hello"),{title:"Hello world",body:"First post from the seeded sandbox.",authorRef:"users/alice",published:!0,publishedAt:i(8)}),await o(s(a,"posts","post-draft"),{title:"Draft: roadmap",body:"Unpublished draft.",authorRef:"users/bob",published:!1})}async function R(a){const r=new TextEncoder,l=Uint8Array.from(atob("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYPhfDwAChwGA60e6kgAAAABJRU5ErkJggg=="),t=>t.charCodeAt(0));await m(p(a,"avatars/alice.png"),l,{contentType:"image/png"}),await m(p(a,"notes/note-01/attachment.txt"),r.encode(`Attachment for the redesign note.
2
2
  `),{contentType:"text/plain"})}const x=`rules_version = '2';
3
3
  service cloud.firestore {
4
4
  match /databases/{database}/documents {
@@ -23,7 +23,7 @@
23
23
  href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap"
24
24
  rel="stylesheet"
25
25
  />
26
- <script type="module" crossorigin src="/__pyric/ui/assets/index-cpSfgQ7H.js"></script>
26
+ <script type="module" crossorigin src="/__pyric/ui/assets/index-Bf9SSE8L.js"></script>
27
27
  <link rel="stylesheet" crossorigin href="/__pyric/ui/assets/index-BlSGru_r.css">
28
28
  </head>
29
29
  <body>
@@ -0,0 +1,27 @@
1
+ import type { AIOptions } from 'pyric/ai';
2
+ import type { AiEngineConfigWire } from './worker/protocol.js';
3
+ /** Declarative AI engines that can cross Vite's page/SharedWorker boundary. */
4
+ export type PyricAiEngineConfig = Extract<NonNullable<AIOptions['engine']>, {
5
+ kind: string;
6
+ }>;
7
+ export interface PyricAiOptions {
8
+ /** Simple OpenAI-compatible model selection through Pyric's same-origin proxy. */
9
+ model?: string;
10
+ /** Advanced declarative engine configuration. */
11
+ engine?: PyricAiEngineConfig;
12
+ /** OpenAI-compatible upstream used by the same-origin proxy. */
13
+ proxyUpstream?: string;
14
+ }
15
+ export interface ResolvedViteAiConfig {
16
+ engineWire: AiEngineConfigWire | undefined;
17
+ proxyUpstream: string | undefined;
18
+ }
19
+ /** Values captured once by a SharedWorker and therefore requiring replacement. */
20
+ export declare function viteWorkerEpochSalt(projectKey: string, engineWire: AiEngineConfigWire | undefined): string;
21
+ /** Load env using Vite's `envDir`-relative-to-root convention. */
22
+ export declare function loadViteAiEnv(mode: string, root: string | undefined, envDir: string | undefined): Record<string, string>;
23
+ /** Convert a public declarative engine into the JSON-safe worker wire shape. */
24
+ export declare function engineConfigToWire(engine: PyricAiEngineConfig): AiEngineConfigWire;
25
+ /** Resolve the plugin's explicit-options-over-Vite-env AI convention. */
26
+ export declare function resolveViteAiConfig(options: PyricAiOptions | undefined, env: Record<string, string | undefined>): ResolvedViteAiConfig;
27
+ //# sourceMappingURL=vite-ai-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-ai-config.d.ts","sourceRoot":"","sources":["../../src/serve/vite-ai-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAI/D,+EAA+E;AAC/E,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE9F,MAAM,WAAW,cAAc;IAC7B,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,kBAAkB,GAAG,SAAS,CAAC;IAC3C,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,kBAAkB,GAAG,SAAS,GACzC,MAAM,CAER;AAED,kEAAkE;AAClE,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMxB;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,kBAAkB,CAelF;AAED,yEAAyE;AACzE,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,cAAc,GAAG,SAAS,EACnC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,oBAAoB,CAiBtB"}
@@ -0,0 +1,49 @@
1
+ import path from 'node:path';
2
+ import { loadEnv } from 'vite';
3
+ const AI_PROXY_PATH = '/__pyric/ai-proxy';
4
+ /** Values captured once by a SharedWorker and therefore requiring replacement. */
5
+ export function viteWorkerEpochSalt(projectKey, engineWire) {
6
+ return JSON.stringify({ projectKey, aiEngine: engineWire ?? null });
7
+ }
8
+ /** Load env using Vite's `envDir`-relative-to-root convention. */
9
+ export function loadViteAiEnv(mode, root, envDir) {
10
+ const resolvedRoot = path.resolve(root ?? process.cwd());
11
+ const resolvedEnvDir = envDir === undefined
12
+ ? resolvedRoot
13
+ : path.resolve(resolvedRoot, envDir);
14
+ return loadEnv(mode, resolvedEnvDir, '');
15
+ }
16
+ /** Convert a public declarative engine into the JSON-safe worker wire shape. */
17
+ export function engineConfigToWire(engine) {
18
+ if (engine.kind === 'openai') {
19
+ return {
20
+ kind: 'openai',
21
+ baseUrl: engine.baseUrl ?? AI_PROXY_PATH,
22
+ ...(engine.model !== undefined ? { model: engine.model } : {}),
23
+ ...(engine.modelMap !== undefined ? { modelMap: engine.modelMap } : {}),
24
+ };
25
+ }
26
+ return {
27
+ kind: 'scripted',
28
+ ...(engine.script !== undefined
29
+ ? { script: engine.script }
30
+ : {}),
31
+ };
32
+ }
33
+ /** Resolve the plugin's explicit-options-over-Vite-env AI convention. */
34
+ export function resolveViteAiConfig(options, env) {
35
+ if (options?.model !== undefined && options.engine !== undefined) {
36
+ throw new Error('@pyric/cli/vite: Choose either ai.model or ai.engine, not both.');
37
+ }
38
+ const model = options?.model?.trim() || env.PYRIC_AI_MODEL?.trim();
39
+ const engineWire = options?.engine
40
+ ? engineConfigToWire(options.engine)
41
+ : model
42
+ ? engineConfigToWire({ kind: 'openai', baseUrl: AI_PROXY_PATH, model })
43
+ : undefined;
44
+ return {
45
+ engineWire,
46
+ proxyUpstream: options?.proxyUpstream?.trim() || env.PYRIC_AI_PROXY_UPSTREAM?.trim() || undefined,
47
+ };
48
+ }
49
+ //# sourceMappingURL=vite-ai-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-ai-config.js","sourceRoot":"","sources":["../../src/serve/vite-ai-config.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAG/B,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAmB1C,kFAAkF;AAClF,MAAM,UAAU,mBAAmB,CACjC,UAAkB,EAClB,UAA0C;IAE1C,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;AACtE,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,aAAa,CAC3B,IAAY,EACZ,IAAwB,EACxB,MAA0B;IAE1B,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACzD,MAAM,cAAc,GAAG,MAAM,KAAK,SAAS;QACzC,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,MAA2B;IAC5D,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,aAAa;YACxC,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;YAC7B,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAmD,EAAE;YACxE,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,mBAAmB,CACjC,OAAmC,EACnC,GAAuC;IAEvC,IAAI,OAAO,EAAE,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjE,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IACnE,MAAM,UAAU,GAAG,OAAO,EAAE,MAAM;QAChC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC;QACpC,CAAC,CAAC,KAAK;YACL,CAAC,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;YACvE,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,UAAU;QACV,aAAa,EACX,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,uBAAuB,EAAE,IAAI,EAAE,IAAI,SAAS;KACrF,CAAC;AACJ,CAAC"}
@@ -1,27 +1,10 @@
1
1
  import type { Plugin } from 'vite';
2
- import type { AiEngineConfigWire } from './worker/protocol.js';
3
- import type { AIOptions } from 'pyric/ai';
4
- /**
5
- * The plugin-level engine config surface = `pyric/ai`'s `EngineConfig` (what an
6
- * app passes to `getAI`), minus the custom `AnswerEngine` object variant — a
7
- * live object cannot cross to the SharedWorker host or serialize into the page,
8
- * so the plugin's declarative surface is the JSON-able `scripted` / `openai`
9
- * configs only (the same restriction the worker path already enforces).
10
- */
11
- export type PyricAiEngineConfig = Extract<NonNullable<AIOptions['engine']>, {
12
- kind: string;
13
- }>;
14
- /**
15
- * Node-side `EngineConfig` → JSON-safe {@link AiEngineConfigWire}. Mirrors the
16
- * browser `toEngineWire` (entries/ai.ts): an openai config with no `baseUrl`
17
- * targets the same-origin proxy; scripted `script` entries pass through (plain
18
- * authoring shapes — function/RegExp matchers can't survive JSON and are not a
19
- * plugin-config use case).
20
- */
21
- export declare function engineConfigToWire(engine: PyricAiEngineConfig): AiEngineConfigWire;
2
+ import { type PyricAiOptions } from './vite-ai-config.js';
3
+ import { type PyricRuntimeChipOption } from './runtime/chip-config.js';
22
4
  export interface PyricOptions {
23
- /** firestore.rules path (relative to `root`). Default: `firebase.json`'s
24
- * `firestore.rules`, else `firestore.rules` in the project root. */
5
+ /** Firestore rules path (relative to `root`). Default discovery prefers an
6
+ * authored `firestore.modules.rules`, then `firebase.json`, then
7
+ * `firestore.rules` in the project root. */
25
8
  rules?: string;
26
9
  /** Project dir for `firebase.json` / rules discovery. Default: Vite's `root`. */
27
10
  root?: string;
@@ -57,6 +40,10 @@ export interface PyricOptions {
57
40
  * so app, Studio, and agent all observe the one sandbox); pass `ui: false`
58
41
  * to disable. */
59
42
  ui?: boolean;
43
+ /** Inject the collapsed Pyric runtime chip into the app during sandbox Vite
44
+ * dev/builds. On by default. Pass `false` to hide it, or
45
+ * `{ initiallyOpen: true }` when actively debugging runtime errors. */
46
+ runtimeChip?: PyricRuntimeChipOption;
60
47
  /** RTDB-triggered Cloud Functions under this dev server (the `pyric dev`
61
48
  * parity fold). By default a `functions` block in `firebase.json` is
62
49
  * discovered automatically: its `onValueCreated` triggers run in an isolated
@@ -97,11 +84,14 @@ export interface PyricOptions {
97
84
  *
98
85
  * pyric({
99
86
  * ai: {
100
- * engine: { kind: 'openai', model: 'llama3.2', baseUrl: '/__pyric/ai-proxy' },
87
+ * model: 'llama3.2',
101
88
  * proxyUpstream: 'http://localhost:11434/v1', // your Ollama
102
89
  * },
103
90
  * })
104
91
  *
92
+ * - `model` is the simple OpenAI-compatible path. It uses the same-origin
93
+ * proxy and becomes the catch-all upstream model. `PYRIC_AI_MODEL` selects
94
+ * the same path when neither `model` nor `engine` is explicit.
105
95
  * - `engine` is `pyric/ai`'s `EngineConfig` (scripted | openai), applied on
106
96
  * both the SharedWorker and in-page paths. An openai `baseUrl` of
107
97
  * `/__pyric/ai-proxy` (or omitted) routes through the same-origin proxy so a
@@ -109,20 +99,11 @@ export interface PyricOptions {
109
99
  * - `proxyUpstream` sets what `/__pyric/ai-proxy` forwards to (beats the
110
100
  * `PYRIC_AI_PROXY_UPSTREAM` env var; default `http://localhost:11434/v1`).
111
101
  *
112
- * Precedence: a plugin-level `engine`, when set, always wins over an engine an
113
- * app's own `getAI()` passes (host-side via `ctx.aiEngine` on the worker path,
114
- * page-side via an injected global on the in-page fallback); with no plugin
115
- * engine the first `getAI()` call's engine is honored (first-call-wins), and
116
- * with neither the zero-config scripted default applies.
102
+ * Precedence: explicit `engine` or `model`, then `PYRIC_AI_MODEL`, then an
103
+ * engine passed by the app's first `getAI()` call; with none, the zero-config
104
+ * scripted default applies. `model` and `engine` are mutually exclusive.
117
105
  */
118
- ai?: {
119
- /** Engine config (scripted | openai). Custom `AnswerEngine` objects are not
120
- * supported at the plugin level — they can't cross to the worker/page. */
121
- engine?: PyricAiEngineConfig;
122
- /** OpenAI-compatible upstream `/__pyric/ai-proxy` forwards to. Beats
123
- * `PYRIC_AI_PROXY_UPSTREAM`; default `http://localhost:11434/v1`. */
124
- proxyUpstream?: string;
125
- };
106
+ ai?: PyricAiOptions;
126
107
  }
127
108
  /**
128
109
  * The dev-only Vite plugin. Add to `vite.config`:
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../../src/serve/vite-plugin.ts"],"names":[],"mappings":"AA8CA,OAAO,KAAK,EAAE,MAAM,EAAyB,MAAM,MAAM,CAAC;AAkB1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAiD1C;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAE9F;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,mBAAmB,GAAG,kBAAkB,CAelF;AAeD,MAAM,WAAW,YAAY;IAC3B;yEACqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;gEAC4D;IAC5D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;qEACiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;iFAC6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;mEAQ+D;IAC/D,MAAM,CAAC,EAAE,OAAO,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACnE;;;;;;sBAMkB;IAClB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb;;;;;;;;;;;;;;;;;;;;;2CAqBuC;IACvC,SAAS,CAAC,EAAE,KAAK,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5E;;;;4DAIwD;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,EAAE,CAAC,EAAE;QACH;mFAC2E;QAC3E,MAAM,CAAC,EAAE,mBAAmB,CAAC;QAC7B;8EACsE;QACtE,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,GAAE,YAAiB,GAAG,MAAM,CAo0BxD"}
1
+ {"version":3,"file":"vite-plugin.d.ts","sourceRoot":"","sources":["../../src/serve/vite-plugin.ts"],"names":[],"mappings":"AA6CA,OAAO,KAAK,EAAE,MAAM,EAAyB,MAAM,MAAM,CAAC;AA4C1D,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,0BAA0B,CAAC;AAiClC,MAAM,WAAW,YAAY;IAC3B;;iDAE6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;gEAC4D;IAC5D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;qEACiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;iFAC6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;;mEAQ+D;IAC/D,MAAM,CAAC,EAAE,OAAO,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACnE;;;;;;sBAMkB;IAClB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb;;4EAEwE;IACxE,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;2CAqBuC;IACvC,SAAS,CAAC,EAAE,KAAK,GAAG;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5E;;;;4DAIwD;IACxD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,EAAE,CAAC,EAAE,cAAc,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,OAAO,GAAE,YAAiB,GAAG,MAAM,CAs0BxD"}
@@ -41,9 +41,9 @@
41
41
  */
42
42
  import { readFile } from 'node:fs/promises';
43
43
  import { existsSync, readFileSync, rmSync, writeFileSync, mkdirSync } from 'node:fs';
44
- import { homedir } from 'node:os';
45
44
  import path from 'node:path';
46
- import { SDK_MODULES, defaultSdkEntries, resolveStudioUiDir, pyricPackageRoot, bundleWorker, workerSourceHash, NODE_BUILTIN_RE, NODE_BUILTIN_SHIMS, } from './bundler.js';
45
+ import { SDK_MODULES, defaultSdkEntries, resolveStudioUiDir, pyricPackageRoot, NODE_BUILTIN_RE, NODE_BUILTIN_SHIMS, } from './bundler.js';
46
+ import { createViteWorkerRuntime } from './vite-worker-runtime.js';
47
47
  import { createEventHub, createPyricNamespace, } from './namespace.js';
48
48
  import { formatActivityWarning } from './activity-warning.js';
49
49
  import { diskWorkspace, diskProjectStore } from './studio/index.js';
@@ -57,6 +57,9 @@ import { readFirebaseJson, readFirebaseRc } from '../cli/firebase-json.js';
57
57
  import { discoverFunctionsRtdbProject, } from '../functions-rtdb/project.js';
58
58
  import { spawnFunctionsRtdbChild, } from '../functions-rtdb/child.js';
59
59
  import { buildChildEnv, createLinePrefixer, registerModuleUrl, } from '../cli/dev-runner.js';
60
+ import { loadViteAiEnv, resolveViteAiConfig, viteWorkerEpochSalt, } from './vite-ai-config.js';
61
+ import { resolveViteRulesConfig } from './vite-rules-source.js';
62
+ import { PYRIC_RUNTIME_CHIP_META, runtimeChipMetaValue, } from './runtime/chip-config.js';
60
63
  /**
61
64
  * Whether a `vite build` should run the firebase→pyric swap (produce a SANDBOX
62
65
  * build). MODE-based with a plugin-config override:
@@ -73,31 +76,6 @@ function swapsInBuild(env, swapInBuild) {
73
76
  }
74
77
  /** Any `firebase/<sub>` specifier. */
75
78
  const FB_ANY = /^firebase\/([a-z-]+(?:\/[a-z-]+)*)$/;
76
- /** The serve proxy route the browser openai engine defaults to (#98.2). */
77
- const AI_PROXY_PATH = '/__pyric/ai-proxy';
78
- /**
79
- * Node-side `EngineConfig` → JSON-safe {@link AiEngineConfigWire}. Mirrors the
80
- * browser `toEngineWire` (entries/ai.ts): an openai config with no `baseUrl`
81
- * targets the same-origin proxy; scripted `script` entries pass through (plain
82
- * authoring shapes — function/RegExp matchers can't survive JSON and are not a
83
- * plugin-config use case).
84
- */
85
- export function engineConfigToWire(engine) {
86
- if (engine.kind === 'openai') {
87
- return {
88
- kind: 'openai',
89
- baseUrl: engine.baseUrl ?? AI_PROXY_PATH,
90
- ...(engine.model !== undefined ? { model: engine.model } : {}),
91
- ...(engine.modelMap !== undefined ? { modelMap: engine.modelMap } : {}),
92
- };
93
- }
94
- return {
95
- kind: 'scripted',
96
- ...(engine.script !== undefined
97
- ? { script: engine.script }
98
- : {}),
99
- };
100
- }
101
79
  /** The firebase subpaths with swap entries. */
102
80
  const SERVED = new Set(SDK_MODULES.map((specifier) => specifier.slice('firebase/'.length)));
103
81
  const entryKey = (subpath) => subpath.replaceAll('/', '-');
@@ -117,6 +95,7 @@ function packageRootOf(file) {
117
95
  * export default defineConfig({ plugins: [pyric()] });
118
96
  */
119
97
  export function pyric(options = {}) {
98
+ let resolvedAi = resolveViteAiConfig(options.ai, {});
120
99
  // Resolved once. `defaultSdkEntries()` prefers compiled dist `.js` and falls
121
100
  // back to source `.ts` in the workspace.
122
101
  const entries = defaultSdkEntries(); // { app, auth, firestore, init } → abs paths
@@ -181,11 +160,10 @@ export function pyric(options = {}) {
181
160
  storageRulesHash: null,
182
161
  };
183
162
  // M2: the SharedWorker bundle's content hash (sync) — stamped into the page so
184
- // a still-running OLD worker is detected as stale. `workerReady` flips true once
185
- // `bundleWorker` succeeds in configureServer; until then (or on bundle failure)
186
- // the page is forced onto the in-page sandbox path. transformIndexHtml reads it.
187
- const workerVersion = workerSourceHash();
188
- let workerReady = false;
163
+ // a still-running OLD worker is detected as stale. The collaborator becomes
164
+ // ready once its bundle succeeds; until then (or on bundle failure) the page
165
+ // is forced onto the in-page sandbox path. transformIndexHtml reads its tag.
166
+ const workerRuntime = createViteWorkerRuntime();
189
167
  // Set by the `config` hook. When the plugin runs under `vite build` at all it
190
168
  // is a SANDBOX build (the `apply` gate below only lets build through under the
191
169
  // sandbox trigger), so `command === 'build'` is sufficient to know we are
@@ -207,11 +185,12 @@ export function pyric(options = {}) {
207
185
  // sandbox path — the bridge peer is the in-page sandbox, never the SharedWorker,
208
186
  // so multi-tab is disabled under bridge to keep agent + app on one backend.
209
187
  const bridgeOpts = options.bridge === true ? {} : options.bridge || null;
210
- // Plugin-level AI engine, normalized once to the JSON-safe wire shape. Travels
188
+ // Plugin-level AI engine, normalized to the JSON-safe wire shape. Travels
211
189
  // to the worker host via the init payload (→ ctx.aiEngine) AND to the in-page
212
- // fallback via an injected synchronous global (see transformIndexHtml). Undefined
213
- // when the `ai.engine` option is unset.
214
- const aiEngineWire = options.ai?.engine ? engineConfigToWire(options.ai.engine) : undefined;
190
+ // fallback via an injected synchronous global (see transformIndexHtml).
191
+ // An explicit engine is available immediately (some hook tests call the HTML
192
+ // transform directly); Vite's config hook may otherwise select the simple
193
+ // PYRIC_AI_MODEL environment path for the active mode/root.
215
194
  return {
216
195
  name: 'pyric:sandbox',
217
196
  // Active for `vite dev` ALWAYS, and for `vite build` only when it is a
@@ -220,14 +199,17 @@ export function pyric(options = {}) {
220
199
  // production output. A sandbox build applies the same swap so the output
221
200
  // bundles pyric's in-page adapters (self-contained; preview it under
222
201
  // `pyric dev`, never deploy it).
223
- apply(_config, env) {
202
+ apply(config, env) {
203
+ void config;
224
204
  if (env.command === 'serve')
225
205
  return true;
226
206
  return swapsInBuild(env, options.swapInBuild);
227
207
  },
228
208
  enforce: 'pre',
229
- config(_config, env) {
209
+ config(config, env) {
230
210
  sandboxBuild = env.command === 'build';
211
+ const loadedEnv = loadViteAiEnv(env.mode, config.root, config.envDir);
212
+ resolvedAi = resolveViteAiConfig(options.ai, loadedEnv);
231
213
  // Cast: the `esbuild` package's `Plugin` type skews slightly from Vite's
232
214
  // bundled esbuild types (benign — the Plugin shape is stable across the
233
215
  // versions in range).
@@ -299,10 +281,11 @@ export function pyric(options = {}) {
299
281
  catch {
300
282
  /* optional — serve without a firebase.json */
301
283
  }
302
- // Honor an explicit `rules` option by overriding the resolved config.
303
- const config = options.rules
304
- ? { ...(fbJson ?? {}), firestore: { ...(fbJson?.firestore ?? {}), rules: options.rules } }
305
- : fbJson;
284
+ // Convention-first development source: an explicit option wins; otherwise
285
+ // an authored 2+modules file wins over firebase.json's generated deployment
286
+ // target. Projects without that convention retain the normal Firebase
287
+ // discovery path.
288
+ const config = resolveViteRulesConfig(cwd, options.rules, fbJson);
306
289
  const loaded = await loadProjectRules(cwd, config);
307
290
  const loadedDatabase = await loadProjectDatabaseRules(cwd, config);
308
291
  const loadedStorage = await loadProjectStorageRules(cwd, config);
@@ -377,12 +360,10 @@ export function pyric(options = {}) {
377
360
  }
378
361
  // ── M2 SharedWorker host: bundle it (cached per version) and serve it at
379
362
  // /__pyric/sdk/worker.js. This is what flips runtime.ts to the worker path.
380
- // On bundle failure, fall back to the in-page sandbox (workerReady stays
381
- // false transformIndexHtml forces in-page).
382
- const sdkDir = path.join(homedir(), '.pyric', 'vite-worker', workerVersion);
363
+ // On bundle failure, the collaborator stays unready and its HTML tag
364
+ // forces the in-page sandbox.
383
365
  try {
384
- await bundleWorker({ outDir: sdkDir });
385
- workerReady = true;
366
+ await workerRuntime.prepare(viteWorkerEpochSalt(cwd, resolvedAi.engineWire));
386
367
  }
387
368
  catch (e) {
388
369
  server.config.logger.warn(` ⚠ [pyric] SharedWorker bundle failed — using the in-page sandbox (single-tab, ephemeral): ${e instanceof Error ? e.message : String(e)}`);
@@ -473,7 +454,7 @@ export function pyric(options = {}) {
473
454
  messaging: true,
474
455
  // Plugin-level engine → the worker host's ctx.aiEngine (host-ai.ts),
475
456
  // which wins over any op-carried engine. Null when unset.
476
- ai: aiEngineWire ? { engine: aiEngineWire } : null,
457
+ ai: resolvedAi.engineWire ? { engine: resolvedAi.engineWire } : null,
477
458
  });
478
459
  // Pyric Studio: mount the disk-backed workspace/project routes that
479
460
  // Studio's `local` mode talks to + serve the built Studio app at
@@ -499,6 +480,7 @@ export function pyric(options = {}) {
499
480
  '(run the full build, or reinstall @pyric/cli).');
500
481
  }
501
482
  }
483
+ const { sdkDir } = workerRuntime.status();
502
484
  const namespace = createPyricNamespace({
503
485
  sdkDir,
504
486
  initPayload,
@@ -510,7 +492,7 @@ export function pyric(options = {}) {
510
492
  studioUiDir,
511
493
  // `ai.proxyUpstream`: what `/__pyric/ai-proxy` forwards to (beats the
512
494
  // PYRIC_AI_PROXY_UPSTREAM env var; falls back to the default when unset).
513
- aiProxyUpstream: options.ai?.proxyUpstream,
495
+ aiProxyUpstream: resolvedAi.proxyUpstream,
514
496
  // Adapt Vite's logger to the plain info/note shape the namespace's
515
497
  // diagnostics (denial relay, future hot-reload lines) expect —
516
498
  // matches the `↻`/`⚠ [pyric]` lines already logged elsewhere in this
@@ -876,6 +858,7 @@ export function pyric(options = {}) {
876
858
  initChunkFile = this.getFileName(initChunkRef);
877
859
  },
878
860
  transformIndexHtml(html) {
861
+ const runtimeChipTag = `<meta name="${PYRIC_RUNTIME_CHIP_META}" content="${runtimeChipMetaValue(options.runtimeChip)}" data-studio="${options.ui === false ? 'off' : 'on'}" data-pyric-sandbox>`;
879
862
  // Sandbox BUILD: the app's own `firebase/*` imports were already swapped
880
863
  // (resolveId, above) to pyric's in-page adapters and BUNDLED into the app
881
864
  // chunk, and the emitted init chunk (script-tagged here) carries the
@@ -893,7 +876,7 @@ export function pyric(options = {}) {
893
876
  const initTag = initChunkFile
894
877
  ? `<script type="module" crossorigin src="/${initChunkFile}" data-pyric-sandbox-init></script>`
895
878
  : '';
896
- const tags = SANDBOX_BUILD_META + initTag;
879
+ const tags = SANDBOX_BUILD_META + runtimeChipTag + initTag;
897
880
  return html.includes('</head>')
898
881
  ? html.replace('</head>', `${tags}</head>`)
899
882
  : tags + html;
@@ -907,26 +890,24 @@ export function pyric(options = {}) {
907
890
  // module evaluates — a classic inline script runs before the deferred module.
908
891
  // The flag (not nulling `window.SharedWorker`) leaves the user's own
909
892
  // SharedWorker usage intact. We force in-page ONLY when the worker bundle
910
- // failed (workerReady false) — the ephemeral fallback. `bridge` no longer
893
+ // failed (worker runtime unready) — the ephemeral fallback. `bridge` no longer
911
894
  // forces in-page: the bridge peer routes agent tool-calls THROUGH the
912
895
  // worker (see `connectBridgePeer`), so the agent shares the one sandbox the
913
896
  // app + Studio use.
914
- const head = workerReady
915
- ? `<meta name="pyric-worker-v" content="${workerVersion}" ${MARKER}>`
916
- : `<script ${MARKER}>globalThis.__PYRIC_FORCE_INPAGE__=true;</script>`;
897
+ const head = workerRuntime.headTag(MARKER);
917
898
  // Plugin-level engine for the IN-PAGE path: a classic inline script runs
918
899
  // before the deferred init module AND before app code's `getAI`, so the
919
900
  // served `getAI` (entries/ai.ts) reads it synchronously — init.json can't
920
901
  // be awaited there. Harmless on the worker path (that branch ignores the
921
902
  // global; the worker reads ctx.aiEngine from init.json). `<` is escaped so
922
903
  // an engine value can never break out of the script tag.
923
- const aiEngineTag = aiEngineWire
924
- ? `<script ${MARKER}>globalThis.__PYRIC_AI_ENGINE__=${JSON.stringify(aiEngineWire).replace(/</g, '\\u003c')};</script>`
904
+ const aiEngineTag = resolvedAi.engineWire
905
+ ? `<script ${MARKER}>globalThis.__PYRIC_AI_ENGINE__=${JSON.stringify(resolvedAi.engineWire).replace(/</g, '\\u003c')};</script>`
925
906
  : '';
926
907
  // Boot the sandbox by loading the real init entry as a module (Vite
927
908
  // serves + transforms it). The init module's top-level await deploys rules
928
909
  // before app code runs. Mirrors serve's injectServeTags.
929
- const tag = head + aiEngineTag + `<script type="module" src="/@fs/${entries.init}" ${MARKER}></script>`;
910
+ const tag = head + aiEngineTag + runtimeChipTag + `<script type="module" src="/@fs/${entries.init}" ${MARKER}></script>`;
930
911
  return html.includes('</head>') ? html.replace('</head>', `${tag}</head>`) : tag + html;
931
912
  },
932
913
  };
@@ -1 +1 @@
1
- {"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../../src/serve/vite-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vite-plugin.js","sourceRoot":"","sources":["../../src/serve/vite-plugin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { FirebaseJson } from '../cli/firebase-json.js';
2
+ /**
3
+ * Apply the Vite authoring convention without replacing unrelated Firebase
4
+ * configuration. The normal rules loader retains responsibility for its
5
+ * `firebase.json` and root `firestore.rules` fallbacks.
6
+ */
7
+ export declare function resolveViteRulesConfig(root: string, explicitRules: string | undefined, firebaseConfig: FirebaseJson | null): FirebaseJson | null;
8
+ //# sourceMappingURL=vite-rules-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-rules-source.d.ts","sourceRoot":"","sources":["../../src/serve/vite-rules-source.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,cAAc,EAAE,YAAY,GAAG,IAAI,GAClC,YAAY,GAAG,IAAI,CAcrB"}
@@ -0,0 +1,23 @@
1
+ import { existsSync } from 'node:fs';
2
+ import path from 'node:path';
3
+ /**
4
+ * Apply the Vite authoring convention without replacing unrelated Firebase
5
+ * configuration. The normal rules loader retains responsibility for its
6
+ * `firebase.json` and root `firestore.rules` fallbacks.
7
+ */
8
+ export function resolveViteRulesConfig(root, explicitRules, firebaseConfig) {
9
+ const rulesSource = explicitRules
10
+ ?? (existsSync(path.join(root, 'firestore.modules.rules'))
11
+ ? 'firestore.modules.rules'
12
+ : undefined);
13
+ if (!rulesSource)
14
+ return firebaseConfig;
15
+ return {
16
+ ...(firebaseConfig ?? {}),
17
+ firestore: {
18
+ ...(firebaseConfig?.firestore ?? {}),
19
+ rules: rulesSource,
20
+ },
21
+ };
22
+ }
23
+ //# sourceMappingURL=vite-rules-source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite-rules-source.js","sourceRoot":"","sources":["../../src/serve/vite-rules-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAG7B;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAY,EACZ,aAAiC,EACjC,cAAmC;IAEnC,MAAM,WAAW,GAAG,aAAa;WAC5B,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;YACxD,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,SAAS,CAAC,CAAC;IAEjB,IAAI,CAAC,WAAW;QAAE,OAAO,cAAc,CAAC;IACxC,OAAO;QACL,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;QACzB,SAAS,EAAE;YACT,GAAG,CAAC,cAAc,EAAE,SAAS,IAAI,EAAE,CAAC;YACpC,KAAK,EAAE,WAAW;SACnB;KACF,CAAC;AACJ,CAAC"}