@henlii/pidance 0.2.7 → 0.2.9

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 (247) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +9 -6
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/required-server-files.json +1 -1
  6. package/.next/routes-manifest.json +20 -0
  7. package/.next/server/app/_global-error/page.js +3 -3
  8. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/.next/server/app/_global-error.html +1 -1
  10. package/.next/server/app/_global-error.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  14. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  15. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  16. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  17. package/.next/server/app/_not-found/page.js +2 -2
  18. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  19. package/.next/server/app/_not-found.html +1 -1
  20. package/.next/server/app/_not-found.rsc +2 -2
  21. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  22. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  23. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  24. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  25. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  26. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  27. package/.next/server/app/api/about/route.js +1 -1
  28. package/.next/server/app/api/agent/[id]/bash-output/route.js +1 -1
  29. package/.next/server/app/api/agent/[id]/events/route.js +2 -2
  30. package/.next/server/app/api/agent/[id]/route.js +1 -1
  31. package/.next/server/app/api/agent/new/route.js +1 -1
  32. package/.next/server/app/api/agent/running/events/route.js +2 -2
  33. package/.next/server/app/api/agent/running/route.js +1 -1
  34. package/.next/server/app/api/agent-settings/route.js +2 -2
  35. package/.next/server/app/api/attachments/route.js +1 -1
  36. package/.next/server/app/api/auth/all-providers/route.js +1 -1
  37. package/.next/server/app/api/auth/api-key/[provider]/route.js +1 -1
  38. package/.next/server/app/api/auth/login/[provider]/route.js +2 -2
  39. package/.next/server/app/api/auth/logout/[provider]/route.js +1 -1
  40. package/.next/server/app/api/auth/providers/route.js +1 -1
  41. package/.next/server/app/api/auth/ui-session/route.js +1 -1
  42. package/.next/server/app/api/auth/ui-sessions/[id]/route.js +1 -0
  43. package/.next/server/app/api/auth/ui-sessions/[id]/route_client-reference-manifest.js +1 -0
  44. package/.next/server/app/api/auth/ui-sessions/route.js +1 -0
  45. package/.next/server/app/api/auth/ui-sessions/route_client-reference-manifest.js +1 -0
  46. package/.next/server/app/api/cwd/browse/route.js +1 -1
  47. package/.next/server/app/api/cwd/validate/route.js +1 -1
  48. package/.next/server/app/api/default-cwd/route.js +1 -1
  49. package/.next/server/app/api/file-index/route.js +1 -1
  50. package/.next/server/app/api/files/[...path]/route.js +1 -1
  51. package/.next/server/app/api/git/diff/route.js +1 -1
  52. package/.next/server/app/api/git/status/route.js +1 -1
  53. package/.next/server/app/api/home/route.js +1 -1
  54. package/.next/server/app/api/models/route.js +1 -1
  55. package/.next/server/app/api/models-config/raw/route.js +1 -1
  56. package/.next/server/app/api/models-config/route.js +1 -1
  57. package/.next/server/app/api/models-config/test/route.js +1 -1
  58. package/.next/server/app/api/plugins/route.js +1 -1
  59. package/.next/server/app/api/plugins/search/route.js +1 -1
  60. package/.next/server/app/api/plugins/updates/route.js +1 -1
  61. package/.next/server/app/api/preferences/route.js +1 -1
  62. package/.next/server/app/api/project-assets/route.js +2 -2
  63. package/.next/server/app/api/prompts/route.js +1 -1
  64. package/.next/server/app/api/pty/route.js +2 -2
  65. package/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
  66. package/.next/server/app/api/sessions/[id]/auto-name/route.js +3 -3
  67. package/.next/server/app/api/sessions/[id]/command-entry/route.js +1 -1
  68. package/.next/server/app/api/sessions/[id]/context/route.js +1 -1
  69. package/.next/server/app/api/sessions/[id]/entries/[entryId]/thinking/route.js +1 -1
  70. package/.next/server/app/api/sessions/[id]/export/route.js +2 -2
  71. package/.next/server/app/api/sessions/[id]/info/route.js +1 -1
  72. package/.next/server/app/api/sessions/[id]/route.js +1 -1
  73. package/.next/server/app/api/sessions/[id]/state/route.js +1 -1
  74. package/.next/server/app/api/sessions/[id]/tool-results/[toolCallId]/route.js +1 -1
  75. package/.next/server/app/api/sessions/route.js +1 -1
  76. package/.next/server/app/api/sessions/search/route.js +1 -1
  77. package/.next/server/app/api/settings/raw/route.js +2 -2
  78. package/.next/server/app/api/settings/remote/route.js +1 -0
  79. package/.next/server/app/api/settings/remote/route_client-reference-manifest.js +1 -0
  80. package/.next/server/app/api/skills/check/route.js +1 -1
  81. package/.next/server/app/api/skills/install/route.js +1 -1
  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/subagent-runs/route.js +1 -1
  86. package/.next/server/app/api/update/apply/route.js +3 -3
  87. package/.next/server/app/api/update/check/route.js +2 -2
  88. package/.next/server/app/api/worktrees/route.js +1 -1
  89. package/.next/server/app/icon.png/route.js +1 -1
  90. package/.next/server/app/index.html +1 -1
  91. package/.next/server/app/index.rsc +4 -4
  92. package/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  93. package/.next/server/app/index.segments/_full.segment.rsc +4 -4
  94. package/.next/server/app/index.segments/_head.segment.rsc +1 -1
  95. package/.next/server/app/index.segments/_index.segment.rsc +2 -2
  96. package/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  97. package/.next/server/app/page.js +15 -15
  98. package/.next/server/app/page_client-reference-manifest.js +1 -1
  99. package/.next/server/app-paths-manifest.json +9 -6
  100. package/.next/server/chunks/188.js +1 -1
  101. package/.next/server/chunks/329.js +1 -0
  102. package/.next/server/chunks/7594.js +1 -1
  103. package/.next/server/functions-config-manifest.json +3 -0
  104. package/.next/server/instrumentation.js +1 -1
  105. package/.next/server/middleware-build-manifest.js +1 -1
  106. package/.next/server/middleware.js +3 -3
  107. package/.next/server/pages/404.html +1 -1
  108. package/.next/server/pages/500.html +1 -1
  109. package/.next/server/server-reference-manifest.json +1 -1
  110. package/.next/static/bR7RbvJMnnKuh-cKREZa4/_buildManifest.js +1 -0
  111. package/.next/static/chunks/9780-e3ccfd6965a6273f.js +1 -0
  112. package/.next/static/chunks/app/_global-error/page-81c6f790083aee21.js +1 -0
  113. package/.next/static/chunks/app/api/about/route-81c6f790083aee21.js +1 -0
  114. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-81c6f790083aee21.js +1 -0
  115. package/.next/static/chunks/app/api/agent/[id]/events/route-81c6f790083aee21.js +1 -0
  116. package/.next/static/chunks/app/api/agent/[id]/route-81c6f790083aee21.js +1 -0
  117. package/.next/static/chunks/app/api/agent/new/route-81c6f790083aee21.js +1 -0
  118. package/.next/static/chunks/app/api/agent/running/events/route-81c6f790083aee21.js +1 -0
  119. package/.next/static/chunks/app/api/agent/running/route-81c6f790083aee21.js +1 -0
  120. package/.next/static/chunks/app/api/agent-settings/route-81c6f790083aee21.js +1 -0
  121. package/.next/static/chunks/app/api/attachments/route-81c6f790083aee21.js +1 -0
  122. package/.next/static/chunks/app/api/auth/all-providers/route-81c6f790083aee21.js +1 -0
  123. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-81c6f790083aee21.js +1 -0
  124. package/.next/static/chunks/app/api/auth/login/[provider]/route-81c6f790083aee21.js +1 -0
  125. package/.next/static/chunks/app/api/auth/logout/[provider]/route-81c6f790083aee21.js +1 -0
  126. package/.next/static/chunks/app/api/auth/providers/route-81c6f790083aee21.js +1 -0
  127. package/.next/static/chunks/app/api/auth/ui-session/route-81c6f790083aee21.js +1 -0
  128. package/.next/static/chunks/app/api/auth/ui-sessions/[id]/route-81c6f790083aee21.js +1 -0
  129. package/.next/static/chunks/app/api/auth/ui-sessions/route-81c6f790083aee21.js +1 -0
  130. package/.next/static/chunks/app/api/cwd/browse/route-81c6f790083aee21.js +1 -0
  131. package/.next/static/chunks/app/api/cwd/validate/route-81c6f790083aee21.js +1 -0
  132. package/.next/static/chunks/app/api/default-cwd/route-81c6f790083aee21.js +1 -0
  133. package/.next/static/chunks/app/api/file-index/route-81c6f790083aee21.js +1 -0
  134. package/.next/static/chunks/app/api/files/[...path]/route-81c6f790083aee21.js +1 -0
  135. package/.next/static/chunks/app/api/git/diff/route-81c6f790083aee21.js +1 -0
  136. package/.next/static/chunks/app/api/git/status/route-81c6f790083aee21.js +1 -0
  137. package/.next/static/chunks/app/api/home/route-81c6f790083aee21.js +1 -0
  138. package/.next/static/chunks/app/api/models/route-81c6f790083aee21.js +1 -0
  139. package/.next/static/chunks/app/api/models-config/raw/route-81c6f790083aee21.js +1 -0
  140. package/.next/static/chunks/app/api/models-config/route-81c6f790083aee21.js +1 -0
  141. package/.next/static/chunks/app/api/models-config/test/route-81c6f790083aee21.js +1 -0
  142. package/.next/static/chunks/app/api/plugins/route-81c6f790083aee21.js +1 -0
  143. package/.next/static/chunks/app/api/plugins/search/route-81c6f790083aee21.js +1 -0
  144. package/.next/static/chunks/app/api/plugins/updates/route-81c6f790083aee21.js +1 -0
  145. package/.next/static/chunks/app/api/preferences/route-81c6f790083aee21.js +1 -0
  146. package/.next/static/chunks/app/api/project-assets/route-81c6f790083aee21.js +1 -0
  147. package/.next/static/chunks/app/api/prompts/route-81c6f790083aee21.js +1 -0
  148. package/.next/static/chunks/app/api/pty/route-81c6f790083aee21.js +1 -0
  149. package/.next/static/chunks/app/api/sessions/[id]/archive/route-81c6f790083aee21.js +1 -0
  150. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-81c6f790083aee21.js +1 -0
  151. package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-81c6f790083aee21.js +1 -0
  152. package/.next/static/chunks/app/api/sessions/[id]/context/route-81c6f790083aee21.js +1 -0
  153. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-81c6f790083aee21.js +1 -0
  154. package/.next/static/chunks/app/api/sessions/[id]/export/route-81c6f790083aee21.js +1 -0
  155. package/.next/static/chunks/app/api/sessions/[id]/info/route-81c6f790083aee21.js +1 -0
  156. package/.next/static/chunks/app/api/sessions/[id]/route-81c6f790083aee21.js +1 -0
  157. package/.next/static/chunks/app/api/sessions/[id]/state/route-81c6f790083aee21.js +1 -0
  158. package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-81c6f790083aee21.js +1 -0
  159. package/.next/static/chunks/app/api/sessions/route-81c6f790083aee21.js +1 -0
  160. package/.next/static/chunks/app/api/sessions/search/route-81c6f790083aee21.js +1 -0
  161. package/.next/static/chunks/app/api/settings/raw/route-81c6f790083aee21.js +1 -0
  162. package/.next/static/chunks/app/api/settings/remote/route-81c6f790083aee21.js +1 -0
  163. package/.next/static/chunks/app/api/skills/check/route-81c6f790083aee21.js +1 -0
  164. package/.next/static/chunks/app/api/skills/install/route-81c6f790083aee21.js +1 -0
  165. package/.next/static/chunks/app/api/skills/route-81c6f790083aee21.js +1 -0
  166. package/.next/static/chunks/app/api/skills/search/route-81c6f790083aee21.js +1 -0
  167. package/.next/static/chunks/app/api/skills/update/route-81c6f790083aee21.js +1 -0
  168. package/.next/static/chunks/app/api/subagent-runs/route-81c6f790083aee21.js +1 -0
  169. package/.next/static/chunks/app/api/update/apply/route-81c6f790083aee21.js +1 -0
  170. package/.next/static/chunks/app/api/update/check/route-81c6f790083aee21.js +1 -0
  171. package/.next/static/chunks/app/api/worktrees/route-81c6f790083aee21.js +1 -0
  172. package/.next/static/chunks/app/page-c9b79e882493c953.js +25 -0
  173. package/.next/static/chunks/next/dist/client/components/builtin/app-error-81c6f790083aee21.js +1 -0
  174. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-81c6f790083aee21.js +1 -0
  175. package/.next/static/chunks/next/dist/client/components/builtin/not-found-81c6f790083aee21.js +1 -0
  176. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-81c6f790083aee21.js +1 -0
  177. package/README.md +7 -4
  178. package/bin/pidance-auth-gate.js +10 -7
  179. package/bin/pidance-options.js +3 -2
  180. package/bin/pidance-server-config.js +46 -0
  181. package/bin/pidance.js +20 -6
  182. package/package.json +1 -1
  183. package/.next/static/01veEEO0MbroyjY72tWyr/_buildManifest.js +0 -1
  184. package/.next/static/chunks/9780-96bbb56af7ed70f1.js +0 -1
  185. package/.next/static/chunks/app/_global-error/page-212bed9d7023fb3f.js +0 -1
  186. package/.next/static/chunks/app/api/about/route-212bed9d7023fb3f.js +0 -1
  187. package/.next/static/chunks/app/api/agent/[id]/bash-output/route-212bed9d7023fb3f.js +0 -1
  188. package/.next/static/chunks/app/api/agent/[id]/events/route-212bed9d7023fb3f.js +0 -1
  189. package/.next/static/chunks/app/api/agent/[id]/route-212bed9d7023fb3f.js +0 -1
  190. package/.next/static/chunks/app/api/agent/new/route-212bed9d7023fb3f.js +0 -1
  191. package/.next/static/chunks/app/api/agent/running/events/route-212bed9d7023fb3f.js +0 -1
  192. package/.next/static/chunks/app/api/agent/running/route-212bed9d7023fb3f.js +0 -1
  193. package/.next/static/chunks/app/api/agent-settings/route-212bed9d7023fb3f.js +0 -1
  194. package/.next/static/chunks/app/api/attachments/route-212bed9d7023fb3f.js +0 -1
  195. package/.next/static/chunks/app/api/auth/all-providers/route-212bed9d7023fb3f.js +0 -1
  196. package/.next/static/chunks/app/api/auth/api-key/[provider]/route-212bed9d7023fb3f.js +0 -1
  197. package/.next/static/chunks/app/api/auth/login/[provider]/route-212bed9d7023fb3f.js +0 -1
  198. package/.next/static/chunks/app/api/auth/logout/[provider]/route-212bed9d7023fb3f.js +0 -1
  199. package/.next/static/chunks/app/api/auth/providers/route-212bed9d7023fb3f.js +0 -1
  200. package/.next/static/chunks/app/api/auth/ui-session/route-212bed9d7023fb3f.js +0 -1
  201. package/.next/static/chunks/app/api/cwd/browse/route-212bed9d7023fb3f.js +0 -1
  202. package/.next/static/chunks/app/api/cwd/validate/route-212bed9d7023fb3f.js +0 -1
  203. package/.next/static/chunks/app/api/default-cwd/route-212bed9d7023fb3f.js +0 -1
  204. package/.next/static/chunks/app/api/file-index/route-212bed9d7023fb3f.js +0 -1
  205. package/.next/static/chunks/app/api/files/[...path]/route-212bed9d7023fb3f.js +0 -1
  206. package/.next/static/chunks/app/api/git/diff/route-212bed9d7023fb3f.js +0 -1
  207. package/.next/static/chunks/app/api/git/status/route-212bed9d7023fb3f.js +0 -1
  208. package/.next/static/chunks/app/api/home/route-212bed9d7023fb3f.js +0 -1
  209. package/.next/static/chunks/app/api/models/route-212bed9d7023fb3f.js +0 -1
  210. package/.next/static/chunks/app/api/models-config/raw/route-212bed9d7023fb3f.js +0 -1
  211. package/.next/static/chunks/app/api/models-config/route-212bed9d7023fb3f.js +0 -1
  212. package/.next/static/chunks/app/api/models-config/test/route-212bed9d7023fb3f.js +0 -1
  213. package/.next/static/chunks/app/api/plugins/route-212bed9d7023fb3f.js +0 -1
  214. package/.next/static/chunks/app/api/plugins/search/route-212bed9d7023fb3f.js +0 -1
  215. package/.next/static/chunks/app/api/plugins/updates/route-212bed9d7023fb3f.js +0 -1
  216. package/.next/static/chunks/app/api/preferences/route-212bed9d7023fb3f.js +0 -1
  217. package/.next/static/chunks/app/api/project-assets/route-212bed9d7023fb3f.js +0 -1
  218. package/.next/static/chunks/app/api/prompts/route-212bed9d7023fb3f.js +0 -1
  219. package/.next/static/chunks/app/api/pty/route-212bed9d7023fb3f.js +0 -1
  220. package/.next/static/chunks/app/api/sessions/[id]/archive/route-212bed9d7023fb3f.js +0 -1
  221. package/.next/static/chunks/app/api/sessions/[id]/auto-name/route-212bed9d7023fb3f.js +0 -1
  222. package/.next/static/chunks/app/api/sessions/[id]/command-entry/route-212bed9d7023fb3f.js +0 -1
  223. package/.next/static/chunks/app/api/sessions/[id]/context/route-212bed9d7023fb3f.js +0 -1
  224. package/.next/static/chunks/app/api/sessions/[id]/entries/[entryId]/thinking/route-212bed9d7023fb3f.js +0 -1
  225. package/.next/static/chunks/app/api/sessions/[id]/export/route-212bed9d7023fb3f.js +0 -1
  226. package/.next/static/chunks/app/api/sessions/[id]/info/route-212bed9d7023fb3f.js +0 -1
  227. package/.next/static/chunks/app/api/sessions/[id]/route-212bed9d7023fb3f.js +0 -1
  228. package/.next/static/chunks/app/api/sessions/[id]/state/route-212bed9d7023fb3f.js +0 -1
  229. package/.next/static/chunks/app/api/sessions/[id]/tool-results/[toolCallId]/route-212bed9d7023fb3f.js +0 -1
  230. package/.next/static/chunks/app/api/sessions/route-212bed9d7023fb3f.js +0 -1
  231. package/.next/static/chunks/app/api/sessions/search/route-212bed9d7023fb3f.js +0 -1
  232. package/.next/static/chunks/app/api/settings/raw/route-212bed9d7023fb3f.js +0 -1
  233. package/.next/static/chunks/app/api/skills/check/route-212bed9d7023fb3f.js +0 -1
  234. package/.next/static/chunks/app/api/skills/install/route-212bed9d7023fb3f.js +0 -1
  235. package/.next/static/chunks/app/api/skills/route-212bed9d7023fb3f.js +0 -1
  236. package/.next/static/chunks/app/api/skills/search/route-212bed9d7023fb3f.js +0 -1
  237. package/.next/static/chunks/app/api/skills/update/route-212bed9d7023fb3f.js +0 -1
  238. package/.next/static/chunks/app/api/subagent-runs/route-212bed9d7023fb3f.js +0 -1
  239. package/.next/static/chunks/app/api/update/apply/route-212bed9d7023fb3f.js +0 -1
  240. package/.next/static/chunks/app/api/update/check/route-212bed9d7023fb3f.js +0 -1
  241. package/.next/static/chunks/app/api/worktrees/route-212bed9d7023fb3f.js +0 -1
  242. package/.next/static/chunks/app/page-c76a709acf636b23.js +0 -25
  243. package/.next/static/chunks/next/dist/client/components/builtin/app-error-212bed9d7023fb3f.js +0 -1
  244. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-212bed9d7023fb3f.js +0 -1
  245. package/.next/static/chunks/next/dist/client/components/builtin/not-found-212bed9d7023fb3f.js +0 -1
  246. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-212bed9d7023fb3f.js +0 -1
  247. /package/.next/static/{01veEEO0MbroyjY72tWyr → bR7RbvJMnnKuh-cKREZa4}/_ssgManifest.js +0 -0
@@ -1,2 +1,2 @@
1
- (()=>{var a={};a.id=5408,a.ids=[5408],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")},31974:(a,b,c)=>{"use strict";c.d(b,{ex:()=>u,i7:()=>v});var d=c(95398),e=c(89477),f=c(86697);let g=(0,c(37418).promisify)(d.execFile),h="@henlii/pidance",i="https://registry.npmjs.org/",j="pidance.service";function k(a,b){return 0===b||"active"===a.trim()}function l(a){if(a.restartOk||a.laterActive)return{restarted:!0};let b=a.restartError?.trim();return{restarted:!1,message:b?`重启 ${j} 失败:${b}`:`重启 ${j} 失败`}}async function m(a,b){try{let c=await a("systemctl",["is-active",j],{timeout:1e4,env:b});return k(String(c.stdout??""),0)}catch(a){return k(function(a){if(a&&"object"==typeof a&&"stdout"in a){let b=a.stdout;if("string"==typeof b)return b;if(Buffer.isBuffer(b))return b.toString("utf8")}return""}(a),function(a){if(a&&"object"==typeof a&&"code"in a){let b=a.code;if("number"==typeof b&&Number.isFinite(b))return b}return null}(a))}}async function n(a){let b=a.execFileImpl??g,c=a.env??process.env,d=a.sleepImpl??(a=>new Promise(b=>{setTimeout(b,a)})),e=a.now??Date.now;try{return await b("systemctl",["restart",j],{timeout:21e4,env:c}),l({restartOk:!0,laterActive:!1})}catch(g){let a=g instanceof Error?g.message:String(g),f=e();if(await m(b,c))return l({restartOk:!1,restartError:a,laterActive:!0});for(;e()-f<6e4;)if(await d(1500),await m(b,c))return l({restartOk:!1,restartError:a,laterActive:!0});return l({restartOk:!1,restartError:a,laterActive:!1})}}function o(a=process.env){let b=(a.PIDANCE_NPM_REGISTRY||a.npm_config_registry||i).trim();return b?b.endsWith("/")?b:`${b}/`:i}function p(a,b){let c=q(a),d=q(b);if(!c||!d)return 0;for(let a=0;a<3;a++){if(c.core[a]>d.core[a])return 1;if(c.core[a]<d.core[a])return -1}return null===c.pre&&null===d.pre?0:null===c.pre?1:null===d.pre||c.pre<d.pre?-1:+(c.pre>d.pre)}function q(a){let b=a.trim().replace(/^v/i,""),c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/.exec(b);return c?{core:[Number(c[1]),Number(c[2]),Number(c[3])],pre:c[4]??null}:null}function r(a,b){let c=(0,f.join)(a,"releases");if(!(0,e.existsSync)(c))return[];let d=new Set(b.map(a=>a.trim()).filter(Boolean));try{let b=(0,e.realpathSync)((0,f.join)(a,"current")),c=/\/releases\/([^/]+)$/.exec(b.replace(/\\/g,"/"));c&&d.add(c[1])}catch{}let g=c;try{g=(0,e.realpathSync)(c)}catch{return[]}let h=[];for(let a of(0,e.readdirSync)(c,{withFileTypes:!0})){let b;if(!a.isDirectory()||a.isSymbolicLink()||"."===a.name||".."===a.name||a.name.includes("/")||a.name.includes("\\")||d.has(a.name))continue;let i=(0,f.join)(c,a.name);try{b=(0,e.realpathSync)(i)}catch{continue}let j=g.endsWith("/")?g:`${g}/`;(b===g||b.startsWith(j))&&((0,e.rmSync)(i,{recursive:!0,force:!0}),h.push(a.name))}return h}async function s(a=o(),b=globalThis.fetch.bind(globalThis)){let c=new URL("@henlii%2Fpidance/latest",a.endsWith("/")?a:`${a}/`).toString();try{let a=await b(c,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(12e3)});if(!a.ok)return null;let d=await a.json();return"string"==typeof d.version&&d.version.trim()?d.version.trim():null}catch{return null}}async function t(a=o(),b=Date.now(),c=globalThis.fetch.bind(globalThis),d=!1){let e=globalThis.__piPidanceLatestCache;if(!d&&e&&b-e.ts<18e5&&e.latest)return e.latest;let f=await s(a,c);return f&&(globalThis.__piPidanceLatestCache={latest:f,ts:b}),f}async function u(a){let b,c=a?.cwd??process.cwd(),d=a?.env??process.env,g=o(d),i=function(a=process.cwd()){for(let b of[(0,f.join)(a,"package.json"),(0,f.join)(a,"node_modules","@henlii","pidance","package.json")])try{if(!(0,e.existsSync)(b))continue;let a=JSON.parse((0,e.readFileSync)(b,"utf8"));if(a.name===h&&"string"==typeof a.version&&a.version.trim())return a.version.trim();let c=a.dependencies?.[h];if("string"==typeof c&&c.trim()&&!c.startsWith("file:"))return c.trim().replace(/^[\^~>=<\s]+/,"")}catch{}let b="0.2.7".trim();return b&&"unknown"!==b?b:"0.0.0"}(c),{mode:j,installRoot:k}=function(a=process.cwd(),b=process.env){let c=function(a,b=process.env){let c=b.PIDANCE_INSTALL_ROOT?.trim();if(c)try{return(0,f.resolve)(c)}catch{return null}let d=a;try{d=(0,e.realpathSync)(a)}catch{d=(0,f.resolve)(a)}let g=d.replace(/\\/g,"/"),h=/^(.*)\/releases\/[^/]+\/node_modules\/@henlii\/pidance$/.exec(g);if(h)return(0,f.resolve)(h[1]);let i=/^(.*)\/releases\/[^/]+$/.exec(g);return i?(0,f.resolve)(i[1]):null}(a,b);if(c)return{mode:"formal-install",installRoot:c};try{let b=(0,f.join)(a,"package.json");if((0,e.existsSync)(b)&&JSON.parse((0,e.readFileSync)(b,"utf8")).name===h)return{mode:"workspace",installRoot:null}}catch{}return{mode:"unknown",installRoot:null}}(c,d),l=await t(g,a?.now,a?.fetchImpl,a?.forceRefresh===!0),m=null!=l&&p(l,i)>0,n=function(a=process.env){return"0"!==a.PIDANCE_ALLOW_SELF_UPGRADE}(d),q=n&&"formal-install"===j&&null!=k;return b=l?m?q?`可升级到 ${l}`:"workspace"===j?"当前为工作区/测试部署,仅提示有新版本;请在正式安装位(31415)一键升级":n?"未检测到正式安装目录,无法一键升级":"已禁用自升级(PIDANCE_ALLOW_SELF_UPGRADE=0)":"已是最新版本":"无法从 npm registry 获取最新版本",{currentVersion:i,latestVersion:l,updateAvailable:m,upgradeSupported:q,upgradeMode:j,installRoot:k,packageName:h,registry:g,reason:b,checkedAt:new Date(a?.now??Date.now()).toISOString()}}async function v(a){let b=a?.cwd??process.cwd(),c=a?.env??process.env,d=a?.execFileImpl??g,i=(b,c,d)=>{try{a?.onProgress?.({phase:b,percent:c,message:d})}catch{}};i("preparing",5,"准备升级…");let k=await u({cwd:b,env:c,fetchImpl:a?.fetchImpl});if(!k.upgradeSupported||!k.installRoot)return i("error",100,k.reason),{ok:!1,status:"not_supported",currentVersion:k.currentVersion,targetVersion:k.latestVersion,message:k.reason};let l=(a?.targetVersion?.trim()||k.latestVersion||"").trim();if(!l)return{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:null,message:"无目标版本"};if(0>=p(l,k.currentVersion)&&!a?.targetVersion)return i("done",100,"已是最新版本"),{ok:!0,status:"already_latest",currentVersion:k.currentVersion,targetVersion:l,message:"已是最新版本"};if(!/^\d+\.\d+\.\d+(?:-[\w.-]+)?$/.test(l))return{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:l,message:"非法版本号"};let m=k.installRoot,o=(0,f.join)(m,"releases",l),q=k.registry;try{i("preparing",12,`创建发布目录 ${l}…`),(0,e.mkdirSync)(o,{recursive:!0});let b={name:`pidance-${l}`,version:"1.0.0",private:!0,dependencies:{[h]:l}};(0,e.writeFileSync)((0,f.join)(o,"package.json"),`${JSON.stringify(b,null,2)}
2
- `,"utf8"),i("downloading",20,"正在从 npm 下载包…"),await d("npm",["install","--omit=dev",`--registry=${q}`,"--no-fund","--no-audit"],{cwd:o,env:{...c,npm_config_registry:q},timeout:6e5,maxBuffer:8388608}),i("installing",82,"校验安装结果…");let g=(0,f.join)(o,"node_modules","@henlii","pidance","package.json");if(!(0,e.existsSync)(g))throw Error("安装后未找到 @henlii/pidance 包");let p=JSON.parse((0,e.readFileSync)(g,"utf8"));if(p.version!==l)throw Error(`安装版本不符:期望 ${l},实际 ${p.version??"?"}`);i("linking",88,"切换 current 符号链接…");let s=(0,f.join)(m,"current"),t=(0,f.join)(m,`.current-tmp-${process.pid}`);try{(0,e.existsSync)(t)&&(0,e.rmSync)(t,{force:!0,recursive:!0})}catch{}(0,e.symlinkSync)(o,t),(0,e.renameSync)(t,s);let u=!1;if(a?.restartService!==!1&&"1"!==c.PIDANCE_SKIP_SERVICE_RESTART){i("restarting",94,"正在重启服务…");let a=await n({execFileImpl:d,env:c});if(u=a.restarted,!a.restarted){let b={ok:!0,status:"upgraded",currentVersion:k.currentVersion,targetVersion:l,message:`已切换到 ${l},但${a.message??`重启 ${j} 失败`}`,restarted:!1};try{r(m,[l,k.currentVersion])}catch{}return i("done",100,b.message),b}}try{r(m,[l,k.currentVersion])}catch{}let v={ok:!0,status:"upgraded",currentVersion:k.currentVersion,targetVersion:l,message:u?`已升级到 ${l} 并重启服务`:`已升级到 ${l}(未重启服务)`,restarted:u};return i("done",100,v.message),v}catch(b){let a=b instanceof Error?b.message:String(b);return i("error",100,`升级失败:${a}`),{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:l,message:`升级失败:${a}`}}}},37418:a=>{"use strict";a.exports=require("node:util")},38252:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>E,patchFetch:()=>D,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var d={};c.r(d),c.d(d,{GET:()=>y,dynamic:()=>x});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(31974);let x="force-dynamic";async function y(){try{let a=await (0,w.ex)({forceRefresh:!0});return v.NextResponse.json(a,{headers:{"Cache-Control":"no-store"}})}catch(b){let a=b instanceof Error?b.message:String(b);return v.NextResponse.json({error:a},{status:500})}}let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/update/check/route",pathname:"/api/update/check",filename:"route",bundlePath:"app/api/update/check/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/update/check/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function D(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function E(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/check/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="/index"===(L=F)?"/":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}}},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")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},89477:a=>{"use strict";a.exports=require("node:fs")},95398:a=>{"use strict";a.exports=require("node:child_process")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=38252));module.exports=c})();
1
+ (()=>{var a={};a.id=5408,a.ids=[5408],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")},31974:(a,b,c)=>{"use strict";c.d(b,{ex:()=>u,i7:()=>v});var d=c(95398),e=c(89477),f=c(86697);let g=(0,c(37418).promisify)(d.execFile),h="@henlii/pidance",i="https://registry.npmjs.org/",j="pidance.service";function k(a,b){return 0===b||"active"===a.trim()}function l(a){if(a.restartOk||a.laterActive)return{restarted:!0};let b=a.restartError?.trim();return{restarted:!1,message:b?`重启 ${j} 失败:${b}`:`重启 ${j} 失败`}}async function m(a,b){try{let c=await a("systemctl",["is-active",j],{timeout:1e4,env:b});return k(String(c.stdout??""),0)}catch(a){return k(function(a){if(a&&"object"==typeof a&&"stdout"in a){let b=a.stdout;if("string"==typeof b)return b;if(Buffer.isBuffer(b))return b.toString("utf8")}return""}(a),function(a){if(a&&"object"==typeof a&&"code"in a){let b=a.code;if("number"==typeof b&&Number.isFinite(b))return b}return null}(a))}}async function n(a){let b=a.execFileImpl??g,c=a.env??process.env,d=a.sleepImpl??(a=>new Promise(b=>{setTimeout(b,a)})),e=a.now??Date.now;try{return await b("systemctl",["restart",j],{timeout:21e4,env:c}),l({restartOk:!0,laterActive:!1})}catch(g){let a=g instanceof Error?g.message:String(g),f=e();if(await m(b,c))return l({restartOk:!1,restartError:a,laterActive:!0});for(;e()-f<6e4;)if(await d(1500),await m(b,c))return l({restartOk:!1,restartError:a,laterActive:!0});return l({restartOk:!1,restartError:a,laterActive:!1})}}function o(a=process.env){let b=(a.PIDANCE_NPM_REGISTRY||a.npm_config_registry||i).trim();return b?b.endsWith("/")?b:`${b}/`:i}function p(a,b){let c=q(a),d=q(b);if(!c||!d)return 0;for(let a=0;a<3;a++){if(c.core[a]>d.core[a])return 1;if(c.core[a]<d.core[a])return -1}return null===c.pre&&null===d.pre?0:null===c.pre?1:null===d.pre||c.pre<d.pre?-1:+(c.pre>d.pre)}function q(a){let b=a.trim().replace(/^v/i,""),c=/^(\d+)\.(\d+)\.(\d+)(?:-([0-9A-Za-z.-]+))?(?:\+[0-9A-Za-z.-]+)?$/.exec(b);return c?{core:[Number(c[1]),Number(c[2]),Number(c[3])],pre:c[4]??null}:null}function r(a,b){let c=(0,f.join)(a,"releases");if(!(0,e.existsSync)(c))return[];let d=new Set(b.map(a=>a.trim()).filter(Boolean));try{let b=(0,e.realpathSync)((0,f.join)(a,"current")),c=/\/releases\/([^/]+)$/.exec(b.replace(/\\/g,"/"));c&&d.add(c[1])}catch{}let g=c;try{g=(0,e.realpathSync)(c)}catch{return[]}let h=[];for(let a of(0,e.readdirSync)(c,{withFileTypes:!0})){let b;if(!a.isDirectory()||a.isSymbolicLink()||"."===a.name||".."===a.name||a.name.includes("/")||a.name.includes("\\")||d.has(a.name))continue;let i=(0,f.join)(c,a.name);try{b=(0,e.realpathSync)(i)}catch{continue}let j=g.endsWith("/")?g:`${g}/`;(b===g||b.startsWith(j))&&((0,e.rmSync)(i,{recursive:!0,force:!0}),h.push(a.name))}return h}async function s(a=o(),b=globalThis.fetch.bind(globalThis)){let c=new URL("@henlii%2Fpidance/latest",a.endsWith("/")?a:`${a}/`).toString();try{let a=await b(c,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(12e3)});if(!a.ok)return null;let d=await a.json();return"string"==typeof d.version&&d.version.trim()?d.version.trim():null}catch{return null}}async function t(a=o(),b=Date.now(),c=globalThis.fetch.bind(globalThis),d=!1){let e=globalThis.__piPidanceLatestCache;if(!d&&e&&b-e.ts<18e5&&e.latest)return e.latest;let f=await s(a,c);return f&&(globalThis.__piPidanceLatestCache={latest:f,ts:b}),f}async function u(a){let b,c=a?.cwd??process.cwd(),d=a?.env??process.env,g=o(d),i=function(a=process.cwd()){for(let b of[(0,f.join)(a,"package.json"),(0,f.join)(a,"node_modules","@henlii","pidance","package.json")])try{if(!(0,e.existsSync)(b))continue;let a=JSON.parse((0,e.readFileSync)(b,"utf8"));if(a.name===h&&"string"==typeof a.version&&a.version.trim())return a.version.trim();let c=a.dependencies?.[h];if("string"==typeof c&&c.trim()&&!c.startsWith("file:"))return c.trim().replace(/^[\^~>=<\s]+/,"")}catch{}let b="0.2.9".trim();return b&&"unknown"!==b?b:"0.0.0"}(c),{mode:j,installRoot:k}=function(a=process.cwd(),b=process.env){let c=function(a,b=process.env){let c=b.PIDANCE_INSTALL_ROOT?.trim();if(c)try{return(0,f.resolve)(c)}catch{return null}let d=a;try{d=(0,e.realpathSync)(a)}catch{d=(0,f.resolve)(a)}let g=d.replace(/\\/g,"/"),h=/^(.*)\/releases\/[^/]+\/node_modules\/@henlii\/pidance$/.exec(g);if(h)return(0,f.resolve)(h[1]);let i=/^(.*)\/releases\/[^/]+$/.exec(g);return i?(0,f.resolve)(i[1]):null}(a,b);if(c)return{mode:"formal-install",installRoot:c};try{let b=(0,f.join)(a,"package.json");if((0,e.existsSync)(b)&&JSON.parse((0,e.readFileSync)(b,"utf8")).name===h)return{mode:"workspace",installRoot:null}}catch{}return{mode:"unknown",installRoot:null}}(c,d),l=await t(g,a?.now,a?.fetchImpl,a?.forceRefresh===!0),m=null!=l&&p(l,i)>0,n=function(a=process.env){return"0"!==a.PIDANCE_ALLOW_SELF_UPGRADE}(d),q=n&&"formal-install"===j&&null!=k;return b=l?m?q?`可升级到 ${l}`:"workspace"===j?"当前为工作区/测试部署,仅提示有新版本;请在正式安装位(31415)一键升级":n?"未检测到正式安装目录,无法一键升级":"已禁用自升级(PIDANCE_ALLOW_SELF_UPGRADE=0)":"已是最新版本":"无法从 npm registry 获取最新版本",{currentVersion:i,latestVersion:l,updateAvailable:m,upgradeSupported:q,upgradeMode:j,installRoot:k,packageName:h,registry:g,reason:b,checkedAt:new Date(a?.now??Date.now()).toISOString()}}async function v(a){let b=a?.cwd??process.cwd(),c=a?.env??process.env,d=a?.execFileImpl??g,i=(b,c,d)=>{try{a?.onProgress?.({phase:b,percent:c,message:d})}catch{}};i("preparing",5,"准备升级…");let k=await u({cwd:b,env:c,fetchImpl:a?.fetchImpl});if(!k.upgradeSupported||!k.installRoot)return i("error",100,k.reason),{ok:!1,status:"not_supported",currentVersion:k.currentVersion,targetVersion:k.latestVersion,message:k.reason};let l=(a?.targetVersion?.trim()||k.latestVersion||"").trim();if(!l)return{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:null,message:"无目标版本"};if(0>=p(l,k.currentVersion)&&!a?.targetVersion)return i("done",100,"已是最新版本"),{ok:!0,status:"already_latest",currentVersion:k.currentVersion,targetVersion:l,message:"已是最新版本"};if(!/^\d+\.\d+\.\d+(?:-[\w.-]+)?$/.test(l))return{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:l,message:"非法版本号"};let m=k.installRoot,o=(0,f.join)(m,"releases",l),q=k.registry;try{i("preparing",12,`创建发布目录 ${l}…`),(0,e.mkdirSync)(o,{recursive:!0});let b={name:`pidance-${l}`,version:"1.0.0",private:!0,dependencies:{[h]:l}};(0,e.writeFileSync)((0,f.join)(o,"package.json"),`${JSON.stringify(b,null,2)}
2
+ `,"utf8"),i("downloading",20,"正在从 npm 下载包…"),await d("npm",["install","--omit=dev",`--registry=${q}`,"--no-fund","--no-audit"],{cwd:o,env:{...c,npm_config_registry:q},timeout:6e5,maxBuffer:8388608}),i("installing",82,"校验安装结果…");let g=(0,f.join)(o,"node_modules","@henlii","pidance","package.json");if(!(0,e.existsSync)(g))throw Error("安装后未找到 @henlii/pidance 包");let p=JSON.parse((0,e.readFileSync)(g,"utf8"));if(p.version!==l)throw Error(`安装版本不符:期望 ${l},实际 ${p.version??"?"}`);i("linking",88,"切换 current 符号链接…");let s=(0,f.join)(m,"current"),t=(0,f.join)(m,`.current-tmp-${process.pid}`);try{(0,e.existsSync)(t)&&(0,e.rmSync)(t,{force:!0,recursive:!0})}catch{}(0,e.symlinkSync)(o,t),(0,e.renameSync)(t,s);let u=!1;if(a?.restartService!==!1&&"1"!==c.PIDANCE_SKIP_SERVICE_RESTART){i("restarting",94,"正在重启服务…");let a=await n({execFileImpl:d,env:c});if(u=a.restarted,!a.restarted){let b={ok:!0,status:"upgraded",currentVersion:k.currentVersion,targetVersion:l,message:`已切换到 ${l},但${a.message??`重启 ${j} 失败`}`,restarted:!1};try{r(m,[l,k.currentVersion])}catch{}return i("done",100,b.message),b}}try{r(m,[l,k.currentVersion])}catch{}let v={ok:!0,status:"upgraded",currentVersion:k.currentVersion,targetVersion:l,message:u?`已升级到 ${l} 并重启服务`:`已升级到 ${l}(未重启服务)`,restarted:u};return i("done",100,v.message),v}catch(b){let a=b instanceof Error?b.message:String(b);return i("error",100,`升级失败:${a}`),{ok:!1,status:"error",currentVersion:k.currentVersion,targetVersion:l,message:`升级失败:${a}`}}}},33696:(a,b,c)=>{"use strict";c.r(b),c.d(b,{handler:()=>E,patchFetch:()=>D,routeModule:()=>z,serverHooks:()=>C,workAsyncStorage:()=>A,workUnitAsyncStorage:()=>B});var d={};c.r(d),c.d(d,{GET:()=>y,dynamic:()=>x});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(31974);let x="force-dynamic";async function y(){try{let a=await (0,w.ex)({forceRefresh:!0});return v.NextResponse.json(a,{headers:{"Cache-Control":"no-store"}})}catch(b){let a=b instanceof Error?b.message:String(b);return v.NextResponse.json({error:a},{status:500})}}let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/update/check/route",pathname:"/api/update/check",filename:"route",bundlePath:"app/api/update/check/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/update/check/route.ts",nextConfigOutput:"",userland:d,...{}}),{workAsyncStorage:A,workUnitAsyncStorage:B,serverHooks:C}=z;function D(){return(0,g.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:B})}async function E(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/check/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="/index"===(L=F)?"/":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}}},37418:a=>{"use strict";a.exports=require("node:util")},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")},78335:()=>{},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{"use strict";a.exports=require("node:path")},89477:a=>{"use strict";a.exports=require("node:fs")},95398:a=>{"use strict";a.exports=require("node:child_process")},96487:()=>{}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813],()=>b(b.s=33696));module.exports=c})();
@@ -1 +1 @@
1
- "use strict";(()=>{var a={};a.id=4016,a.ids=[4016],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},42819:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>m,GET:()=>k,POST:()=>l});var e=c(23211),f=c(29021),g=c(24923),h=c(80547),i=a([h]);async function j(a){let b=await (0,h.mc)();return(0,h.A$)(a,b)?null:e.NextResponse.json({error:"Access denied"},{status:403})}async function k(a){try{let b=new URL(a.url).searchParams.get("cwd");if(!b)return e.NextResponse.json({error:"cwd is required"},{status:400});let c=await j(b);if(c)return c;let d=await (0,g.KI)(b),i=[],k=!0;try{i=await (0,g.P9)((0,f.existsSync)(b)?b:d.projectRoot)}catch{k=!1}for(let a of i)(0,h.wz)(a.path);return e.NextResponse.json({projectRoot:d.projectRoot,isGit:k,isTopLevel:d.isTopLevel,worktrees:i})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function l(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.branch||"string"!=typeof b.branch)return e.NextResponse.json({error:"branch is required"},{status:400});let c=await j(b.cwd);if(c)return c;if(!(0,f.existsSync)(b.cwd))return e.NextResponse.json({error:`Directory does not exist: ${b.cwd}`},{status:400});let d=await (0,g.l)(b.cwd,b.branch);return e.NextResponse.json(d)}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:400})}}async function m(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.path||"string"!=typeof b.path)return e.NextResponse.json({error:"path is required"},{status:400});let c=await j(b.cwd);if(c)return c;return await (0,g.IL)(b.cwd,b.path,!0===b.force),e.NextResponse.json({success:!0})}catch(c){let a=c instanceof Error?c.message:String(c),b=/contains modified or untracked files|is dirty/i.test(a);return e.NextResponse.json({error:a,dirty:b},{status:b?409:400})}}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68118:(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(42819),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/worktrees/route",pathname:"/api/worktrees",filename:"route",bundlePath:"app/api/worktrees/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/worktrees/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/worktrees/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)}})},69835:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Lj:()=>p,Md:()=>o,eq:()=>l,ki:()=>n,qo:()=>k,uF:()=>m});var e=c(29021),f=c(33873),g=c(55511),h=c(60396),i=c(80547),j=a([i]);i=(j.then?(await j)():j)[0];let o=0x1900000,p=0x6400000;function k(a=(0,h.$M)()){return(0,i.Nw)((0,f.join)(a,"pidance-attachments"))}function l(a=(0,h.$M)()){let b=k(a);return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0,mode:448}),(0,i.wz)(b),b}function m(a){let b=(a.replace(/\\/g,"/").split("/").pop()??"file").replace(/\0/g,"").replace(/^\.+/,"").trim()||"file";if(b.length<=180)return b;let c=b.lastIndexOf(".");if(c>0&&b.length-c<=20){let a=b.slice(c);return b.slice(0,180-a.length)+a}return b.slice(0,180)}function n(a,b,c=(0,h.$M)()){let d=l(c),j=function(a,b=Date.now()){let c=m(a),d=new Date(b).toISOString().replace(/[:.]/g,"-"),e=(0,g.randomUUID)().slice(0,8);return`${d}_${e}_${c}`}(a),k=(0,f.join)(d,j);return(0,e.writeFileSync)(k,b,{flag:"wx",mode:384}),{path:(0,i.Nw)(k),name:m(a),storedName:j,size:b.length}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>q,Nw:()=>j.Nw,mc:()=>p,uK:()=>o,wz:()=>k.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(60396),j=c(50593),k=c(25252),l=c(69835),m=c(40402),n=a([l,m]);[l,m]=n.then?(await n)():n;let r=/^[a-zA-Z]:[\\/]/;function o(a){return r.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function p(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,m.dQ)(),d=function(a){let b=new Set;for(let c of a)!0!==c.readOnly&&c.cwd&&b.add((0,j.Nw)(c.cwd)),!0!==c.readOnly&&c.projectRoot&&b.add((0,j.Nw)(c.projectRoot));return b}(c);try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^pi-cwd-\d{8}$/.test(a)&&d.add((0,j.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,k.HM)())d.add(a);try{d.add((0,l.qo)((0,i.$M)()))}catch{}return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function q(a,b){for(let c of b){let b=o(a)||o(c),d=b?h().win32:h(),e=b?"\\":h().sep,f=d.resolve(a),g=d.resolve(c),i=b?f.toLowerCase():f,j=b?g.toLowerCase():g,k=j.endsWith(e)?j:j+e;if(i===j||i.startsWith(k))return!0}return!1}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582],()=>b(b.s=68118));module.exports=c})();
1
+ "use strict";(()=>{var a={};a.id=4016,a.ids=[4016],a.modules={261:a=>{a.exports=require("next/dist/shared/lib/router/utils/app-paths")},716:a=>{a.exports=require("node:crypto")},3295:a=>{a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},4984:a=>{a.exports=require("readline")},10846:a=>{a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},21820:a=>{a.exports=require("os")},28354:a=>{a.exports=require("util")},29021:a=>{a.exports=require("fs")},29294:a=>{a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{a.exports=require("path")},42819:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{DELETE:()=>m,GET:()=>k,POST:()=>l});var e=c(23211),f=c(29021),g=c(24923),h=c(80547),i=a([h]);async function j(a){let b=await (0,h.mc)();return(0,h.A$)(a,b)?null:e.NextResponse.json({error:"Access denied"},{status:403})}async function k(a){try{let b=new URL(a.url).searchParams.get("cwd");if(!b)return e.NextResponse.json({error:"cwd is required"},{status:400});let c=await j(b);if(c)return c;let d=await (0,g.KI)(b),i=[],k=!0;try{i=await (0,g.P9)((0,f.existsSync)(b)?b:d.projectRoot)}catch{k=!1}for(let a of i)(0,h.wz)(a.path);return e.NextResponse.json({projectRoot:d.projectRoot,isGit:k,isTopLevel:d.isTopLevel,worktrees:i})}catch(a){return e.NextResponse.json({error:String(a)},{status:500})}}async function l(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.branch||"string"!=typeof b.branch)return e.NextResponse.json({error:"branch is required"},{status:400});let c=await j(b.cwd);if(c)return c;if(!(0,f.existsSync)(b.cwd))return e.NextResponse.json({error:`Directory does not exist: ${b.cwd}`},{status:400});let d=await (0,g.l)(b.cwd,b.branch);return e.NextResponse.json(d)}catch(b){let a=b instanceof Error?b.message:String(b);return e.NextResponse.json({error:a},{status:400})}}async function m(a){try{let b=await a.json();if(!b.cwd||"string"!=typeof b.cwd)return e.NextResponse.json({error:"cwd is required"},{status:400});if(!b.path||"string"!=typeof b.path)return e.NextResponse.json({error:"path is required"},{status:400});let c=await j(b.cwd);if(c)return c;return await (0,g.IL)(b.cwd,b.path,!0===b.force),e.NextResponse.json({success:!0})}catch(c){let a=c instanceof Error?c.message:String(c),b=/contains modified or untracked files|is dirty/i.test(a);return e.NextResponse.json({error:a,dirty:b},{status:b?409:400})}}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})},44870:a=>{a.exports=require("next/dist/compiled/next-server/app-route.runtime.prod.js")},55511:a=>{a.exports=require("crypto")},62126:(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(42819),w=a([v]);v=(w.then?(await w)():w)[0];let z=new e.AppRouteRouteModule({definition:{kind:f.RouteKind.APP_ROUTE,page:"/api/worktrees/route",pathname:"/api/worktrees",filename:"route",bundlePath:"app/api/worktrees/route"},distDir:".next",relativeProjectDir:"",resolvedPagePath:"/tmp/pidance-release-build/app/api/worktrees/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/worktrees/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)}})},62228:a=>{a.exports=require("node:os")},63033:a=>{a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},69835:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Lj:()=>p,Md:()=>o,eq:()=>l,ki:()=>n,qo:()=>k,uF:()=>m});var e=c(29021),f=c(33873),g=c(55511),h=c(60396),i=c(80547),j=a([i]);i=(j.then?(await j)():j)[0];let o=0x1900000,p=0x6400000;function k(a=(0,h.$M)()){return(0,i.Nw)((0,f.join)(a,"pidance-attachments"))}function l(a=(0,h.$M)()){let b=k(a);return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0,mode:448}),(0,i.wz)(b),b}function m(a){let b=(a.replace(/\\/g,"/").split("/").pop()??"file").replace(/\0/g,"").replace(/^\.+/,"").trim()||"file";if(b.length<=180)return b;let c=b.lastIndexOf(".");if(c>0&&b.length-c<=20){let a=b.slice(c);return b.slice(0,180-a.length)+a}return b.slice(0,180)}function n(a,b,c=(0,h.$M)()){let d=l(c),j=function(a,b=Date.now()){let c=m(a),d=new Date(b).toISOString().replace(/[:.]/g,"-"),e=(0,g.randomUUID)().slice(0,8);return`${d}_${e}_${c}`}(a),k=(0,f.join)(d,j);return(0,e.writeFileSync)(k,b,{flag:"wx",mode:384}),{path:(0,i.Nw)(k),name:m(a),storedName:j,size:b.length}}d()}catch(a){d(a)}})},75430:a=>{a.exports=import("@earendil-works/pi-coding-agent")},79646:a=>{a.exports=require("child_process")},79748:a=>{a.exports=require("fs/promises")},80547:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{A$:()=>q,Nw:()=>j.Nw,mc:()=>p,uK:()=>o,wz:()=>k.wz});var e=c(29021),f=c(21820),g=c(33873),h=c.n(g),i=c(60396),j=c(50593),k=c(25252),l=c(69835),m=c(40402),n=a([l,m]);[l,m]=n.then?(await n)():n;let r=/^[a-zA-Z]:[\\/]/;function o(a){return r.test(a)||a.startsWith("\\\\")||a.startsWith("//")}async function p(){let a=Date.now(),b=globalThis.__piAllowedRootsCache;if(b&&b.expiresAt>a)return b.roots;let c=await (0,m.dQ)(),d=function(a){let b=new Set;for(let c of a)!0!==c.readOnly&&c.cwd&&b.add((0,j.Nw)(c.cwd)),!0!==c.readOnly&&c.projectRoot&&b.add((0,j.Nw)(c.projectRoot));return b}(c);try{for(let a of(0,e.readdirSync)((0,f.homedir)()))/^pi-cwd-\d{8}$/.test(a)&&d.add((0,j.Nw)(h().join((0,f.homedir)(),a)))}catch{}for(let a of(0,k.HM)())d.add(a);try{d.add((0,l.qo)((0,i.$M)()))}catch{}return globalThis.__piAllowedRootsCache={roots:d,expiresAt:a+5e3},d}function q(a,b){for(let c of b){let b=o(a)||o(c),d=b?h().win32:h(),e=b?"\\":h().sep,f=d.resolve(a),g=d.resolve(c),i=b?f.toLowerCase():f,j=b?g.toLowerCase():g,k=j.endsWith(e)?j:j+e;if(i===j||i.startsWith(k))return!0}return!1}d()}catch(a){d(a)}})},86439:a=>{a.exports=require("next/dist/shared/lib/no-fallback-error.external")},86697:a=>{a.exports=require("node:path")},89477:a=>{a.exports=require("node:fs")}};var b=require("../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,1813,5582],()=>b(b.s=62126));module.exports=c})();