gerege-cli 0.26.5 → 0.26.6

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 (237) hide show
  1. package/README.md +8 -8
  2. package/chunks/{MaxSizedBox-VMVLMS4X.js → MaxSizedBox-QCIXIS4P.js} +1 -1
  3. package/chunks/{StandaloneSessionPicker-UNORCVYY.js → StandaloneSessionPicker-BAFAIRT7.js} +1 -1
  4. package/chunks/{acp-subagent-executor-623ZUTJT.js → acp-subagent-executor-TPVXURLW.js} +1 -1
  5. package/chunks/{acpAgent-MTTDTK2C.js → acpAgent-67UN66PB.js} +3 -3
  6. package/chunks/{advisor-ANUGICJ5.js → advisor-SAXMI4QZ.js} +1 -1
  7. package/chunks/{agent-GNCQDICJ.js → agent-KV7BXY6C.js} +1 -1
  8. package/chunks/{agent-headless-OPUXAXQM.js → agent-headless-FQX3JGG6.js} +1 -1
  9. package/chunks/{agent-host-client-K6GRPTFD.js → agent-host-client-L5EHC4AC.js} +1 -1
  10. package/chunks/{agent-host-connections-MF3YBZU2.js → agent-host-connections-EDBMCVQF.js} +1 -1
  11. package/chunks/{anthropicContentGenerator-OK4PFE5Y.js → anthropicContentGenerator-V7TX2NXP.js} +1 -1
  12. package/chunks/{autofix-pr-MABTGEHZ.js → autofix-pr-WP34NYHL.js} +1 -1
  13. package/chunks/{batch-V2NJT3M5.js → batch-XFVQ4BLM.js} +1 -1
  14. package/chunks/{bridge-BJQ627CX.js → bridge-AE7AFEXB.js} +1 -1
  15. package/chunks/{channel-settings-store-4JMCI4UR.js → channel-settings-store-X63P5OVT.js} +1 -1
  16. package/chunks/{chunk-ZN57TOVA.js → chunk-2DU2WMTL.js} +1 -1
  17. package/chunks/{chunk-Z5XENA4A.js → chunk-2JGTWRZJ.js} +8 -7
  18. package/chunks/{chunk-MTW3A3KT.js → chunk-2LWJGXTW.js} +1 -1
  19. package/chunks/{chunk-OCBJCZC2.js → chunk-2N3NBTYJ.js} +1 -1
  20. package/chunks/{chunk-WI4UMN3Q.js → chunk-2TAJ5STJ.js} +1 -1
  21. package/chunks/{chunk-EIILQ6KT.js → chunk-32XHDDIA.js} +1 -1
  22. package/chunks/{chunk-FNXO5KWB.js → chunk-34HC2AXI.js} +2 -2
  23. package/chunks/{chunk-2X3UF2CF.js → chunk-3W32X2DH.js} +1 -1
  24. package/chunks/{chunk-CKZRJP4F.js → chunk-4ME3BUJK.js} +1 -1
  25. package/chunks/{chunk-NVSKOSFG.js → chunk-4NDJKNN6.js} +1 -1
  26. package/chunks/{chunk-BRPJ5EHA.js → chunk-5EXL4TKQ.js} +1 -1
  27. package/chunks/{chunk-3XBJYUWP.js → chunk-65ME4BOH.js} +1 -1
  28. package/chunks/{chunk-TQTIEK2W.js → chunk-7453BHJO.js} +1 -1
  29. package/chunks/{chunk-HSYBIGMS.js → chunk-76FSYQTG.js} +1 -1
  30. package/chunks/{chunk-FNB3DPQZ.js → chunk-7RNOS7R4.js} +1 -1
  31. package/chunks/{chunk-H57IX45A.js → chunk-AEKEZRIU.js} +1 -1
  32. package/chunks/{chunk-CXGGC4NO.js → chunk-AEZYXPFS.js} +1 -1
  33. package/chunks/{chunk-NGOIJH7K.js → chunk-AFO5ER23.js} +1 -1
  34. package/chunks/{chunk-UY2ET2AL.js → chunk-AYVCT5FF.js} +1 -1
  35. package/chunks/{chunk-QOYRDEXR.js → chunk-B37YY4XU.js} +1 -1
  36. package/chunks/{chunk-IDUGQMTP.js → chunk-BAUMVH4Q.js} +1 -1
  37. package/chunks/{chunk-CAPG7UVH.js → chunk-BCI62WSL.js} +1 -1
  38. package/chunks/{chunk-USJFJZ23.js → chunk-BGELKSQ4.js} +1 -1
  39. package/chunks/{chunk-6X73W4TL.js → chunk-BHIDG6VZ.js} +1 -1
  40. package/chunks/{chunk-26ISBUM7.js → chunk-BPFFRPWE.js} +6 -6
  41. package/chunks/{chunk-YGHM5CDT.js → chunk-BQZF3UKI.js} +1 -1
  42. package/chunks/{chunk-3NQESE5K.js → chunk-CBE6ZIHU.js} +1 -1
  43. package/chunks/{chunk-DEMXCA3K.js → chunk-CF6SZJNP.js} +1 -1
  44. package/chunks/{chunk-2VCDJ6UF.js → chunk-CGDFZEER.js} +1 -1
  45. package/chunks/{chunk-3WQPUP5U.js → chunk-CUP2TNJK.js} +1 -1
  46. package/chunks/{chunk-2IGE2K5V.js → chunk-DA6LOBSB.js} +1 -1
  47. package/chunks/{chunk-HFV6CQWE.js → chunk-EFIRES46.js} +1 -1
  48. package/chunks/{chunk-E5YRAQXM.js → chunk-EKRUF347.js} +1 -1
  49. package/chunks/{chunk-KN27BFXM.js → chunk-ELDZ4MNL.js} +1 -1
  50. package/chunks/{chunk-ADTFKUH2.js → chunk-ET5M5WFN.js} +1 -1
  51. package/chunks/{chunk-IBYFSHBB.js → chunk-EXIFPXMB.js} +1 -1
  52. package/chunks/{chunk-IA4K4PGK.js → chunk-EYPLBTMI.js} +1 -1
  53. package/chunks/{chunk-DTTC4ZKY.js → chunk-FEP6W4NJ.js} +1 -1
  54. package/chunks/{chunk-FHBGTZ4K.js → chunk-FKL3V5BO.js} +1 -1
  55. package/chunks/{chunk-Q5E5SOY2.js → chunk-FKZ46GKL.js} +1 -1
  56. package/chunks/{chunk-OPYGNTZP.js → chunk-FYBJGRX7.js} +1 -1
  57. package/chunks/{chunk-FPZPCZFS.js → chunk-G6DALGGS.js} +1 -1
  58. package/chunks/{chunk-3Y6LSWEW.js → chunk-GBSRWT7J.js} +1 -1
  59. package/chunks/{chunk-SMYBY353.js → chunk-GHIFIXNX.js} +1 -1
  60. package/chunks/{chunk-DE53B2R7.js → chunk-GRAECADD.js} +1 -1
  61. package/chunks/{chunk-UJYOILZR.js → chunk-GSPGIGO5.js} +3 -3
  62. package/chunks/{chunk-5UZT4SXG.js → chunk-H3IR3GIE.js} +1 -1
  63. package/chunks/{chunk-ADZI3OFT.js → chunk-HOG66S6K.js} +1 -1
  64. package/chunks/{chunk-WB34KMOT.js → chunk-HTAUIJB4.js} +1 -1
  65. package/chunks/{chunk-MPAR4JBP.js → chunk-I6PUY2T3.js} +1 -1
  66. package/chunks/{chunk-5ZQWQ3RK.js → chunk-IZ5MWA6E.js} +1 -1
  67. package/chunks/{chunk-7IERHQ63.js → chunk-JEDL4IKF.js} +1 -1
  68. package/chunks/{chunk-RVJJFDF3.js → chunk-JH3V5SPA.js} +1 -1
  69. package/chunks/{chunk-SELRSZFK.js → chunk-JRTOPEM3.js} +1 -1
  70. package/chunks/{chunk-SQQORHMS.js → chunk-JWNKPINR.js} +1 -1
  71. package/chunks/{chunk-55RVKT4O.js → chunk-KJGRCIVY.js} +1 -1
  72. package/chunks/{chunk-GSOBASYW.js → chunk-KZNYALFU.js} +1 -1
  73. package/chunks/{chunk-FDUXQAGW.js → chunk-LBLLWAKK.js} +1 -1
  74. package/chunks/{chunk-ZSVSRF4C.js → chunk-LT3J74BZ.js} +1 -1
  75. package/chunks/{chunk-AMTFJVDD.js → chunk-LTE4N6L3.js} +1 -1
  76. package/chunks/{chunk-F26LTWDZ.js → chunk-M6KB5RVD.js} +1 -1
  77. package/chunks/{chunk-2PY7R7GG.js → chunk-MGATL4OA.js} +1 -1
  78. package/chunks/{chunk-KGJ47CI5.js → chunk-MPVQDYPH.js} +1 -1
  79. package/chunks/{chunk-BBOJUFMW.js → chunk-MTDBCIDA.js} +1 -1
  80. package/chunks/{chunk-ZYTG6R7S.js → chunk-MYV7GY3H.js} +1 -1
  81. package/chunks/{chunk-4GC5HJZO.js → chunk-N7PWZBXV.js} +1 -1
  82. package/chunks/{chunk-2NOMOJWE.js → chunk-NA4ZF2FE.js} +2 -2
  83. package/chunks/{chunk-7MTBINFX.js → chunk-NEKPQLFY.js} +2 -2
  84. package/chunks/{chunk-ABJGFEES.js → chunk-NO7VTKRL.js} +1 -1
  85. package/chunks/{chunk-OHXQYU6S.js → chunk-NONBHCXP.js} +1 -1
  86. package/chunks/{chunk-ZOBX6C7E.js → chunk-NVOI6UDQ.js} +1 -1
  87. package/chunks/{chunk-YLAI26PX.js → chunk-OJ4K62S2.js} +1 -1
  88. package/chunks/{chunk-CCOUFBOY.js → chunk-OK7LBM5G.js} +1 -1
  89. package/chunks/{chunk-POA4NX4N.js → chunk-OOJ2AQT3.js} +1 -1
  90. package/chunks/{chunk-5WLKN3GD.js → chunk-OU7CEG7Q.js} +1 -1
  91. package/chunks/{chunk-4TYTJQWR.js → chunk-P3JEEDQZ.js} +1 -1
  92. package/chunks/{chunk-AQWHCRKY.js → chunk-P62S5JGM.js} +1 -1
  93. package/chunks/{chunk-B6D3KTUK.js → chunk-QDCUR3JB.js} +1 -1
  94. package/chunks/{chunk-XFLLE2J3.js → chunk-RSLTOIG5.js} +2 -2
  95. package/chunks/{chunk-ISGF3BVD.js → chunk-RXN7DUMP.js} +2 -2
  96. package/chunks/{chunk-PN62SUYK.js → chunk-SKGJ26HQ.js} +1 -1
  97. package/chunks/{chunk-62NLMVVT.js → chunk-SP6CQ3MO.js} +1 -1
  98. package/chunks/{chunk-4EQWJTJR.js → chunk-T2YTHAJW.js} +1 -1
  99. package/chunks/{chunk-NO26JN24.js → chunk-T53VMDXH.js} +1 -1
  100. package/chunks/{chunk-X4BFEDWU.js → chunk-T5DKF33F.js} +1 -1
  101. package/chunks/{chunk-KKBOCRPF.js → chunk-TB4AUC2L.js} +1 -1
  102. package/chunks/{chunk-Q6QS5JTK.js → chunk-U3Q72OGV.js} +1 -1
  103. package/chunks/{chunk-FLJLUMQF.js → chunk-UKLXKJKL.js} +1 -1
  104. package/chunks/{chunk-IH2PFVWO.js → chunk-VD2GSW64.js} +1 -1
  105. package/chunks/{chunk-VDRE7U3P.js → chunk-VRKYBH5G.js} +5 -5
  106. package/chunks/{chunk-MOPJNP5I.js → chunk-W2RQIZ6B.js} +1 -1
  107. package/chunks/{chunk-2LLPGSUK.js → chunk-W5Z4BWWA.js} +1 -1
  108. package/chunks/{chunk-CNFA5UUM.js → chunk-W66WWTOP.js} +1 -1
  109. package/chunks/{chunk-C56YJIEI.js → chunk-WGFX3EL3.js} +1 -1
  110. package/chunks/{chunk-6NI33TVK.js → chunk-X2TY7VTY.js} +1 -1
  111. package/chunks/{chunk-FIM7MM25.js → chunk-XISR37DQ.js} +1 -1
  112. package/chunks/{chunk-KDYUZBZC.js → chunk-YH2XRWRF.js} +1 -1
  113. package/chunks/{chunk-UBXLQ6TP.js → chunk-ZENMAISJ.js} +1 -1
  114. package/chunks/{codex-subagent-executor-EK3A2WBH.js → codex-subagent-executor-OLMGVPVS.js} +1 -1
  115. package/chunks/{config-utils-DLOK7OLM.js → config-utils-OWY5G5Y2.js} +1 -1
  116. package/chunks/{contextCommand-AVCUCHQC.js → contextCommand-IXFUZH65.js} +1 -1
  117. package/chunks/{core-runtime-QSS4ZTG6.js → core-runtime-O4LC4NY3.js} +1 -1
  118. package/chunks/{create-sub-session-PNF7QDKC.js → create-sub-session-6F7C3TMT.js} +1 -1
  119. package/chunks/{cron-create-C6JOFIU4.js → cron-create-2422NBSJ.js} +1 -1
  120. package/chunks/{daemon-git-worktree-guard-5XZAZ7D2.js → daemon-git-worktree-guard-EWPQA6NO.js} +1 -1
  121. package/chunks/{daemon-status-provider-MRNELSNJ.js → daemon-status-provider-FAHOXNFW.js} +1 -1
  122. package/chunks/{daemon-trust-policy-26CMW3WY.js → daemon-trust-policy-L3DM6AI5.js} +1 -1
  123. package/chunks/{daemon-trust-policy-monitor-3DWO6NQY.js → daemon-trust-policy-monitor-HNPY5KJ4.js} +1 -1
  124. package/chunks/{deferred-core-runtime-DEC3N46T.js → deferred-core-runtime-JF42NQJK.js} +1 -1
  125. package/chunks/{edit-3HMQPCHN.js → edit-E5LEI2LL.js} +1 -1
  126. package/chunks/{enterPlanMode-QHJF4JXZ.js → enterPlanMode-3COTUV5V.js} +1 -1
  127. package/chunks/{environment-NGIBJWOT.js → environment-XBBIB3VA.js} +1 -1
  128. package/chunks/{errors-MSTGCVGJ.js → errors-LNMQ7TUK.js} +1 -1
  129. package/chunks/{execution-tool-VR4TGOI4.js → execution-tool-QDDKJD2K.js} +1 -1
  130. package/chunks/{execution-worker-EJH7HIE2.js → execution-worker-TXGZRZXE.js} +1 -1
  131. package/chunks/{exitPlanMode-P25OHQJ6.js → exitPlanMode-Z7QEMWPE.js} +1 -1
  132. package/chunks/{fast-path-II433ZDP.js → fast-path-M6K2RACY.js} +1 -1
  133. package/chunks/{glob-4Q6DCT3F.js → glob-N2QT4U7U.js} +1 -1
  134. package/chunks/{goal-tools-FFMAJW6V.js → goal-tools-CUSQD3DG.js} +1 -1
  135. package/chunks/{handleAutoUpdate-QNM26NZK.js → handleAutoUpdate-QF2YQHF6.js} +1 -1
  136. package/chunks/{i18n-L5URVOBB.js → i18n-AGOA6MUI.js} +1 -1
  137. package/chunks/{initializer-NQ2NECYP.js → initializer-FRKYDUSX.js} +1 -1
  138. package/chunks/{installationInfo-BCTXASUM.js → installationInfo-OKA4WXAS.js} +1 -1
  139. package/chunks/{interactive-mod-session-PPTBI37E.js → interactive-mod-session-MWYN5IFK.js} +1 -1
  140. package/chunks/{list-7TE5TUZJ.js → list-DE7VUIR2.js} +1 -1
  141. package/chunks/{llm-BWWKUBBZ.js → llm-N3JGJHYC.js} +4 -4
  142. package/chunks/{llm-content-generator-QOTGPBYC.js → llm-content-generator-VMUBA7OJ.js} +1 -1
  143. package/chunks/{loadedSettingsAdapter-THAGI5M2.js → loadedSettingsAdapter-5C36OZ7N.js} +1 -1
  144. package/chunks/{local-7BTAGV4J.js → local-BE624O3A.js} +1 -1
  145. package/chunks/{local-execution-environment-S3OR4KSC.js → local-execution-environment-OPGM7Y6L.js} +1 -1
  146. package/chunks/{loggingContentGenerator-AXJ5E5RS.js → loggingContentGenerator-2MHAI6JR.js} +1 -1
  147. package/chunks/{loop-wakeup-AJTLMLRX.js → loop-wakeup-BDLATBXH.js} +1 -1
  148. package/chunks/{manage-memory-JHTUVMDJ.js → manage-memory-BBCEIIWB.js} +1 -1
  149. package/chunks/{managed-execution-engine-U6GNJ4U4.js → managed-execution-engine-SRFALTCX.js} +1 -1
  150. package/chunks/{managed-local-serve-P4ZXVRBU.js → managed-local-serve-ICNAS3E6.js} +1 -1
  151. package/chunks/{managed-npm-update-UDUILNR5.js → managed-npm-update-CTL6LH5Z.js} +1 -1
  152. package/chunks/{managed-runtime-attestation-worker-P34ZBNRG.js → managed-runtime-attestation-worker-ZRDWKXCI.js} +1 -1
  153. package/chunks/{managed-runtime-bootstrap-CLMYNPH5.js → managed-runtime-bootstrap-6NTGZXQL.js} +1 -1
  154. package/chunks/{managed-runtime-session-worker-7H7AZJBV.js → managed-runtime-session-worker-RKQBBFR6.js} +1 -1
  155. package/chunks/{managed-runtime-ssh-worker-5KEMC7FD.js → managed-runtime-ssh-worker-FCGV6FSW.js} +1 -1
  156. package/chunks/{managed-session-authority-CFUZ45HT.js → managed-session-authority-C7IW6TJX.js} +1 -1
  157. package/chunks/{mcp-YMG4RVMC.js → mcp-VC4CJPE5.js} +1 -1
  158. package/chunks/{memory-7STURUXK.js → memory-S6OJA3ZD.js} +1 -1
  159. package/chunks/mn-JMS6SWTO.js +8 -0
  160. package/chunks/{model-call-collection-WBWTO3EG.js → model-call-collection-MJZWRQSU.js} +1 -1
  161. package/chunks/{model-configuration-6KCZZSZD.js → model-configuration-SKU6L3QI.js} +1 -1
  162. package/chunks/{modelConfigUtils-Z2EKFSPN.js → modelConfigUtils-TJCB6NXT.js} +1 -1
  163. package/chunks/{monitor-U5E33JO6.js → monitor-M3PNLCYP.js} +1 -1
  164. package/chunks/{nonInteractiveCli-BVCL5I5R.js → nonInteractiveCli-MR7JLAWU.js} +1 -1
  165. package/chunks/{nonInteractiveToolExecutor-B4EUOMYF.js → nonInteractiveToolExecutor-YKA6JMTY.js} +1 -1
  166. package/chunks/{notebook-edit-MXKD5J2C.js → notebook-edit-ENTFB5D7.js} +1 -1
  167. package/chunks/{omni-I5YECZBW.js → omni-6YBX4R6K.js} +1 -1
  168. package/chunks/{openaiContentGenerator-Q5SINFJJ.js → openaiContentGenerator-XRXX33FY.js} +1 -1
  169. package/chunks/{openaiResponsesContentGenerator-R3XCZLZY.js → openaiResponsesContentGenerator-L6ONEHMR.js} +1 -1
  170. package/chunks/{pidfile-UOGUNUTK.js → pidfile-XR4JF2Z6.js} +1 -1
  171. package/chunks/{processUtils-QGQGZHBA.js → processUtils-GQYNJRBJ.js} +1 -1
  172. package/chunks/{prompt-terminal-ledger-L57JMVSR.js → prompt-terminal-ledger-7BM7YDLG.js} +1 -1
  173. package/chunks/{qwenContentGenerator-UKZ237LC.js → qwenContentGenerator-QSA32XEL.js} +1 -1
  174. package/chunks/{reactive-degrade-3OM3HWVA.js → reactive-degrade-TFNBAAPZ.js} +1 -1
  175. package/chunks/{read-file-63ZLWMOW.js → read-file-VD7OFO2E.js} +1 -1
  176. package/chunks/{resumeHistoryUtils-R5YQS4YQ.js → resumeHistoryUtils-2B4KPI7G.js} +1 -1
  177. package/chunks/{review-AT6OWVDO.js → review-C365WGCW.js} +1 -1
  178. package/chunks/{ripGrep-7KBZGTPV.js → ripGrep-D7WPMBXR.js} +1 -1
  179. package/chunks/{run-qwen-serve-CLBG7W6F.js → run-qwen-serve-NZWQHWQA.js} +1 -1
  180. package/chunks/{runtime-R3QIGB7U.js → runtime-J6SPBSCS.js} +1 -1
  181. package/chunks/{sandboxConfig-PM3ZRQYV.js → sandboxConfig-QS2XBPZG.js} +1 -1
  182. package/chunks/{scheduled-tasks-PUMNN5XV.js → scheduled-tasks-YNNIOOPM.js} +1 -1
  183. package/chunks/{scheduler-KTPM226B.js → scheduler-KCMSPHON.js} +1 -1
  184. package/chunks/{search-memory-7I5MGDNV.js → search-memory-EUBJ7IAV.js} +1 -1
  185. package/chunks/{send-message-J526AEBI.js → send-message-CWWZUPSK.js} +1 -1
  186. package/chunks/{serve-KLTMPK4W.js → serve-4CB4BWJ5.js} +1 -1
  187. package/chunks/{server-VLRNY6KG.js → server-JNANUIGC.js} +3 -3
  188. package/chunks/{session-2EB57NXY.js → session-3LQLXPUA.js} +1 -1
  189. package/chunks/{session-attachments-root-I7TESMWL.js → session-attachments-root-BWIVWFHJ.js} +1 -1
  190. package/chunks/{session-execution-engine-selector-5FAMSPSO.js → session-execution-engine-selector-5OLRX57L.js} +1 -1
  191. package/chunks/{session-pr-refresh-JCPVQPNJ.js → session-pr-refresh-RLF3EXS3.js} +1 -1
  192. package/chunks/{sessionService-YRW2IFPR.js → sessionService-U7ACD2HP.js} +1 -1
  193. package/chunks/{settings-KO2Q47JP.js → settings-FTGWYTUH.js} +1 -1
  194. package/chunks/{shell-OLZVNTQZ.js → shell-E4RENYQC.js} +1 -1
  195. package/chunks/{skill-XW2AQS7M.js → skill-OLNPHRWB.js} +1 -1
  196. package/chunks/{skill-settings-TKAVQ4XP.js → skill-settings-R2BV2GEK.js} +1 -1
  197. package/chunks/{spawnChannel-MBGCTK2J.js → spawnChannel-LOPAR5T2.js} +1 -1
  198. package/chunks/{standalone-update-A3YLLIAN.js → standalone-update-IGDX2RGN.js} +1 -1
  199. package/chunks/{start-opentui-ui-G5ROAR4V.js → start-opentui-ui-33QLBNRC.js} +1 -1
  200. package/chunks/{startInteractiveUI-PZQR4U53.js → startInteractiveUI-RQKHD7MM.js} +1 -1
  201. package/chunks/{team-create-S5ZY2UMF.js → team-create-HAVKHNU5.js} +1 -1
  202. package/chunks/{team-plan-approval-KX6RXEST.js → team-plan-approval-7MCQX67C.js} +1 -1
  203. package/chunks/{terminal-image-renderer-SCJREXE6.js → terminal-image-renderer-XT5JVEO6.js} +1 -1
  204. package/chunks/{theme-manager-DZSM4EBR.js → theme-manager-DR5EYGLT.js} +1 -1
  205. package/chunks/{tool-call-UK56SWCT.js → tool-call-LZHZ5RVH.js} +1 -1
  206. package/chunks/{tool-result-media-JLLSLGFL.js → tool-result-media-XCXCF4YC.js} +1 -1
  207. package/chunks/{tool-search-OWPFLVV5.js → tool-search-K6S3ON7M.js} +1 -1
  208. package/chunks/{total-session-admission-NQU4ACKH.js → total-session-admission-LGSS2VWS.js} +1 -1
  209. package/chunks/{trustedFolders-N7GXFYSF.js → trustedFolders-IIR2UZRL.js} +1 -1
  210. package/chunks/{update-relaunch-5SPXXHM2.js → update-relaunch-WVIFX5CN.js} +1 -1
  211. package/chunks/{updateCheck-VXUIX2XG.js → updateCheck-CMEWLLZJ.js} +1 -1
  212. package/chunks/{upload-config-OWLL4SRQ.js → upload-config-TCCFCNCD.js} +1 -1
  213. package/chunks/{useAutoAcceptIndicator-OUYRR56F.js → useAutoAcceptIndicator-5RTTH3OW.js} +1 -1
  214. package/chunks/{validateNonInterActiveAuth-PSVJO5HK.js → validateNonInterActiveAuth-AO336KDX.js} +1 -1
  215. package/chunks/{version-C26S7UAW.js → version-JYWKKMNP.js} +1 -1
  216. package/chunks/{web-fetch-AYOYV7R4.js → web-fetch-HWTAWXFM.js} +1 -1
  217. package/chunks/{web-search-DAREKD3Z.js → web-search-HAI5LW3G.js} +1 -1
  218. package/chunks/{workflow-WBGPKVO6.js → workflow-BZ2YFGF6.js} +1 -1
  219. package/chunks/{workflow-ancestor-trust-GEEB53TB.js → workflow-ancestor-trust-26TFXFPO.js} +1 -1
  220. package/chunks/{workspace-agents-IMAQME4W.js → workspace-agents-DLI4JQJZ.js} +1 -1
  221. package/chunks/{workspace-providers-status-VALHVEU2.js → workspace-providers-status-64C7DJZU.js} +1 -1
  222. package/chunks/{workspace-recovery-worker-AIAVRDGU.js → workspace-recovery-worker-IFRT3KKP.js} +1 -1
  223. package/chunks/{workspace-registration-store-FXEGZG3L.js → workspace-registration-store-MYKJM2SK.js} +1 -1
  224. package/chunks/{workspace-registry-GYFFHWCD.js → workspace-registry-GZJRONAY.js} +1 -1
  225. package/chunks/{workspace-runtime-coordinator-VZ462TLU.js → workspace-runtime-coordinator-44KW6HSN.js} +1 -1
  226. package/chunks/{workspace-service-5DIZM4IZ.js → workspace-service-YHTSZYYD.js} +1 -1
  227. package/chunks/{workspace-skills-status-DOOBVL5N.js → workspace-skills-status-NEB62X24.js} +1 -1
  228. package/chunks/{workspace-trust-reconciler-LOICVUVW.js → workspace-trust-reconciler-HZLOOZWM.js} +1 -1
  229. package/chunks/{write-file-EJNMAHQD.js → write-file-HD5LHXGL.js} +1 -1
  230. package/chunks/{zoom-image-S3OARMYP.js → zoom-image-W4BMRC5T.js} +1 -1
  231. package/cli.js +2 -2
  232. package/execution-worker.js +1 -1
  233. package/export-transcript-document.js +1 -1
  234. package/gerege.mjs +53 -15
  235. package/locales/mn.js +2702 -3774
  236. package/package.json +3 -3
  237. package/chunks/mn-YH2OTBWJ.js +0 -8
@@ -1,6 +1,6 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import{clearReviewWorktreeLease,clearReviewWorktreeLeaseIfOwned,createReviewWorktreeLease,isReviewLeaseFile,readReviewWorktreeLease,readReviewWorktreeLeaseAt,recordReviewWorktreeLeaseMergeBase,restoreReviewWorktreeLeaseMergeBase,reviewLeaseHeldByAnotherSession}from"./chunk-POA4NX4N.js";import{SKILL_ARGS_DIR,currentSessionId,skillArgsPath}from"./chunk-TD6VSPYX.js";import{GATE_OUTPUT_BUDGET_BYTES,jsonBytes}from"./chunk-PBCOQPHE.js";import{CONTAINER_HOME,containerEnv,trustedProcessEnv}from"./chunk-R4VUFIDQ.js";import{HOSTNAME_RE,currentUser,ensureAuthenticated,getGhHost,gh,ghApi,ghApiAll,ghApiAllNested,ghRaw,ghWithInput,ghWithInputRetried,isOwnerRepo,normalizeGhHostForUrl,resolveGhHost,setGhHost}from"./chunk-UPWFKIG7.js";import{CONTROL,GIT_TIMEOUT_MS,LEASE_PREFIX,PARSE_ARGS_REPORT,RESIDUE_PATH_CAP,RETIRED_REVIEW_LEASE_DIR,REVIEWS_DIR,REVIEW_CACHE_DIR,REVIEW_TMP_DIR,affectedWorkspaces,assertUnredirectedParent,assertWritableOutPath,baseWorktreePath,buildSetFor,chainsCommands,checkoutFilterCommands,commandPrefixed,declaredBuildHeapMb,dependencyClosure,describeFilterScreen,discardWorktree,ensureReviewTmpDir,ensureWritableReviewWorkflowsDir,exposeDependencies,filterBlankEnv,filterScreenForTree,git,gitOpt,gitProbe,gitRaw,gitRawTolerateDiff,gitWithEnv,gitWithInput,gitWithInputRaw,hasUnmodeledWorkspaceGlob,heapBannerIn,inertPath,inertText,isNegationExcluded,isWorkspaceMember,killedFromOutside,lastReviewEffortPath,localFilterCommands,mountRootFor,probeWorktreePath,raiseHeap,raiseNpmHeap,ranOutOfHeap,readRootPackage,readWorkspaceGlobs,readWorkspacePackages,redirectedAncestor,refExists,releaseWorktree,repoRelativeOf,repoRoot,resolvedContentTransformForTree,reverseDependencyClosure,reviewBranch,reviewRepositoryRootForWorktree,reviewTrustStateDir,reviewWorkflowScriptPath,rootBuildFanOutScript,safeTarget,sanitizedGitEnv,scratchLabel,scratchWorktreePath,scratchWorktreePrefix,scriptFansOut,tmpFile,tmpPrefix,untrustedGitfile,untrustedRepositoryFrom,workspaceDirFor,worktreeCreateFailureDetail,worktreePath,worktreeResidue,writesIntoReviewTmp}from"./chunk-NO26JN24.js";import{a1Json,a1JsonOnce,a1Once,aoneWhoamiAccount,ensureAoneAuthenticated,execErrorCause}from"./chunk-U3ZLJQMS.js";import{hostsEquivalent,isAoneCanonicalHost,isAoneHostFamily,matchRemotes,parseRemoteUrl}from"./chunk-CTMNGGOU.js";import{CLI_VERSION}from"./chunk-5ZQWQ3RK.js";import{require_punycode}from"./chunk-LJJYJADI.js";import{CUSTOM_SANDBOX_IMAGE_ENV_VAR}from"./chunk-F26LTWDZ.js";import{hasRootlessMarker}from"./chunk-QO46QMCC.js";import{loadSettings}from"./chunk-WI4UMN3Q.js";import"./chunk-UWCF7JIF.js";import"./chunk-OHXQYU6S.js";import"./chunk-LMUSSYJH.js";import"./chunk-ABJGFEES.js";import"./chunk-U7HZUZKP.js";import{isFileSourcedEnvKey}from"./chunk-KGJ47CI5.js";import"./chunk-PKK2D2W4.js";import"./chunk-N3AQAZ7D.js";import"./chunk-E5T4R2PM.js";import"./chunk-DOLUT3XC.js";import"./chunk-PTHIQ7ZN.js";import{parseJsoncObject}from"./chunk-BBOJUFMW.js";import"./chunk-EIPLDYEY.js";import"./chunk-IDXJIDME.js";import"./chunk-5WLKN3GD.js";import"./chunk-QS2ZMQIS.js";import"./chunk-S7IKHQ6I.js";import{readPackageUpSync}from"./chunk-XDRXZYKN.js";import"./chunk-IEWZIDC6.js";import{getCliVersion}from"./chunk-3Y6LSWEW.js";import"./chunk-O4EDHV64.js";import"./chunk-PAD5GPDY.js";import"./chunk-MD3ZEOBX.js";import"./chunk-SSYS5YN5.js";import{FINDING_BASELINES,FINDING_CONFIDENCES,FINDING_DIRECTIONS,FINDING_OUTCOMES,FINDING_SEVERITIES,FINDING_SOURCES,compressFindingSummary}from"./chunk-X5QSFJVS.js";import"./chunk-OMDTFGTX.js";import"./chunk-EIILQ6KT.js";import"./chunk-46VUDNCL.js";import"./chunk-MKH3EH7O.js";import"./chunk-Q5E5SOY2.js";import{resolveReviewWorkflowConcurrency}from"./chunk-62NLMVVT.js";import"./chunk-HW6SU6MX.js";import"./chunk-ZHHFNZ5J.js";import"./chunk-AKWYMQKU.js";import"./chunk-MZUOREFD.js";import"./chunk-DEMXCA3K.js";import"./chunk-7XZVMIY5.js";import"./chunk-2VCDJ6UF.js";import"./chunk-ZZJXFLVM.js";import"./chunk-RKDS7A4H.js";import"./chunk-GSOBASYW.js";import"./chunk-IV3HAIUN.js";import"./chunk-XFMPZINJ.js";import"./chunk-DECUAM3U.js";import"./chunk-QX7W2HY7.js";import"./chunk-HN5UYLPU.js";import"./chunk-PGRN3GZY.js";import"./chunk-HTW7PYHK.js";import"./chunk-AMGUAA4G.js";import"./chunk-YFTVFH2A.js";import"./chunk-ZBHL2CXR.js";import"./chunk-NIOS3B3V.js";import{DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,REVIEW_BUILTIN_SUBAGENT_TYPE,isGitIgnored,sanitizeFilenameComponent}from"./chunk-Z5XENA4A.js";import"./chunk-R2EHHA2C.js";import"./chunk-YK7NDQKM.js";import"./chunk-ZLZF2ZDD.js";import"./chunk-OMSVOFTC.js";import"./chunk-PHIPLV2I.js";import"./chunk-ZOTKZI2P.js";import"./chunk-A6G5TAIF.js";import"./chunk-YVBHCSZD.js";import"./chunk-FIXDX63I.js";import"./chunk-T7CHK6C2.js";import"./chunk-PT7NZBDY.js";import"./chunk-TWP72VRH.js";import"./chunk-UYEWRLGD.js";import"./chunk-QVPT37XZ.js";import"./chunk-YVD4O5ZB.js";import"./chunk-T6W33SET.js";import"./chunk-WK2IBT6D.js";import"./chunk-QZV4PFQK.js";import{unquoteCStylePath}from"./chunk-ILECDNJX.js";import"./chunk-QXQGUM3Y.js";import"./chunk-UQ7IROJH.js";import"./chunk-SZCBUCNH.js";import"./chunk-BEKROCWN.js";import"./chunk-5SUFJTQQ.js";import"./chunk-BYU42MLK.js";import"./chunk-JWQXU3SR.js";import"./chunk-5LZ2DPLH.js";import"./chunk-XQJOZDV7.js";import"./chunk-CV2UAEZA.js";import"./chunk-FUBDS3AV.js";import"./chunk-HW6AWS7W.js";import{require_dist}from"./chunk-KLC3OD2M.js";import"./chunk-Q5IZXKUJ.js";import"./chunk-G5PYYZMM.js";import"./chunk-BG67XABA.js";import"./chunk-OBOU4ZZM.js";import"./chunk-D7XCQWP2.js";import"./chunk-AE5OMKRY.js";import"./chunk-OBV7RNHV.js";import"./chunk-7CQMWEMY.js";import"./chunk-GOZYWU4B.js";import"./chunk-OUC3WICA.js";import{APPROVAL_MODES}from"./chunk-JZK2WGXA.js";import"./chunk-MPHSE7M4.js";import"./chunk-S2ZKZXHX.js";import"./chunk-7UK4WJWS.js";import"./chunk-4GP3PH7Z.js";import"./chunk-4QQKOW5M.js";import"./chunk-OV3EBH6J.js";import"./chunk-EBMCWXGZ.js";import"./chunk-XZTE4YTN.js";import"./chunk-LSASUDF2.js";import"./chunk-2V5EKGDK.js";import"./chunk-MOKVM4PT.js";import"./chunk-YIW3H46P.js";import"./chunk-EOMRLUNZ.js";import"./chunk-4ZRCV3JY.js";import"./chunk-TL6MLBXR.js";import{isUnusableScriptEntry}from"./chunk-NMY3PYNO.js";import"./chunk-YGLM5XPP.js";import"./chunk-WGNF7FPC.js";import"./chunk-4NPYOXJO.js";import"./chunk-MWGB5RCF.js";import"./chunk-SCD5TUBG.js";import"./chunk-NTRFETZB.js";import"./chunk-TL3SF2GA.js";import"./chunk-LMJPU2JM.js";import"./chunk-VFB6Q74I.js";import"./chunk-4JNHUZ7M.js";import"./chunk-SW54YEPK.js";import"./chunk-ZCRL73DT.js";import"./chunk-A6LT3FIJ.js";import"./chunk-S6RXVOY6.js";import"./chunk-YZFNBUKG.js";import"./chunk-AGEDDL7Z.js";import"./chunk-2NJJHZ52.js";import"./chunk-BN4FIQ77.js";import"./chunk-X64RXJQQ.js";import"./chunk-HETUGUHE.js";import"./chunk-ET2Z7ZGF.js";import"./chunk-XFPYXD2P.js";import"./chunk-3YWXKSOI.js";import"./chunk-5CWTKFI4.js";import"./chunk-C4MVD5OI.js";import"./chunk-Z2W7S4O4.js";import"./chunk-476F6QIM.js";import"./chunk-4R67LXKL.js";import"./chunk-FQRF6B65.js";import"./chunk-ZWPSBU7K.js";import{parseLineTolerant}from"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-W5NWIGKO.js";import"./chunk-KVA6DHHF.js";import"./chunk-PWOQASXT.js";import"./chunk-K7JCVESI.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7DOOXUDG.js";import"./chunk-77V43YOE.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-4DIWAQ5G.js";import"./chunk-Q6UAOTP3.js";import"./chunk-NGOIJH7K.js";import"./chunk-GOR7FFVE.js";import"./chunk-4ZBZL23U.js";import{atomicWriteFileSync}from"./chunk-BMHYEQTI.js";import"./chunk-ZZZAYAJW.js";import"./chunk-XMANRGPK.js";import"./chunk-3XVPZY7X.js";import"./chunk-KQX4H2D3.js";import"./chunk-URNNJMIC.js";import"./chunk-GU22I6TY.js";import"./chunk-YEYW7PPR.js";import"./chunk-UY2ET2AL.js";import{ignoreBrokenPipe,writeStderrLine,writeStderrLineSafe,writeStdoutLine,writeStdoutLineSafe}from"./chunk-M4ECEHLX.js";import"./chunk-DBRQGEEI.js";import"./chunk-B3ZFUGTC.js";import"./chunk-IRINPFG7.js";import"./chunk-6GTPLW7K.js";import"./chunk-NGVRCUYD.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-O5EKX7LG.js";import"./chunk-TM6ZCBR7.js";import"./chunk-SVAPAMMG.js";import"./chunk-3KUHQGOS.js";import"./chunk-I6S7NGX3.js";import{ToolNames}from"./chunk-SBZFGYYS.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-2UOMCYQG.js";import"./chunk-I7L2TX4M.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import{init_esbuild_shims}from"./chunk-VKDAXTCZ.js";import{__export,__name,__toESM}from"./chunk-KBWJGX7I.js";init_esbuild_shims();init_esbuild_shims();import{existsSync as existsSync2,mkdirSync,readFileSync as readFileSync2,writeFileSync}from"node:fs";import{dirname as dirname2}from"node:path";init_esbuild_shims();function tokenizeArgs(raw){const tokens=[];let current="";let quote=null;let sawAny=false;for(const ch of raw){if(quote){if(ch===quote){quote=null}else{current+=ch}continue}if(ch==='"'||ch==="'"){quote=ch;sawAny=true;continue}if(/\s/.test(ch)){if(current||sawAny)tokens.push(current);current="";sawAny=false;continue}current+=ch}if(current||sawAny)tokens.push(current);return tokens}__name(tokenizeArgs,"tokenizeArgs");init_esbuild_shims();var SAFE_DEFAULTS={attribution:true,comment:false,effort:void 0,reverseAuditRounds:void 0,approachRounds:void 0,sandbox:void 0};function operatorReviewSettings(){let review;try{review=loadSettings(void 0,{skipWorkspaceSettings:true}).merged.review}catch(error){writeStderrLineSafe(`NOTE: review settings could not be loaded (${error instanceof Error?error.message.split("\n")[0]:String(error)}); this review uses the defaults \u2014 attribution on, no auto-posting, no effort or round-cap override. Fix the settings file to restore them.`);return{...SAFE_DEFAULTS}}const rounds=review?.reverseAuditRounds;const approach=review?.approachRounds;return{attribution:typeof review?.attribution==="boolean"?review.attribution:true,comment:review?.comment===true,effort:typeof review?.effort==="string"?review.effort:void 0,severityFloor:typeof review?.severityFloor==="string"?review.severityFloor:void 0,sandbox:typeof review?.sandbox==="string"?review.sandbox:void 0,reverseAuditRounds:typeof rounds==="number"&&Number.isInteger(rounds)&&rounds>0?rounds:void 0,approachRounds:typeof approach==="number"&&Number.isInteger(approach)&&approach>0?approach:void 0}}__name(operatorReviewSettings,"operatorReviewSettings");init_esbuild_shims();import{createHash}from"node:crypto";import{existsSync,readFileSync,readdirSync,realpathSync,statSync}from"node:fs";import{basename,dirname,extname,join,relative,resolve,sep}from"node:path";var DIGEST_FILE="review-sources.sha256";var NOT_BUNDLED_RE=/\.(?:test|spec)\.(?:d\.)?[cm]?[jt]sx?$/;var NOT_BUNDLED_DIR=new Set(["__fixtures__","__snapshots__"]);var NOT_BUNDLED_FILE=new Set(["test-utils.ts"]);var NOT_BUNDLED_SKILL_FILE=new Set(["DESIGN.md"]);var DIGESTED_EXTENSIONS={code:new Set([".ts",".tsx",".mts",".cts",".js",".mjs",".json",".jsx"]),skill:new Set([".md"])};function isDigestedFile(kind,name){if(!DIGESTED_EXTENSIONS[kind].has(extname(name)))return false;if(kind!=="code")return!NOT_BUNDLED_SKILL_FILE.has(name);return!NOT_BUNDLED_RE.test(name)&&!NOT_BUNDLED_FILE.has(name)}__name(isDigestedFile,"isDigestedFile");function measureReviewSources(repoRoot2,roots){const state={incomplete:false,absentRoots:0};const files=[];for(const root of roots)files.push(...sourceFilesUnder(root,state,false));const partial=state.absentRoots>0&&state.absentRoots<roots.length;if(state.incomplete||files.length===0){return{digest:void 0,incomplete:state.incomplete,partial}}const hash=createHash("sha256");for(const file of files.sort()){let content;try{content=readFileSync(file)}catch{return{digest:void 0,incomplete:true,partial}}hash.update(relative(repoRoot2,file).split(sep).join("/"));hash.update("\0");hash.update(content);hash.update("\0")}return{digest:hash.digest("hex"),incomplete:false,partial}}__name(measureReviewSources,"measureReviewSources");function bundleStaleness(stampedDigest,currentDigest){if(!stampedDigest){return{stale:false,unmeasured:"the bundle carries no source digest"}}if(!currentDigest){return{stale:false,unmeasured:"no review sources were found to compare"}}return{stale:stampedDigest!==currentDigest}}__name(bundleStaleness,"bundleStaleness");function*sourceFilesUnder(root,state,listed){const{kind}=root;let entries;try{entries=readdirSync(root.path,{withFileTypes:true})}catch{let stats;try{stats=statSync(root.path)}catch(err){if(listed||err.code!=="ENOENT")state.incomplete=true;else state.absentRoots+=1;return}if(stats.isDirectory()){state.incomplete=true;return}if(stats.isFile()&&isDigestedFile(kind,basename(root.path)))yield root.path;return}for(const e of entries){const full=join(root.path,e.name);if(e.isDirectory()){if(kind!=="code"||!NOT_BUNDLED_DIR.has(e.name))yield*sourceFilesUnder({path:full,kind},state,true)}else if(e.isFile()&&isDigestedFile(kind,e.name)){yield full}}}__name(sourceFilesUnder,"sourceFilesUnder");function reviewSourceRoots(repoRoot2){const cli=join(repoRoot2,"packages","cli","src","commands");return[{path:join(cli,"review"),kind:"code"},{path:join(cli,"review.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","services","review-worktree-lease.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","utils","shell-args.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","utils","paths.ts"),kind:"code"},{path:join(repoRoot2,"packages","core","src","skills","bundled","review"),kind:"skill"}]}__name(reviewSourceRoots,"reviewSourceRoots");function bundleStalenessNotices(entryPath,brief){try{if(!entryPath)return void 0;let entry=entryPath;try{entry=realpathSync(entryPath)}catch{}const distDir=dirname(resolve(entry));if(basename(distDir)!=="dist")return void 0;const repoRoot2=dirname(distDir);let stamped;try{const raw=readFileSync(join(distDir,DIGEST_FILE),"utf8").trim();if(/^[0-9a-f]{64}$/.test(raw))stamped=raw}catch{}const roots=reviewSourceRoots(repoRoot2);const measured=measureReviewSources(repoRoot2,roots);const current=measured.digest;if(stamped&&current&&measured.partial){return`review: could not check whether the bundle is current \u2014 only some of the review sources are present`+(brief?" (a partial checkout).":" (a sparse or partial checkout). The stamp covers the whole tree; materialize the missing sources to compare again.")}const staleness=bundleStaleness(stamped,current);const warning=staleBundleWarning(staleness,brief);if(warning)return warning;if(stamped&&!current&&(measured.incomplete||roots.some(r=>existsSync(r.path)))){const reason=measured.incomplete?"a review source could not be read, so nothing was compared"+(brief?".":". Re-run once the tree is settled."):`${staleness.unmeasured}.`;return`review: could not check whether the bundle is current \u2014 ${reason}`}if(!stamped&&current){return`review: could not check whether the bundle is current \u2014 ${staleness.unmeasured}. `+(brief?"Rebuild with `npm run bundle` to record one.":"Either it was built before this check existed, or the build declined to record one; rebuild with `npm run bundle` and, if the line persists, read that build's output for why it refused.")}return void 0}catch{return void 0}}__name(bundleStalenessNotices,"bundleStalenessNotices");function staleBundleWarning(s,brief){if(!s.stale)return void 0;if(brief){return`review: the bundle these commands run from was NOT built from the review sources in this tree \u2014 rebuild with \`npm run bundle\` and start again, or read every result below as being about the older build.`}return`review: the bundle these commands run from was NOT built from the review sources in this tree. Every \`qwen review \u2026\` step below runs the BUILT bundle, not the working tree, so a review source changed since that build will not take effect and this run will measure the old behaviour without saying so. Rebuild with \`npm run bundle\` and start again, or read every result below as being about the older build.`}__name(staleBundleWarning,"staleBundleWarning");var EFFORT_LEVELS=new Set(["low","medium","high"]);var EFFORT_OPTION={type:"string",choices:[...EFFORT_LEVELS],describe:"The review effort. `medium` (balanced) drops the adversarial personas (6a/6b/6c), the counter-frame audit (6d) and the language-pitfall and wrapper/proxy specialists (1d/1e) from the required roster; recorded in the plan so check-coverage, agent-prompt --roster and compose-review all read one value. Omit for the full (high) roster."};var deadlineOption=__name(command=>({type:"string",describe:"The review's wall, in minutes, recorded in the plan as a duration from the attempt's start \u2014 the round builder refuses a reverse-audit round that no longer fits inside it plus the tail reserve"+(command.resumes?", and a `--resume` from a new session renews it":"")+". Omit for the topology's default (8h on a 3A diff, 12h on a 3B one, 16h when huge), which bounds a run that has stopped converging without touching a healthy one; `none` records no wall; a wall that cannot hold a convergence (two rounds plus the reserve \u2014 at or under ninety minutes under the default reserve, more under the shell's reserve / compose-floor overrides) is refused up front, and the fan-out before round 1 spends any wall too. "+(command.resumes?"Ignored on a resumed run once it parses (the grammar and the default rule still apply; the plan keeps its recorded wall). ":"")+"A QWEN_REVIEW_DEADLINE_EPOCH in the environment (CI) wins over the flag and the default. An explicit deadline, like the environment's, applies the huge tier's round reduction; the default does not. Pauses count against the wall and also price the next round; the Review Deadline section of the code-review docs gives the ceilings (about 3h20m / 5h20m / 7h20m on the 8h / 12h / 16h defaults)."}),"deadlineOption");var SEVERITY_FLOORS=new Set(["critical","suggestion","auto"]);var TOPOLOGIES=new Set(["minimal","auto"]);var PR_URL_RE=/^(https?):\/\/([A-Za-z0-9.-]+(?::\d+)?)\/([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)\/pull\/(\d+)(?=$|[/?#])/i;var AONE_CR_URL_RE=/^(https?):\/\/((?:[A-Za-z0-9-]+\.)+alibaba-inc\.com(?::\d+)?)\/((?:[A-Za-z0-9_.-]+\/)+[A-Za-z0-9_.-]+)\/codereview\/(\d+)(?=$|[/?#])/i;function asEffort(value){const lower=value.toLowerCase();return EFFORT_LEVELS.has(lower)?lower:null}__name(asEffort,"asEffort");function asSeverityFloor(value){const lower=value.toLowerCase();return SEVERITY_FLOORS.has(lower)?lower:null}__name(asSeverityFloor,"asSeverityFloor");function asTopology(value){const lower=value.toLowerCase();return TOPOLOGIES.has(lower)?lower:null}__name(asTopology,"asTopology");function isFlag(token){return token.length>1&&token.startsWith("-")}__name(isFlag,"isFlag");function isDeadlineValue(token){const t=token.trim();return/^\d+$/.test(t)||t.toLowerCase()==="none"}__name(isDeadlineValue,"isDeadlineValue");function isPureInteger(token){return/^\d+$/.test(token)}__name(isPureInteger,"isPureInteger");function isPrShapedToken(token){const shape=classifyToken(token);return shape!==null&&shape!=="invalid-url"&&(shape.type==="pr-number"||shape.type==="pr-url")}__name(isPrShapedToken,"isPrShapedToken");function classifyToken(token){if(isFlag(token))return null;const integerForm=token.replace(/[.,,。!!??;;、]+$/,"");if(isPureInteger(integerForm)){return{type:"pr-number",number:Number(integerForm)}}const urlMatch=PR_URL_RE.exec(token);if(urlMatch){const[,scheme,host,owner,repo,num]=urlMatch;const lowerHost=host.toLowerCase();if(isAoneCanonicalHost(lowerHost))return"invalid-url";return{type:"pr-url",url:`${scheme.toLowerCase()}://${lowerHost}/${owner}/${repo}/pull/${Number(num)}`,host:lowerHost,owner,repo,number:Number(num)}}const aoneMatch=AONE_CR_URL_RE.exec(token);if(aoneMatch){const[,scheme,host,groupPath,num]=aoneMatch;const lowerHost=host.toLowerCase();if(!isAoneCanonicalHost(lowerHost))return"invalid-url";const segs=groupPath.split("/").filter(Boolean);const owner=segs[segs.length-2];const repo=segs[segs.length-1];return{type:"pr-url",url:`${scheme.toLowerCase()}://${lowerHost}/${segs.join("/")}/codereview/${Number(num)}`,host:lowerHost,owner,repo,groupPath:segs.join("/"),number:Number(num)}}if(/^https?:\/\//i.test(token))return"invalid-url";return{type:"file",path:token}}__name(classifyToken,"classifyToken");function parseReviewArgs(raw,defaults={},rememberExplicitEffort){const tokens=tokenizeArgs(raw);const warnings=[];const unknownFlags=[];let commentRequestedByFlag=false;let fixRequested=false;let resumeRequested=false;let explicitEffort=null;let explicitFloor=null;let explicitTopology=null;let recordedHostFlag;let configuredEffort;let invalidConfiguredEffort;if(defaults.effort!==void 0){const normalized=asEffort(defaults.effort);if(normalized!==null){configuredEffort=normalized}else{invalidConfiguredEffort=defaults.effort}}let configuredFloor;let invalidConfiguredFloor;if(defaults.severityFloor!==void 0){const normalized=asSeverityFloor(defaults.severityFloor);if(normalized==="auto"){}else if(normalized!==null){configuredFloor=normalized}else{invalidConfiguredFloor=defaults.severityFloor}}const effortIssues=[];const deadlineIssues=[];const consumedDeadlineValues=[];const floorIssues=[];const topologyIssues=[];const kept=[];for(let i=0;i<tokens.length;i++){const token=tokens[i];if(token==="--comment"){commentRequestedByFlag=true;continue}if(token==="--fix"){fixRequested=true;continue}if(token==="--host"||token.startsWith("--host=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);if(value!=="")recordedHostFlag=value;continue}const next=i+1<tokens.length?tokens[i+1]:void 0;if(next!==void 0&&next!==""&&!isFlag(next)){recordedHostFlag=next;i++}continue}if(token==="--resume"){resumeRequested=true;continue}if(token==="--effort"||token.startsWith("--effort=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const effortValue=asEffort(value);if(effortValue!==null){explicitEffort=effortValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--effort"})}else{effortIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextEffort=next!==void 0?asEffort(next):null;if(nextEffort!==null){explicitEffort=nextEffort;i++;continue}if(next===""){effortIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){effortIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--effort"});i++;continue}if(token==="--severity-floor"||token.startsWith("--severity-floor=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const floorValue=asSeverityFloor(value);if(floorValue!==null){explicitFloor=floorValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--severity-floor"})}else{floorIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextFloor=next!==void 0?asSeverityFloor(next):null;if(nextFloor!==null){explicitFloor=nextFloor;i++;continue}if(next===""){floorIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){floorIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--severity-floor"});i++;continue}if(token==="--topology"||token.startsWith("--topology=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const topologyValue=asTopology(value);if(topologyValue!==null){explicitTopology=topologyValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--topology"})}else{topologyIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextTopology=next!==void 0?asTopology(next):null;if(nextTopology!==null){explicitTopology=nextTopology;i++;continue}if(next===""){topologyIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){topologyIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--topology"});i++;continue}if(token==="--deadline"||token.startsWith("--deadline=")){unknownFlags.push("--deadline");if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);if(value===""){deadlineIssues.push({kind:"missing"})}else if(isDeadlineValue(value)){consumedDeadlineValues.push(value)}else if(isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--deadline"})}else{deadlineIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;if(next===void 0||isFlag(next)){deadlineIssues.push({kind:"missing"});continue}if(next===""){deadlineIssues.push({kind:"missing"});i++;continue}if(isDeadlineValue(next)){consumedDeadlineValues.push(next);i++;continue}kept.push({token:next,invalidValueOf:"--deadline"});i++;continue}if(isFlag(token)){unknownFlags.push(token);warnings.push(`Unrecognized flag ${JSON.stringify(token)}; ignored.`);continue}kept.push({token})}const soleCandidate=kept.length===1;const isPrShaped=isPrShapedToken;const isPrUrlToken=__name(token=>{const c=classifyToken(token);return c!==null&&c!=="invalid-url"&&c.type==="pr-url"},"isPrUrlToken");const targetKey=__name(token=>{const shape=classifyToken(token);if(shape===null||shape==="invalid-url")return`raw:${token}`;if(shape.type==="pr-number")return`pr:${shape.number}`;if(shape.type==="pr-url")return`pr:${shape.number}@${shape.host}/${shape.groupPath??`${shape.owner}/${shape.repo}`}`;return`raw:${token}`},"targetKey");const prShapedKeys=[...new Set(kept.filter(k=>k.invalidValueOf!==void 0&&isPrShaped(k.token)).map(k=>targetKey(k.token)))];const distinctPr=new Set;for(const k of prShapedKeys){const bare=k.split("@")[0];if(k.includes("@")){if(distinctPr.has(bare))distinctPr.delete(bare);distinctPr.add(k)}else if(![...distinctPr].some(e=>e===bare||e.startsWith(`${bare}@`))){distinctPr.add(k)}}const poolKey=distinctPr.size===1?[...distinctPr][0]:void 0;const poolPrNumber=poolKey!==void 0?Number(poolKey.split("@")[0].replace(/^pr:/,"")):void 0;const poolHasUrlSpelling=poolPrNumber!==void 0&&kept.some(k=>k.invalidValueOf!==void 0&&isPrUrlToken(k.token));const hasValidCandidate=kept.some(k=>{if(k.invalidValueOf!==void 0)return false;if(poolHasUrlSpelling){const c=classifyToken(k.token);if(c!==null&&c!=="invalid-url"&&c.type==="pr-number"&&c.number===poolPrNumber){return false}}return true});if(!hasValidCandidate&&distinctPr.size>1){const shown=kept.filter(k=>k.invalidValueOf!==void 0&&isPrShaped(k.token)).map(k=>JSON.stringify(k.token));warnings.push(`Ambiguous target: ${shown.join(" and ")} arrived as invalid flag values and name different PRs; refusing to choose between them.`)}const targetTokens=[];const preferredRescueToken=!hasValidCandidate&&distinctPr.size===1?kept.find(k=>k.invalidValueOf!==void 0&&isPrUrlToken(k.token))?.token:void 0;const issueListFor={"--effort":effortIssues,"--severity-floor":floorIssues,"--topology":topologyIssues,"--deadline":deadlineIssues};let rescuedPr=false;for(const k of kept){if(k.invalidValueOf!==void 0){const issues=issueListFor[k.invalidValueOf];const survives=isPrShaped(k.token)?!hasValidCandidate&&distinctPr.size===1:soleCandidate;if(!survives){issues.push({kind:"discarded",value:k.token});continue}if(isPrShaped(k.token)){if(rescuedPr)continue;if(preferredRescueToken!==void 0&&k.token!==preferredRescueToken&&!isPrUrlToken(k.token)){continue}rescuedPr=true}issues.push({kind:"kept-as-target",value:k.token})}targetTokens.push(k.token)}const prIdx=targetTokens.findIndex(isPrShapedToken);let promotedNumberTarget=false;if(prIdx>0){const promotedShape=classifyToken(targetTokens[prIdx]);promotedNumberTarget=promotedShape!==null&&promotedShape!=="invalid-url"&&promotedShape.type==="pr-number";const[prToken]=targetTokens.splice(prIdx,1);targetTokens.unshift(prToken)}const urlIdx=targetTokens.findIndex(isPrUrlToken);if(urlIdx>0){const[urlToken]=targetTokens.splice(urlIdx,1);targetTokens.unshift(urlToken)}let target={type:"local"};let targetAssigned=false;const extraTokens=[];const trailingExtras=[];for(const tok of targetTokens){const classified=classifyToken(tok);if(classified==="invalid-url"){warnings.push(`Unrecognized URL ${JSON.stringify(tok)} \u2014 not a PR/CR URL (expected \u2026/pull/<number> or \u2026/codereview/<id>); refusing to guess a target from it.`);extraTokens.push(tok);continue}if(targetAssigned){if(target.type==="pr-url"&&classified!==null&&classified.type==="pr-number"&&classified.number===target.number){continue}extraTokens.push(tok);trailingExtras.push(tok);continue}target=classified??{type:"local"};targetAssigned=true}if(trailingExtras.length>0){warnings.push(`Ignoring extra argument(s): ${trailingExtras.map(t=>JSON.stringify(t)).join(", ")}.`)}const isPr=target.type==="pr-number"||target.type==="pr-url";const topology=explicitTopology??"auto";const topologySource=explicitTopology!==null?"explicit":"default";const isMinimal=topology==="minimal";const commentRequested=commentRequestedByFlag||defaults.comment===true;const promotedNumberFinal=promotedNumberTarget&&target.type==="pr-number";const commentEffective=commentRequested&&isPr&&!isMinimal&&!promotedNumberFinal;if(commentRequestedByFlag&&!isPr){warnings.push("Warning: `--comment` flag is ignored because the review target is not a PR.")}else if(commentRequested&&isPr&&isMinimal){warnings.push(commentRequestedByFlag?"Warning: `--comment` is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm posts nothing.":"Warning: the `review.comment` setting is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm posts nothing.")}else if(commentRequested&&promotedNumberFinal&&target.type==="pr-number"){warnings.push(commentRequestedByFlag?`Bare number ${target.number} was promoted to the PR target from prose, so \`--comment\` posting authority is withheld \u2014 a count is indistinguishable from a PR id; confirm the intended PR and re-invoke with its number typed first to post.`:`Bare number ${target.number} was promoted to the PR target from prose, so the \`review.comment\` setting's posting authority is withheld \u2014 a count is indistinguishable from a PR id; confirm the intended PR and re-invoke with its number typed first to post.`)}const resumeEffective=resumeRequested&&isPr&&!isMinimal;if(resumeRequested&&!isPr){warnings.push("Warning: `--resume` flag is ignored because the review target is not a PR \u2014 only a PR review has interrupted state to continue.")}else if(resumeRequested&&isPr&&isMinimal){warnings.push("Warning: `--resume` is ignored because `--topology minimal` runs a fresh single pass \u2014 it neither continues nor consumes an interrupted run.")}const fixEffective=fixRequested&&!isPr&&!isMinimal;if(fixRequested&&isPr){warnings.push("Warning: `--fix` flag is ignored because a PR review runs in an ephemeral worktree that is deleted when the review ends \u2014 there is no durable tree to fix. Use `--comment` to publish the findings instead.")}else if(fixRequested&&isMinimal){warnings.push("Warning: `--fix` is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm edits nothing.")}let effort;let effortSource;if(explicitEffort!==null){effort=explicitEffort;effortSource="explicit"}else if(defaults.lastUsedEffort!==void 0){effort=defaults.lastUsedEffort;effortSource="last_used"}else if(configuredEffort!==void 0){effort=configuredEffort;effortSource="configured"}else{effort=isPr?"high":"medium";effortSource="default"}if(commentEffective&&effort!=="high"){effort="high";effortSource="forced-by-comment";warnings.push(commentRequestedByFlag?"`--comment` requires a verified review; running at high effort.":"`review.comment` is enabled in settings; posting requires a verified review \u2014 running at high effort.")}if(fixEffective&&effort==="low"){effort="medium";effortSource="forced-by-fix";warnings.push("`--fix` edits your working tree, so it requires verified findings; running at medium effort.")}if(effortSource==="last_used"){const example=effort==="medium"?"high":"medium";warnings.push(`No effort level given \u2014 reusing ${effort}, the level you typed last time. Type a level like \`/review --effort ${example}\` to change it.`)}const resolution=effortSource==="explicit"?`--effort ${effort} (the last valid occurrence) is in effect`:effortSource==="forced-by-comment"?commentRequestedByFlag?"`--comment` forces high effort":"the `review.comment` setting forces high effort":effortSource==="forced-by-fix"?"`--fix` forces at least medium effort":effortSource==="configured"?"using the configured review.effort":effortSource==="last_used"?"using the last explicitly typed effort":"using the default effort";for(const issue of effortIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)}; ${resolution}.`);break;case"missing":warnings.push(`--effort requires a value; ${resolution}.`);break;case"discarded":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)} discarded; ${resolution}.`);break;case"kept-as-target":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${resolution}.`);break;default:break}}if(invalidConfiguredEffort!==void 0){warnings.push(`Invalid review.effort value ${JSON.stringify(invalidConfiguredEffort)} in settings; ${resolution}.`)}const deadlinePrefix="`--deadline` is an option of the capture commands (`fetch-pr`, `capture-local`, `plan-diff`), not of /review; ignored";for(const value of consumedDeadlineValues){warnings.push(`${deadlinePrefix} together with its value ${JSON.stringify(value)}.`)}for(const issue of deadlineIssues){switch(issue.kind){case"missing":warnings.push(`${deadlinePrefix} (it had no value).`);break;case"invalid-eq":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline.`);break;case"discarded":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline and was discarded.`);break;case"kept-as-target":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline \u2014 treating it as the review target.`);break;default:break}}let severityFloor="auto";let severityFloorSource="default";if(explicitFloor!==null&&!isPr){warnings.push("Warning: `--severity-floor` flag is ignored because the review target is not a PR.")}else if(explicitFloor!==null){severityFloor=explicitFloor;severityFloorSource="explicit"}else if(configuredFloor!==void 0&&isPr){severityFloor=configuredFloor;severityFloorSource="configured"}const floorResolution=severityFloorSource==="explicit"?`--severity-floor ${severityFloor} (the last valid occurrence) is in effect`:severityFloorSource==="configured"?"using the configured review.severityFloor":"using the round-adaptive default";for(const issue of floorIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)}; ${floorResolution}.`);break;case"missing":warnings.push(`--severity-floor requires a value; ${floorResolution}.`);break;case"discarded":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)} discarded; ${floorResolution}.`);break;case"kept-as-target":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${floorResolution}.`);break;default:break}}if(invalidConfiguredFloor!==void 0&&isPr){warnings.push(`Invalid review.severityFloor value ${JSON.stringify(invalidConfiguredFloor)} in settings; ${floorResolution}.`)}const topologyResolution=topologySource==="explicit"?`--topology ${topology} (the last valid occurrence) is in effect`:"using the default topology (auto)";for(const issue of topologyIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)}; ${topologyResolution}.`);break;case"missing":warnings.push(`--topology requires a value; ${topologyResolution}.`);break;case"discarded":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)} discarded; ${topologyResolution}.`);break;case"kept-as-target":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${topologyResolution}.`);break;default:break}}if(explicitEffort!==null){rememberExplicitEffort?.(explicitEffort)}return{target,effort,effortSource,comment:{requested:commentRequestedByFlag,effective:commentEffective},fix:{requested:fixRequested,effective:fixEffective},severityFloor,severityFloorSource,topology,topologySource,...recordedHostFlag!==void 0?{host:recordedHostFlag}:{},resume:{requested:resumeRequested,effective:resumeEffective},promotedNumberTarget:promotedNumberFinal,extraTokens,unknownFlags,warnings}}__name(parseReviewArgs,"parseReviewArgs");function reviewDefaultsFromSettings(){const review=operatorReviewSettings();return{effort:review.effort===void 0||review.effort.toLowerCase()==="auto"?void 0:review.effort,comment:review.comment,severityFloor:review.severityFloor===void 0||review.severityFloor.toLowerCase()==="auto"?void 0:review.severityFloor}}__name(reviewDefaultsFromSettings,"reviewDefaultsFromSettings");function readLastReviewEffort(path){let value;try{if(!existsSync2(path))return void 0;value=readFileSync2(path,"utf8").trim()}catch(error){writeStderrLineSafe(`NOTE: the remembered review effort at ${path} could not be read (${error instanceof Error?error.message.split("\n")[0]:String(error)}); resolving from review.effort and the target default instead. Type \`--effort <level>\` to record a new one.`);return void 0}const effort=asEffort(value);if(effort===null){writeStderrLineSafe(`NOTE: ${path} must contain low, medium, or high; got ${JSON.stringify(value)}. Ignoring it; resolving from review.effort and the target default instead. Type \`--effort <level>\` to record a new one.`);return void 0}return effort}__name(readLastReviewEffort,"readLastReviewEffort");function writeLastReviewEffort(path,explicitEffort,resolvedEffort){try{mkdirSync(dirname2(path),{recursive:true,mode:448});atomicWriteFileSync(path,`${explicitEffort}
3
+ import{clearReviewWorktreeLease,clearReviewWorktreeLeaseIfOwned,createReviewWorktreeLease,isReviewLeaseFile,readReviewWorktreeLease,readReviewWorktreeLeaseAt,recordReviewWorktreeLeaseMergeBase,restoreReviewWorktreeLeaseMergeBase,reviewLeaseHeldByAnotherSession}from"./chunk-OOJ2AQT3.js";import{SKILL_ARGS_DIR,currentSessionId,skillArgsPath}from"./chunk-TD6VSPYX.js";import{GATE_OUTPUT_BUDGET_BYTES,jsonBytes}from"./chunk-PBCOQPHE.js";import{CONTAINER_HOME,containerEnv,trustedProcessEnv}from"./chunk-R4VUFIDQ.js";import{HOSTNAME_RE,currentUser,ensureAuthenticated,getGhHost,gh,ghApi,ghApiAll,ghApiAllNested,ghRaw,ghWithInput,ghWithInputRetried,isOwnerRepo,normalizeGhHostForUrl,resolveGhHost,setGhHost}from"./chunk-UPWFKIG7.js";import{CONTROL,GIT_TIMEOUT_MS,LEASE_PREFIX,PARSE_ARGS_REPORT,RESIDUE_PATH_CAP,RETIRED_REVIEW_LEASE_DIR,REVIEWS_DIR,REVIEW_CACHE_DIR,REVIEW_TMP_DIR,affectedWorkspaces,assertUnredirectedParent,assertWritableOutPath,baseWorktreePath,buildSetFor,chainsCommands,checkoutFilterCommands,commandPrefixed,declaredBuildHeapMb,dependencyClosure,describeFilterScreen,discardWorktree,ensureReviewTmpDir,ensureWritableReviewWorkflowsDir,exposeDependencies,filterBlankEnv,filterScreenForTree,git,gitOpt,gitProbe,gitRaw,gitRawTolerateDiff,gitWithEnv,gitWithInput,gitWithInputRaw,hasUnmodeledWorkspaceGlob,heapBannerIn,inertPath,inertText,isNegationExcluded,isWorkspaceMember,killedFromOutside,lastReviewEffortPath,localFilterCommands,mountRootFor,probeWorktreePath,raiseHeap,raiseNpmHeap,ranOutOfHeap,readRootPackage,readWorkspaceGlobs,readWorkspacePackages,redirectedAncestor,refExists,releaseWorktree,repoRelativeOf,repoRoot,resolvedContentTransformForTree,reverseDependencyClosure,reviewBranch,reviewRepositoryRootForWorktree,reviewTrustStateDir,reviewWorkflowScriptPath,rootBuildFanOutScript,safeTarget,sanitizedGitEnv,scratchLabel,scratchWorktreePath,scratchWorktreePrefix,scriptFansOut,tmpFile,tmpPrefix,untrustedGitfile,untrustedRepositoryFrom,workspaceDirFor,worktreeCreateFailureDetail,worktreePath,worktreeResidue,writesIntoReviewTmp}from"./chunk-T53VMDXH.js";import{a1Json,a1JsonOnce,a1Once,aoneWhoamiAccount,ensureAoneAuthenticated,execErrorCause}from"./chunk-U3ZLJQMS.js";import{hostsEquivalent,isAoneCanonicalHost,isAoneHostFamily,matchRemotes,parseRemoteUrl}from"./chunk-CTMNGGOU.js";import{CLI_VERSION}from"./chunk-IZ5MWA6E.js";import{require_punycode}from"./chunk-LJJYJADI.js";import{CUSTOM_SANDBOX_IMAGE_ENV_VAR}from"./chunk-M6KB5RVD.js";import{hasRootlessMarker}from"./chunk-QO46QMCC.js";import{loadSettings}from"./chunk-2TAJ5STJ.js";import"./chunk-UWCF7JIF.js";import"./chunk-NONBHCXP.js";import"./chunk-LMUSSYJH.js";import"./chunk-NO7VTKRL.js";import"./chunk-U7HZUZKP.js";import{isFileSourcedEnvKey}from"./chunk-MPVQDYPH.js";import"./chunk-PKK2D2W4.js";import"./chunk-N3AQAZ7D.js";import"./chunk-E5T4R2PM.js";import"./chunk-DOLUT3XC.js";import"./chunk-PTHIQ7ZN.js";import{parseJsoncObject}from"./chunk-MTDBCIDA.js";import"./chunk-EIPLDYEY.js";import"./chunk-IDXJIDME.js";import"./chunk-OU7CEG7Q.js";import"./chunk-QS2ZMQIS.js";import"./chunk-S7IKHQ6I.js";import{readPackageUpSync}from"./chunk-XDRXZYKN.js";import"./chunk-IEWZIDC6.js";import{getCliVersion}from"./chunk-GBSRWT7J.js";import"./chunk-O4EDHV64.js";import"./chunk-PAD5GPDY.js";import"./chunk-MD3ZEOBX.js";import"./chunk-SSYS5YN5.js";import{FINDING_BASELINES,FINDING_CONFIDENCES,FINDING_DIRECTIONS,FINDING_OUTCOMES,FINDING_SEVERITIES,FINDING_SOURCES,compressFindingSummary}from"./chunk-X5QSFJVS.js";import"./chunk-OMDTFGTX.js";import"./chunk-32XHDDIA.js";import"./chunk-46VUDNCL.js";import"./chunk-MKH3EH7O.js";import"./chunk-FKZ46GKL.js";import{resolveReviewWorkflowConcurrency}from"./chunk-SP6CQ3MO.js";import"./chunk-HW6SU6MX.js";import"./chunk-ZHHFNZ5J.js";import"./chunk-AKWYMQKU.js";import"./chunk-MZUOREFD.js";import"./chunk-CF6SZJNP.js";import"./chunk-7XZVMIY5.js";import"./chunk-CGDFZEER.js";import"./chunk-ZZJXFLVM.js";import"./chunk-RKDS7A4H.js";import"./chunk-KZNYALFU.js";import"./chunk-IV3HAIUN.js";import"./chunk-XFMPZINJ.js";import"./chunk-DECUAM3U.js";import"./chunk-QX7W2HY7.js";import"./chunk-HN5UYLPU.js";import"./chunk-PGRN3GZY.js";import"./chunk-HTW7PYHK.js";import"./chunk-AMGUAA4G.js";import"./chunk-YFTVFH2A.js";import"./chunk-ZBHL2CXR.js";import"./chunk-NIOS3B3V.js";import{DEFAULT_TRUNCATE_TOOL_OUTPUT_THRESHOLD,REVIEW_BUILTIN_SUBAGENT_TYPE,isGitIgnored,sanitizeFilenameComponent}from"./chunk-2JGTWRZJ.js";import"./chunk-R2EHHA2C.js";import"./chunk-YK7NDQKM.js";import"./chunk-ZLZF2ZDD.js";import"./chunk-OMSVOFTC.js";import"./chunk-PHIPLV2I.js";import"./chunk-ZOTKZI2P.js";import"./chunk-A6G5TAIF.js";import"./chunk-YVBHCSZD.js";import"./chunk-FIXDX63I.js";import"./chunk-T7CHK6C2.js";import"./chunk-PT7NZBDY.js";import"./chunk-TWP72VRH.js";import"./chunk-UYEWRLGD.js";import"./chunk-QVPT37XZ.js";import"./chunk-YVD4O5ZB.js";import"./chunk-T6W33SET.js";import"./chunk-WK2IBT6D.js";import"./chunk-QZV4PFQK.js";import{unquoteCStylePath}from"./chunk-ILECDNJX.js";import"./chunk-QXQGUM3Y.js";import"./chunk-UQ7IROJH.js";import"./chunk-SZCBUCNH.js";import"./chunk-BEKROCWN.js";import"./chunk-5SUFJTQQ.js";import"./chunk-BYU42MLK.js";import"./chunk-JWQXU3SR.js";import"./chunk-5LZ2DPLH.js";import"./chunk-XQJOZDV7.js";import"./chunk-CV2UAEZA.js";import"./chunk-FUBDS3AV.js";import"./chunk-HW6AWS7W.js";import{require_dist}from"./chunk-KLC3OD2M.js";import"./chunk-Q5IZXKUJ.js";import"./chunk-G5PYYZMM.js";import"./chunk-BG67XABA.js";import"./chunk-OBOU4ZZM.js";import"./chunk-D7XCQWP2.js";import"./chunk-AE5OMKRY.js";import"./chunk-OBV7RNHV.js";import"./chunk-7CQMWEMY.js";import"./chunk-GOZYWU4B.js";import"./chunk-OUC3WICA.js";import{APPROVAL_MODES}from"./chunk-JZK2WGXA.js";import"./chunk-MPHSE7M4.js";import"./chunk-S2ZKZXHX.js";import"./chunk-7UK4WJWS.js";import"./chunk-4GP3PH7Z.js";import"./chunk-4QQKOW5M.js";import"./chunk-OV3EBH6J.js";import"./chunk-EBMCWXGZ.js";import"./chunk-XZTE4YTN.js";import"./chunk-LSASUDF2.js";import"./chunk-2V5EKGDK.js";import"./chunk-MOKVM4PT.js";import"./chunk-YIW3H46P.js";import"./chunk-EOMRLUNZ.js";import"./chunk-4ZRCV3JY.js";import"./chunk-TL6MLBXR.js";import{isUnusableScriptEntry}from"./chunk-NMY3PYNO.js";import"./chunk-YGLM5XPP.js";import"./chunk-WGNF7FPC.js";import"./chunk-4NPYOXJO.js";import"./chunk-MWGB5RCF.js";import"./chunk-SCD5TUBG.js";import"./chunk-NTRFETZB.js";import"./chunk-TL3SF2GA.js";import"./chunk-LMJPU2JM.js";import"./chunk-VFB6Q74I.js";import"./chunk-4JNHUZ7M.js";import"./chunk-SW54YEPK.js";import"./chunk-ZCRL73DT.js";import"./chunk-A6LT3FIJ.js";import"./chunk-S6RXVOY6.js";import"./chunk-YZFNBUKG.js";import"./chunk-AGEDDL7Z.js";import"./chunk-2NJJHZ52.js";import"./chunk-BN4FIQ77.js";import"./chunk-X64RXJQQ.js";import"./chunk-HETUGUHE.js";import"./chunk-ET2Z7ZGF.js";import"./chunk-XFPYXD2P.js";import"./chunk-3YWXKSOI.js";import"./chunk-5CWTKFI4.js";import"./chunk-C4MVD5OI.js";import"./chunk-Z2W7S4O4.js";import"./chunk-476F6QIM.js";import"./chunk-4R67LXKL.js";import"./chunk-FQRF6B65.js";import"./chunk-ZWPSBU7K.js";import{parseLineTolerant}from"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-W5NWIGKO.js";import"./chunk-KVA6DHHF.js";import"./chunk-PWOQASXT.js";import"./chunk-K7JCVESI.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7DOOXUDG.js";import"./chunk-77V43YOE.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-4DIWAQ5G.js";import"./chunk-Q6UAOTP3.js";import"./chunk-AFO5ER23.js";import"./chunk-GOR7FFVE.js";import"./chunk-4ZBZL23U.js";import{atomicWriteFileSync}from"./chunk-BMHYEQTI.js";import"./chunk-ZZZAYAJW.js";import"./chunk-XMANRGPK.js";import"./chunk-3XVPZY7X.js";import"./chunk-KQX4H2D3.js";import"./chunk-URNNJMIC.js";import"./chunk-GU22I6TY.js";import"./chunk-YEYW7PPR.js";import"./chunk-AYVCT5FF.js";import{ignoreBrokenPipe,writeStderrLine,writeStderrLineSafe,writeStdoutLine,writeStdoutLineSafe}from"./chunk-M4ECEHLX.js";import"./chunk-DBRQGEEI.js";import"./chunk-B3ZFUGTC.js";import"./chunk-IRINPFG7.js";import"./chunk-6GTPLW7K.js";import"./chunk-NGVRCUYD.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-O5EKX7LG.js";import"./chunk-TM6ZCBR7.js";import"./chunk-SVAPAMMG.js";import"./chunk-3KUHQGOS.js";import"./chunk-I6S7NGX3.js";import{ToolNames}from"./chunk-SBZFGYYS.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-2UOMCYQG.js";import"./chunk-I7L2TX4M.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import{init_esbuild_shims}from"./chunk-VKDAXTCZ.js";import{__export,__name,__toESM}from"./chunk-KBWJGX7I.js";init_esbuild_shims();init_esbuild_shims();import{existsSync as existsSync2,mkdirSync,readFileSync as readFileSync2,writeFileSync}from"node:fs";import{dirname as dirname2}from"node:path";init_esbuild_shims();function tokenizeArgs(raw){const tokens=[];let current="";let quote=null;let sawAny=false;for(const ch of raw){if(quote){if(ch===quote){quote=null}else{current+=ch}continue}if(ch==='"'||ch==="'"){quote=ch;sawAny=true;continue}if(/\s/.test(ch)){if(current||sawAny)tokens.push(current);current="";sawAny=false;continue}current+=ch}if(current||sawAny)tokens.push(current);return tokens}__name(tokenizeArgs,"tokenizeArgs");init_esbuild_shims();var SAFE_DEFAULTS={attribution:true,comment:false,effort:void 0,reverseAuditRounds:void 0,approachRounds:void 0,sandbox:void 0};function operatorReviewSettings(){let review;try{review=loadSettings(void 0,{skipWorkspaceSettings:true}).merged.review}catch(error){writeStderrLineSafe(`NOTE: review settings could not be loaded (${error instanceof Error?error.message.split("\n")[0]:String(error)}); this review uses the defaults \u2014 attribution on, no auto-posting, no effort or round-cap override. Fix the settings file to restore them.`);return{...SAFE_DEFAULTS}}const rounds=review?.reverseAuditRounds;const approach=review?.approachRounds;return{attribution:typeof review?.attribution==="boolean"?review.attribution:true,comment:review?.comment===true,effort:typeof review?.effort==="string"?review.effort:void 0,severityFloor:typeof review?.severityFloor==="string"?review.severityFloor:void 0,sandbox:typeof review?.sandbox==="string"?review.sandbox:void 0,reverseAuditRounds:typeof rounds==="number"&&Number.isInteger(rounds)&&rounds>0?rounds:void 0,approachRounds:typeof approach==="number"&&Number.isInteger(approach)&&approach>0?approach:void 0}}__name(operatorReviewSettings,"operatorReviewSettings");init_esbuild_shims();import{createHash}from"node:crypto";import{existsSync,readFileSync,readdirSync,realpathSync,statSync}from"node:fs";import{basename,dirname,extname,join,relative,resolve,sep}from"node:path";var DIGEST_FILE="review-sources.sha256";var NOT_BUNDLED_RE=/\.(?:test|spec)\.(?:d\.)?[cm]?[jt]sx?$/;var NOT_BUNDLED_DIR=new Set(["__fixtures__","__snapshots__"]);var NOT_BUNDLED_FILE=new Set(["test-utils.ts"]);var NOT_BUNDLED_SKILL_FILE=new Set(["DESIGN.md"]);var DIGESTED_EXTENSIONS={code:new Set([".ts",".tsx",".mts",".cts",".js",".mjs",".json",".jsx"]),skill:new Set([".md"])};function isDigestedFile(kind,name){if(!DIGESTED_EXTENSIONS[kind].has(extname(name)))return false;if(kind!=="code")return!NOT_BUNDLED_SKILL_FILE.has(name);return!NOT_BUNDLED_RE.test(name)&&!NOT_BUNDLED_FILE.has(name)}__name(isDigestedFile,"isDigestedFile");function measureReviewSources(repoRoot2,roots){const state={incomplete:false,absentRoots:0};const files=[];for(const root of roots)files.push(...sourceFilesUnder(root,state,false));const partial=state.absentRoots>0&&state.absentRoots<roots.length;if(state.incomplete||files.length===0){return{digest:void 0,incomplete:state.incomplete,partial}}const hash=createHash("sha256");for(const file of files.sort()){let content;try{content=readFileSync(file)}catch{return{digest:void 0,incomplete:true,partial}}hash.update(relative(repoRoot2,file).split(sep).join("/"));hash.update("\0");hash.update(content);hash.update("\0")}return{digest:hash.digest("hex"),incomplete:false,partial}}__name(measureReviewSources,"measureReviewSources");function bundleStaleness(stampedDigest,currentDigest){if(!stampedDigest){return{stale:false,unmeasured:"the bundle carries no source digest"}}if(!currentDigest){return{stale:false,unmeasured:"no review sources were found to compare"}}return{stale:stampedDigest!==currentDigest}}__name(bundleStaleness,"bundleStaleness");function*sourceFilesUnder(root,state,listed){const{kind}=root;let entries;try{entries=readdirSync(root.path,{withFileTypes:true})}catch{let stats;try{stats=statSync(root.path)}catch(err){if(listed||err.code!=="ENOENT")state.incomplete=true;else state.absentRoots+=1;return}if(stats.isDirectory()){state.incomplete=true;return}if(stats.isFile()&&isDigestedFile(kind,basename(root.path)))yield root.path;return}for(const e of entries){const full=join(root.path,e.name);if(e.isDirectory()){if(kind!=="code"||!NOT_BUNDLED_DIR.has(e.name))yield*sourceFilesUnder({path:full,kind},state,true)}else if(e.isFile()&&isDigestedFile(kind,e.name)){yield full}}}__name(sourceFilesUnder,"sourceFilesUnder");function reviewSourceRoots(repoRoot2){const cli=join(repoRoot2,"packages","cli","src","commands");return[{path:join(cli,"review"),kind:"code"},{path:join(cli,"review.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","services","review-worktree-lease.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","utils","shell-args.ts"),kind:"code"},{path:join(repoRoot2,"packages","cli","src","utils","paths.ts"),kind:"code"},{path:join(repoRoot2,"packages","core","src","skills","bundled","review"),kind:"skill"}]}__name(reviewSourceRoots,"reviewSourceRoots");function bundleStalenessNotices(entryPath,brief){try{if(!entryPath)return void 0;let entry=entryPath;try{entry=realpathSync(entryPath)}catch{}const distDir=dirname(resolve(entry));if(basename(distDir)!=="dist")return void 0;const repoRoot2=dirname(distDir);let stamped;try{const raw=readFileSync(join(distDir,DIGEST_FILE),"utf8").trim();if(/^[0-9a-f]{64}$/.test(raw))stamped=raw}catch{}const roots=reviewSourceRoots(repoRoot2);const measured=measureReviewSources(repoRoot2,roots);const current=measured.digest;if(stamped&&current&&measured.partial){return`review: could not check whether the bundle is current \u2014 only some of the review sources are present`+(brief?" (a partial checkout).":" (a sparse or partial checkout). The stamp covers the whole tree; materialize the missing sources to compare again.")}const staleness=bundleStaleness(stamped,current);const warning=staleBundleWarning(staleness,brief);if(warning)return warning;if(stamped&&!current&&(measured.incomplete||roots.some(r=>existsSync(r.path)))){const reason=measured.incomplete?"a review source could not be read, so nothing was compared"+(brief?".":". Re-run once the tree is settled."):`${staleness.unmeasured}.`;return`review: could not check whether the bundle is current \u2014 ${reason}`}if(!stamped&&current){return`review: could not check whether the bundle is current \u2014 ${staleness.unmeasured}. `+(brief?"Rebuild with `npm run bundle` to record one.":"Either it was built before this check existed, or the build declined to record one; rebuild with `npm run bundle` and, if the line persists, read that build's output for why it refused.")}return void 0}catch{return void 0}}__name(bundleStalenessNotices,"bundleStalenessNotices");function staleBundleWarning(s,brief){if(!s.stale)return void 0;if(brief){return`review: the bundle these commands run from was NOT built from the review sources in this tree \u2014 rebuild with \`npm run bundle\` and start again, or read every result below as being about the older build.`}return`review: the bundle these commands run from was NOT built from the review sources in this tree. Every \`qwen review \u2026\` step below runs the BUILT bundle, not the working tree, so a review source changed since that build will not take effect and this run will measure the old behaviour without saying so. Rebuild with \`npm run bundle\` and start again, or read every result below as being about the older build.`}__name(staleBundleWarning,"staleBundleWarning");var EFFORT_LEVELS=new Set(["low","medium","high"]);var EFFORT_OPTION={type:"string",choices:[...EFFORT_LEVELS],describe:"The review effort. `medium` (balanced) drops the adversarial personas (6a/6b/6c), the counter-frame audit (6d) and the language-pitfall and wrapper/proxy specialists (1d/1e) from the required roster; recorded in the plan so check-coverage, agent-prompt --roster and compose-review all read one value. Omit for the full (high) roster."};var deadlineOption=__name(command=>({type:"string",describe:"The review's wall, in minutes, recorded in the plan as a duration from the attempt's start \u2014 the round builder refuses a reverse-audit round that no longer fits inside it plus the tail reserve"+(command.resumes?", and a `--resume` from a new session renews it":"")+". Omit for the topology's default (8h on a 3A diff, 12h on a 3B one, 16h when huge), which bounds a run that has stopped converging without touching a healthy one; `none` records no wall; a wall that cannot hold a convergence (two rounds plus the reserve \u2014 at or under ninety minutes under the default reserve, more under the shell's reserve / compose-floor overrides) is refused up front, and the fan-out before round 1 spends any wall too. "+(command.resumes?"Ignored on a resumed run once it parses (the grammar and the default rule still apply; the plan keeps its recorded wall). ":"")+"A QWEN_REVIEW_DEADLINE_EPOCH in the environment (CI) wins over the flag and the default. An explicit deadline, like the environment's, applies the huge tier's round reduction; the default does not. Pauses count against the wall and also price the next round; the Review Deadline section of the code-review docs gives the ceilings (about 3h20m / 5h20m / 7h20m on the 8h / 12h / 16h defaults)."}),"deadlineOption");var SEVERITY_FLOORS=new Set(["critical","suggestion","auto"]);var TOPOLOGIES=new Set(["minimal","auto"]);var PR_URL_RE=/^(https?):\/\/([A-Za-z0-9.-]+(?::\d+)?)\/([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)\/pull\/(\d+)(?=$|[/?#])/i;var AONE_CR_URL_RE=/^(https?):\/\/((?:[A-Za-z0-9-]+\.)+alibaba-inc\.com(?::\d+)?)\/((?:[A-Za-z0-9_.-]+\/)+[A-Za-z0-9_.-]+)\/codereview\/(\d+)(?=$|[/?#])/i;function asEffort(value){const lower=value.toLowerCase();return EFFORT_LEVELS.has(lower)?lower:null}__name(asEffort,"asEffort");function asSeverityFloor(value){const lower=value.toLowerCase();return SEVERITY_FLOORS.has(lower)?lower:null}__name(asSeverityFloor,"asSeverityFloor");function asTopology(value){const lower=value.toLowerCase();return TOPOLOGIES.has(lower)?lower:null}__name(asTopology,"asTopology");function isFlag(token){return token.length>1&&token.startsWith("-")}__name(isFlag,"isFlag");function isDeadlineValue(token){const t=token.trim();return/^\d+$/.test(t)||t.toLowerCase()==="none"}__name(isDeadlineValue,"isDeadlineValue");function isPureInteger(token){return/^\d+$/.test(token)}__name(isPureInteger,"isPureInteger");function isPrShapedToken(token){const shape=classifyToken(token);return shape!==null&&shape!=="invalid-url"&&(shape.type==="pr-number"||shape.type==="pr-url")}__name(isPrShapedToken,"isPrShapedToken");function classifyToken(token){if(isFlag(token))return null;const integerForm=token.replace(/[.,,。!!??;;、]+$/,"");if(isPureInteger(integerForm)){return{type:"pr-number",number:Number(integerForm)}}const urlMatch=PR_URL_RE.exec(token);if(urlMatch){const[,scheme,host,owner,repo,num]=urlMatch;const lowerHost=host.toLowerCase();if(isAoneCanonicalHost(lowerHost))return"invalid-url";return{type:"pr-url",url:`${scheme.toLowerCase()}://${lowerHost}/${owner}/${repo}/pull/${Number(num)}`,host:lowerHost,owner,repo,number:Number(num)}}const aoneMatch=AONE_CR_URL_RE.exec(token);if(aoneMatch){const[,scheme,host,groupPath,num]=aoneMatch;const lowerHost=host.toLowerCase();if(!isAoneCanonicalHost(lowerHost))return"invalid-url";const segs=groupPath.split("/").filter(Boolean);const owner=segs[segs.length-2];const repo=segs[segs.length-1];return{type:"pr-url",url:`${scheme.toLowerCase()}://${lowerHost}/${segs.join("/")}/codereview/${Number(num)}`,host:lowerHost,owner,repo,groupPath:segs.join("/"),number:Number(num)}}if(/^https?:\/\//i.test(token))return"invalid-url";return{type:"file",path:token}}__name(classifyToken,"classifyToken");function parseReviewArgs(raw,defaults={},rememberExplicitEffort){const tokens=tokenizeArgs(raw);const warnings=[];const unknownFlags=[];let commentRequestedByFlag=false;let fixRequested=false;let resumeRequested=false;let explicitEffort=null;let explicitFloor=null;let explicitTopology=null;let recordedHostFlag;let configuredEffort;let invalidConfiguredEffort;if(defaults.effort!==void 0){const normalized=asEffort(defaults.effort);if(normalized!==null){configuredEffort=normalized}else{invalidConfiguredEffort=defaults.effort}}let configuredFloor;let invalidConfiguredFloor;if(defaults.severityFloor!==void 0){const normalized=asSeverityFloor(defaults.severityFloor);if(normalized==="auto"){}else if(normalized!==null){configuredFloor=normalized}else{invalidConfiguredFloor=defaults.severityFloor}}const effortIssues=[];const deadlineIssues=[];const consumedDeadlineValues=[];const floorIssues=[];const topologyIssues=[];const kept=[];for(let i=0;i<tokens.length;i++){const token=tokens[i];if(token==="--comment"){commentRequestedByFlag=true;continue}if(token==="--fix"){fixRequested=true;continue}if(token==="--host"||token.startsWith("--host=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);if(value!=="")recordedHostFlag=value;continue}const next=i+1<tokens.length?tokens[i+1]:void 0;if(next!==void 0&&next!==""&&!isFlag(next)){recordedHostFlag=next;i++}continue}if(token==="--resume"){resumeRequested=true;continue}if(token==="--effort"||token.startsWith("--effort=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const effortValue=asEffort(value);if(effortValue!==null){explicitEffort=effortValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--effort"})}else{effortIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextEffort=next!==void 0?asEffort(next):null;if(nextEffort!==null){explicitEffort=nextEffort;i++;continue}if(next===""){effortIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){effortIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--effort"});i++;continue}if(token==="--severity-floor"||token.startsWith("--severity-floor=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const floorValue=asSeverityFloor(value);if(floorValue!==null){explicitFloor=floorValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--severity-floor"})}else{floorIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextFloor=next!==void 0?asSeverityFloor(next):null;if(nextFloor!==null){explicitFloor=nextFloor;i++;continue}if(next===""){floorIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){floorIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--severity-floor"});i++;continue}if(token==="--topology"||token.startsWith("--topology=")){if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);const topologyValue=asTopology(value);if(topologyValue!==null){explicitTopology=topologyValue}else if(value!==""&&isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--topology"})}else{topologyIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;const nextTopology=next!==void 0?asTopology(next):null;if(nextTopology!==null){explicitTopology=nextTopology;i++;continue}if(next===""){topologyIssues.push({kind:"missing"});i++;continue}if(next===void 0||isFlag(next)){topologyIssues.push({kind:"missing"});continue}kept.push({token:next,invalidValueOf:"--topology"});i++;continue}if(token==="--deadline"||token.startsWith("--deadline=")){unknownFlags.push("--deadline");if(token.includes("=")){const value=token.slice(token.indexOf("=")+1);if(value===""){deadlineIssues.push({kind:"missing"})}else if(isDeadlineValue(value)){consumedDeadlineValues.push(value)}else if(isPrShapedToken(value)){kept.push({token:value,invalidValueOf:"--deadline"})}else{deadlineIssues.push({kind:"invalid-eq",value})}continue}const next=i+1<tokens.length?tokens[i+1]:void 0;if(next===void 0||isFlag(next)){deadlineIssues.push({kind:"missing"});continue}if(next===""){deadlineIssues.push({kind:"missing"});i++;continue}if(isDeadlineValue(next)){consumedDeadlineValues.push(next);i++;continue}kept.push({token:next,invalidValueOf:"--deadline"});i++;continue}if(isFlag(token)){unknownFlags.push(token);warnings.push(`Unrecognized flag ${JSON.stringify(token)}; ignored.`);continue}kept.push({token})}const soleCandidate=kept.length===1;const isPrShaped=isPrShapedToken;const isPrUrlToken=__name(token=>{const c=classifyToken(token);return c!==null&&c!=="invalid-url"&&c.type==="pr-url"},"isPrUrlToken");const targetKey=__name(token=>{const shape=classifyToken(token);if(shape===null||shape==="invalid-url")return`raw:${token}`;if(shape.type==="pr-number")return`pr:${shape.number}`;if(shape.type==="pr-url")return`pr:${shape.number}@${shape.host}/${shape.groupPath??`${shape.owner}/${shape.repo}`}`;return`raw:${token}`},"targetKey");const prShapedKeys=[...new Set(kept.filter(k=>k.invalidValueOf!==void 0&&isPrShaped(k.token)).map(k=>targetKey(k.token)))];const distinctPr=new Set;for(const k of prShapedKeys){const bare=k.split("@")[0];if(k.includes("@")){if(distinctPr.has(bare))distinctPr.delete(bare);distinctPr.add(k)}else if(![...distinctPr].some(e=>e===bare||e.startsWith(`${bare}@`))){distinctPr.add(k)}}const poolKey=distinctPr.size===1?[...distinctPr][0]:void 0;const poolPrNumber=poolKey!==void 0?Number(poolKey.split("@")[0].replace(/^pr:/,"")):void 0;const poolHasUrlSpelling=poolPrNumber!==void 0&&kept.some(k=>k.invalidValueOf!==void 0&&isPrUrlToken(k.token));const hasValidCandidate=kept.some(k=>{if(k.invalidValueOf!==void 0)return false;if(poolHasUrlSpelling){const c=classifyToken(k.token);if(c!==null&&c!=="invalid-url"&&c.type==="pr-number"&&c.number===poolPrNumber){return false}}return true});if(!hasValidCandidate&&distinctPr.size>1){const shown=kept.filter(k=>k.invalidValueOf!==void 0&&isPrShaped(k.token)).map(k=>JSON.stringify(k.token));warnings.push(`Ambiguous target: ${shown.join(" and ")} arrived as invalid flag values and name different PRs; refusing to choose between them.`)}const targetTokens=[];const preferredRescueToken=!hasValidCandidate&&distinctPr.size===1?kept.find(k=>k.invalidValueOf!==void 0&&isPrUrlToken(k.token))?.token:void 0;const issueListFor={"--effort":effortIssues,"--severity-floor":floorIssues,"--topology":topologyIssues,"--deadline":deadlineIssues};let rescuedPr=false;for(const k of kept){if(k.invalidValueOf!==void 0){const issues=issueListFor[k.invalidValueOf];const survives=isPrShaped(k.token)?!hasValidCandidate&&distinctPr.size===1:soleCandidate;if(!survives){issues.push({kind:"discarded",value:k.token});continue}if(isPrShaped(k.token)){if(rescuedPr)continue;if(preferredRescueToken!==void 0&&k.token!==preferredRescueToken&&!isPrUrlToken(k.token)){continue}rescuedPr=true}issues.push({kind:"kept-as-target",value:k.token})}targetTokens.push(k.token)}const prIdx=targetTokens.findIndex(isPrShapedToken);let promotedNumberTarget=false;if(prIdx>0){const promotedShape=classifyToken(targetTokens[prIdx]);promotedNumberTarget=promotedShape!==null&&promotedShape!=="invalid-url"&&promotedShape.type==="pr-number";const[prToken]=targetTokens.splice(prIdx,1);targetTokens.unshift(prToken)}const urlIdx=targetTokens.findIndex(isPrUrlToken);if(urlIdx>0){const[urlToken]=targetTokens.splice(urlIdx,1);targetTokens.unshift(urlToken)}let target={type:"local"};let targetAssigned=false;const extraTokens=[];const trailingExtras=[];for(const tok of targetTokens){const classified=classifyToken(tok);if(classified==="invalid-url"){warnings.push(`Unrecognized URL ${JSON.stringify(tok)} \u2014 not a PR/CR URL (expected \u2026/pull/<number> or \u2026/codereview/<id>); refusing to guess a target from it.`);extraTokens.push(tok);continue}if(targetAssigned){if(target.type==="pr-url"&&classified!==null&&classified.type==="pr-number"&&classified.number===target.number){continue}extraTokens.push(tok);trailingExtras.push(tok);continue}target=classified??{type:"local"};targetAssigned=true}if(trailingExtras.length>0){warnings.push(`Ignoring extra argument(s): ${trailingExtras.map(t=>JSON.stringify(t)).join(", ")}.`)}const isPr=target.type==="pr-number"||target.type==="pr-url";const topology=explicitTopology??"auto";const topologySource=explicitTopology!==null?"explicit":"default";const isMinimal=topology==="minimal";const commentRequested=commentRequestedByFlag||defaults.comment===true;const promotedNumberFinal=promotedNumberTarget&&target.type==="pr-number";const commentEffective=commentRequested&&isPr&&!isMinimal&&!promotedNumberFinal;if(commentRequestedByFlag&&!isPr){warnings.push("Warning: `--comment` flag is ignored because the review target is not a PR.")}else if(commentRequested&&isPr&&isMinimal){warnings.push(commentRequestedByFlag?"Warning: `--comment` is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm posts nothing.":"Warning: the `review.comment` setting is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm posts nothing.")}else if(commentRequested&&promotedNumberFinal&&target.type==="pr-number"){warnings.push(commentRequestedByFlag?`Bare number ${target.number} was promoted to the PR target from prose, so \`--comment\` posting authority is withheld \u2014 a count is indistinguishable from a PR id; confirm the intended PR and re-invoke with its number typed first to post.`:`Bare number ${target.number} was promoted to the PR target from prose, so the \`review.comment\` setting's posting authority is withheld \u2014 a count is indistinguishable from a PR id; confirm the intended PR and re-invoke with its number typed first to post.`)}const resumeEffective=resumeRequested&&isPr&&!isMinimal;if(resumeRequested&&!isPr){warnings.push("Warning: `--resume` flag is ignored because the review target is not a PR \u2014 only a PR review has interrupted state to continue.")}else if(resumeRequested&&isPr&&isMinimal){warnings.push("Warning: `--resume` is ignored because `--topology minimal` runs a fresh single pass \u2014 it neither continues nor consumes an interrupted run.")}const fixEffective=fixRequested&&!isPr&&!isMinimal;if(fixRequested&&isPr){warnings.push("Warning: `--fix` flag is ignored because a PR review runs in an ephemeral worktree that is deleted when the review ends \u2014 there is no durable tree to fix. Use `--comment` to publish the findings instead.")}else if(fixRequested&&isMinimal){warnings.push("Warning: `--fix` is ignored because `--topology minimal` is terminal-only \u2014 the minimal arm edits nothing.")}let effort;let effortSource;if(explicitEffort!==null){effort=explicitEffort;effortSource="explicit"}else if(defaults.lastUsedEffort!==void 0){effort=defaults.lastUsedEffort;effortSource="last_used"}else if(configuredEffort!==void 0){effort=configuredEffort;effortSource="configured"}else{effort=isPr?"high":"medium";effortSource="default"}if(commentEffective&&effort!=="high"){effort="high";effortSource="forced-by-comment";warnings.push(commentRequestedByFlag?"`--comment` requires a verified review; running at high effort.":"`review.comment` is enabled in settings; posting requires a verified review \u2014 running at high effort.")}if(fixEffective&&effort==="low"){effort="medium";effortSource="forced-by-fix";warnings.push("`--fix` edits your working tree, so it requires verified findings; running at medium effort.")}if(effortSource==="last_used"){const example=effort==="medium"?"high":"medium";warnings.push(`No effort level given \u2014 reusing ${effort}, the level you typed last time. Type a level like \`/review --effort ${example}\` to change it.`)}const resolution=effortSource==="explicit"?`--effort ${effort} (the last valid occurrence) is in effect`:effortSource==="forced-by-comment"?commentRequestedByFlag?"`--comment` forces high effort":"the `review.comment` setting forces high effort":effortSource==="forced-by-fix"?"`--fix` forces at least medium effort":effortSource==="configured"?"using the configured review.effort":effortSource==="last_used"?"using the last explicitly typed effort":"using the default effort";for(const issue of effortIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)}; ${resolution}.`);break;case"missing":warnings.push(`--effort requires a value; ${resolution}.`);break;case"discarded":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)} discarded; ${resolution}.`);break;case"kept-as-target":warnings.push(`Invalid --effort value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${resolution}.`);break;default:break}}if(invalidConfiguredEffort!==void 0){warnings.push(`Invalid review.effort value ${JSON.stringify(invalidConfiguredEffort)} in settings; ${resolution}.`)}const deadlinePrefix="`--deadline` is an option of the capture commands (`fetch-pr`, `capture-local`, `plan-diff`), not of /review; ignored";for(const value of consumedDeadlineValues){warnings.push(`${deadlinePrefix} together with its value ${JSON.stringify(value)}.`)}for(const issue of deadlineIssues){switch(issue.kind){case"missing":warnings.push(`${deadlinePrefix} (it had no value).`);break;case"invalid-eq":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline.`);break;case"discarded":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline and was discarded.`);break;case"kept-as-target":warnings.push(`${deadlinePrefix}; its value ${JSON.stringify(issue.value)} is not a deadline \u2014 treating it as the review target.`);break;default:break}}let severityFloor="auto";let severityFloorSource="default";if(explicitFloor!==null&&!isPr){warnings.push("Warning: `--severity-floor` flag is ignored because the review target is not a PR.")}else if(explicitFloor!==null){severityFloor=explicitFloor;severityFloorSource="explicit"}else if(configuredFloor!==void 0&&isPr){severityFloor=configuredFloor;severityFloorSource="configured"}const floorResolution=severityFloorSource==="explicit"?`--severity-floor ${severityFloor} (the last valid occurrence) is in effect`:severityFloorSource==="configured"?"using the configured review.severityFloor":"using the round-adaptive default";for(const issue of floorIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)}; ${floorResolution}.`);break;case"missing":warnings.push(`--severity-floor requires a value; ${floorResolution}.`);break;case"discarded":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)} discarded; ${floorResolution}.`);break;case"kept-as-target":warnings.push(`Invalid --severity-floor value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${floorResolution}.`);break;default:break}}if(invalidConfiguredFloor!==void 0&&isPr){warnings.push(`Invalid review.severityFloor value ${JSON.stringify(invalidConfiguredFloor)} in settings; ${floorResolution}.`)}const topologyResolution=topologySource==="explicit"?`--topology ${topology} (the last valid occurrence) is in effect`:"using the default topology (auto)";for(const issue of topologyIssues){switch(issue.kind){case"invalid-eq":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)}; ${topologyResolution}.`);break;case"missing":warnings.push(`--topology requires a value; ${topologyResolution}.`);break;case"discarded":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)} discarded; ${topologyResolution}.`);break;case"kept-as-target":warnings.push(`Invalid --topology value ${JSON.stringify(issue.value)}; treating it as the review target \u2014 ${topologyResolution}.`);break;default:break}}if(explicitEffort!==null){rememberExplicitEffort?.(explicitEffort)}return{target,effort,effortSource,comment:{requested:commentRequestedByFlag,effective:commentEffective},fix:{requested:fixRequested,effective:fixEffective},severityFloor,severityFloorSource,topology,topologySource,...recordedHostFlag!==void 0?{host:recordedHostFlag}:{},resume:{requested:resumeRequested,effective:resumeEffective},promotedNumberTarget:promotedNumberFinal,extraTokens,unknownFlags,warnings}}__name(parseReviewArgs,"parseReviewArgs");function reviewDefaultsFromSettings(){const review=operatorReviewSettings();return{effort:review.effort===void 0||review.effort.toLowerCase()==="auto"?void 0:review.effort,comment:review.comment,severityFloor:review.severityFloor===void 0||review.severityFloor.toLowerCase()==="auto"?void 0:review.severityFloor}}__name(reviewDefaultsFromSettings,"reviewDefaultsFromSettings");function readLastReviewEffort(path){let value;try{if(!existsSync2(path))return void 0;value=readFileSync2(path,"utf8").trim()}catch(error){writeStderrLineSafe(`NOTE: the remembered review effort at ${path} could not be read (${error instanceof Error?error.message.split("\n")[0]:String(error)}); resolving from review.effort and the target default instead. Type \`--effort <level>\` to record a new one.`);return void 0}const effort=asEffort(value);if(effort===null){writeStderrLineSafe(`NOTE: ${path} must contain low, medium, or high; got ${JSON.stringify(value)}. Ignoring it; resolving from review.effort and the target default instead. Type \`--effort <level>\` to record a new one.`);return void 0}return effort}__name(readLastReviewEffort,"readLastReviewEffort");function writeLastReviewEffort(path,explicitEffort,resolvedEffort){try{mkdirSync(dirname2(path),{recursive:true,mode:448});atomicWriteFileSync(path,`${explicitEffort}
4
4
  `,{mode:384,forceMode:true,noFollow:true})}catch(error){writeStderrLineSafe(`NOTE: the explicit review effort ${explicitEffort} could not be remembered at ${path} (${error instanceof Error?error.message.split("\n")[0]:String(error)}); this review still uses ${resolvedEffort}.`)}}__name(writeLastReviewEffort,"writeLastReviewEffort");function parseReviewArgsWithMemory(raw,defaults,effortPath){let explicitEffort;const initial=parseReviewArgs(raw,defaults,effort=>{explicitEffort=effort});if(explicitEffort!==void 0){writeLastReviewEffort(effortPath,explicitEffort,initial.effort);return initial}const lastUsedEffort=readLastReviewEffort(effortPath);return lastUsedEffort===void 0?initial:parseReviewArgs(raw,{...defaults,lastUsedEffort})}__name(parseReviewArgsWithMemory,"parseReviewArgsWithMemory");var parseArgsCommand={command:"parse-args [raw]",describe:"Parse the /review skill argument string (--comment, --fix, --resume, --effort, --severity-floor, --topology, target disambiguation) and emit the verdict as JSON; pass the string on stdin via --stdin (a positional that begins with a dash never reaches this handler \u2014 yargs rejects it as an unknown flag)",builder:__name(yargs=>yargs.positional("raw",{type:"string",describe:"The raw argument string as a single (quoted) argument \u2014 only safe when it cannot begin with a dash or contain quotes; otherwise use --stdin"}).option("stdin",{type:"boolean",describe:"Read the raw argument string from stdin (one trailing newline is stripped). Immune to flag-first strings and shell quoting; this is the form the /review skill uses."}).option("out",{type:"string",describe:"Also write the JSON verdict to this path"}),"builder"),handler:__name(argv=>{const{raw,stdin,out}=argv;if(stdin&&raw!==void 0){throw new Error("parse-args: pass the raw string either as the positional argument or on --stdin, not both")}const positionals=argv["_"].map(String);let commandPrefix=0;while(commandPrefix<positionals.length&&(positionals[commandPrefix]==="review"||positionals[commandPrefix]==="parse-args")){commandPrefix++}const unbound=positionals.slice(commandPrefix);if(unbound.length>0){throw new Error(`parse-args: unexpected extra argument(s) ${JSON.stringify(unbound)} \u2014 a raw string that begins with a flag must be passed via --stdin, not after --`)}const rawStr=stdin?readFileSync2(0,"utf8").replace(/\r?\n$/,""):raw??"";const bundleNotice=bundleStalenessNotices(process.argv[1]);if(bundleNotice){writeStderrLineSafe(bundleNotice)}const projectRoot=process.cwd();const effortPath=lastReviewEffortPath(projectRoot,process.env["QWEN_CODE_PROJECT_DIR"]);const parsed=parseReviewArgsWithMemory(rawStr,reviewDefaultsFromSettings(),effortPath);const json=JSON.stringify(parsed,null,2);if(out){if(writesIntoReviewTmp(out))ensureReviewTmpDir("parse-args");mkdirSync(dirname2(out),{recursive:true});writeFileSync(out,json,"utf8")}writeStdoutLine(json)},"handler")};init_esbuild_shims();function runMatchRemote(args){try{git("rev-parse","--is-inside-work-tree")}catch(err){writeStderrLineSafe(`match-remote: git cannot resolve this repository: ${err.message}`);process.exitCode=1;return}const host=resolveGhHost(args.host)??"github.com";let remoteV;try{remoteV=git("remote","-v")}catch(err){writeStderrLineSafe(`match-remote: \`git remote -v\` failed: ${err.message}`);process.exitCode=1;return}const{matched}=matchRemotes(remoteV,{owner:args.owner,repo:args.repo,host,groupPath:args.groupPath});if(matched.length===1){writeStdoutLine(matched[0]);return}if(matched.length===0){writeStdoutLine("none");writeStderrLineSafe(`match-remote: no remote matches ${host}/${args.owner}/${args.repo} by exact host + owner/repo equality \u2014 the PR is not served by any remote of this repository.`);process.exitCode=6;return}for(const name of matched){writeStdoutLine(name)}writeStderrLineSafe(`warning: ${matched.length} remotes match ${host}/${args.owner}/${args.repo} (${matched.join(", ")}); refusing to pick one \u2014 the review stops here.`);process.exitCode=7}__name(runMatchRemote,"runMatchRemote");var matchRemoteCommand={command:"match-remote",describe:"Print the git remote whose URL matches an owner/repo by exact host + owner/repo equality (exit 6 when none, exit 7 when several)",builder:__name(yargs=>yargs.option("owner",{type:"string",demandOption:true,describe:"The repository owner (from the PR URL, or `review meta`)"}).option("repo",{type:"string",demandOption:true,describe:"The repository name"}).option("host",{type:"string",describe:"The PR's host \u2014 from its URL, or from `review meta` for a bare number (omitted: inherit an operator-exported GH_HOST, else github.com)"}).option("group-path",{type:"string",describe:"The target's FULL group path (`group/subgroup/project`) when its URL carries a nested group \u2014 compares every path segment against nested-group remotes (without it only the last two segments are compared)"}),"builder"),handler:__name(argv=>{runMatchRemote({owner:String(argv["owner"]),repo:String(argv["repo"]),host:argv.host,groupPath:argv["group-path"]})},"handler")};init_esbuild_shims();init_esbuild_shims();function roundModelIdFrom(env){const identity=(env["QWEN_CODE_MODEL_IDENTITY"]??"").trim();if(identity!=="")return identity;return(env["QWEN_CODE_MODEL"]??"").trim()}__name(roundModelIdFrom,"roundModelIdFrom");function certifierMatchesRound(certifier,running){const c=certifier?.trim()??"";return c!==""&&running!==""&&c===running}__name(certifierMatchesRound,"certifierMatchesRound");import{mkdirSync as mkdirSync8,readFileSync as readFileSync14,unlinkSync,writeFileSync as writeFileSync7}from"node:fs";import{createHash as createHash4}from"node:crypto";import{dirname as dirname8,join as join10}from"node:path";init_esbuild_shims();import{readFileSync as readFileSync8,statSync as statSync6}from"node:fs";init_esbuild_shims();init_esbuild_shims();var TEST_RE=/(^|\/)(__tests__|__snapshots__|__mocks__|tests?|spec|integration-tests|e2e)\/|\.(test|spec)\.[cm]?[jt]sx?$|_test\.(go|py|rb)$|(^|\/)test_[^/]+\.py$|(^|\/)src\/test\//;var GENERATED_RE=/(^|\/)(package-lock\.json|yarn\.lock|pnpm-lock\.yaml|bun\.lock(b)?|Cargo\.lock|go\.sum|poetry\.lock|Gemfile\.lock|composer\.lock|NOTICES\.txt)$|\.snap$|\.min\.(js|css)$|(^|\/)(dist|build|vendor|node_modules)\//;var DOCS_EXT=String.raw`\.(md|mdx|rst|txt|adoc)$`;var DOCS_RE=new RegExp(`(^|/)(docs|doc|documentation|website)/.*${DOCS_EXT}|^[^/]+${DOCS_EXT}`);function classifyPath(path){if(GENERATED_RE.test(path))return"generated";if(TEST_RE.test(path))return"test";if(DOCS_RE.test(path))return"docs";return"source"}__name(classifyPath,"classifyPath");var WRAPPER_SIGNAL_RE=/(wrapper|proxy|decorator|adapter|delegate|facade|cached|caching)/i;function chunkIdsProblem(ids){if(ids.some(id=>!Number.isSafeInteger(id)||id<1)){return"a chunk with no positive integer id"}if(new Set(ids).size!==ids.length){return"duplicate chunk ids"}return null}__name(chunkIdsProblem,"chunkIdsProblem");var DEFAULT_MAX_CHUNK_LINES=400;var MAX_CHUNK_CHARS=2e4;var READ_FILE_CHAR_CAP=25e3;var HUNK_RE=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/;function unquote(raw){return unquoteCStylePath(raw)}__name(unquote,"unquote");function stripPrefix(p){return p.startsWith("a/")||p.startsWith("b/")?p.slice(2):p}__name(stripPrefix,"stripPrefix");function stripHeaderTimestamp(raw){const tab=raw.indexOf(" ");return tab>=0?raw.slice(0,tab):raw}__name(stripHeaderTimestamp,"stripHeaderTimestamp");function cleanPath(raw){return stripPrefix(unquote(stripHeaderTimestamp(raw)))}__name(cleanPath,"cleanPath");function readQuoted(s,i){if(s[i]!=='"')return null;let j=i+1;while(j<s.length){if(s[j]==="\\"){j+=2;continue}if(s[j]==='"')return[s.slice(i,j+1),j+1];j++}return null}__name(readQuoted,"readQuoted");function splitHeaderPaths(rest){if(rest.startsWith('"')){const first=readQuoted(rest,0);if(!first||rest[first[1]]!==" ")return null;const after=first[1]+1;const second=rest[after]==='"'?readQuoted(rest,after):[rest.slice(after),rest.length];return second?[first[0],second[0]]:null}const q=rest.indexOf(' "');if(q>0&&rest.endsWith('"'))return[rest.slice(0,q),rest.slice(q+1)];const n=rest.length;if(n>=5&&(n-5)%2===0){const len=(n-5)/2;const old=rest.slice(0,2+len);const neu=rest.slice(3+len);if(old.startsWith("a/")&&neu.startsWith("b/")&&rest[2+len]===" "&&old.slice(2)===neu.slice(2)){return[old,neu]}}const idx=rest.lastIndexOf(" b/");if(idx>0)return[rest.slice(0,idx),rest.slice(idx+1)];return null}__name(splitHeaderPaths,"splitHeaderPaths");function parseDiff(diffText){const lines=diffText.split("\n");if(lines.length>0&&lines[lines.length-1]==="")lines.pop();const total=lines.length;const files=[];let cur=null;let curHunk=null;let oldPath="";let newCursor=0;const noteAdded=__name((f,line)=>{const last=f.addedRanges[f.addedRanges.length-1];if(last&&last.end===line-1)last.end=line;else f.addedRanges.push({start:line,end:line})},"noteAdded");const closeHunk=__name(endLine=>{if(curHunk){curHunk.diffEnd=endLine;curHunk=null}},"closeHunk");const closeFile=__name(endLine=>{if(cur){closeHunk(endLine);cur.diffEnd=endLine;cur.kind=classifyPath(cur.path);if(WRAPPER_SIGNAL_RE.test(cur.path))cur.wrapperSignal=true;files.push(cur);cur=null}},"closeFile");for(let i=0;i<total;i++){const line=lines[i];const n=i+1;if(line.startsWith("diff --git ")){closeFile(n-1);oldPath="";const tokens=splitHeaderPaths(line.slice("diff --git ".length));cur={path:tokens?cleanPath(tokens[1]):"(unknown)",kind:"source",diffStart:n,diffEnd:n,hunks:[],addedRanges:[],addedLines:0,removedLines:0,binary:false,wrapperSignal:false};continue}if(!cur)continue;if(line.startsWith("Binary files ")||line.startsWith("GIT binary patch")){cur.binary=true;continue}if(!curHunk){if(line.startsWith("rename from ")){cur.renameFrom=unquote(line.slice("rename from ".length));continue}if(line.startsWith("rename to ")){if(cur.renameFrom!==void 0&&oldPath===""){cur.path=unquote(line.slice("rename to ".length))}continue}if(line.startsWith("--- ")){const p=stripHeaderTimestamp(line.slice(4));if(p!=="/dev/null")oldPath=cleanPath(p);continue}if(line.startsWith("+++ ")){const p=stripHeaderTimestamp(line.slice(4));if(p!=="/dev/null")cur.path=cleanPath(p);else if(oldPath)cur.path=oldPath;cur.kind=classifyPath(cur.path);continue}}const hm=HUNK_RE.exec(line);if(hm){closeHunk(n-1);const newStart=Number(hm[3]);const newCount=hm[4]===void 0?1:Number(hm[4]);curHunk={diffStart:n,diffEnd:n,newStart,newEnd:newCount===0?newStart:newStart+newCount-1,newCount};cur.hunks.push(curHunk);newCursor=newStart;continue}if(curHunk){if(line.startsWith("+")){cur.addedLines++;noteAdded(cur,newCursor);newCursor++;if(!cur.wrapperSignal){cur.wrapperSignal=WRAPPER_SIGNAL_RE.test(line)}}else if(line.startsWith("-")){cur.removedLines++}else if(line===""||line.startsWith(" ")){newCursor++}}}closeFile(total);return{files,diffLines:total}}__name(parseDiff,"parseDiff");var MIN_SPLIT_SEGMENT=40;function isSafeSplitPoint(lines,n){const cur=lines[n-1];const prev=lines[n-2];if(cur===void 0||prev===void 0)return false;const isNewSide=__name(l=>l===""||/^[+ ]/.test(l),"isNewSide");if(!isNewSide(cur)||!isNewSide(prev))return false;if(cur==="")return false;const content=cur.slice(1);if(content.length===0||/^\s/.test(content))return false;return prev===""||/^\s*$/.test(prev.slice(1))}__name(isSafeSplitPoint,"isSafeSplitPoint");function charPrefix(lines){const p=new Array(lines.length+1).fill(0);for(let i=0;i<lines.length;i++)p[i+1]=p[i]+lines[i].length+1;return p}__name(charPrefix,"charPrefix");function charsIn(prefix,s,e){return prefix[e]-prefix[s-1]}__name(charsIn,"charsIn");function splitUnit(unit,lines,prefix,maxChunkLines,bodyStart){const over=__name((s,e)=>e-s+1>maxChunkLines||charsIn(prefix,s,e)>MAX_CHUNK_CHARS,"over");const bigEnough=__name((s,e)=>e-s+1>=MIN_SPLIT_SEGMENT||charsIn(prefix,s,e)>=MAX_CHUNK_CHARS/2,"bigEnough");if(!over(unit.start,unit.end))return[unit];const newLineOf=new Map;let newLine=unit.newStart;for(let n=bodyStart;n<=unit.end;n++){const c=lines[n-1]?.[0];if(c===" "||c==="+")newLineOf.set(n,newLine++)}const out=[];let segStart=unit.start;while(over(segStart,unit.end)){const upper=Math.min(unit.end,segStart+maxChunkLines-1);let cut=-1;for(let n=upper;n>bodyStart;n--){if(!isSafeSplitPoint(lines,n))continue;if(over(segStart,n-1))continue;if(!bigEnough(segStart,n-1))continue;cut=n;break}if(cut<0){for(let n=upper+1;n<=unit.end;n++){if(isSafeSplitPoint(lines,n)&&bigEnough(segStart,n-1)){cut=n;break}}}if(cut<0)break;out.push({...unit,start:segStart,end:cut-1});segStart=cut}out.push({...unit,start:segStart,end:unit.end});for(const seg of out){let lo=Number.POSITIVE_INFINITY;let hi=-1;for(let n=seg.start;n<=seg.end;n++){const nl=newLineOf.get(n);if(nl===void 0)continue;lo=Math.min(lo,nl);hi=Math.max(hi,nl)}seg.newStart=Number.isFinite(lo)?lo:unit.newStart;seg.newEnd=hi>=0?hi:seg.newStart}return out}__name(splitUnit,"splitUnit");function planChunks(files,lines,maxChunkLines=DEFAULT_MAX_CHUNK_LINES){const diffLines=lines.length;if(diffLines===0)return[];const prefix=charPrefix(lines);const units=[];for(const f of files){if(f.hunks.length===0){units.push({start:f.diffStart,end:f.diffEnd,path:f.path,newStart:0,newEnd:0});continue}f.hunks.forEach((h,idx)=>{const unit={start:idx===0?f.diffStart:h.diffStart,end:h.diffEnd,path:f.path,newStart:h.newStart,newEnd:h.newEnd};units.push(...splitUnit(unit,lines,prefix,maxChunkLines,h.diffStart+1))})}const chunks=[];let cur=null;const flush=__name(()=>{if(cur){cur.lines=cur.endLine-cur.startLine+1;cur.chars=charsIn(prefix,cur.startLine,cur.endLine);let widest=0;for(let n=cur.startLine;n<=cur.endLine;n++){if(lines[n-1].length>widest)widest=lines[n-1].length}cur.maxLineChars=widest;chunks.push(cur);cur=null}},"flush");for(const u of units){const uLines=u.end-u.start+1;if(cur&&(u.end-cur.startLine+1>maxChunkLines||charsIn(prefix,cur.startLine,u.end)>MAX_CHUNK_CHARS)){flush()}if(!cur){cur={id:chunks.length+1,startLine:u.start,endLine:u.end,lines:uLines,chars:0,maxLineChars:0,oversized:uLines>maxChunkLines||charsIn(prefix,u.start,u.end)>MAX_CHUNK_CHARS,files:[]}}else{cur.endLine=u.end}const last=cur.files[cur.files.length-1];if(last&&last.path===u.path){last.newStart=Math.min(last.newStart||u.newStart,u.newStart);last.newEnd=Math.max(last.newEnd,u.newEnd)}else{cur.files.push({path:u.path,newStart:u.newStart,newEnd:u.newEnd})}if(cur.oversized)flush()}flush();return chunks}__name(planChunks,"planChunks");function buildDiffPlan(diffText,maxChunkLines=DEFAULT_MAX_CHUNK_LINES){const{files,diffLines}=parseDiff(diffText);const lines=diffText.split("\n");if(lines.length>0&&lines[lines.length-1]==="")lines.pop();const linesOf=__name(kind=>files.filter(f=>f.kind===kind).reduce((n,f)=>n+(f.diffEnd-f.diffStart+1),0),"linesOf");const chunks=planChunks(files,lines,maxChunkLines);if(!chunksCoverDiff(chunks,diffLines)){throw new Error(`diff-plan: chunks do not tile the diff (${chunks.length} chunks over ${diffLines} lines). Refusing to plan a review with a coverage hole.`)}return{diffLines,diffChars:diffText.length,srcDiffLines:linesOf("source"),testDiffLines:linesOf("test"),generatedDiffLines:linesOf("generated"),docsDiffLines:linesOf("docs"),wrapperSignal:files.some(f=>f.wrapperSignal),files,chunks}}__name(buildDiffPlan,"buildDiffPlan");function chunksCoverDiff(chunks,diffLines){if(diffLines===0)return chunks.length===0;const sorted=[...chunks].sort((a,b)=>a.startLine-b.startLine);let expected=1;for(const c of sorted){if(c.startLine!==expected)return false;if(c.endLine<c.startLine)return false;expected=c.endLine+1}return expected===diffLines+1}__name(chunksCoverDiff,"chunksCoverDiff");function sliceDiffByLines(diff,keep){const starts=[0];for(let i=0;i<diff.length;i++){if(diff[i]===10)starts.push(i+1)}const offsetOf=__name(line1=>line1-1<starts.length?starts[line1-1]:diff.length,"offsetOf");const parts=[...keep].sort((a,b)=>a.startLine-b.startLine).map(r=>diff.subarray(offsetOf(r.startLine),offsetOf(r.endLine+1)));return Buffer.concat(parts)}__name(sliceDiffByLines,"sliceDiffByLines");var DOCS_NAV_PROFILE="docs-nav";var DOCS_NAV_PATH_RE=/^docs\/(?:[A-Za-z0-9_-]+\/)*_meta\.ts$/;function automaticReviewRequested(env=process.env,fileSourced=isFileSourcedEnvKey){return env["QWEN_REVIEW_AUTOMATIC"]?.trim()==="true"&&!fileSourced("QWEN_REVIEW_AUTOMATIC")}__name(automaticReviewRequested,"automaticReviewRequested");function literalNavigation(source){if(source.length>32768||/[\u2028\u2029]/.test(source))return null;const token=/\s+|\/\/[^\r\n]*|\/\*[\s\S]*?\*\/|'[^'\\\r\n]*'|"[^"\\\r\n]*"|[A-Za-z_$][\w$]*|[{}:,;]/y;const tokens=[];let offset=0;while(offset<source.length){token.lastIndex=offset;const match=token.exec(source);if(!match)return null;offset=token.lastIndex;if(!/^\s|^\//.test(match[0]))tokens.push(match[0])}if(tokens.shift()!=="export"||tokens.shift()!=="default")return null;if(tokens.at(-1)===";")tokens.pop();const json=[];for(let i=0;i<tokens.length;i++){const value=tokens[i];if(/^[A-Za-z_$]/.test(value)){if(tokens[i+1]!==":")return null;json.push(JSON.stringify(value))}else if(value.startsWith("'")){json.push(JSON.stringify(value.slice(1,-1)))}else{json.push(value)}if(tokens[i+1]===":"){const key=value.replace(/^['"]|['"]$/g,"");if(["__proto__","constructor","prototype"].includes(key)||/^(?:0|[1-9][0-9]*)$/.test(key)){return null}}}try{return parseJsoncObject(json.join(" "))}catch{return null}}__name(literalNavigation,"literalNavigation");function nonPresentation(value){if(typeof value==="string")return"{}";const{title,display:display2,...rest}=value;if(title!==void 0&&typeof title!=="string")return null;if(display2!==void 0&&display2!=="hidden"&&display2!=="normal"){return null}return JSON.stringify(rest)}__name(nonPresentation,"nonPresentation");function isStaticDocsNavDiff(diff,readFile){const{files}=parseDiff(diff);const file=files[0];if(files.length!==1||!DOCS_NAV_PATH_RE.test(file.path)||file.binary||file.renameFrom||file.addedLines+file.removedLines===0||file.addedLines+file.removedLines>=25||!/^index [a-f0-9]+\.\.[a-f0-9]+ 100644$/m.test(diff)||/^(?:old mode|new mode|new file mode|deleted file mode|copy from|copy to) /m.test(diff)){return false}try{const base=literalNavigation(readFile("base",file.path));const head=literalNavigation(readFile("head",file.path));if(!base||!head)return false;const keys=Object.keys(base);return keys.length>0&&keys.length===Object.keys(head).length&&keys.join("\n")===Object.keys(head).join("\n")&&keys.every(key=>{if(!Object.hasOwn(head,key))return false;const before=nonPresentation(base[key]);return before!==null&&before===nonPresentation(head[key])})}catch{return false}}__name(isStaticDocsNavDiff,"isStaticDocsNavDiff");init_esbuild_shims();import{lstatSync as lstatSync2,readFileSync as readFileSync5,readdirSync as readdirSync3,statSync as statSync4}from"node:fs";import{join as join4}from"node:path";init_esbuild_shims();import{lstatSync,mkdirSync as mkdirSync3,readFileSync as readFileSync4,rmSync,statSync as statSync3}from"node:fs";import{join as join3}from"node:path";init_esbuild_shims();import{mkdirSync as mkdirSync2,readFileSync as readFileSync3,readdirSync as readdirSync2,statSync as statSync2,writeFileSync as writeFileSync2}from"node:fs";import{dirname as dirname3,join as join2,basename as basename2,resolve as resolve2}from"node:path";var RUN_EPOCH_SLACK_MS=2e3;function runEpochMs(planPath){try{return statSync2(planPath).mtimeMs-RUN_EPOCH_SLACK_MS}catch{return Number.NEGATIVE_INFINITY}}__name(runEpochMs,"runEpochMs");function promptRecordDir(planPath){const p=resolve2(planPath);return join2(dirname3(p),`${basename2(p).replace(/\.json$/i,"")}-prompts`)}__name(promptRecordDir,"promptRecordDir");var fileFor=__name(key=>`${encodeURIComponent(key)}.txt`,"fileFor");function recordedPromptPath(planPath,key){return join2(promptRecordDir(planPath),fileFor(key))}__name(recordedPromptPath,"recordedPromptPath");function briefPath(planPath,key){return join2(promptRecordDir(planPath),`${encodeURIComponent(key)}.brief.md`)}__name(briefPath,"briefPath");function findingsFilePath(planPath,key){return join2(promptRecordDir(planPath),`${encodeURIComponent(key)}.findings.md`)}__name(findingsFilePath,"findingsFilePath");function findingsPointerOf(prompt){const m=/^read_file\(file_path="([^"]*\.findings\.md)"\)$/m.exec(prompt);return m&&m[1]!==void 0?m[1]:null}__name(findingsPointerOf,"findingsPointerOf");function writeFindingsFile(planPath,key,content){const p=findingsFilePath(planPath,key);try{mkdirSync2(promptRecordDir(planPath),{recursive:true});writeFileSync2(p,content)}catch(err){writeStderrLineSafe(`agent-prompt: failed to write findings file ${p}: ${err.message} \u2014 inlining the list instead`);return null}return p}__name(writeFindingsFile,"writeFindingsFile");var RULES_MARKER="## Project rules";function writeBrief(planPath,key,brief){const p=briefPath(planPath,key);let hadRules=false;try{hadRules=readFileSync3(p,"utf8").includes(RULES_MARKER)}catch{}if(hadRules&&!brief.includes(RULES_MARKER)){throw new Error(`agent-prompt: rebuilding "${key}" without --rules would overwrite a rules-bearing brief with a rules-free one, and no delivery check could see it \u2014 the launch prompt only points at the brief. Pass the same --rules file as the original build; to intentionally start a rules-free review, delete ${promptRecordDir(planPath)} first.`)}try{mkdirSync2(promptRecordDir(planPath),{recursive:true});writeFileSync2(p,brief)}catch{}return p}__name(writeBrief,"writeBrief");function recordPrompt(planPath,key,prompt){try{const dir=promptRecordDir(planPath);mkdirSync2(dir,{recursive:true});writeFileSync2(join2(dir,fileFor(key)),prompt)}catch{}}__name(recordPrompt,"recordPrompt");function readRecordedPrompts(planPath,sinceMs){const out=new Map;const dir=promptRecordDir(planPath);let names;try{names=readdirSync2(dir).sort()}catch{return out}for(const name of names){if(!name.endsWith(".txt"))continue;try{let key;try{key=decodeURIComponent(name.slice(0,-4))}catch{continue}const file=join2(dir,name);if(sinceMs!==void 0&&statSync2(file).mtimeMs<sinceMs)continue;out.set(key,readFileSync3(file,"utf8"))}catch{}}return out}__name(readRecordedPrompts,"readRecordedPrompts");function wasDeliveredVerbatim(launchPrompt,built){return deliveredVerbatim(flattenPrompt(launchPrompt),built)}__name(wasDeliveredVerbatim,"wasDeliveredVerbatim");function deliveredVerbatim(flattenedLaunch,built){if(built.trim().length===0)return false;return deliveredVerbatimLines(flattenedLaunch,promptLines(built))}__name(deliveredVerbatim,"deliveredVerbatim");function deliveredVerbatimLines(flattenedLaunch,builtLines){if(builtLines.length===0)return false;let at=0;for(const line of builtLines){const i=flattenedLaunch.indexOf(line,at);if(i===-1)return false;at=i+line.length}return true}__name(deliveredVerbatimLines,"deliveredVerbatimLines");function flattenPrompt(s){return s.replace(/\s+/g," ").trim()}__name(flattenPrompt,"flattenPrompt");function promptLines(built){return built.split("\n").map(l=>flattenPrompt(l)).filter(l=>l.length>0)}__name(promptLines,"promptLines");var SESSIONS_FILE="run-sessions.json";var RESUME_FILE="resume.json";var RESUME_MAX=2;var SESSION_ID_RE=/^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$/;function sessionPathKey(id){return sanitizeFilenameComponent(id).toLowerCase()}__name(sessionPathKey,"sessionPathKey");var FUTURE_SLACK_MS=2e3;var PLAN_MTIME_TOLERANCE_MS=1;var ledgerIoForTests={readFileSync:readFileSync4,statSync:statSync3};function planMtimeMs(planPath){try{return ledgerIoForTests.statSync(planPath).mtimeMs}catch{return null}}__name(planMtimeMs,"planMtimeMs");function runCeilingMs(nowMs=Date.now()){return nowMs+FUTURE_SLACK_MS}__name(runCeilingMs,"runCeilingMs");function runSessionsPath(planPath){return join3(promptRecordDir(planPath),SESSIONS_FILE)}__name(runSessionsPath,"runSessionsPath");var MAX_LEDGER_BYTES=256*1024;var MAX_LEDGER_ENTRIES=64;function ledgerOccupant(path){let st;try{st=lstatSync(path)}catch{return{kind:"absent"}}if(st.isDirectory())return{kind:"plant",shape:"directory"};if(!st.isFile())return{kind:"plant",shape:"special"};if(st.size>MAX_LEDGER_BYTES)return{kind:"plant",shape:"oversize"};try{return{kind:"ok",text:ledgerIoForTests.readFileSync(path,"utf8")}}catch{return{kind:"refused"}}}__name(ledgerOccupant,"ledgerOccupant");function healPlant(path,occ){if(occ.kind==="plant"&&occ.shape==="directory"){rmSync(path,{recursive:true,force:true})}}__name(healPlant,"healPlant");function readLedgerFile(path){const occ=ledgerOccupant(path);return occ.kind==="ok"?occ.text:null}__name(readLedgerFile,"readLedgerFile");function readSessions(planPath){return parseSessions(readLedgerFile(runSessionsPath(planPath)),planPath,planMtimeMs(planPath))}__name(readSessions,"readSessions");function parseSessions(raw,planPath,planMtime){try{if(raw===null)return[];const parsed=JSON.parse(raw);if(!Array.isArray(parsed))return[];const epoch=runEpochMs(planPath);const ceiling=runCeilingMs();const kept=parsed.filter(e=>typeof e==="object"&&e!==null&&typeof e.sessionId==="string"&&SESSION_ID_RE.test(e.sessionId)&&typeof e.atMs==="number"&&e.atMs>=epoch&&e.atMs<=ceiling&&typeof e.planMtimeMs==="number"&&planMtime!==null&&Math.abs(e.planMtimeMs-planMtime)<=PLAN_MTIME_TOLERANCE_MS);const capped=kept;const seen=new Set;return capped.slice().sort((x,y)=>x.atMs-y.atMs).filter(e=>{const k=sessionPathKey(e.sessionId);return seen.has(k)?false:(seen.add(k),true)}).slice(-MAX_LEDGER_ENTRIES)}catch{return[]}}__name(parseSessions,"parseSessions");function appendRunSession(planPath,env=process.env,nowMs=Date.now()){try{const id=env["QWEN_CODE_SESSION_ID"]?.trim();if(!id||!SESSION_ID_RE.test(id))return;const mtime=planMtimeMs(planPath);if(mtime===null)return;const path=runSessionsPath(planPath);const occ=ledgerOccupant(path);if(occ.kind==="refused")return;const entries=parseSessions(occ.kind==="ok"?occ.text:null,planPath,mtime);if(entries.some(e=>sessionPathKey(e.sessionId)===sessionPathKey(id)))return;healPlant(path,occ);entries.push({sessionId:id,atMs:nowMs,planMtimeMs:mtime});const dir=promptRecordDir(planPath);mkdirSync3(dir,{recursive:true});atomicWriteFileSync(path,JSON.stringify(entries),{noFollow:true})}catch{}}__name(appendRunSession,"appendRunSession");function ledgerResumeCount(planPath,opts={}){const past=readSessions(planPath).slice(1);if(opts.excludeSessionId===void 0)return past.length;const key=sessionPathKey(opts.excludeSessionId);return past.filter(e=>sessionPathKey(e.sessionId)!==key).length}__name(ledgerResumeCount,"ledgerResumeCount");function priorSessionIds(planPath,env=process.env){return priorSessionEntries(planPath,env).map(e=>e.sessionId)}__name(priorSessionIds,"priorSessionIds");function currentSessionEntry(planPath,env=process.env){const raw=env["QWEN_CODE_SESSION_ID"]?.trim();if(!raw)return null;const current=sessionPathKey(raw);return readSessions(planPath).find(e=>sessionPathKey(e.sessionId)===current)??null}__name(currentSessionEntry,"currentSessionEntry");function resumeAuthorized(planPath,env=process.env){const raw=env["QWEN_CODE_SESSION_ID"]?.trim();if(!raw)return false;const current=sessionPathKey(raw);return readResumeMarker(planPath).resumes.some(r=>sessionPathKey(r.sessionId)===current)}__name(resumeAuthorized,"resumeAuthorized");function priorSessionEntries(planPath,env=process.env){if(!resumeAuthorized(planPath,env))return[];const current0=env["QWEN_CODE_SESSION_ID"]?.trim();const current=current0?sessionPathKey(current0):void 0;const all=[...readSessions(planPath)].sort((a,b)=>a.atMs-b.atMs);const ownIdx=current===void 0?-1:all.findIndex(e=>sessionPathKey(e.sessionId)===current);const prefix=ownIdx>=0?all.slice(0,ownIdx):all;const ownAtMs=ownIdx>=0?all[ownIdx].atMs:null;return prefix.map((e,i)=>({sessionId:e.sessionId,atMs:e.atMs,endsAtMs:i+1<prefix.length?prefix[i+1].atMs:ownAtMs})).filter(e=>sessionPathKey(e.sessionId)!==current)}__name(priorSessionEntries,"priorSessionEntries");var emptyMarker=__name(()=>({schemaVersion:1,resumes:[],restarts:[]}),"emptyMarker");function resumeMarkerPath(planPath){return join3(promptRecordDir(planPath),RESUME_FILE)}__name(resumeMarkerPath,"resumeMarkerPath");function readResumeMarker(planPath){return parseMarker(readLedgerFile(resumeMarkerPath(planPath)),planPath,planMtimeMs(planPath))}__name(readResumeMarker,"readResumeMarker");function parseMarker(text2,planPath,planMtime){try{if(text2===null)return emptyMarker();const parsed=JSON.parse(text2);if(typeof parsed!=="object"||parsed===null||parsed.schemaVersion!==1){return emptyMarker()}const epoch=runEpochMs(planPath);const ceiling=runCeilingMs();const raw=parsed;const seenResume=new Set;const seenRestart=new Set;const resumes=Array.isArray(raw.resumes)?raw.resumes.filter(e=>typeof e==="object"&&e!==null&&typeof e.sessionId==="string"&&SESSION_ID_RE.test(e.sessionId)&&typeof e.atMs==="number"&&e.atMs>=epoch&&e.atMs<=ceiling&&typeof e.planMtimeMs==="number"&&planMtime!==null&&Math.abs(e.planMtimeMs-planMtime)<=PLAN_MTIME_TOLERANCE_MS&&!seenResume.has(sessionPathKey(e.sessionId))&&(seenResume.add(sessionPathKey(e.sessionId)),true)).slice(0,MAX_LEDGER_ENTRIES):[];const restarts=Array.isArray(raw.restarts)?raw.restarts.filter(e=>typeof e==="object"&&e!==null&&typeof e.reason==="string"&&typeof e.atMs==="number"&&e.atMs>=epoch&&e.atMs<=ceiling&&typeof e.planMtimeMs==="number"&&planMtime!==null&&Math.abs(e.planMtimeMs-planMtime)<=PLAN_MTIME_TOLERANCE_MS&&!seenRestart.has(`${e.reason}@${e.atMs}`)&&(seenRestart.add(`${e.reason}@${e.atMs}`),true)).slice(0,MAX_LEDGER_ENTRIES):[];return{schemaVersion:1,resumes,restarts}}catch{return emptyMarker()}}__name(parseMarker,"parseMarker");function writeMarker(planPath,marker){try{const dir=promptRecordDir(planPath);mkdirSync3(dir,{recursive:true});atomicWriteFileSync(resumeMarkerPath(planPath),JSON.stringify(marker),{noFollow:true})}catch{}}__name(writeMarker,"writeMarker");function recordResume(planPath,env=process.env,nowMs=Date.now()){const id=env["QWEN_CODE_SESSION_ID"]?.trim();if(!id||!SESSION_ID_RE.test(id))return;const mtime=planMtimeMs(planPath);if(mtime===null)return;const markerPath=resumeMarkerPath(planPath);const occ=ledgerOccupant(markerPath);if(occ.kind==="refused")return;const marker=parseMarker(occ.kind==="ok"?occ.text:null,planPath,mtime);if(marker.resumes.some(r=>sessionPathKey(r.sessionId)===sessionPathKey(id)))return;healPlant(markerPath,occ);marker.resumes.push({sessionId:id,atMs:nowMs,planMtimeMs:mtime});writeMarker(planPath,marker)}__name(recordResume,"recordResume");function recordRestart(planPath,reason,nowMs=Date.now()){const mtime=planMtimeMs(planPath);if(mtime===null)return;const markerPath=resumeMarkerPath(planPath);const occ=ledgerOccupant(markerPath);if(occ.kind==="refused")return;const marker=parseMarker(occ.kind==="ok"?occ.text:null,planPath,mtime);if(marker.restarts.some(r=>r.reason===reason))return;healPlant(markerPath,occ);marker.restarts.push({atMs:nowMs,reason,planMtimeMs:mtime});writeMarker(planPath,marker)}__name(recordRestart,"recordRestart");var TranscriptsUnavailableError=class extends Error{static{__name(this,"TranscriptsUnavailableError")}};function transcriptPaths(env=process.env){const projectDir=env["QWEN_CODE_PROJECT_DIR"]?.trim();const sessionId=env["QWEN_CODE_SESSION_ID"]?.trim();if(!projectDir||!sessionId){throw new TranscriptsUnavailableError("the CLI did not export QWEN_CODE_PROJECT_DIR / QWEN_CODE_SESSION_ID, so this run cannot find the harness's record of what its agents did")}return{projectDir,sessionId,dir:join4(projectDir,"subagents",sanitizeFilenameComponent(sessionId))}}__name(transcriptPaths,"transcriptPaths");function transcriptDir(env=process.env){return transcriptPaths(env).dir}__name(transcriptDir,"transcriptDir");function textOf(rec){const msg=rec["message"];const parts=Array.isArray(msg?.parts)?msg.parts:[];return parts.map(p=>p.text).filter(t=>typeof t==="string").join("")}__name(textOf,"textOf");function returnTextOf(rec){const msg=rec["message"];const parts=Array.isArray(msg?.parts)?msg.parts:[];return parts.filter(p=>p.thought!==true).map(p=>p.text).filter(t=>typeof t==="string").join("")}__name(returnTextOf,"returnTextOf");function isErrorPart(part){const resp=part.functionResponse?.response;return!!resp&&resp["error"]!==void 0&&resp["error"]!==null}__name(isErrorPart,"isErrorPart");function rangeOf(args){const offset=args["offset"];const limit=args["limit"];if(typeof limit!=="number"||!Number.isInteger(limit)||limit<=0){return null}const off=typeof offset==="number"&&Number.isInteger(offset)&&offset>=0?offset:0;return[off+1,off+limit]}__name(rangeOf,"rangeOf");function serializedArgsNamePath(serializedArgs,path){return serializedArgs.includes(JSON.stringify(path))}__name(serializedArgsNamePath,"serializedArgsNamePath");function parseTranscript(file,diffPath){let raw;try{raw=readFileSync5(file,"utf8")}catch{return null}const lines=raw.split("\n").filter(l=>l.trim());if(lines.length===0)return null;let agentId="";let agentName="";let recordedSession="";let sessionConflict=false;let launchPrompt="";let finalText="";let toolTrafficAfterText=true;let successfulToolCalls=0;let diffToolCalls=0;const diffReads=[];const successfulCallArgs=[];const successfulReadFileArgs=[];const byId=new Map;const anonymous=[];for(const line of lines){let rec;try{rec=JSON.parse(line)}catch{continue}if(!agentId&&typeof rec["agentId"]==="string")agentId=rec["agentId"];if(!agentName&&typeof rec["agentName"]==="string"){agentName=rec["agentName"]}if(typeof rec["sessionId"]==="string"&&rec["sessionId"]!==""){if(!recordedSession){recordedSession=rec["sessionId"]}else if(rec["sessionId"]!==recordedSession){sessionConflict=true}}const type=rec["type"];if(!launchPrompt&&type==="user")launchPrompt=textOf(rec);const msg=rec["message"];const parts=Array.isArray(msg?.parts)?msg.parts:[];for(const part of parts){const fc=part.functionCall;if(!fc)continue;const args=fc.args??{};const namedTheDiff=diffPath?serializedArgsNamePath(JSON.stringify(args),diffPath):false;const pending={namedTheDiff,readFile:fc.name===ToolNames.READ_FILE,range:namedTheDiff?rangeOf(args):null,args:JSON.stringify(args)};if(typeof fc.id==="string"&&fc.id)byId.set(fc.id,pending);else anonymous.push(pending)}for(const part of parts){const fr=part.functionResponse;if(!fr)continue;let pending;if(typeof fr.id==="string"&&byId.has(fr.id)){pending=byId.get(fr.id);byId.delete(fr.id)}else if(anonymous.length>0){pending=anonymous.shift()}else{continue}if(!isErrorPart(part)){successfulToolCalls++;successfulCallArgs.push(pending.args);if(pending.readFile)successfulReadFileArgs.push(pending.args);if(pending.namedTheDiff){diffToolCalls++;if(pending.range)diffReads.push(pending.range)}}}if(type==="assistant"){const t=returnTextOf(rec);if(t){finalText=t;toolTrafficAfterText=false}}if(parts.some(p=>p.functionCall!==void 0))toolTrafficAfterText=true;if(parts.some(p=>p.functionResponse!==void 0))toolTrafficAfterText=true}if(!agentId)return null;if(sessionConflict)return null;let mtimeMs=0;try{mtimeMs=statSync4(file).mtimeMs}catch{}return{agentId,agentName,recordedSession,launchPrompt,successfulToolCalls,diffToolCalls,diffReads,successfulCallArgs,successfulReadFileArgs,finalText,returned:finalText.trim()!==""&&!toolTrafficAfterText&&!diedPerSidecar(file),mtimeMs}}__name(parseTranscript,"parseTranscript");function diedPerSidecar(transcriptFile){const metaPath=transcriptFile.replace(/\.jsonl$/,".meta.json");try{const meta=JSON.parse(readFileSync5(metaPath,"utf8"));return typeof meta.status==="string"&&meta.status!=="completed"}catch{return false}}__name(diedPerSidecar,"diedPerSidecar");function listAgentTranscriptFiles(dir){return readdirSync3(dir).filter(name=>name.endsWith(".jsonl"))}__name(listAgentTranscriptFiles,"listAgentTranscriptFiles");function readTranscripts(since,env=process.env,diffPath){const dir=transcriptDir(env);let names;try{names=listAgentTranscriptFiles(dir)}catch(err){throw new TranscriptsUnavailableError(`no subagent transcripts at ${dir} (${err.message}). The harness writes one per agent; if there are none, either no agents ran or the harness could not write them.`,{cause:err})}return recordsIn(dir,names,since,diffPath,{sessionId:transcriptPaths(env).sessionId})}__name(readTranscripts,"readTranscripts");function recordsIn(dir,names,since,diffPath,opts={}){const out=[];for(const name of names){const rec=parseTranscript(join4(dir,name),diffPath);if(!rec)continue;if(since!==void 0&&rec.mtimeMs<since)continue;if(opts.until!==void 0&&rec.mtimeMs>=opts.until)continue;if(opts.sessionId!==void 0&&rec.recordedSession!==""&&rec.recordedSession.toLowerCase()!==opts.sessionId.toLowerCase()){continue}out.push(rec)}return out}__name(recordsIn,"recordsIn");function priorSessionDirs(planPath,env=process.env){const{projectDir}=transcriptPaths(env);const out=[];for(const{sessionId,endsAtMs}of priorSessionEntries(planPath,env)){const dir=join4(projectDir,"subagents",sanitizeFilenameComponent(sessionId));try{if(lstatSync2(dir).isSymbolicLink())continue}catch{continue}out.push({sessionId,dir,chatFile:join4(projectDir,"chats",`${sessionId}.jsonl`),endsAtMs})}return out}__name(priorSessionDirs,"priorSessionDirs");function readRunTranscripts(planPath,since,env=process.env,diffPath,opts={}){transcriptPaths(env);const priors=priorSessionDirs(planPath,env);let out;try{out=readTranscripts(since,env,diffPath)}catch(err){const code2=err?.cause?.code;if(!(err instanceof TranscriptsUnavailableError)||opts.currentDirOptional!==true||code2!=="ENOENT"||priors.length===0){throw err}out=[]}for(const prior of priors){let names;try{names=listAgentTranscriptFiles(prior.dir)}catch{continue}for(const rec of recordsIn(prior.dir,names,since,diffPath,{sessionId:prior.sessionId,until:prior.endsAtMs??void 0})){rec.fromPriorSession=true;out.push(rec)}}return out}__name(readRunTranscripts,"readRunTranscripts");function wasGivenTheDiff(rec,diffPath){const p=rec.launchPrompt;if(!p)return false;return p.includes(diffPath)}__name(wasGivenTheDiff,"wasGivenTheDiff");init_esbuild_shims();var UNCOVERABLE_RE=/^\s*Uncoverable:\s*chunk\s+(\d+)\b/im;function chunkOfKey(key){const m=/^chunk-(\d+)$/.exec(key)??/--chunk-(\d+)(?:--|$)/.exec(key);return m?Number(m[1]):null}__name(chunkOfKey,"chunkOfKey");function declaresOwnUncoverable(rec,chunk2){if(chunk2===null)return false;const m=UNCOVERABLE_RE.exec(rec.finalText);return m!==null&&Number(m[1])===chunk2}__name(declaresOwnUncoverable,"declaresOwnUncoverable");function argsNameExactPath(args,path){return args.some(a=>serializedArgsNamePath(a,path))}__name(argsNameExactPath,"argsNameExactPath");function openedBrief(rec,planPath,key){return argsNameExactPath(rec.successfulCallArgs,briefPath(planPath,key))}__name(openedBrief,"openedBrief");function readBrief(rec,planPath,key){return argsNameExactPath(rec.successfulReadFileArgs,briefPath(planPath,key))}__name(readBrief,"readBrief");function readFindingsPointer(rec,pointer){if(pointer===null)return true;return argsNameExactPath(rec.successfulReadFileArgs,pointer)}__name(readFindingsPointer,"readFindingsPointer");init_esbuild_shims();init_esbuild_shims();init_esbuild_shims();init_esbuild_shims();var SHELL_TOOL_MAX_TIMEOUT_MS=6e5;var BUILD_TEST_BUDGET_HEADROOM_S=30;var DEFAULT_WHOLE_CALL_BUDGET_S=SHELL_TOOL_MAX_TIMEOUT_MS/1e3-BUILD_TEST_BUDGET_HEADROOM_S;var DEFAULT_COMMAND_TIMEOUT_S=540;var MAX_RESUME_CALLS=3;init_esbuild_shims();init_esbuild_shims();var mdurl_exports={};__export(mdurl_exports,{decode:()=>decode_default,encode:()=>encode_default,format:()=>format,parse:()=>parse_default});init_esbuild_shims();init_esbuild_shims();var decodeCache={};function getDecodeCache(exclude){let cache=decodeCache[exclude];if(cache){return cache}cache=decodeCache[exclude]=[];for(let i=0;i<128;i++){const ch=String.fromCharCode(i);cache.push(ch)}for(let i=0;i<exclude.length;i++){const ch=exclude.charCodeAt(i);cache[ch]="%"+("0"+ch.toString(16).toUpperCase()).slice(-2)}return cache}__name(getDecodeCache,"getDecodeCache");function decode(string2,exclude){if(typeof exclude!=="string"){exclude=decode.defaultChars}const cache=getDecodeCache(exclude);return string2.replace(/(%[a-f0-9]{2})+/gi,function(seq){let result="";for(let i=0,l=seq.length;i<l;i+=3){const b1=parseInt(seq.slice(i+1,i+3),16);if(b1<128){result+=cache[b1];continue}if((b1&224)===192&&i+3<l){const b2=parseInt(seq.slice(i+4,i+6),16);if((b2&192)===128){const chr=b1<<6&1984|b2&63;if(chr<128){result+="\uFFFD\uFFFD"}else{result+=String.fromCharCode(chr)}i+=3;continue}}if((b1&240)===224&&i+6<l){const b2=parseInt(seq.slice(i+4,i+6),16);const b3=parseInt(seq.slice(i+7,i+9),16);if((b2&192)===128&&(b3&192)===128){const chr=b1<<12&61440|b2<<6&4032|b3&63;if(chr<2048||chr>=55296&&chr<=57343){result+="\uFFFD\uFFFD\uFFFD"}else{result+=String.fromCharCode(chr)}i+=6;continue}}if((b1&248)===240&&i+9<l){const b2=parseInt(seq.slice(i+4,i+6),16);const b3=parseInt(seq.slice(i+7,i+9),16);const b4=parseInt(seq.slice(i+10,i+12),16);if((b2&192)===128&&(b3&192)===128&&(b4&192)===128){let chr=b1<<18&1835008|b2<<12&258048|b3<<6&4032|b4&63;if(chr<65536||chr>1114111){result+="\uFFFD\uFFFD\uFFFD\uFFFD"}else{chr-=65536;result+=String.fromCharCode(55296+(chr>>10),56320+(chr&1023))}i+=9;continue}}result+="\uFFFD"}return result})}__name(decode,"decode");decode.defaultChars=";/?:@&=+$,#";decode.componentChars="";var decode_default=decode;init_esbuild_shims();var encodeCache={};function getEncodeCache(exclude){let cache=encodeCache[exclude];if(cache){return cache}cache=encodeCache[exclude]=[];for(let i=0;i<128;i++){const ch=String.fromCharCode(i);if(/^[0-9a-z]$/i.test(ch)){cache.push(ch)}else{cache.push("%"+("0"+i.toString(16).toUpperCase()).slice(-2))}}for(let i=0;i<exclude.length;i++){cache[exclude.charCodeAt(i)]=exclude[i]}return cache}__name(getEncodeCache,"getEncodeCache");function encode(string2,exclude,keepEscaped){if(typeof exclude!=="string"){keepEscaped=exclude;exclude=encode.defaultChars}if(typeof keepEscaped==="undefined"){keepEscaped=true}const cache=getEncodeCache(exclude);let result="";for(let i=0,l=string2.length;i<l;i++){const code2=string2.charCodeAt(i);if(keepEscaped&&code2===37&&i+2<l){if(/^[0-9a-f]{2}$/i.test(string2.slice(i+1,i+3))){result+=string2.slice(i,i+3);i+=2;continue}}if(code2<128){result+=cache[code2];continue}if(code2>=55296&&code2<=57343){if(code2>=55296&&code2<=56319&&i+1<l){const nextCode=string2.charCodeAt(i+1);if(nextCode>=56320&&nextCode<=57343){result+=encodeURIComponent(string2[i]+string2[i+1]);i++;continue}}result+="%EF%BF%BD";continue}result+=encodeURIComponent(string2[i])}return result}__name(encode,"encode");encode.defaultChars=";/?:@&=+$,-_.!~*'()#";encode.componentChars="-_.!~*'()";var encode_default=encode;init_esbuild_shims();function format(url){let result="";result+=url.protocol||"";result+=url.slashes?"//":"";result+=url.auth?url.auth+"@":"";if(url.hostname&&url.hostname.indexOf(":")!==-1){result+="["+url.hostname+"]"}else{result+=url.hostname||""}result+=url.port?":"+url.port:"";result+=url.pathname||"";result+=url.search||"";result+=url.hash||"";return result}__name(format,"format");init_esbuild_shims();function Url(){this.protocol=null;this.slashes=null;this.auth=null;this.port=null;this.hostname=null;this.hash=null;this.search=null;this.pathname=null}__name(Url,"Url");var protocolPattern=/^([a-z0-9.+-]+:)/i;var portPattern=/:[0-9]*$/;var simplePathPattern=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/;var delims=["<",">",'"',"`"," ","\r","\n"," "];var unwise=["{","}","|","\\","^","`"].concat(delims);var autoEscape=["'"].concat(unwise);var nonHostChars=["%","/","?",";","#"].concat(autoEscape);var hostEndingChars=["/","?","#"];var hostnameMaxLen=255;var hostnamePartPattern=/^[+a-z0-9A-Z_-]{0,63}$/;var hostnamePartStart=/^([+a-z0-9A-Z_-]{0,63})(.*)$/;var hostlessProtocol={javascript:true,"javascript:":true};var slashedProtocol={http:true,https:true,ftp:true,gopher:true,file:true,"http:":true,"https:":true,"ftp:":true,"gopher:":true,"file:":true};function urlParse(url,slashesDenoteHost){if(url&&url instanceof Url)return url;const u=new Url;u.parse(url,slashesDenoteHost);return u}__name(urlParse,"urlParse");Url.prototype.parse=function(url,slashesDenoteHost){let lowerProto,hec,slashes;let rest=url;rest=rest.trim();if(!slashesDenoteHost&&url.split("#").length===1){const simplePath=simplePathPattern.exec(rest);if(simplePath){this.pathname=simplePath[1];if(simplePath[2]){this.search=simplePath[2]}return this}}let proto=protocolPattern.exec(rest);if(proto){proto=proto[0];lowerProto=proto.toLowerCase();this.protocol=proto;rest=rest.substr(proto.length)}if(slashesDenoteHost||proto||rest.match(/^\/\/[^@\/]+@[^@\/]+/)){slashes=rest.substr(0,2)==="//";if(slashes&&!(proto&&hostlessProtocol[proto])){rest=rest.substr(2);this.slashes=true}}if(!hostlessProtocol[proto]&&(slashes||proto&&!slashedProtocol[proto])){let hostEnd=-1;for(let i=0;i<hostEndingChars.length;i++){hec=rest.indexOf(hostEndingChars[i]);if(hec!==-1&&(hostEnd===-1||hec<hostEnd)){hostEnd=hec}}let auth,atSign;if(hostEnd===-1){atSign=rest.lastIndexOf("@")}else{atSign=rest.lastIndexOf("@",hostEnd)}if(atSign!==-1){auth=rest.slice(0,atSign);rest=rest.slice(atSign+1);this.auth=auth}hostEnd=-1;for(let i=0;i<nonHostChars.length;i++){hec=rest.indexOf(nonHostChars[i]);if(hec!==-1&&(hostEnd===-1||hec<hostEnd)){hostEnd=hec}}if(hostEnd===-1){hostEnd=rest.length}if(rest[hostEnd-1]===":"){hostEnd--}const host=rest.slice(0,hostEnd);rest=rest.slice(hostEnd);this.parseHost(host);this.hostname=this.hostname||"";const ipv6Hostname=this.hostname[0]==="["&&this.hostname[this.hostname.length-1]==="]";if(!ipv6Hostname){const hostparts=this.hostname.split(/\./);for(let i=0,l=hostparts.length;i<l;i++){const part=hostparts[i];if(!part){continue}if(!part.match(hostnamePartPattern)){let newpart="";for(let j=0,k=part.length;j<k;j++){if(part.charCodeAt(j)>127){newpart+="x"}else{newpart+=part[j]}}if(!newpart.match(hostnamePartPattern)){const validParts=hostparts.slice(0,i);const notHost=hostparts.slice(i+1);const bit=part.match(hostnamePartStart);if(bit){validParts.push(bit[1]);notHost.unshift(bit[2])}if(notHost.length){rest=notHost.join(".")+rest}this.hostname=validParts.join(".");break}}}}if(this.hostname.length>hostnameMaxLen){this.hostname=""}if(ipv6Hostname){this.hostname=this.hostname.substr(1,this.hostname.length-2)}}const hash=rest.indexOf("#");if(hash!==-1){this.hash=rest.substr(hash);rest=rest.slice(0,hash)}const qm=rest.indexOf("?");if(qm!==-1){this.search=rest.substr(qm);rest=rest.slice(0,qm)}if(rest){this.pathname=rest}if(slashedProtocol[lowerProto]&&this.hostname&&!this.pathname){this.pathname=""}return this};Url.prototype.parseHost=function(host){let port=portPattern.exec(host);if(port){port=port[0];if(port!==":"){this.port=port.substr(1)}host=host.substr(0,host.length-port.length)}if(host){this.hostname=host}};var parse_default=urlParse;var build_exports={};__export(build_exports,{Any:()=>Any,Cc:()=>Cc,Cf:()=>Cf,P:()=>P,S:()=>S,Z:()=>Z});init_esbuild_shims();var Any=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;var Cc=/[\0-\x1F\x7F-\x9F]/;var Cf=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/;var P=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B4E\u1B4F\u1B5A-\u1B60\u1B7D-\u1B7F\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDD6E\uDEAD\uDED0\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9\uDFD4\uDFD5\uDFD7\uDFD8]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09\uDFE1]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDD6D-\uDD6F\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD839\uDDFF|\uD83A[\uDD5E\uDD5F]/;var S=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C1\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2429\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E5\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBD2\uFD40-\uFD4F\uFD90\uFD91\uFDC8-\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD803[\uDD8E\uDD8F\uDED1-\uDED8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDC00-\uDCEF\uDCFA-\uDCFC\uDD00-\uDEB3\uDEBA-\uDED0\uDEE0-\uDEF0\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED8\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0-\uDCBB\uDCC0\uDCC1\uDCD0-\uDCD8\uDD00-\uDE57\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF-\uDEF8\uDF00-\uDF92\uDF94-\uDFEF\uDFFA]/;var Z=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/;init_esbuild_shims();init_esbuild_shims();init_esbuild_shims();var decodeMap=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function replaceCodePoint(codePoint){if(codePoint>=55296&&codePoint<=57343||codePoint>1114111){return 65533}return decodeMap.get(codePoint)??codePoint}__name(replaceCodePoint,"replaceCodePoint");init_esbuild_shims();init_esbuild_shims();function decodeBase64(input){const binary=atob(input);const evenLength=binary.length&~1;const out=new Uint16Array(evenLength/2);for(let index=0,outIndex=0;index<evenLength;index+=2){const lo=binary.charCodeAt(index);const hi=binary.charCodeAt(index+1);out[outIndex++]=lo|hi<<8}return out}__name(decodeBase64,"decodeBase64");var htmlDecodeTree=decodeBase64("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg");init_esbuild_shims();var BinTrieFlags;(function(BinTrieFlags2){BinTrieFlags2[BinTrieFlags2["VALUE_LENGTH"]=49152]="VALUE_LENGTH";BinTrieFlags2[BinTrieFlags2["FLAG13"]=8192]="FLAG13";BinTrieFlags2[BinTrieFlags2["BRANCH_LENGTH"]=8064]="BRANCH_LENGTH";BinTrieFlags2[BinTrieFlags2["JUMP_TABLE"]=127]="JUMP_TABLE"})(BinTrieFlags||(BinTrieFlags={}));var CharCodes;(function(CharCodes2){CharCodes2[CharCodes2["NUM"]=35]="NUM";CharCodes2[CharCodes2["SEMI"]=59]="SEMI";CharCodes2[CharCodes2["EQUALS"]=61]="EQUALS";CharCodes2[CharCodes2["ZERO"]=48]="ZERO";CharCodes2[CharCodes2["NINE"]=57]="NINE";CharCodes2[CharCodes2["LOWER_A"]=97]="LOWER_A";CharCodes2[CharCodes2["LOWER_F"]=102]="LOWER_F";CharCodes2[CharCodes2["LOWER_X"]=120]="LOWER_X";CharCodes2[CharCodes2["LOWER_Z"]=122]="LOWER_Z";CharCodes2[CharCodes2["UPPER_A"]=65]="UPPER_A";CharCodes2[CharCodes2["UPPER_F"]=70]="UPPER_F";CharCodes2[CharCodes2["UPPER_Z"]=90]="UPPER_Z"})(CharCodes||(CharCodes={}));var TO_LOWER_BIT=32;function isNumber(code2){return code2>=CharCodes.ZERO&&code2<=CharCodes.NINE}__name(isNumber,"isNumber");function isHexadecimalCharacter(code2){return code2>=CharCodes.UPPER_A&&code2<=CharCodes.UPPER_F||code2>=CharCodes.LOWER_A&&code2<=CharCodes.LOWER_F}__name(isHexadecimalCharacter,"isHexadecimalCharacter");function isAsciiAlphaNumeric(code2){return code2>=CharCodes.UPPER_A&&code2<=CharCodes.UPPER_Z||code2>=CharCodes.LOWER_A&&code2<=CharCodes.LOWER_Z||isNumber(code2)}__name(isAsciiAlphaNumeric,"isAsciiAlphaNumeric");function isEntityInAttributeInvalidEnd(code2){return code2===CharCodes.EQUALS||isAsciiAlphaNumeric(code2)}__name(isEntityInAttributeInvalidEnd,"isEntityInAttributeInvalidEnd");var EntityDecoderState;(function(EntityDecoderState2){EntityDecoderState2[EntityDecoderState2["EntityStart"]=0]="EntityStart";EntityDecoderState2[EntityDecoderState2["NumericStart"]=1]="NumericStart";EntityDecoderState2[EntityDecoderState2["NumericDecimal"]=2]="NumericDecimal";EntityDecoderState2[EntityDecoderState2["NumericHex"]=3]="NumericHex";EntityDecoderState2[EntityDecoderState2["NamedEntity"]=4]="NamedEntity"})(EntityDecoderState||(EntityDecoderState={}));var DecodingMode;(function(DecodingMode2){DecodingMode2[DecodingMode2["Legacy"]=0]="Legacy";DecodingMode2[DecodingMode2["Strict"]=1]="Strict";DecodingMode2[DecodingMode2["Attribute"]=2]="Attribute"})(DecodingMode||(DecodingMode={}));var EntityDecoder=class{static{__name(this,"EntityDecoder")}decodeTree;emitCodePoint;errors;constructor(decodeTree,emitCodePoint,errors){this.decodeTree=decodeTree;this.emitCodePoint=emitCodePoint;this.errors=errors}state=EntityDecoderState.EntityStart;consumed=1;result=0;treeIndex=0;excess=1;decodeMode=DecodingMode.Strict;runConsumed=0;startEntity(decodeMode){this.decodeMode=decodeMode;this.state=EntityDecoderState.EntityStart;this.result=0;this.treeIndex=0;this.excess=1;this.consumed=1;this.runConsumed=0}write(input,offset){switch(this.state){case EntityDecoderState.EntityStart:{if(input.charCodeAt(offset)===CharCodes.NUM){this.state=EntityDecoderState.NumericStart;this.consumed+=1;return this.stateNumericStart(input,offset+1)}this.state=EntityDecoderState.NamedEntity;return this.stateNamedEntity(input,offset)}case EntityDecoderState.NumericStart:{return this.stateNumericStart(input,offset)}case EntityDecoderState.NumericDecimal:{return this.stateNumericDecimal(input,offset)}case EntityDecoderState.NumericHex:{return this.stateNumericHex(input,offset)}case EntityDecoderState.NamedEntity:{return this.stateNamedEntity(input,offset)}}}stateNumericStart(input,offset){if(offset>=input.length){return-1}if((input.charCodeAt(offset)|TO_LOWER_BIT)===CharCodes.LOWER_X){this.state=EntityDecoderState.NumericHex;this.consumed+=1;return this.stateNumericHex(input,offset+1)}this.state=EntityDecoderState.NumericDecimal;return this.stateNumericDecimal(input,offset)}stateNumericHex(input,offset){while(offset<input.length){const char=input.charCodeAt(offset);if(isNumber(char)||isHexadecimalCharacter(char)){const digit=char<=CharCodes.NINE?char-CharCodes.ZERO:(char|TO_LOWER_BIT)-CharCodes.LOWER_A+10;this.result=this.result*16+digit;this.consumed++;offset++}else{return this.emitNumericEntity(char,3)}}return-1}stateNumericDecimal(input,offset){while(offset<input.length){const char=input.charCodeAt(offset);if(isNumber(char)){this.result=this.result*10+(char-CharCodes.ZERO);this.consumed++;offset++}else{return this.emitNumericEntity(char,2)}}return-1}emitNumericEntity(lastCp,expectedLength){if(this.consumed<=expectedLength){this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed);return 0}if(lastCp===CharCodes.SEMI){this.consumed+=1}else if(this.decodeMode===DecodingMode.Strict){return 0}this.emitCodePoint(replaceCodePoint(this.result),this.consumed);if(this.errors){if(lastCp!==CharCodes.SEMI){this.errors.missingSemicolonAfterCharacterReference()}this.errors.validateNumericCharacterReference(this.result)}return this.consumed}stateNamedEntity(input,offset){const{decodeTree}=this;let current=decodeTree[this.treeIndex];let valueLength=(current&BinTrieFlags.VALUE_LENGTH)>>14;while(offset<input.length){if(valueLength===0&&(current&BinTrieFlags.FLAG13)!==0){const runLength=(current&BinTrieFlags.BRANCH_LENGTH)>>7;if(this.runConsumed===0){const firstChar=current&BinTrieFlags.JUMP_TABLE;if(input.charCodeAt(offset)!==firstChar){return this.result===0?0:this.emitNotTerminatedNamedEntity()}offset++;this.excess++;this.runConsumed++}while(this.runConsumed<runLength){if(offset>=input.length){return-1}const charIndexInPacked=this.runConsumed-1;const packedWord=decodeTree[this.treeIndex+1+(charIndexInPacked>>1)];const expectedChar=charIndexInPacked%2===0?packedWord&255:packedWord>>8&255;if(input.charCodeAt(offset)!==expectedChar){this.runConsumed=0;return this.result===0?0:this.emitNotTerminatedNamedEntity()}offset++;this.excess++;this.runConsumed++}this.runConsumed=0;this.treeIndex+=1+(runLength>>1);current=decodeTree[this.treeIndex];valueLength=(current&BinTrieFlags.VALUE_LENGTH)>>14}if(offset>=input.length)break;const char=input.charCodeAt(offset);if(char===CharCodes.SEMI&&valueLength!==0&&(current&BinTrieFlags.FLAG13)!==0){return this.emitNamedEntityData(this.treeIndex,valueLength,this.consumed+this.excess)}this.treeIndex=determineBranch(decodeTree,current,this.treeIndex+Math.max(1,valueLength),char);if(this.treeIndex<0){return this.result===0||this.decodeMode===DecodingMode.Attribute&&(valueLength===0||isEntityInAttributeInvalidEnd(char))?0:this.emitNotTerminatedNamedEntity()}current=decodeTree[this.treeIndex];valueLength=(current&BinTrieFlags.VALUE_LENGTH)>>14;if(valueLength!==0){if(char===CharCodes.SEMI){return this.emitNamedEntityData(this.treeIndex,valueLength,this.consumed+this.excess)}if(this.decodeMode!==DecodingMode.Strict&&(current&BinTrieFlags.FLAG13)===0){this.result=this.treeIndex;this.consumed+=this.excess;this.excess=0}}offset++;this.excess++}return-1}emitNotTerminatedNamedEntity(){const{result,decodeTree}=this;const valueLength=(decodeTree[result]&BinTrieFlags.VALUE_LENGTH)>>14;this.emitNamedEntityData(result,valueLength,this.consumed);this.errors?.missingSemicolonAfterCharacterReference();return this.consumed}emitNamedEntityData(result,valueLength,consumed){const{decodeTree}=this;this.emitCodePoint(valueLength===1?decodeTree[result]&~(BinTrieFlags.VALUE_LENGTH|BinTrieFlags.FLAG13):decodeTree[result+1],consumed);if(valueLength===3){this.emitCodePoint(decodeTree[result+2],consumed)}return consumed}end(){switch(this.state){case EntityDecoderState.NamedEntity:{return this.result!==0&&(this.decodeMode!==DecodingMode.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0}case EntityDecoderState.NumericDecimal:{return this.emitNumericEntity(0,2)}case EntityDecoderState.NumericHex:{return this.emitNumericEntity(0,3)}case EntityDecoderState.NumericStart:{this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed);return 0}case EntityDecoderState.EntityStart:{return 0}}}};function getDecoder(decodeTree){let returnValue="";const decoder=new EntityDecoder(decodeTree,data=>returnValue+=String.fromCodePoint(data));return __name(function decodeWithTrie(input,decodeMode){let lastIndex=0;let offset=0;while((offset=input.indexOf("&",offset))>=0){returnValue+=input.slice(lastIndex,offset);decoder.startEntity(decodeMode);const length=decoder.write(input,offset+1);if(length<0){lastIndex=offset+decoder.end();break}lastIndex=offset+length;offset=length===0?lastIndex+1:lastIndex}const result=returnValue+input.slice(lastIndex);returnValue="";return result},"decodeWithTrie")}__name(getDecoder,"getDecoder");function determineBranch(decodeTree,current,nodeIndex,char){const branchCount=(current&BinTrieFlags.BRANCH_LENGTH)>>7;const jumpOffset=current&BinTrieFlags.JUMP_TABLE;if(branchCount===0){return jumpOffset!==0&&char===jumpOffset?nodeIndex:-1}if(jumpOffset){const value=char-jumpOffset;return value<0||value>=branchCount?-1:decodeTree[nodeIndex+value]-1}const packedKeySlots=branchCount+1>>1;let lo=0;let hi=branchCount-1;while(lo<=hi){const mid=lo+hi>>>1;const slot=mid>>1;const packed=decodeTree[nodeIndex+slot];const midKey=packed>>(mid&1)*8&255;if(midKey<char){lo=mid+1}else if(midKey>char){hi=mid-1}else{return decodeTree[nodeIndex+packedKeySlots+mid]}}return-1}__name(determineBranch,"determineBranch");var htmlDecoder=getDecoder(htmlDecodeTree);function decodeHTMLStrict(htmlString){return htmlDecoder(htmlString,DecodingMode.Strict)}__name(decodeHTMLStrict,"decodeHTMLStrict");var EntityLevel;(function(EntityLevel2){EntityLevel2[EntityLevel2["XML"]=0]="XML";EntityLevel2[EntityLevel2["HTML"]=1]="HTML"})(EntityLevel||(EntityLevel={}));var EncodingMode;(function(EncodingMode2){EncodingMode2[EncodingMode2["UTF8"]=0]="UTF8";EncodingMode2[EncodingMode2["ASCII"]=1]="ASCII";EncodingMode2[EncodingMode2["Extensive"]=2]="Extensive";EncodingMode2[EncodingMode2["Attribute"]=3]="Attribute";EncodingMode2[EncodingMode2["Text"]=4]="Text"})(EncodingMode||(EncodingMode={}));init_esbuild_shims();var REBuilder=class{static{__name(this,"REBuilder")}src_Any=Any.source;src_Cc=Cc.source;src_Z=Z.source;src_P=P.source;src_ZPCc=[this.src_Z,this.src_P,this.src_Cc].join("|");src_ZCc=[this.src_Z,this.src_Cc].join("|");cache={};opts={maxLength:1e4,urlAuth:false,schema_names:[]};constructor(opts={}){this.opts={...this.opts,...opts}}set(opts={}){this.opts={...this.opts,...opts};this.cache={};return this}escapeRE(str){return str.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}nestedPairRE(open,close,depth=4){const openRE=this.escapeRE(open);const closeRE=this.escapeRE(close);const atom=`(?:(?!${this.src_ZCc}|${openRE}|${closeRE}).)`;let pair=`${openRE}${atom}{0,1000}${closeRE}`;for(let level=2;level<=depth;level++)pair=`${openRE}(?:${atom}|${pair}){0,1000}${closeRE}`;return pair}get_text_separators(){return this.cache.text_separators??=/[><\uff5c]/}get_pseudo_letter(){return this.cache.src_pseudo_letter??=new RegExp(`(?:(?!${this.get_text_separators().source}|${this.src_ZPCc})${this.src_Any})`)}get_ipv4_addr(){return this.cache.src_ip4??=new RegExp("(?:(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])[.]){3}(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])")}get_ipv6_addr(){const h16="[0-9A-Fa-f]{1,4}";const ls32=`(?:(?:${h16}:${h16})|${this.get_ipv4_addr().source})`;return this.cache.src_ip6_addr??=new RegExp(`(?:(?:${h16}:){6}${ls32}|::(?:${h16}:){5}${ls32}|(?:${h16})?::(?:${h16}:){4}${ls32}|(?:(?:${h16}:){0,1}${h16})?::(?:${h16}:){3}${ls32}|(?:(?:${h16}:){0,2}${h16})?::(?:${h16}:){2}${ls32}|(?:(?:${h16}:){0,3}${h16})?::${h16}:${ls32}|(?:(?:${h16}:){0,4}${h16})?::${ls32}|(?:(?:${h16}:){0,5}${h16})?::${h16}|(?:(?:${h16}:){0,6}${h16})?::)`)}get_ipv6_url_host(){return this.cache.src_ip6_host??=new RegExp(`\\[${this.get_ipv6_addr().source}\\]`)}get_ipv6_mail_host(){return this.cache.src_ipv6_mail_host??=new RegExp(`\\[IPv6:${this.get_ipv6_addr().source}\\]`)}get_auth(){return this.cache.src_auth??=new RegExp(`(?:(?:(?!${this.src_ZCc}|[@/\\[\\]()]).){1,50}@)?`)}get_port(){return this.cache.src_port??=new RegExp("(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?")}get_host_terminator(){return this.cache.src_host_terminator??=new RegExp(`(?=$|${this.get_text_separators().source}|${this.src_ZPCc})(?!${this.opts["---"]?"-(?!--)|":"-|"}_|:\\d|\\.-|\\.(?!$|${this.src_ZPCc}))`)}get_path_terminator(){return this.cache.src_path_terminator??=new RegExp(`${this.src_ZPCc}|${this.get_text_separators().source}`)}get_path(){return this.cache.src_path??=new RegExp(`(?:[/?#](?:${this.nestedPairRE("[","]")}|${this.nestedPairRE("(",")")}|${this.nestedPairRE("{","}")}|\\"(?:(?!${this.src_ZCc}|["]).){1,100}\\"|\\'(?:(?!${this.src_ZCc}|[']).){1,100}\\'|\\'(?=${this.get_pseudo_letter().source}|[-])|\\.{2,20}[:]?[a-zA-Z0-9%/&]|\\.(?!${this.src_ZCc}|[.]|$)|`+(this.opts["---"]?"\\-(?!--(?:[^-]|$))(?:-{0,19})|":"\\-{1,20}|")+`,(?!${this.src_ZCc}|$)|;(?!${this.src_ZCc}|$)|\\!{1,20}(?!${this.src_ZCc}|[!]|$)|\\?(?!${this.src_ZCc}|[?]|$)|`+this.get_path_extra().source+`[\\\\/:%@#&=_~*]|(?!${this.get_path_terminator().source}).){1,${this.opts.maxLength}}|\\/)?`)}get_mail_name(){return this.cache.src_mail_name??=new RegExp("[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9](?:[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9]|[.](?=[-!#$%&'*+/=?^_`{|}~a-zA-Z0-9])){0,63}")}get_xn(){return this.cache.src_xn??=new RegExp("xn--[a-z0-9\\-]{1,59}")}get_tld(){if(this.cache.tld)return this.cache.tld;const tlds_src=[...new Set(this.opts.tlds||[])].sort().reverse().join("|");this.cache.tld=new RegExp(`${tlds_src||"$#none#$"}|${this.get_xn().source}`);return this.cache.tld}get_domain_root(){return this.cache.src_domain_root??=new RegExp("(?:"+this.get_xn().source+`|${this.get_pseudo_letter().source}{1,63})`)}get_domain(){return this.cache.src_domain??=new RegExp("(?:"+this.get_xn().source+`|(?:${this.get_pseudo_letter().source})|(?:${this.get_pseudo_letter().source}(?:-|${this.get_pseudo_letter().source}){0,61}${this.get_pseudo_letter().source}))`)}get_url_host_port(){return this.cache.url_host_port??=new RegExp("(?:"+this.get_ipv6_url_host().source+`|(?:(?:(?:${this.get_domain().source})\\.){0,10}${this.get_domain().source}))`+this.get_port().source+this.get_host_terminator().source)}get_fuzzy_url_host_port(){return this.cache.fuzzy_url_host_port??=new RegExp("(?:"+(this.opts.fuzzyIP?this.get_ipv4_addr().source+"|":"")+`(?:(?:(?:${this.get_domain().source})\\.){1,10}(?:${this.get_tld().source})))`+this.get_host_terminator().source)}get_mail_host(){return this.cache.src_mail_host??=new RegExp("(?:"+this.get_ipv6_mail_host().source+`|(?:(?:(?:${this.get_domain().source})\\.){0,4}${this.get_domain().source}))`+this.get_host_terminator().source)}get_fuzzy_mail_host(){return this.cache.src_fuzzy_mail_host??=new RegExp("(?:"+this.get_ipv6_mail_host().source+`|(?:(?:(?:${this.get_domain().source})[.]){1,4}${this.get_domain_root().source}))`+this.get_host_terminator().source)}get_path_extra(){return this.cache.src_path_extra??=new RegExp("")}get_fuzzy_mail_host_search(){return this.cache.mail_fuzzy_host_search??=new RegExp(`@${this.get_fuzzy_mail_host().source}`,"ig")}get_fuzzy_link_search(){return this.cache.link_fuzzy_search??=new RegExp(`(^|(?![.:/\\-_@])(?:[$+<=>^\`|\uFF5C]|${this.src_ZPCc}))(?:(?![$+<=>^\`|\uFF5C])${this.get_fuzzy_url_host_port().source}${this.get_path().source})`,"ig")}get_http_validator(){return this.cache.http_validator??=new RegExp("\\/\\/"+(this.opts.urlAuth?this.get_auth().source:"")+this.get_url_host_port().source+this.get_path().source,"iy")}get_relative_proto_validator(){return this.cache.relative_proto_validator??=new RegExp((this.opts.urlAuth?this.get_auth().source:"")+`(?:localhost|${this.get_ipv6_url_host().source}|(?:(?:${this.get_domain().source})[.]){1,10}${this.get_domain_root().source})`+this.get_port().source+this.get_host_terminator().source+this.get_path().source,"iy")}get_mail_name_validator(){return this.cache.mail_name_validator??=new RegExp(`(?:^|${this.get_text_separators().source}|"|\\(|${this.src_ZCc})(${this.get_mail_name().source})$`)}get_mailto_validator(){return this.cache.mailto_validator??=new RegExp(`${this.get_mail_name().source}@${this.get_mail_host().source}`,"iy")}get_schema_names(){return this.cache.schema_names??=new RegExp((this.opts.schema_names||[]).map(name=>this.escapeRE(name)).join("|"))}get_schema_search(){return this.cache.schema_search??=new RegExp(`(^|(?!_)(?:[><\uFF5C]|${this.src_ZPCc}))(${this.get_schema_names().source})`,"ig")}get_schema_at_start(){return this.cache.schema_at_start??=new RegExp(`^${this.get_schema_search().source}`,"i")}};var web_schema={validate:__name((text2,pos,self)=>{const re=self.re.get_http_validator();re.lastIndex=pos;const m=re.exec(text2);return m?m[0].length:0},"validate"),normalize:__name((match,self)=>self.normalize(match),"normalize")};var defaultSchemas={"http:":web_schema,"https:":web_schema,"ftp:":web_schema,"//":{validate:__name(function(text2,pos,self){const re=self.re.get_relative_proto_validator();re.lastIndex=pos;const m=re.exec(text2);if(m){if(pos>=3&&text2[pos-3]===":")return 0;if(pos>=3&&text2[pos-3]==="/")return 0;return m[0].length}return 0},"validate"),normalize:__name((match,self)=>self.normalize(match),"normalize")},"mailto:":{validate:__name(function(text2,pos,self){const re=self.re.get_mailto_validator();re.lastIndex=pos;const m=re.exec(text2);return m?m[0].length:0},"validate"),normalize:__name((match,self)=>self.normalize(match),"normalize")}};var tlds_2ch="a:cdefgilmnoqrstuwxz|b:abdefghijmnorstvwyz|c:acdfghiklmnoruvwxyz|d:ejkmoz|e:cegrstu|f:ijkmor|g:abdefghilmnpqrstuwy|h:kmnrtu|i:delmnoqrst|j:emop|k:eghimnprwyz|l:abcikrstuvy|m:acdeghklmnopqrstuvwxyz|n:acefgilopruz|o:m|p:aefghklmnrstwy|q:a|r:eosuw|s:abcdeghijklmnortuvxyz|t:cdfghjklmnortvwz|u:agksyz|v:aceginu|w:fs|y:et|z:amw";var tlds_default="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|\u0440\u0444";function unpackTlds(){const result=tlds_default.split("|");tlds_2ch.split("|").forEach(item=>{const sep13=item.indexOf(":");const prefix=item.slice(0,sep13);for(const suffix of item.slice(sep13+1))result.push(prefix+suffix)});return result}__name(unpackTlds,"unpackTlds");var defaultOptions={fuzzyLink:false,fuzzyEmail:true,fuzzyIP:false,"---":false,tlds:unpackTlds(),urlAuth:false,maxLength:1e4};var Match=class{static{__name(this,"Match")}schema;index;lastIndex;raw;text;url;constructor(text2,schema,index,lastIndex){const raw=text2.slice(index,lastIndex);this.schema=schema.toLowerCase();this.index=index;this.lastIndex=lastIndex;this.raw=raw;this.text=raw;this.url=raw}};var LinkifyIt=class{static{__name(this,"LinkifyIt")}__opts__;__schemas__;re;constructor(options={}){const{rebuilder,...linkifyOptions}=options;this.__opts__={...defaultOptions,...linkifyOptions};this.__schemas__={...defaultSchemas};this.re=rebuilder||new REBuilder;this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)})}add(schema,definition=null){if(!definition)delete this.__schemas__[schema];else{const def={normalize:__name((match,self)=>self.normalize(match),"normalize"),...definition};this.__schemas__[schema]=def}this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)});return this}set(options={}){this.__opts__={...this.__opts__,...options};this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)});return this}test(text2){if(!text2.length)return false;let m,re;re=this.re.get_schema_search();re.lastIndex=0;while((m=re.exec(text2))!==null)if(this.testSchemaAt(text2,m[2],re.lastIndex))return true;if(this.__opts__.fuzzyLink&&this.__schemas__["http:"]){re=this.re.get_fuzzy_link_search();re.lastIndex=0;if(re.exec(text2)!==null)return true}if(this.__opts__.fuzzyEmail&&this.__schemas__["mailto:"]){if(text2.indexOf("@")>=0){const mailHostRe=this.re.get_fuzzy_mail_host_search();const mailNameRe=this.re.get_mail_name_validator();mailHostRe.lastIndex=0;while((m=mailHostRe.exec(text2))!==null){const name=text2.slice(Math.max(0,m.index-65),m.index);if(mailNameRe.test(name))return true}}}return false}testSchemaAt(text2,schema,pos){if(!this.__schemas__[schema.toLowerCase()])return 0;return this.__schemas__[schema.toLowerCase()].validate(text2.slice(0,pos+this.__opts__.maxLength),pos,this)}match(text2){const result=[];const schemaRe=this.re.get_schema_search();let fuzzyLinkRe;let mailHostRe;let mailNameRe;let fuzzyLinkCandidate;let fuzzyEmailCandidate;let schemaPrefix;let schemaDone=false;let fuzzyLinkDone=false;let fuzzyEmailDone=false;let pos=0;if(!text2.length)return null;schemaRe.lastIndex=0;if(this.__opts__.fuzzyLink&&this.__schemas__["http:"]){fuzzyLinkRe=this.re.get_fuzzy_link_search();fuzzyLinkRe.lastIndex=0}if(this.__opts__.fuzzyEmail&&this.__schemas__["mailto:"]){mailHostRe=this.re.get_fuzzy_mail_host_search();mailHostRe.lastIndex=0;mailNameRe=this.re.get_mail_name_validator()}for(;;){const scanFrom=Math.max(pos-1,0);if(mailHostRe&&mailNameRe&&!fuzzyEmailDone&&(!fuzzyEmailCandidate||fuzzyEmailCandidate.index<pos)){if(mailHostRe.lastIndex<scanFrom)mailHostRe.lastIndex=scanFrom;for(;;){const m=mailHostRe.exec(text2);if(!m){fuzzyEmailDone=true;fuzzyEmailCandidate=void 0;break}const name=mailNameRe.exec(text2.slice(Math.max(0,m.index-65),m.index));if(!name)continue;fuzzyEmailCandidate={schema:"mailto:",index:m.index-name[1].length,lastIndex:m.index+m[0].length};if(fuzzyEmailCandidate.index>=pos)break;if(mailHostRe.lastIndex<scanFrom)mailHostRe.lastIndex=scanFrom}}if(fuzzyLinkRe&&!fuzzyLinkDone&&(!fuzzyLinkCandidate||fuzzyLinkCandidate.index<pos)){if(fuzzyLinkRe.lastIndex<scanFrom)fuzzyLinkRe.lastIndex=scanFrom;for(;;){const m=fuzzyLinkRe.exec(text2);if(!m){fuzzyLinkDone=true;fuzzyLinkCandidate=void 0;break}fuzzyLinkCandidate={schema:"",index:m.index+m[1].length,lastIndex:m.index+m[0].length};if(fuzzyLinkCandidate.index>=pos)break;if(fuzzyLinkRe.lastIndex<scanFrom)fuzzyLinkRe.lastIndex=scanFrom}}let fuzzyCandidate=fuzzyEmailCandidate;if(!fuzzyCandidate||fuzzyLinkCandidate&&(fuzzyLinkCandidate.index<fuzzyCandidate.index||fuzzyLinkCandidate.index===fuzzyCandidate.index&&fuzzyLinkCandidate.lastIndex>fuzzyCandidate.lastIndex))fuzzyCandidate=fuzzyLinkCandidate;let schemaCandidate;if(!schemaDone)for(;;){if(!schemaPrefix){if(schemaRe.lastIndex<scanFrom)schemaRe.lastIndex=scanFrom;const m=schemaRe.exec(text2);if(!m){schemaDone=true;break}schemaPrefix={schema:m[2],index:m.index+m[1].length,lastIndex:m.index+m[0].length}}if(schemaPrefix.index<pos){schemaPrefix=void 0;continue}if(fuzzyCandidate&&schemaPrefix.index>fuzzyCandidate.index)break;const prefix=schemaPrefix;schemaPrefix=void 0;const len=this.testSchemaAt(text2,prefix.schema,prefix.lastIndex);if(len){schemaCandidate={schema:prefix.schema,index:prefix.index,lastIndex:prefix.lastIndex+len};break}}let candidate=schemaCandidate;if(!candidate||fuzzyEmailCandidate&&(fuzzyEmailCandidate.index<candidate.index||fuzzyEmailCandidate.index===candidate.index&&fuzzyEmailCandidate.lastIndex>candidate.lastIndex))candidate=fuzzyEmailCandidate;if(!candidate||fuzzyLinkCandidate&&(fuzzyLinkCandidate.index<candidate.index||fuzzyLinkCandidate.index===candidate.index&&fuzzyLinkCandidate.lastIndex>candidate.lastIndex))candidate=fuzzyLinkCandidate;if(!candidate)break;if(candidate===fuzzyEmailCandidate)fuzzyEmailCandidate=void 0;else if(candidate===fuzzyLinkCandidate)fuzzyLinkCandidate=void 0;const match=new Match(text2,candidate.schema,candidate.index,candidate.lastIndex);if(match.schema)this.__schemas__[match.schema].normalize(match,this);else this.normalize(match);result.push(match);pos=candidate.lastIndex}if(result.length)return result;return null}matchAtStart(text2){if(!text2.length)return null;const m=this.re.get_schema_at_start().exec(text2);if(!m)return null;const len=this.testSchemaAt(text2,m[2],m[0].length);if(!len)return null;const match=new Match(text2,m[2],m.index+m[1].length,m.index+m[0].length+len);this.__schemas__[match.schema].normalize(match,this);return match}tlds(list2,keepOld=false){list2=Array.isArray(list2)?list2:[list2];if(!keepOld)this.__opts__.tlds=list2;else this.__opts__.tlds=this.__opts__.tlds.concat(list2);this.re.set({...this.__opts__,schema_names:Object.keys(this.__schemas__)});return this}normalize(match){if(!match.schema)match.url=`http://${match.url}`;if(match.schema==="mailto:"&&!/^mailto:/i.test(match.url))match.url=`mailto:${match.url}`}};var import_punycode=__toESM(require_punycode(),1);var __defProp=Object.defineProperty;var __exportAll=__name((all,no_symbols)=>{let target={};for(var name in all)__defProp(target,name,{get:all[name],enumerable:true});if(!no_symbols)__defProp(target,Symbol.toStringTag,{value:"Module"});return target},"__exportAll");var utils_exports=__exportAll({arrayReplaceAt:__name(()=>arrayReplaceAt,"arrayReplaceAt"),asciiTrim:__name(()=>asciiTrim,"asciiTrim"),callable:__name(()=>callable,"callable"),escapeHtml:__name(()=>escapeHtml,"escapeHtml"),escapeRE:__name(()=>escapeRE,"escapeRE"),fromCodePoint:__name(()=>fromCodePoint,"fromCodePoint"),isMdAsciiPunct:__name(()=>isMdAsciiPunct,"isMdAsciiPunct"),isPunctChar:__name(()=>isPunctChar,"isPunctChar"),isPunctCharCode:__name(()=>isPunctCharCode,"isPunctCharCode"),isSpace:__name(()=>isSpace,"isSpace"),isValidEntityCode:__name(()=>isValidEntityCode,"isValidEntityCode"),isWhiteSpace:__name(()=>isWhiteSpace,"isWhiteSpace"),lib:__name(()=>lib,"lib"),normalizeReference:__name(()=>normalizeReference,"normalizeReference"),unescapeAll:__name(()=>unescapeAll,"unescapeAll"),unescapeMd:__name(()=>unescapeMd,"unescapeMd")});function callable(cls){const wrapper=__name(function(...args){return Reflect.construct(cls,args,new.target&&new.target!==wrapper?new.target:cls)},"wrapper");Object.defineProperty(wrapper,"name",{value:cls.name});Object.setPrototypeOf(wrapper,cls);wrapper.prototype=cls.prototype;return wrapper}__name(callable,"callable");function arrayReplaceAt(src,pos,newElements){return[].concat(src.slice(0,pos),newElements,src.slice(pos+1))}__name(arrayReplaceAt,"arrayReplaceAt");function isValidEntityCode(c){if(c>=55296&&c<=57343)return false;if(c>=64976&&c<=65007)return false;if((c&65535)===65535||(c&65535)===65534)return false;if(c>=0&&c<=8)return false;if(c===11)return false;if(c>=14&&c<=31)return false;if(c>=127&&c<=159)return false;if(c>1114111)return false;return true}__name(isValidEntityCode,"isValidEntityCode");function fromCodePoint(c){if(c>65535){c-=65536;const surrogate1=55296+(c>>10);const surrogate2=56320+(c&1023);return String.fromCharCode(surrogate1,surrogate2)}return String.fromCharCode(c)}__name(fromCodePoint,"fromCodePoint");var UNESCAPE_MD_RE=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g;var UNESCAPE_ALL_RE=new RegExp(`${UNESCAPE_MD_RE.source}|${/&([a-z#][a-z0-9]{1,31});/gi.source}`,"gi");var DIGITAL_ENTITY_TEST_RE=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function replaceEntityPattern(match,name){if(name.charCodeAt(0)===35&&DIGITAL_ENTITY_TEST_RE.test(name)){const code2=name[1].toLowerCase()==="x"?parseInt(name.slice(2),16):parseInt(name.slice(1),10);if(isValidEntityCode(code2))return fromCodePoint(code2);return match}const decoded=decodeHTMLStrict(match);if(decoded!==match)return decoded;return match}__name(replaceEntityPattern,"replaceEntityPattern");function unescapeMd(str){if(str.indexOf("\\")<0)return str;return str.replace(UNESCAPE_MD_RE,"$1")}__name(unescapeMd,"unescapeMd");function unescapeAll(str){if(str.indexOf("\\")<0&&str.indexOf("&")<0)return str;return str.replace(UNESCAPE_ALL_RE,function(match,escaped,entity2){if(escaped)return escaped;return replaceEntityPattern(match,entity2)})}__name(unescapeAll,"unescapeAll");var HTML_ESCAPE_TEST_RE=/[&<>"]/;var HTML_ESCAPE_REPLACE_RE=/[&<>"]/g;var HTML_REPLACEMENTS={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"};function replaceUnsafeChar(ch){return HTML_REPLACEMENTS[ch]}__name(replaceUnsafeChar,"replaceUnsafeChar");function escapeHtml(str){if(HTML_ESCAPE_TEST_RE.test(str))return str.replace(HTML_ESCAPE_REPLACE_RE,replaceUnsafeChar);return str}__name(escapeHtml,"escapeHtml");var REGEXP_ESCAPE_RE=/[.?*+^$[\]\\(){}|-]/g;function escapeRE(str){return str.replace(REGEXP_ESCAPE_RE,"\\$&")}__name(escapeRE,"escapeRE");function isSpace(code2){switch(code2){case 9:case 32:return true}return false}__name(isSpace,"isSpace");function isWhiteSpace(code2){if(code2>=8192&&code2<=8202)return true;switch(code2){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return true}return false}__name(isWhiteSpace,"isWhiteSpace");function isPunctChar(ch){return P.test(ch)||S.test(ch)}__name(isPunctChar,"isPunctChar");function isPunctCharCode(code2){return isPunctChar(fromCodePoint(code2))}__name(isPunctCharCode,"isPunctCharCode");function isMdAsciiPunct(ch){switch(ch){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return true;default:return false}}__name(isMdAsciiPunct,"isMdAsciiPunct");function normalizeReference(str){str=str.trim().replace(/\s+/g," ");return str.toLowerCase().toUpperCase()}__name(normalizeReference,"normalizeReference");function isAsciiTrimmable(c){return c===32||c===9||c===10||c===13}__name(isAsciiTrimmable,"isAsciiTrimmable");function asciiTrim(str){let start=0;for(;start<str.length;start++)if(!isAsciiTrimmable(str.charCodeAt(start)))break;let end=str.length-1;for(;end>=start;end--)if(!isAsciiTrimmable(str.charCodeAt(end)))break;return str.slice(start,end+1)}__name(asciiTrim,"asciiTrim");var lib={mdurl:mdurl_exports,ucmicro:build_exports};function parseLinkLabel(state,start,disableNested){let level,found,marker,prevPos;const max=state.posMax;const oldPos=state.pos;state.pos=start+1;level=1;while(state.pos<max){marker=state.src.charCodeAt(state.pos);if(marker===93){level--;if(level===0){found=true;break}}prevPos=state.pos;state.md.inline.skipToken(state);if(marker===91){if(prevPos===state.pos-1)level++;else if(disableNested){state.pos=oldPos;return-1}}}let labelEnd=-1;if(found)labelEnd=state.pos;state.pos=oldPos;return labelEnd}__name(parseLinkLabel,"parseLinkLabel");function parseLinkDestination(str,start,max){let code2;let pos=start;const result={ok:false,pos:0,str:""};if(str.charCodeAt(pos)===60){pos++;while(pos<max){code2=str.charCodeAt(pos);if(code2===10)return result;if(code2===60)return result;if(code2===62){result.pos=pos+1;result.str=unescapeAll(str.slice(start+1,pos));result.ok=true;return result}if(code2===92&&pos+1<max){pos+=2;continue}pos++}return result}let level=0;while(pos<max){code2=str.charCodeAt(pos);if(code2===32)break;if(code2<32||code2===127)break;if(code2===92&&pos+1<max){if(str.charCodeAt(pos+1)===32){pos++;continue}pos+=2;continue}if(code2===40){level++;if(level>32)return result}if(code2===41){if(level===0)break;level--}pos++}if(start===pos)return result;if(level!==0)return result;result.str=unescapeAll(str.slice(start,pos));result.pos=pos;result.ok=true;return result}__name(parseLinkDestination,"parseLinkDestination");function parseLinkTitle(str,start,max,prev_state){let code2;let pos=start;const state={ok:false,can_continue:false,pos:0,str:"",marker:0};if(prev_state){state.str=prev_state.str;state.marker=prev_state.marker}else{if(pos>=max)return state;let marker=str.charCodeAt(pos);if(marker!==34&&marker!==39&&marker!==40)return state;start++;pos++;if(marker===40)marker=41;state.marker=marker}while(pos<max){code2=str.charCodeAt(pos);if(code2===state.marker){state.pos=pos+1;state.str+=unescapeAll(str.slice(start,pos));state.ok=true;return state}else if(code2===40&&state.marker===41)return state;else if(code2===92&&pos+1<max)pos++;pos++}state.can_continue=true;state.str+=unescapeAll(str.slice(start,pos));return state}__name(parseLinkTitle,"parseLinkTitle");var helpers_exports=__exportAll({parseLinkDestination:__name(()=>parseLinkDestination,"parseLinkDestination"),parseLinkLabel:__name(()=>parseLinkLabel,"parseLinkLabel"),parseLinkTitle:__name(()=>parseLinkTitle,"parseLinkTitle")});function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o2){return typeof o2}:function(o2){return o2&&"function"==typeof Symbol&&o2.constructor===Symbol&&o2!==Symbol.prototype?"symbol":typeof o2},_typeof(o)}__name(_typeof,"_typeof");function toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}__name(toPrimitive,"toPrimitive");function toPropertyKey(t){var i=toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+""}__name(toPropertyKey,"toPropertyKey");function _defineProperty(e,r,t){return(r=toPropertyKey(r))in e?Object.defineProperty(e,r,{value:t,enumerable:true,configurable:true,writable:true}):e[r]=t,e}__name(_defineProperty,"_defineProperty");var Token=class{static{__name(this,"Token")}constructor(type,tag,nesting){_defineProperty(this,"map",null);_defineProperty(this,"level",0);_defineProperty(this,"children",null);_defineProperty(this,"content","");_defineProperty(this,"markup","");_defineProperty(this,"info","");_defineProperty(this,"block",false);_defineProperty(this,"hidden",false);this.type=type;this.tag=tag;this.attrs=null;this.nesting=nesting;this.meta=null}attrIndex(name){if(!this.attrs)return-1;const attrs=this.attrs;for(let i=0,len=attrs.length;i<len;i++)if(attrs[i][0]===name)return i;return-1}attrPush(attrData){if(this.attrs)this.attrs.push(attrData);else this.attrs=[attrData]}attrSet(name,value){const idx=this.attrIndex(name);const attrData=[name,value];if(idx<0)this.attrPush(attrData);else this.attrs[idx]=attrData}attrGet(name){const idx=this.attrIndex(name);let value=null;if(idx>=0)value=this.attrs[idx][1];return value}attrJoin(name,value){const idx=this.attrIndex(name);if(idx<0)this.attrPush([name,value]);else this.attrs[idx][1]=`${this.attrs[idx][1]} ${value}`}};var Ruler=class{static{__name(this,"Ruler")}constructor(){_defineProperty(this,"__rules__",[]);_defineProperty(this,"__cache__",null)}__find__(name){for(let i=0;i<this.__rules__.length;i++)if(this.__rules__[i].name===name)return i;return-1}__compile__(){const chains=new Set;this.__rules__.forEach(rule=>{if(!rule.enabled)return;rule.alt.forEach(altName=>{if(altName)chains.add(altName)})});this.__cache__=Object.create(null);this.__cache__[""]=[];this.__rules__.forEach(rule=>{if(rule.enabled)this.__cache__[""].push(rule.fn)});chains.forEach(chain=>{this.__cache__[chain]=[];this.__rules__.forEach(rule=>{if(rule.enabled&&rule.alt.indexOf(chain)>=0)this.__cache__[chain].push(rule.fn)})})}at(name,fn,options={}){const index=this.__find__(name);if(index===-1)throw new Error(`Parser rule not found: ${name}`);this.__rules__[index].fn=fn;this.__rules__[index].alt=options.alt||[];this.__cache__=null}before(beforeName,ruleName,fn,options={}){const index=this.__find__(beforeName);if(index===-1)throw new Error(`Parser rule not found: ${beforeName}`);this.__rules__.splice(index,0,{name:ruleName,enabled:true,fn,alt:options.alt||[]});this.__cache__=null}after(afterName,ruleName,fn,options={}){const index=this.__find__(afterName);if(index===-1)throw new Error(`Parser rule not found: ${afterName}`);this.__rules__.splice(index+1,0,{name:ruleName,enabled:true,fn,alt:options.alt||[]});this.__cache__=null}push(ruleName,fn,options={}){this.__rules__.push({name:ruleName,enabled:true,fn,alt:options.alt||[]});this.__cache__=null}enable(list2,ignoreInvalid=false){if(!Array.isArray(list2))list2=[list2];const result=[];list2.forEach(name=>{const idx=this.__find__(name);if(idx<0){if(ignoreInvalid)return;throw new Error(`Rules manager: invalid rule name ${name}`)}this.__rules__[idx].enabled=true;result.push(name)});this.__cache__=null;return result}enableOnly(list2,ignoreInvalid=false){if(!Array.isArray(list2))list2=[list2];this.__rules__.forEach(rule=>{rule.enabled=false});this.enable(list2,ignoreInvalid)}disable(list2,ignoreInvalid=false){if(!Array.isArray(list2))list2=[list2];const result=[];list2.forEach(name=>{const idx=this.__find__(name);if(idx<0){if(ignoreInvalid)return;throw new Error(`Rules manager: invalid rule name ${name}`)}this.__rules__[idx].enabled=false;result.push(name)});this.__cache__=null;return result}getRules(chainName){if(!this.__cache__)this.__compile__();return this.__cache__[chainName]||[]}};var default_rules={};default_rules.code_inline=function(tokens,idx,options,env,slf){const token=tokens[idx];return`<code${slf.renderAttrs(token)}>${escapeHtml(token.content)}</code>`};default_rules.code_block=function(tokens,idx,options,env,slf){const token=tokens[idx];return`<pre${slf.renderAttrs(token)}><code>${escapeHtml(tokens[idx].content)}</code></pre>
5
5
  `};default_rules.fence=function(tokens,idx,options,env,slf){const token=tokens[idx];const info=token.info?unescapeAll(token.info).trim():"";let langName="";let langAttrs="";if(info){const arr=info.split(/(\s+)/g);langName=arr[0];langAttrs=arr.slice(2).join("")}let highlighted;if(options.highlight)highlighted=options.highlight(token.content,langName,langAttrs)||escapeHtml(token.content);else highlighted=escapeHtml(token.content);if(highlighted.indexOf("<pre")===0)return highlighted+"\n";if(info){const i=token.attrIndex("class");const tmpAttrs=token.attrs?token.attrs.slice():[];if(i<0)tmpAttrs.push(["class",`${options.langPrefix}${langName}`]);else{tmpAttrs[i]=[tmpAttrs[i][0],tmpAttrs[i][1]];tmpAttrs[i][1]+=` ${options.langPrefix}${langName}`}const tmpToken={attrs:tmpAttrs};return`<pre><code${slf.renderAttrs(tmpToken)}>${highlighted}</code></pre>
6
6
  `}return`<pre><code${slf.renderAttrs(token)}>${highlighted}</code></pre>
@@ -1,3 +1,3 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import{RipGrepTool,_resetRipGrepCachesForTest}from"./chunk-SSYS5YN5.js";import"./chunk-ZHHFNZ5J.js";import"./chunk-QZV4PFQK.js";import"./chunk-4NPYOXJO.js";import"./chunk-SCD5TUBG.js";import"./chunk-TL3SF2GA.js";import"./chunk-ZWPSBU7K.js";import"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-W5NWIGKO.js";import"./chunk-KVA6DHHF.js";import"./chunk-PWOQASXT.js";import"./chunk-K7JCVESI.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7DOOXUDG.js";import"./chunk-77V43YOE.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-4DIWAQ5G.js";import"./chunk-Q6UAOTP3.js";import"./chunk-NGOIJH7K.js";import"./chunk-GOR7FFVE.js";import"./chunk-4ZBZL23U.js";import"./chunk-BMHYEQTI.js";import"./chunk-ZZZAYAJW.js";import"./chunk-XMANRGPK.js";import"./chunk-3XVPZY7X.js";import"./chunk-KQX4H2D3.js";import"./chunk-URNNJMIC.js";import"./chunk-DBRQGEEI.js";import"./chunk-NGVRCUYD.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-O5EKX7LG.js";import"./chunk-TM6ZCBR7.js";import"./chunk-SVAPAMMG.js";import"./chunk-3KUHQGOS.js";import"./chunk-I6S7NGX3.js";import"./chunk-SBZFGYYS.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-I7L2TX4M.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import"./chunk-VKDAXTCZ.js";import"./chunk-KBWJGX7I.js";export{RipGrepTool,_resetRipGrepCachesForTest};
3
+ import{RipGrepTool,_resetRipGrepCachesForTest}from"./chunk-SSYS5YN5.js";import"./chunk-ZHHFNZ5J.js";import"./chunk-QZV4PFQK.js";import"./chunk-4NPYOXJO.js";import"./chunk-SCD5TUBG.js";import"./chunk-TL3SF2GA.js";import"./chunk-ZWPSBU7K.js";import"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-W5NWIGKO.js";import"./chunk-KVA6DHHF.js";import"./chunk-PWOQASXT.js";import"./chunk-K7JCVESI.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7DOOXUDG.js";import"./chunk-77V43YOE.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-4DIWAQ5G.js";import"./chunk-Q6UAOTP3.js";import"./chunk-AFO5ER23.js";import"./chunk-GOR7FFVE.js";import"./chunk-4ZBZL23U.js";import"./chunk-BMHYEQTI.js";import"./chunk-ZZZAYAJW.js";import"./chunk-XMANRGPK.js";import"./chunk-3XVPZY7X.js";import"./chunk-KQX4H2D3.js";import"./chunk-URNNJMIC.js";import"./chunk-DBRQGEEI.js";import"./chunk-NGVRCUYD.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-O5EKX7LG.js";import"./chunk-TM6ZCBR7.js";import"./chunk-SVAPAMMG.js";import"./chunk-3KUHQGOS.js";import"./chunk-I6S7NGX3.js";import"./chunk-SBZFGYYS.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-I7L2TX4M.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import"./chunk-VKDAXTCZ.js";import"./chunk-KBWJGX7I.js";export{RipGrepTool,_resetRipGrepCachesForTest};
@@ -1,3 +1,3 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
- import{InvalidPolicyConfigError,assertChannelWorkerDaemonUrlIsLocal,createBoundChannelDeliveryHandler,createDisabledChannelWorkerSupervisor,createLazyBridgeProxy,describeWorkerTlsTrustGaps,extractContextFilename,formatChannelWorkerDaemonUrl,maxSessionsFromSettings,resolveRuntimeStartupTimeoutMs,runQwenServe,subSessionConcurrencyCapsFromSettings,validateAndCanonicalizeWorkspaceInput,validatePolicyConfig,verifyWorkerTlsTrust,waitForRuntimeStartingForShutdown}from"./chunk-2NOMOJWE.js";import"./chunk-APLMCZ35.js";import"./chunk-UKMS3RLB.js";import"./chunk-RVJJFDF3.js";import"./chunk-M7PWCW6A.js";import"./chunk-XIFNBULA.js";import"./chunk-6S5XOXJ2.js";import"./chunk-R7TNFTT4.js";import"./chunk-YZUKMJW7.js";import"./chunk-SVGTUGV2.js";import"./chunk-LGFF5PJA.js";import"./chunk-UJJSBKTX.js";import"./chunk-QSHWWIZT.js";import"./chunk-M5KJJE2X.js";import"./chunk-ASTRUET5.js";import"./chunk-BWQ5AIEA.js";import"./chunk-WDR5XP3Y.js";import"./chunk-WBDNGVHU.js";import"./chunk-2QYDBHYZ.js";import"./chunk-VTZZXEWA.js";import"./chunk-AJRRKTEY.js";import"./chunk-D5YXZ4RA.js";import"./chunk-3SHHYK7S.js";import"./chunk-LLKORW26.js";import"./chunk-N6DRGTL5.js";import"./chunk-6SOKP7IN.js";import"./chunk-BYVINSWZ.js";import"./chunk-P56D6ZAA.js";import"./chunk-CNFA5UUM.js";import"./chunk-L5UULTGF.js";import"./chunk-FC5GHM3G.js";import"./chunk-B75LYOXZ.js";import"./chunk-AVJJ62OC.js";import"./chunk-VNV7VKZL.js";import"./chunk-KOJ7WZ63.js";import"./chunk-O6ZQAVRG.js";import"./chunk-3KZHPZVZ.js";import"./chunk-CFTFKWPW.js";import"./chunk-NIEO2TBE.js";import"./chunk-SPYNWVDZ.js";import"./chunk-E4UMXDOZ.js";import"./chunk-ELUOCI74.js";import"./chunk-TL6RUTMP.js";import"./chunk-IS7CHVXD.js";import"./chunk-QN7NYEE3.js";import"./chunk-WSOEJTOC.js";import"./chunk-LMUSSYJH.js";import"./chunk-PKK2D2W4.js";import"./chunk-N3AQAZ7D.js";import"./chunk-E5T4R2PM.js";import"./chunk-DOLUT3XC.js";import"./chunk-PTHIQ7ZN.js";import"./chunk-EIPLDYEY.js";import"./chunk-IDXJIDME.js";import"./chunk-QS2ZMQIS.js";import"./chunk-S7IKHQ6I.js";import"./chunk-IEWZIDC6.js";import"./chunk-3Y6LSWEW.js";import"./chunk-O4EDHV64.js";import"./chunk-MD3ZEOBX.js";import"./chunk-OMDTFGTX.js";import"./chunk-ZLZF2ZDD.js";import"./chunk-PHIPLV2I.js";import"./chunk-ZOTKZI2P.js";import"./chunk-A6G5TAIF.js";import"./chunk-YVBHCSZD.js";import"./chunk-T7CHK6C2.js";import"./chunk-PT7NZBDY.js";import"./chunk-TWP72VRH.js";import"./chunk-ILECDNJX.js";import"./chunk-QXQGUM3Y.js";import"./chunk-SZCBUCNH.js";import"./chunk-5LZ2DPLH.js";import"./chunk-EBMCWXGZ.js";import"./chunk-YIW3H46P.js";import"./chunk-YGLM5XPP.js";import"./chunk-SCD5TUBG.js";import"./chunk-TL3SF2GA.js";import"./chunk-LMJPU2JM.js";import"./chunk-LG4NL2M7.js";import"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-PWOQASXT.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-BMHYEQTI.js";import"./chunk-H4XFFVZ2.js";import"./chunk-X7QN6R6K.js";import"./chunk-M4ECEHLX.js";import"./chunk-DBRQGEEI.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-TM6ZCBR7.js";import"./chunk-I6S7NGX3.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import"./chunk-VKDAXTCZ.js";import"./chunk-KBWJGX7I.js";export{InvalidPolicyConfigError,assertChannelWorkerDaemonUrlIsLocal,createBoundChannelDeliveryHandler,createDisabledChannelWorkerSupervisor,createLazyBridgeProxy,describeWorkerTlsTrustGaps,extractContextFilename,formatChannelWorkerDaemonUrl,maxSessionsFromSettings,resolveRuntimeStartupTimeoutMs,runQwenServe,subSessionConcurrencyCapsFromSettings,validateAndCanonicalizeWorkspaceInput,validatePolicyConfig,verifyWorkerTlsTrust,waitForRuntimeStartingForShutdown};
3
+ import{InvalidPolicyConfigError,assertChannelWorkerDaemonUrlIsLocal,createBoundChannelDeliveryHandler,createDisabledChannelWorkerSupervisor,createLazyBridgeProxy,describeWorkerTlsTrustGaps,extractContextFilename,formatChannelWorkerDaemonUrl,maxSessionsFromSettings,resolveRuntimeStartupTimeoutMs,runQwenServe,subSessionConcurrencyCapsFromSettings,validateAndCanonicalizeWorkspaceInput,validatePolicyConfig,verifyWorkerTlsTrust,waitForRuntimeStartingForShutdown}from"./chunk-NA4ZF2FE.js";import"./chunk-APLMCZ35.js";import"./chunk-UKMS3RLB.js";import"./chunk-JH3V5SPA.js";import"./chunk-M7PWCW6A.js";import"./chunk-XIFNBULA.js";import"./chunk-6S5XOXJ2.js";import"./chunk-R7TNFTT4.js";import"./chunk-YZUKMJW7.js";import"./chunk-SVGTUGV2.js";import"./chunk-LGFF5PJA.js";import"./chunk-UJJSBKTX.js";import"./chunk-QSHWWIZT.js";import"./chunk-M5KJJE2X.js";import"./chunk-ASTRUET5.js";import"./chunk-BWQ5AIEA.js";import"./chunk-WDR5XP3Y.js";import"./chunk-WBDNGVHU.js";import"./chunk-2QYDBHYZ.js";import"./chunk-VTZZXEWA.js";import"./chunk-AJRRKTEY.js";import"./chunk-D5YXZ4RA.js";import"./chunk-3SHHYK7S.js";import"./chunk-LLKORW26.js";import"./chunk-N6DRGTL5.js";import"./chunk-6SOKP7IN.js";import"./chunk-BYVINSWZ.js";import"./chunk-P56D6ZAA.js";import"./chunk-W66WWTOP.js";import"./chunk-L5UULTGF.js";import"./chunk-FC5GHM3G.js";import"./chunk-B75LYOXZ.js";import"./chunk-AVJJ62OC.js";import"./chunk-VNV7VKZL.js";import"./chunk-KOJ7WZ63.js";import"./chunk-O6ZQAVRG.js";import"./chunk-3KZHPZVZ.js";import"./chunk-CFTFKWPW.js";import"./chunk-NIEO2TBE.js";import"./chunk-SPYNWVDZ.js";import"./chunk-E4UMXDOZ.js";import"./chunk-ELUOCI74.js";import"./chunk-TL6RUTMP.js";import"./chunk-IS7CHVXD.js";import"./chunk-QN7NYEE3.js";import"./chunk-WSOEJTOC.js";import"./chunk-LMUSSYJH.js";import"./chunk-PKK2D2W4.js";import"./chunk-N3AQAZ7D.js";import"./chunk-E5T4R2PM.js";import"./chunk-DOLUT3XC.js";import"./chunk-PTHIQ7ZN.js";import"./chunk-EIPLDYEY.js";import"./chunk-IDXJIDME.js";import"./chunk-QS2ZMQIS.js";import"./chunk-S7IKHQ6I.js";import"./chunk-IEWZIDC6.js";import"./chunk-GBSRWT7J.js";import"./chunk-O4EDHV64.js";import"./chunk-MD3ZEOBX.js";import"./chunk-OMDTFGTX.js";import"./chunk-ZLZF2ZDD.js";import"./chunk-PHIPLV2I.js";import"./chunk-ZOTKZI2P.js";import"./chunk-A6G5TAIF.js";import"./chunk-YVBHCSZD.js";import"./chunk-T7CHK6C2.js";import"./chunk-PT7NZBDY.js";import"./chunk-TWP72VRH.js";import"./chunk-ILECDNJX.js";import"./chunk-QXQGUM3Y.js";import"./chunk-SZCBUCNH.js";import"./chunk-5LZ2DPLH.js";import"./chunk-EBMCWXGZ.js";import"./chunk-YIW3H46P.js";import"./chunk-YGLM5XPP.js";import"./chunk-SCD5TUBG.js";import"./chunk-TL3SF2GA.js";import"./chunk-LMJPU2JM.js";import"./chunk-LG4NL2M7.js";import"./chunk-UQFTXKEB.js";import"./chunk-HDGTWJ24.js";import"./chunk-PWOQASXT.js";import"./chunk-Y6HHV4LC.js";import"./chunk-RP57XAJ2.js";import"./chunk-Z6AR5XE5.js";import"./chunk-7U7CWMP7.js";import"./chunk-EFTJIDS3.js";import"./chunk-BMHYEQTI.js";import"./chunk-H4XFFVZ2.js";import"./chunk-X7QN6R6K.js";import"./chunk-M4ECEHLX.js";import"./chunk-DBRQGEEI.js";import"./chunk-5DTFN37U.js";import"./chunk-2YUBAWQ6.js";import"./chunk-TM6ZCBR7.js";import"./chunk-I6S7NGX3.js";import"./chunk-JAUJI56S.js";import"./chunk-I4H7NUVP.js";import"./chunk-EPODBRBP.js";import"./chunk-OKN3Z5C5.js";import"./chunk-XYB7GC5U.js";import"./chunk-MK3OONRA.js";import"./chunk-COGTQ5KZ.js";import"./chunk-VKDAXTCZ.js";import"./chunk-KBWJGX7I.js";export{InvalidPolicyConfigError,assertChannelWorkerDaemonUrlIsLocal,createBoundChannelDeliveryHandler,createDisabledChannelWorkerSupervisor,createLazyBridgeProxy,describeWorkerTlsTrustGaps,extractContextFilename,formatChannelWorkerDaemonUrl,maxSessionsFromSettings,resolveRuntimeStartupTimeoutMs,runQwenServe,subSessionConcurrencyCapsFromSettings,validateAndCanonicalizeWorkspaceInput,validatePolicyConfig,verifyWorkerTlsTrust,waitForRuntimeStartingForShutdown};