privateer-agent 0.15.4 → 0.15.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 (229) hide show
  1. package/README.md +11 -0
  2. package/bin/boot-bundle.d.mts +2 -0
  3. package/bin/boot-bundle.mjs +44 -0
  4. package/bin/fresh-supervisor.d.mts +5 -1
  5. package/bin/fresh-supervisor.mjs +47 -10
  6. package/bin/privateer-launch.mjs +27 -3
  7. package/bin/privateer-subagent.mjs +5 -2
  8. package/bin/privateer-verify.mjs +12 -0
  9. package/bin/session-recovery.d.mts +53 -0
  10. package/bin/session-recovery.mjs +240 -0
  11. package/bin/session-seal-preload.mjs +17 -0
  12. package/bin/session-seal.d.mts +25 -0
  13. package/bin/session-seal.mjs +242 -0
  14. package/dist-boot/boot.mjs +3 -0
  15. package/dist-boot/c-27JKSMWL.mjs +1460 -0
  16. package/dist-boot/c-2BMRFV24.mjs +269 -0
  17. package/dist-boot/c-2CTF6JA3.mjs +166 -0
  18. package/dist-boot/c-2G3BBHRJ.mjs +84 -0
  19. package/dist-boot/c-2IDLKXX6.mjs +250 -0
  20. package/dist-boot/c-2NJD5VYM.mjs +8 -0
  21. package/dist-boot/c-2S5EEQPW.mjs +1602 -0
  22. package/dist-boot/c-2WRDCUVI.mjs +25 -0
  23. package/dist-boot/c-2YN3M256.mjs +14 -0
  24. package/dist-boot/c-37GM3GMU.mjs +187 -0
  25. package/dist-boot/c-3STKRSVO.mjs +2480 -0
  26. package/dist-boot/c-3TPV6TQQ.mjs +2320 -0
  27. package/dist-boot/c-3UVHLQDJ.mjs +225 -0
  28. package/dist-boot/c-42PUUZYC.mjs +697 -0
  29. package/dist-boot/c-4D5UMWVW.mjs +683 -0
  30. package/dist-boot/c-4ETZRMTA.mjs +46 -0
  31. package/dist-boot/c-4QT25BD5.mjs +1482 -0
  32. package/dist-boot/c-4WVR32AP.mjs +2579 -0
  33. package/dist-boot/c-5EMM567G.mjs +152 -0
  34. package/dist-boot/c-5FA4CV63.mjs +145 -0
  35. package/dist-boot/c-5GV3X3RB.mjs +14 -0
  36. package/dist-boot/c-5JCEPRIY.mjs +52 -0
  37. package/dist-boot/c-5NDKIIWT.mjs +16 -0
  38. package/dist-boot/c-5QL3AR26.mjs +4665 -0
  39. package/dist-boot/c-5XY6MFKN.mjs +5142 -0
  40. package/dist-boot/c-65UZIZC7.mjs +2897 -0
  41. package/dist-boot/c-6FUXKHOK.mjs +1969 -0
  42. package/dist-boot/c-6JHWQE4V.mjs +18242 -0
  43. package/dist-boot/c-6LOBR4I6.mjs +5280 -0
  44. package/dist-boot/c-6QHOZXKQ.mjs +14394 -0
  45. package/dist-boot/c-6ZO2SADQ.mjs +178 -0
  46. package/dist-boot/c-6ZORVVZP.mjs +1449 -0
  47. package/dist-boot/c-76QH4UCP.mjs +2441 -0
  48. package/dist-boot/c-77GO5L5Y.mjs +20982 -0
  49. package/dist-boot/c-7M23XFTN.mjs +5052 -0
  50. package/dist-boot/c-7TC367E2.mjs +32 -0
  51. package/dist-boot/c-7UOG7POX.mjs +1524 -0
  52. package/dist-boot/c-7VHP3FLN.mjs +376 -0
  53. package/dist-boot/c-A73JHZP2.mjs +13207 -0
  54. package/dist-boot/c-ABXULAFL.mjs +71 -0
  55. package/dist-boot/c-ANDD2AQO.mjs +74 -0
  56. package/dist-boot/c-AOY77AZL.mjs +1430 -0
  57. package/dist-boot/c-AXEPZ22I.mjs +108 -0
  58. package/dist-boot/c-B2Y7VNHU.mjs +427 -0
  59. package/dist-boot/c-B7VJUH73.mjs +77 -0
  60. package/dist-boot/c-BFW6CDVL.mjs +24 -0
  61. package/dist-boot/c-BHNIF2AR.mjs +188 -0
  62. package/dist-boot/c-BKF2O6BL.mjs +23 -0
  63. package/dist-boot/c-BOZXFTZN.mjs +8 -0
  64. package/dist-boot/c-BRNYJWZL.mjs +28 -0
  65. package/dist-boot/c-C3N4Z2HO.mjs +93 -0
  66. package/dist-boot/c-C4IV7ZFG.mjs +717 -0
  67. package/dist-boot/c-C5NK6UYV.mjs +793 -0
  68. package/dist-boot/c-C67644MB.mjs +1659 -0
  69. package/dist-boot/c-C6S2YB53.mjs +620 -0
  70. package/dist-boot/c-CDBEJSBF.mjs +37 -0
  71. package/dist-boot/c-CG47HBKU.mjs +435 -0
  72. package/dist-boot/c-CKCTWCT5.mjs +51 -0
  73. package/dist-boot/c-CN77DCGF.mjs +60 -0
  74. package/dist-boot/c-CRBXNKFO.mjs +1795 -0
  75. package/dist-boot/c-CRIHASQ6.mjs +973 -0
  76. package/dist-boot/c-CU4NGAUO.mjs +3786 -0
  77. package/dist-boot/c-CWRFLGQU.mjs +1883 -0
  78. package/dist-boot/c-CYQB2USO.mjs +32 -0
  79. package/dist-boot/c-DEE67DJO.mjs +379 -0
  80. package/dist-boot/c-DIFDBYOP.mjs +1258 -0
  81. package/dist-boot/c-DOSGVXDZ.mjs +34879 -0
  82. package/dist-boot/c-DR7XQI32.mjs +381 -0
  83. package/dist-boot/c-DTGPSB46.mjs +14666 -0
  84. package/dist-boot/c-DTHDNA4P.mjs +320 -0
  85. package/dist-boot/c-E4Z3Y5B5.mjs +3864 -0
  86. package/dist-boot/c-E66Z2TI7.mjs +203 -0
  87. package/dist-boot/c-EBU6RLRV.mjs +1527 -0
  88. package/dist-boot/c-EBZZNGSF.mjs +432 -0
  89. package/dist-boot/c-EC3LJ2KF.mjs +1032 -0
  90. package/dist-boot/c-EQBKXWNX.mjs +15829 -0
  91. package/dist-boot/c-EUEPIW4S.mjs +574 -0
  92. package/dist-boot/c-EX4YVWAT.mjs +378 -0
  93. package/dist-boot/c-EYZGSAJU.mjs +98 -0
  94. package/dist-boot/c-F75VRKY4.mjs +172 -0
  95. package/dist-boot/c-FH4NXKHV.mjs +177 -0
  96. package/dist-boot/c-FHNUCTEM.mjs +140 -0
  97. package/dist-boot/c-FJ5T42DS.mjs +5349 -0
  98. package/dist-boot/c-FPCNRL7G.mjs +1728 -0
  99. package/dist-boot/c-G4DLN7Q4.mjs +8 -0
  100. package/dist-boot/c-G56GYQFZ.mjs +2507 -0
  101. package/dist-boot/c-GLIOERDQ.mjs +1200 -0
  102. package/dist-boot/c-GMJ5HUBM.mjs +14 -0
  103. package/dist-boot/c-H3HSGMAQ.mjs +461 -0
  104. package/dist-boot/c-HIKTO6P7.mjs +275 -0
  105. package/dist-boot/c-I2MCJ34O.mjs +464 -0
  106. package/dist-boot/c-I3C6LBW4.mjs +765 -0
  107. package/dist-boot/c-I54OKQHW.mjs +387 -0
  108. package/dist-boot/c-IFSP3R4D.mjs +80 -0
  109. package/dist-boot/c-IZK77VB7.mjs +171 -0
  110. package/dist-boot/c-J3Y25UGE.mjs +54 -0
  111. package/dist-boot/c-J5IESS7W.mjs +27750 -0
  112. package/dist-boot/c-JJWZBY7L.mjs +254 -0
  113. package/dist-boot/c-JKTFXTGF.mjs +463 -0
  114. package/dist-boot/c-JN57AXQ4.mjs +77 -0
  115. package/dist-boot/c-KFIO6LUW.mjs +1096 -0
  116. package/dist-boot/c-KIEMEFWW.mjs +478 -0
  117. package/dist-boot/c-KIVXWBYD.mjs +28 -0
  118. package/dist-boot/c-KP6CRIP4.mjs +580 -0
  119. package/dist-boot/c-L26VOJX4.mjs +11558 -0
  120. package/dist-boot/c-L5GHWG5G.mjs +5988 -0
  121. package/dist-boot/c-M7NSQAKK.mjs +353 -0
  122. package/dist-boot/c-MCEWOPBW.mjs +56 -0
  123. package/dist-boot/c-MGPIEG7I.mjs +20 -0
  124. package/dist-boot/c-NREXJV3M.mjs +393 -0
  125. package/dist-boot/c-O5PP6CTX.mjs +162 -0
  126. package/dist-boot/c-OBQDHSXM.mjs +1774 -0
  127. package/dist-boot/c-OLQHHDD4.mjs +21 -0
  128. package/dist-boot/c-OXW4JQQH.mjs +319 -0
  129. package/dist-boot/c-P3D7ZUWN.mjs +1288 -0
  130. package/dist-boot/c-P4PQZVV5.mjs +948 -0
  131. package/dist-boot/c-P63T3XL2.mjs +26373 -0
  132. package/dist-boot/c-P6N5DQGZ.mjs +194 -0
  133. package/dist-boot/c-P7MLKQFC.mjs +58 -0
  134. package/dist-boot/c-PB3PZJL5.mjs +1276 -0
  135. package/dist-boot/c-PTN4S6G2.mjs +1259 -0
  136. package/dist-boot/c-PYCE5J7U.mjs +1083 -0
  137. package/dist-boot/c-Q4HYCRLB.mjs +19410 -0
  138. package/dist-boot/c-QUXMETGG.mjs +68 -0
  139. package/dist-boot/c-RDMJZCOX.mjs +356 -0
  140. package/dist-boot/c-ROGJK76M.mjs +17 -0
  141. package/dist-boot/c-RQJJ26T4.mjs +708 -0
  142. package/dist-boot/c-RSKCUPJF.mjs +7559 -0
  143. package/dist-boot/c-RVJU4O6P.mjs +37 -0
  144. package/dist-boot/c-S2RVHR3M.mjs +165 -0
  145. package/dist-boot/c-SKMK3PEE.mjs +91120 -0
  146. package/dist-boot/c-TI7SM4EG.mjs +20 -0
  147. package/dist-boot/c-TILJ6GXD.mjs +1235 -0
  148. package/dist-boot/c-TT6BCUJD.mjs +114 -0
  149. package/dist-boot/c-U4ITOXAN.mjs +2107 -0
  150. package/dist-boot/c-UGERXVO2.mjs +7120 -0
  151. package/dist-boot/c-UPBH5AXY.mjs +1363 -0
  152. package/dist-boot/c-US2PUNZL.mjs +597 -0
  153. package/dist-boot/c-UU4WZPPE.mjs +20 -0
  154. package/dist-boot/c-UWVIYPQS.mjs +39 -0
  155. package/dist-boot/c-V4RHQBPQ.mjs +17683 -0
  156. package/dist-boot/c-V5MRVK47.mjs +351 -0
  157. package/dist-boot/c-V6CL266R.mjs +1755 -0
  158. package/dist-boot/c-VJTMFKYE.mjs +14975 -0
  159. package/dist-boot/c-VJTRUKIB.mjs +773 -0
  160. package/dist-boot/c-W4IFSHPW.mjs +43 -0
  161. package/dist-boot/c-WETGB2CF.mjs +113 -0
  162. package/dist-boot/c-WO3QSZUU.mjs +1337 -0
  163. package/dist-boot/c-WQLH73TY.mjs +242 -0
  164. package/dist-boot/c-XL735JW5.mjs +500 -0
  165. package/dist-boot/c-Y7HADL5B.mjs +1107 -0
  166. package/dist-boot/c-YGQHSVSK.mjs +41 -0
  167. package/dist-boot/c-YMP2AMEB.mjs +10350 -0
  168. package/dist-boot/c-YRDO2WEF.mjs +12012 -0
  169. package/dist-boot/c-YUSTRATJ.mjs +8 -0
  170. package/dist-boot/c-Z2262R22.mjs +2697 -0
  171. package/dist-boot/c-Z4ALQMJC.mjs +709 -0
  172. package/dist-boot/c-Z5ZUQVUY.mjs +62 -0
  173. package/dist-boot/c-ZDZUKXF7.mjs +874 -0
  174. package/dist-boot/c-ZJYLGIC3.mjs +32 -0
  175. package/dist-boot/c-ZNA5CDMI.mjs +77 -0
  176. package/dist-boot/c-ZSO6DI3M.mjs +204 -0
  177. package/dist-boot/c-ZWUVHKMK.mjs +100 -0
  178. package/dist-boot/c-ZY4MESEW.mjs +832 -0
  179. package/dist-boot/c-ZZ5REI4L.mjs +329 -0
  180. package/dist-boot/cli.mjs +51 -0
  181. package/dist-boot/ext-anthropic-attribution.mjs +207 -0
  182. package/dist-boot/ext-pi-background-tasks.mjs +7234 -0
  183. package/dist-boot/ext-pi-subagents.mjs +37 -0
  184. package/dist-boot/ext-privateer-account.mjs +4426 -0
  185. package/dist-boot/ext-privateer-brand.mjs +5274 -0
  186. package/dist-boot/ext-privateer-codemode.mjs +37 -0
  187. package/dist-boot/ext-privateer-computer.mjs +626 -0
  188. package/dist-boot/ext-privateer-connect.mjs +1862 -0
  189. package/dist-boot/ext-privateer-context.mjs +323 -0
  190. package/dist-boot/ext-privateer-desktop.mjs +92 -0
  191. package/dist-boot/ext-privateer-final-audit.mjs +48 -0
  192. package/dist-boot/ext-privateer-fresh.mjs +81 -0
  193. package/dist-boot/ext-privateer-gate.mjs +5959 -0
  194. package/dist-boot/ext-privateer-hints.mjs +236 -0
  195. package/dist-boot/ext-privateer-media.mjs +2626 -0
  196. package/dist-boot/ext-privateer-models.mjs +3397 -0
  197. package/dist-boot/ext-privateer-posture.mjs +3006 -0
  198. package/dist-boot/ext-privateer-privacy.mjs +4578 -0
  199. package/dist-boot/ext-privateer-recovery.mjs +287 -0
  200. package/dist-boot/ext-privateer-speak.mjs +4754 -0
  201. package/dist-boot/ext-privateer-terminals.mjs +725 -0
  202. package/dist-boot/ext-privateer-tools.mjs +528 -0
  203. package/dist-boot/ext-privateer-truncation.mjs +74 -0
  204. package/dist-boot/ext-privateer-update.mjs +210 -0
  205. package/dist-boot/ext-privateer-vision.mjs +148 -0
  206. package/dist-boot/ext-privateer-web.mjs +543 -0
  207. package/dist-boot/ext-rpiv-ask-user-question.mjs +710 -0
  208. package/dist-boot/manifest.json +9 -0
  209. package/extensions/privateer-brand.ts +3 -1
  210. package/extensions/privateer-context.ts +4 -2
  211. package/extensions/privateer-final-audit.ts +17 -0
  212. package/extensions/privateer-gate.ts +55 -9
  213. package/extensions/privateer-recovery.ts +175 -0
  214. package/extensions/privateer-web.ts +4 -4
  215. package/package.json +3 -1
  216. package/patches/@earendil-works+pi-coding-agent+1.3.0.patch +199 -2
  217. package/patches/pi-background-tasks+2.6.10.patch +91 -7
  218. package/src/cli/chat.ts +7 -1
  219. package/src/config/moatManifest.json +2 -0
  220. package/src/config/whatsNew.json +4 -4
  221. package/src/context.ts +33 -5
  222. package/src/engine/finalAudit.ts +38 -0
  223. package/src/engine/stallWatchdog.ts +8 -1
  224. package/src/providers/account.ts +34 -3
  225. package/src/remote/attentionPush.ts +40 -0
  226. package/src/remote/liveTaskSession.ts +7 -1
  227. package/src/remote/relayClient.ts +38 -4
  228. package/src/remote/remoteBridge.ts +17 -0
  229. package/src/remote/transcriptSnapshot.ts +104 -0
@@ -0,0 +1,378 @@
1
+ import{createRequire as __pvCR}from"node:module";import{fileURLToPath as __pvF}from"node:url";import{dirname as __pvD}from"node:path";const require=__pvCR(import.meta.url);const __pvUrl=(r)=>new URL(r,import.meta.url).href;const __pvFile=(r)=>__pvF(new URL(r,import.meta.url));
2
+ import {
3
+ FormData,
4
+ file_default,
5
+ init_esm_min,
6
+ init_from
7
+ } from "./c-5XY6MFKN.mjs";
8
+ import {
9
+ __esm,
10
+ __name
11
+ } from "./c-CN77DCGF.mjs";
12
+
13
+ // node_modules/node-fetch/src/utils/multipart-parser.js
14
+ function _fileName(headerValue) {
15
+ const m = headerValue.match(/\bfilename=("(.*?)"|([^()<>@,;:\\"/[\]?={}\s\t]+))($|;\s)/i);
16
+ if (!m) {
17
+ return;
18
+ }
19
+ const match = m[2] || m[3] || "";
20
+ let filename = match.slice(match.lastIndexOf("\\") + 1);
21
+ filename = filename.replace(/%22/g, '"');
22
+ filename = filename.replace(/&#(\d{4});/g, (m2, code) => {
23
+ return String.fromCharCode(code);
24
+ });
25
+ return filename;
26
+ }
27
+ async function toFormData(Body, ct) {
28
+ if (!/multipart/i.test(ct)) {
29
+ throw new TypeError("Failed to fetch");
30
+ }
31
+ const m = ct.match(/boundary=(?:"([^"]+)"|([^;]+))/i);
32
+ if (!m) {
33
+ throw new TypeError("no or bad content-type header, no multipart boundary");
34
+ }
35
+ const parser = new MultipartParser(m[1] || m[2]);
36
+ let headerField;
37
+ let headerValue;
38
+ let entryValue;
39
+ let entryName;
40
+ let contentType;
41
+ let filename;
42
+ const entryChunks = [];
43
+ const formData = new FormData();
44
+ const onPartData = /* @__PURE__ */ __name((ui8a) => {
45
+ entryValue += decoder.decode(ui8a, { stream: true });
46
+ }, "onPartData");
47
+ const appendToFile = /* @__PURE__ */ __name((ui8a) => {
48
+ entryChunks.push(ui8a);
49
+ }, "appendToFile");
50
+ const appendFileToFormData = /* @__PURE__ */ __name(() => {
51
+ const file = new file_default(entryChunks, filename, { type: contentType });
52
+ formData.append(entryName, file);
53
+ }, "appendFileToFormData");
54
+ const appendEntryToFormData = /* @__PURE__ */ __name(() => {
55
+ formData.append(entryName, entryValue);
56
+ }, "appendEntryToFormData");
57
+ const decoder = new TextDecoder("utf-8");
58
+ decoder.decode();
59
+ parser.onPartBegin = function() {
60
+ parser.onPartData = onPartData;
61
+ parser.onPartEnd = appendEntryToFormData;
62
+ headerField = "";
63
+ headerValue = "";
64
+ entryValue = "";
65
+ entryName = "";
66
+ contentType = "";
67
+ filename = null;
68
+ entryChunks.length = 0;
69
+ };
70
+ parser.onHeaderField = function(ui8a) {
71
+ headerField += decoder.decode(ui8a, { stream: true });
72
+ };
73
+ parser.onHeaderValue = function(ui8a) {
74
+ headerValue += decoder.decode(ui8a, { stream: true });
75
+ };
76
+ parser.onHeaderEnd = function() {
77
+ headerValue += decoder.decode();
78
+ headerField = headerField.toLowerCase();
79
+ if (headerField === "content-disposition") {
80
+ const m2 = headerValue.match(/\bname=("([^"]*)"|([^()<>@,;:\\"/[\]?={}\s\t]+))/i);
81
+ if (m2) {
82
+ entryName = m2[2] || m2[3] || "";
83
+ }
84
+ filename = _fileName(headerValue);
85
+ if (filename) {
86
+ parser.onPartData = appendToFile;
87
+ parser.onPartEnd = appendFileToFormData;
88
+ }
89
+ } else if (headerField === "content-type") {
90
+ contentType = headerValue;
91
+ }
92
+ headerValue = "";
93
+ headerField = "";
94
+ };
95
+ for await (const chunk of Body) {
96
+ parser.write(chunk);
97
+ }
98
+ parser.end();
99
+ return formData;
100
+ }
101
+ var s, S, f, F, LF, CR, SPACE, HYPHEN, COLON, A, Z, lower, noop, MultipartParser;
102
+ var init_multipart_parser = __esm({
103
+ "node_modules/node-fetch/src/utils/multipart-parser.js"() {
104
+ init_from();
105
+ init_esm_min();
106
+ s = 0;
107
+ S = {
108
+ START_BOUNDARY: s++,
109
+ HEADER_FIELD_START: s++,
110
+ HEADER_FIELD: s++,
111
+ HEADER_VALUE_START: s++,
112
+ HEADER_VALUE: s++,
113
+ HEADER_VALUE_ALMOST_DONE: s++,
114
+ HEADERS_ALMOST_DONE: s++,
115
+ PART_DATA_START: s++,
116
+ PART_DATA: s++,
117
+ END: s++
118
+ };
119
+ f = 1;
120
+ F = {
121
+ PART_BOUNDARY: f,
122
+ LAST_BOUNDARY: f *= 2
123
+ };
124
+ LF = 10;
125
+ CR = 13;
126
+ SPACE = 32;
127
+ HYPHEN = 45;
128
+ COLON = 58;
129
+ A = 97;
130
+ Z = 122;
131
+ lower = /* @__PURE__ */ __name((c) => c | 32, "lower");
132
+ noop = /* @__PURE__ */ __name(() => {
133
+ }, "noop");
134
+ MultipartParser = class {
135
+ static {
136
+ __name(this, "MultipartParser");
137
+ }
138
+ /**
139
+ * @param {string} boundary
140
+ */
141
+ constructor(boundary) {
142
+ this.index = 0;
143
+ this.flags = 0;
144
+ this.onHeaderEnd = noop;
145
+ this.onHeaderField = noop;
146
+ this.onHeadersEnd = noop;
147
+ this.onHeaderValue = noop;
148
+ this.onPartBegin = noop;
149
+ this.onPartData = noop;
150
+ this.onPartEnd = noop;
151
+ this.boundaryChars = {};
152
+ boundary = "\r\n--" + boundary;
153
+ const ui8a = new Uint8Array(boundary.length);
154
+ for (let i = 0; i < boundary.length; i++) {
155
+ ui8a[i] = boundary.charCodeAt(i);
156
+ this.boundaryChars[ui8a[i]] = true;
157
+ }
158
+ this.boundary = ui8a;
159
+ this.lookbehind = new Uint8Array(this.boundary.length + 8);
160
+ this.state = S.START_BOUNDARY;
161
+ }
162
+ /**
163
+ * @param {Uint8Array} data
164
+ */
165
+ write(data) {
166
+ let i = 0;
167
+ const length_ = data.length;
168
+ let previousIndex = this.index;
169
+ let { lookbehind, boundary, boundaryChars, index, state, flags } = this;
170
+ const boundaryLength = this.boundary.length;
171
+ const boundaryEnd = boundaryLength - 1;
172
+ const bufferLength = data.length;
173
+ let c;
174
+ let cl;
175
+ const mark = /* @__PURE__ */ __name((name) => {
176
+ this[name + "Mark"] = i;
177
+ }, "mark");
178
+ const clear = /* @__PURE__ */ __name((name) => {
179
+ delete this[name + "Mark"];
180
+ }, "clear");
181
+ const callback = /* @__PURE__ */ __name((callbackSymbol, start, end, ui8a) => {
182
+ if (start === void 0 || start !== end) {
183
+ this[callbackSymbol](ui8a && ui8a.subarray(start, end));
184
+ }
185
+ }, "callback");
186
+ const dataCallback = /* @__PURE__ */ __name((name, clear2) => {
187
+ const markSymbol = name + "Mark";
188
+ if (!(markSymbol in this)) {
189
+ return;
190
+ }
191
+ if (clear2) {
192
+ callback(name, this[markSymbol], i, data);
193
+ delete this[markSymbol];
194
+ } else {
195
+ callback(name, this[markSymbol], data.length, data);
196
+ this[markSymbol] = 0;
197
+ }
198
+ }, "dataCallback");
199
+ for (i = 0; i < length_; i++) {
200
+ c = data[i];
201
+ switch (state) {
202
+ case S.START_BOUNDARY:
203
+ if (index === boundary.length - 2) {
204
+ if (c === HYPHEN) {
205
+ flags |= F.LAST_BOUNDARY;
206
+ } else if (c !== CR) {
207
+ return;
208
+ }
209
+ index++;
210
+ break;
211
+ } else if (index - 1 === boundary.length - 2) {
212
+ if (flags & F.LAST_BOUNDARY && c === HYPHEN) {
213
+ state = S.END;
214
+ flags = 0;
215
+ } else if (!(flags & F.LAST_BOUNDARY) && c === LF) {
216
+ index = 0;
217
+ callback("onPartBegin");
218
+ state = S.HEADER_FIELD_START;
219
+ } else {
220
+ return;
221
+ }
222
+ break;
223
+ }
224
+ if (c !== boundary[index + 2]) {
225
+ index = -2;
226
+ }
227
+ if (c === boundary[index + 2]) {
228
+ index++;
229
+ }
230
+ break;
231
+ case S.HEADER_FIELD_START:
232
+ state = S.HEADER_FIELD;
233
+ mark("onHeaderField");
234
+ index = 0;
235
+ // falls through
236
+ case S.HEADER_FIELD:
237
+ if (c === CR) {
238
+ clear("onHeaderField");
239
+ state = S.HEADERS_ALMOST_DONE;
240
+ break;
241
+ }
242
+ index++;
243
+ if (c === HYPHEN) {
244
+ break;
245
+ }
246
+ if (c === COLON) {
247
+ if (index === 1) {
248
+ return;
249
+ }
250
+ dataCallback("onHeaderField", true);
251
+ state = S.HEADER_VALUE_START;
252
+ break;
253
+ }
254
+ cl = lower(c);
255
+ if (cl < A || cl > Z) {
256
+ return;
257
+ }
258
+ break;
259
+ case S.HEADER_VALUE_START:
260
+ if (c === SPACE) {
261
+ break;
262
+ }
263
+ mark("onHeaderValue");
264
+ state = S.HEADER_VALUE;
265
+ // falls through
266
+ case S.HEADER_VALUE:
267
+ if (c === CR) {
268
+ dataCallback("onHeaderValue", true);
269
+ callback("onHeaderEnd");
270
+ state = S.HEADER_VALUE_ALMOST_DONE;
271
+ }
272
+ break;
273
+ case S.HEADER_VALUE_ALMOST_DONE:
274
+ if (c !== LF) {
275
+ return;
276
+ }
277
+ state = S.HEADER_FIELD_START;
278
+ break;
279
+ case S.HEADERS_ALMOST_DONE:
280
+ if (c !== LF) {
281
+ return;
282
+ }
283
+ callback("onHeadersEnd");
284
+ state = S.PART_DATA_START;
285
+ break;
286
+ case S.PART_DATA_START:
287
+ state = S.PART_DATA;
288
+ mark("onPartData");
289
+ // falls through
290
+ case S.PART_DATA:
291
+ previousIndex = index;
292
+ if (index === 0) {
293
+ i += boundaryEnd;
294
+ while (i < bufferLength && !(data[i] in boundaryChars)) {
295
+ i += boundaryLength;
296
+ }
297
+ i -= boundaryEnd;
298
+ c = data[i];
299
+ }
300
+ if (index < boundary.length) {
301
+ if (boundary[index] === c) {
302
+ if (index === 0) {
303
+ dataCallback("onPartData", true);
304
+ }
305
+ index++;
306
+ } else {
307
+ index = 0;
308
+ }
309
+ } else if (index === boundary.length) {
310
+ index++;
311
+ if (c === CR) {
312
+ flags |= F.PART_BOUNDARY;
313
+ } else if (c === HYPHEN) {
314
+ flags |= F.LAST_BOUNDARY;
315
+ } else {
316
+ index = 0;
317
+ }
318
+ } else if (index - 1 === boundary.length) {
319
+ if (flags & F.PART_BOUNDARY) {
320
+ index = 0;
321
+ if (c === LF) {
322
+ flags &= ~F.PART_BOUNDARY;
323
+ callback("onPartEnd");
324
+ callback("onPartBegin");
325
+ state = S.HEADER_FIELD_START;
326
+ break;
327
+ }
328
+ } else if (flags & F.LAST_BOUNDARY) {
329
+ if (c === HYPHEN) {
330
+ callback("onPartEnd");
331
+ state = S.END;
332
+ flags = 0;
333
+ } else {
334
+ index = 0;
335
+ }
336
+ } else {
337
+ index = 0;
338
+ }
339
+ }
340
+ if (index > 0) {
341
+ lookbehind[index - 1] = c;
342
+ } else if (previousIndex > 0) {
343
+ const _lookbehind = new Uint8Array(lookbehind.buffer, lookbehind.byteOffset, lookbehind.byteLength);
344
+ callback("onPartData", 0, previousIndex, _lookbehind);
345
+ previousIndex = 0;
346
+ mark("onPartData");
347
+ i--;
348
+ }
349
+ break;
350
+ case S.END:
351
+ break;
352
+ default:
353
+ throw new Error(`Unexpected state entered: ${state}`);
354
+ }
355
+ }
356
+ dataCallback("onHeaderField");
357
+ dataCallback("onHeaderValue");
358
+ dataCallback("onPartData");
359
+ this.index = index;
360
+ this.state = state;
361
+ this.flags = flags;
362
+ }
363
+ end() {
364
+ if (this.state === S.HEADER_FIELD_START && this.index === 0 || this.state === S.PART_DATA && this.index === this.boundary.length) {
365
+ this.onPartEnd();
366
+ } else if (this.state !== S.END) {
367
+ throw new Error("MultipartParser.end(): stream ended unexpectedly");
368
+ }
369
+ }
370
+ };
371
+ __name(_fileName, "_fileName");
372
+ __name(toFormData, "toFormData");
373
+ }
374
+ });
375
+ init_multipart_parser();
376
+ export {
377
+ toFormData
378
+ };
@@ -0,0 +1,98 @@
1
+ import{createRequire as __pvCR}from"node:module";import{fileURLToPath as __pvF}from"node:url";import{dirname as __pvD}from"node:path";const require=__pvCR(import.meta.url);const __pvUrl=(r)=>new URL(r,import.meta.url).href;const __pvFile=(r)=>__pvF(new URL(r,import.meta.url));
2
+ import {
3
+ __name
4
+ } from "./c-CN77DCGF.mjs";
5
+
6
+ // node_modules/@earendil-works/pi-ai/dist/utils/provider-retry.js
7
+ var DEFAULT_MAX_RETRY_DELAY_MS = 6e4;
8
+ function isProviderError(error) {
9
+ if (!(error instanceof Error) || !("status" in error) || !("headers" in error))
10
+ return false;
11
+ return (error.status === void 0 || typeof error.status === "number") && (error.headers === void 0 || error.headers instanceof Headers);
12
+ }
13
+ __name(isProviderError, "isProviderError");
14
+ function isRetryableProviderError(error) {
15
+ const shouldRetry = error.headers?.get("x-should-retry");
16
+ if (shouldRetry === "true")
17
+ return true;
18
+ if (shouldRetry === "false")
19
+ return false;
20
+ if (error.status === void 0)
21
+ return true;
22
+ return error.status === 408 || error.status === 409 || error.status === 429 || typeof error.status === "number" && error.status >= 500;
23
+ }
24
+ __name(isRetryableProviderError, "isRetryableProviderError");
25
+ function validateServerRetryDelayMs(delayMs, maxRetryDelayMs, providerErrorMessage) {
26
+ const maxDelayMs = maxRetryDelayMs ?? DEFAULT_MAX_RETRY_DELAY_MS;
27
+ if (maxDelayMs > 0 && delayMs > maxDelayMs) {
28
+ throw new Error(`Server requested ${Math.ceil(delayMs / 1e3)}s retry delay (max: ${Math.ceil(maxDelayMs / 1e3)}s). ${providerErrorMessage}`);
29
+ }
30
+ return delayMs;
31
+ }
32
+ __name(validateServerRetryDelayMs, "validateServerRetryDelayMs");
33
+ function getRetryDelayMs(error, retryIndex, maxRetryDelayMs) {
34
+ const retryAfterMs = error.headers?.get("retry-after-ms");
35
+ if (retryAfterMs) {
36
+ const value = Number.parseFloat(retryAfterMs);
37
+ if (Number.isFinite(value))
38
+ return validateServerRetryDelayMs(value, maxRetryDelayMs, error.message);
39
+ }
40
+ const retryAfter = error.headers?.get("retry-after");
41
+ if (retryAfter) {
42
+ const seconds = Number.parseFloat(retryAfter);
43
+ const delayMs = Number.isNaN(seconds) ? Date.parse(retryAfter) - Date.now() : seconds * 1e3;
44
+ if (Number.isFinite(delayMs))
45
+ return validateServerRetryDelayMs(delayMs, maxRetryDelayMs, error.message);
46
+ }
47
+ const exponentialDelay = Math.min(0.5 * 2 ** retryIndex, 8) * 1e3;
48
+ return exponentialDelay * (1 - Math.random() * 0.25);
49
+ }
50
+ __name(getRetryDelayMs, "getRetryDelayMs");
51
+ function createAbortError() {
52
+ const error = new Error("Request aborted");
53
+ error.name = "AbortError";
54
+ return error;
55
+ }
56
+ __name(createAbortError, "createAbortError");
57
+ function abortableSleep(ms, signal) {
58
+ return new Promise((resolve, reject) => {
59
+ if (signal?.aborted) {
60
+ reject(createAbortError());
61
+ return;
62
+ }
63
+ const onAbort = /* @__PURE__ */ __name(() => {
64
+ clearTimeout(timeout);
65
+ reject(createAbortError());
66
+ }, "onAbort");
67
+ const timeout = setTimeout(() => {
68
+ signal?.removeEventListener("abort", onAbort);
69
+ resolve();
70
+ }, Math.max(0, ms));
71
+ signal?.addEventListener("abort", onAbort, { once: true });
72
+ });
73
+ }
74
+ __name(abortableSleep, "abortableSleep");
75
+ async function retryProviderRequest(request, options = {}) {
76
+ const maxRetries = options.maxRetries ?? 0;
77
+ let retriesRemaining = maxRetries;
78
+ for (; ; ) {
79
+ try {
80
+ return await request();
81
+ } catch (error) {
82
+ if (options.signal?.aborted)
83
+ throw createAbortError();
84
+ if (retriesRemaining <= 0 || !isProviderError(error) || !isRetryableProviderError(error))
85
+ throw error;
86
+ if (error.status !== void 0 && options.noRetryStatuses?.includes(error.status))
87
+ throw error;
88
+ const retryIndex = maxRetries - retriesRemaining;
89
+ retriesRemaining--;
90
+ await abortableSleep(getRetryDelayMs(error, retryIndex, options.maxRetryDelayMs), options.signal);
91
+ }
92
+ }
93
+ }
94
+ __name(retryProviderRequest, "retryProviderRequest");
95
+
96
+ export {
97
+ retryProviderRequest
98
+ };
@@ -0,0 +1,172 @@
1
+ import{createRequire as __pvCR}from"node:module";import{fileURLToPath as __pvF}from"node:url";import{dirname as __pvD}from"node:path";const require=__pvCR(import.meta.url);const __pvUrl=(r)=>new URL(r,import.meta.url).href;const __pvFile=(r)=>__pvF(new URL(r,import.meta.url));
2
+ import {
3
+ AllOf,
4
+ AnyOf,
5
+ CertificateChainVerifier,
6
+ CertificateError,
7
+ EXTENSION_OID_BUILD_CONFIG_DIGEST,
8
+ EXTENSION_OID_BUILD_CONFIG_URI,
9
+ EXTENSION_OID_BUILD_SIGNER_DIGEST,
10
+ EXTENSION_OID_BUILD_SIGNER_URI,
11
+ EXTENSION_OID_BUILD_TRIGGER,
12
+ EXTENSION_OID_FULCIO_ISSUER_V1,
13
+ EXTENSION_OID_FULCIO_ISSUER_V2,
14
+ EXTENSION_OID_GITHUB_WORKFLOW_NAME,
15
+ EXTENSION_OID_GITHUB_WORKFLOW_REF,
16
+ EXTENSION_OID_GITHUB_WORKFLOW_REPOSITORY,
17
+ EXTENSION_OID_GITHUB_WORKFLOW_SHA,
18
+ EXTENSION_OID_GITHUB_WORKFLOW_TRIGGER,
19
+ EXTENSION_OID_OTHERNAME,
20
+ EXTENSION_OID_RUNNER_ENVIRONMENT,
21
+ EXTENSION_OID_RUN_INVOCATION_URI,
22
+ EXTENSION_OID_SCT,
23
+ EXTENSION_OID_SOURCE_REPOSITORY_DIGEST,
24
+ EXTENSION_OID_SOURCE_REPOSITORY_IDENTIFIER,
25
+ EXTENSION_OID_SOURCE_REPOSITORY_OWNER_IDENTIFIER,
26
+ EXTENSION_OID_SOURCE_REPOSITORY_OWNER_URI,
27
+ EXTENSION_OID_SOURCE_REPOSITORY_REF,
28
+ EXTENSION_OID_SOURCE_REPOSITORY_URI,
29
+ EXTENSION_OID_SOURCE_REPOSITORY_VISIBILITY,
30
+ GITHUB_OIDC_ISSUER,
31
+ GitHubWorkflowName,
32
+ GitHubWorkflowRef,
33
+ GitHubWorkflowRepository,
34
+ GitHubWorkflowSHA,
35
+ GitHubWorkflowTrigger,
36
+ Identity,
37
+ OIDCBuildConfigDigest,
38
+ OIDCBuildConfigURI,
39
+ OIDCBuildSignerDigest,
40
+ OIDCBuildSignerURI,
41
+ OIDCBuildTrigger,
42
+ OIDCIssuer,
43
+ OIDCIssuerV2,
44
+ OIDCRunInvocationURI,
45
+ OIDCRunnerEnvironment,
46
+ OIDCSourceRepositoryDigest,
47
+ OIDCSourceRepositoryIdentifier,
48
+ OIDCSourceRepositoryOwnerIdentifier,
49
+ OIDCSourceRepositoryOwnerURI,
50
+ OIDCSourceRepositoryRef,
51
+ OIDCSourceRepositoryURI,
52
+ OIDCSourceRepositoryVisibility,
53
+ PolicyError,
54
+ SignatureError,
55
+ SigstoreVerifier,
56
+ TLogError,
57
+ TimestampError,
58
+ TrustedRootProvider,
59
+ VerificationError,
60
+ X509BuildConfigDigestExtension,
61
+ X509BuildConfigURIExtension,
62
+ X509BuildSignerDigestExtension,
63
+ X509BuildSignerURIExtension,
64
+ X509BuildTriggerExtension,
65
+ X509Certificate,
66
+ X509Extension,
67
+ X509FulcioIssuerV1,
68
+ X509FulcioIssuerV2,
69
+ X509GitHubWorkflowNameExtension,
70
+ X509GitHubWorkflowRefExtension,
71
+ X509GitHubWorkflowRepositoryExtension,
72
+ X509GitHubWorkflowSHAExtension,
73
+ X509GitHubWorkflowTriggerExtension,
74
+ X509RunInvocationURIExtension,
75
+ X509RunnerEnvironmentExtension,
76
+ X509SourceRepositoryDigestExtension,
77
+ X509SourceRepositoryIdentifierExtension,
78
+ X509SourceRepositoryOwnerIdentifierExtension,
79
+ X509SourceRepositoryOwnerURIExtension,
80
+ X509SourceRepositoryRefExtension,
81
+ X509SourceRepositoryURIExtension,
82
+ X509SourceRepositoryVisibilityExtension,
83
+ verifyBundleTimestamp,
84
+ verifyRFC3161Timestamp
85
+ } from "./c-65UZIZC7.mjs";
86
+ import "./c-U4ITOXAN.mjs";
87
+ import "./c-4WVR32AP.mjs";
88
+ import "./c-CN77DCGF.mjs";
89
+ export {
90
+ AllOf,
91
+ AnyOf,
92
+ CertificateChainVerifier,
93
+ CertificateError,
94
+ EXTENSION_OID_BUILD_CONFIG_DIGEST,
95
+ EXTENSION_OID_BUILD_CONFIG_URI,
96
+ EXTENSION_OID_BUILD_SIGNER_DIGEST,
97
+ EXTENSION_OID_BUILD_SIGNER_URI,
98
+ EXTENSION_OID_BUILD_TRIGGER,
99
+ EXTENSION_OID_FULCIO_ISSUER_V1,
100
+ EXTENSION_OID_FULCIO_ISSUER_V2,
101
+ EXTENSION_OID_GITHUB_WORKFLOW_NAME,
102
+ EXTENSION_OID_GITHUB_WORKFLOW_REF,
103
+ EXTENSION_OID_GITHUB_WORKFLOW_REPOSITORY,
104
+ EXTENSION_OID_GITHUB_WORKFLOW_SHA,
105
+ EXTENSION_OID_GITHUB_WORKFLOW_TRIGGER,
106
+ EXTENSION_OID_OTHERNAME,
107
+ EXTENSION_OID_RUNNER_ENVIRONMENT,
108
+ EXTENSION_OID_RUN_INVOCATION_URI,
109
+ EXTENSION_OID_SCT,
110
+ EXTENSION_OID_SOURCE_REPOSITORY_DIGEST,
111
+ EXTENSION_OID_SOURCE_REPOSITORY_IDENTIFIER,
112
+ EXTENSION_OID_SOURCE_REPOSITORY_OWNER_IDENTIFIER,
113
+ EXTENSION_OID_SOURCE_REPOSITORY_OWNER_URI,
114
+ EXTENSION_OID_SOURCE_REPOSITORY_REF,
115
+ EXTENSION_OID_SOURCE_REPOSITORY_URI,
116
+ EXTENSION_OID_SOURCE_REPOSITORY_VISIBILITY,
117
+ GITHUB_OIDC_ISSUER,
118
+ GitHubWorkflowName,
119
+ GitHubWorkflowRef,
120
+ GitHubWorkflowRepository,
121
+ GitHubWorkflowSHA,
122
+ GitHubWorkflowTrigger,
123
+ Identity,
124
+ OIDCBuildConfigDigest,
125
+ OIDCBuildConfigURI,
126
+ OIDCBuildSignerDigest,
127
+ OIDCBuildSignerURI,
128
+ OIDCBuildTrigger,
129
+ OIDCIssuer,
130
+ OIDCIssuerV2,
131
+ OIDCRunInvocationURI,
132
+ OIDCRunnerEnvironment,
133
+ OIDCSourceRepositoryDigest,
134
+ OIDCSourceRepositoryIdentifier,
135
+ OIDCSourceRepositoryOwnerIdentifier,
136
+ OIDCSourceRepositoryOwnerURI,
137
+ OIDCSourceRepositoryRef,
138
+ OIDCSourceRepositoryURI,
139
+ OIDCSourceRepositoryVisibility,
140
+ PolicyError,
141
+ SignatureError,
142
+ SigstoreVerifier,
143
+ TLogError,
144
+ TimestampError,
145
+ TrustedRootProvider,
146
+ VerificationError,
147
+ X509BuildConfigDigestExtension,
148
+ X509BuildConfigURIExtension,
149
+ X509BuildSignerDigestExtension,
150
+ X509BuildSignerURIExtension,
151
+ X509BuildTriggerExtension,
152
+ X509Certificate,
153
+ X509Extension,
154
+ X509FulcioIssuerV1,
155
+ X509FulcioIssuerV2,
156
+ X509GitHubWorkflowNameExtension,
157
+ X509GitHubWorkflowRefExtension,
158
+ X509GitHubWorkflowRepositoryExtension,
159
+ X509GitHubWorkflowSHAExtension,
160
+ X509GitHubWorkflowTriggerExtension,
161
+ X509RunInvocationURIExtension,
162
+ X509RunnerEnvironmentExtension,
163
+ X509SourceRepositoryDigestExtension,
164
+ X509SourceRepositoryIdentifierExtension,
165
+ X509SourceRepositoryOwnerIdentifierExtension,
166
+ X509SourceRepositoryOwnerURIExtension,
167
+ X509SourceRepositoryRefExtension,
168
+ X509SourceRepositoryURIExtension,
169
+ X509SourceRepositoryVisibilityExtension,
170
+ verifyBundleTimestamp,
171
+ verifyRFC3161Timestamp
172
+ };