cuelo 0.5.7 → 0.5.8

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 (285) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +3 -4
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.js +1 -1
  6. package/.next/required-server-files.json +1 -1
  7. package/.next/routes-manifest.json +0 -6
  8. package/.next/server/app/_global-error/page.js +3 -3
  9. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/_global-error.html +1 -1
  11. package/.next/server/app/_global-error.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next/server/app/_not-found/page.js +2 -2
  19. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  20. package/.next/server/app/_not-found.html +1 -1
  21. package/.next/server/app/_not-found.rsc +3 -3
  22. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  23. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  24. package/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  25. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  26. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  27. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  28. package/.next/server/app/api/agent/[id]/account/route.js +1 -1
  29. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  30. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  31. package/.next/server/app/api/agent/[id]/route.js +1 -1
  32. package/.next/server/app/api/agent/new/route.js +1 -1
  33. package/.next/server/app/api/agent/running/route.js +1 -1
  34. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  35. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  36. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  37. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  38. package/.next/server/app/api/auth/providers/route.js +1 -1
  39. package/.next/server/app/api/cwd/browse/route.js +1 -1
  40. package/.next/server/app/api/cwd/validate/route.js +1 -1
  41. package/.next/server/app/api/default-cwd/route.js +1 -1
  42. package/.next/server/app/api/display-settings/route.js +1 -1
  43. package/.next/server/app/api/document-text/route.js +2 -2
  44. package/.next/server/app/api/experiments/route.js +1 -1
  45. package/.next/server/app/api/file-index/route.js +1 -1
  46. package/.next/server/app/api/files/[...path]/route.js +1 -1
  47. package/.next/server/app/api/git/diff/route.js +2 -2
  48. package/.next/server/app/api/git/status/route.js +1 -1
  49. package/.next/server/app/api/gpt6/handles/route.js +1 -1
  50. package/.next/server/app/api/gpt6/mcp/route.js +1 -1
  51. package/.next/server/app/api/gpt6/reply/route.js +1 -1
  52. package/.next/server/app/api/gpt6/token/route.js +1 -1
  53. package/.next/server/app/api/gpt6/web6-session/route.js +1 -1
  54. package/.next/server/app/api/home/route.js +1 -1
  55. package/.next/server/app/api/live/call/[callId]/route.js +1 -1
  56. package/.next/server/app/api/live/events/route.js +2 -2
  57. package/.next/server/app/api/live/offer/route.js +1 -1
  58. package/.next/server/app/api/live/voices/route.js +1 -1
  59. package/.next/server/app/api/mcp/route.js +1 -1
  60. package/.next/server/app/api/model-roles/route.js +1 -1
  61. package/.next/server/app/api/models/route.js +1 -1
  62. package/.next/server/app/api/models-config/catalog/route.js +1 -1
  63. package/.next/server/app/api/models-config/discover/route.js +1 -1
  64. package/.next/server/app/api/models-config/route.js +5 -5
  65. package/.next/server/app/api/models-config/test/route.js +1 -1
  66. package/.next/server/app/api/plugins/route.js +1 -1
  67. package/.next/server/app/api/project-trust/route.js +1 -1
  68. package/.next/server/app/api/projects/route.js +2 -2
  69. package/.next/server/app/api/runs/[runId]/route.js +1 -1
  70. package/.next/server/app/api/runs/route.js +1 -1
  71. package/.next/server/app/api/sessions/[id]/auto-name/route.js +1 -1
  72. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  73. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  74. package/.next/server/app/api/sessions/[id]/export/route.js +1 -1
  75. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  76. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  77. package/.next/server/app/api/sessions/route.js +1 -1
  78. package/.next/server/app/api/settings/route.js +1 -1
  79. package/.next/server/app/api/sidecars/[service]/[...path]/route.js +1 -1
  80. package/.next/server/app/api/skills/check/route.js +1 -1
  81. package/.next/server/app/api/skills/install/route.js +2 -2
  82. package/.next/server/app/api/skills/route.js +2 -2
  83. package/.next/server/app/api/skills/search/route.js +1 -1
  84. package/.next/server/app/api/skills/update/route.js +1 -1
  85. package/.next/server/app/api/theme/route.js +1 -1
  86. package/.next/server/app/api/update-maintenance/route.js +126 -113
  87. package/.next/server/app/api/updates/route.js +1 -1
  88. package/.next/server/app/api/web-access/recovery/route.js +1 -1
  89. package/.next/server/app/api/web-access/route.js +1 -1
  90. package/.next/server/app/api/web6/consults/route.js +1 -1
  91. package/.next/server/app/api/worktrees/route.js +1 -1
  92. package/.next/server/app/favicon.ico/route.js +1 -1
  93. package/.next/server/app/index.html +1 -1
  94. package/.next/server/app/index.rsc +5 -5
  95. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  96. package/.next/server/app/index.segments/_full.segment.rsc +5 -5
  97. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  98. package/.next/server/app/index.segments/_index.segment.rsc +3 -3
  99. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  100. package/.next/server/app/manifest.webmanifest/route.js +2 -2
  101. package/.next/server/app/page.js +6 -6
  102. package/.next/server/app/page_client-reference-manifest.js +1 -1
  103. package/.next/server/app/recover/page.js +2 -2
  104. package/.next/server/app/recover/page_client-reference-manifest.js +1 -1
  105. package/.next/server/app/recover.html +1 -1
  106. package/.next/server/app/recover.rsc +3 -3
  107. package/.next/server/app/recover.segments/_full.segment.rsc +3 -3
  108. package/.next/server/app/recover.segments/_head.segment.rsc +1 -1
  109. package/.next/server/app/recover.segments/_index.segment.rsc +3 -3
  110. package/.next/server/app/recover.segments/_tree.segment.rsc +2 -2
  111. package/.next/server/app/recover.segments/recover/__PAGE__.segment.rsc +1 -1
  112. package/.next/server/app/recover.segments/recover.segment.rsc +1 -1
  113. package/.next/server/app-paths-manifest.json +3 -4
  114. package/.next/server/chunks/2651.js +1 -1
  115. package/.next/server/chunks/3379.js +1 -1
  116. package/.next/server/chunks/5582.js +2 -2
  117. package/.next/server/chunks/6429.js +2 -2
  118. package/.next/server/chunks/6775.js +1 -1
  119. package/.next/server/chunks/877.js +1 -1
  120. package/.next/server/middleware-build-manifest.js +1 -1
  121. package/.next/server/pages/404.html +1 -1
  122. package/.next/server/pages/500.html +1 -1
  123. package/.next/server/server-reference-manifest.json +1 -1
  124. package/.next/static/2UGVMAB5iVKLWm-zGiUKj/_buildManifest.js +1 -0
  125. package/.next/static/chunks/app/_global-error/{page-56af6776c3d7d9c8.js → page-a9c51a9353807009.js} +1 -1
  126. package/.next/static/chunks/app/api/agent/[id]/account/{route-56af6776c3d7d9c8.js → route-a9c51a9353807009.js} +1 -1
  127. package/.next/static/chunks/app/api/agent/[id]/bash-output/{route-56af6776c3d7d9c8.js → route-a9c51a9353807009.js} +1 -1
  128. package/.next/static/chunks/app/api/agent/[id]/events/{route-56af6776c3d7d9c8.js → route-a9c51a9353807009.js} +1 -1
  129. package/.next/static/chunks/app/api/agent/[id]/route-a9c51a9353807009.js +1 -0
  130. package/.next/static/chunks/app/api/agent/new/route-a9c51a9353807009.js +1 -0
  131. package/.next/static/chunks/app/api/agent/running/route-a9c51a9353807009.js +1 -0
  132. package/.next/static/chunks/app/api/auth/all-providers/route-a9c51a9353807009.js +1 -0
  133. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-a9c51a9353807009.js +1 -0
  134. package/.next/static/chunks/app/api/auth/login/[provider]/route-a9c51a9353807009.js +1 -0
  135. package/.next/static/chunks/app/api/auth/logout/[provider]/route-a9c51a9353807009.js +1 -0
  136. package/.next/static/chunks/app/api/auth/providers/route-a9c51a9353807009.js +1 -0
  137. package/.next/static/chunks/app/api/cwd/browse/route-a9c51a9353807009.js +1 -0
  138. package/.next/static/chunks/app/api/cwd/validate/route-a9c51a9353807009.js +1 -0
  139. package/.next/static/chunks/app/api/default-cwd/route-a9c51a9353807009.js +1 -0
  140. package/.next/static/chunks/app/api/display-settings/route-a9c51a9353807009.js +1 -0
  141. package/.next/static/chunks/app/api/document-text/route-a9c51a9353807009.js +1 -0
  142. package/.next/static/chunks/app/api/experiments/route-a9c51a9353807009.js +1 -0
  143. package/.next/static/chunks/app/api/file-index/route-a9c51a9353807009.js +1 -0
  144. package/.next/static/chunks/app/api/files/[...path]/route-a9c51a9353807009.js +1 -0
  145. package/.next/static/chunks/app/api/git/diff/route-a9c51a9353807009.js +1 -0
  146. package/.next/static/chunks/app/api/git/status/route-a9c51a9353807009.js +1 -0
  147. package/.next/static/chunks/app/api/gpt6/handles/route-a9c51a9353807009.js +1 -0
  148. package/.next/static/chunks/app/api/gpt6/mcp/route-a9c51a9353807009.js +1 -0
  149. package/.next/static/chunks/app/api/gpt6/reply/route-a9c51a9353807009.js +1 -0
  150. package/.next/static/chunks/app/api/gpt6/token/route-a9c51a9353807009.js +1 -0
  151. package/.next/static/chunks/app/api/gpt6/web6-session/route-a9c51a9353807009.js +1 -0
  152. package/.next/static/chunks/app/api/home/route-a9c51a9353807009.js +1 -0
  153. package/.next/static/chunks/app/api/live/call/[callId]/route-a9c51a9353807009.js +1 -0
  154. package/.next/static/chunks/app/api/live/events/route-a9c51a9353807009.js +1 -0
  155. package/.next/static/chunks/app/api/live/offer/route-a9c51a9353807009.js +1 -0
  156. package/.next/static/chunks/app/api/live/voices/route-a9c51a9353807009.js +1 -0
  157. package/.next/static/chunks/app/api/mcp/route-a9c51a9353807009.js +1 -0
  158. package/.next/static/chunks/app/api/model-roles/route-a9c51a9353807009.js +1 -0
  159. package/.next/static/chunks/app/api/models/route-a9c51a9353807009.js +1 -0
  160. package/.next/static/chunks/app/api/models-config/catalog/route-a9c51a9353807009.js +1 -0
  161. package/.next/static/chunks/app/api/models-config/discover/route-a9c51a9353807009.js +1 -0
  162. package/.next/static/chunks/app/api/models-config/route-a9c51a9353807009.js +1 -0
  163. package/.next/static/chunks/app/api/models-config/test/route-a9c51a9353807009.js +1 -0
  164. package/.next/static/chunks/app/api/plugins/route-a9c51a9353807009.js +1 -0
  165. package/.next/static/chunks/app/api/project-trust/route-a9c51a9353807009.js +1 -0
  166. package/.next/static/chunks/app/api/projects/route-a9c51a9353807009.js +1 -0
  167. package/.next/static/chunks/app/api/runs/[runId]/route-a9c51a9353807009.js +1 -0
  168. package/.next/static/chunks/app/api/runs/route-a9c51a9353807009.js +1 -0
  169. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-a9c51a9353807009.js +1 -0
  170. package/.next/static/chunks/app/api/sessions/[id]/context/route-a9c51a9353807009.js +1 -0
  171. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-a9c51a9353807009.js +1 -0
  172. package/.next/static/chunks/app/api/sessions/[id]/export/route-a9c51a9353807009.js +1 -0
  173. package/.next/static/chunks/app/api/sessions/[id]/route-a9c51a9353807009.js +1 -0
  174. package/.next/static/chunks/app/api/sessions/[id]/state/route-a9c51a9353807009.js +1 -0
  175. package/.next/static/chunks/app/api/sessions/route-a9c51a9353807009.js +1 -0
  176. package/.next/static/chunks/app/api/settings/route-a9c51a9353807009.js +1 -0
  177. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-a9c51a9353807009.js +1 -0
  178. package/.next/static/chunks/app/api/skills/check/route-a9c51a9353807009.js +1 -0
  179. package/.next/static/chunks/app/api/skills/install/route-a9c51a9353807009.js +1 -0
  180. package/.next/static/chunks/app/api/skills/route-a9c51a9353807009.js +1 -0
  181. package/.next/static/chunks/app/api/skills/search/route-a9c51a9353807009.js +1 -0
  182. package/.next/static/chunks/app/api/skills/update/route-a9c51a9353807009.js +1 -0
  183. package/.next/static/chunks/app/api/theme/route-a9c51a9353807009.js +1 -0
  184. package/.next/static/chunks/app/api/update-maintenance/route-a9c51a9353807009.js +1 -0
  185. package/.next/static/chunks/app/api/updates/route-a9c51a9353807009.js +1 -0
  186. package/.next/static/chunks/app/api/web-access/recovery/route-a9c51a9353807009.js +1 -0
  187. package/.next/static/chunks/app/api/web-access/route-a9c51a9353807009.js +1 -0
  188. package/.next/static/chunks/app/api/web6/consults/route-a9c51a9353807009.js +1 -0
  189. package/.next/static/chunks/app/api/worktrees/route-a9c51a9353807009.js +1 -0
  190. package/.next/static/chunks/app/{layout-4bd9f2a2ab63537d.js → layout-5ffecd9ebe39dbd0.js} +1 -1
  191. package/.next/static/chunks/app/manifest.webmanifest/route-a9c51a9353807009.js +1 -0
  192. package/.next/static/chunks/app/{page-bd3b1ea55910637f.js → page-5584cc6078d2573c.js} +7 -7
  193. package/.next/static/chunks/next/dist/client/components/builtin/app-error-a9c51a9353807009.js +1 -0
  194. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-a9c51a9353807009.js +1 -0
  195. package/.next/static/chunks/next/dist/client/components/builtin/not-found-a9c51a9353807009.js +1 -0
  196. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-a9c51a9353807009.js +1 -0
  197. package/.next/static/css/{fd16d1946bb04a1f.css → 0282259eb1a6b95f.css} +1 -1
  198. package/.next/trace +104 -104
  199. package/.next/trace-build +1 -1
  200. package/.next/types/routes.d.ts +1 -2
  201. package/.next/types/validator.ts +0 -9
  202. package/README.md +0 -3
  203. package/Tools/CUELO_Setup/files/native-runtime-patch.js +1 -1
  204. package/Tools/OMP_Global_Config/agent/RULES.md +4 -4
  205. package/Tools/OMP_Global_Config/agent/extensions/image-question-router.ts +25 -126
  206. package/Tools/OMP_Global_Config/agent/extensions/steering-reply-gate.ts +3 -6
  207. package/Tools/OMP_Global_Config/agent/extensions/turn-end-guard.ts +4 -4
  208. package/Tools/OMP_Global_Config/agent/prompt-copies/RULES.en.md +3 -3
  209. package/Tools/OMP_Global_Config/agent/rules/harness-policy.json +1 -14
  210. package/Tools/OMP_Global_Config/agent/rules/subagent.md +7 -6
  211. package/package.json +1 -1
  212. package/.next/server/app/api/thinking-translate/route.js +0 -1
  213. package/.next/server/app/api/thinking-translate/route.js.nft.json +0 -1
  214. package/.next/server/app/api/thinking-translate/route_client-reference-manifest.js +0 -1
  215. package/.next/static/VLaxuGka8zMlnDdnf5Sw0/_buildManifest.js +0 -1
  216. package/.next/static/chunks/app/api/agent/[id]/route-56af6776c3d7d9c8.js +0 -1
  217. package/.next/static/chunks/app/api/agent/new/route-56af6776c3d7d9c8.js +0 -1
  218. package/.next/static/chunks/app/api/agent/running/route-56af6776c3d7d9c8.js +0 -1
  219. package/.next/static/chunks/app/api/auth/all-providers/route-56af6776c3d7d9c8.js +0 -1
  220. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-56af6776c3d7d9c8.js +0 -1
  221. package/.next/static/chunks/app/api/auth/login/[provider]/route-56af6776c3d7d9c8.js +0 -1
  222. package/.next/static/chunks/app/api/auth/logout/[provider]/route-56af6776c3d7d9c8.js +0 -1
  223. package/.next/static/chunks/app/api/auth/providers/route-56af6776c3d7d9c8.js +0 -1
  224. package/.next/static/chunks/app/api/cwd/browse/route-56af6776c3d7d9c8.js +0 -1
  225. package/.next/static/chunks/app/api/cwd/validate/route-56af6776c3d7d9c8.js +0 -1
  226. package/.next/static/chunks/app/api/default-cwd/route-56af6776c3d7d9c8.js +0 -1
  227. package/.next/static/chunks/app/api/display-settings/route-56af6776c3d7d9c8.js +0 -1
  228. package/.next/static/chunks/app/api/document-text/route-56af6776c3d7d9c8.js +0 -1
  229. package/.next/static/chunks/app/api/experiments/route-56af6776c3d7d9c8.js +0 -1
  230. package/.next/static/chunks/app/api/file-index/route-56af6776c3d7d9c8.js +0 -1
  231. package/.next/static/chunks/app/api/files/[...path]/route-56af6776c3d7d9c8.js +0 -1
  232. package/.next/static/chunks/app/api/git/diff/route-56af6776c3d7d9c8.js +0 -1
  233. package/.next/static/chunks/app/api/git/status/route-56af6776c3d7d9c8.js +0 -1
  234. package/.next/static/chunks/app/api/gpt6/handles/route-56af6776c3d7d9c8.js +0 -1
  235. package/.next/static/chunks/app/api/gpt6/mcp/route-56af6776c3d7d9c8.js +0 -1
  236. package/.next/static/chunks/app/api/gpt6/reply/route-56af6776c3d7d9c8.js +0 -1
  237. package/.next/static/chunks/app/api/gpt6/token/route-56af6776c3d7d9c8.js +0 -1
  238. package/.next/static/chunks/app/api/gpt6/web6-session/route-56af6776c3d7d9c8.js +0 -1
  239. package/.next/static/chunks/app/api/home/route-56af6776c3d7d9c8.js +0 -1
  240. package/.next/static/chunks/app/api/live/call/[callId]/route-56af6776c3d7d9c8.js +0 -1
  241. package/.next/static/chunks/app/api/live/events/route-56af6776c3d7d9c8.js +0 -1
  242. package/.next/static/chunks/app/api/live/offer/route-56af6776c3d7d9c8.js +0 -1
  243. package/.next/static/chunks/app/api/live/voices/route-56af6776c3d7d9c8.js +0 -1
  244. package/.next/static/chunks/app/api/mcp/route-56af6776c3d7d9c8.js +0 -1
  245. package/.next/static/chunks/app/api/model-roles/route-56af6776c3d7d9c8.js +0 -1
  246. package/.next/static/chunks/app/api/models/route-56af6776c3d7d9c8.js +0 -1
  247. package/.next/static/chunks/app/api/models-config/catalog/route-56af6776c3d7d9c8.js +0 -1
  248. package/.next/static/chunks/app/api/models-config/discover/route-56af6776c3d7d9c8.js +0 -1
  249. package/.next/static/chunks/app/api/models-config/route-56af6776c3d7d9c8.js +0 -1
  250. package/.next/static/chunks/app/api/models-config/test/route-56af6776c3d7d9c8.js +0 -1
  251. package/.next/static/chunks/app/api/plugins/route-56af6776c3d7d9c8.js +0 -1
  252. package/.next/static/chunks/app/api/project-trust/route-56af6776c3d7d9c8.js +0 -1
  253. package/.next/static/chunks/app/api/projects/route-56af6776c3d7d9c8.js +0 -1
  254. package/.next/static/chunks/app/api/runs/[runId]/route-56af6776c3d7d9c8.js +0 -1
  255. package/.next/static/chunks/app/api/runs/route-56af6776c3d7d9c8.js +0 -1
  256. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-56af6776c3d7d9c8.js +0 -1
  257. package/.next/static/chunks/app/api/sessions/[id]/context/route-56af6776c3d7d9c8.js +0 -1
  258. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-56af6776c3d7d9c8.js +0 -1
  259. package/.next/static/chunks/app/api/sessions/[id]/export/route-56af6776c3d7d9c8.js +0 -1
  260. package/.next/static/chunks/app/api/sessions/[id]/route-56af6776c3d7d9c8.js +0 -1
  261. package/.next/static/chunks/app/api/sessions/[id]/state/route-56af6776c3d7d9c8.js +0 -1
  262. package/.next/static/chunks/app/api/sessions/route-56af6776c3d7d9c8.js +0 -1
  263. package/.next/static/chunks/app/api/settings/route-56af6776c3d7d9c8.js +0 -1
  264. package/.next/static/chunks/app/api/sidecars/[service]/[...path]/route-56af6776c3d7d9c8.js +0 -1
  265. package/.next/static/chunks/app/api/skills/check/route-56af6776c3d7d9c8.js +0 -1
  266. package/.next/static/chunks/app/api/skills/install/route-56af6776c3d7d9c8.js +0 -1
  267. package/.next/static/chunks/app/api/skills/route-56af6776c3d7d9c8.js +0 -1
  268. package/.next/static/chunks/app/api/skills/search/route-56af6776c3d7d9c8.js +0 -1
  269. package/.next/static/chunks/app/api/skills/update/route-56af6776c3d7d9c8.js +0 -1
  270. package/.next/static/chunks/app/api/theme/route-56af6776c3d7d9c8.js +0 -1
  271. package/.next/static/chunks/app/api/thinking-translate/route-56af6776c3d7d9c8.js +0 -1
  272. package/.next/static/chunks/app/api/update-maintenance/route-56af6776c3d7d9c8.js +0 -1
  273. package/.next/static/chunks/app/api/updates/route-56af6776c3d7d9c8.js +0 -1
  274. package/.next/static/chunks/app/api/web-access/recovery/route-56af6776c3d7d9c8.js +0 -1
  275. package/.next/static/chunks/app/api/web-access/route-56af6776c3d7d9c8.js +0 -1
  276. package/.next/static/chunks/app/api/web6/consults/route-56af6776c3d7d9c8.js +0 -1
  277. package/.next/static/chunks/app/api/worktrees/route-56af6776c3d7d9c8.js +0 -1
  278. package/.next/static/chunks/app/manifest.webmanifest/route-56af6776c3d7d9c8.js +0 -1
  279. package/.next/static/chunks/next/dist/client/components/builtin/app-error-56af6776c3d7d9c8.js +0 -1
  280. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-56af6776c3d7d9c8.js +0 -1
  281. package/.next/static/chunks/next/dist/client/components/builtin/not-found-56af6776c3d7d9c8.js +0 -1
  282. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-56af6776c3d7d9c8.js +0 -1
  283. package/.next/types/app/api/thinking-translate/route.ts +0 -351
  284. package/Tools/OMP_Global_Config/agent/extensions/lib/visible-text.ts +0 -27
  285. /package/.next/static/{VLaxuGka8zMlnDdnf5Sw0 → 2UGVMAB5iVKLWm-zGiUKj}/_ssgManifest.js +0 -0
@@ -10,30 +10,30 @@
10
10
  <style>
11
11
  :root{
12
12
  color-scheme:dark;
13
- /* SEED 다크 역할 토큰의 리터럴. SEED CSS를 내려받을 수 없는 구간이라 값을 직접 쓴다. */
13
+ /* SEED 다크 역할 토큰과 CUELO 앱 아이콘의 리터럴. 이 구간에서는 외부 CSS를 받을 수 없어 값을 직접 쓴다. */
14
14
  --bg:#16171b;
15
- --panel:#1d2025;
16
- --line:#393d46;
17
- --line-strong:#868b94;
18
- --text:#f3f4f5;
15
+ --panel:#1b1d22;
16
+ --line:#2a2d34;
17
+ --line-strong:#393d46;
18
+ --text:#eceef2;
19
19
  --text-muted:#dcdee3;
20
20
  --text-dim:#b0b3ba;
21
21
  --text-faint:#868b94;
22
+ --lamp:#f5a524;
22
23
  --ok:#22b27f;
23
24
  --warn:#ca901c;
24
25
  --stop:#ff6e60;
25
- --info:#41a2f9;
26
26
  --font:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Pretendard Variable",Pretendard,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
27
27
  --wordmark:"Plus Jakarta Sans",Geist,ui-sans-serif,system-ui,sans-serif;
28
28
  --mono:ui-monospace,"SF Mono","JetBrains Mono","Fira Code","Cascadia Code","Noto Sans Mono","DejaVu Sans Mono",Consolas,"Liberation Mono","PingFang SC","Microsoft YaHei",monospace;
29
- --brand:linear-gradient(135deg,oklch(0.7 0.24 340),oklch(0.62 0.21 295) 50%,oklch(0.81 0.14 200));
30
- --surface-radius:8px;
31
- --control-radius:4px;
29
+ --surface-radius:10px;
30
+ --control-radius:6px;
32
31
  }
33
32
  *{box-sizing:border-box}
34
33
  [hidden]{display:none!important}
35
34
  html,body{margin:0;padding:0}
36
35
  body{
36
+ word-break:keep-all;
37
37
  background:var(--bg);
38
38
  color:var(--text);
39
39
  font-family:var(--font);
@@ -44,107 +44,111 @@ body{
44
44
  }
45
45
  .shell{
46
46
  width:100%;
47
- max-width:640px;
47
+ max-width:600px;
48
+ min-height:100vh;
48
49
  margin:0 auto;
49
- padding:40px 24px 32px;
50
+ padding:64px 24px 48px;
50
51
  display:flex;
51
52
  flex-direction:column;
52
- gap:20px;
53
+ justify-content:center;
54
+ gap:28px;
55
+ }
56
+ .hero{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:24px;align-items:center}
57
+ .mark{width:104px;height:104px;display:block;overflow:visible}
58
+ .ring{fill:none;stroke-width:10;stroke-linecap:round}
59
+ .ring-base{stroke:var(--line-strong)}
60
+ .ring-fill{
61
+ stroke:var(--text);
62
+ stroke-dasharray:100;
63
+ stroke-dashoffset:100;
64
+ opacity:0;
65
+ transition:stroke-dashoffset .7s cubic-bezier(.2,.7,.2,1),opacity .2s,stroke .3s;
66
+ }
67
+ .lamp{fill:var(--lamp);opacity:.35;transition:fill .3s,opacity .3s}
68
+ .halo{fill:var(--lamp);opacity:0;transform-box:fill-box;transform-origin:center}
69
+ /* 고리는 관측한 완료 단계만큼만 채운다(4단계 = 25씩). 없는 퍼센트를 만들지 않는다. */
70
+ .shell:has(.step:nth-child(1)[data-state="done"]) .ring-fill{opacity:1;stroke-dashoffset:75}
71
+ .shell:has(.step:nth-child(2)[data-state="done"]) .ring-fill{stroke-dashoffset:50}
72
+ .shell:has(.step:nth-child(3)[data-state="done"]) .ring-fill{stroke-dashoffset:25}
73
+ .shell:has(.step:nth-child(4)[data-state="done"]) .ring-fill{stroke-dashoffset:0}
74
+ .shell:has(#state[data-tone="info"]) .lamp,
75
+ .shell:has(#state[data-tone="warn"]) .lamp{opacity:1}
76
+ .shell:has(#state[data-tone="info"]) .halo{opacity:.2}
77
+ .shell:has(#state[data-tone="stop"]) .lamp{fill:var(--stop);opacity:1}
78
+ .shell:has(#state[data-tone="stop"]) .ring-fill{stroke:var(--text-dim)}
79
+ @media (prefers-reduced-motion:no-preference){
80
+ .shell:has(#state[data-tone="info"]) .halo{animation:cue-standby 2.4s ease-in-out infinite}
81
+ @keyframes cue-standby{
82
+ 0%,100%{opacity:.06;transform:scale(.75)}
83
+ 50%{opacity:.3;transform:scale(1.25)}
84
+ }
53
85
  }
54
- .brand{display:flex;align-items:center;gap:10px;min-width:0}
55
- .brand-mark{width:22px;height:22px;flex:none;display:block}
86
+ .brand-line{display:flex;align-items:baseline;gap:8px;margin:0 0 14px;min-width:0}
56
87
  .brand-name{
57
88
  font-family:var(--wordmark);
58
89
  font-size:15px;
59
- font-weight:700;
90
+ font-weight:800;
60
91
  letter-spacing:-0.025em;
61
92
  white-space:nowrap;
62
93
  }
63
- .brand-tag{
64
- font-size:13px;
65
- font-weight:500;
66
- color:var(--text-faint);
67
- border-left:1px solid var(--line);
68
- padding-left:10px;
69
- white-space:nowrap;
70
- }
71
- .work,.cleanup{
72
- background:var(--panel);
73
- border:1px solid var(--line);
74
- border-radius:var(--surface-radius);
75
- }
76
- .work{padding:24px}
77
- .state{margin:0 0 8px;font-size:13px;font-weight:600}
78
- .state[data-tone="neutral"]{color:var(--text-dim)}
79
- .state[data-tone="info"]{color:var(--info)}
94
+ .brand-tag{font-size:12px;color:var(--text-faint);white-space:nowrap}
95
+ .state{margin:0 0 4px;font-size:13px;font-weight:600}
96
+ .state[data-tone="neutral"]{color:var(--text-faint)}
97
+ .state[data-tone="info"]{color:var(--lamp)}
80
98
  .state[data-tone="warn"]{color:var(--warn)}
81
99
  .state[data-tone="stop"]{color:var(--stop)}
82
- h1{margin:0 0 8px;font-size:20px;font-weight:700;line-height:1.35;letter-spacing:-0.01em}
83
- .status{margin:0;font-size:14px;line-height:1.6;color:var(--text-muted)}
84
- .steps{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-direction:column}
100
+ h1{
101
+ margin:0;
102
+ font-family:var(--wordmark),var(--font);
103
+ font-size:25px;
104
+ font-weight:700;
105
+ line-height:1.3;
106
+ letter-spacing:-0.02em;
107
+ text-wrap:balance;
108
+ }
109
+ .status{margin:0;max-width:52ch;font-size:14px;line-height:1.7;color:var(--text-dim)}
110
+ .sheet{background:var(--panel);border:1px solid var(--line);border-radius:var(--surface-radius);overflow:hidden}
111
+ .steps{list-style:none;margin:0;padding:0}
85
112
  .step{
113
+ position:relative;
86
114
  display:grid;
87
- grid-template-columns:14px minmax(0,1fr) auto;
115
+ grid-template-columns:32px minmax(0,1fr) auto;
88
116
  column-gap:12px;
89
117
  align-items:center;
90
- padding:7px 0;
91
- }
92
- .tick{
93
- grid-column:1;
94
- justify-self:center;
95
- position:relative;
96
- z-index:1;
97
- width:11px;
98
- height:11px;
99
- border-radius:50%;
100
- background:var(--bg);
101
- border:1.5px solid var(--line);
102
- }
103
- .step+.step .tick::before{
104
- content:"";
105
- position:absolute;
106
- left:50%;
107
- transform:translateX(-50%);
108
- bottom:100%;
109
- width:1.5px;
110
- height:15px;
111
- background:var(--line);
112
- }
113
- .step-name{grid-column:2;min-width:0;font-size:14px;font-weight:500;color:var(--text-dim)}
114
- .step-state{grid-column:3;font-size:12px;font-weight:500;color:var(--text-faint);white-space:nowrap}
115
- .step[data-state="done"] .tick{background:var(--line-strong);border-color:var(--line-strong)}
116
- .step[data-state="done"] .step-name{color:var(--text)}
117
- .step[data-state="done"]+.step .tick::before{background:var(--line-strong)}
118
- .step[data-state="current"] .tick{
119
- background:var(--brand);
120
- border-color:transparent;
121
- box-shadow:0 0 0 3px color-mix(in srgb,var(--info) 18%,transparent);
122
- }
118
+ padding:12px 20px;
119
+ transition:background .3s;
120
+ }
121
+ .step+.step{border-top:1px solid var(--line)}
122
+ .step::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:transparent}
123
+ .cue{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text-faint);font-variant-numeric:tabular-nums}
124
+ .step-name{min-width:0;font-size:14px;font-weight:500;color:var(--text-faint)}
125
+ .step-state{font-size:12px;font-weight:500;color:var(--text-faint);white-space:nowrap}
126
+ .step[data-state="done"] .cue{color:var(--text-dim)}
127
+ .step[data-state="done"] .step-name{color:var(--text-muted)}
128
+ .step[data-state="done"] .step-state{color:var(--text-dim)}
129
+ .step[data-state="current"]{background:color-mix(in srgb,var(--lamp) 7%,transparent)}
130
+ .step[data-state="current"]::before{background:var(--lamp)}
131
+ .step[data-state="current"] .cue,
132
+ .step[data-state="current"] .step-state{color:var(--lamp)}
123
133
  .step[data-state="current"] .step-name{color:var(--text)}
124
- .step[data-state="current"] .step-state{color:var(--info)}
125
- .step[data-state="stopped"] .tick{background:var(--stop);border-color:var(--stop)}
126
- .step[data-state="stopped"] .step-name{color:var(--text)}
134
+ .step[data-state="stopped"]{background:color-mix(in srgb,var(--stop) 8%,transparent)}
135
+ .step[data-state="stopped"]::before{background:var(--stop)}
136
+ .step[data-state="stopped"] .cue,
127
137
  .step[data-state="stopped"] .step-state{color:var(--stop)}
128
- @media (prefers-reduced-motion:no-preference){
129
- .step[data-state="current"] .tick{animation:cuelo-tick 2s ease-in-out infinite}
130
- @keyframes cuelo-tick{
131
- 0%,100%{box-shadow:0 0 0 3px color-mix(in srgb,var(--info) 18%,transparent)}
132
- 50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--info) 6%,transparent)}
133
- }
134
- }
135
- .meta{display:flex;flex-wrap:wrap;gap:6px 24px;min-width:0}
138
+ .step[data-state="stopped"] .step-name{color:var(--text)}
139
+ .meta{display:flex;flex-wrap:wrap;gap:6px 24px;min-width:0;margin-top:-12px;padding:0 4px}
136
140
  .meta-item{display:flex;align-items:baseline;gap:8px;min-width:0}
137
141
  .meta-label{font-size:12px;color:var(--text-faint)}
138
- .meta-value{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}
142
+ .meta-value{font-size:13px;color:var(--text-dim);font-variant-numeric:tabular-nums}
139
143
  .meta-value[data-tone="warn"]{color:var(--warn)}
140
144
  .meta-value[data-tone="stop"]{color:var(--stop)}
141
- .cleanup{padding:20px 24px 18px}
145
+ .cleanup{padding:18px 20px 16px}
142
146
  .cleanup-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
143
147
  .cleanup h2{margin:0;font-size:14px;font-weight:600}
144
148
  .chip{
145
- border:1px solid var(--line);
146
- border-radius:var(--control-radius);
147
- padding:2px 8px;
149
+ border:1px solid var(--line-strong);
150
+ border-radius:999px;
151
+ padding:1px 10px;
148
152
  font-size:12px;
149
153
  font-weight:600;
150
154
  color:var(--text-dim);
@@ -157,58 +161,67 @@ h1{margin:0 0 8px;font-size:20px;font-weight:700;line-height:1.35;letter-spacing
157
161
  .cleanup-rows dt{margin:0;font-size:12px;color:var(--text-faint)}
158
162
  .cleanup-rows dd{margin:0;min-width:0;font-size:13px;color:var(--text-muted)}
159
163
  .mono{font-family:var(--mono);font-size:12px}
160
- .actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:20px 0 0}
164
+ .actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:-8px 0 0}
161
165
  .actions button{
162
166
  font:inherit;
163
167
  font-size:14px;
164
168
  font-weight:600;
165
- color:var(--text);
166
- background:var(--bg);
167
- border:1px solid var(--line-strong);
169
+ color:var(--bg);
170
+ background:var(--text);
171
+ border:0;
168
172
  border-radius:var(--control-radius);
169
- padding:9px 16px;
173
+ padding:10px 18px;
170
174
  cursor:pointer;
171
175
  }
172
- .actions button:hover{border-color:var(--text-dim)}
173
- .actions button:focus-visible{outline:2px solid var(--info);outline-offset:2px}
176
+ .actions button:hover{background:#ffffff}
177
+ .actions button:focus-visible{outline:2px solid var(--lamp);outline-offset:3px}
174
178
  .actions .hint{margin:0;font-size:13px;line-height:1.6;color:var(--text-dim)}
175
- .foot{margin:0;display:flex;gap:6px;font-size:11px;color:var(--text-faint)}
179
+ .foot{margin:0;padding:0 4px;display:flex;gap:6px;font-size:11px;color:var(--text-faint)}
176
180
  .foot .mono{font-size:11px}
177
- @media (max-width:400px){
178
- .shell{padding:28px 20px 24px;gap:16px}
179
- .work{padding:20px}
180
- .cleanup{padding:16px 20px 14px}
181
- h1{font-size:18px}
181
+ @media (max-width:480px){
182
+ .shell{padding:36px 20px 24px;gap:22px}
183
+ .hero{column-gap:16px}
184
+ .mark{width:68px;height:68px}
185
+ .brand-line{margin-bottom:8px}
186
+ h1{font-size:20px}
187
+ .step{padding:11px 16px;grid-template-columns:28px minmax(0,1fr) auto}
188
+ .cleanup{padding:16px}
182
189
  }
183
190
  </style>
184
191
  </head>
185
192
  <body>
186
193
  <main class="shell">
187
- <header class="brand">
188
- <svg class="brand-mark" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><defs><linearGradient id="cuelo-mark" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="oklch(0.7 0.24 340)"></stop><stop offset=".5" stop-color="oklch(0.62 0.21 295)"></stop><stop offset="1" stop-color="oklch(0.81 0.14 200)"></stop></linearGradient></defs><path fill="url(#cuelo-mark)" d="M4 6 C7.5 1.8 15.5 2 19 6.2 L22.5 12 L19.3 16.2 C16.4 21.3 8.5 22.2 4.2 17.8 L7 15.2 C10 19.7 15.3 18.7 17 14.2 L19 12 L16.2 9 C14.1 6.4 9.8 6.1 6.8 9.1 Z"></path></svg>
189
- <span class="brand-name">CUELO</span>
190
- <span class="brand-tag">업데이트</span>
191
- </header>
192
- <section class="work">
194
+ <header class="hero">
195
+ <svg class="mark" viewBox="0 0 100 100" aria-hidden="true" focusable="false">
196
+ <path class="ring ring-base" pathLength="100" d="M77.9 30.5 A34 34 0 0 0 16 50 A26 26 0 0 0 68 50"></path>
197
+ <path class="ring ring-fill" pathLength="100" d="M77.9 30.5 A34 34 0 0 0 16 50 A26 26 0 0 0 68 50"></path>
198
+ <circle class="halo" cx="42" cy="50" r="16"></circle>
199
+ <circle class="lamp" cx="42" cy="50" r="8.5"></circle>
200
+ </svg>
201
+ <div>
202
+ <p class="brand-line"><span class="brand-name">CUELO</span><span class="brand-tag">업데이트</span></p>
193
203
  <p class="state" id="state" data-tone="neutral">상태 확인 중</p>
194
204
  <h1 id="task-title">업데이트 상태를 확인하고 있습니다</h1>
205
+ </div>
206
+ </header>
195
207
  <p class="status" id="status" role="status" aria-live="polite">이 탭은 업데이트가 끝나면 같은 작업 화면으로 자동 복귀합니다.</p>
196
- <ol class="steps" id="steps">
197
- <li class="step" data-state="pending"><span class="tick" aria-hidden="true"></span><span class="step-name">세션 정지</span><span class="step-state">대기</span></li>
198
- <li class="step" data-state="pending"><span class="tick" aria-hidden="true"></span><span class="step-name">교체 준비</span><span class="step-state">대기</span></li>
199
- <li class="step" data-state="pending"><span class="tick" aria-hidden="true"></span><span class="step-name">패키지 교체</span><span class="step-state">대기</span></li>
200
- <li class="step" data-state="pending"><span class="tick" aria-hidden="true"></span><span class="step-name">새 버전 확인</span><span class="step-state">대기</span></li>
201
- </ol>
202
208
  <div class="actions" id="failure-actions" hidden>
203
209
  <button type="button" id="return-button">작업 화면으로 돌아가기</button>
204
210
  <p class="hint" id="failure-hint" hidden></p>
205
211
  </div>
212
+ <section class="sheet" aria-label="업데이트 단계">
213
+ <ol class="steps" id="steps">
214
+ <li class="step" data-state="pending"><span class="cue" aria-hidden="true">Q1</span><span class="step-name">세션 정지</span><span class="step-state">대기</span></li>
215
+ <li class="step" data-state="pending"><span class="cue" aria-hidden="true">Q2</span><span class="step-name">교체 준비</span><span class="step-state">대기</span></li>
216
+ <li class="step" data-state="pending"><span class="cue" aria-hidden="true">Q3</span><span class="step-name">패키지 교체</span><span class="step-state">대기</span></li>
217
+ <li class="step" data-state="pending"><span class="cue" aria-hidden="true">Q4</span><span class="step-name">새 버전 확인</span><span class="step-state">대기</span></li>
218
+ </ol>
206
219
  </section>
207
220
  <div class="meta">
208
221
  <span class="meta-item"><span class="meta-label">화면 경과</span><span class="meta-value" id="elapsed">0초</span></span>
209
222
  <span class="meta-item"><span class="meta-label">연결</span><span class="meta-value" id="link" data-tone="neutral">확인 중</span></span>
210
223
  </div>
211
- <section class="cleanup" id="cleanup" aria-labelledby="cleanup-title" hidden>
224
+ <section class="sheet cleanup" id="cleanup" aria-labelledby="cleanup-title" hidden>
212
225
  <div class="cleanup-head"><h2 id="cleanup-title">임시 산출물 정리</h2><span class="chip" id="cleanup-phase" data-tone="neutral">대기</span></div>
213
226
  <dl class="cleanup-rows">
214
227
  <div><dt>현재 대상</dt><dd class="mono" id="cleanup-target">대상 선택 중</dd></div>
@@ -550,7 +563,7 @@ setInterval(tick,1000);
550
563
  setTimeout(check,1000);
551
564
  </script>
552
565
  </body>
553
- </html>`}},58505:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config")},59895:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/slash-commands/builtin-registry")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63411:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-settings")},66544:(a,b,c)=>{c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{a.exports=require("node:fs")},73079:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-roles")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78310:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/registry/agent-registry")},79280:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(90642),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/update-maintenance/route",pathname:"/api/update-maintenance",filename:"route",bundlePath:"app/api/update-maintenance/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\update-maintenance\\route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/update-maintenance/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},79646:a=>{a.exports=require("child_process")},82512:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/plan-mode/plan-files")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88692:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-resolver")},90642:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>n,POST:()=>o,dynamic:()=>p});var e=c(23211),f=c(4157),g=c(96352),h=c(22557),i=c(57809),j=c(66544),k=a([g,h]);[g,h]=k.then?(await k)():k;let p="force-dynamic",q=`${process.pid}-${Math.floor((Date.now()-1e3*process.uptime())/1e3)}`;function l(a={}){return{"Cache-Control":"no-store, no-cache, must-revalidate",Pragma:"no-cache",...a}}function m(a,b){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:b,headers:l()})}async function n(a){if(!(0,j.EN)(a))return m("Untrusted API request",403);let b=new URL(a.url),c=b.searchParams.get("requestId")??"",d=(b.searchParams.get("stageHash")??"").toLowerCase();if("wait"!==b.searchParams.get("mode"))return e.NextResponse.json((0,f.Kg)(c,d),{headers:l({Connection:"close"})});let g=b.searchParams.get("clientId")??"";try{let a=(0,f.hl)({requestId:c,stageHash:d,clientId:g});return new Response((0,i.K)({requestId:c,stageHash:d,clientId:g,sessionId:a.sessionId,resumeUrl:a.resumeUrl}),{status:200,headers:l({"Content-Type":"text/html; charset=utf-8",Connection:"close","X-CUELO-Maintenance":"parked"})})}catch(a){return m(a,409)}}async function o(a){let b;if(!(0,j.EN)(a))return m("Untrusted API request",403);if(!(0,j.E2)(a))return m("Content-Type must be application/json",415);try{b=await a.json()}catch(a){return m(a,400)}try{let a=String(b.action??"");if("heartbeat"===a){let a=(0,f.EO)({clientId:String(b.clientId??""),sessionId:null===b.sessionId?null:String(b.sessionId??""),resumeUrl:String(b.resumeUrl??""),preservationError:null===b.preservationError||void 0===b.preservationError?null:String(b.preservationError)}),c=String(b.requestId??""),d=String(b.stageHash??"").toLowerCase(),g=c&&d?(0,f.Kg)(c,d):null;return e.NextResponse.json({schemaVersion:2,serverBootId:q,...a,...g?{update:{requestId:c,stageHash:d,deploymentCompleted:!0===g.deploymentCompleted,writeSafe:!0===g.writeSafe,terminalStatus:g.terminalStatus??null,cleanup:g.cleanup??null}}:{}},{headers:l({Connection:"close"})})}if("resume-confirm"===a){let a=String(b.requestId??""),c=String(b.stageHash??"").toLowerCase(),d=String(b.clientId??""),h=null===b.sessionId?null:String(b.sessionId??"");(0,f.Rf)({requestId:a,stageHash:c,clientId:d,sessionId:h});let i={wake:!1,reason:"error"};try{i=await (0,g.P)({requestId:a,stageHash:c,clientId:d,sessionId:h})}catch(b){console.warn(`[cuelo] 업데이트 자동 재개에 실패했습니다 (${a}):`,b)}return e.NextResponse.json({schemaVersion:2,resumed:!0,wake:i},{headers:l({Connection:"close"})})}if("failure-notify"===a){let a=String(b.requestId??""),c=String(b.stageHash??"").toLowerCase(),d=String(b.clientId??""),f=null===b.sessionId?null:String(b.sessionId??""),h={notice:!1,reason:"error"};try{h=await (0,g.D)({requestId:a,stageHash:c,clientId:d,sessionId:f})}catch(b){console.warn(`[cuelo] 업데이트 실패 통지에 실패했습니다 (${a}):`,b)}return e.NextResponse.json({schemaVersion:2,notice:h},{headers:l({Connection:"close"})})}return m("unknown maintenance action",400)}catch(a){return m(a,409)}}(0,h.kQ)(),d()}catch(a){d(a)}})},92582:a=>{a.exports=import("@oh-my-pi/pi-coding-agent")},94285:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/slash-commands/acp-builtins")},96282:a=>{a.exports=import("@oh-my-pi/pi-tui/overlays/model-selector")},96352:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{D:()=>k,P:()=>i});var e=c(4157),f=c(56429),g=c(40402),h=a([f,g]);async function i(a){let b=a.sessionId?.trim().toLowerCase()||null,c=(0,e.s$)(a.requestId),d=c?(0,f.A4)(c):void 0,g=(0,e.Ot)({requestId:a.requestId,stageHash:a.stageHash,clientId:a.clientId,sessionId:b,sessionBusy:d?.isAlive()===!0&&d.isRunning()}),h=(globalThis.__ompUpdateWakeDispatches||(globalThis.__ompUpdateWakeDispatches=new Map),globalThis.__ompUpdateWakeDispatches),i=`${a.requestId}:${b}`;if(!g.wake)return"already-claimed"===g.reason&&await h.get(i)?.catch(()=>{}),g;let k=(async()=>{let b="resume";try{var c,h;let a=d?.isAlive()?d:(await (0,f.OF)(g.sessionId,await j(g.sessionId),void 0)).session;b="prompt",await a.sendInternalPrompt((c=g.requestId,h=g.stageHash,`[하네스 통지] 이 세션이 시작한 CUELO 업데이트가 끝나 런타임이 새 버전으로 교체됐고, 이 세션이 그 위에서 재개됐습니다.
566
+ </html>`}},58505:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config")},59895:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/slash-commands/builtin-registry")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},63411:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-settings")},66544:(a,b,c)=>{c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{a.exports=require("node:fs")},73079:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-roles")},76760:a=>{a.exports=require("node:path")},77030:a=>{a.exports=require("node:net")},77598:a=>{a.exports=require("node:crypto")},78310:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/registry/agent-registry")},79646:a=>{a.exports=require("child_process")},82512:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/plan-mode/plan-files")},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88692:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/config/model-resolver")},90642:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{GET:()=>n,POST:()=>o,dynamic:()=>p});var e=c(23211),f=c(4157),g=c(96352),h=c(22557),i=c(57809),j=c(66544),k=a([g,h]);[g,h]=k.then?(await k)():k;let p="force-dynamic",q=`${process.pid}-${Math.floor((Date.now()-1e3*process.uptime())/1e3)}`;function l(a={}){return{"Cache-Control":"no-store, no-cache, must-revalidate",Pragma:"no-cache",...a}}function m(a,b){return e.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:b,headers:l()})}async function n(a){if(!(0,j.EN)(a))return m("Untrusted API request",403);let b=new URL(a.url),c=b.searchParams.get("requestId")??"",d=(b.searchParams.get("stageHash")??"").toLowerCase();if("wait"!==b.searchParams.get("mode"))return e.NextResponse.json((0,f.Kg)(c,d),{headers:l({Connection:"close"})});let g=b.searchParams.get("clientId")??"";try{let a=(0,f.hl)({requestId:c,stageHash:d,clientId:g});return new Response((0,i.K)({requestId:c,stageHash:d,clientId:g,sessionId:a.sessionId,resumeUrl:a.resumeUrl}),{status:200,headers:l({"Content-Type":"text/html; charset=utf-8",Connection:"close","X-CUELO-Maintenance":"parked"})})}catch(a){return m(a,409)}}async function o(a){let b;if(!(0,j.EN)(a))return m("Untrusted API request",403);if(!(0,j.E2)(a))return m("Content-Type must be application/json",415);try{b=await a.json()}catch(a){return m(a,400)}try{let a=String(b.action??"");if("heartbeat"===a){let a=(0,f.EO)({clientId:String(b.clientId??""),sessionId:null===b.sessionId?null:String(b.sessionId??""),resumeUrl:String(b.resumeUrl??""),preservationError:null===b.preservationError||void 0===b.preservationError?null:String(b.preservationError)}),c=String(b.requestId??""),d=String(b.stageHash??"").toLowerCase(),g=c&&d?(0,f.Kg)(c,d):null;return e.NextResponse.json({schemaVersion:2,serverBootId:q,...a,...g?{update:{requestId:c,stageHash:d,deploymentCompleted:!0===g.deploymentCompleted,writeSafe:!0===g.writeSafe,terminalStatus:g.terminalStatus??null,cleanup:g.cleanup??null}}:{}},{headers:l({Connection:"close"})})}if("resume-confirm"===a){let a=String(b.requestId??""),c=String(b.stageHash??"").toLowerCase(),d=String(b.clientId??""),h=null===b.sessionId?null:String(b.sessionId??"");(0,f.Rf)({requestId:a,stageHash:c,clientId:d,sessionId:h});let i={wake:!1,reason:"error"};try{i=await (0,g.P)({requestId:a,stageHash:c,clientId:d,sessionId:h})}catch(b){console.warn(`[cuelo] 업데이트 자동 재개에 실패했습니다 (${a}):`,b)}return e.NextResponse.json({schemaVersion:2,resumed:!0,wake:i},{headers:l({Connection:"close"})})}if("failure-notify"===a){let a=String(b.requestId??""),c=String(b.stageHash??"").toLowerCase(),d=String(b.clientId??""),f=null===b.sessionId?null:String(b.sessionId??""),h={notice:!1,reason:"error"};try{h=await (0,g.D)({requestId:a,stageHash:c,clientId:d,sessionId:f})}catch(b){console.warn(`[cuelo] 업데이트 실패 통지에 실패했습니다 (${a}):`,b)}return e.NextResponse.json({schemaVersion:2,notice:h},{headers:l({Connection:"close"})})}return m("unknown maintenance action",400)}catch(a){return m(a,409)}}(0,h.kQ)(),d()}catch(a){d(a)}})},92582:a=>{a.exports=import("@oh-my-pi/pi-coding-agent")},93509:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{handler:()=>y,patchFetch:()=>x,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(90642),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/update-maintenance/route",pathname:"/api/update-maintenance",filename:"route",bundlePath:"app/api/update-maintenance/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\update-maintenance\\route.ts",nextConfigOutput:"",userland:v,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function x(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function y(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),z.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/update-maintenance/route";"/index"===d&&(d="/");let e=await z.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:A,prerenderManifest:B,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(B.dynamicRoutes[I]||B.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!A){let a=!!B.routes[F],b=B.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||z.isDev||A||(L=F,L="/index"===L?"/":L);let M=!0===z.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await z.getIncrementalCache(a,x,B,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:B.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>z.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>z.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await z.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await z.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:B,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),A&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await z.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}d()}catch(a){d(a)}})},94285:a=>{a.exports=import("@oh-my-pi/pi-coding-agent/slash-commands/acp-builtins")},96282:a=>{a.exports=import("@oh-my-pi/pi-tui/overlays/model-selector")},96352:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{D:()=>k,P:()=>i});var e=c(4157),f=c(56429),g=c(40402),h=a([f,g]);async function i(a){let b=a.sessionId?.trim().toLowerCase()||null,c=(0,e.s$)(a.requestId),d=c?(0,f.A4)(c):void 0,g=(0,e.Ot)({requestId:a.requestId,stageHash:a.stageHash,clientId:a.clientId,sessionId:b,sessionBusy:d?.isAlive()===!0&&d.isRunning()}),h=(globalThis.__ompUpdateWakeDispatches||(globalThis.__ompUpdateWakeDispatches=new Map),globalThis.__ompUpdateWakeDispatches),i=`${a.requestId}:${b}`;if(!g.wake)return"already-claimed"===g.reason&&await h.get(i)?.catch(()=>{}),g;let k=(async()=>{let b="resume";try{var c,h;let a=d?.isAlive()?d:(await (0,f.OF)(g.sessionId,await j(g.sessionId),void 0)).session;b="prompt",await a.sendInternalPrompt((c=g.requestId,h=g.stageHash,`[하네스 통지] 이 세션이 시작한 CUELO 업데이트가 끝나 런타임이 새 버전으로 교체됐고, 이 세션이 그 위에서 재개됐습니다.
554
567
  requestId=${c} stageHash=${h}
555
568
  사용자 발화가 아니라 재개 통지입니다. 업데이트 직전에 하던 작업을 이어가세요.
556
- 산출물 정리는 백그라운드로 따로 진행되며 그 상태는 화면 상단 줄에 표시됩니다. 정리 결과를 기다리지 마세요.`))}catch(c){throw(0,e.lG)({requestId:g.requestId,stageHash:g.stageHash,clientId:a.clientId,sessionId:g.sessionId,stage:b,error:c}),c}})();h.set(i,k);try{await k}finally{h.get(i)===k&&h.delete(i)}return g}async function j(a){let b=await (0,g.os)(a);if(!b)throw Error(`session record not found: ${a}`);return b}async function k(a){let b=a.sessionId?.trim().toLowerCase()||null,c=(0,e.s$)(a.requestId),d=c?(0,f.A4)(c):void 0,g=(0,e.G4)({requestId:a.requestId,stageHash:a.stageHash,clientId:a.clientId,sessionId:b,sessionBusy:d?.isAlive()===!0&&d.isRunning()});if(!g.notice)return g;let h="resume";try{var i,k,l;let a=d?.isAlive()?d:(await (0,f.OF)(g.sessionId,await j(g.sessionId),void 0)).session;h="prompt",await a.sendInternalPrompt((i=g.requestId,k=g.stageHash,l=g.terminalError,["[하네스 통지] 이 세션이 시작한 CUELO 업데이트가 실패했습니다.",`requestId=${i} stageHash=${k}`,l?`원인: ${l}`:"원인: 배포 결과 receipt에 오류 문장이 없습니다. 배포 evidence를 확인하세요.","실패한 업데이트는 live runtime을 변경하지 않았으므로, 새 버전으로 교체되지 않았다면 기존 서비스가 그대로 살아 있습니다.\n사용자 발화가 아니라 하네스 통지입니다. 사용자에게 실패를 보고하고, 원인에 맞춰 다음 행동을 정하세요."].join("\n")))}catch(b){throw(0,e.Hx)({requestId:g.requestId,stageHash:g.stageHash,clientId:a.clientId,sessionId:g.sessionId,stage:h,error:b}),b}return g}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,3229,6429],()=>b(b.s=79280));module.exports=c})();
569
+ 산출물 정리는 백그라운드로 따로 진행되며 그 상태는 화면 상단 줄에 표시됩니다. 정리 결과를 기다리지 마세요.`))}catch(c){throw(0,e.lG)({requestId:g.requestId,stageHash:g.stageHash,clientId:a.clientId,sessionId:g.sessionId,stage:b,error:c}),c}})();h.set(i,k);try{await k}finally{h.get(i)===k&&h.delete(i)}return g}async function j(a){let b=await (0,g.os)(a);if(!b)throw Error(`session record not found: ${a}`);return b}async function k(a){let b=a.sessionId?.trim().toLowerCase()||null,c=(0,e.s$)(a.requestId),d=c?(0,f.A4)(c):void 0,g=(0,e.G4)({requestId:a.requestId,stageHash:a.stageHash,clientId:a.clientId,sessionId:b,sessionBusy:d?.isAlive()===!0&&d.isRunning()});if(!g.notice)return g;let h="resume";try{var i,k,l;let a=d?.isAlive()?d:(await (0,f.OF)(g.sessionId,await j(g.sessionId),void 0)).session;h="prompt",await a.sendInternalPrompt((i=g.requestId,k=g.stageHash,l=g.terminalError,["[하네스 통지] 이 세션이 시작한 CUELO 업데이트가 실패했습니다.",`requestId=${i} stageHash=${k}`,l?`원인: ${l}`:"원인: 배포 결과 receipt에 오류 문장이 없습니다. 배포 evidence를 확인하세요.","실패한 업데이트는 live runtime을 변경하지 않았으므로, 새 버전으로 교체되지 않았다면 기존 서비스가 그대로 살아 있습니다.\n사용자 발화가 아니라 하네스 통지입니다. 사용자에게 실패를 보고하고, 원인에 맞춰 다음 행동을 정하세요."].join("\n")))}catch(b){throw(0,e.Hx)({requestId:g.requestId,stageHash:g.stageHash,clientId:a.clientId,sessionId:g.sessionId,stage:h,error:b}),b}return g}[f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582,3229,6429],()=>b(b.s=93509));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=5572,a.ids=[5572],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},5340:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{GET:()=>D,dynamic:()=>C});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(66544);let x="https://github.com/gim47656-ship-it/CUELO/releases";function y(a){let b=String(a??"").trim().replace(/^[^0-9]*/,""),c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?/.exec(b);return c?{major:Number(c[1]),minor:Number(c[2]),patch:Number(c[3]),prerelease:c[4]?c[4].split("."):null}:null}function z(a){let b=y(a);if(!b)return null;let c=`${b.major}.${b.minor}.${b.patch}`;return b.prerelease?`${c}-${b.prerelease.join(".")}`:c}async function A(a){let b=new AbortController,c=setTimeout(()=>b.abort(),12e3);try{let c=await a("https://api.github.com/repos/gim47656-ship-it/CUELO/releases/latest",{headers:{Accept:"application/vnd.github+json","User-Agent":"cuelo-update-check"},signal:b.signal,next:{revalidate:3600}});if(404===c.status)return null;if(!c.ok)throw Error(`Update source returned HTTP ${c.status}`);return await c.json()}finally{clearTimeout(c)}}async function B(a={}){var b;let c=a.fetcher??fetch,d=z(a.currentAppVersion??"0.5.7")??"unknown",e=await A(c),f=e?function(a){let b=z(a.tag_name);if(!b)throw Error("The CUELO release did not contain a valid version tag");let c="string"==typeof a.tag_name&&a.tag_name.trim()?a.tag_name.trim():`v${b}`,d="string"==typeof a.html_url&&a.html_url.startsWith(`${x}/`)?a.html_url:`${x}/tag/${encodeURIComponent(c)}`,e="string"==typeof a.body?a.body.slice(0,4e4):"";return{version:b,tagName:c,name:"string"==typeof a.name&&a.name.trim()?a.name.trim():c,body:e,htmlUrl:d,publishedAt:"string"==typeof a.published_at?a.published_at:null}}(e):null;return{currentAppVersion:d,latestRelease:f,updateAvailable:(b=f?.version??null,!!(b&&d&&function(a,b){let c=y(a),d=y(b);if(!c||!d)return 0;for(let a of["major","minor","patch"])if(c[a]!==d[a])return c[a]>d[a]?1:-1;if(!c.prerelease&&!d.prerelease)return 0;if(!c.prerelease)return 1;if(!d.prerelease)return -1;let e=Math.max(c.prerelease.length,d.prerelease.length);for(let a=0;a<e;a+=1){let b=c.prerelease[a],e=d.prerelease[a];if(void 0===b)return -1;if(void 0===e)return 1;if(b===e)continue;let f=/^\d+$/.test(b),g=/^\d+$/.test(e);if(f&&g){let a=Number(b),c=Number(e);if(a!==c)return a>c?1:-1;continue}if(f!==g)return f?-1:1;return b>e?1:-1}return 0}(b,d)>0)),checkedAt:new Date().toISOString()}}let C="force-dynamic";async function D(a){if(!(0,w.EN)(a))return v.NextResponse.json({error:"Untrusted API request"},{status:403});try{let a=await B();return v.NextResponse.json(a,{headers:{"Cache-Control":"private, no-store"}})}catch(b){let a=b instanceof Error?b.message:String(b);return v.NextResponse.json({error:a||"Unable to check for updates"},{status:502})}}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/updates/route",pathname:"/api/updates",filename:"route",bundlePath:"app/api/updates/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\updates\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),E.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/updates/route";"/index"===d&&(d="/");let e=await E.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||E.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===E.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await E.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>E.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>E.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await E.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},77030:a=>{"use strict";a.exports=require("node:net")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=5340));module.exports=c})();
1
+ (()=>{var a={};a.id=5572,a.ids=[5572],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},38522:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>J,patchFetch:()=>I,routeModule:()=>E,serverHooks:()=>H,workAsyncStorage:()=>F,workUnitAsyncStorage:()=>G});var d={};c.r(d),c.d(d,{GET:()=>D,dynamic:()=>C});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(66544);let x="https://github.com/gim47656-ship-it/CUELO/releases";function y(a){let b=String(a??"").trim().replace(/^[^0-9]*/,""),c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?/.exec(b);return c?{major:Number(c[1]),minor:Number(c[2]),patch:Number(c[3]),prerelease:c[4]?c[4].split("."):null}:null}function z(a){let b=y(a);if(!b)return null;let c=`${b.major}.${b.minor}.${b.patch}`;return b.prerelease?`${c}-${b.prerelease.join(".")}`:c}async function A(a){let b=new AbortController,c=setTimeout(()=>b.abort(),12e3);try{let c=await a("https://api.github.com/repos/gim47656-ship-it/CUELO/releases/latest",{headers:{Accept:"application/vnd.github+json","User-Agent":"cuelo-update-check"},signal:b.signal,next:{revalidate:3600}});if(404===c.status)return null;if(!c.ok)throw Error(`Update source returned HTTP ${c.status}`);return await c.json()}finally{clearTimeout(c)}}async function B(a={}){var b;let c=a.fetcher??fetch,d=z(a.currentAppVersion??"0.5.8")??"unknown",e=await A(c),f=e?function(a){let b=z(a.tag_name);if(!b)throw Error("The CUELO release did not contain a valid version tag");let c="string"==typeof a.tag_name&&a.tag_name.trim()?a.tag_name.trim():`v${b}`,d="string"==typeof a.html_url&&a.html_url.startsWith(`${x}/`)?a.html_url:`${x}/tag/${encodeURIComponent(c)}`,e="string"==typeof a.body?a.body.slice(0,4e4):"";return{version:b,tagName:c,name:"string"==typeof a.name&&a.name.trim()?a.name.trim():c,body:e,htmlUrl:d,publishedAt:"string"==typeof a.published_at?a.published_at:null}}(e):null;return{currentAppVersion:d,latestRelease:f,updateAvailable:(b=f?.version??null,!!(b&&d&&function(a,b){let c=y(a),d=y(b);if(!c||!d)return 0;for(let a of["major","minor","patch"])if(c[a]!==d[a])return c[a]>d[a]?1:-1;if(!c.prerelease&&!d.prerelease)return 0;if(!c.prerelease)return 1;if(!d.prerelease)return -1;let e=Math.max(c.prerelease.length,d.prerelease.length);for(let a=0;a<e;a+=1){let b=c.prerelease[a],e=d.prerelease[a];if(void 0===b)return -1;if(void 0===e)return 1;if(b===e)continue;let f=/^\d+$/.test(b),g=/^\d+$/.test(e);if(f&&g){let a=Number(b),c=Number(e);if(a!==c)return a>c?1:-1;continue}if(f!==g)return f?-1:1;return b>e?1:-1}return 0}(b,d)>0)),checkedAt:new Date().toISOString()}}let C="force-dynamic";async function D(a){if(!(0,w.EN)(a))return v.NextResponse.json({error:"Untrusted API request"},{status:403});try{let a=await B();return v.NextResponse.json(a,{headers:{"Cache-Control":"private, no-store"}})}catch(b){let a=b instanceof Error?b.message:String(b);return v.NextResponse.json({error:a||"Unable to check for updates"},{status:502})}}let E=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/updates/route",pathname:"/api/updates",filename:"route",bundlePath:"app/api/updates/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\updates\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:F,workUnitAsyncStorage:G,serverHooks:H}=E;function I(){return(0,g.patchFetch)({workAsyncStorage:F,workUnitAsyncStorage:G})}async function J(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),E.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/updates/route";"/index"===d&&(d="/");let e=await E.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||E.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===E.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await E.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>E.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>E.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&D&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await E.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await E.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:D,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await E.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},77030:a=>{"use strict";a.exports=require("node:net")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=38522));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=2515,a.ids=[2515],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96410:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{POST:()=>A,dynamic:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(13229),x=c(66544);let y="force-dynamic",z="─".repeat(52);async function A(a){let b;if(!(0,x.E2)(a))return v.NextResponse.json({error:"Expected a JSON body"},{status:415});try{b=await a.json()}catch{return v.NextResponse.json({error:"Expected a JSON body"},{status:400})}let c=(0,w.getWebAuthStatus)();if(c.managedByEnvironment)return v.NextResponse.json({error:"Password access comes from the CUELO_PASSWORD environment variable, which CUELO cannot reset. Change the variable on the server and restart it."},{status:409});if(c.unreadable)return v.NextResponse.json({error:`The credential file at ${c.file} could not be read. Run \`cuelo --reset-password\` on the server to replace it.`},{status:409});if(!c.stored)return v.NextResponse.json({error:"No password is configured, so there is nothing to recover."},{status:409});if("request"===b.action){var d,e;let a,b=(0,w.issueRecoveryCode)();return b.ok?(d=b.code,e=b.expiresAt,a=Math.round(w.RECOVERY_CODE_TTL_MS/6e4),process.stdout.write(["",z,"CUELO password recovery\n",` Recovery code: ${d}`,` Valid until: ${new Date(e).toLocaleTimeString()} (${a} minutes)`,"\nEnter it on the /recover page to set a new password.\nIf you did not ask for this, ignore it — the code grants nothing on its own.",z,""].join("\n")),v.NextResponse.json({ok:!0,expiresAt:b.expiresAt},{headers:{"Cache-Control":"no-store"}})):v.NextResponse.json({error:"A recovery code was just issued. Check the server console, or wait a moment and try again."},{status:429,headers:{"Retry-After":String(Math.ceil(b.retryAfterMs/1e3))}})}if("complete"===b.action){let a=(0,w.consumeRecoveryCode)(b.code,b.password);if(a.ok)return v.NextResponse.json({ok:!0},{headers:{"Cache-Control":"no-store"}});switch(a.reason){case"invalid-password":return v.NextResponse.json({error:a.message},{status:400});case"invalid-code":return v.NextResponse.json({error:a.remainingAttempts>0?`That recovery code is not valid. ${a.remainingAttempts} attempt(s) left before it is discarded.`:"That recovery code is not valid, and it has now been discarded. Request a new one."},{status:403});case"expired":return v.NextResponse.json({error:"That recovery code has expired. Request a new one."},{status:403});case"too-many-attempts":return v.NextResponse.json({error:"Too many attempts. Request a new recovery code."},{status:429});case"no-code":return v.NextResponse.json({error:"No recovery code is pending. Request one first."},{status:409})}}return v.NextResponse.json({error:"Unknown action"},{status:400})}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/web-access/recovery/route",pathname:"/api/web-access/recovery",filename:"route",bundlePath:"app/api/web-access/recovery/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\web-access\\recovery\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/web-access/recovery/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,3229],()=>b(b.s=96410));module.exports=c})();
1
+ (()=>{var a={};a.id=2515,a.ids=[2515],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},22851:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>G,patchFetch:()=>F,routeModule:()=>B,serverHooks:()=>E,workAsyncStorage:()=>C,workUnitAsyncStorage:()=>D});var d={};c.r(d),c.d(d,{POST:()=>A,dynamic:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(13229),x=c(66544);let y="force-dynamic",z="─".repeat(52);async function A(a){let b;if(!(0,x.E2)(a))return v.NextResponse.json({error:"Expected a JSON body"},{status:415});try{b=await a.json()}catch{return v.NextResponse.json({error:"Expected a JSON body"},{status:400})}let c=(0,w.getWebAuthStatus)();if(c.managedByEnvironment)return v.NextResponse.json({error:"Password access comes from the CUELO_PASSWORD environment variable, which CUELO cannot reset. Change the variable on the server and restart it."},{status:409});if(c.unreadable)return v.NextResponse.json({error:`The credential file at ${c.file} could not be read. Run \`cuelo --reset-password\` on the server to replace it.`},{status:409});if(!c.stored)return v.NextResponse.json({error:"No password is configured, so there is nothing to recover."},{status:409});if("request"===b.action){var d,e;let a,b=(0,w.issueRecoveryCode)();return b.ok?(d=b.code,e=b.expiresAt,a=Math.round(w.RECOVERY_CODE_TTL_MS/6e4),process.stdout.write(["",z,"CUELO password recovery\n",` Recovery code: ${d}`,` Valid until: ${new Date(e).toLocaleTimeString()} (${a} minutes)`,"\nEnter it on the /recover page to set a new password.\nIf you did not ask for this, ignore it — the code grants nothing on its own.",z,""].join("\n")),v.NextResponse.json({ok:!0,expiresAt:b.expiresAt},{headers:{"Cache-Control":"no-store"}})):v.NextResponse.json({error:"A recovery code was just issued. Check the server console, or wait a moment and try again."},{status:429,headers:{"Retry-After":String(Math.ceil(b.retryAfterMs/1e3))}})}if("complete"===b.action){let a=(0,w.consumeRecoveryCode)(b.code,b.password);if(a.ok)return v.NextResponse.json({ok:!0},{headers:{"Cache-Control":"no-store"}});switch(a.reason){case"invalid-password":return v.NextResponse.json({error:a.message},{status:400});case"invalid-code":return v.NextResponse.json({error:a.remainingAttempts>0?`That recovery code is not valid. ${a.remainingAttempts} attempt(s) left before it is discarded.`:"That recovery code is not valid, and it has now been discarded. Request a new one."},{status:403});case"expired":return v.NextResponse.json({error:"That recovery code has expired. Request a new one."},{status:403});case"too-many-attempts":return v.NextResponse.json({error:"Too many attempts. Request a new recovery code."},{status:429});case"no-code":return v.NextResponse.json({error:"No recovery code is pending. Request one first."},{status:409})}}return v.NextResponse.json({error:"Unknown action"},{status:400})}let B=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/web-access/recovery/route",pathname:"/api/web-access/recovery",filename:"route",bundlePath:"app/api/web-access/recovery/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\web-access\\recovery\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:C,workUnitAsyncStorage:D,serverHooks:E}=B;function F(){return(0,g.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:D})}async function G(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),B.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/web-access/recovery/route";"/index"===d&&(d="/");let e=await B.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:C,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==C?void 0:C.render404)?await C.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||B.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===B.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==C?void 0:C.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await B.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>B.onRequestError(a,b,d,e,C)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>B.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&D&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await B.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),b}},k=await B.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:D,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",D?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await B.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:D})},!1,C),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,3229],()=>b(b.s=22851));module.exports=c})();
@@ -1 +1 @@
1
- (()=>{var a={};a.id=2747,a.ids=[2747],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},20011:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>I,patchFetch:()=>H,routeModule:()=>D,serverHooks:()=>G,workAsyncStorage:()=>E,workUnitAsyncStorage:()=>F});var d={};c.r(d),c.d(d,{GET:()=>B,PUT:()=>C,dynamic:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(13229),x=c(66544);let y="force-dynamic",z=new Set(["set-password","enable","disable","clear"]);function A(a){return v.NextResponse.json(a,{headers:{"Cache-Control":"no-store"}})}async function B(){return A((0,w.getWebAuthStatus)())}async function C(a){let b;if(!(0,x.E2)(a))return v.NextResponse.json({error:"Expected a JSON body"},{status:415});try{b=await a.json()}catch{return v.NextResponse.json({error:"Expected a JSON body"},{status:400})}let c=b.action;if("string"!=typeof c||!z.has(c))return v.NextResponse.json({error:"Unknown action"},{status:400});if((0,w.getWebAuthStatus)().managedByEnvironment)return v.NextResponse.json({error:"Password access is managed by the CUELO_PASSWORD environment variable. Unset it to manage the password here."},{status:409});try{switch(c){case"set-password":{let a=(0,w.validatePassword)(b.password);if(a)return v.NextResponse.json({error:a},{status:400});return A((0,w.setWebPassword)(b.password))}case"enable":return A((0,w.setWebPasswordEnabled)(!0));case"disable":return A((0,w.setWebPasswordEnabled)(!1));case"clear":return A((0,w.clearWebPassword)())}}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:400})}}let D=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/web-access/route",pathname:"/api/web-access",filename:"route",bundlePath:"app/api/web-access/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\web-access\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:F,serverHooks:G}=D;function H(){return(0,g.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:F})}async function I(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),D.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/web-access/route";"/index"===d&&(d="/");let e=await D.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||D.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===D.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await D.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>D.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>D.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await D.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await D.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await D.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,3229],()=>b(b.s=20011));module.exports=c})();
1
+ (()=>{var a={};a.id=2747,a.ids=[2747],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},44870:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},48161:a=>{"use strict";a.exports=require("node:os")},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},66544:(a,b,c)=>{"use strict";c.d(b,{E2:()=>j,EN:()=>i});var d=c(77030);function e(a){return(a.startsWith("[")&&a.endsWith("]")?a.slice(1,-1):a).toLowerCase().replace(/\.$/,"")}function f(a){if(!a||/[\s/@\\]/.test(a))return null;try{let b=new URL(`http://${a}`);if(b.username||b.password||"/"!==b.pathname||b.search||b.hash)return null;return e(b.hostname)}catch{return null}}function g(){return[process.env.CUELO_HOSTNAME,...process.env.CUELO_ALLOWED_HOSTS?.split(",")??[]].filter(a=>!!a?.trim())}function h(a){try{return new URL(a).origin}catch{return null}}function i(a,b=g()){return!!function(a,b=g()){let c=a.headers.get("host"),h=c?f(c):null;return!!h&&(!!("localhost"===h||h.endsWith(".localhost")||(0,d.isIP)(h))||b.some(a=>{let b;return((b=a?.trim())?(0,d.isIP)(b)?e(b):f(b):null)===h}))}(a,b)&&(!!function(a){if("GET"!==a.method||"navigate"!==a.headers.get("sec-fetch-mode")||"document"!==a.headers.get("sec-fetch-dest")||"?1"!==a.headers.get("sec-fetch-user"))return!1;try{return/^\/api\/sessions\/[^/]+\/export$/.test(new URL(a.url).pathname)}catch{return!1}}(a)||!(a.headers.has("origin")||a.headers.has("sec-fetch-site"))||function(a){let b,c,d=a.headers.get("origin");if("cross-site"===a.headers.get("sec-fetch-site"))return!1;if(!d)return!0;let e=(b=new URL(a.url),(c=a.headers.get("host"))?h(`${b.protocol}//${c}`):null);return null!==e&&h(d)===e}(a))}function j(a){let b=a.headers.get("content-type")?.split(";",1)[0]?.trim().toLowerCase();return"application/json"===b||!!(b?.startsWith("application/")&&b.endsWith("+json"))}},73024:a=>{"use strict";a.exports=require("node:fs")},76760:a=>{"use strict";a.exports=require("node:path")},77030:a=>{"use strict";a.exports=require("node:net")},77598:a=>{"use strict";a.exports=require("node:crypto")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},88964:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>I,patchFetch:()=>H,routeModule:()=>D,serverHooks:()=>G,workAsyncStorage:()=>E,workUnitAsyncStorage:()=>F});var d={};c.r(d),c.d(d,{GET:()=>B,PUT:()=>C,dynamic:()=>y});var e=c(19225),f=c(84006),g=c(8317),h=c(99373),i=c(34775),j=c(24235),k=c(261),l=c(54365),m=c(90771),n=c(73461),o=c(67798),p=c(92280),q=c(62018),r=c(45696),s=c(47929),t=c(86439),u=c(37527),v=c(23211),w=c(13229),x=c(66544);let y="force-dynamic",z=new Set(["set-password","enable","disable","clear"]);function A(a){return v.NextResponse.json(a,{headers:{"Cache-Control":"no-store"}})}async function B(){return A((0,w.getWebAuthStatus)())}async function C(a){let b;if(!(0,x.E2)(a))return v.NextResponse.json({error:"Expected a JSON body"},{status:415});try{b=await a.json()}catch{return v.NextResponse.json({error:"Expected a JSON body"},{status:400})}let c=b.action;if("string"!=typeof c||!z.has(c))return v.NextResponse.json({error:"Unknown action"},{status:400});if((0,w.getWebAuthStatus)().managedByEnvironment)return v.NextResponse.json({error:"Password access is managed by the CUELO_PASSWORD environment variable. Unset it to manage the password here."},{status:409});try{switch(c){case"set-password":{let a=(0,w.validatePassword)(b.password);if(a)return v.NextResponse.json({error:a},{status:400});return A((0,w.setWebPassword)(b.password))}case"enable":return A((0,w.setWebPasswordEnabled)(!0));case"disable":return A((0,w.setWebPasswordEnabled)(!1));case"clear":return A((0,w.clearWebPassword)())}}catch(a){return v.NextResponse.json({error:a instanceof Error?a.message:String(a)},{status:400})}}let D=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/web-access/route",pathname:"/api/web-access",filename:"route",bundlePath:"app/api/web-access/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"D:\\a\\CUELO\\CUELO\\app\\api\\web-access\\route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:E,workUnitAsyncStorage:F,serverHooks:G}=D;function H(){return(0,g.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:F})}async function I(a,b,c){c.requestMeta&&(0,h.setRequestMeta)(a,c.requestMeta),D.isDev&&(0,h.addRequestMeta)(a,"devRequestTimingInternalsEnd",process.hrtime.bigint());let d="/api/web-access/route";"/index"===d&&(d="/");let e=await D.prepare(a,b,{srcPage:d,multiZoneDraftMode:!1});if(!e)return b.statusCode=400,b.end("Bad Request"),null==c.waitUntil||c.waitUntil.call(c,Promise.resolve()),null;let{buildId:g,deploymentId:v,params:w,nextConfig:x,parsedUrl:y,isDraftMode:z,prerenderManifest:A,routerServerContext:B,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,resolvedPathname:F,clientReferenceManifest:G,serverActionsManifest:H}=e,I=(0,k.normalizeAppPath)(d),J=!!(A.dynamicRoutes[I]||A.routes[F]),K=async()=>((null==B?void 0:B.render404)?await B.render404(a,b,y,!1):b.end("This page could not be found"),null);if(J&&!z){let a=!!A.routes[F],b=A.dynamicRoutes[I];if(b&&!1===b.fallback&&!a){if(x.adapterPath)return await K();throw new t.NoFallbackError}}let L=null;!J||D.isDev||z||(L="/index"===(L=F)?"/":L);let M=!0===D.isDev||!J,N=J&&!M;H&&G&&(0,j.setManifestsSingleton)({page:d,clientReferenceManifest:G,serverActionsManifest:H});let O=a.method||"GET",P=(0,i.getTracer)(),Q=P.getActiveScopeSpan(),R=!!(null==B?void 0:B.isWrappedByNextServer),S=!!(0,h.getRequestMeta)(a,"minimalMode"),T=(0,h.getRequestMeta)(a,"incrementalCache")||await D.getIncrementalCache(a,x,A,S);null==T||T.resetRequestCache(),globalThis.__incrementalCache=T;let U={params:w,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!x.experimental.authInterrupts},cacheComponents:!!x.cacheComponents,supportsDynamicResponse:M,incrementalCache:T,cacheLifeProfiles:x.cacheLife,waitUntil:c.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:void 0,onInstrumentationRequestError:(b,c,d,e)=>D.onRequestError(a,b,d,e,B)},sharedContext:{buildId:g,deploymentId:v}},V=new l.NodeNextRequest(a),W=new l.NodeNextResponse(b),X=m.NextRequestAdapter.fromNodeNextRequest(V,(0,m.signalFromNodeResponse)(b));try{let e,g=async a=>D.handle(X,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let c=P.getRootSpanAttributes();if(!c)return;if(c.get("next.span_type")!==n.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${c.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let f=c.get("next.route");if(f){let b=`${O} ${f}`;a.setAttributes({"next.route":f,"http.route":f,"next.span_name":b}),a.updateName(b),e&&e!==a&&(e.setAttribute("http.route",f),e.updateName(b))}else a.updateName(`${O} ${d}`)}),h=async e=>{var h,i;let j=async({previousCacheEntry:f})=>{try{if(!S&&C&&E&&!f)return b.statusCode=404,b.setHeader("x-nextjs-cache","REVALIDATED"),b.end("This page could not be found"),null;let d=await g(e);a.fetchMetrics=U.renderOpts.fetchMetrics;let h=U.renderOpts.pendingWaitUntil;h&&c.waitUntil&&(c.waitUntil(h),h=void 0);let i=U.renderOpts.collectedTags;if(!J)return await (0,p.I)(V,W,d,U.renderOpts.pendingWaitUntil),null;{let a=await d.blob(),b=(0,q.toNodeOutgoingHttpHeaders)(d.headers);i&&(b[s.NEXT_CACHE_TAGS_HEADER]=i),!b["content-type"]&&a.type&&(b["content-type"]=a.type);let c=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=s.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,e=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=s.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:u.CachedRouteKind.APP_ROUTE,status:d.status,body:Buffer.from(await a.arrayBuffer()),headers:b},cacheControl:{revalidate:c,expire:e}}}}catch(b){throw(null==f?void 0:f.isStale)&&await D.onRequestError(a,b,{routerKind:"App Router",routePath:d,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),b}},k=await D.handleResponse({req:a,nextConfig:x,cacheKey:L,routeKind:f.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:E,responseGenerator:j,waitUntil:c.waitUntil,isMinimalMode:S});if(!J)return null;if((null==k||null==(h=k.value)?void 0:h.kind)!==u.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==k||null==(i=k.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});S||b.setHeader("x-nextjs-cache",C?"REVALIDATED":k.isMiss?"MISS":k.isStale?"STALE":"HIT"),z&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,q.fromNodeOutgoingHttpHeaders)(k.value.headers);return S&&J||l.delete(s.NEXT_CACHE_TAGS_HEADER),!k.cacheControl||b.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,r.getCacheControlHeader)(k.cacheControl)),await (0,p.I)(V,W,new Response(k.value.body,{headers:l,status:k.value.status||200})),null};R&&Q?await h(Q):(e=P.getActiveScopeSpan(),await P.withPropagatedContext(a.headers,()=>P.trace(n.BaseServerSpan.handleRequest,{spanName:`${O} ${d}`,kind:i.SpanKind.SERVER,attributes:{"http.method":O,"http.target":a.url}},h),void 0,!R))}catch(b){if(b instanceof t.NoFallbackError||await D.onRequestError(a,b,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,o.c)({isStaticGeneration:N,isOnDemandRevalidate:C})},!1,B),J)throw b;return await (0,p.I)(V,W,new Response(null,{status:500})),null}}},96487:()=>{}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,3229],()=>b(b.s=88964));module.exports=c})();