reactor-effect-client 0.3.0-rc.0 → 0.3.1

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 (66) hide show
  1. package/README.md +10 -4
  2. package/dist/SessionTypes.d.ts +4 -0
  3. package/dist/SessionTypes.d.ts.map +1 -1
  4. package/dist/SessionTypes.js.map +1 -1
  5. package/dist/h3/_internal/client.d.ts.map +1 -1
  6. package/dist/h3/_internal/client.js +125 -68
  7. package/dist/h3/_internal/client.js.map +1 -1
  8. package/dist/h3/_internal/contracts.d.ts +13 -0
  9. package/dist/h3/_internal/contracts.d.ts.map +1 -1
  10. package/dist/h3/_internal/contracts.js +10 -0
  11. package/dist/h3/_internal/contracts.js.map +1 -1
  12. package/dist/h3/_internal/deployment.d.ts.map +1 -1
  13. package/dist/h3/_internal/deployment.js +21 -5
  14. package/dist/h3/_internal/deployment.js.map +1 -1
  15. package/dist/h3/_internal/operations.d.ts +13 -3
  16. package/dist/h3/_internal/operations.d.ts.map +1 -1
  17. package/dist/h3/_internal/operations.js +72 -34
  18. package/dist/h3/_internal/operations.js.map +1 -1
  19. package/dist/h3/_internal/references.d.ts +9 -3
  20. package/dist/h3/_internal/references.d.ts.map +1 -1
  21. package/dist/h3/_internal/references.js +134 -6
  22. package/dist/h3/_internal/references.js.map +1 -1
  23. package/dist/h3/_internal/request.d.ts +9 -4
  24. package/dist/h3/_internal/request.d.ts.map +1 -1
  25. package/dist/h3/_internal/request.js +28 -10
  26. package/dist/h3/_internal/request.js.map +1 -1
  27. package/dist/h3/index.d.ts +3 -3
  28. package/dist/h3/index.d.ts.map +1 -1
  29. package/dist/h3/index.js +2 -2
  30. package/dist/h3/index.js.map +1 -1
  31. package/dist/h3/profile.d.ts +37 -0
  32. package/dist/h3/profile.d.ts.map +1 -1
  33. package/dist/h3/profile.js +44 -0
  34. package/dist/h3/profile.js.map +1 -1
  35. package/dist/h3/types.d.ts +41 -10
  36. package/dist/h3/types.d.ts.map +1 -1
  37. package/dist/orchestration/h3-source.d.ts.map +1 -1
  38. package/dist/orchestration/h3-source.js +7 -4
  39. package/dist/orchestration/h3-source.js.map +1 -1
  40. package/dist/orchestration/index.d.ts +1 -1
  41. package/dist/orchestration/index.d.ts.map +1 -1
  42. package/dist/orchestration/index.js +1 -1
  43. package/dist/orchestration/index.js.map +1 -1
  44. package/dist/orchestration/request.d.ts +13 -0
  45. package/dist/orchestration/request.d.ts.map +1 -1
  46. package/dist/orchestration/request.js +15 -0
  47. package/dist/orchestration/request.js.map +1 -1
  48. package/dist/session.d.ts.map +1 -1
  49. package/dist/session.js +5 -1
  50. package/dist/session.js.map +1 -1
  51. package/dist/simulation/_internal/source.d.ts.map +1 -1
  52. package/dist/simulation/_internal/source.js +13 -1
  53. package/dist/simulation/_internal/source.js.map +1 -1
  54. package/dist/stats.d.ts +19 -0
  55. package/dist/stats.d.ts.map +1 -1
  56. package/dist/stats.js +75 -3
  57. package/dist/stats.js.map +1 -1
  58. package/dist/testing/Wav.d.ts +14 -0
  59. package/dist/testing/Wav.d.ts.map +1 -0
  60. package/dist/testing/Wav.js +37 -0
  61. package/dist/testing/Wav.js.map +1 -0
  62. package/dist/testing/index.d.ts +2 -0
  63. package/dist/testing/index.d.ts.map +1 -1
  64. package/dist/testing/index.js +1 -0
  65. package/dist/testing/index.js.map +1 -1
  66. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/h3/_internal/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.js","sourceRoot":"","sources":["../../../src/h3/_internal/contracts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/deployment.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAc5C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,UAAW,OAAO,KAAG,QA0HnD,CAAC"}
1
+ {"version":3,"file":"deployment.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/deployment.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAc5C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,UAAW,OAAO,KAAG,QAoJnD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import * as Predicate from "effect/Predicate";
2
2
  import { ReactorError } from "../../errors.js";
3
3
  import { jsonObject } from "../../json.js";
4
- import { documentedVersion, modelName, referenceLimits, source } from "../profile.js";
4
+ import { audioReferenceLimits, documentedVersion, modelName, referenceLimits, source, } from "../profile.js";
5
5
  import { deploymentCommands, messageShapes } from "./contracts.js";
6
6
  const incompatible = (location) => {
7
7
  throw ReactorError.fromCode("UnsupportedCapability", `Deployment does not structurally support H3 ${documentedVersion}: ${location}`, { operation: "H3 schema", outcome: "not-submitted" });
@@ -61,10 +61,15 @@ export const validateDeployment = (input) => {
61
61
  if (expected.nullable !== true && nullable)
62
62
  return incompatible(`${location} nullability`);
63
63
  if (expected.type === "array") {
64
- if (location === "command enqueue.reference_images" &&
64
+ const counted = location === "command enqueue.reference_images"
65
+ ? referenceLimits.maxImages
66
+ : location === "command enqueue.reference_audios"
67
+ ? audioReferenceLimits.maxAudio
68
+ : undefined;
69
+ if (counted !== undefined &&
65
70
  ((typeof actual.minItems === "number" && actual.minItems > 0) ||
66
- (typeof actual.maxItems === "number" && actual.maxItems < referenceLimits.maxImages)))
67
- return incompatible("command enqueue.reference_images count bounds");
71
+ (typeof actual.maxItems === "number" && actual.maxItems < counted)))
72
+ return incompatible(`${location} count bounds`);
68
73
  if (expected.items !== undefined)
69
74
  check(actual.items, expected.items, `${location} items`, depth + 1);
70
75
  }
@@ -94,13 +99,23 @@ export const validateDeployment = (input) => {
94
99
  check(schema, shape, `message ${name}`);
95
100
  messageSchemas.set(name, schema);
96
101
  }
102
+ const declared = new Set();
97
103
  for (const command of deploymentCommands) {
98
104
  const { name } = command;
99
105
  const post = record(record(paths[`/events/${name}`], `command ${name}`).post, `command ${name}`);
100
106
  if (post.operationId !== name)
101
107
  return incompatible(`command ${name} operationId`);
102
108
  const args = bodySchema(post.requestBody, `command ${name}`);
103
- check(args, command.args, `command ${name}`);
109
+ // A capability argument the deployment leaves undeclared is not checked;
110
+ // the contract records that requests may not use it.
111
+ const properties = resolve(args, `command ${name}`).properties;
112
+ const present = command.capabilities.filter((argument) => Predicate.isObject(properties) && Object.hasOwn(properties, argument));
113
+ for (const argument of present)
114
+ declared.add(`${name}.${argument}`);
115
+ check(args, {
116
+ ...command.args,
117
+ fields: Object.fromEntries(Object.entries(command.args.fields ?? {}).filter(([field]) => !command.capabilities.includes(field) || present.includes(field))),
118
+ }, `command ${name}`);
104
119
  const required = resolve(args, `command ${name}`).required ?? [];
105
120
  if (!Array.isArray(required) || required.some((key) => !command.supplied.includes(String(key))))
106
121
  return incompatible(`command ${name} unsupported required argument`);
@@ -124,6 +139,7 @@ export const validateDeployment = (input) => {
124
139
  documentedVersion,
125
140
  source,
126
141
  subset: "prompt-and-images",
142
+ referenceAudio: declared.has("enqueue.reference_audios"),
127
143
  deployment: Object.freeze({
128
144
  title: typeof info.title === "string" ? info.title : null,
129
145
  version: typeof info.version === "string" ? info.version : null,
@@ -1 +1 @@
1
- {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../src/h3/_internal/deployment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployment.js","sourceRoot":"","sources":["../../../src/h3/_internal/deployment.ts"],"names":[],"mappings":"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"}
@@ -8,9 +8,9 @@ import type { Acceptance, ClipOperation } from "../types.js";
8
8
  import type { AcceptanceIdentity } from "./evidence.js";
9
9
  /**
10
10
  * Clip operations keyed by submission: a retained, bounded projection of the
11
- * reducer's evidence, written only from the reducer's synchronous path. Nothing
12
- * reads it back: it is neither the provider's acceptance authority nor its
13
- * clip state.
11
+ * provider's evidence, written only synchronously, on the provider's own paths.
12
+ * Nothing reads it back: it is neither the provider's acceptance authority nor
13
+ * its clip state.
14
14
  */
15
15
  export declare class Operations {
16
16
  private readonly capacity;
@@ -26,8 +26,16 @@ export declare class Operations {
26
26
  abandon(id: string): void;
27
27
  /** The enqueue's own result: a definite failure decides the operation without a clip. */
28
28
  settle(id: string, exit: Exit.Exit<Acceptance, unknown>): void;
29
+ /**
30
+ * Evidence the provider holds until the enqueue's reply decides the
31
+ * acceptance: the clip's facts are recorded meanwhile, and resolve once the
32
+ * acceptance does.
33
+ */
34
+ identify(acceptance: Acceptance): void;
29
35
  /** The acceptance the provider recorded, on the same path that records it. */
30
36
  accept(acceptance: Acceptance): void;
37
+ /** Stop following a record's clip. */
38
+ private forget;
31
39
  /**
32
40
  * A clip carrying a submission's exact metadata and prompt, after its pending
33
41
  * acceptance expired or in a later transport generation of the same session.
@@ -39,6 +47,8 @@ export declare class Operations {
39
47
  private fact;
40
48
  private advance;
41
49
  private end;
50
+ /** Resolve what a record established, once its acceptance is decided. */
51
+ private publish;
42
52
  /** The provider retired: what evidence did not decide is Indeterminate. */
43
53
  retire(): void;
44
54
  private release;
@@ -1 +1 @@
1
- {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/operations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,EAA6B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAY,aAAa,EAA6B,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AA4BxD;;;;;GAKG;AACH,qBAAa,UAAU;IAIT,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAE7D,YAA6B,QAAQ,EAAE,MAAM,EAAI;IAEjD;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CA4B1C;IAED,yDAAyD;IACzD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAGxB;IAED,yFAAyF;IACzF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,IAAI,CAW7D;IAED,8EAA8E;IAC9E,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAMnC;IAED;;;;OAIG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAiB/D;IAED,6DAA6D;IAC7D,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CA8B3D;IAED,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,OAAO;IAef,OAAO,CAAC,GAAG;IAwBX,2EAA2E;IAC3E,MAAM,IAAI,IAAI,CAQb;IAED,OAAO,CAAC,OAAO;IASf,wFAAwF;IACxF,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAyC1E;CACF"}
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/operations.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAC;AAC3C,OAAO,EAA6B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAY,aAAa,EAA6B,MAAM,aAAa,CAAC;AAClG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAiCxD;;;;;GAKG;AACH,qBAAa,UAAU;IAIT,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAHrC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAE7D,YAA6B,QAAQ,EAAE,MAAM,EAAI;IAEjD;;;OAGG;IACH,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CA6B1C;IAED,yDAAyD;IACzD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAGxB;IAED,yFAAyF;IACzF,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,IAAI,CAgB7D;IAED;;;;OAIG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAKrC;IAED,8EAA8E;IAC9E,MAAM,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAOnC;IAED,sCAAsC;IACtC,OAAO,CAAC,MAAM;IAKd;;;;OAIG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAiB/D;IAED,6DAA6D;IAC7D,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CA8B3D;IAED,OAAO,CAAC,IAAI;IAIZ,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,GAAG;IAOX,yEAAyE;IACzE,OAAO,CAAC,OAAO;IAwBf,2EAA2E;IAC3E,MAAM,IAAI,IAAI,CAQb;IAED,OAAO,CAAC,OAAO;IAKf,wFAAwF;IACxF,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CA8C1E;CACF"}
@@ -2,15 +2,18 @@ import * as Deferred from "effect/Deferred";
2
2
  import * as Effect from "effect/Effect";
3
3
  import * as Exit from "effect/Exit";
4
4
  import { ClipEnded, CommandFailure, ReactorError } from "../../errors.js";
5
- const settledRecord = (record) => record.ended !== undefined || record.indeterminate || record.rejected;
5
+ /** Nothing more can change it: its clip ended once accepted, or it was decided without one. */
6
+ const settledRecord = (record) => (record.ended !== undefined && record.acceptance !== undefined) ||
7
+ record.indeterminate ||
8
+ record.rejected;
6
9
  const indeterminate = () => ReactorError.fromCode("Indeterminate", "H3 provider retired before the clip's evidence", {
7
10
  operation: "clip operation",
8
11
  });
9
12
  /**
10
13
  * Clip operations keyed by submission: a retained, bounded projection of the
11
- * reducer's evidence, written only from the reducer's synchronous path. Nothing
12
- * reads it back: it is neither the provider's acceptance authority nor its
13
- * clip state.
14
+ * provider's evidence, written only synchronously, on the provider's own paths.
15
+ * Nothing reads it back: it is neither the provider's acceptance authority nor
16
+ * its clip state.
14
17
  */
15
18
  export class Operations {
16
19
  capacity;
@@ -41,6 +44,7 @@ export class Operations {
41
44
  this.records.set(identity.id, {
42
45
  identity,
43
46
  acceptance: undefined,
47
+ clipId: undefined,
44
48
  generated: undefined,
45
49
  started: undefined,
46
50
  ended: undefined,
@@ -70,19 +74,42 @@ export class Operations {
70
74
  if (failure.success.context.outcome === "unknown")
71
75
  return;
72
76
  record.rejected = true;
73
- // No clip will ever carry this submission: every fact fails with the enqueue's failure.
77
+ this.forget(record);
78
+ // No clip will ever carry this submission: every fact fails with the enqueue's
79
+ // failure, and what a clip showed before the refusal is not its fact.
80
+ record.generated = undefined;
81
+ record.started = undefined;
82
+ record.ended = undefined;
74
83
  Deferred.doneUnsafe(record.accepted, Effect.fail(failure.success));
75
84
  for (const deferred of [record.reachedGenerated, record.reachedStarted, record.finished])
76
85
  Deferred.doneUnsafe(deferred, Effect.fail(failure.success));
77
86
  }
87
+ /**
88
+ * Evidence the provider holds until the enqueue's reply decides the
89
+ * acceptance: the clip's facts are recorded meanwhile, and resolve once the
90
+ * acceptance does.
91
+ */
92
+ identify(acceptance) {
93
+ const record = this.records.get(acceptance.submissionId);
94
+ if (record === undefined || record.clipId !== undefined || record.rejected)
95
+ return;
96
+ record.clipId = acceptance.clip.clip_id;
97
+ this.byClip.set(record.clipId, record);
98
+ }
78
99
  /** The acceptance the provider recorded, on the same path that records it. */
79
100
  accept(acceptance) {
80
101
  const record = this.records.get(acceptance.submissionId);
81
102
  if (record === undefined || record.acceptance !== undefined)
82
103
  return;
83
104
  record.acceptance = acceptance;
84
- this.byClip.set(acceptance.clip.clip_id, record);
105
+ this.identify(acceptance);
85
106
  Deferred.doneUnsafe(record.accepted, Effect.succeed(acceptance));
107
+ this.publish(record);
108
+ }
109
+ /** Stop following a record's clip. */
110
+ forget(record) {
111
+ if (record.clipId !== undefined && this.byClip.get(record.clipId) === record)
112
+ this.byClip.delete(record.clipId);
86
113
  }
87
114
  /**
88
115
  * A clip carrying a submission's exact metadata and prompt, after its pending
@@ -148,38 +175,46 @@ export class Operations {
148
175
  return;
149
176
  const fact = this.fact(clipId, message, source);
150
177
  // Started implies generated: every implied phase completes with the first evidence.
151
- if (record.generated === undefined) {
152
- record.generated = fact;
153
- Deferred.doneUnsafe(record.reachedGenerated, Effect.succeed(fact));
154
- }
155
- if (rank === 2 && record.started === undefined) {
156
- record.started = fact;
157
- Deferred.doneUnsafe(record.reachedStarted, Effect.succeed(fact));
158
- }
178
+ record.generated ??= fact;
179
+ if (rank === 2)
180
+ record.started ??= fact;
181
+ this.publish(record);
159
182
  }
160
183
  end(clipId, message, source) {
161
184
  const record = this.byClip.get(clipId);
162
185
  if (record === undefined || record.ended !== undefined || record.indeterminate)
163
186
  return;
164
- const fact = this.fact(clipId, message, source);
165
- record.ended = fact;
166
- if (message === "clip_failed" || message === "clip_popped") {
167
- const ended = new ReactorError({
187
+ record.ended = this.fact(clipId, message, source);
188
+ this.publish(record);
189
+ }
190
+ /** Resolve what a record established, once its acceptance is decided. */
191
+ publish(record) {
192
+ if (record.acceptance === undefined)
193
+ return;
194
+ const { generated, started, ended } = record;
195
+ if (generated !== undefined)
196
+ Deferred.doneUnsafe(record.reachedGenerated, Effect.succeed(generated));
197
+ if (started !== undefined)
198
+ Deferred.doneUnsafe(record.reachedStarted, Effect.succeed(started));
199
+ if (ended === undefined)
200
+ return;
201
+ if (ended.message === "clip_failed" || ended.message === "clip_popped") {
202
+ const error = new ReactorError({
168
203
  reason: new ClipEnded({
169
- message: `clip ended by ${message}`,
170
- clipId,
171
- lifecycle: message,
172
- transportGeneration: source.generation,
204
+ message: `clip ended by ${ended.message}`,
205
+ clipId: ended.clipId,
206
+ lifecycle: ended.message,
207
+ transportGeneration: ended.transportGeneration,
173
208
  }),
174
209
  context: { operation: "clip operation" },
175
210
  });
176
211
  // A phase that was not reached never will be.
177
- if (record.generated === undefined)
178
- Deferred.doneUnsafe(record.reachedGenerated, Effect.fail(ended));
179
- if (record.started === undefined)
180
- Deferred.doneUnsafe(record.reachedStarted, Effect.fail(ended));
212
+ if (generated === undefined)
213
+ Deferred.doneUnsafe(record.reachedGenerated, Effect.fail(error));
214
+ if (started === undefined)
215
+ Deferred.doneUnsafe(record.reachedStarted, Effect.fail(error));
181
216
  }
182
- Deferred.doneUnsafe(record.finished, Effect.succeed(fact));
217
+ Deferred.doneUnsafe(record.finished, Effect.succeed(ended));
183
218
  }
184
219
  /** The provider retired: what evidence did not decide is Indeterminate. */
185
220
  retire() {
@@ -195,9 +230,7 @@ export class Operations {
195
230
  }
196
231
  release(id, record) {
197
232
  this.records.delete(id);
198
- if (record.acceptance !== undefined &&
199
- this.byClip.get(record.acceptance.clip.clip_id) === record)
200
- this.byClip.delete(record.acceptance.clip.clip_id);
233
+ this.forget(record);
201
234
  }
202
235
  /** A scoped view; releasing the last holder acknowledges and releases the operation. */
203
236
  attach(id) {
@@ -216,12 +249,17 @@ export class Operations {
216
249
  accepted: Deferred.await(record.accepted),
217
250
  reached: (phase) => Deferred.await(phase === "generated" ? record.reachedGenerated : record.reachedStarted),
218
251
  ended: Deferred.await(record.finished),
252
+ // A clip's facts are the operation's once its acceptance is decided.
219
253
  facts: Effect.sync(() => Object.freeze({
220
254
  submissionId: id,
221
- ...(record.acceptance === undefined ? {} : { acceptance: record.acceptance }),
222
- ...(record.generated === undefined ? {} : { generated: record.generated }),
223
- ...(record.started === undefined ? {} : { started: record.started }),
224
- ...(record.ended === undefined ? {} : { ended: record.ended }),
255
+ ...(record.acceptance === undefined
256
+ ? {}
257
+ : {
258
+ acceptance: record.acceptance,
259
+ ...(record.generated === undefined ? {} : { generated: record.generated }),
260
+ ...(record.started === undefined ? {} : { started: record.started }),
261
+ ...(record.ended === undefined ? {} : { ended: record.ended }),
262
+ }),
225
263
  indeterminate: record.indeterminate,
226
264
  })),
227
265
  })));
@@ -1 +1 @@
1
- {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../src/h3/_internal/operations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,IAAI,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAwB1E,MAAM,aAAa,GAAG,CAAC,MAAuB,EAAW,EAAE,CACzD,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,QAAQ,CAAC;AAExE,MAAM,aAAa,GAAG,GAAiB,EAAE,CACvC,YAAY,CAAC,QAAQ,CAAC,eAAe,EAAE,gDAAgD,EAAE;IACvF,SAAS,EAAE,gBAAgB;CAC5B,CAAC,CAAC;AAEL;;;;;GAKG;AACH,MAAM,OAAO,UAAU;IAIQ,QAAQ;IAHpB,OAAO,GAAG,IAAI,GAAG,EAA2B,CAAC;IAC7C,MAAM,GAAG,IAAI,GAAG,EAA2B,CAAC;IAE7D,YAA6B,QAAgB;wBAAhB,QAAQ;IAAW,CAAC;IAEjD;;;OAGG;IACH,OAAO,CAAC,QAA4B;QAClC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO;QAC1C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACvC,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO;gBACrC,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1B,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBACzB,MAAM;gBACR,CAAC;YACH,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ;gBACpC,MAAM,YAAY,CAAC,QAAQ,CAAC,UAAU,EAAE,iCAAiC,EAAE;oBACzE,SAAS,EAAE,SAAS;oBACpB,OAAO,EAAE,eAAe;iBACzB,CAAC,CAAC;QACP,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE;YAC5B,QAAQ;YACR,UAAU,EAAE,SAAS;YACrB,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,SAAS;YAChB,aAAa,EAAE,KAAK;YACpB,QAAQ,EAAE,KAAK;YACf,OAAO,EAAE,CAAC;YACV,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE;YAC/B,gBAAgB,EAAE,QAAQ,CAAC,UAAU,EAAE;YACvC,cAAc,EAAE,QAAQ,CAAC,UAAU,EAAE;YACrC,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE;SAChC,CAAC,CAAC;IACL,CAAC;IAED,yDAAyD;IACzD,OAAO,CAAC,EAAU;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,yFAAyF;IACzF,MAAM,CAAC,EAAU,EAAE,IAAoC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAAE,OAAO;QAC5F,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,OAAO;QAC9E,IAAI,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;YAAE,OAAO;QAC1D,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;QACvB,wFAAwF;QACxF,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACnE,KAAK,MAAM,QAAQ,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;YACtF,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,8EAA8E;IAC9E,MAAM,CAAC,UAAsB;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QACzD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;YAAE,OAAO;QACpE,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IACnE,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,EAAU,EAAE,IAAU,EAAE,MAAoB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IACE,MAAM,KAAK,SAAS;YACpB,MAAM,CAAC,UAAU,KAAK,SAAS;YAC/B,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;YAC1C,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;YAEtC,OAAO;QACT,IAAI,CAAC,MAAM,CACT,MAAM,CAAC,MAAM,CAAC;YACZ,YAAY,EAAE,EAAE;YAChB,IAAI;YACJ,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,MAAM,EAAE,CAAC;SAC/D,CAAC,CACH,CAAC;IACJ,CAAC;IAED,6DAA6D;IAC7D,OAAO,CAAC,OAAuB,EAAE,MAAoB;QACnD,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO;QACjE,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO;gBACrC,IAAI,IAAI,CAAC,KAAK;oBAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACxE,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC;YAC7C,IAAI,OAAO,KAAK,IAAI;gBAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACvE,OAAO;QACT,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;QACzC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,gBAAgB;gBACnB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACvD,KAAK,cAAc;gBACjB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;YACvD,KAAK,eAAe,CAAC;YACrB,KAAK,cAAc;gBACjB,mDAAmD;gBACnD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC9C,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChD,KAAK,aAAa,CAAC;YACnB,KAAK,aAAa;gBAChB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAChD;gBACE,OAAO;QACX,CAAC;IACH,CAAC;IAEO,IAAI,CAAC,MAAc,EAAE,OAAoB,EAAE,MAAoB;QACrE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC;IAEO,OAAO,CAAC,MAAc,EAAE,OAAoB,EAAE,MAAoB,EAAE,IAAW;QACrF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa;YAAE,OAAO;QACvF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,oFAAoF;QACpF,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;YACxB,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/C,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YACtB,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAEO,GAAG,CAAC,MAAc,EAAE,OAAiB,EAAE,MAAoB;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa;YAAE,OAAO;QACvF,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACpB,IAAI,OAAO,KAAK,aAAa,IAAI,OAAO,KAAK,aAAa,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC;gBAC7B,MAAM,EAAE,IAAI,SAAS,CAAC;oBACpB,OAAO,EAAE,iBAAiB,OAAO,EAAE;oBACnC,MAAM;oBACN,SAAS,EAAE,OAAO;oBAClB,mBAAmB,EAAE,MAAM,CAAC,UAAU;iBACvC,CAAC;gBACF,OAAO,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE;aACzC,CAAC,CAAC;YACH,8CAA8C;YAC9C,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS;gBAChC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;gBAC9B,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,2EAA2E;IAC3E,MAAM;QACJ,KAAK,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;YACxD,KAAK,MAAM,QAAQ,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC;gBACtF,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YAC9D,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACnE,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC;gBAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAEO,OAAO,CAAC,EAAU,EAAE,MAAuB;QACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACxB,IACE,MAAM,CAAC,UAAU,KAAK,SAAS;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,MAAM;YAE1D,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,wFAAwF;IACxF,MAAM,CAAC,EAAU;QACf,OAAO,MAAM,CAAC,cAAc,CAC1B,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE;YAClB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACpC,IAAI,MAAM,KAAK,SAAS;gBACtB,OAAO,MAAM,CAAC,IAAI,CAChB,YAAY,CAAC,QAAQ,CACnB,cAAc,EACd,oFAAoF,EACpF,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAChC,CACF,CAAC;YACJ,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC,CAAC,EACF,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE;YACf,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,MAAM;gBAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACxF,CAAC,CAAC,CACL,CAAC,IAAI,CACJ,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAiB,EAAE,CACnC,MAAM,CAAC,MAAM,CAAC;YACZ,YAAY,EAAE,EAAE;YAChB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;YACzC,OAAO,EAAE,CAAC,KAAgB,EAAE,EAAE,CAC5B,QAAQ,CAAC,KAAK,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;YACzF,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAmB,EAAE,CACtC,MAAM,CAAC,MAAM,CAAC;gBACZ,YAAY,EAAE,EAAE;gBAChB,GAAG,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;gBAC7E,GAAG,CAAC,MAAM,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1E,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpE,GAAG,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC9D,aAAa,EAAE,MAAM,CAAC,aAAa;aACpC,CAAC,CACH;SACF,CAAC,CACH,CACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../../src/h3/_internal/operations.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import { ReactorError } from "../../errors.js";
3
3
  import type { UploadReference } from "../../wire.generated.js";
4
- import type { Reference, ValidatedReference } from "../types.js";
4
+ import type { Reference, ValidatedAudioReference, ValidatedReference } from "../types.js";
5
5
  export type Material = {
6
6
  readonly _tag: "Bytes";
7
7
  readonly bytes: Uint8Array<ArrayBuffer>;
@@ -11,8 +11,14 @@ export type Material = {
11
11
  };
12
12
  export declare const plain: (input: unknown, allowed: readonly string[]) => Record<string, unknown>;
13
13
  /** Validates wire identity and a safe JSON size projection without inventing upload provenance. */
14
- export declare const checkedUpload: (input: unknown) => UploadReference;
14
+ export declare const checkedUpload: (input: unknown, kind?: "image" | "audio") => UploadReference;
15
15
  export declare const captureReference: (input: Reference | ValidatedReference) => ValidatedReference;
16
- export declare const referenceMaterial: (reference: ValidatedReference) => Material;
16
+ export declare const captureAudioReference: (input: Reference | ValidatedAudioReference) => ValidatedAudioReference;
17
+ export declare const referenceMaterial: (reference: ValidatedReference | ValidatedAudioReference) => Material;
17
18
  export declare const validateReference: (input: Reference) => Effect.Effect<ValidatedReference, ReactorError>;
19
+ /**
20
+ * Validate an audio reference once: its container, and for WAV and FLAC its
21
+ * length and channels, so a request can reuse it without checking it again.
22
+ */
23
+ export declare const validateAudioReference: (input: Reference) => Effect.Effect<ValidatedAudioReference, ReactorError>;
18
24
  //# sourceMappingURL=references.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/references.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAe,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,OAAO,KAAK,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAOjE,MAAM,MAAM,QAAQ,GAChB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC;AA+GlE,eAAO,MAAM,KAAK,UAAW,OAAO,WAAW,SAAS,MAAM,EAAE,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAgBxF,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,eAqB9C,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAW,SAAS,GAAG,kBAAkB,KAAG,kBAoCxE,CAAC;AAEF,eAAO,MAAM,iBAAiB,cAAe,kBAAkB,KAAG,QACE,CAAC;AACrE,eAAO,MAAM,iBAAiB,UACrB,SAAS,KACf,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,YAAY,CACW,CAAC"}
1
+ {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../../src/h3/_internal/references.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,eAAe,CAAC;AACxC,OAAO,EAAe,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAO/D,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAO1F,MAAM,MAAM,QAAQ,GAChB;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;CAAE,GACnE;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAA;CAAE,CAAC;AAiMlE,eAAO,MAAM,KAAK,UAAW,OAAO,WAAW,SAAS,MAAM,EAAE,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAgBxF,CAAC;AAEF,mGAAmG;AACnG,eAAO,MAAM,aAAa,UACjB,OAAO,SACR,OAAO,GAAG,OAAO,KACtB,eAyBF,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAW,SAAS,GAAG,kBAAkB,KAAG,kBAyCxE,CAAC;AAEF,eAAO,MAAM,qBAAqB,UACzB,SAAS,GAAG,uBAAuB,KACzC,uBA8CF,CAAC;AAEF,eAAO,MAAM,iBAAiB,cACjB,kBAAkB,GAAG,uBAAuB,KACtD,QAA8E,CAAC;AAClF,eAAO,MAAM,iBAAiB,UACrB,SAAS,KACf,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,YAAY,CACW,CAAC;AAC7D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,UAC1B,SAAS,KACf,MAAM,CAAC,MAAM,CAAC,uBAAuB,EAAE,YAAY,CACW,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as Effect from "effect/Effect";
2
2
  import { parsedInput, ReactorError } from "../../errors.js";
3
- import { imageMimeTypes, referenceLimits } from "../profile.js";
3
+ import { audioMimeTypes, audioReferenceLimits, imageMimeTypes, referenceLimits, } from "../profile.js";
4
4
  const materials = new WeakMap();
5
5
  const invalid = (message) => {
6
6
  throw ReactorError.fromCode("InvalidInput", message, {
@@ -104,6 +104,80 @@ const inspectImage = (bytes) => {
104
104
  }
105
105
  return invalid("Reference must contain a supported PNG, JPEG, or WebP image");
106
106
  };
107
+ /** A WAV's length and channels, from its `fmt ` chunk and the data it holds. */
108
+ const inspectWav = (bytes) => {
109
+ if (le32(bytes, 4) + 8 > bytes.length)
110
+ return invalid("WAV is truncated");
111
+ let offset = 12, channels, byteRate, data;
112
+ while (offset + 8 <= bytes.length) {
113
+ const id = ascii(bytes, offset, 4), size = le32(bytes, offset + 4), body = offset + 8;
114
+ if (id === "fmt ") {
115
+ if (size < 16 || body + 16 > bytes.length)
116
+ return invalid("WAV format chunk is truncated");
117
+ channels = le16(bytes, body + 2);
118
+ byteRate = le32(bytes, body + 8);
119
+ }
120
+ else if (id === "data") {
121
+ // A streaming writer may leave the size at its maximum: count what is there.
122
+ data = Math.min(size, bytes.length - body);
123
+ break;
124
+ }
125
+ offset = body + size + (size % 2);
126
+ }
127
+ if (channels === undefined || byteRate === undefined || data === undefined)
128
+ return invalid("WAV has no format or data chunk");
129
+ if (channels === 0 || byteRate === 0)
130
+ return invalid("WAV format is invalid");
131
+ return { mimeType: "audio/wav", seconds: data / byteRate, channels };
132
+ };
133
+ /** A FLAC's length and channels, from its STREAMINFO block; an unknown length stays null. */
134
+ const inspectFlac = (bytes) => {
135
+ const info = 8;
136
+ if (bytes.length < info + 34 || (bytes[4] & 127) !== 0)
137
+ return invalid("FLAC has no stream info");
138
+ if (uint16(bytes, 5) * 256 + bytes[7] < 34)
139
+ return invalid("FLAC stream info is truncated");
140
+ const rate = bytes[info + 10] * 4096 + bytes[info + 11] * 16 + (bytes[info + 12] >> 4);
141
+ const channels = ((bytes[info + 12] >> 1) & 7) + 1;
142
+ const samples = (bytes[info + 13] & 15) * 0x100000000 + uint32(bytes, info + 14);
143
+ if (rate === 0)
144
+ return invalid("FLAC sample rate is invalid");
145
+ return { mimeType: "audio/flac", seconds: samples === 0 ? null : samples / rate, channels };
146
+ };
147
+ /** An Ogg stream's channels from its first page's Opus or Vorbis header; its length stays null. */
148
+ const inspectOgg = (bytes) => {
149
+ const payload = bytes.length > 26 ? 27 + bytes[26] : bytes.length;
150
+ const channels = ascii(bytes, payload, 8) === "OpusHead"
151
+ ? bytes[payload + 9]
152
+ : bytes[payload] === 1 && ascii(bytes, payload + 1, 6) === "vorbis"
153
+ ? bytes[payload + 11]
154
+ : undefined;
155
+ return { mimeType: "audio/ogg", seconds: null, channels: channels ?? null };
156
+ };
157
+ /**
158
+ * The only audio-container identification used by the provider and its loaders.
159
+ * WAV and FLAC headers give a length and channel count that are checked here;
160
+ * the other formats are recognized by their container and checked by H3.
161
+ */
162
+ const inspectAudio = (bytes) => {
163
+ if (bytes.length >= 12 && ascii(bytes, 0, 4) === "RIFF" && ascii(bytes, 8, 4) === "WAVE")
164
+ return inspectWav(bytes);
165
+ if (bytes.length >= 4 && ascii(bytes, 0, 4) === "fLaC")
166
+ return inspectFlac(bytes);
167
+ if (bytes.length >= 4 && ascii(bytes, 0, 4) === "OggS")
168
+ return inspectOgg(bytes);
169
+ if (bytes.length >= 12 && ascii(bytes, 4, 4) === "ftyp")
170
+ return { mimeType: "audio/mp4", seconds: null, channels: null };
171
+ if (bytes.length >= 4 && uint32(bytes, 0) === 0x1a45dfa3)
172
+ return { mimeType: "audio/webm", seconds: null, channels: null };
173
+ if (bytes.length >= 3 && ascii(bytes, 0, 3) === "ID3")
174
+ return { mimeType: "audio/mpeg", seconds: null, channels: null };
175
+ if (bytes.length >= 2 && bytes[0] === 255 && (bytes[1] & 246) === 240)
176
+ return { mimeType: "audio/aac", seconds: null, channels: null };
177
+ if (bytes.length >= 2 && bytes[0] === 255 && (bytes[1] & 224) === 224 && (bytes[1] & 6) !== 0)
178
+ return { mimeType: "audio/mpeg", seconds: null, channels: null };
179
+ return invalid("Audio reference must be WAV, MP3, AAC/M4A, OGG/Opus, FLAC or WebM");
180
+ };
107
181
  export const plain = (input, allowed) => {
108
182
  if (input === null ||
109
183
  typeof input !== "object" ||
@@ -120,17 +194,20 @@ export const plain = (input, allowed) => {
120
194
  return output;
121
195
  };
122
196
  /** Validates wire identity and a safe JSON size projection without inventing upload provenance. */
123
- export const checkedUpload = (input) => {
197
+ export const checkedUpload = (input, kind = "image") => {
198
+ const [mimeTypes, maxBytes] = kind === "image"
199
+ ? [imageMimeTypes, referenceLimits.maxBytes]
200
+ : [audioMimeTypes, audioReferenceLimits.maxBytes];
124
201
  const file = plain(input, ["upload_id", "name", "mime_type", "size", "_unknown"]);
125
202
  if (typeof file.upload_id !== "string" ||
126
203
  !/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(file.upload_id) ||
127
204
  typeof file.name !== "string" ||
128
205
  file.name.length === 0 ||
129
206
  file.name.length > 1024 ||
130
- !imageMimeTypes.includes(String(file.mime_type)) ||
207
+ !mimeTypes.includes(String(file.mime_type)) ||
131
208
  typeof file.size !== "bigint" ||
132
209
  file.size <= 0n ||
133
- file.size > BigInt(referenceLimits.maxBytes)) {
210
+ file.size > BigInt(maxBytes)) {
134
211
  return invalid("Uploaded reference has invalid identity, type, or size");
135
212
  }
136
213
  return Object.freeze({
@@ -141,7 +218,10 @@ export const checkedUpload = (input) => {
141
218
  });
142
219
  };
143
220
  export const captureReference = (input) => {
144
- if (input !== null && typeof input === "object" && materials.has(input))
221
+ if (input !== null &&
222
+ typeof input === "object" &&
223
+ materials.has(input) &&
224
+ input._tag === "ValidatedReference")
145
225
  return input;
146
226
  const object = plain(input, ["_tag", "bytes", "file"]);
147
227
  let material, facts;
@@ -171,11 +251,59 @@ export const captureReference = (input) => {
171
251
  };
172
252
  }
173
253
  else
174
- return invalid("Reference must be Bytes or Uploaded; reference audio is unsupported");
254
+ return invalid("Reference must be Bytes or Uploaded");
255
+ const validated = Object.freeze(facts);
256
+ materials.set(validated, material);
257
+ return validated;
258
+ };
259
+ export const captureAudioReference = (input) => {
260
+ if (input !== null &&
261
+ typeof input === "object" &&
262
+ materials.has(input) &&
263
+ input._tag === "ValidatedAudioReference")
264
+ return input;
265
+ const object = plain(input, ["_tag", "bytes", "file"]);
266
+ let material, facts;
267
+ if (object._tag === "Bytes" && object.bytes instanceof Uint8Array && object.file === undefined) {
268
+ if (object.bytes.byteLength === 0 || object.bytes.byteLength > audioReferenceLimits.maxBytes)
269
+ return invalid("Audio exceeds the 25 MiB bound");
270
+ const bytes = new Uint8Array(object.bytes), audio = inspectAudio(bytes);
271
+ if (audio.channels !== null &&
272
+ (audio.channels < 1 || audio.channels > audioReferenceLimits.maxChannels))
273
+ return invalid("Audio must be mono or stereo");
274
+ if (audio.seconds !== null &&
275
+ (audio.seconds < audioReferenceLimits.minSeconds ||
276
+ audio.seconds > audioReferenceLimits.maxSeconds))
277
+ return invalid("Audio must be 2 to 15 seconds long");
278
+ material = { _tag: "Bytes", bytes };
279
+ facts = {
280
+ _tag: "ValidatedAudioReference",
281
+ ...audio,
282
+ size: bytes.length,
283
+ };
284
+ }
285
+ else if (object._tag === "Uploaded" && object.bytes === undefined) {
286
+ const file = checkedUpload(object.file, "audio");
287
+ material = { _tag: "Uploaded", file };
288
+ facts = {
289
+ _tag: "ValidatedAudioReference",
290
+ mimeType: file.mime_type,
291
+ size: Number(file.size),
292
+ seconds: null,
293
+ channels: null,
294
+ };
295
+ }
296
+ else
297
+ return invalid("Audio reference must be Bytes or Uploaded");
175
298
  const validated = Object.freeze(facts);
176
299
  materials.set(validated, material);
177
300
  return validated;
178
301
  };
179
302
  export const referenceMaterial = (reference) => materials.get(reference) ?? invalid("Unknown validated reference");
180
303
  export const validateReference = (input) => parsedInput(() => captureReference(input), "H3 reference");
304
+ /**
305
+ * Validate an audio reference once: its container, and for WAV and FLAC its
306
+ * length and channels, so a request can reuse it without checking it again.
307
+ */
308
+ export const validateAudioReference = (input) => parsedInput(() => captureAudioReference(input), "H3 reference");
181
309
  //# sourceMappingURL=references.js.map