panoma 0.10.6 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (601) hide show
  1. package/README.md +18 -1
  2. package/THIRD-PARTY-NOTICES.md +11 -11
  3. package/app/BUILD-INFO.json +2 -2
  4. package/app/apps/web/.next-bundle/BUILD_ID +1 -1
  5. package/app/apps/web/.next-bundle/app-build-manifest.json +412 -332
  6. package/app/apps/web/.next-bundle/app-path-routes-manifest.json +49 -38
  7. package/app/apps/web/.next-bundle/build-manifest.json +3 -3
  8. package/app/apps/web/.next-bundle/prerender-manifest.json +9 -9
  9. package/app/apps/web/.next-bundle/required-server-files.json +3 -3
  10. package/app/apps/web/.next-bundle/server/app/(app)/agents/page.js +2 -2
  11. package/app/apps/web/.next-bundle/server/app/(app)/agents/page_client-reference-manifest.js +1 -1
  12. package/app/apps/web/.next-bundle/server/app/(app)/ai/page.js +2 -2
  13. package/app/apps/web/.next-bundle/server/app/(app)/ai/page_client-reference-manifest.js +1 -1
  14. package/app/apps/web/.next-bundle/server/app/(app)/apps/[id]/page.js +2 -2
  15. package/app/apps/web/.next-bundle/server/app/(app)/apps/[id]/page_client-reference-manifest.js +1 -1
  16. package/app/apps/web/.next-bundle/server/app/(app)/apps/page.js +2 -2
  17. package/app/apps/web/.next-bundle/server/app/(app)/apps/page_client-reference-manifest.js +1 -1
  18. package/app/apps/web/.next-bundle/server/app/(app)/bridge/page.js +2 -2
  19. package/app/apps/web/.next-bundle/server/app/(app)/bridge/page_client-reference-manifest.js +1 -1
  20. package/app/apps/web/.next-bundle/server/app/(app)/copies/page.js +2 -2
  21. package/app/apps/web/.next-bundle/server/app/(app)/copies/page_client-reference-manifest.js +1 -1
  22. package/app/apps/web/.next-bundle/server/app/(app)/credentials/page.js +2 -2
  23. package/app/apps/web/.next-bundle/server/app/(app)/credentials/page_client-reference-manifest.js +1 -1
  24. package/app/apps/web/.next-bundle/server/app/(app)/disk/page.js +2 -2
  25. package/app/apps/web/.next-bundle/server/app/(app)/disk/page_client-reference-manifest.js +1 -1
  26. package/app/apps/web/.next-bundle/server/app/(app)/handoff/page.js +2 -2
  27. package/app/apps/web/.next-bundle/server/app/(app)/handoff/page_client-reference-manifest.js +1 -1
  28. package/app/apps/web/.next-bundle/server/app/(app)/hidden/page.js +2 -2
  29. package/app/apps/web/.next-bundle/server/app/(app)/hidden/page_client-reference-manifest.js +1 -1
  30. package/app/apps/web/.next-bundle/server/app/(app)/p/[slug]/page.js +9 -2
  31. package/app/apps/web/.next-bundle/server/app/(app)/p/[slug]/page_client-reference-manifest.js +1 -1
  32. package/app/apps/web/.next-bundle/server/app/(app)/p/[slug]/video/page.js +2 -2
  33. package/app/apps/web/.next-bundle/server/app/(app)/p/[slug]/video/page_client-reference-manifest.js +1 -1
  34. package/app/apps/web/.next-bundle/server/app/(app)/packages/page.js +2 -2
  35. package/app/apps/web/.next-bundle/server/app/(app)/packages/page_client-reference-manifest.js +1 -1
  36. package/app/apps/web/.next-bundle/server/app/(app)/page.js +2 -2
  37. package/app/apps/web/.next-bundle/server/app/(app)/page_client-reference-manifest.js +1 -1
  38. package/app/apps/web/.next-bundle/server/app/(app)/runs/[id]/page.js +2 -2
  39. package/app/apps/web/.next-bundle/server/app/(app)/runs/[id]/page_client-reference-manifest.js +1 -1
  40. package/app/apps/web/.next-bundle/server/app/(app)/runs/page.js +2 -2
  41. package/app/apps/web/.next-bundle/server/app/(app)/runs/page_client-reference-manifest.js +1 -1
  42. package/app/apps/web/.next-bundle/server/app/(app)/search/page.js +2 -2
  43. package/app/apps/web/.next-bundle/server/app/(app)/search/page_client-reference-manifest.js +1 -1
  44. package/app/apps/web/.next-bundle/server/app/(app)/spend/page.js +2 -2
  45. package/app/apps/web/.next-bundle/server/app/(app)/spend/page_client-reference-manifest.js +1 -1
  46. package/app/apps/web/.next-bundle/server/app/(app)/twin/look/page.js +2 -2
  47. package/app/apps/web/.next-bundle/server/app/(app)/twin/look/page_client-reference-manifest.js +1 -1
  48. package/app/apps/web/.next-bundle/server/app/(app)/twin/page.js +2 -2
  49. package/app/apps/web/.next-bundle/server/app/(app)/twin/page_client-reference-manifest.js +1 -1
  50. package/app/apps/web/.next-bundle/server/app/(app)/unsaved/page.js +2 -2
  51. package/app/apps/web/.next-bundle/server/app/(app)/unsaved/page_client-reference-manifest.js +1 -1
  52. package/app/apps/web/.next-bundle/server/app/_not-found/page.js +2 -2
  53. package/app/apps/web/.next-bundle/server/app/_not-found/page_client-reference-manifest.js +1 -1
  54. package/app/apps/web/.next-bundle/server/app/api/accounts/route.js +1 -1
  55. package/app/apps/web/.next-bundle/server/app/api/accounts/route_client-reference-manifest.js +1 -1
  56. package/app/apps/web/.next-bundle/server/app/api/agent/apps/route.js +1 -1
  57. package/app/apps/web/.next-bundle/server/app/api/agent/apps/route_client-reference-manifest.js +1 -1
  58. package/app/apps/web/.next-bundle/server/app/api/agent/consult/route.js +1 -1
  59. package/app/apps/web/.next-bundle/server/app/api/agent/consult/route_client-reference-manifest.js +1 -1
  60. package/app/apps/web/.next-bundle/server/app/api/agent/context/route.js +1 -1
  61. package/app/apps/web/.next-bundle/server/app/api/agent/context/route_client-reference-manifest.js +1 -1
  62. package/app/apps/web/.next-bundle/server/app/api/agent/conversations/route.js +1 -1
  63. package/app/apps/web/.next-bundle/server/app/api/agent/conversations/route_client-reference-manifest.js +1 -1
  64. package/app/apps/web/.next-bundle/server/app/api/agent/handoff/route.js +1 -1
  65. package/app/apps/web/.next-bundle/server/app/api/agent/handoff/route_client-reference-manifest.js +1 -1
  66. package/app/apps/web/.next-bundle/server/app/api/agent/hello/route.js +1 -1
  67. package/app/apps/web/.next-bundle/server/app/api/agent/hello/route_client-reference-manifest.js +1 -1
  68. package/app/apps/web/.next-bundle/server/app/api/agent/journal/route.js +1 -1
  69. package/app/apps/web/.next-bundle/server/app/api/agent/journal/route_client-reference-manifest.js +1 -1
  70. package/app/apps/web/.next-bundle/server/app/api/agent/keys/route.js +1 -1
  71. package/app/apps/web/.next-bundle/server/app/api/agent/keys/route_client-reference-manifest.js +1 -1
  72. package/app/apps/web/.next-bundle/server/app/api/agent/log/route.js +1 -1
  73. package/app/apps/web/.next-bundle/server/app/api/agent/log/route_client-reference-manifest.js +1 -1
  74. package/app/apps/web/.next-bundle/server/app/api/agent/mcp/route.js +2 -2
  75. package/app/apps/web/.next-bundle/server/app/api/agent/mcp/route_client-reference-manifest.js +1 -1
  76. package/app/apps/web/.next-bundle/server/app/api/agent/notes/route.js +1 -1
  77. package/app/apps/web/.next-bundle/server/app/api/agent/notes/route_client-reference-manifest.js +1 -1
  78. package/app/apps/web/.next-bundle/server/app/api/agent/tasks/[id]/route.js +1 -1
  79. package/app/apps/web/.next-bundle/server/app/api/agent/tasks/[id]/route_client-reference-manifest.js +1 -1
  80. package/app/apps/web/.next-bundle/server/app/api/agent/tasks/route.js +1 -1
  81. package/app/apps/web/.next-bundle/server/app/api/agent/tasks/route_client-reference-manifest.js +1 -1
  82. package/app/apps/web/.next-bundle/server/app/api/agent/video/cancel/route.js +1 -1
  83. package/app/apps/web/.next-bundle/server/app/api/agent/video/cancel/route_client-reference-manifest.js +1 -1
  84. package/app/apps/web/.next-bundle/server/app/api/agent/video/jobs/route.js +1 -1
  85. package/app/apps/web/.next-bundle/server/app/api/agent/video/jobs/route_client-reference-manifest.js +1 -1
  86. package/app/apps/web/.next-bundle/server/app/api/agent/video/route.js +1 -1
  87. package/app/apps/web/.next-bundle/server/app/api/agent/video/route_client-reference-manifest.js +1 -1
  88. package/app/apps/web/.next-bundle/server/app/api/ai/route.js +1 -1
  89. package/app/apps/web/.next-bundle/server/app/api/ai/route_client-reference-manifest.js +1 -1
  90. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/[operation]/route.js +1 -1
  91. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/[operation]/route_client-reference-manifest.js +1 -1
  92. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/credentials/route.js +1 -1
  93. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/credentials/route_client-reference-manifest.js +1 -1
  94. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/jobs/route.js +1 -1
  95. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/jobs/route_client-reference-manifest.js +1 -1
  96. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/legal/route.js +1 -1
  97. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/legal/route_client-reference-manifest.js +1 -1
  98. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/route.js +1 -1
  99. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/route_client-reference-manifest.js +1 -1
  100. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/settings/route.js +1 -1
  101. package/app/apps/web/.next-bundle/server/app/api/apps/[id]/settings/route_client-reference-manifest.js +1 -1
  102. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/artifact/route.js +1 -1
  103. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/artifact/route_client-reference-manifest.js +1 -1
  104. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/cancel/route.js +1 -1
  105. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  106. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/route.js +1 -1
  107. package/app/apps/web/.next-bundle/server/app/api/apps/jobs/[jobId]/route_client-reference-manifest.js +1 -1
  108. package/app/apps/web/.next-bundle/server/app/api/apps/route.js +1 -1
  109. package/app/apps/web/.next-bundle/server/app/api/apps/route_client-reference-manifest.js +1 -1
  110. package/app/apps/web/.next-bundle/server/app/api/assets/route.js +1 -1
  111. package/app/apps/web/.next-bundle/server/app/api/assets/route_client-reference-manifest.js +1 -1
  112. package/app/apps/web/.next-bundle/server/app/api/assignments/launch/route.js +3 -3
  113. package/app/apps/web/.next-bundle/server/app/api/assignments/launch/route_client-reference-manifest.js +1 -1
  114. package/app/apps/web/.next-bundle/server/app/api/assignments/route.js +1 -1
  115. package/app/apps/web/.next-bundle/server/app/api/assignments/route_client-reference-manifest.js +1 -1
  116. package/app/apps/web/.next-bundle/server/app/api/catalog/route.js +1 -1
  117. package/app/apps/web/.next-bundle/server/app/api/catalog/route_client-reference-manifest.js +1 -1
  118. package/app/apps/web/.next-bundle/server/app/api/check/route.js +1 -1
  119. package/app/apps/web/.next-bundle/server/app/api/check/route_client-reference-manifest.js +1 -1
  120. package/app/apps/web/.next-bundle/server/app/api/consultations/route.js +1 -1
  121. package/app/apps/web/.next-bundle/server/app/api/consultations/route_client-reference-manifest.js +1 -1
  122. package/app/apps/web/.next-bundle/server/app/api/describe/route.js +2 -2
  123. package/app/apps/web/.next-bundle/server/app/api/describe/route_client-reference-manifest.js +1 -1
  124. package/app/apps/web/.next-bundle/server/app/api/disk/route.js +1 -1
  125. package/app/apps/web/.next-bundle/server/app/api/disk/route_client-reference-manifest.js +1 -1
  126. package/app/apps/web/.next-bundle/server/app/api/enrich/route.js +1 -1
  127. package/app/apps/web/.next-bundle/server/app/api/enrich/route_client-reference-manifest.js +1 -1
  128. package/app/apps/web/.next-bundle/server/app/api/environment/route.js +2 -2
  129. package/app/apps/web/.next-bundle/server/app/api/environment/route_client-reference-manifest.js +1 -1
  130. package/app/apps/web/.next-bundle/server/app/api/handoff/[id]/route.js +1 -1
  131. package/app/apps/web/.next-bundle/server/app/api/handoff/[id]/route_client-reference-manifest.js +1 -1
  132. package/app/apps/web/.next-bundle/server/app/api/handoff/digest/route.js +2 -1
  133. package/app/apps/web/.next-bundle/server/app/api/handoff/digest/route_client-reference-manifest.js +1 -1
  134. package/app/apps/web/.next-bundle/server/app/api/handoff/launch/route.js +1 -1
  135. package/app/apps/web/.next-bundle/server/app/api/handoff/launch/route_client-reference-manifest.js +1 -1
  136. package/app/apps/web/.next-bundle/server/app/api/handoff/record/route.js +1 -1
  137. package/app/apps/web/.next-bundle/server/app/api/handoff/record/route_client-reference-manifest.js +1 -1
  138. package/app/apps/web/.next-bundle/server/app/api/handoff/route.js +1 -1
  139. package/app/apps/web/.next-bundle/server/app/api/handoff/route_client-reference-manifest.js +1 -1
  140. package/app/apps/web/.next-bundle/server/app/api/hook/context/route.js +1 -0
  141. package/app/apps/web/.next-bundle/server/app/api/hook/context/route_client-reference-manifest.js +1 -0
  142. package/app/apps/web/.next-bundle/server/app/api/hook/session/route.js +1 -0
  143. package/app/apps/web/.next-bundle/server/app/api/hook/session/route_client-reference-manifest.js +1 -0
  144. package/app/apps/web/.next-bundle/server/app/api/hooks/route.js +1 -2
  145. package/app/apps/web/.next-bundle/server/app/api/hooks/route_client-reference-manifest.js +1 -1
  146. package/app/apps/web/.next-bundle/server/app/api/ingest/route.js +1 -1
  147. package/app/apps/web/.next-bundle/server/app/api/ingest/route_client-reference-manifest.js +1 -1
  148. package/app/apps/web/.next-bundle/server/app/api/md/apply/route.js +1 -1
  149. package/app/apps/web/.next-bundle/server/app/api/md/apply/route_client-reference-manifest.js +1 -1
  150. package/app/apps/web/.next-bundle/server/app/api/md/context/route.js +1 -1
  151. package/app/apps/web/.next-bundle/server/app/api/md/context/route_client-reference-manifest.js +1 -1
  152. package/app/apps/web/.next-bundle/server/app/api/md/inspect/route.js +1 -1
  153. package/app/apps/web/.next-bundle/server/app/api/md/inspect/route_client-reference-manifest.js +1 -1
  154. package/app/apps/web/.next-bundle/server/app/api/md/repair/route.js +1 -1
  155. package/app/apps/web/.next-bundle/server/app/api/md/repair/route_client-reference-manifest.js +1 -1
  156. package/app/apps/web/.next-bundle/server/app/api/md/review/route.js +3 -3
  157. package/app/apps/web/.next-bundle/server/app/api/md/review/route_client-reference-manifest.js +1 -1
  158. package/app/apps/web/.next-bundle/server/app/api/memory/backfill/route.js +1 -0
  159. package/app/apps/web/.next-bundle/server/app/api/memory/backfill/route_client-reference-manifest.js +1 -0
  160. package/app/apps/web/.next-bundle/server/app/api/memory/cases/route.js +1 -0
  161. package/app/apps/web/.next-bundle/server/app/api/memory/cases/route_client-reference-manifest.js +1 -0
  162. package/app/apps/web/.next-bundle/server/app/api/memory/checks/route.js +1 -0
  163. package/app/apps/web/.next-bundle/server/app/api/memory/checks/route_client-reference-manifest.js +1 -0
  164. package/app/apps/web/.next-bundle/server/app/api/memory/commitments/route.js +1 -0
  165. package/app/apps/web/.next-bundle/server/app/api/memory/commitments/route_client-reference-manifest.js +1 -0
  166. package/app/apps/web/.next-bundle/server/app/api/memory/export/route.js +2 -2
  167. package/app/apps/web/.next-bundle/server/app/api/memory/export/route_client-reference-manifest.js +1 -1
  168. package/app/apps/web/.next-bundle/server/app/api/memory/jobs/route.js +1 -0
  169. package/app/apps/web/.next-bundle/server/app/api/memory/jobs/route_client-reference-manifest.js +1 -0
  170. package/app/apps/web/.next-bundle/server/app/api/memory/outcomes/route.js +1 -0
  171. package/app/apps/web/.next-bundle/server/app/api/memory/outcomes/route_client-reference-manifest.js +1 -0
  172. package/app/apps/web/.next-bundle/server/app/api/memory/purge/route.js +1 -0
  173. package/app/apps/web/.next-bundle/server/app/api/memory/purge/route_client-reference-manifest.js +1 -0
  174. package/app/apps/web/.next-bundle/server/app/api/memory/status/route.js +1 -0
  175. package/app/apps/web/.next-bundle/server/app/api/memory/status/route_client-reference-manifest.js +1 -0
  176. package/app/apps/web/.next-bundle/server/app/api/memory/withdraw/route.js +1 -0
  177. package/app/apps/web/.next-bundle/server/app/api/memory/withdraw/route_client-reference-manifest.js +1 -0
  178. package/app/apps/web/.next-bundle/server/app/api/north/route.js +1 -1
  179. package/app/apps/web/.next-bundle/server/app/api/north/route_client-reference-manifest.js +1 -1
  180. package/app/apps/web/.next-bundle/server/app/api/notes/route.js +1 -1
  181. package/app/apps/web/.next-bundle/server/app/api/notes/route_client-reference-manifest.js +1 -1
  182. package/app/apps/web/.next-bundle/server/app/api/open/all/route.js +1 -1
  183. package/app/apps/web/.next-bundle/server/app/api/open/all/route_client-reference-manifest.js +1 -1
  184. package/app/apps/web/.next-bundle/server/app/api/open/route.js +1 -1
  185. package/app/apps/web/.next-bundle/server/app/api/open/route_client-reference-manifest.js +1 -1
  186. package/app/apps/web/.next-bundle/server/app/api/project/route.js +1 -1
  187. package/app/apps/web/.next-bundle/server/app/api/project/route_client-reference-manifest.js +1 -1
  188. package/app/apps/web/.next-bundle/server/app/api/rescan/route.js +1 -1
  189. package/app/apps/web/.next-bundle/server/app/api/rescan/route_client-reference-manifest.js +1 -1
  190. package/app/apps/web/.next-bundle/server/app/api/roots/route.js +1 -1
  191. package/app/apps/web/.next-bundle/server/app/api/roots/route_client-reference-manifest.js +1 -1
  192. package/app/apps/web/.next-bundle/server/app/api/runs/[id]/route.js +1 -1
  193. package/app/apps/web/.next-bundle/server/app/api/runs/[id]/route_client-reference-manifest.js +1 -1
  194. package/app/apps/web/.next-bundle/server/app/api/runs/route.js +1 -1
  195. package/app/apps/web/.next-bundle/server/app/api/runs/route_client-reference-manifest.js +1 -1
  196. package/app/apps/web/.next-bundle/server/app/api/scale/route.js +1 -1
  197. package/app/apps/web/.next-bundle/server/app/api/scale/route_client-reference-manifest.js +1 -1
  198. package/app/apps/web/.next-bundle/server/app/api/search/route.js +1 -1
  199. package/app/apps/web/.next-bundle/server/app/api/search/route_client-reference-manifest.js +1 -1
  200. package/app/apps/web/.next-bundle/server/app/api/secrets/route.js +1 -1
  201. package/app/apps/web/.next-bundle/server/app/api/secrets/route_client-reference-manifest.js +1 -1
  202. package/app/apps/web/.next-bundle/server/app/api/spend/route.js +1 -1
  203. package/app/apps/web/.next-bundle/server/app/api/spend/route_client-reference-manifest.js +1 -1
  204. package/app/apps/web/.next-bundle/server/app/api/tasks/route.js +1 -1
  205. package/app/apps/web/.next-bundle/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  206. package/app/apps/web/.next-bundle/server/app/api/today/route.js +1 -1
  207. package/app/apps/web/.next-bundle/server/app/api/today/route_client-reference-manifest.js +1 -1
  208. package/app/apps/web/.next-bundle/server/app/api/twin/assign/route.js +1 -1
  209. package/app/apps/web/.next-bundle/server/app/api/twin/assign/route_client-reference-manifest.js +1 -1
  210. package/app/apps/web/.next-bundle/server/app/api/twin/classify/route.js +1 -1
  211. package/app/apps/web/.next-bundle/server/app/api/twin/classify/route_client-reference-manifest.js +1 -1
  212. package/app/apps/web/.next-bundle/server/app/api/twin/critique/route.js +1 -1
  213. package/app/apps/web/.next-bundle/server/app/api/twin/critique/route_client-reference-manifest.js +1 -1
  214. package/app/apps/web/.next-bundle/server/app/api/twin/design/route.js +1 -1
  215. package/app/apps/web/.next-bundle/server/app/api/twin/design/route_client-reference-manifest.js +1 -1
  216. package/app/apps/web/.next-bundle/server/app/api/twin/distill/route.js +1 -1
  217. package/app/apps/web/.next-bundle/server/app/api/twin/distill/route_client-reference-manifest.js +1 -1
  218. package/app/apps/web/.next-bundle/server/app/api/twin/episodes/learn/route.js +1 -1
  219. package/app/apps/web/.next-bundle/server/app/api/twin/episodes/learn/route_client-reference-manifest.js +1 -1
  220. package/app/apps/web/.next-bundle/server/app/api/twin/episodes/route.js +1 -1
  221. package/app/apps/web/.next-bundle/server/app/api/twin/episodes/route_client-reference-manifest.js +1 -1
  222. package/app/apps/web/.next-bundle/server/app/api/twin/look/route.js +1 -1
  223. package/app/apps/web/.next-bundle/server/app/api/twin/look/route_client-reference-manifest.js +1 -1
  224. package/app/apps/web/.next-bundle/server/app/api/twin/mine/route.js +1 -1
  225. package/app/apps/web/.next-bundle/server/app/api/twin/mine/route_client-reference-manifest.js +1 -1
  226. package/app/apps/web/.next-bundle/server/app/api/twin/rehearse/route.js +1 -1
  227. package/app/apps/web/.next-bundle/server/app/api/twin/rehearse/route_client-reference-manifest.js +1 -1
  228. package/app/apps/web/.next-bundle/server/app/api/twin/score/route.js +1 -1
  229. package/app/apps/web/.next-bundle/server/app/api/twin/score/route_client-reference-manifest.js +1 -1
  230. package/app/apps/web/.next-bundle/server/app/api/twin/shot/route.js +1 -1
  231. package/app/apps/web/.next-bundle/server/app/api/twin/shot/route_client-reference-manifest.js +1 -1
  232. package/app/apps/web/.next-bundle/server/app/api/twin/sources/route.js +1 -1
  233. package/app/apps/web/.next-bundle/server/app/api/twin/sources/route_client-reference-manifest.js +1 -1
  234. package/app/apps/web/.next-bundle/server/app/api/twin/synthesize/route.js +1 -1
  235. package/app/apps/web/.next-bundle/server/app/api/twin/synthesize/route_client-reference-manifest.js +1 -1
  236. package/app/apps/web/.next-bundle/server/app/api/twin/taste/route.js +1 -1
  237. package/app/apps/web/.next-bundle/server/app/api/twin/taste/route_client-reference-manifest.js +1 -1
  238. package/app/apps/web/.next-bundle/server/app/api/twin/verdicts/route.js +1 -1
  239. package/app/apps/web/.next-bundle/server/app/api/twin/verdicts/route_client-reference-manifest.js +1 -1
  240. package/app/apps/web/.next-bundle/server/app/api/watch/route.js +1 -1
  241. package/app/apps/web/.next-bundle/server/app/api/watch/route_client-reference-manifest.js +1 -1
  242. package/app/apps/web/.next-bundle/server/app/apple-icon.png/route.js +1 -1
  243. package/app/apps/web/.next-bundle/server/app/icon/[id]/route.js +1 -1
  244. package/app/apps/web/.next-bundle/server/app/icon/[id]/route_client-reference-manifest.js +1 -1
  245. package/app/apps/web/.next-bundle/server/app/icon.png/route.js +1 -1
  246. package/app/apps/web/.next-bundle/server/app-paths-manifest.json +49 -38
  247. package/app/apps/web/.next-bundle/server/chunks/1190.js +1 -1
  248. package/app/apps/web/.next-bundle/server/chunks/1597.js +1 -0
  249. package/app/apps/web/.next-bundle/server/chunks/1646.js +5 -5
  250. package/app/apps/web/.next-bundle/server/chunks/1801.js +25 -0
  251. package/app/apps/web/.next-bundle/server/chunks/2455.js +2 -2
  252. package/app/apps/web/.next-bundle/server/chunks/2658.js +2 -2
  253. package/app/apps/web/.next-bundle/server/chunks/305.js +3 -3
  254. package/app/apps/web/.next-bundle/server/chunks/329.js +2 -1
  255. package/app/apps/web/.next-bundle/server/chunks/3347.js +1 -1
  256. package/app/apps/web/.next-bundle/server/chunks/3351.js +265 -0
  257. package/app/apps/web/.next-bundle/server/chunks/354.js +1 -0
  258. package/app/apps/web/.next-bundle/server/chunks/3834.js +1 -1
  259. package/app/apps/web/.next-bundle/server/chunks/3896.js +2 -2
  260. package/app/apps/web/.next-bundle/server/chunks/419.js +39 -0
  261. package/app/apps/web/.next-bundle/server/chunks/4478.js +1 -1
  262. package/app/apps/web/.next-bundle/server/chunks/4528.js +2 -2
  263. package/app/apps/web/.next-bundle/server/chunks/4810.js +4 -4
  264. package/app/apps/web/.next-bundle/server/chunks/5103.js +1 -1
  265. package/app/apps/web/.next-bundle/server/chunks/5142.js +2 -0
  266. package/app/apps/web/.next-bundle/server/chunks/5670.js +1 -0
  267. package/app/apps/web/.next-bundle/server/chunks/5700.js +1 -0
  268. package/app/apps/web/.next-bundle/server/chunks/5780.js +1 -0
  269. package/app/apps/web/.next-bundle/server/chunks/6182.js +1 -0
  270. package/app/apps/web/.next-bundle/server/chunks/6259.js +1 -0
  271. package/app/apps/web/.next-bundle/server/chunks/6607.js +3 -0
  272. package/app/apps/web/.next-bundle/server/chunks/697.js +1 -0
  273. package/app/apps/web/.next-bundle/server/chunks/7011.js +3 -3
  274. package/app/apps/web/.next-bundle/server/chunks/7230.js +1 -0
  275. package/app/apps/web/.next-bundle/server/chunks/7245.js +1 -1
  276. package/app/apps/web/.next-bundle/server/chunks/7365.js +1 -0
  277. package/app/apps/web/.next-bundle/server/chunks/7711.js +1 -1
  278. package/app/apps/web/.next-bundle/server/chunks/8345.js +1 -1
  279. package/app/apps/web/.next-bundle/server/chunks/8726.js +2 -0
  280. package/app/apps/web/.next-bundle/server/chunks/8752.js +1 -0
  281. package/app/apps/web/.next-bundle/server/chunks/9006.js +2 -2
  282. package/app/apps/web/.next-bundle/server/chunks/9088.js +1 -0
  283. package/app/apps/web/.next-bundle/server/chunks/9226.js +2 -2
  284. package/app/apps/web/.next-bundle/server/chunks/9483.js +1 -0
  285. package/app/apps/web/.next-bundle/server/chunks/9511.js +11 -11
  286. package/app/apps/web/.next-bundle/server/chunks/993.js +1 -1
  287. package/app/apps/web/.next-bundle/server/functions-config-manifest.json +16 -16
  288. package/app/apps/web/.next-bundle/server/middleware-build-manifest.js +1 -1
  289. package/app/apps/web/.next-bundle/server/middleware-manifest.json +5 -5
  290. package/app/apps/web/.next-bundle/server/middleware.js +2 -2
  291. package/app/apps/web/.next-bundle/server/next-font-manifest.js +1 -1
  292. package/app/apps/web/.next-bundle/server/next-font-manifest.json +1 -1
  293. package/app/apps/web/.next-bundle/server/pages/500.html +1 -1
  294. package/app/apps/web/.next-bundle/server/pages-manifest.json +1 -1
  295. package/app/apps/web/.next-bundle/server/server-reference-manifest.json +1 -1
  296. package/app/apps/web/.next-bundle/static/chunks/2575-d138c26dd227bf52.js +1 -0
  297. package/app/apps/web/.next-bundle/static/chunks/4189-e59247c25409a53c.js +1 -0
  298. package/app/apps/web/.next-bundle/static/chunks/8642-472b9febb38ec8c6.js +1 -0
  299. package/app/apps/web/.next-bundle/static/chunks/app/(app)/agents/{page-76d381b0aa39b279.js → page-a19455222ac9e976.js} +1 -1
  300. package/app/apps/web/.next-bundle/static/chunks/app/(app)/ai/{page-07c3cc6ca6b8bc93.js → page-dde6ed0eac167dcb.js} +1 -1
  301. package/app/apps/web/.next-bundle/static/chunks/app/(app)/apps/[id]/{page-18d0bcd4b639402b.js → page-0eed1b295a345311.js} +1 -1
  302. package/app/apps/web/.next-bundle/static/chunks/app/(app)/apps/page-a3517277a7f09829.js +1 -0
  303. package/app/apps/web/.next-bundle/static/chunks/app/(app)/bridge/page-ff373e8dc74e8cba.js +1 -0
  304. package/app/apps/web/.next-bundle/static/chunks/app/(app)/copies/page-8c189dce34f1bbb5.js +1 -0
  305. package/app/apps/web/.next-bundle/static/chunks/app/(app)/credentials/{page-2930763383699b23.js → page-29e118f90cfe642c.js} +1 -1
  306. package/app/apps/web/.next-bundle/static/chunks/app/(app)/disk/page-bccfbd2a1c476813.js +1 -0
  307. package/app/apps/web/.next-bundle/static/chunks/app/(app)/error-e25ff9cacb98a443.js +1 -0
  308. package/app/apps/web/.next-bundle/static/chunks/app/(app)/handoff/page-abc28ddff96a4dfc.js +1 -0
  309. package/app/apps/web/.next-bundle/static/chunks/app/(app)/hidden/{page-dd60c69f6089ba90.js → page-401ac06d263203dc.js} +1 -1
  310. package/app/apps/web/.next-bundle/static/chunks/app/(app)/{layout-7feeb43705a48a0c.js → layout-39119aafbe1c5588.js} +1 -1
  311. package/app/apps/web/.next-bundle/static/chunks/app/(app)/p/[slug]/page-bcc12dede3d52626.js +1 -0
  312. package/app/apps/web/.next-bundle/static/chunks/app/(app)/p/[slug]/video/{page-6331e2e61e680bbc.js → page-307209752cecf844.js} +1 -1
  313. package/app/apps/web/.next-bundle/static/chunks/app/(app)/packages/page-2b813a95202340b0.js +1 -0
  314. package/app/apps/web/.next-bundle/static/chunks/app/(app)/page-22bb160dc9e27c36.js +1 -0
  315. package/app/apps/web/.next-bundle/static/chunks/app/(app)/runs/[id]/page-bcc7ba51163e4b4c.js +1 -0
  316. package/app/apps/web/.next-bundle/static/chunks/app/(app)/runs/page-8c189dce34f1bbb5.js +1 -0
  317. package/app/apps/web/.next-bundle/static/chunks/app/(app)/search/page-f42b10666363eab8.js +1 -0
  318. package/app/apps/web/.next-bundle/static/chunks/app/(app)/spend/page-9910889e55eedc72.js +1 -0
  319. package/app/apps/web/.next-bundle/static/chunks/app/(app)/twin/look/page-242be23e87ece570.js +1 -0
  320. package/app/apps/web/.next-bundle/static/chunks/app/(app)/twin/page-1e6d828e421360c9.js +1 -0
  321. package/app/apps/web/.next-bundle/static/chunks/app/(app)/unsaved/page-048e9259737b53c3.js +1 -0
  322. package/app/apps/web/.next-bundle/static/chunks/app/_not-found/page-2b813a95202340b0.js +1 -0
  323. package/app/apps/web/.next-bundle/static/chunks/app/api/accounts/route-2b813a95202340b0.js +1 -0
  324. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/apps/route-2b813a95202340b0.js +1 -0
  325. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/consult/route-2b813a95202340b0.js +1 -0
  326. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/context/route-2b813a95202340b0.js +1 -0
  327. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/conversations/route-2b813a95202340b0.js +1 -0
  328. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/handoff/route-2b813a95202340b0.js +1 -0
  329. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/hello/route-2b813a95202340b0.js +1 -0
  330. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/journal/route-2b813a95202340b0.js +1 -0
  331. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/keys/route-2b813a95202340b0.js +1 -0
  332. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/log/route-2b813a95202340b0.js +1 -0
  333. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/mcp/route-2b813a95202340b0.js +1 -0
  334. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/notes/route-2b813a95202340b0.js +1 -0
  335. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/tasks/[id]/route-2b813a95202340b0.js +1 -0
  336. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/tasks/route-2b813a95202340b0.js +1 -0
  337. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/cancel/route-2b813a95202340b0.js +1 -0
  338. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/jobs/route-2b813a95202340b0.js +1 -0
  339. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/route-2b813a95202340b0.js +1 -0
  340. package/app/apps/web/.next-bundle/static/chunks/app/api/ai/route-2b813a95202340b0.js +1 -0
  341. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/[operation]/route-2b813a95202340b0.js +1 -0
  342. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/credentials/route-2b813a95202340b0.js +1 -0
  343. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/jobs/route-2b813a95202340b0.js +1 -0
  344. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/legal/route-2b813a95202340b0.js +1 -0
  345. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/route-2b813a95202340b0.js +1 -0
  346. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/settings/route-2b813a95202340b0.js +1 -0
  347. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/artifact/route-2b813a95202340b0.js +1 -0
  348. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/cancel/route-2b813a95202340b0.js +1 -0
  349. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/route-2b813a95202340b0.js +1 -0
  350. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/route-2b813a95202340b0.js +1 -0
  351. package/app/apps/web/.next-bundle/static/chunks/app/api/assets/route-2b813a95202340b0.js +1 -0
  352. package/app/apps/web/.next-bundle/static/chunks/app/api/assignments/launch/route-2b813a95202340b0.js +1 -0
  353. package/app/apps/web/.next-bundle/static/chunks/app/api/assignments/route-2b813a95202340b0.js +1 -0
  354. package/app/apps/web/.next-bundle/static/chunks/app/api/catalog/route-2b813a95202340b0.js +1 -0
  355. package/app/apps/web/.next-bundle/static/chunks/app/api/check/route-2b813a95202340b0.js +1 -0
  356. package/app/apps/web/.next-bundle/static/chunks/app/api/consultations/route-2b813a95202340b0.js +1 -0
  357. package/app/apps/web/.next-bundle/static/chunks/app/api/describe/route-2b813a95202340b0.js +1 -0
  358. package/app/apps/web/.next-bundle/static/chunks/app/api/disk/route-2b813a95202340b0.js +1 -0
  359. package/app/apps/web/.next-bundle/static/chunks/app/api/enrich/route-2b813a95202340b0.js +1 -0
  360. package/app/apps/web/.next-bundle/static/chunks/app/api/environment/route-2b813a95202340b0.js +1 -0
  361. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/[id]/route-2b813a95202340b0.js +1 -0
  362. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/digest/route-2b813a95202340b0.js +1 -0
  363. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/launch/route-2b813a95202340b0.js +1 -0
  364. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/record/route-2b813a95202340b0.js +1 -0
  365. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/route-2b813a95202340b0.js +1 -0
  366. package/app/apps/web/.next-bundle/static/chunks/app/api/hook/context/route-2b813a95202340b0.js +1 -0
  367. package/app/apps/web/.next-bundle/static/chunks/app/api/hook/session/route-2b813a95202340b0.js +1 -0
  368. package/app/apps/web/.next-bundle/static/chunks/app/api/hooks/route-2b813a95202340b0.js +1 -0
  369. package/app/apps/web/.next-bundle/static/chunks/app/api/ingest/route-2b813a95202340b0.js +1 -0
  370. package/app/apps/web/.next-bundle/static/chunks/app/api/md/apply/route-2b813a95202340b0.js +1 -0
  371. package/app/apps/web/.next-bundle/static/chunks/app/api/md/context/route-2b813a95202340b0.js +1 -0
  372. package/app/apps/web/.next-bundle/static/chunks/app/api/md/inspect/route-2b813a95202340b0.js +1 -0
  373. package/app/apps/web/.next-bundle/static/chunks/app/api/md/repair/route-2b813a95202340b0.js +1 -0
  374. package/app/apps/web/.next-bundle/static/chunks/app/api/md/review/route-2b813a95202340b0.js +1 -0
  375. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/backfill/route-2b813a95202340b0.js +1 -0
  376. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/cases/route-2b813a95202340b0.js +1 -0
  377. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/checks/route-2b813a95202340b0.js +1 -0
  378. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/commitments/route-2b813a95202340b0.js +1 -0
  379. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/export/route-2b813a95202340b0.js +1 -0
  380. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/jobs/route-2b813a95202340b0.js +1 -0
  381. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/outcomes/route-2b813a95202340b0.js +1 -0
  382. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/purge/route-2b813a95202340b0.js +1 -0
  383. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/status/route-2b813a95202340b0.js +1 -0
  384. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/withdraw/route-2b813a95202340b0.js +1 -0
  385. package/app/apps/web/.next-bundle/static/chunks/app/api/north/route-2b813a95202340b0.js +1 -0
  386. package/app/apps/web/.next-bundle/static/chunks/app/api/notes/route-2b813a95202340b0.js +1 -0
  387. package/app/apps/web/.next-bundle/static/chunks/app/api/open/all/route-2b813a95202340b0.js +1 -0
  388. package/app/apps/web/.next-bundle/static/chunks/app/api/open/route-2b813a95202340b0.js +1 -0
  389. package/app/apps/web/.next-bundle/static/chunks/app/api/project/route-2b813a95202340b0.js +1 -0
  390. package/app/apps/web/.next-bundle/static/chunks/app/api/rescan/route-2b813a95202340b0.js +1 -0
  391. package/app/apps/web/.next-bundle/static/chunks/app/api/roots/route-2b813a95202340b0.js +1 -0
  392. package/app/apps/web/.next-bundle/static/chunks/app/api/runs/[id]/route-2b813a95202340b0.js +1 -0
  393. package/app/apps/web/.next-bundle/static/chunks/app/api/runs/route-2b813a95202340b0.js +1 -0
  394. package/app/apps/web/.next-bundle/static/chunks/app/api/scale/route-2b813a95202340b0.js +1 -0
  395. package/app/apps/web/.next-bundle/static/chunks/app/api/search/route-2b813a95202340b0.js +1 -0
  396. package/app/apps/web/.next-bundle/static/chunks/app/api/secrets/route-2b813a95202340b0.js +1 -0
  397. package/app/apps/web/.next-bundle/static/chunks/app/api/spend/route-2b813a95202340b0.js +1 -0
  398. package/app/apps/web/.next-bundle/static/chunks/app/api/tasks/route-2b813a95202340b0.js +1 -0
  399. package/app/apps/web/.next-bundle/static/chunks/app/api/today/route-2b813a95202340b0.js +1 -0
  400. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/assign/route-2b813a95202340b0.js +1 -0
  401. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/classify/route-2b813a95202340b0.js +1 -0
  402. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/critique/route-2b813a95202340b0.js +1 -0
  403. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/design/route-2b813a95202340b0.js +1 -0
  404. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/distill/route-2b813a95202340b0.js +1 -0
  405. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/episodes/learn/route-2b813a95202340b0.js +1 -0
  406. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/episodes/route-2b813a95202340b0.js +1 -0
  407. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/look/route-2b813a95202340b0.js +1 -0
  408. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/mine/route-2b813a95202340b0.js +1 -0
  409. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/rehearse/route-2b813a95202340b0.js +1 -0
  410. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/score/route-2b813a95202340b0.js +1 -0
  411. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/shot/route-2b813a95202340b0.js +1 -0
  412. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/sources/route-2b813a95202340b0.js +1 -0
  413. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/synthesize/route-2b813a95202340b0.js +1 -0
  414. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/taste/route-2b813a95202340b0.js +1 -0
  415. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/verdicts/route-2b813a95202340b0.js +1 -0
  416. package/app/apps/web/.next-bundle/static/chunks/app/api/watch/route-2b813a95202340b0.js +1 -0
  417. package/app/apps/web/.next-bundle/static/chunks/app/global-not-found-8c189dce34f1bbb5.js +1 -0
  418. package/app/apps/web/.next-bundle/static/chunks/app/icon/[id]/route-2b813a95202340b0.js +1 -0
  419. package/app/apps/web/.next-bundle/static/chunks/app/not-found-8c189dce34f1bbb5.js +1 -0
  420. package/app/apps/web/.next-bundle/static/chunks/main-app-cbf560c4fd46e89d.js +1 -0
  421. package/app/apps/web/.next-bundle/static/css/de9ca9adb4d104cf.css +1 -0
  422. package/app/apps/web/.next-bundle/static/xmmOASVL-XuXjHd9elXeS/_buildManifest.js +1 -0
  423. package/app/apps/web/server.js +1 -1
  424. package/app/node_modules/@panoma/core/dist/{chunk-K7PVKWYL.js → chunk-IFQJMR6Q.js} +8 -0
  425. package/app/node_modules/@panoma/core/dist/index.d.ts +1351 -8
  426. package/app/node_modules/@panoma/core/dist/index.js +3415 -301
  427. package/app/node_modules/@panoma/core/dist/untrusted.d.ts +16 -1
  428. package/app/node_modules/@panoma/core/dist/untrusted.js +5 -1
  429. package/app/node_modules/@panoma/db/dist/{chunk-VTHU57AZ.js → chunk-FLMCC47R.js} +669 -18
  430. package/app/node_modules/@panoma/db/dist/{client-B2H4A_7h.d.ts → client-BqCpSRUf.d.ts} +3978 -359
  431. package/app/node_modules/@panoma/db/dist/client.d.ts +1 -1
  432. package/app/node_modules/@panoma/db/dist/client.js +1 -1
  433. package/app/node_modules/@panoma/db/dist/index.d.ts +3403 -70
  434. package/app/node_modules/@panoma/db/dist/index.js +9204 -3018
  435. package/app/node_modules/@panoma/db/migrations/0064_memory_contract_a.sql +227 -0
  436. package/app/node_modules/@panoma/db/migrations/0065_memory_capture_b.sql +85 -0
  437. package/app/node_modules/@panoma/db/migrations/0066_memory_checks_c.sql +62 -0
  438. package/app/node_modules/@panoma/db/migrations/0067_twin_contextual_d.sql +19 -0
  439. package/app/node_modules/@panoma/db/migrations/0068_observation_kinds_d.sql +9 -0
  440. package/app/node_modules/@panoma/db/migrations/0069_memory_usage_quota.sql +14 -0
  441. package/app/node_modules/@panoma/db/migrations/0070_memory_storage_reservations.sql +3 -0
  442. package/app/node_modules/@panoma/db/migrations/0071_memory_backfill_permissions.sql +1 -0
  443. package/app/node_modules/@panoma/db/migrations/meta/0064_snapshot.json +5846 -0
  444. package/app/node_modules/@panoma/db/migrations/meta/0065_snapshot.json +6416 -0
  445. package/app/node_modules/@panoma/db/migrations/meta/0066_snapshot.json +6868 -0
  446. package/app/node_modules/@panoma/db/migrations/meta/0067_snapshot.json +6966 -0
  447. package/app/node_modules/@panoma/db/migrations/meta/0068_snapshot.json +6982 -0
  448. package/app/node_modules/@panoma/db/migrations/meta/0069_snapshot.json +7038 -0
  449. package/app/node_modules/@panoma/db/migrations/meta/0070_snapshot.json +7049 -0
  450. package/app/node_modules/@panoma/db/migrations/meta/0071_snapshot.json +7055 -0
  451. package/app/node_modules/@panoma/db/migrations/meta/_journal.json +56 -0
  452. package/app/node_modules/@panoma/handoff/dist/index.d.ts +16 -1
  453. package/app/node_modules/@panoma/handoff/dist/index.js +73 -29
  454. package/app/node_modules/@panoma/mcp/dist/index.js +358 -111
  455. package/app/node_modules/drizzle-orm/node_modules/.bin/gel +3 -3
  456. package/dist/{ai-command-QEXAVD5A.js → ai-command-KHHP7M3P.js} +4 -4
  457. package/dist/{apps-FBC65DRJ.js → apps-JIBB353S.js} +5 -4
  458. package/dist/brief-QRIDN6ND.js +37 -0
  459. package/dist/{check-command-GBIFTYMC.js → check-command-RADN7EQ2.js} +7 -5
  460. package/dist/chunk-6L6WBPRZ.js +37 -0
  461. package/dist/{chunk-U2FAFPLA.js → chunk-B2CTFPQP.js} +5 -3
  462. package/dist/{chunk-CTWQQWH7.js → chunk-KZILTAZL.js} +183 -2
  463. package/dist/chunk-R4EMO3Y2.js +196 -0
  464. package/dist/{chunk-3T3WTSPS.js → chunk-RD7TE2IA.js} +3397 -295
  465. package/dist/{chunk-R3D5NBHW.js → chunk-T7S3VVFE.js} +48 -79
  466. package/dist/{chunk-FI2ZMO24.js → chunk-UHJA5TUC.js} +6 -4
  467. package/dist/{chunk-6RVG2VUY.js → chunk-YSBWHGBC.js} +1 -1
  468. package/dist/{chunk-TXXI7WVK.js → chunk-ZRNEAPVY.js} +46 -8
  469. package/dist/{dist-PQLBVRZQ.js → dist-BEOOOTZA.js} +213 -1
  470. package/dist/{dist-F3N6LCV6.js → dist-MOQYZ63O.js} +2 -2
  471. package/dist/{dist-RNXJD4VL.js → dist-QLMIOHJR.js} +1 -1
  472. package/dist/{handoff-command-LT7XVHWZ.js → handoff-command-EMWYQVOX.js} +108 -44
  473. package/dist/index.js +182 -74
  474. package/dist/{md-command-QFRCVG3N.js → md-command-4DLP6YD6.js} +6 -4
  475. package/dist/memory-command-WNZOQUPW.js +770 -0
  476. package/dist/{next-command-PUKTGFHC.js → next-command-RKJV6BCU.js} +7 -5
  477. package/dist/{north-command-GFPTPOXX.js → north-command-ZZ3TWEDY.js} +7 -5
  478. package/dist/{review-command-AMGBA6JJ.js → review-command-7UOAO3SN.js} +2 -2
  479. package/dist/{spend-command-7KF2TMUR.js → spend-command-NQ5LQLIH.js} +6 -4
  480. package/dist/{twin-command-K42J3VLZ.js → twin-command-M4ENHXMZ.js} +50 -13
  481. package/dist/{video-UUJXJTLD.js → video-AFYY2VSI.js} +9 -8
  482. package/npm-shrinkwrap.json +2 -2
  483. package/package.json +1 -1
  484. package/app/apps/web/.next-bundle/server/chunks/1214.js +0 -217
  485. package/app/apps/web/.next-bundle/server/chunks/4350.js +0 -2
  486. package/app/apps/web/.next-bundle/server/chunks/4498.js +0 -12
  487. package/app/apps/web/.next-bundle/server/chunks/6913.js +0 -21
  488. package/app/apps/web/.next-bundle/server/chunks/715.js +0 -1
  489. package/app/apps/web/.next-bundle/server/chunks/7400.js +0 -3
  490. package/app/apps/web/.next-bundle/server/chunks/9128.js +0 -1
  491. package/app/apps/web/.next-bundle/server/chunks/9938.js +0 -1
  492. package/app/apps/web/.next-bundle/static/XbGco2Ho8DdunSxNkVKkD/_buildManifest.js +0 -1
  493. package/app/apps/web/.next-bundle/static/chunks/2575-a163738048526310.js +0 -1
  494. package/app/apps/web/.next-bundle/static/chunks/4189-0adcbb5b786fe4ed.js +0 -1
  495. package/app/apps/web/.next-bundle/static/chunks/app/(app)/apps/page-d6312405991c1921.js +0 -1
  496. package/app/apps/web/.next-bundle/static/chunks/app/(app)/bridge/page-3c6886ca6a72ce18.js +0 -1
  497. package/app/apps/web/.next-bundle/static/chunks/app/(app)/copies/page-b48037425ab46c7f.js +0 -1
  498. package/app/apps/web/.next-bundle/static/chunks/app/(app)/disk/page-d4b1b4bb4e4def5a.js +0 -1
  499. package/app/apps/web/.next-bundle/static/chunks/app/(app)/error-3133e3b7faa53a08.js +0 -1
  500. package/app/apps/web/.next-bundle/static/chunks/app/(app)/handoff/page-23c3a56e7bf631de.js +0 -1
  501. package/app/apps/web/.next-bundle/static/chunks/app/(app)/p/[slug]/page-207f0cb46059ab83.js +0 -1
  502. package/app/apps/web/.next-bundle/static/chunks/app/(app)/packages/page-eac7618918d667c0.js +0 -1
  503. package/app/apps/web/.next-bundle/static/chunks/app/(app)/page-441ec93d677f1096.js +0 -1
  504. package/app/apps/web/.next-bundle/static/chunks/app/(app)/runs/[id]/page-e878d113de303761.js +0 -1
  505. package/app/apps/web/.next-bundle/static/chunks/app/(app)/runs/page-b48037425ab46c7f.js +0 -1
  506. package/app/apps/web/.next-bundle/static/chunks/app/(app)/search/page-f3e862654c322c66.js +0 -1
  507. package/app/apps/web/.next-bundle/static/chunks/app/(app)/spend/page-f1b45f3417a3c6a2.js +0 -1
  508. package/app/apps/web/.next-bundle/static/chunks/app/(app)/twin/look/page-0b1b12da6581fb8d.js +0 -1
  509. package/app/apps/web/.next-bundle/static/chunks/app/(app)/twin/page-055886faf8bbd7b4.js +0 -1
  510. package/app/apps/web/.next-bundle/static/chunks/app/(app)/unsaved/page-9a941ccea2f1d762.js +0 -1
  511. package/app/apps/web/.next-bundle/static/chunks/app/_not-found/page-eac7618918d667c0.js +0 -1
  512. package/app/apps/web/.next-bundle/static/chunks/app/api/accounts/route-eac7618918d667c0.js +0 -1
  513. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/apps/route-eac7618918d667c0.js +0 -1
  514. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/consult/route-eac7618918d667c0.js +0 -1
  515. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/context/route-eac7618918d667c0.js +0 -1
  516. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/conversations/route-eac7618918d667c0.js +0 -1
  517. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/handoff/route-eac7618918d667c0.js +0 -1
  518. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/hello/route-eac7618918d667c0.js +0 -1
  519. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/journal/route-eac7618918d667c0.js +0 -1
  520. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/keys/route-eac7618918d667c0.js +0 -1
  521. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/log/route-eac7618918d667c0.js +0 -1
  522. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/mcp/route-eac7618918d667c0.js +0 -1
  523. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/notes/route-eac7618918d667c0.js +0 -1
  524. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/tasks/[id]/route-eac7618918d667c0.js +0 -1
  525. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/tasks/route-eac7618918d667c0.js +0 -1
  526. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/cancel/route-eac7618918d667c0.js +0 -1
  527. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/jobs/route-eac7618918d667c0.js +0 -1
  528. package/app/apps/web/.next-bundle/static/chunks/app/api/agent/video/route-eac7618918d667c0.js +0 -1
  529. package/app/apps/web/.next-bundle/static/chunks/app/api/ai/route-eac7618918d667c0.js +0 -1
  530. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/[operation]/route-eac7618918d667c0.js +0 -1
  531. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/credentials/route-eac7618918d667c0.js +0 -1
  532. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/jobs/route-eac7618918d667c0.js +0 -1
  533. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/legal/route-eac7618918d667c0.js +0 -1
  534. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/route-eac7618918d667c0.js +0 -1
  535. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/[id]/settings/route-eac7618918d667c0.js +0 -1
  536. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/artifact/route-eac7618918d667c0.js +0 -1
  537. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/cancel/route-eac7618918d667c0.js +0 -1
  538. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/jobs/[jobId]/route-eac7618918d667c0.js +0 -1
  539. package/app/apps/web/.next-bundle/static/chunks/app/api/apps/route-eac7618918d667c0.js +0 -1
  540. package/app/apps/web/.next-bundle/static/chunks/app/api/assets/route-eac7618918d667c0.js +0 -1
  541. package/app/apps/web/.next-bundle/static/chunks/app/api/assignments/launch/route-eac7618918d667c0.js +0 -1
  542. package/app/apps/web/.next-bundle/static/chunks/app/api/assignments/route-eac7618918d667c0.js +0 -1
  543. package/app/apps/web/.next-bundle/static/chunks/app/api/catalog/route-eac7618918d667c0.js +0 -1
  544. package/app/apps/web/.next-bundle/static/chunks/app/api/check/route-eac7618918d667c0.js +0 -1
  545. package/app/apps/web/.next-bundle/static/chunks/app/api/consultations/route-eac7618918d667c0.js +0 -1
  546. package/app/apps/web/.next-bundle/static/chunks/app/api/describe/route-eac7618918d667c0.js +0 -1
  547. package/app/apps/web/.next-bundle/static/chunks/app/api/disk/route-eac7618918d667c0.js +0 -1
  548. package/app/apps/web/.next-bundle/static/chunks/app/api/enrich/route-eac7618918d667c0.js +0 -1
  549. package/app/apps/web/.next-bundle/static/chunks/app/api/environment/route-eac7618918d667c0.js +0 -1
  550. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/[id]/route-eac7618918d667c0.js +0 -1
  551. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/digest/route-eac7618918d667c0.js +0 -1
  552. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/launch/route-eac7618918d667c0.js +0 -1
  553. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/record/route-eac7618918d667c0.js +0 -1
  554. package/app/apps/web/.next-bundle/static/chunks/app/api/handoff/route-eac7618918d667c0.js +0 -1
  555. package/app/apps/web/.next-bundle/static/chunks/app/api/hooks/route-eac7618918d667c0.js +0 -1
  556. package/app/apps/web/.next-bundle/static/chunks/app/api/ingest/route-eac7618918d667c0.js +0 -1
  557. package/app/apps/web/.next-bundle/static/chunks/app/api/md/apply/route-eac7618918d667c0.js +0 -1
  558. package/app/apps/web/.next-bundle/static/chunks/app/api/md/context/route-eac7618918d667c0.js +0 -1
  559. package/app/apps/web/.next-bundle/static/chunks/app/api/md/inspect/route-eac7618918d667c0.js +0 -1
  560. package/app/apps/web/.next-bundle/static/chunks/app/api/md/repair/route-eac7618918d667c0.js +0 -1
  561. package/app/apps/web/.next-bundle/static/chunks/app/api/md/review/route-eac7618918d667c0.js +0 -1
  562. package/app/apps/web/.next-bundle/static/chunks/app/api/memory/export/route-eac7618918d667c0.js +0 -1
  563. package/app/apps/web/.next-bundle/static/chunks/app/api/north/route-eac7618918d667c0.js +0 -1
  564. package/app/apps/web/.next-bundle/static/chunks/app/api/notes/route-eac7618918d667c0.js +0 -1
  565. package/app/apps/web/.next-bundle/static/chunks/app/api/open/all/route-eac7618918d667c0.js +0 -1
  566. package/app/apps/web/.next-bundle/static/chunks/app/api/open/route-eac7618918d667c0.js +0 -1
  567. package/app/apps/web/.next-bundle/static/chunks/app/api/project/route-eac7618918d667c0.js +0 -1
  568. package/app/apps/web/.next-bundle/static/chunks/app/api/rescan/route-eac7618918d667c0.js +0 -1
  569. package/app/apps/web/.next-bundle/static/chunks/app/api/roots/route-eac7618918d667c0.js +0 -1
  570. package/app/apps/web/.next-bundle/static/chunks/app/api/runs/[id]/route-eac7618918d667c0.js +0 -1
  571. package/app/apps/web/.next-bundle/static/chunks/app/api/runs/route-eac7618918d667c0.js +0 -1
  572. package/app/apps/web/.next-bundle/static/chunks/app/api/scale/route-eac7618918d667c0.js +0 -1
  573. package/app/apps/web/.next-bundle/static/chunks/app/api/search/route-eac7618918d667c0.js +0 -1
  574. package/app/apps/web/.next-bundle/static/chunks/app/api/secrets/route-eac7618918d667c0.js +0 -1
  575. package/app/apps/web/.next-bundle/static/chunks/app/api/spend/route-eac7618918d667c0.js +0 -1
  576. package/app/apps/web/.next-bundle/static/chunks/app/api/tasks/route-eac7618918d667c0.js +0 -1
  577. package/app/apps/web/.next-bundle/static/chunks/app/api/today/route-eac7618918d667c0.js +0 -1
  578. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/assign/route-eac7618918d667c0.js +0 -1
  579. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/classify/route-eac7618918d667c0.js +0 -1
  580. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/critique/route-eac7618918d667c0.js +0 -1
  581. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/design/route-eac7618918d667c0.js +0 -1
  582. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/distill/route-eac7618918d667c0.js +0 -1
  583. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/episodes/learn/route-eac7618918d667c0.js +0 -1
  584. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/episodes/route-eac7618918d667c0.js +0 -1
  585. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/look/route-eac7618918d667c0.js +0 -1
  586. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/mine/route-eac7618918d667c0.js +0 -1
  587. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/rehearse/route-eac7618918d667c0.js +0 -1
  588. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/score/route-eac7618918d667c0.js +0 -1
  589. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/shot/route-eac7618918d667c0.js +0 -1
  590. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/sources/route-eac7618918d667c0.js +0 -1
  591. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/synthesize/route-eac7618918d667c0.js +0 -1
  592. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/taste/route-eac7618918d667c0.js +0 -1
  593. package/app/apps/web/.next-bundle/static/chunks/app/api/twin/verdicts/route-eac7618918d667c0.js +0 -1
  594. package/app/apps/web/.next-bundle/static/chunks/app/api/watch/route-eac7618918d667c0.js +0 -1
  595. package/app/apps/web/.next-bundle/static/chunks/app/global-not-found-b48037425ab46c7f.js +0 -1
  596. package/app/apps/web/.next-bundle/static/chunks/app/icon/[id]/route-eac7618918d667c0.js +0 -1
  597. package/app/apps/web/.next-bundle/static/chunks/app/not-found-b48037425ab46c7f.js +0 -1
  598. package/app/apps/web/.next-bundle/static/chunks/main-app-6b20571947ec3a99.js +0 -1
  599. package/app/apps/web/.next-bundle/static/css/b1d2cc9ccd4e30bf.css +0 -1
  600. package/dist/memory-command-PETERVDN.js +0 -65
  601. /package/app/apps/web/.next-bundle/static/{XbGco2Ho8DdunSxNkVKkD → xmmOASVL-XuXjHd9elXeS}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=354,exports.ids=[354,5700],exports.modules={20354:(a,b,c)=>{c.d(b,{Bu:()=>x,CN:()=>j,Ch:()=>l,Gi:()=>w,IH:()=>g,NZ:()=>m,Yk:()=>i,_e:()=>o,hD:()=>n,kZ:()=>k,m0:()=>p,rV:()=>h,t9:()=>q});var d=c(40419),e=c(59340),f=c(55700);let g={"Cache-Control":"private, no-store"},h=new Set(["rate_limited","unavailable"]);function i(a,b,c,d,e={}){return Response.json({code:a,error:b,...void 0!==d?{hint:d}:{},retryable:h.has(a)},{status:c,headers:{...g,...e}})}async function j(a){let b,c=await a.text().catch(()=>void 0);if(void 0===c)return{refusal:i("invalid_input","The request body could not be read.",400)};if(Buffer.byteLength(c,"utf8")>65536)return{refusal:i("request_too_large","The request body exceeds 64 KiB.",413)};try{b=JSON.parse(c)}catch{return{refusal:i("invalid_input","The request body is not JSON.",400)}}return null===b||"object"!=typeof b||Array.isArray(b)?{refusal:i("invalid_input","The request body must be a JSON object.",400)}:{body:b}}function k(a,b){return Object.keys(a).find(a=>!b.includes(a))}function l(a){return a instanceof TypeError?"invalid_check"===a.code&&"string"==typeof a.reason?Response.json({code:"invalid_check",error:a.message,reason:a.reason,retryable:!1},{status:400,headers:g}):i("invalid_input",a.message,400):void 0}let m=["cwd","root","remote"];function n(a){let b={};for(let c of m){let d=a[c];if(void 0!==d){if("string"!=typeof d)return;b[c]=d}}return b}function o(a){return{error:"body",code:"body",detail:a}}let p={error:"no-project",code:"no-project",detail:"No project in the catalog matches this folder.",hint:"Call panoma_context for this folder first: it enrols the project, and then this call finds it."};async function q(a,b){let c=[];for(let d of(b.cwd&&c.push({cwd:b.cwd}),b.root&&b.root!==b.cwd&&c.push({cwd:b.root}),b.remote&&c.push({remote:b.remote}),c)){let b=await (0,e.KIZ)(a,d);if(b)return{id:b.id,name:b.name,slug:b.slug,root:b.root,identity:b.identity}}}let r=["target","dryRun","planId","expectedRevision","confirm"],s=["kind","id","itemKind","revision"],t=new Set(["source","project","session","item"]),u=new Set(["note","criterion","decision"]),v={stale_plan:"Ask for a new preview and confirm that one.",stale_revision:"The catalog moved since the preview; ask for a new one."};async function w(a,b,c){let e=await j(b);if("refusal"in e)return e.refusal;let{body:h}=e,l=k(h,r);if(void 0!==l)return i("invalid_input",`${l} is not a known property.`,400);let m=void 0!==h.target||void 0!==h.dryRun;if(m===(void 0!==h.planId||void 0!==h.expectedRevision||void 0!==h.confirm))return i("invalid_input","Send either { target, dryRun: true } for a preview or { planId, expectedRevision, confirm: true } to confirm one.",400);if(m){if(!0!==h.dryRun)return i("invalid_input","dryRun must be true: a preview is the only first step.",400);let b=function(a){if(null===a||"object"!=typeof a||Array.isArray(a))return"target must be an object.";let b=k(a,s);if(void 0!==b)return`target.${b} is not a known property.`;let{kind:c,id:e,itemKind:f,revision:g}=a;return"string"==typeof c&&t.has(c)?(0,d.lLK)(e)?"item"!==c?void 0!==f||void 0!==g?"target.itemKind and target.revision belong to an item target only.":{kind:c,id:e}:"string"==typeof f&&u.has(f)?void 0===g||(0,d.oNQ)(g)?{kind:"item",itemKind:f,id:e,...void 0!==g?{revision:g}:{}}:"target.revision must be a positive integer.":"target.itemKind must be note, criterion or decision.":"target.id must be an opaque id of 1 to 128 characters.":"target.kind must be source, project, session or item."}(h.target);if("string"==typeof b)return i("invalid_input",b,400);let e=await (0,f.AA)(await c(),void 0,{operation:a,targets:[b],scope:{targetKind:b.kind}});return"code"in e?i("unavailable",`The memory is quarantined (${e.reason}): nothing is planned until it is reconciled.`,503,"Reconcile the journal with panoma memory status."):Response.json(e,{headers:g})}let{planId:n,expectedRevision:o,confirm:p}=h;if("string"!=typeof n)return i("invalid_input","planId must be the id a preview answered.",400);if("number"!=typeof o)return i("invalid_input","expectedRevision must be the number the preview answered.",400);if(!0!==p)return i("invalid_input","confirm must be true.",400);let q=await (0,f.$i)(await c(),void 0,{planId:n,expectedRevision:o,confirm:p,operation:a});return"code"in q?"invalid_input"===q.code?i("invalid_input",`${q.reason??"The confirmation"} is not what a preview answered.`,400):"unavailable"===q.code?i("unavailable",`The memory is quarantined (${q.reason}): nothing is confirmed until it is reconciled.`,503):"stale_plan"===q.code&&"operation"===q.reason?i("stale_plan",`The plan was not previewed for a ${a}.`,409,`Confirm it through the door that answered the preview, or ask this one for a new ${a} preview.`):i(q.code,`The plan is ${"stale_plan"===q.code?"gone":"stale"} (${q.reason}).`,409,v[q.code]):Response.json({operationId:q.operationId,operation:q.operation,status:q.status},{status:202,headers:g})}async function x(a,b,c){let e=new URL(b.url).searchParams,h=[...e.keys()].find(a=>"id"!==a);if(void 0!==h)return i("invalid_input",`${h} is not a known query parameter.`,400);let j=e.get("id");if(!(0,d.lLK)(j))return i("invalid_input","id must be the operation id a confirmation answered.",400);let k=await (0,f.UY)(await c(),j);return void 0===k||k.operation!==a?i("not_found",`No ${a} operation has that id.`,404):Response.json({operationId:k.operationId,operation:k.operation,status:k.status,removed:k.removed,blocked:k.blocked,remaining:k.remaining,retained:k.retained,externalCopies:k.externalCopies,createdAt:k.createdAt.toISOString(),completedAt:k.completedAt?.toISOString()??null},{headers:g})}},55700:(a,b,c)=>{c.d(b,{$i:()=>m,AA:()=>k,UY:()=>n,dC:()=>o,jR:()=>j});var d=c(77598),e=c(59340),f=c(40419),g=c(35780);let h=globalThis;function i(){return h.panomaPurgePlans??=new Map}function j(){return(0,f.fg2)((process.env.PANOMA_OPERATOR_KEY??"").trim())}async function k(a,b,c,f={}){let g=await (0,e.NfF)(()=>(0,e.cFL)(a,b));if(g.quarantined)return{code:"unavailable",reason:g.reason};let h=f.now??new Date,[l,m]=await Promise.all([(0,e.sxl)(a,c),(0,e.vNo)(a)]);var n=h.getTime();let o=i();for(let[a,b]of o)b.expiresAtMs<=n&&o.delete(a);for(;o.size>=256;){let a=o.keys().next().value;if(void 0===a)break;o.delete(a)}let p=`plan_${(0,d.randomUUID)()}`,q=h.getTime()+6e5,r={planId:p,operation:c.operation,expectedRevision:m,affected:l.affected,retained:l.retained,externalCopies:l.externalCopies,expiresAt:new Date(q).toISOString()};return i().set(p,{plan:r,intent:{operation:c.operation,targets:c.targets,scope:c.scope},operatorHash:j(),installation:g.journalId,expiresAtMs:q}),r}async function l(a,b){for(let c of(await (0,e.kPL)(a))){let a=c.targets;if(a&&a.intentId===b)return{id:c.id,operation:c.operation,state:c.state}}}async function m(a,b,c,d={}){if("string"!=typeof c.planId||!/^plan_[0-9a-f-]{36}$/i.test(c.planId))return{code:"invalid_input",reason:"planId"};if(!Number.isSafeInteger(c.expectedRevision)||c.expectedRevision<0)return{code:"invalid_input",reason:"expectedRevision"};if(!0!==c.confirm)return{code:"invalid_input",reason:"confirm"};if("purge"!==c.operation&&"withdraw"!==c.operation)return{code:"invalid_input",reason:"operation"};let f=(d.now??new Date).getTime(),g=i(),h=g.get(c.planId);if(h&&h.plan.operation!==c.operation)return{code:"stale_plan",reason:"operation"};if(h?.operationId!==void 0){let b=await (0,e.b26)(a,h.operationId);return{operationId:h.operationId,operation:c.operation,status:b?.state??"pending",reused:!0}}let k=await l(a,c.planId);if(k)return k.operation!==c.operation?{code:"stale_plan",reason:"operation"}:(h&&(h.operationId=k.id),{operationId:k.id,operation:k.operation,status:k.state,reused:!0});if(!h||h.expiresAtMs<=f)return h&&g.delete(c.planId),{code:"stale_plan",reason:h?"expired":"unknown"};if(h.operatorHash!==j())return{code:"stale_plan",reason:"operator"};let n=await (0,e.NfF)(()=>(0,e.cFL)(a,b));if(n.quarantined)return{code:"unavailable",reason:n.reason};if(h.installation!==n.journalId)return{code:"stale_plan",reason:"installation"};if(h.plan.expectedRevision!==c.expectedRevision)return{code:"stale_revision",reason:"plan"};let o=await (0,e.NfF)(()=>(0,e.uws)(a,b,h.intent,{intentId:c.planId,expectedGeneration:h.plan.expectedRevision}));return"refused"in o?"stale"===o.refused?{code:"stale_revision",reason:"catalog"}:{code:"unavailable",reason:o.reason}:(h.operationId=o.id,{operationId:o.id,operation:h.plan.operation,status:"pending",reused:o.reused})}async function n(a,b){if("string"!=typeof b||0===b.length||b.length>128)return;let c=await (0,e.b26)(a,b);if(!c)return;let d=c.progress,f=a=>Array.isArray(a)?a.filter(a=>"string"==typeof a):[],g=a=>"number"==typeof a&&Number.isSafeInteger(a)?a:0,h=c.state;return{operationId:c.id,operation:c.operation,status:h,removed:g(d?.removedCount),blocked:g(d?.blockedCount),remaining:"complete"===h||"failed"===h?0:f(d?.pendingStores).length+g(d?.filesPending),retained:f(d?.retained),externalCopies:f(d?.externalCopies),createdAt:c.createdAt,completedAt:c.completedAt}}async function o(a,b={}){let c=b.maxRounds??8,d=[...await (0,e.kPL)(a,{state:"pending"}),...await (0,e.kPL)(a,{state:"cleaning"})].filter(a=>"baseline"!==a.operation).sort((a,b)=>a.sequence-b.sequence),f=0,h=0;for(let b of d){let d=await (0,g.hf)(a,b.id);if(!(await (0,e.NfF)(()=>(0,e.oPV)(a,b.id,d))).proceed){h+=Math.max(1,d.pending);continue}let i=0;for(let d=0;d<c;d+=1){let c=await (0,e.NfF)(()=>(0,e.m_q)(a,b.id));if(f+=1,i=c.remaining,"complete"===c.state||"failed"===c.state||0===i)break}h+=i}return{operations:d.length,rounds:f,remaining:h}}}};
@@ -1 +1 @@
1
- "use strict";exports.id=3834,exports.ids=[3834,7711],exports.modules={54699:(a,b,c)=>{c.d(b,{E3:()=>f,Sx:()=>i,kX:()=>g,nb:()=>j,u4:()=>h});var d=c(4528),e=c(86247);let f=["install","browser","update","rollback","enable","disable","uninstall","clean","doctor","check"],g={panoma_video_auto:["goal","format","new_story","theme","langs","until","force","voice","url","brain","music","dance","creative_brief"],panoma_video_render:["brief_id","theme","hook","lang","format","force","voice","brain"],panoma_video_review:["render_id","detail"],panoma_video_revise:["brief_id","expectedRevision","edits","instruction","restoreRevision","note","brain"],panoma_video_story:["brief_id"],panoma_video_scout:["detail"]};function h(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function i(a,b){if(!g[a]||!d.wh[a])throw new e.G8("unknown-app-tool");if(!h(b)||JSON.stringify(b).length>64e3)throw new e.G8("invalid-app-input");if(Object.keys(b).some(b=>!g[a].includes(b)))throw new e.G8("unknown-app-input");if(void 0!==b.url){let a;try{a=new URL(String(b.url))}catch{throw new e.G8("local-url-required")}if(!["http:","https:"].includes(a.protocol)||a.username||a.password||!["localhost","127.0.0.1","[::1]"].includes(a.hostname))throw new e.G8("local-url-required")}for(let a of["brief_id","render_id","hook"])if(void 0!==b[a]&&("string"!=typeof b[a]||!/^[a-z0-9][a-z0-9-]{0,199}$/.test(b[a])))throw new e.G8(`invalid-${a}`);return b}function j(a,b,c){if("panoma_video_review"===b&&"fail"===a.status||h(a.review)&&"fail"===a.review.status)return"review-failed";if(h(a.stages)){let b=Object.entries(a.stages).find(([,a])=>h(a)&&"failed"===a.status);if(b)return"stage-failed: "+b[0]}if(Array.isArray(a.renders)){if(a.renders.some(a=>h(a)&&h(a.review)&&"fail"===a.review.status))return"review-failed";if("panoma_video_auto"===b&&"plan"!==c.until&&!a.renders.length)return"no-supported-production"}}},86247:(a,b,c)=>{c.d(b,{G8:()=>d.G8,Kl:()=>d.Kl});var d=c(97445)},87711:(a,b,c)=>{c.d(b,{Ag:()=>w,Ap:()=>k,Cv:()=>A,Js:()=>j,TC:()=>B,_r:()=>u,i_:()=>i,jQ:()=>y,l4:()=>v,lG:()=>z,ov:()=>l,p9:()=>x,tY:()=>g,wo:()=>n});var d=c(51455),e=c(76760),f=c(26913);let g=["read","look","memory","ask","rehearse","episodes","card","app","handoff"],h={read:300,look:20,memory:12,ask:20,rehearse:20,episodes:20,card:100,app:20,handoff:10},i={read:"PANOMA_READ_BUDGET",look:"PANOMA_LOOK_BUDGET",memory:"PANOMA_DISTILL_BUDGET",ask:"PANOMA_ASK_BUDGET",rehearse:"PANOMA_REHEARSE_BUDGET",episodes:"PANOMA_EPISODE_BUDGET",card:"PANOMA_CARD_BUDGET",app:"PANOMA_APP_BUDGET",handoff:"PANOMA_HANDOFF_BUDGET"},j={read:["distill","classify","synthesize"],look:["look"],memory:["memory"],ask:["ask"],rehearse:["rehearse"],episodes:["episodes"],card:["describe","review"],app:["app"],handoff:["handoff"]};function k(a){return g.find(b=>j[b].includes(a))}let l=1568;function m(){return{caps:{},rates:{},currency:"USD",paused:!1,shots:"full"}}function n(a,b){return`${a}/${b}`}function o(){return(0,f.iu)("spend.json")}let p=/^[A-Z]{3}$/;function q(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function r(a){return"number"==typeof a&&Number.isInteger(a)&&a>=0&&a<=1e5}function s(a){if(!q(a))return!1;let{input:b,output:c}=a;return"number"==typeof b&&Number.isFinite(b)&&b>=0&&"number"==typeof c&&Number.isFinite(c)&&c>=0}function t(a){return a.length>0&&a.length<=200&&a.includes("/")}async function u(){let a;try{a=await (0,d.readFile)(o(),"utf8")}catch{return{settings:m(),broken:!1}}try{let b=function(a){if(!q(a))return;let b=m();if(q(a.caps))for(let c of g){let d=a.caps[c];r(d)&&(b.caps[c]=d)}if(q(a.rates))for(let[c,d]of Object.entries(a.rates))t(c)&&s(d)&&(b.rates[c]={input:d.input,output:d.output});return"string"==typeof a.currency&&p.test(a.currency)&&(b.currency=a.currency),!0===a.paused&&(b.paused=!0),"fit"===a.shots&&(b.shots="fit"),b}(JSON.parse(a));return b?{settings:b,broken:!1}:{settings:m(),broken:!0}}catch{return{settings:m(),broken:!0}}}async function v(a){let b=o();await (0,d.mkdir)((0,e.dirname)(b),{recursive:!0});let c=`${b}.${process.pid}.${Math.random().toString(36).slice(2,8)}.tmp`;await (0,d.writeFile)(c,JSON.stringify(a,null,2),{mode:384}),await (0,d.rename)(c,b)}function w(a,b){if(!q(b))return{fault:"body"};let c={caps:{...a.caps},rates:{...a.rates},currency:a.currency,paused:a.paused,shots:a.shots};if(void 0!==b.caps){if(!q(b.caps))return{fault:"caps"};for(let[a,d]of Object.entries(b.caps)){let b=g.find(b=>b===a);if(!b)return{fault:"caps"};if(null===d){delete c.caps[b];continue}if(!r(d))return{fault:"caps"};c.caps[b]=d}}if(void 0!==b.rates){if(!q(b.rates))return{fault:"rates"};let a={};for(let[c,d]of Object.entries(b.rates)){if(!t(c))return{fault:"rates"};if(null!==d){if(!s(d))return{fault:"rates"};a[c]={input:d.input,output:d.output}}}c.rates=a}if(void 0!==b.currency){if("string"!=typeof b.currency||!p.test(b.currency))return{fault:"currency"};c.currency=b.currency}if(void 0!==b.paused){if("boolean"!=typeof b.paused)return{fault:"paused"};c.paused=b.paused}if(void 0!==b.shots){if("full"!==b.shots&&"fit"!==b.shots)return{fault:"shots"};c.shots=b.shots}return{settings:c}}async function x(){let{settings:a}=await u();return a.shots}function y(a,b){if(void 0===a||""===a.trim())return b;let c=Number(a.trim());return!Number.isInteger(c)||c<0?b:c}function z(a,b,c){let d=h[a],e=b[i[a]],f=void 0!==e&&""!==e.trim()?e:void 0;if(c.paused)return{cap:0,source:"paused",factory:d,...void 0!==f?{env:f}:{}};if(void 0!==f)return{cap:y(f,d),source:"env",factory:d,env:f};let g=c.caps[a];return void 0!==g?{cap:g,source:"file",factory:d}:{cap:d,source:"factory",factory:d}}async function A(a){let{settings:b}=await u();return z(a,process.env,b)}async function B(){let{settings:a}=await u();return Object.fromEntries(g.map(b=>[b,z(b,process.env,a)]))}},90336:(a,b,c)=>{c.d(b,{Jh:()=>o,Q9:()=>q,ge:()=>m,no:()=>p});var d=c(73024),e=c(51455),f=c(76760),g=c(96622),h=c(37602),i=c(79161),j=c(4528),k=c(28388),l=c(86247);class m extends Error{constructor(a,b){super(a),this.result=b}}function n(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function o(a){return n(a)&&Array.isArray(a.requirements)?a.requirements.map(a=>n(a)&&"string"==typeof a.id?a.id:"").filter(Boolean):[]}function p(a,b){return!!n(a)&&!!b.length&&b.every(b=>n(a[b])&&!0===a[b].present)}async function q(a,b={}){let c,o=(0,j.Q2)(a.id),p=(0,j.Pi)(a.id,{jobId:b.jobId,brain:b.brain??"none",providerEnv:b.providerEnv,maxBrainCalls:b.maxBrainCalls??0});if(await (0,j.LS)(o.logs),await (0,j.LS)(o.data),await (0,e.mkdir)(o.logs,{recursive:!0,mode:448}),b.jobId&&!/^[a-zA-Z0-9-]{1,100}$/.test(b.jobId))throw new l.G8("invalid-job-id");let r=await (0,e.open)((0,f.join)(o.logs,"job-"+(b.jobId??"probe")+".log"),d.constants.O_WRONLY|d.constants.O_CREAT|d.constants.O_TRUNC|(d.constants.O_NOFOLLOW??0),384),s=0,t="",u=!1,v=Promise.resolve(),w=new g.K({name:"panoma-app-host",version:"1"},{capabilities:{}}),x=new h.oQ({command:process.execPath,args:["-e",'const {spawn}=require("node:child_process");\nconst parent=process.ppid;\nconst child=spawn(process.execPath,[process.argv[1]],{env:process.env,cwd:process.cwd(),detached:process.platform!=="win32",stdio:["pipe","pipe","pipe"],windowsHide:true});\nlet closing=false;\nfunction stop(code=0){if(closing)return;closing=true;clearInterval(watch);\nif(process.platform==="win32"){const k=spawn("taskkill",["/T","/F","/PID",String(child.pid)],{windowsHide:true,stdio:"ignore"});k.on("error",()=>process.exit(code));k.on("exit",()=>process.exit(code));}\nelse{try{process.kill(-child.pid,"SIGTERM")}catch{}setTimeout(()=>{try{process.kill(-child.pid,"SIGKILL")}catch{}process.exit(code)},1000)}\nsetTimeout(()=>process.exit(code),1800).unref();}\nconst watch=setInterval(()=>{try{process.kill(parent,0);if(process.ppid!==parent)stop(1)}catch{stop(1)}},1000);\nchild.stdout.pipe(process.stdout);child.stderr.pipe(process.stderr);process.stdin.pipe(child.stdin);\nprocess.stdout.on("error",()=>stop(1));process.stderr.on("error",()=>stop(1));\nprocess.stdin.on("end",()=>stop());process.stdin.on("error",()=>stop(1));\nchild.stdin.on("error",()=>{});child.on("error",()=>stop(1));child.on("exit",code=>stop(code||0));\nprocess.on("SIGTERM",()=>stop());process.on("SIGINT",()=>stop());',a.entry],cwd:a.root,env:p,stderr:"pipe"});function y(a){for(let c of Object.values(b.providerEnv??{}))c&&(a=a.split(c).join("[redacted]"));return a.replace(/(?:sk-[A-Za-z0-9_-]{10,}|panoma_[A-Za-z0-9_-]{15,})/g,"[redacted]")}function z(a){if(s>=1048576)return;let b=Buffer.from(y(a)).subarray(0,1048576-s);s+=b.length,v=v.then(async()=>{await r.write(b)}).catch(()=>{})}x.stderr?.on("data",a=>{let d=(t+a.toString("utf8")).split("\n");for(let a of(t=d.pop(),d)){let d=u||a.length>65536;if(u=!1,!d){try{let d=JSON.parse(a);"panoma-app-spend"===d.event&&d.job===b.jobId&&n(d.spend)&&Number.isSafeInteger(d.spend.calls)&&d.spend.calls>=0&&d.spend.calls<=k.q8B&&d.spend.calls>=(c?.calls??0)&&(c=d.spend)}catch{}z(a+"\n")}}t.length>65536&&(t="",u=!0)});let A=!1;async function B(){A||(A=!0,await w.close().catch(()=>{}),u||z(t),await v,await r.close())}async function C(a,b,c={}){let d=await w.callTool({name:a,arguments:b,...c.token?{_meta:{progressToken:c.token}}:{}},i.TF,{signal:c.signal,timeout:c.timeout??2e4,maxTotalTimeout:c.timeout??2e4,onprogress:c.onProgress}),e=n(d.structuredContent)?d.structuredContent:void 0;if(d.isError){let a=d.content;throw new m(y(a.find(a=>"text"===a.type)?.text??"app-error").slice(0,4e3),e)}if(!e)throw new m("malformed-app-result");return e}try{await w.connect(x,{timeout:2e4,signal:b.signal}),x.pid&&b.onPid?.(x.pid);let d=b.deepProbe?{probe:"deep"}:{};return{guide:function(a,b,c){if(!n(a)||"string"!=typeof a.version)throw new l.G8("malformed-guide");if(a.version!==b)throw new l.G8("protocol-mismatch");if(!n(a.requirements))throw new l.G8("malformed-requirements");if(!c.length)throw Error("malformed-requirements: none declared");for(let b of c){let c=a.requirements[b];if(!n(c)||"boolean"!=typeof c.present)throw Error("malformed-requirements: "+b)}return a}(await C("panoma_video_guide",d,{signal:b.signal,timeout:j.SG}),a.manifest.protocol,a.manifest.requirements.map(a=>a.id)),pid:x.pid,get spend(){return c},call:C,close:B}}catch(a){throw await B(),a}}}};
1
+ "use strict";exports.id=3834,exports.ids=[3834,7711],exports.modules={54699:(a,b,c)=>{c.d(b,{E3:()=>f,Sx:()=>i,kX:()=>g,nb:()=>j,u4:()=>h});var d=c(4528),e=c(86247);let f=["install","browser","update","rollback","enable","disable","uninstall","clean","doctor","check"],g={panoma_video_auto:["goal","format","new_story","theme","langs","until","force","voice","url","brain","music","dance","creative_brief"],panoma_video_render:["brief_id","theme","hook","lang","format","force","voice","brain"],panoma_video_review:["render_id","detail"],panoma_video_revise:["brief_id","expectedRevision","edits","instruction","restoreRevision","note","brain"],panoma_video_story:["brief_id"],panoma_video_scout:["detail"]};function h(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function i(a,b){if(!g[a]||!d.wh[a])throw new e.G8("unknown-app-tool");if(!h(b)||JSON.stringify(b).length>64e3)throw new e.G8("invalid-app-input");if(Object.keys(b).some(b=>!g[a].includes(b)))throw new e.G8("unknown-app-input");if(void 0!==b.url){let a;try{a=new URL(String(b.url))}catch{throw new e.G8("local-url-required")}if(!["http:","https:"].includes(a.protocol)||a.username||a.password||!["localhost","127.0.0.1","[::1]"].includes(a.hostname))throw new e.G8("local-url-required")}for(let a of["brief_id","render_id","hook"])if(void 0!==b[a]&&("string"!=typeof b[a]||!/^[a-z0-9][a-z0-9-]{0,199}$/.test(b[a])))throw new e.G8(`invalid-${a}`);return b}function j(a,b,c){if("panoma_video_review"===b&&"fail"===a.status||h(a.review)&&"fail"===a.review.status)return"review-failed";if(h(a.stages)){let b=Object.entries(a.stages).find(([,a])=>h(a)&&"failed"===a.status);if(b)return"stage-failed: "+b[0]}if(Array.isArray(a.renders)){if(a.renders.some(a=>h(a)&&h(a.review)&&"fail"===a.review.status))return"review-failed";if("panoma_video_auto"===b&&"plan"!==c.until&&!a.renders.length)return"no-supported-production"}}},86247:(a,b,c)=>{c.d(b,{G8:()=>d.G8,Kl:()=>d.Kl});var d=c(97445)},87711:(a,b,c)=>{c.d(b,{$A:()=>m,Ag:()=>B,Ap:()=>k,Cv:()=>F,D6:()=>n,GJ:()=>I,Js:()=>j,Kq:()=>o,Q1:()=>l,TC:()=>G,_r:()=>z,d8:()=>H,i_:()=>i,jQ:()=>D,l4:()=>A,lG:()=>E,ov:()=>p,p9:()=>C,tY:()=>g,wo:()=>r});var d=c(51455),e=c(76760),f=c(40419);let g=["read","look","memory","ask","rehearse","episodes","card","app","handoff"],h={read:300,look:20,memory:12,ask:20,rehearse:20,episodes:20,card:100,app:20,handoff:10},i={read:"PANOMA_READ_BUDGET",look:"PANOMA_LOOK_BUDGET",memory:"PANOMA_DISTILL_BUDGET",ask:"PANOMA_ASK_BUDGET",rehearse:"PANOMA_REHEARSE_BUDGET",episodes:"PANOMA_EPISODE_BUDGET",card:"PANOMA_CARD_BUDGET",app:"PANOMA_APP_BUDGET",handoff:"PANOMA_HANDOFF_BUDGET"},j={read:["distill","classify","synthesize"],look:["look"],memory:["memory"],ask:["ask"],rehearse:["rehearse"],episodes:["episodes"],card:["describe","review"],app:["app"],handoff:["handoff"]};function k(a){return g.find(b=>j[b].includes(a))}let l={catalog:256,project:64},m={catalog:"PANOMA_MEMORY_QUOTA_MB",project:"PANOMA_PROJECT_QUOTA_MB"},n=1048576,o=1048576,p=1568;function q(){return{caps:{},rates:{},currency:"USD",paused:!1,shots:"full"}}function r(a,b){return`${a}/${b}`}function s(){return(0,f.iuJ)("spend.json")}let t=/^[A-Z]{3}$/;function u(a){return"object"==typeof a&&null!==a&&!Array.isArray(a)}function v(a){return"number"==typeof a&&Number.isInteger(a)&&a>=0&&a<=1e5}function w(a){return"number"==typeof a&&Number.isInteger(a)&&a>0&&a<=o}function x(a){if(!u(a))return!1;let{input:b,output:c}=a;return"number"==typeof b&&Number.isFinite(b)&&b>=0&&"number"==typeof c&&Number.isFinite(c)&&c>=0}function y(a){return a.length>0&&a.length<=200&&a.includes("/")}async function z(){let a;try{a=await (0,d.readFile)(s(),"utf8")}catch{return{settings:q(),broken:!1}}try{let b=function(a){if(!u(a))return;let b=q();if(u(a.caps))for(let c of g){let d=a.caps[c];v(d)&&(b.caps[c]=d)}if(u(a.rates))for(let[c,d]of Object.entries(a.rates))y(c)&&x(d)&&(b.rates[c]={input:d.input,output:d.output});if("string"==typeof a.currency&&t.test(a.currency)&&(b.currency=a.currency),!0===a.paused&&(b.paused=!0),"fit"===a.shots&&(b.shots="fit"),u(a.quota)){let c={};w(a.quota.catalogMb)&&(c.catalogMb=a.quota.catalogMb),w(a.quota.projectMb)&&(c.projectMb=a.quota.projectMb),(void 0!==c.catalogMb||void 0!==c.projectMb)&&(b.quota=c)}return b}(JSON.parse(a));return b?{settings:b,broken:!1}:{settings:q(),broken:!0}}catch{return{settings:q(),broken:!0}}}async function A(a){let b=s();await (0,d.mkdir)((0,e.dirname)(b),{recursive:!0});let c=`${b}.${process.pid}.${Math.random().toString(36).slice(2,8)}.tmp`;await (0,d.writeFile)(c,JSON.stringify(a,null,2),{mode:384}),await (0,d.rename)(c,b)}function B(a,b){if(!u(b))return{fault:"body"};let c={caps:{...a.caps},rates:{...a.rates},currency:a.currency,paused:a.paused,shots:a.shots,...void 0!==a.quota?{quota:{...a.quota}}:{}};if(void 0!==b.caps){if(!u(b.caps))return{fault:"caps"};for(let[a,d]of Object.entries(b.caps)){let b=g.find(b=>b===a);if(!b)return{fault:"caps"};if(null===d){delete c.caps[b];continue}if(!v(d))return{fault:"caps"};c.caps[b]=d}}if(void 0!==b.rates){if(!u(b.rates))return{fault:"rates"};let a={};for(let[c,d]of Object.entries(b.rates)){if(!y(c))return{fault:"rates"};if(null!==d){if(!x(d))return{fault:"rates"};a[c]={input:d.input,output:d.output}}}c.rates=a}if(void 0!==b.currency){if("string"!=typeof b.currency||!t.test(b.currency))return{fault:"currency"};c.currency=b.currency}if(void 0!==b.paused){if("boolean"!=typeof b.paused)return{fault:"paused"};c.paused=b.paused}if(void 0!==b.shots){if("full"!==b.shots&&"fit"!==b.shots)return{fault:"shots"};c.shots=b.shots}if(void 0!==b.quota){if(!u(b.quota))return{fault:"quota"};let a={...c.quota};for(let[c,d]of Object.entries(b.quota)){if("catalogMb"!==c&&"projectMb"!==c)return{fault:"quota"};if(null===d)delete a[c];else{if(!w(d))return{fault:"quota"};a[c]=d}}Object.keys(a).length?c.quota=a:delete c.quota}return{settings:c}}async function C(){let{settings:a}=await z();return a.shots}function D(a,b){if(void 0===a||""===a.trim())return b;let c=Number(a.trim());return!Number.isInteger(c)||c<0?b:c}function E(a,b,c){let d=h[a],e=b[i[a]],f=void 0!==e&&""!==e.trim()?e:void 0;if(c.paused)return{cap:0,source:"paused",factory:d,...void 0!==f?{env:f}:{}};if(void 0!==f)return{cap:D(f,d),source:"env",factory:d,env:f};let g=c.caps[a];return void 0!==g?{cap:g,source:"file",factory:d}:{cap:d,source:"factory",factory:d}}async function F(a){let{settings:b}=await z();return E(a,process.env,b)}async function G(){let{settings:a}=await z();return Object.fromEntries(g.map(b=>[b,E(b,process.env,a)]))}function H(a,b){let c=c=>{let d=a[m[c]];if(void 0!==d&&""!==d.trim())return{mb:function(a,b){if(void 0===a||""===a.trim())return b;let c=Number(a.trim());return w(c)?c:b}(d,l[c]),source:"variable"};let e="catalog"===c?b.quota?.catalogMb:b.quota?.projectMb;return void 0!==e&&w(e)?{mb:e,source:"file"}:{mb:l[c],source:"factory"}},d=c("catalog"),e=c("project"),f={catalog:d.source,project:e.source},g="variable"===d.source||"variable"===e.source?"variable":"file"===d.source||"file"===e.source?"file":"factory";return{catalogBytes:d.mb*n,projectBytes:e.mb*n,source:g,sources:f}}async function I(){let{settings:a}=await z();return H(process.env,a)}},90336:(a,b,c)=>{c.d(b,{Jh:()=>o,Q9:()=>q,ge:()=>m,no:()=>p});var d=c(73024),e=c(51455),f=c(76760),g=c(96622),h=c(37602),i=c(79161),j=c(4528),k=c(59340),l=c(86247);class m extends Error{constructor(a,b){super(a),this.result=b}}function n(a){return!!a&&"object"==typeof a&&!Array.isArray(a)}function o(a){return n(a)&&Array.isArray(a.requirements)?a.requirements.map(a=>n(a)&&"string"==typeof a.id?a.id:"").filter(Boolean):[]}function p(a,b){return!!n(a)&&!!b.length&&b.every(b=>n(a[b])&&!0===a[b].present)}async function q(a,b={}){let c,o=(0,j.Q2)(a.id),p=(0,j.Pi)(a.id,{jobId:b.jobId,brain:b.brain??"none",providerEnv:b.providerEnv,maxBrainCalls:b.maxBrainCalls??0});if(await (0,j.LS)(o.logs),await (0,j.LS)(o.data),await (0,e.mkdir)(o.logs,{recursive:!0,mode:448}),b.jobId&&!/^[a-zA-Z0-9-]{1,100}$/.test(b.jobId))throw new l.G8("invalid-job-id");let r=await (0,e.open)((0,f.join)(o.logs,"job-"+(b.jobId??"probe")+".log"),d.constants.O_WRONLY|d.constants.O_CREAT|d.constants.O_TRUNC|(d.constants.O_NOFOLLOW??0),384),s=0,t="",u=!1,v=Promise.resolve(),w=new g.K({name:"panoma-app-host",version:"1"},{capabilities:{}}),x=new h.oQ({command:process.execPath,args:["-e",'const {spawn}=require("node:child_process");\nconst parent=process.ppid;\nconst child=spawn(process.execPath,[process.argv[1]],{env:process.env,cwd:process.cwd(),detached:process.platform!=="win32",stdio:["pipe","pipe","pipe"],windowsHide:true});\nlet closing=false;\nfunction stop(code=0){if(closing)return;closing=true;clearInterval(watch);\nif(process.platform==="win32"){const k=spawn("taskkill",["/T","/F","/PID",String(child.pid)],{windowsHide:true,stdio:"ignore"});k.on("error",()=>process.exit(code));k.on("exit",()=>process.exit(code));}\nelse{try{process.kill(-child.pid,"SIGTERM")}catch{}setTimeout(()=>{try{process.kill(-child.pid,"SIGKILL")}catch{}process.exit(code)},1000)}\nsetTimeout(()=>process.exit(code),1800).unref();}\nconst watch=setInterval(()=>{try{process.kill(parent,0);if(process.ppid!==parent)stop(1)}catch{stop(1)}},1000);\nchild.stdout.pipe(process.stdout);child.stderr.pipe(process.stderr);process.stdin.pipe(child.stdin);\nprocess.stdout.on("error",()=>stop(1));process.stderr.on("error",()=>stop(1));\nprocess.stdin.on("end",()=>stop());process.stdin.on("error",()=>stop(1));\nchild.stdin.on("error",()=>{});child.on("error",()=>stop(1));child.on("exit",code=>stop(code||0));\nprocess.on("SIGTERM",()=>stop());process.on("SIGINT",()=>stop());',a.entry],cwd:a.root,env:p,stderr:"pipe"});function y(a){for(let c of Object.values(b.providerEnv??{}))c&&(a=a.split(c).join("[redacted]"));return a.replace(/(?:sk-[A-Za-z0-9_-]{10,}|panoma_[A-Za-z0-9_-]{15,})/g,"[redacted]")}function z(a){if(s>=1048576)return;let b=Buffer.from(y(a)).subarray(0,1048576-s);s+=b.length,v=v.then(async()=>{await r.write(b)}).catch(()=>{})}x.stderr?.on("data",a=>{let d=(t+a.toString("utf8")).split("\n");for(let a of(t=d.pop(),d)){let d=u||a.length>65536;if(u=!1,!d){try{let d=JSON.parse(a);"panoma-app-spend"===d.event&&d.job===b.jobId&&n(d.spend)&&Number.isSafeInteger(d.spend.calls)&&d.spend.calls>=0&&d.spend.calls<=k.q8B&&d.spend.calls>=(c?.calls??0)&&(c=d.spend)}catch{}z(a+"\n")}}t.length>65536&&(t="",u=!0)});let A=!1;async function B(){A||(A=!0,await w.close().catch(()=>{}),u||z(t),await v,await r.close())}async function C(a,b,c={}){let d=await w.callTool({name:a,arguments:b,...c.token?{_meta:{progressToken:c.token}}:{}},i.TF,{signal:c.signal,timeout:c.timeout??2e4,maxTotalTimeout:c.timeout??2e4,onprogress:c.onProgress}),e=n(d.structuredContent)?d.structuredContent:void 0;if(d.isError){let a=d.content;throw new m(y(a.find(a=>"text"===a.type)?.text??"app-error").slice(0,4e3),e)}if(!e)throw new m("malformed-app-result");return e}try{await w.connect(x,{timeout:2e4,signal:b.signal}),x.pid&&b.onPid?.(x.pid);let d=b.deepProbe?{probe:"deep"}:{};return{guide:function(a,b,c){if(!n(a)||"string"!=typeof a.version)throw new l.G8("malformed-guide");if(a.version!==b)throw new l.G8("protocol-mismatch");if(!n(a.requirements))throw new l.G8("malformed-requirements");if(!c.length)throw Error("malformed-requirements: none declared");for(let b of c){let c=a.requirements[b];if(!n(c)||"boolean"!=typeof c.present)throw Error("malformed-requirements: "+b)}return a}(await C("panoma_video_guide",d,{signal:b.signal,timeout:j.SG}),a.manifest.protocol,a.manifest.requirements.map(a=>a.id)),pid:x.pid,get spend(){return c},call:C,close:B}}catch(a){throw await B(),a}}}};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=3896,exports.ids=[3896],exports.modules={51065:(a,b,c)=>{c.d(b,{W:()=>f});var d=c(31421),e=c(26913);async function f(a,b,c,g=[0]){let h=(0,e.c_)(a,b);return new Promise(a=>{let b;try{b=(0,d.spawn)(h.file,h.args,{...c?{cwd:c}:{},detached:!0,stdio:"ignore"})}catch(b){a(b);return}b.on("error",b=>a(b)),b.on("exit",b=>{null!==b&&a(g.includes(b)?void 0:Error(`exited with ${b}`))}),b.unref(),setTimeout(()=>a(void 0),400)})}},71955:(a,b,c)=>{function d(a){return"win32"===a?"powershell":"posix"}c.d(b,{_z:()=>i,c9:()=>h,eC:()=>g,of:()=>d});let e=/^[A-Za-z0-9_@%+=:,./-]+$/,f=/^[A-Za-z0-9_+=:,./\\-]+$/;function g(a,b="posix"){return"powershell"===b?""!==a&&f.test(a)?a:`'${a.replace(/'/g,"''")}'`:""!==a&&e.test(a)?a:`'${a.replace(/'/g,"'\\''")}'`}function h(a,b="posix"){return a.join("powershell"===b?"; ":" && ")}function i(a,b,c="posix"){let d="string"==typeof b?[b]:b,e=g(a,c);return"powershell"===c?`cd ${e}; if ($?) { ${h(d,c)} }`:`cd ${e} && ${h(d,c)}`}},81169:(a,b,c)=>{c.d(b,{I:()=>e,n:()=>f});var d=c(71955);function e(a){if("powershell"===a.shell){var b=a;let c=a=>(0,d.eC)(a,"powershell"),e=[`& ${c(b.command)}`,...b.args.map(a=>c(a)),...b.assignmentPath?[`(Get-Content -Raw -LiteralPath ${c(b.assignmentPath)})`]:[]].join(" ");return["# Lo escribi\xf3 Panoma para abrir un agente. Se puede borrar sin miedo.",`Set-Location -LiteralPath ${c(b.root)}`,"if (-not $?) { exit 1 }",e,""].join("\r\n")}let c=[(0,d.eC)(a.command),...a.args,...a.assignmentPath?[`"$(cat ${(0,d.eC)(a.assignmentPath)})"`]:[]].join(" ");return`#!/bin/sh
1
+ "use strict";exports.id=3896,exports.ids=[3896],exports.modules={51065:(a,b,c)=>{c.d(b,{W:()=>f});var d=c(31421),e=c(40419);async function f(a,b,c,g=[0]){let h=(0,e.LMo)(a,b);return new Promise(a=>{let b;try{b=(0,d.spawn)(h.file,h.args,{...c?{cwd:c}:{},detached:!0,stdio:"ignore"})}catch(b){a(b);return}b.on("error",b=>a(b)),b.on("exit",b=>{null!==b&&a(g.includes(b)?void 0:Error(`exited with ${b}`))}),b.unref(),setTimeout(()=>a(void 0),400)})}},71955:(a,b,c)=>{function d(a){return"win32"===a?"powershell":"posix"}c.d(b,{_z:()=>i,c9:()=>h,eC:()=>g,of:()=>d});let e=/^[A-Za-z0-9_@%+=:,./-]+$/,f=/^[A-Za-z0-9_+=:,./\\-]+$/;function g(a,b="posix"){return"powershell"===b?""!==a&&f.test(a)?a:`'${a.replace(/'/g,"''")}'`:""!==a&&e.test(a)?a:`'${a.replace(/'/g,"'\\''")}'`}function h(a,b="posix"){return a.join("powershell"===b?"; ":" && ")}function i(a,b,c="posix"){let d="string"==typeof b?[b]:b,e=g(a,c);return"powershell"===c?`cd ${e}; if ($?) { ${h(d,c)} }`:`cd ${e} && ${h(d,c)}`}},81169:(a,b,c)=>{c.d(b,{I:()=>e,n:()=>f});var d=c(71955);function e(a){if("powershell"===a.shell){var b=a;let c=a=>(0,d.eC)(a,"powershell"),e=[`& ${c(b.command)}`,...b.args.map(a=>c(a)),...b.assignmentPath?[`(Get-Content -Raw -LiteralPath ${c(b.assignmentPath)})`]:[]].join(" ");return["# Lo escribi\xf3 Panoma para abrir un agente. Se puede borrar sin miedo.",`Set-Location -LiteralPath ${c(b.root)}`,"if (-not $?) { exit 1 }",e,""].join("\r\n")}let c=[(0,d.eC)(a.command),...a.args,...a.assignmentPath?[`"$(cat ${(0,d.eC)(a.assignmentPath)})"`]:[]].join(" ");return`#!/bin/sh
2
2
  # Lo escribi\xf3 Panoma para abrir un agente. Se puede borrar sin miedo.
3
3
  cd ${(0,d.eC)(a.root)} || exit 1
4
4
  exec ${c}
@@ -13,4 +13,4 @@ cd ${(0,d.eC)(a.root)} || exit 1
13
13
  printf '\\n $ %s\\n\\n' ${(0,d.eC)(a.command)}
14
14
  ${c} -ic ${(0,d.eC)(a.command)}
15
15
  exec ${c} -i
16
- `}},85936:(a,b,c)=>{c.d(b,{a:()=>h});var d=c(26913);let e=[{command:"ptyxis",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"--",b]},{command:"gnome-terminal",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"--",b]},{command:"konsole",args:a=>["--workdir",a],withScript:(a,b)=>["--workdir",a,"-e",b]},{command:"xfce4-terminal",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"-e",b]},{command:"tilix",args:a=>["-w",a],withScript:(a,b)=>["-w",a,"-e",b]},{command:"terminator",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"-e",b]},{command:"alacritty",args:a=>["--working-directory",a],withScript:(a,b)=>["--working-directory",a,"-e",b]},{command:"kitty",args:a=>["--directory",a],withScript:(a,b)=>["--directory",a,b]},{command:"wezterm",args:a=>["start","--cwd",a],withScript:(a,b)=>["start","--cwd",a,"--",b]},{command:"foot",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,b]},{command:"x-terminal-emulator",args:()=>[],useCwd:!0,withScript:(a,b)=>["-e",b]},{command:"xterm",args:()=>[],useCwd:!0,withScript:(a,b)=>["-e",b]}],f=a=>["powershell","-NoExit","-ExecutionPolicy","Bypass","-File",a],g=[{command:"wt",args:a=>["-d",a],withScript:(a,b)=>["-d",a,...f(b)]},{command:"conhost",args:()=>["cmd.exe"],useCwd:!0,withScript:(a,b)=>f(b)}];function h(a={}){let b=a.platform??process.platform,c=a.installed??(a=>void 0!==(0,d.oq)(a));return"darwin"===b?{command:"open",args:a=>["-a","Terminal",a],withScript:(a,b)=>[b]}:("linux"===b?e:"win32"===b?g:[]).find(a=>c(a.command))}}};
16
+ `}},85936:(a,b,c)=>{c.d(b,{a:()=>h});var d=c(40419);let e=[{command:"ptyxis",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"--",b]},{command:"gnome-terminal",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"--",b]},{command:"konsole",args:a=>["--workdir",a],withScript:(a,b)=>["--workdir",a,"-e",b]},{command:"xfce4-terminal",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"-e",b]},{command:"tilix",args:a=>["-w",a],withScript:(a,b)=>["-w",a,"-e",b]},{command:"terminator",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,"-e",b]},{command:"alacritty",args:a=>["--working-directory",a],withScript:(a,b)=>["--working-directory",a,"-e",b]},{command:"kitty",args:a=>["--directory",a],withScript:(a,b)=>["--directory",a,b]},{command:"wezterm",args:a=>["start","--cwd",a],withScript:(a,b)=>["start","--cwd",a,"--",b]},{command:"foot",args:a=>[`--working-directory=${a}`],withScript:(a,b)=>[`--working-directory=${a}`,b]},{command:"x-terminal-emulator",args:()=>[],useCwd:!0,withScript:(a,b)=>["-e",b]},{command:"xterm",args:()=>[],useCwd:!0,withScript:(a,b)=>["-e",b]}],f=a=>["powershell","-NoExit","-ExecutionPolicy","Bypass","-File",a],g=[{command:"wt",args:a=>["-d",a],withScript:(a,b)=>["-d",a,...f(b)]},{command:"conhost",args:()=>["cmd.exe"],useCwd:!0,withScript:(a,b)=>f(b)}];function h(a={}){let b=a.platform??process.platform,c=a.installed??(a=>void 0!==(0,d.oq4)(a));return"darwin"===b?{command:"open",args:a=>["-a","Terminal",a],withScript:(a,b)=>[b]}:("linux"===b?e:"win32"===b?g:[]).find(a=>c(a.command))}}};