@claudexor/daemon 4.8.2 → 5.0.2

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 (157) hide show
  1. package/dist/command-list-projection.d.ts +1 -1
  2. package/dist/command-list-projection.d.ts.map +1 -1
  3. package/dist/command-list-projection.js +2 -3
  4. package/dist/command-list-projection.js.map +1 -1
  5. package/dist/command-store.d.ts +2 -0
  6. package/dist/command-store.d.ts.map +1 -1
  7. package/dist/command-store.js.map +1 -1
  8. package/dist/deferred-message-owner.d.ts +10 -1
  9. package/dist/deferred-message-owner.d.ts.map +1 -1
  10. package/dist/deferred-messages.d.ts.map +1 -1
  11. package/dist/deferred-messages.js +11 -5
  12. package/dist/deferred-messages.js.map +1 -1
  13. package/dist/delivery-command.d.ts.map +1 -1
  14. package/dist/delivery-command.js +3 -1
  15. package/dist/delivery-command.js.map +1 -1
  16. package/dist/enqueue-command.d.ts +19 -4
  17. package/dist/enqueue-command.d.ts.map +1 -1
  18. package/dist/enqueue-command.js +72 -10
  19. package/dist/enqueue-command.js.map +1 -1
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/job-record.d.ts.map +1 -1
  24. package/dist/job-record.js +8 -19
  25. package/dist/job-record.js.map +1 -1
  26. package/dist/job-settlement.d.ts +3 -1
  27. package/dist/job-settlement.d.ts.map +1 -1
  28. package/dist/job-settlement.js +13 -0
  29. package/dist/job-settlement.js.map +1 -1
  30. package/dist/quota-poll-lanes.d.ts +3 -3
  31. package/dist/quota-poll-lanes.d.ts.map +1 -1
  32. package/dist/quota-poll-lanes.js.map +1 -1
  33. package/dist/quota-refresh-batches.d.ts +7 -6
  34. package/dist/quota-refresh-batches.d.ts.map +1 -1
  35. package/dist/quota-refresh-batches.js +6 -3
  36. package/dist/quota-refresh-batches.js.map +1 -1
  37. package/dist/quota-refresh-demand.d.ts.map +1 -1
  38. package/dist/quota-refresh-demand.js +3 -2
  39. package/dist/quota-refresh-demand.js.map +1 -1
  40. package/dist/quota-registry-replay.d.ts.map +1 -1
  41. package/dist/quota-registry-replay.js +10 -3
  42. package/dist/quota-registry-replay.js.map +1 -1
  43. package/dist/quota-registry-support.d.ts +14 -6
  44. package/dist/quota-registry-support.d.ts.map +1 -1
  45. package/dist/quota-registry-support.js +32 -10
  46. package/dist/quota-registry-support.js.map +1 -1
  47. package/dist/quota-registry.d.ts +71 -7
  48. package/dist/quota-registry.d.ts.map +1 -1
  49. package/dist/quota-registry.js +15 -15
  50. package/dist/quota-registry.js.map +1 -1
  51. package/dist/quota-resource-demand.d.ts +1 -1
  52. package/dist/quota-resource-demand.d.ts.map +1 -1
  53. package/dist/quota-resource-demand.js +2 -1
  54. package/dist/quota-resource-demand.js.map +1 -1
  55. package/dist/quota-resources.d.ts +11 -6
  56. package/dist/quota-resources.d.ts.map +1 -1
  57. package/dist/quota-resources.js +10 -5
  58. package/dist/quota-resources.js.map +1 -1
  59. package/dist/run-observation.d.ts.map +1 -1
  60. package/dist/run-observation.js +2 -11
  61. package/dist/run-observation.js.map +1 -1
  62. package/dist/server.d.ts +0 -1
  63. package/dist/server.d.ts.map +1 -1
  64. package/dist/server.js +12 -38
  65. package/dist/server.js.map +1 -1
  66. package/dist/store/blob-files.d.ts +15 -4
  67. package/dist/store/blob-files.d.ts.map +1 -1
  68. package/dist/store/blob-files.js +28 -5
  69. package/dist/store/blob-files.js.map +1 -1
  70. package/dist/store/commands.d.ts +22 -0
  71. package/dist/store/commands.d.ts.map +1 -1
  72. package/dist/store/commands.js +98 -15
  73. package/dist/store/commands.js.map +1 -1
  74. package/dist/store/cursors.d.ts +37 -1
  75. package/dist/store/cursors.d.ts.map +1 -1
  76. package/dist/store/cursors.js +64 -13
  77. package/dist/store/cursors.js.map +1 -1
  78. package/dist/store/deferred-messages.d.ts +9 -2
  79. package/dist/store/deferred-messages.d.ts.map +1 -1
  80. package/dist/store/deferred-messages.js +49 -24
  81. package/dist/store/deferred-messages.js.map +1 -1
  82. package/dist/store/engine-state-recovery.d.ts +2 -2
  83. package/dist/store/engine-state-recovery.d.ts.map +1 -1
  84. package/dist/store/engine-state-recovery.js.map +1 -1
  85. package/dist/store/event-store.d.ts +2 -0
  86. package/dist/store/event-store.d.ts.map +1 -1
  87. package/dist/store/event-store.js +3 -1
  88. package/dist/store/event-store.js.map +1 -1
  89. package/dist/store/external-files.d.ts +40 -2
  90. package/dist/store/external-files.d.ts.map +1 -1
  91. package/dist/store/external-files.js +125 -4
  92. package/dist/store/external-files.js.map +1 -1
  93. package/dist/store/import-context.js +1 -1
  94. package/dist/store/import-context.js.map +1 -1
  95. package/dist/store/project-router.d.ts +7 -0
  96. package/dist/store/project-router.d.ts.map +1 -1
  97. package/dist/store/project-router.js +11 -0
  98. package/dist/store/project-router.js.map +1 -1
  99. package/dist/store/projects.d.ts +15 -1
  100. package/dist/store/projects.d.ts.map +1 -1
  101. package/dist/store/projects.js +83 -26
  102. package/dist/store/projects.js.map +1 -1
  103. package/dist/store/publish-blob.d.ts.map +1 -1
  104. package/dist/store/publish-blob.js +3 -10
  105. package/dist/store/publish-blob.js.map +1 -1
  106. package/dist/store/purge-files.d.ts +13 -1
  107. package/dist/store/purge-files.d.ts.map +1 -1
  108. package/dist/store/purge-files.js +26 -2
  109. package/dist/store/purge-files.js.map +1 -1
  110. package/dist/store/resource-rows.d.ts +0 -2
  111. package/dist/store/resource-rows.d.ts.map +1 -1
  112. package/dist/store/resource-rows.js +0 -9
  113. package/dist/store/resource-rows.js.map +1 -1
  114. package/dist/store/resources.d.ts.map +1 -1
  115. package/dist/store/resources.js +2 -6
  116. package/dist/store/resources.js.map +1 -1
  117. package/dist/store/sql-command-router.d.ts +2 -0
  118. package/dist/store/sql-command-router.d.ts.map +1 -1
  119. package/dist/store/sql-command-router.js +9 -0
  120. package/dist/store/sql-command-router.js.map +1 -1
  121. package/dist/store/sql-daemon-services.d.ts +2 -8
  122. package/dist/store/sql-daemon-services.d.ts.map +1 -1
  123. package/dist/store/sql-daemon-services.js +2 -2
  124. package/dist/store/sql-daemon-services.js.map +1 -1
  125. package/dist/store/sql-recovery.d.ts +2 -8
  126. package/dist/store/sql-recovery.d.ts.map +1 -1
  127. package/dist/store/sql-recovery.js +3 -3
  128. package/dist/store/sql-recovery.js.map +1 -1
  129. package/dist/store/store.d.ts +9 -0
  130. package/dist/store/store.d.ts.map +1 -1
  131. package/dist/store/store.js +19 -0
  132. package/dist/store/store.js.map +1 -1
  133. package/dist/store/terminal-files.d.ts +20 -1
  134. package/dist/store/terminal-files.d.ts.map +1 -1
  135. package/dist/store/terminal-files.js +176 -22
  136. package/dist/store/terminal-files.js.map +1 -1
  137. package/dist/store/thread-prompt-read.d.ts +4 -2
  138. package/dist/store/thread-prompt-read.d.ts.map +1 -1
  139. package/dist/store/thread-prompt-read.js +4 -2
  140. package/dist/store/thread-prompt-read.js.map +1 -1
  141. package/dist/store/threads.d.ts +2 -0
  142. package/dist/store/threads.d.ts.map +1 -1
  143. package/dist/store/threads.js +7 -3
  144. package/dist/store/threads.js.map +1 -1
  145. package/dist/store/upload-imports.d.ts.map +1 -1
  146. package/dist/store/upload-imports.js +2 -4
  147. package/dist/store/upload-imports.js.map +1 -1
  148. package/dist/store/uploads.d.ts.map +1 -1
  149. package/dist/store/uploads.js +2 -4
  150. package/dist/store/uploads.js.map +1 -1
  151. package/dist/store-contracts.d.ts +13 -2
  152. package/dist/store-contracts.d.ts.map +1 -1
  153. package/dist/terminal-authority.d.ts +9 -1
  154. package/dist/terminal-authority.d.ts.map +1 -1
  155. package/dist/terminal-authority.js +32 -0
  156. package/dist/terminal-authority.js.map +1 -1
  157. package/package.json +5 -5
@@ -1,6 +1,7 @@
1
- import { measureSync } from "@claudexor/util";
1
+ import { processTiming } from "@claudexor/util";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { closeSync, constants, existsSync, linkSync, mkdirSync, openSync, renameSync, unlinkSync, writeSync, } from "node:fs";
4
+ import { link, open, stat, unlink } from "node:fs/promises";
4
5
  import { dirname, join } from "node:path";
5
6
  import { mapStoreError } from "./errors.js";
6
7
  /** Node does not expose the POSIX O_DSYNC name on Windows, but passes numeric
@@ -16,10 +17,16 @@ export function externalWriteFlags(access) {
16
17
  * 4 KiB–2 MiB), then `rename` into place, then a `{g, dir}` registration so
17
18
  * the flusher's pass fsyncs the directory entry. No Node sync primitive runs
18
19
  * on this thread. `keepExisting` is the content-addressed mode: an existing
19
- * target is never rewritten.
20
+ * target is never rewritten. The whole call is one `store.external_write`
21
+ * section; one that enters the worst sections is logged with its purpose,
22
+ * size and the split between metadata calls and the data write.
20
23
  */
21
24
  export function writeExternalFile(registry, input) {
22
- return measureSync("store.external_write", () => {
25
+ const started = performance.now();
26
+ let opened = null;
27
+ let closed = null;
28
+ let written = false;
29
+ try {
23
30
  const target = join(input.dir, input.name);
24
31
  if (input.keepExisting && existsSync(target)) {
25
32
  return { path: target, generation: registry.registerExternal(input.dir), written: false };
@@ -28,6 +35,7 @@ export function writeExternalFile(registry, input) {
28
35
  const temp = join(input.dir, `.${input.name}.${randomUUID()}.tmp`);
29
36
  let fd = null;
30
37
  try {
38
+ opened = performance.now();
31
39
  fd = openSync(temp, externalWriteFlags(constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL), 0o600);
32
40
  let offset = 0;
33
41
  while (offset < input.bytes.byteLength) {
@@ -35,11 +43,13 @@ export function writeExternalFile(registry, input) {
35
43
  }
36
44
  closeSync(fd);
37
45
  fd = null;
46
+ closed = performance.now();
38
47
  if (input.keepExisting && existsSync(target)) {
39
48
  unlinkSync(temp);
40
49
  return { path: target, generation: registry.registerExternal(input.dir), written: false };
41
50
  }
42
51
  renameSync(temp, target);
52
+ written = true;
43
53
  }
44
54
  catch (error) {
45
55
  if (fd !== null)
@@ -53,7 +63,118 @@ export function writeExternalFile(registry, input) {
53
63
  throw mapStoreError(error, `writing ${target}`);
54
64
  }
55
65
  return { path: target, generation: registry.registerExternal(input.dir), written: true };
56
- });
66
+ }
67
+ finally {
68
+ const ended = performance.now();
69
+ recordExternalWrite(registry, {
70
+ purpose: input.purpose,
71
+ bytes: input.bytes.byteLength,
72
+ written,
73
+ metadata_before_ms: (opened ?? ended) - started,
74
+ data_write_ms: opened === null ? 0 : (closed ?? ended) - opened,
75
+ metadata_publish_ms: closed === null ? 0 : ended - closed,
76
+ total_ms: ended - started,
77
+ });
78
+ }
79
+ }
80
+ /** One `store.external_write` section; one entering the worst sections is logged. */
81
+ function recordExternalWrite(registry, sample) {
82
+ if (!processTiming.recordSync("store.external_write", sample.total_ms))
83
+ return;
84
+ const rounded = Object.fromEntries(Object.entries(sample).map(([key, value]) => [
85
+ key,
86
+ key.endsWith("_ms") ? Math.round(Number(value) * 1_000) / 1_000 : value,
87
+ ]));
88
+ registry.logSlowWrite?.(`store.external_write ${JSON.stringify(rounded)}`);
89
+ }
90
+ /**
91
+ * Publish a staged temp under its final name in the commit's synchronous
92
+ * step: rename it into place and register the directory, exactly what
93
+ * `writeExternalFile` does after its own write (and the same section for
94
+ * attribution). Null when the rename cannot happen there (another filesystem,
95
+ * or the temp is gone): the caller then writes the bytes itself.
96
+ */
97
+ export function publishStagedFile(registry, input) {
98
+ const started = performance.now();
99
+ const target = join(input.dir, input.name);
100
+ let written = false;
101
+ try {
102
+ renameSync(input.temp, target);
103
+ written = true;
104
+ }
105
+ catch (error) {
106
+ const code = error.code;
107
+ if (code !== "EXDEV" && code !== "ENOENT")
108
+ throw mapStoreError(error, `publishing ${target}`);
109
+ try {
110
+ unlinkSync(input.temp);
111
+ }
112
+ catch {
113
+ /* best effort; the orphan sweep removes stale .tmp files */
114
+ }
115
+ return null;
116
+ }
117
+ finally {
118
+ const ended = performance.now();
119
+ recordExternalWrite(registry, {
120
+ purpose: input.purpose,
121
+ bytes: input.bytes,
122
+ written,
123
+ staged: true,
124
+ metadata_publish_ms: ended - started,
125
+ total_ms: ended - started,
126
+ });
127
+ }
128
+ return { path: target, generation: registry.registerExternal(input.dir), written: true };
129
+ }
130
+ /** An `O_DSYNC` temp file in `dir` holding `bytes`, written on the libuv pool
131
+ * rather than the request thread. The caller publishes or removes it. */
132
+ export async function writeStagedTemp(dir, name, bytes) {
133
+ const temp = join(dir, `.${name}.${randomUUID()}.tmp`);
134
+ const handle = await open(temp, externalWriteFlags(constants.O_WRONLY | constants.O_CREAT | constants.O_EXCL), 0o600);
135
+ let closed = false;
136
+ try {
137
+ let offset = 0;
138
+ while (offset < bytes.byteLength) {
139
+ const { bytesWritten } = await handle.write(bytes, offset, bytes.byteLength - offset, offset);
140
+ offset += bytesWritten;
141
+ }
142
+ closed = true;
143
+ await handle.close();
144
+ return temp;
145
+ }
146
+ catch (error) {
147
+ if (!closed)
148
+ await handle.close().catch(() => undefined);
149
+ await unlink(temp).catch(() => undefined);
150
+ throw error;
151
+ }
152
+ }
153
+ /**
154
+ * The off-loop twin of `writeExternalFile` for a content-addressed body: the
155
+ * same `O_DSYNC` temp, published under its final name only while that name is
156
+ * absent (a hard link refuses an existing target, so a concurrent twin never
157
+ * rewrites it). It creates and registers nothing: the synchronous owner finds
158
+ * the file in the tick that commits its row and registers the directory then,
159
+ * under that commit's flusher barrier. Resolves whether this call published.
160
+ */
161
+ export async function stageExternalFile(input) {
162
+ const target = join(input.dir, input.name);
163
+ if (await stat(target).then(() => true, () => false))
164
+ return false;
165
+ const temp = await writeStagedTemp(input.dir, input.name, input.bytes);
166
+ try {
167
+ await link(temp, target);
168
+ return true;
169
+ }
170
+ catch (error) {
171
+ if (error.code === "EEXIST")
172
+ return false;
173
+ throw error;
174
+ }
175
+ finally {
176
+ await unlink(temp).catch(() => undefined);
177
+ }
57
178
  }
58
179
  /** Publish by hard link (finalize, SYNTHESIS_R5 §6.4): an existing target wins. */
59
180
  export function linkExternalFile(registry, input) {
@@ -1 +1 @@
1
- {"version":3,"file":"external-files.js","sourceRoot":"","sources":["../../src/store/external-files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external-files.js","sourceRoot":"","sources":["../../src/store/external-files.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAU,EACV,UAAU,EACV,SAAS,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqB5C;;+DAE+D;AAC/D,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC;IAC3E,OAAO,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAA0B,EAC1B,KAMC;IAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,KAAK,CAAC,YAAY,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC5F,CAAC;QACD,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC,IAAI,IAAI,UAAU,EAAE,MAAM,CAAC,CAAC;QACnE,IAAI,EAAE,GAAkB,IAAI,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC3B,EAAE,GAAG,QAAQ,CACX,IAAI,EACJ,kBAAkB,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAC7E,KAAK,CACN,CAAC;YACF,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,OAAO,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;gBACvC,MAAM,IAAI,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;YACxF,CAAC;YACD,SAAS,CAAC,EAAE,CAAC,CAAC;YACd,EAAE,GAAG,IAAI,CAAC;YACV,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;YAC3B,IAAI,KAAK,CAAC,YAAY,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7C,UAAU,CAAC,IAAI,CAAC,CAAC;gBACjB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YAC5F,CAAC;YACD,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACzB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,EAAE,KAAK,IAAI;gBAAE,SAAS,CAAC,EAAE,CAAC,CAAC;YAC/B,IAAI,CAAC;gBACH,UAAU,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YAAC,MAAM,CAAC;gBACP,4DAA4D;YAC9D,CAAC;YACD,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,MAAM,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3F,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,mBAAmB,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,UAAU;YAC7B,OAAO;YACP,kBAAkB,EAAE,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO;YAC/C,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM;YAC/D,mBAAmB,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,MAAM;YACzD,QAAQ,EAAE,KAAK,GAAG,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,SAAS,mBAAmB,CAC1B,QAA0B,EAC1B,MAKkC;IAElC,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,sBAAsB,EAAE,MAAM,CAAC,QAAQ,CAAC;QAAE,OAAO;IAC/E,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC3C,GAAG;QACH,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK;KACxE,CAAC,CACH,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAA0B,EAC1B,KAAgG;IAEhG,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC;QACH,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAA+B,CAAC,IAAI,CAAC;QACnD,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ;YAAE,MAAM,aAAa,CAAC,KAAK,EAAE,cAAc,MAAM,EAAE,CAAC,CAAC;QAC9F,IAAI,CAAC;YACH,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,4DAA4D;QAC9D,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;YAAS,CAAC;QACT,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;QAChC,mBAAmB,CAAC,QAAQ,EAAE;YAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO;YACP,MAAM,EAAE,IAAI;YACZ,mBAAmB,EAAE,KAAK,GAAG,OAAO;YACpC,QAAQ,EAAE,KAAK,GAAG,OAAO;SAC1B,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC3F,CAAC;AAED;yEACyE;AACzE,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAW,EACX,IAAY,EACZ,KAAiB;IAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,IAAI,UAAU,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CACvB,IAAI,EACJ,kBAAkB,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,EAC7E,KAAK,CACN,CAAC;IACF,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,OAAO,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC;YACjC,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,UAAU,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9F,MAAM,IAAI,YAAY,CAAC;QACzB,CAAC;QACD,MAAM,GAAG,IAAI,CAAC;QACd,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,MAAM;YAAE,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAIvC;IACC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,IACE,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CACrB,GAAG,EAAE,CAAC,IAAI,EACV,GAAG,EAAE,CAAC,KAAK,CACZ;QAED,OAAO,KAAK,CAAC;IACf,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACrE,MAAM,KAAK,CAAC;IACd,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,gBAAgB,CAC9B,QAA0B,EAC1B,KAAoD;IAEpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC3C,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,CAAC;QACH,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,KAAK,CAAC,MAAM,OAAO,MAAM,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;AACrF,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,kBAAkB,CAAC,QAA0B,EAAE,IAAY;IACzE,IAAI,CAAC;QACH,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACvD,MAAM,aAAa,CAAC,KAAK,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,eAAe,CAAC,QAA0B,EAAE,GAAW;IACrE,IAAI,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO;IAC5B,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACjD,QAAQ,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC"}
@@ -62,7 +62,7 @@ export class ImportContext {
62
62
  this.externalDirectories.add(dir);
63
63
  return 0;
64
64
  },
65
- }, { dir: this.blobsDir, name: sha256, bytes, keepExisting: true });
65
+ }, { dir: this.blobsDir, name: sha256, bytes, keepExisting: true, purpose: "import" });
66
66
  // Existing immutable bytes are never rewritten, including a resource collision.
67
67
  if (!receipt.written) {
68
68
  const prior = readFileSync(receipt.path);
@@ -1 +1 @@
1
- {"version":3,"file":"import-context.js","sourceRoot":"","sources":["../../src/store/import-context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import-context.js","sourceRoot":"","sources":["../../src/store/import-context.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,13 @@ export declare class SqlProjectRouter {
32
32
  archivedPartitionPath: string | null;
33
33
  artifactsRetained: true;
34
34
  activeRunCheck: "snapshot";
35
+ purgedThreads?: {
36
+ threadId: string;
37
+ cleanup: "completed" | "pending";
38
+ cleanupError: string | null;
39
+ }[] | undefined;
35
40
  };
41
+ removeProjectWithTrashedThreads(id: string, activeRunRoots: ReadonlySet<string>): import("./projects.js").ProjectRemoval;
36
42
  findThreadCreation(input: CreateThreadInput & {
37
43
  ephemeral?: boolean;
38
44
  }): Thread | null;
@@ -99,6 +105,7 @@ export declare class SqlProjectRouter {
99
105
  } | null;
100
106
  created_at: string;
101
107
  };
108
+ stageTurnPrompt(id: string, prompt: string): Promise<void>;
102
109
  findTurnByIdempotency(id: string, input: NonNullable<CreateTurnInput["idempotency"]>): {
103
110
  id: string;
104
111
  thread_id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"project-router.d.ts","sourceRoot":"","sources":["../../src/store/project-router.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,4BAA4B,EACjC,KAAK,MAAM,EACX,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAQ3F,OAAO,EAAiB,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGhD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG9C;0EAC0E;AAC1E,qBAAa,gBAAgB;IACf,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAA9C,YAAqB,QAAQ,EAAE,eAAe,EAAI;IAClD,IAAI,KAAK,qCAER;IAED,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,mBAAmB,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC,GAAG,cAAc,CAO3F;IACD,OAAO,CAAC,aAAa;IAIrB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAE1D;IACD,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAExD;IACD,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAE3D;IACD,OAAO,CAAC,gBAAgB;IASxB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,mBAAmB,CAoBzD;IAED,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,gDAEhE;IACD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;;;;;;MAErC;IACD,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC;;;;;;;;MAE5D;IAED,kBAAkB,CAAC,KAAK,EAAE,iBAAiB,GAAG;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,GAAG,IAAI,CAYpF;IAED,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM,CAcvE;IAED,oBAAoB,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,4BAA4B,EAAE,CAAA;KAAE,CAqBtF;IACD,WAAW,IAAI,MAAM,EAAE,CAEtB;IACD,iBAAiB,IAAI,MAAM,EAAE,CAM5B;IACD,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAExC;IACD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE1C;IACD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,EAAE,CAEjC;IACD,iBAAiB,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;QAE3B;IACD,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,eAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEjE;IACD,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAEnF;IACD,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEhD;IACD,WAAW,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAErB;IACD,aAAa,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAEvB;IACD,WAAW,CAAC,EAAE,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAErB;IACD,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAEhF;IACD,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;;;MAMhD;IACD,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAE3C;IACD,mBAAmB,CACjB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,UAAU,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC5D,IAAI,CAEN;IACD,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,GAAE,MAAM,GAAG,IAAW;;;OAEpD;IACD,aAAa,CAAC,EAAE,EAAE,MAAM;;;OAEvB;IACD,eAAe,CAAC,EAAE,EAAE,MAAM,0BAEzB;IACD,aAAa,CACX,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EACxB,SAAS,GAAE,MAAM,GAAG,IAAW,GAC9B,IAAI,CAEN;IACD,oBAAoB,CAClB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,MAAM,EAAE,MAAM,GACb,IAAI,CAEN;IACD,cAAc,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,iBAErE;IACD,wBAAwB,CAAC,EAAE,EAAE,MAAM;;;;;;;QAElC;IACD,iBAAiB,CACf,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,GAC7D,IAAI,CAEN;IACD,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAE/B;IAED,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;;;;MAE5D;IACD,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;;;;MAEzD;IACD,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,eAAe;IAUvB,wCAAwC,IAAI,IAAI,CAS/C;IACD,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;MAU/D;IACD,mBAAmB,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,wEAE9E;IACD,gBAAgB,CAAC,MAAM,CAAC,EAAE,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAEpC;IACD,mBAAmB,IAAI,MAAM,EAAE,CAS9B;IACD,uBAAuB;mBACa,MAAM;cAAQ,MAAM;gBAAU,MAAM;QAYvE;IAED;8EAC0E;IAC1E,mBAAmB,IAAI,MAAM,CAiB5B;IAED,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,aAAa;IAKrB,OAAO,CAAC,WAAW;CAKpB"}
1
+ {"version":3,"file":"project-router.d.ts","sourceRoot":"","sources":["../../src/store/project-router.ts"],"names":[],"mappings":"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"}
@@ -70,6 +70,9 @@ export class SqlProjectRouter {
70
70
  removeProject(id, activeRunRoots) {
71
71
  return this.projects.remove(id, activeRunRoots);
72
72
  }
73
+ removeProjectWithTrashedThreads(id, activeRunRoots) {
74
+ return this.projects.removeWithTrashedThreads(id, activeRunRoots);
75
+ }
73
76
  findThreadCreation(input) {
74
77
  const root = input.ephemeral === true ? null : (input.repoRoot ?? null);
75
78
  if (!root)
@@ -147,6 +150,14 @@ export class SqlProjectRouter {
147
150
  createTurn(id, prompt, input = {}) {
148
151
  return this.requireThread(id).createTurn(id, prompt, input);
149
152
  }
153
+ async stageTurnPrompt(id, prompt) {
154
+ try {
155
+ await this.forThread(id)?.stageTurnPrompt(prompt);
156
+ }
157
+ catch {
158
+ /* createTurn decides and reports */
159
+ }
160
+ }
150
161
  findTurnByIdempotency(id, input) {
151
162
  return this.requireThread(id).findTurnByIdempotency(id, input);
152
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"project-router.js","sourceRoot":"","sources":["../../src/store/project-router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,uCAAuC,GAIxC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAExE,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EACL,WAAW,EACX,uBAAuB,EACvB,iBAAiB,EACjB,eAAe,GAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAE1E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAE1F;0EAC0E;AAC1E,MAAM,OAAO,gBAAgB;IACN,QAAQ;IAA7B,YAAqB,QAAyB;wBAAzB,QAAQ;IAAoB,CAAC;IAClD,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;IAC7B,CAAC;IAED,WAAW,CAAC,UAA+D;QACzE,OAAO,IAAI,cAAc,CACvB,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,CAAC,KAAK,EACnB,UAAU,EACV,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC1B,CAAC;IACJ,CAAC;IACO,aAAa;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,CAAC;IAED,mBAAmB,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,iBAAiB,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,oBAAoB,CAAC,EAAU;QAC7B,OAAO,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC9C,CAAC;IACO,gBAAgB,CACtB,KAAoC,EACpC,EAAU;QAEV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,mBAAmB,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,CAC/C,CAAC;QAC9B,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC7F,CAAC;IAED,oBAAoB,CAAC,MAAe;QAClC,MAAM,KAAK,GAAG,MAAwD,CAAC;QACvE,IAAI,OAAO,KAAK,EAAE,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC5D,IAAI,UAAU;gBAAE,OAAO,UAAU,CAAC;QACpC,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,EAAE,KAAuD,CAAC;QAC7E,IAAI,KAAK,EAAE,IAAI,KAAK,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC3F,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO;YACV,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,8BAA8B,IAAI,EAAE,CAAC,EAAE;gBACnE,IAAI,EAAE,wBAAwB;gBAC9B,MAAM,EAAE,GAAG;gBACX,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,CAAC,GAAG,uCAAuC,CAAC;aAC9D,CAAC,CAAC;QACL,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACzE,OAAO,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,eAAe,CAAC,KAAiD;QAC/D,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IACD,aAAa,CAAC,EAAU,EAAE,IAAY;QACpC,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IACD,aAAa,CAAC,EAAU,EAAE,cAAmC;QAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,CAAC;IAClD,CAAC;IAED,kBAAkB,CAAC,KAAkD;QACnE,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;QACrF,2EAA2E;QAC3E,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAChF,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACvF,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,IAAI,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAC7B,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;IACpF,CAAC;IAED,YAAY,CAAC,KAAkD;QAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;QACxE,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YACV,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC;gBAC7B,IAAI;gBACJ,cAAc,EAAE,wBAAwB,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACxD,QAAQ,EAAE,eAAe;aAC1B,CAAC,CAAC,OAAO,CAAC;QACb,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAE,CAAC;QACxD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAC1D,CAAC;IAED,oBAAoB;QAClB,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,WAAW,EAAE,CAAC;QACnD,MAAM,QAAQ,GAAmC,EAAE,CAAC;QACpD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,OAAO;gBAAE,SAAS;YAC3D,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,QAAQ,CAAC,IAAI,CAAC;oBACZ,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,IAAI,EAAE,sBAAsB;oBAC5B,OAAO,EAAE,kCAAkC,OAAO,CAAC,IAAI,EAAE;iBAC1D,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACpB,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CACvE,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC/B,CAAC;IACD,WAAW;QACT,OAAO,IAAI,CAAC,oBAAoB,EAAE,CAAC,OAAO,CAAC;IAC7C,CAAC;IACD,iBAAiB;QACf,OACE,IAAI,CAAC,KAAK;aACP,OAAO,CAAC,yCAAyC,eAAe,sBAAsB,CAAC;aACvF,GAAG,EACP,CAAC,GAAG,CAAC,UAAkB,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,CAAC,EAAU;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,EAAU;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC;IACD,QAAQ,CAAC,EAAU;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAChD,CAAC;IACD,iBAAiB,CAAC,EAAU;QAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IACzD,CAAC;IACD,UAAU,CAAC,EAAU,EAAE,MAAc,EAAE,KAAK,GAAoB,EAAE;QAChE,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9D,CAAC;IACD,qBAAqB,CAAC,EAAU,EAAE,KAAkD;QAClF,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,qBAAqB,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IACD,YAAY,CAAC,EAAU,EAAE,KAAwB;QAC/C,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IACD,WAAW,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,aAAa,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,WAAW,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,iBAAiB,CAAC,EAAU,EAAE,IAAY,EAAE,IAAY,EAAE,OAAgB;QACxE,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IACD,cAAc,CAAC,QAAiB,EAAE,MAAe;QAC/C,MAAM,EAAE,GAAG,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3E,MAAM,IAAI,GAAG,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,OAAO,CACL,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CACnF,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IACD,WAAW,CAAC,EAAU,EAAE,KAAa;QACnC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IACD,mBAAmB,CACjB,EAAU,EACV,OAA6D;QAE7D,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IACD,SAAS,CAAC,EAAU,EAAE,SAAS,GAAkB,IAAI;QACnD,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACzD,CAAC;IACD,aAAa,CAAC,EAAU;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,aAAa,CACX,EAAU,EACV,SAAiB,EACjB,QAAgB,EAChB,QAAwB,EACxB,SAAS,GAAkB,IAAI;QAE/B,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC;IACD,oBAAoB,CAClB,EAAU,EACV,SAAiB,EACjB,SAAwB,EACxB,MAAc;QAEd,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,oBAAoB,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAChF,CAAC;IACD,cAAc,CAAC,EAAU,EAAE,SAAiB,EAAE,SAAwB;QACpE,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,IAAI,CAAC;IAC9E,CAAC;IACD,wBAAwB,CAAC,EAAU;QACjC,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,wBAAwB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IAChE,CAAC;IACD,iBAAiB,CACf,EAAU,EACV,UAA8D;QAE9D,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IACtD,CAAC;IACD,cAAc,CAAC,EAAU;QACvB,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC;IAED,4BAA4B,CAAC,SAAiB,EAAE,KAAa;QAC3D,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,4BAA4B,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAClF,CAAC;IACD,yBAAyB,CAAC,SAAiB,EAAE,KAAa;QACxD,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/E,CAAC;IACO,UAAU,CAAC,KAAuE;QACxF,IAAI,QAAQ,GAAG,CAAC,EACd,WAAW,GAAG,CAAC,CAAC;QAClB,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;YACnD,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;YAC5B,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC;QACpC,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;IAC9E,CAAC;IACO,eAAe;QACrB,OACE,IAAI,CAAC,KAAK;aACP,OAAO,CACN;mGACyF,CAC1F;aACA,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,CAClC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IACD,wCAAwC;QACtC,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3C,IAAI,WAAW,CAAC,MAAM;YACpB,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,KAAK,CACP,0EAA0E,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACnG,EACD,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,2BAA2B,EAAE,CACnD,CAAC;IACN,CAAC;IACD,2BAA2B,CAAC,SAAiB,EAAE,SAAiB;QAC9D,IAAI,CAAC,wCAAwC,EAAE,CAAC;QAChD,IAAI,cAAc,GAAG,CAAC,EACpB,mBAAmB,GAAG,CAAC,CAAC;QAC1B,KAAK,MAAM,UAAU,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,2BAA2B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC9F,cAAc,IAAI,MAAM,CAAC,cAAc,CAAC;YACxC,mBAAmB,IAAI,MAAM,CAAC,mBAAmB,CAAC;QACpD,CAAC;QACD,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACjD,CAAC;IACD,mBAAmB,CAAC,eAAqC,EAAE,MAAoB;QAC7E,OAAO,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC;IACtE,CAAC;IACD,gBAAgB,CAAC,MAAoB;QACnC,OAAO,oBAAoB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,mBAAmB;QACjB,OACE,IAAI,CAAC,KAAK;aACP,OAAO,CACN;gFACsE,CACvE;aACA,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,CAClC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IACD,uBAAuB;QACrB,MAAM,OAAO,GAA+D,EAAE,CAAC;QAC/E,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,2BAA2B,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,IAAI,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,SAAS;YACjD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACrC,OAAO,CAAC,IAAI,CAAC;gBACX,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,0BAA0B;aAC7E,CAAC,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;8EAC0E;IAC1E,mBAAmB;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK;aACpB,OAAO,CACN;wBACgB,eAAe;;0FAEmD,CACnF;aACA,GAAG,EAAsD,CAAC;QAC7D,OAAO,6BAA6B,CAClC,IAAI,EACJ,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACjB,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE;YAC/B,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD,CAAC,CAAC,CACJ,CAAC;IACJ,CAAC;IAEO,SAAS,CAAC,EAAU;QAC1B,MAAM,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,CAAC;IACO,OAAO,CAAC,EAAU;QACxB,MAAM,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7C,CAAC;IACO,aAAa,CAAC,EAAU;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC;YAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACjF,OAAO,CAAC,CAAC;IACX,CAAC;IACO,WAAW,CAAC,EAAU;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,CAAC;YAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QAC/E,OAAO,CAAC,CAAC;IACX,CAAC;CACF"}
1
+ {"version":3,"file":"project-router.js","sourceRoot":"","sources":["../../src/store/project-router.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type Project, type ProjectNesting, type ControlProjectRemoveReceipt } from "@claudexor/schema";
1
+ import { type Project, type ProjectNesting, type Thread, type ControlProjectRemoveReceipt } from "@claudexor/schema";
2
2
  import { type ProjectMutation, type ProjectRegistration } from "../projects.js";
3
3
  import type { BlobFiles } from "./blob-files.js";
4
4
  import { type SqlWriteContext } from "./mutation.js";
@@ -31,6 +31,20 @@ export declare class SqlProjectStore {
31
31
  }): ProjectRegistration;
32
32
  relink(id: string, rootInput: string): Project;
33
33
  unregister(id: string): Project | undefined;
34
+ private unregisterInTx;
34
35
  remove(id: string, activeRunRoots: ReadonlySet<string>): ControlProjectRemoveReceipt;
36
+ /** #333 explicit opt-in: purge the threads already in the trash and retire
37
+ * the generation in ONE transaction. A thread outside the trash, or any
38
+ * queued/running command of the partition (a turn, an Apply delivery, a run
39
+ * under a former root), refuses before any change: purge deletes directories
40
+ * that work uses. Directory cleanup follows the commit via the purge owner. */
41
+ removeWithTrashedThreads(id: string, activeRunRoots: ReadonlySet<string>): ProjectRemoval;
42
+ private removable;
43
+ }
44
+ /** The opted-in removal's committed decision and each purged thread's
45
+ * pre-purge record, which the purge owner's directory cleanup consumes. */
46
+ export interface ProjectRemoval {
47
+ receipt: ControlProjectRemoveReceipt;
48
+ purged: Thread[];
35
49
  }
36
50
  //# sourceMappingURL=projects.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/store/projects.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,cAAc,EAEnB,KAAK,2BAA2B,EACjC,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,OAAO,EAAmC,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAsC,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C,MAAM,MAAM,mBAAmB,GAC7B,oBAAoB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAErE;+EAC+E;AAC/E,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACzB,eAAe,CAqDjB;AAED,oFAAoF;AACpF,qBAAa,eAAe;IAExB,QAAQ,CAAC,KAAK,EAAE,WAAW;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS;IACzB,QAAQ,CAAC,WAAW,EAAE,WAAW;IAHnC,YACW,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EAC/B;IAEJ,MAAM,IAAI,mBAAmB,CAI5B;IAED,IAAI,IAAI,OAAO,EAAE,CAKhB;IAED,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAKnC;IAED,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAK5C;IAED,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,EAAE,CAEvC;IACD,eAAe,IAAI,KAAK,CAAC,OAAO,GAAG;QAAE,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC,CAIhE;IAED,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAKhD;IAED,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,mBAAmB,CA4D/F;IAED,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAuC7C;IAED,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAa1C;IAED,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,2BAA2B,CA0CnF;CACF"}
1
+ {"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/store/projects.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,MAAM,EACX,KAAK,2BAA2B,EACjC,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAsC,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAI9C,MAAM,MAAM,mBAAmB,GAC7B,oBAAoB,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;AAErE;+EAC+E;AAC/E,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,eAAe,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,EACZ,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,GACzB,eAAe,CAqDjB;AAED,oFAAoF;AACpF,qBAAa,eAAe;IAExB,QAAQ,CAAC,KAAK,EAAE,WAAW;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS;IACzB,QAAQ,CAAC,WAAW,EAAE,WAAW;IAHnC,YACW,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EAC/B;IAEJ,MAAM,IAAI,mBAAmB,CAI5B;IAED,IAAI,IAAI,OAAO,EAAE,CAKhB;IAED,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAKnC;IAED,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAK5C;IAED,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,cAAc,EAAE,CAEvC;IACD,eAAe,IAAI,KAAK,CAAC,OAAO,GAAG;QAAE,OAAO,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC,CAIhE;IAED,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAKhD;IAED,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,mBAAmB,CA4D/F;IAED,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAuC7C;IAED,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAM1C;IAED,OAAO,CAAC,cAAc;IAStB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,2BAA2B,CAqBnF;IAED;;;;mFAI+E;IAC/E,wBAAwB,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,cAAc,CA2CxF;IAED,OAAO,CAAC,SAAS;CAalB;AAED;2EAC2E;AAC3E,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,2BAA2B,CAAC;IACrC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB"}
@@ -1,11 +1,12 @@
1
1
  import { randomUUID } from "node:crypto";
2
2
  import { Project as ProjectSchema, Thread as ThreadSchema, SCHEMA_VERSION, } from "@claudexor/schema";
3
3
  import { hashJson, newId, nowIso } from "@claudexor/util";
4
+ import { reduceThreadLifecycle } from "../thread-lifecycle.js";
4
5
  import { canonicalRoot, assertNotClaudexorOwned, parseMutation, projectNesting, validateKey, } from "../projects.js";
5
6
  import { prepareEvent, appendPreparedEventInTx } from "./event-store.js";
6
7
  import { archiveGenerationInTx, globalGeneration, requireServedGeneration } from "./generations.js";
7
8
  import { bindIdempotencyInTx, deleteTargetIdempotencyInTx, lookupIdempotency, } from "./idempotency.js";
8
- import { requireTransaction, runMutation } from "./mutation.js";
9
+ import { requireTransaction, runMutation, } from "./mutation.js";
9
10
  import { insertPartitionInTx, partitionById } from "./partitions.js";
10
11
  import { decodeBody, encodeBody } from "./thread-rows.js";
11
12
  import { SqlThreadStore } from "./threads.js";
@@ -194,27 +195,17 @@ export class SqlProjectStore {
194
195
  const project = this.get(id);
195
196
  if (!project)
196
197
  return undefined;
197
- const event = prepareEvent(this.blobs, {
198
- type: "project.unregistered",
199
- time: nowIso(),
200
- payload: { project },
201
- });
202
- runMutation(this.store, (tx) => {
203
- applyProjectMutation(tx, this.global().pid, "project.unregistered", { project }, event.time);
204
- appendPreparedEventInTx(tx, this.blobs, this.global().pid, event);
205
- });
198
+ const event = unregisteredEvent(this.blobs, project);
199
+ runMutation(this.store, (tx) => this.unregisterInTx(tx, project, event));
206
200
  return project;
207
201
  }
202
+ unregisterInTx(tx, project, event) {
203
+ applyProjectMutation(tx, this.global().pid, "project.unregistered", { project }, event.time);
204
+ appendPreparedEventInTx(tx, this.blobs, this.global().pid, event);
205
+ }
208
206
  remove(id, activeRunRoots) {
209
- const project = this.get(id);
210
- if (!project)
211
- throw Object.assign(new Error(`no such project: ${id}`), {
212
- code: "project_not_found",
213
- status: 404,
214
- });
215
- const partition = this.partition(id);
207
+ const { project, partition } = this.removable(id);
216
208
  if (partition) {
217
- requireServedGeneration(this.store, partition.pid);
218
209
  const n = Number(this.store
219
210
  .prepare("SELECT count(*) AS n FROM thread WHERE pid=? AND state<>'purged'")
220
211
  .get(partition.pid).n);
@@ -222,17 +213,83 @@ export class SqlProjectStore {
222
213
  throw Object.assign(new Error(`project ${id} still has ${n} thread(s); trash and purge them before removing it`), { code: "project_has_threads", status: 409 });
223
214
  }
224
215
  if (activeRunRoots.has(project.root))
225
- throw Object.assign(new Error(`project ${id} has a live or queued run; wait for it to finish before removing it`), { code: "project_has_active_run", status: 409 });
216
+ throw activeRunRefusal(id);
226
217
  this.unregister(id);
218
+ return removalReceipt(project, partition);
219
+ }
220
+ /** #333 explicit opt-in: purge the threads already in the trash and retire
221
+ * the generation in ONE transaction. A thread outside the trash, or any
222
+ * queued/running command of the partition (a turn, an Apply delivery, a run
223
+ * under a former root), refuses before any change: purge deletes directories
224
+ * that work uses. Directory cleanup follows the commit via the purge owner. */
225
+ removeWithTrashedThreads(id, activeRunRoots) {
226
+ const { project, partition } = this.removable(id);
227
+ const threads = partition
228
+ ? new SqlThreadStore(this.store, this.blobs, partition, this.obligations)
229
+ : null;
230
+ const trashed = [];
231
+ if (partition) {
232
+ const live = this.store
233
+ .prepare("SELECT body FROM thread WHERE pid=? AND state<>'purged' ORDER BY rowid")
234
+ .all(partition.pid).map((row) => decodeBody(row));
235
+ const outside = live.filter((thread) => thread.state !== "trashed").length;
236
+ if (outside)
237
+ throw Object.assign(new Error(`project ${id} still has ${outside} thread(s) outside the trash; trash them before removing the project with its trashed threads`), { code: "project_has_threads", status: 409 });
238
+ trashed.push(...live);
239
+ }
240
+ if (activeRunRoots.has(project.root))
241
+ throw activeRunRefusal(id);
242
+ if (partition &&
243
+ this.store
244
+ .prepare("SELECT 1 FROM command WHERE live=1 AND state IN ('queued','running') AND pid=? LIMIT 1")
245
+ .get(partition.pid))
246
+ throw activeRunRefusal(id);
247
+ const purged = trashed.map((thread) => reduceThreadLifecycle(thread, "purge"));
248
+ const prepared = threads && purged.length ? threads.prepare({ threads: purged }) : null;
249
+ const event = unregisteredEvent(this.blobs, project);
250
+ runMutation(this.store, (tx) => {
251
+ if (prepared)
252
+ threads.applyInTx(tx, prepared);
253
+ // The same pre-purge payload the single thread purge commits.
254
+ for (const thread of trashed)
255
+ this.obligations.create("purge_fs", thread.id, partition.pid, { thread });
256
+ this.unregisterInTx(tx, project, event);
257
+ });
258
+ return { receipt: removalReceipt(project, partition), purged: trashed };
259
+ }
260
+ removable(id) {
261
+ const project = this.get(id);
262
+ if (!project)
263
+ throw Object.assign(new Error(`no such project: ${id}`), {
264
+ code: "project_not_found",
265
+ status: 404,
266
+ });
267
+ const partition = this.partition(id);
227
268
  return {
228
- projectId: id,
229
- root: project.root,
230
- registryRemoved: true,
231
- journalPartitionArchived: partition !== null,
232
- archivedPartitionPath: partition ? `partition:${partition.name}@${partition.epoch}` : null,
233
- artifactsRetained: true,
234
- activeRunCheck: "snapshot",
269
+ project,
270
+ partition: partition ? requireServedGeneration(this.store, partition.pid) : null,
235
271
  };
236
272
  }
237
273
  }
274
+ function unregisteredEvent(blobs, project) {
275
+ return prepareEvent(blobs, {
276
+ type: "project.unregistered",
277
+ time: nowIso(),
278
+ payload: { project },
279
+ });
280
+ }
281
+ function activeRunRefusal(id) {
282
+ return Object.assign(new Error(`project ${id} has a live or queued run; wait for it to finish before removing it`), { code: "project_has_active_run", status: 409 });
283
+ }
284
+ function removalReceipt(project, partition) {
285
+ return {
286
+ projectId: project.id,
287
+ root: project.root,
288
+ registryRemoved: true,
289
+ journalPartitionArchived: partition !== null,
290
+ archivedPartitionPath: partition ? `partition:${partition.name}@${partition.epoch}` : null,
291
+ artifactsRetained: true,
292
+ activeRunCheck: "snapshot",
293
+ };
294
+ }
238
295
  //# sourceMappingURL=projects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/store/projects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,OAAO,IAAI,aAAa,EACxB,MAAM,IAAI,YAAY,EACtB,cAAc,GAKf,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EACL,aAAa,EACb,uBAAuB,EACvB,aAAa,EACb,cAAc,EACd,WAAW,GAGZ,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,iBAAiB,GAClB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAwB,MAAM,eAAe,CAAC;AAEtF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAA4B,MAAM,iBAAiB,CAAC;AAE/F,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAK9C;+EAC+E;AAC/E,MAAM,UAAU,oBAAoB,CAClC,GAAoB,EACpB,GAAW,EACX,IAAyB,EACzB,KAAc,EACd,IAAY,EACZ,UAA0B;IAE1B,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,QAAQ,CAAC;IAC3C,MAAM,QAAQ,GAAG,GAAG;SACjB,OAAO,CAAC,2EAA2E,CAAC;SACpF,GAAG,CAAC,OAAO,CAAC,EAAE,CAOJ,CAAC;IACd,IAAI,QAAQ,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG;QAClC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,IAAI,IAAI,KAAK,sBAAsB,EAAE,CAAC;QACpC,GAAG,CAAC,OAAO,CAAC,2DAA2D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9F,2BAA2B,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,WAAW,IAAI,IAAI;YAAE,qBAAqB,CAAC,GAAG,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;QACpF,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC;IAChG,GAAG;SACA,OAAO,CACN;;yGAEmG,CACpG;SACA,GAAG,CACF,OAAO,CAAC,EAAE,EACV,GAAG,EACH,OAAO,CAAC,IAAI,EACZ,UAAU,IAAI,QAAQ,EAAE,WAAW,IAAI,IAAI,EAC3C,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,UAAU,EAClB,UAAU,CAAC,OAAO,CAAC,EACnB,WAAW,CACZ,CAAC;IACJ,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,EAAE;YACrC,KAAK,EAAE,SAAS;YAChB,GAAG;YACH,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,aAAa,EAAE,YAAY,CAAC,aAAa;YACzC,QAAQ,EAAE,YAAY,CAAC,SAAS;YAChC,SAAS,EAAE,kBAAkB;YAC7B,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,SAAS;YAC3C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,oFAAoF;AACpF,MAAM,OAAO,eAAe;IAEf,KAAK;IACL,KAAK;IACL,WAAW;IAHtB,YACW,KAAkB,EAClB,KAAgB,EAChB,WAAwB;qBAFxB,KAAK;qBACL,KAAK;2BACL,WAAW;IACnB,CAAC;IAEJ,MAAM;QACJ,MAAM,UAAU,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACzE,OAAO,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,KAAK;aACd,OAAO,CAAC,oFAAoF,CAAC;aAC7F,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC;aACtB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAU,GAA2B,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK;aACnB,OAAO,CAAC,mEAAmE,CAAC;aAC5E,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAqC,CAAC;QAClE,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAU,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK;aACnB,OAAO,CAAC,qEAAqE,CAAC;aAC9E,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,CAAqC,CAAC;QACnF,OAAO,GAAG,CAAC,CAAC,CAAC,UAAU,CAAU,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IACnD,CAAC;IACD,eAAe;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK;aACnB,OAAO,CAAC,0EAA0E,CAAC;aACnF,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAA+C,CAAC;QAC5E,OAAO,GAAG,EAAE,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;IACtF,CAAC;IAED,QAAQ,CAAC,KAAiE;QACxE,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC;QAC9B,MAAM,SAAS,GAAG,QAAQ,CAAC;YACzB,MAAM,EAAE,KAAK,CAAC,QAAQ;YACtB,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,kBAAkB;YAC7B,GAAG,EAAE,KAAK,CAAC,cAAc;SAC1B,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,iBAAiB,CAC7B,IAAI,CAAC,KAAK,EACV,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,EACpC,aAAa,CACd,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK;iBACnB,OAAO,CACN,uFAAuF,CACxF;iBACA,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAC4C,CAAC;YACvE,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YAC9E,OAAO,EAAE,OAAO,EAAE,UAAU,CAAU,GAAG,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;QAC/F,CAAC;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;QACrB,MAAM,OAAO,GACX,QAAQ;YACR,aAAa,CAAC,KAAK,CAAC;gBAClB,cAAc,EAAE,cAAc;gBAC9B,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC;gBAChB,IAAI;gBACJ,UAAU,EAAE,GAAG;gBACf,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;QACL,MAAM,QAAQ,GAAoB;YAChC,OAAO;YACP,YAAY,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;SAClE,CAAC;QACF,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE;YACrC,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,QAAQ;SAClB,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;YAC7B,MAAM,SAAS,GAAG,QAAQ;gBACxB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,CAAC,CAAC,mBAAmB,CAAC,EAAE,EAAE;oBACtB,IAAI,EAAE,WAAW,OAAO,CAAC,EAAE,EAAE;oBAC7B,KAAK,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;oBACrC,SAAS,EAAE,OAAO,CAAC,EAAE;oBACrB,SAAS,EAAE,GAAG;iBACf,CAAC,CAAC;YACP,oBAAoB,CAAC,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YACnF,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,SAAiB;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;QACxF,MAAM,IAAI,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACtC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE;YAC1B,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,yCAAyC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE;gBAClF,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,GAAG;aACZ,CAAC,CAAC;QACL,IAAI,IAAI,KAAK,OAAO,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC;QAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAChF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QACzE,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACzF,MAAM,OAAO,GACX,IAAI,CAAC,KAAK;aACP,OAAO,CAAC,oDAAoD,CAAC;aAC7D,GAAG,CAAC,UAAU,CAAC,GAAG,CACtB;aACE,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAS,GAAG,CAAC,CAAC;aACrC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;aAC5D,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACd,YAAY,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,CAAC,IAAK,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,CACzF,CAAC;QACJ,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/E,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE;YACrC,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,MAAM,EAAE;YACd,OAAO,EAAE,EAAE,OAAO,EAAE;SACrB,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;YAC7B,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACzF,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YAClE,IAAI,QAAQ;gBAAE,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAC/B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE;YACrC,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,MAAM,EAAE;YACd,OAAO,EAAE,EAAE,OAAO,EAAE;SACrB,CAAC,CAAC;QACH,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE;YAC7B,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,sBAAsB,EAAE,EAAE,OAAO,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7F,uBAAuB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,cAAmC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO;YACV,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,EAAE,EAAE,CAAC,EAAE;gBACvD,IAAI,EAAE,mBAAmB;gBACzB,MAAM,EAAE,GAAG;aACZ,CAAC,CAAC;QACL,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACrC,IAAI,SAAS,EAAE,CAAC;YACd,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;YACnD,MAAM,CAAC,GAAG,MAAM,CAEZ,IAAI,CAAC,KAAK;iBACP,OAAO,CAAC,kEAAkE,CAAC;iBAC3E,GAAG,CAAC,SAAS,CAAC,GAAG,CACrB,CAAC,CAAC,CACJ,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,KAAK,CACP,WAAW,EAAE,cAAc,CAAC,qDAAqD,CAClF,EACD,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,GAAG,EAAE,CAC7C,CAAC;QACN,CAAC;QACD,IAAI,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,MAAM,CAAC,MAAM,CACjB,IAAI,KAAK,CACP,WAAW,EAAE,qEAAqE,CACnF,EACD,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,GAAG,EAAE,CAChD,CAAC;QACJ,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACpB,OAAO;YACL,SAAS,EAAE,EAAE;YACb,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,eAAe,EAAE,IAAI;YACrB,wBAAwB,EAAE,SAAS,KAAK,IAAI;YAC5C,qBAAqB,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI;YAC1F,iBAAiB,EAAE,IAAI;YACvB,cAAc,EAAE,UAAU;SAC3B,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"projects.js","sourceRoot":"","sources":["../../src/store/projects.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"publish-blob.d.ts","sourceRoot":"","sources":["../../src/store/publish-blob.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAa,MAAM,iBAAiB,CAAC;AAGvD,OAAO,EAAE,WAAW,EAA0B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EASL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,gFAAgF;AAChF,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IALxB,YACmB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAGzD;IAED,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,eAAe,CAiC5F;IAED,4FAA4F;IAC5F,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,eAAe,CAYhD;IAED,OAAO,CAAC,OAAO;IAkEf,mGAAmG;IACnG,SAAS,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,GAAG,IAAI,CAQ9C;IAED,OAAO,CAAC,QAAQ;IAiDhB,OAAO,CAAC,OAAO;CAUhB"}
1
+ {"version":3,"file":"publish-blob.d.ts","sourceRoot":"","sources":["../../src/store/publish-blob.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAa,MAAM,iBAAiB,CAAC;AAGvD,OAAO,EAAE,WAAW,EAA0B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC3F,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,gFAAgF;AAChF,qBAAa,WAAW;IAEpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK;IALxB,YACmB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,SAAS,EAChB,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAGzD;IAED,6FAA6F;IAC7F,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,eAAe,CAiC5F;IAED,4FAA4F;IAC5F,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,eAAe,CAYhD;IAED,OAAO,CAAC,OAAO;IA4Df,mGAAmG;IACnG,SAAS,CAAC,IAAI,EAAE,SAAS,aAAa,EAAE,GAAG,IAAI,CAQ9C;IAED,OAAO,CAAC,QAAQ;IAiDhB,OAAO,CAAC,OAAO;CAUhB"}
@@ -4,7 +4,7 @@ import { hashJson, newId } from "@claudexor/util";
4
4
  import { sha256Hex } from "./blob-files.js";
5
5
  import { bindIdempotencyInTx } from "./idempotency.js";
6
6
  import { runMutation } from "./mutation.js";
7
- import { assertContentAllowed, putResourceInTx, putUploadInTx, readResourceRow, readUploadRow, resourceError, resourceSha, verifiedResourceBytes, } from "./resource-rows.js";
7
+ import { putResourceInTx, putUploadInTx, readResourceRow, readUploadRow, resourceError, resourceSha, verifiedResourceBytes, } from "./resource-rows.js";
8
8
  import { uploadKeyDigest } from "./upload-binding-retention.js";
9
9
  /** One publication identity across tx1, link, tx2, restart and exact replay. */
10
10
  export class PublishBlob {
@@ -69,13 +69,6 @@ export class PublishBlob {
69
69
  const bytes = readFileSync(this.uploads.partPath(id));
70
70
  if (bytes.length !== upload.status.expectedBytes)
71
71
  throw resourceError("uploaded file no longer matches declared size", 409, "upload_size_mismatch");
72
- try {
73
- assertContentAllowed(upload.request, bytes);
74
- }
75
- catch (error) {
76
- this.uploads.cancel(id);
77
- throw error;
78
- }
79
72
  const sha = sha256Hex(bytes);
80
73
  if (expectedSha256 !== undefined && expectedSha256 !== `sha256:${sha}`)
81
74
  throw resourceError("uploaded byte digest does not match expectedSha256", 409, "digest_mismatch");
@@ -148,8 +141,8 @@ export class PublishBlob {
148
141
  }
149
142
  const sha = resourceSha(resource);
150
143
  const path = this.blobs.filePath(sha);
151
- const bytes = verifiedResourceBytes(resource, existsSync(path) ? path : this.uploads.partPath(upload.status.uploadId));
152
- assertContentAllowed(resource, bytes);
144
+ // Integrity: the bytes being published are exactly the finalized digest.
145
+ verifiedResourceBytes(resource, existsSync(path) ? path : this.uploads.partPath(upload.status.uploadId));
153
146
  const linked = this.blobs.publishLink(this.uploads.partPath(upload.status.uploadId), sha);
154
147
  const generation = effects ? effects.register(this.blobs.dir) : linked.generation;
155
148
  // The part stays through the durability barrier. Only the post-clear hook removes it.