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.
- package/README.md +11 -0
- package/bin/boot-bundle.d.mts +2 -0
- package/bin/boot-bundle.mjs +44 -0
- package/bin/fresh-supervisor.d.mts +5 -1
- package/bin/fresh-supervisor.mjs +47 -10
- package/bin/privateer-launch.mjs +27 -3
- package/bin/privateer-subagent.mjs +5 -2
- package/bin/privateer-verify.mjs +12 -0
- package/bin/session-recovery.d.mts +53 -0
- package/bin/session-recovery.mjs +240 -0
- package/bin/session-seal-preload.mjs +17 -0
- package/bin/session-seal.d.mts +25 -0
- package/bin/session-seal.mjs +242 -0
- package/dist-boot/boot.mjs +3 -0
- package/dist-boot/c-27JKSMWL.mjs +1460 -0
- package/dist-boot/c-2BMRFV24.mjs +269 -0
- package/dist-boot/c-2CTF6JA3.mjs +166 -0
- package/dist-boot/c-2G3BBHRJ.mjs +84 -0
- package/dist-boot/c-2IDLKXX6.mjs +250 -0
- package/dist-boot/c-2NJD5VYM.mjs +8 -0
- package/dist-boot/c-2S5EEQPW.mjs +1602 -0
- package/dist-boot/c-2WRDCUVI.mjs +25 -0
- package/dist-boot/c-2YN3M256.mjs +14 -0
- package/dist-boot/c-37GM3GMU.mjs +187 -0
- package/dist-boot/c-3STKRSVO.mjs +2480 -0
- package/dist-boot/c-3TPV6TQQ.mjs +2320 -0
- package/dist-boot/c-3UVHLQDJ.mjs +225 -0
- package/dist-boot/c-42PUUZYC.mjs +697 -0
- package/dist-boot/c-4D5UMWVW.mjs +683 -0
- package/dist-boot/c-4ETZRMTA.mjs +46 -0
- package/dist-boot/c-4QT25BD5.mjs +1482 -0
- package/dist-boot/c-4WVR32AP.mjs +2579 -0
- package/dist-boot/c-5EMM567G.mjs +152 -0
- package/dist-boot/c-5FA4CV63.mjs +145 -0
- package/dist-boot/c-5GV3X3RB.mjs +14 -0
- package/dist-boot/c-5JCEPRIY.mjs +52 -0
- package/dist-boot/c-5NDKIIWT.mjs +16 -0
- package/dist-boot/c-5QL3AR26.mjs +4665 -0
- package/dist-boot/c-5XY6MFKN.mjs +5142 -0
- package/dist-boot/c-65UZIZC7.mjs +2897 -0
- package/dist-boot/c-6FUXKHOK.mjs +1969 -0
- package/dist-boot/c-6JHWQE4V.mjs +18242 -0
- package/dist-boot/c-6LOBR4I6.mjs +5280 -0
- package/dist-boot/c-6QHOZXKQ.mjs +14394 -0
- package/dist-boot/c-6ZO2SADQ.mjs +178 -0
- package/dist-boot/c-6ZORVVZP.mjs +1449 -0
- package/dist-boot/c-76QH4UCP.mjs +2441 -0
- package/dist-boot/c-77GO5L5Y.mjs +20982 -0
- package/dist-boot/c-7M23XFTN.mjs +5052 -0
- package/dist-boot/c-7TC367E2.mjs +32 -0
- package/dist-boot/c-7UOG7POX.mjs +1524 -0
- package/dist-boot/c-7VHP3FLN.mjs +376 -0
- package/dist-boot/c-A73JHZP2.mjs +13207 -0
- package/dist-boot/c-ABXULAFL.mjs +71 -0
- package/dist-boot/c-ANDD2AQO.mjs +74 -0
- package/dist-boot/c-AOY77AZL.mjs +1430 -0
- package/dist-boot/c-AXEPZ22I.mjs +108 -0
- package/dist-boot/c-B2Y7VNHU.mjs +427 -0
- package/dist-boot/c-B7VJUH73.mjs +77 -0
- package/dist-boot/c-BFW6CDVL.mjs +24 -0
- package/dist-boot/c-BHNIF2AR.mjs +188 -0
- package/dist-boot/c-BKF2O6BL.mjs +23 -0
- package/dist-boot/c-BOZXFTZN.mjs +8 -0
- package/dist-boot/c-BRNYJWZL.mjs +28 -0
- package/dist-boot/c-C3N4Z2HO.mjs +93 -0
- package/dist-boot/c-C4IV7ZFG.mjs +717 -0
- package/dist-boot/c-C5NK6UYV.mjs +793 -0
- package/dist-boot/c-C67644MB.mjs +1659 -0
- package/dist-boot/c-C6S2YB53.mjs +620 -0
- package/dist-boot/c-CDBEJSBF.mjs +37 -0
- package/dist-boot/c-CG47HBKU.mjs +435 -0
- package/dist-boot/c-CKCTWCT5.mjs +51 -0
- package/dist-boot/c-CN77DCGF.mjs +60 -0
- package/dist-boot/c-CRBXNKFO.mjs +1795 -0
- package/dist-boot/c-CRIHASQ6.mjs +973 -0
- package/dist-boot/c-CU4NGAUO.mjs +3786 -0
- package/dist-boot/c-CWRFLGQU.mjs +1883 -0
- package/dist-boot/c-CYQB2USO.mjs +32 -0
- package/dist-boot/c-DEE67DJO.mjs +379 -0
- package/dist-boot/c-DIFDBYOP.mjs +1258 -0
- package/dist-boot/c-DOSGVXDZ.mjs +34879 -0
- package/dist-boot/c-DR7XQI32.mjs +381 -0
- package/dist-boot/c-DTGPSB46.mjs +14666 -0
- package/dist-boot/c-DTHDNA4P.mjs +320 -0
- package/dist-boot/c-E4Z3Y5B5.mjs +3864 -0
- package/dist-boot/c-E66Z2TI7.mjs +203 -0
- package/dist-boot/c-EBU6RLRV.mjs +1527 -0
- package/dist-boot/c-EBZZNGSF.mjs +432 -0
- package/dist-boot/c-EC3LJ2KF.mjs +1032 -0
- package/dist-boot/c-EQBKXWNX.mjs +15829 -0
- package/dist-boot/c-EUEPIW4S.mjs +574 -0
- package/dist-boot/c-EX4YVWAT.mjs +378 -0
- package/dist-boot/c-EYZGSAJU.mjs +98 -0
- package/dist-boot/c-F75VRKY4.mjs +172 -0
- package/dist-boot/c-FH4NXKHV.mjs +177 -0
- package/dist-boot/c-FHNUCTEM.mjs +140 -0
- package/dist-boot/c-FJ5T42DS.mjs +5349 -0
- package/dist-boot/c-FPCNRL7G.mjs +1728 -0
- package/dist-boot/c-G4DLN7Q4.mjs +8 -0
- package/dist-boot/c-G56GYQFZ.mjs +2507 -0
- package/dist-boot/c-GLIOERDQ.mjs +1200 -0
- package/dist-boot/c-GMJ5HUBM.mjs +14 -0
- package/dist-boot/c-H3HSGMAQ.mjs +461 -0
- package/dist-boot/c-HIKTO6P7.mjs +275 -0
- package/dist-boot/c-I2MCJ34O.mjs +464 -0
- package/dist-boot/c-I3C6LBW4.mjs +765 -0
- package/dist-boot/c-I54OKQHW.mjs +387 -0
- package/dist-boot/c-IFSP3R4D.mjs +80 -0
- package/dist-boot/c-IZK77VB7.mjs +171 -0
- package/dist-boot/c-J3Y25UGE.mjs +54 -0
- package/dist-boot/c-J5IESS7W.mjs +27750 -0
- package/dist-boot/c-JJWZBY7L.mjs +254 -0
- package/dist-boot/c-JKTFXTGF.mjs +463 -0
- package/dist-boot/c-JN57AXQ4.mjs +77 -0
- package/dist-boot/c-KFIO6LUW.mjs +1096 -0
- package/dist-boot/c-KIEMEFWW.mjs +478 -0
- package/dist-boot/c-KIVXWBYD.mjs +28 -0
- package/dist-boot/c-KP6CRIP4.mjs +580 -0
- package/dist-boot/c-L26VOJX4.mjs +11558 -0
- package/dist-boot/c-L5GHWG5G.mjs +5988 -0
- package/dist-boot/c-M7NSQAKK.mjs +353 -0
- package/dist-boot/c-MCEWOPBW.mjs +56 -0
- package/dist-boot/c-MGPIEG7I.mjs +20 -0
- package/dist-boot/c-NREXJV3M.mjs +393 -0
- package/dist-boot/c-O5PP6CTX.mjs +162 -0
- package/dist-boot/c-OBQDHSXM.mjs +1774 -0
- package/dist-boot/c-OLQHHDD4.mjs +21 -0
- package/dist-boot/c-OXW4JQQH.mjs +319 -0
- package/dist-boot/c-P3D7ZUWN.mjs +1288 -0
- package/dist-boot/c-P4PQZVV5.mjs +948 -0
- package/dist-boot/c-P63T3XL2.mjs +26373 -0
- package/dist-boot/c-P6N5DQGZ.mjs +194 -0
- package/dist-boot/c-P7MLKQFC.mjs +58 -0
- package/dist-boot/c-PB3PZJL5.mjs +1276 -0
- package/dist-boot/c-PTN4S6G2.mjs +1259 -0
- package/dist-boot/c-PYCE5J7U.mjs +1083 -0
- package/dist-boot/c-Q4HYCRLB.mjs +19410 -0
- package/dist-boot/c-QUXMETGG.mjs +68 -0
- package/dist-boot/c-RDMJZCOX.mjs +356 -0
- package/dist-boot/c-ROGJK76M.mjs +17 -0
- package/dist-boot/c-RQJJ26T4.mjs +708 -0
- package/dist-boot/c-RSKCUPJF.mjs +7559 -0
- package/dist-boot/c-RVJU4O6P.mjs +37 -0
- package/dist-boot/c-S2RVHR3M.mjs +165 -0
- package/dist-boot/c-SKMK3PEE.mjs +91120 -0
- package/dist-boot/c-TI7SM4EG.mjs +20 -0
- package/dist-boot/c-TILJ6GXD.mjs +1235 -0
- package/dist-boot/c-TT6BCUJD.mjs +114 -0
- package/dist-boot/c-U4ITOXAN.mjs +2107 -0
- package/dist-boot/c-UGERXVO2.mjs +7120 -0
- package/dist-boot/c-UPBH5AXY.mjs +1363 -0
- package/dist-boot/c-US2PUNZL.mjs +597 -0
- package/dist-boot/c-UU4WZPPE.mjs +20 -0
- package/dist-boot/c-UWVIYPQS.mjs +39 -0
- package/dist-boot/c-V4RHQBPQ.mjs +17683 -0
- package/dist-boot/c-V5MRVK47.mjs +351 -0
- package/dist-boot/c-V6CL266R.mjs +1755 -0
- package/dist-boot/c-VJTMFKYE.mjs +14975 -0
- package/dist-boot/c-VJTRUKIB.mjs +773 -0
- package/dist-boot/c-W4IFSHPW.mjs +43 -0
- package/dist-boot/c-WETGB2CF.mjs +113 -0
- package/dist-boot/c-WO3QSZUU.mjs +1337 -0
- package/dist-boot/c-WQLH73TY.mjs +242 -0
- package/dist-boot/c-XL735JW5.mjs +500 -0
- package/dist-boot/c-Y7HADL5B.mjs +1107 -0
- package/dist-boot/c-YGQHSVSK.mjs +41 -0
- package/dist-boot/c-YMP2AMEB.mjs +10350 -0
- package/dist-boot/c-YRDO2WEF.mjs +12012 -0
- package/dist-boot/c-YUSTRATJ.mjs +8 -0
- package/dist-boot/c-Z2262R22.mjs +2697 -0
- package/dist-boot/c-Z4ALQMJC.mjs +709 -0
- package/dist-boot/c-Z5ZUQVUY.mjs +62 -0
- package/dist-boot/c-ZDZUKXF7.mjs +874 -0
- package/dist-boot/c-ZJYLGIC3.mjs +32 -0
- package/dist-boot/c-ZNA5CDMI.mjs +77 -0
- package/dist-boot/c-ZSO6DI3M.mjs +204 -0
- package/dist-boot/c-ZWUVHKMK.mjs +100 -0
- package/dist-boot/c-ZY4MESEW.mjs +832 -0
- package/dist-boot/c-ZZ5REI4L.mjs +329 -0
- package/dist-boot/cli.mjs +51 -0
- package/dist-boot/ext-anthropic-attribution.mjs +207 -0
- package/dist-boot/ext-pi-background-tasks.mjs +7234 -0
- package/dist-boot/ext-pi-subagents.mjs +37 -0
- package/dist-boot/ext-privateer-account.mjs +4426 -0
- package/dist-boot/ext-privateer-brand.mjs +5274 -0
- package/dist-boot/ext-privateer-codemode.mjs +37 -0
- package/dist-boot/ext-privateer-computer.mjs +626 -0
- package/dist-boot/ext-privateer-connect.mjs +1862 -0
- package/dist-boot/ext-privateer-context.mjs +323 -0
- package/dist-boot/ext-privateer-desktop.mjs +92 -0
- package/dist-boot/ext-privateer-final-audit.mjs +48 -0
- package/dist-boot/ext-privateer-fresh.mjs +81 -0
- package/dist-boot/ext-privateer-gate.mjs +5959 -0
- package/dist-boot/ext-privateer-hints.mjs +236 -0
- package/dist-boot/ext-privateer-media.mjs +2626 -0
- package/dist-boot/ext-privateer-models.mjs +3397 -0
- package/dist-boot/ext-privateer-posture.mjs +3006 -0
- package/dist-boot/ext-privateer-privacy.mjs +4578 -0
- package/dist-boot/ext-privateer-recovery.mjs +287 -0
- package/dist-boot/ext-privateer-speak.mjs +4754 -0
- package/dist-boot/ext-privateer-terminals.mjs +725 -0
- package/dist-boot/ext-privateer-tools.mjs +528 -0
- package/dist-boot/ext-privateer-truncation.mjs +74 -0
- package/dist-boot/ext-privateer-update.mjs +210 -0
- package/dist-boot/ext-privateer-vision.mjs +148 -0
- package/dist-boot/ext-privateer-web.mjs +543 -0
- package/dist-boot/ext-rpiv-ask-user-question.mjs +710 -0
- package/dist-boot/manifest.json +9 -0
- package/extensions/privateer-brand.ts +3 -1
- package/extensions/privateer-context.ts +4 -2
- package/extensions/privateer-final-audit.ts +17 -0
- package/extensions/privateer-gate.ts +55 -9
- package/extensions/privateer-recovery.ts +175 -0
- package/extensions/privateer-web.ts +4 -4
- package/package.json +3 -1
- package/patches/@earendil-works+pi-coding-agent+1.3.0.patch +199 -2
- package/patches/pi-background-tasks+2.6.10.patch +91 -7
- package/src/cli/chat.ts +7 -1
- package/src/config/moatManifest.json +2 -0
- package/src/config/whatsNew.json +4 -4
- package/src/context.ts +33 -5
- package/src/engine/finalAudit.ts +38 -0
- package/src/engine/stallWatchdog.ts +8 -1
- package/src/providers/account.ts +34 -3
- package/src/remote/attentionPush.ts +40 -0
- package/src/remote/liveTaskSession.ts +7 -1
- package/src/remote/relayClient.ts +38 -4
- package/src/remote/remoteBridge.ts +17 -0
- package/src/remote/transcriptSnapshot.ts +104 -0
|
@@ -0,0 +1,203 @@
|
|
|
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/pi-background-tasks/src/core/lazy-module.ts?ext=pi-background-tasks
|
|
7
|
+
var SynchronousActivationCloseFence = class {
|
|
8
|
+
static {
|
|
9
|
+
__name(this, "SynchronousActivationCloseFence");
|
|
10
|
+
}
|
|
11
|
+
closed = false;
|
|
12
|
+
callbacks = /* @__PURE__ */ new Set();
|
|
13
|
+
add(callback) {
|
|
14
|
+
this.callbacks.add(callback);
|
|
15
|
+
if (this.closed) callback();
|
|
16
|
+
}
|
|
17
|
+
close() {
|
|
18
|
+
this.closed = true;
|
|
19
|
+
const failures = [];
|
|
20
|
+
for (const callback of this.callbacks) {
|
|
21
|
+
try {
|
|
22
|
+
callback();
|
|
23
|
+
} catch (error) {
|
|
24
|
+
failures.push(error);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
if (failures.length > 0) {
|
|
28
|
+
throw new AggregateError(
|
|
29
|
+
failures,
|
|
30
|
+
`synchronous activation close barrier failed in ${String(failures.length)} callback(s)`
|
|
31
|
+
);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
var MODULE_ID_MAX_CHARS = 120;
|
|
36
|
+
var CAUSE_MAX_CHARS = 480;
|
|
37
|
+
var CLOSE_REASON_MAX_CHARS = 160;
|
|
38
|
+
function boundedSingleLine(value, maximum) {
|
|
39
|
+
const singleLine = value.replace(/\s+/gu, " ").trim();
|
|
40
|
+
if (singleLine.length <= maximum) return singleLine;
|
|
41
|
+
return `${singleLine.slice(0, maximum)}\u2026`;
|
|
42
|
+
}
|
|
43
|
+
__name(boundedSingleLine, "boundedSingleLine");
|
|
44
|
+
function boundedModuleId(moduleId) {
|
|
45
|
+
const bounded = boundedSingleLine(moduleId, MODULE_ID_MAX_CHARS);
|
|
46
|
+
return bounded.length > 0 ? bounded : "unnamed-module";
|
|
47
|
+
}
|
|
48
|
+
__name(boundedModuleId, "boundedModuleId");
|
|
49
|
+
function causeText(error) {
|
|
50
|
+
if (error instanceof Error) {
|
|
51
|
+
const message = error.message.trim();
|
|
52
|
+
return boundedSingleLine(
|
|
53
|
+
message.length > 0 ? `${error.name}: ${message}` : error.name,
|
|
54
|
+
CAUSE_MAX_CHARS
|
|
55
|
+
);
|
|
56
|
+
}
|
|
57
|
+
return boundedSingleLine(String(error), CAUSE_MAX_CHARS);
|
|
58
|
+
}
|
|
59
|
+
__name(causeText, "causeText");
|
|
60
|
+
var LazyModuleLoadError = class extends Error {
|
|
61
|
+
static {
|
|
62
|
+
__name(this, "LazyModuleLoadError");
|
|
63
|
+
}
|
|
64
|
+
code = "lazy_module_load_failed";
|
|
65
|
+
moduleId;
|
|
66
|
+
constructor(moduleId, error) {
|
|
67
|
+
const cause = causeText(error);
|
|
68
|
+
super(`lazy_module_load_failed: deferred module ${moduleId} could not load: ${cause}`);
|
|
69
|
+
this.name = "LazyModuleLoadError";
|
|
70
|
+
this.moduleId = moduleId;
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
var LazyModuleClosedError = class extends Error {
|
|
74
|
+
static {
|
|
75
|
+
__name(this, "LazyModuleClosedError");
|
|
76
|
+
}
|
|
77
|
+
code = "lazy_module_closed";
|
|
78
|
+
moduleId;
|
|
79
|
+
constructor(moduleId, reason) {
|
|
80
|
+
super(
|
|
81
|
+
`lazy_module_closed: deferred module ${moduleId} belongs to a closed activation (${boundedSingleLine(reason, CLOSE_REASON_MAX_CHARS) || "closed"})`
|
|
82
|
+
);
|
|
83
|
+
this.name = "LazyModuleClosedError";
|
|
84
|
+
this.moduleId = moduleId;
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
var LazyModule = class {
|
|
88
|
+
static {
|
|
89
|
+
__name(this, "LazyModule");
|
|
90
|
+
}
|
|
91
|
+
moduleId;
|
|
92
|
+
importer;
|
|
93
|
+
currentState = "unloaded";
|
|
94
|
+
activationGeneration = 0;
|
|
95
|
+
loadingPromise;
|
|
96
|
+
loadedValue;
|
|
97
|
+
loadFailure;
|
|
98
|
+
closedFailure;
|
|
99
|
+
constructor(moduleId, importer) {
|
|
100
|
+
this.moduleId = boundedModuleId(moduleId);
|
|
101
|
+
this.importer = importer;
|
|
102
|
+
}
|
|
103
|
+
get state() {
|
|
104
|
+
return this.currentState;
|
|
105
|
+
}
|
|
106
|
+
/** Synchronously and permanently close this activation. */
|
|
107
|
+
close(reason = "activation closed") {
|
|
108
|
+
if (this.currentState === "closed") return;
|
|
109
|
+
this.activationGeneration += 1;
|
|
110
|
+
this.currentState = "closed";
|
|
111
|
+
this.loadedValue = void 0;
|
|
112
|
+
this.loadingPromise = void 0;
|
|
113
|
+
this.loadFailure = void 0;
|
|
114
|
+
this.closedFailure = new LazyModuleClosedError(this.moduleId, reason);
|
|
115
|
+
}
|
|
116
|
+
/** Assert immediately before an activation-owned side effect. */
|
|
117
|
+
assertOpen(expectedGeneration = this.activationGeneration) {
|
|
118
|
+
if (this.currentState === "closed" || expectedGeneration !== this.activationGeneration) {
|
|
119
|
+
throw this.closedError();
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
load() {
|
|
123
|
+
const generation = this.activationGeneration;
|
|
124
|
+
try {
|
|
125
|
+
this.assertOpen(generation);
|
|
126
|
+
} catch (error) {
|
|
127
|
+
return Promise.reject(error);
|
|
128
|
+
}
|
|
129
|
+
if (this.currentState === "loaded") {
|
|
130
|
+
const loaded = this.loadedValue;
|
|
131
|
+
if (loaded === void 0) {
|
|
132
|
+
return Promise.reject(
|
|
133
|
+
new Error(`lazy_module_invariant: ${this.moduleId} is loaded without a value`)
|
|
134
|
+
);
|
|
135
|
+
}
|
|
136
|
+
return Promise.resolve(loaded.value);
|
|
137
|
+
}
|
|
138
|
+
if (this.currentState === "failed") {
|
|
139
|
+
const failure = this.loadFailure;
|
|
140
|
+
if (failure === void 0) {
|
|
141
|
+
return Promise.reject(
|
|
142
|
+
new Error(`lazy_module_invariant: ${this.moduleId} failed without an error`)
|
|
143
|
+
);
|
|
144
|
+
}
|
|
145
|
+
return Promise.reject(failure);
|
|
146
|
+
}
|
|
147
|
+
if (this.currentState === "loading") {
|
|
148
|
+
const pending2 = this.loadingPromise;
|
|
149
|
+
if (pending2 === void 0) {
|
|
150
|
+
return Promise.reject(
|
|
151
|
+
new Error(`lazy_module_invariant: ${this.moduleId} is loading without a promise`)
|
|
152
|
+
);
|
|
153
|
+
}
|
|
154
|
+
return pending2;
|
|
155
|
+
}
|
|
156
|
+
this.currentState = "loading";
|
|
157
|
+
const pending = Promise.resolve().then(() => {
|
|
158
|
+
this.assertOpen(generation);
|
|
159
|
+
return this.importer();
|
|
160
|
+
}).then(
|
|
161
|
+
(value) => {
|
|
162
|
+
this.assertOpen(generation);
|
|
163
|
+
this.loadedValue = { value };
|
|
164
|
+
this.loadingPromise = void 0;
|
|
165
|
+
this.currentState = "loaded";
|
|
166
|
+
return value;
|
|
167
|
+
},
|
|
168
|
+
(error) => {
|
|
169
|
+
this.assertOpen(generation);
|
|
170
|
+
const failure = new LazyModuleLoadError(this.moduleId, error);
|
|
171
|
+
this.loadFailure = failure;
|
|
172
|
+
this.loadingPromise = void 0;
|
|
173
|
+
this.currentState = "failed";
|
|
174
|
+
throw failure;
|
|
175
|
+
}
|
|
176
|
+
);
|
|
177
|
+
this.loadingPromise = pending;
|
|
178
|
+
return pending;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Load once, then invoke this caller's operation independently after the
|
|
182
|
+
* final generation check. Only module loading is shared between callers.
|
|
183
|
+
*/
|
|
184
|
+
async run(operation) {
|
|
185
|
+
const generation = this.activationGeneration;
|
|
186
|
+
this.assertOpen(generation);
|
|
187
|
+
const module = await this.load();
|
|
188
|
+
this.assertOpen(generation);
|
|
189
|
+
return operation(module);
|
|
190
|
+
}
|
|
191
|
+
closedError() {
|
|
192
|
+
const failure = this.closedFailure;
|
|
193
|
+
if (failure !== void 0) return failure;
|
|
194
|
+
const created = new LazyModuleClosedError(this.moduleId, "activation closed");
|
|
195
|
+
this.closedFailure = created;
|
|
196
|
+
return created;
|
|
197
|
+
}
|
|
198
|
+
};
|
|
199
|
+
|
|
200
|
+
export {
|
|
201
|
+
SynchronousActivationCloseFence,
|
|
202
|
+
LazyModule
|
|
203
|
+
};
|