@happyvertical/smrt-ingestion 0.57.20 → 0.57.22

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 (115) hide show
  1. package/FEEDBACK.md +137 -0
  2. package/PROPOSALS.md +146 -5
  3. package/README.md +168 -2
  4. package/REVIEW.md +611 -7
  5. package/agents/execution.md +87 -0
  6. package/dist/chunks/{execution-NoDh3pjs.js → execution-BzVQax0n.js} +528 -42
  7. package/dist/chunks/execution-BzVQax0n.js.map +1 -0
  8. package/dist/chunks/{feedback-CJB900iG.js → feedback-D3UTF8fm.js} +175 -36
  9. package/dist/chunks/feedback-D3UTF8fm.js.map +1 -0
  10. package/dist/chunks/{proposal-errors-VxcTU6Db.js → proposal-contracts-77Uo1B1j.js} +38 -44
  11. package/dist/chunks/proposal-contracts-77Uo1B1j.js.map +1 -0
  12. package/dist/chunks/reviewer-instruction-CEc3AOuU.js +33 -0
  13. package/dist/chunks/reviewer-instruction-CEc3AOuU.js.map +1 -0
  14. package/dist/dto.d.ts +75 -0
  15. package/dist/dto.d.ts.map +1 -1
  16. package/dist/execution-contracts.d.ts +4 -1
  17. package/dist/execution-contracts.d.ts.map +1 -1
  18. package/dist/execution-dto.d.ts +16 -0
  19. package/dist/execution-dto.d.ts.map +1 -1
  20. package/dist/execution-internal.d.ts +2 -0
  21. package/dist/execution-internal.d.ts.map +1 -1
  22. package/dist/execution.d.ts +101 -4
  23. package/dist/execution.d.ts.map +1 -1
  24. package/dist/execution.js +2 -2
  25. package/dist/feedback-dto.d.ts +18 -4
  26. package/dist/feedback-dto.d.ts.map +1 -1
  27. package/dist/feedback-internal.d.ts +9 -0
  28. package/dist/feedback-internal.d.ts.map +1 -1
  29. package/dist/feedback.d.ts +10 -0
  30. package/dist/feedback.d.ts.map +1 -1
  31. package/dist/index.js +2 -2
  32. package/dist/manifest.json +339 -3
  33. package/dist/models.d.ts +15 -0
  34. package/dist/models.d.ts.map +1 -1
  35. package/dist/models.js +82 -2
  36. package/dist/models.js.map +1 -1
  37. package/dist/policy.d.ts +3 -0
  38. package/dist/policy.d.ts.map +1 -1
  39. package/dist/presented-filename.d.ts +11 -0
  40. package/dist/presented-filename.d.ts.map +1 -0
  41. package/dist/proposal-contracts.d.ts +31 -6
  42. package/dist/proposal-contracts.d.ts.map +1 -1
  43. package/dist/proposal-dto.d.ts +17 -0
  44. package/dist/proposal-dto.d.ts.map +1 -1
  45. package/dist/proposal-errors.d.ts +20 -0
  46. package/dist/proposal-errors.d.ts.map +1 -1
  47. package/dist/proposal-validation.d.ts +26 -0
  48. package/dist/proposal-validation.d.ts.map +1 -1
  49. package/dist/proposals.d.ts +6 -1
  50. package/dist/proposals.d.ts.map +1 -1
  51. package/dist/proposals.js +268 -71
  52. package/dist/proposals.js.map +1 -1
  53. package/dist/redaction.d.ts +9 -0
  54. package/dist/redaction.d.ts.map +1 -0
  55. package/dist/review-dto.d.ts +108 -5
  56. package/dist/review-dto.d.ts.map +1 -1
  57. package/dist/review-host.d.ts +52 -3
  58. package/dist/review-host.d.ts.map +1 -1
  59. package/dist/review-instruction-view.d.ts +12 -0
  60. package/dist/review-instruction-view.d.ts.map +1 -0
  61. package/dist/review-summary.d.ts.map +1 -1
  62. package/dist/reviewer-instruction.d.ts +20 -0
  63. package/dist/reviewer-instruction.d.ts.map +1 -0
  64. package/dist/server.d.ts +252 -13
  65. package/dist/server.d.ts.map +1 -1
  66. package/dist/server.js +1190 -85
  67. package/dist/server.js.map +1 -1
  68. package/dist/smrt-knowledge.json +137 -23
  69. package/dist/sources/common.d.ts +11 -0
  70. package/dist/sources/common.d.ts.map +1 -1
  71. package/dist/sources/email.d.ts.map +1 -1
  72. package/dist/sources/http.d.ts.map +1 -1
  73. package/dist/sources/watch-folder.d.ts.map +1 -1
  74. package/dist/svelte/components/ActionReview.svelte +54 -55
  75. package/dist/svelte/components/ActionReview.svelte.d.ts +8 -1
  76. package/dist/svelte/components/ActionReview.svelte.d.ts.map +1 -1
  77. package/dist/svelte/components/CandidatePicker.svelte +72 -0
  78. package/dist/svelte/components/CandidatePicker.svelte.d.ts +15 -0
  79. package/dist/svelte/components/CandidatePicker.svelte.d.ts.map +1 -0
  80. package/dist/svelte/components/EvidenceViewer.svelte +60 -4
  81. package/dist/svelte/components/EvidenceViewer.svelte.d.ts +12 -1
  82. package/dist/svelte/components/EvidenceViewer.svelte.d.ts.map +1 -1
  83. package/dist/svelte/components/InboxView.svelte +172 -19
  84. package/dist/svelte/components/InboxView.svelte.d.ts +36 -2
  85. package/dist/svelte/components/InboxView.svelte.d.ts.map +1 -1
  86. package/dist/svelte/components/IntakeInbox.svelte +6 -3
  87. package/dist/svelte/components/IntakeInbox.svelte.d.ts +4 -1
  88. package/dist/svelte/components/IntakeInbox.svelte.d.ts.map +1 -1
  89. package/dist/svelte/components/IntakeReview.svelte +4 -2
  90. package/dist/svelte/components/IntakeReview.svelte.d.ts +2 -0
  91. package/dist/svelte/components/IntakeReview.svelte.d.ts.map +1 -1
  92. package/dist/svelte/components/IntakeWorkspace.svelte +27 -0
  93. package/dist/svelte/components/IntakeWorkspace.svelte.d.ts +19 -0
  94. package/dist/svelte/components/IntakeWorkspace.svelte.d.ts.map +1 -0
  95. package/dist/svelte/components/ReviewView.svelte +653 -71
  96. package/dist/svelte/components/ReviewView.svelte.d.ts +20 -1
  97. package/dist/svelte/components/ReviewView.svelte.d.ts.map +1 -1
  98. package/dist/svelte/components/TriageView.svelte +669 -0
  99. package/dist/svelte/components/TriageView.svelte.d.ts +16 -0
  100. package/dist/svelte/components/TriageView.svelte.d.ts.map +1 -0
  101. package/dist/svelte/i18n.d.ts +56 -0
  102. package/dist/svelte/i18n.d.ts.map +1 -1
  103. package/dist/svelte/i18n.js +56 -0
  104. package/dist/svelte/index.d.ts +2 -1
  105. package/dist/svelte/index.d.ts.map +1 -1
  106. package/dist/svelte/index.js +1 -0
  107. package/dist/svelte/view-utils.d.ts +67 -0
  108. package/dist/svelte/view-utils.d.ts.map +1 -1
  109. package/dist/svelte/view-utils.js +157 -0
  110. package/package.json +13 -13
  111. package/dist/chunks/execution-NoDh3pjs.js.map +0 -1
  112. package/dist/chunks/execution-internal-DWteDHM2.js +0 -7
  113. package/dist/chunks/execution-internal-DWteDHM2.js.map +0 -1
  114. package/dist/chunks/feedback-CJB900iG.js.map +0 -1
  115. package/dist/chunks/proposal-errors-VxcTU6Db.js.map +0 -1
package/dist/server.d.ts CHANGED
@@ -1,13 +1,13 @@
1
1
  import { type AssetRuntimeLike } from '@happyvertical/smrt-assets';
2
2
  import type { DatabaseInterface } from '@happyvertical/sql';
3
- import type { AnalysisOutput, IntakeEvidenceDTO, IntakeFailure, IntakeItemDTO, IntakeLimits, ReceiptResult } from './dto.js';
3
+ import type { AnalysisOutput, InlineInterpretation, InlineInterpretationInput, IntakeEvidenceDTO, IntakeFailure, IntakeItemDTO, IntakeLimits, OwnProposalsInput, ReceiptResult } from './dto.js';
4
4
  import './models.js';
5
- import type { IntakeExecutionOptions, PreviewPlanInput, PreviewProposalInput, ReviewInput } from './execution-contracts.js';
5
+ import type { IntakeExecutionOptions, PreviewPlanInput, PreviewProposalInput, ResolveItemInput, ReviewInput, StartActionInput } from './execution-contracts.js';
6
6
  import type { FeedbackConfiguration } from './feedback-contracts.js';
7
7
  import type { AdoptRuleInput, ObserveFeedbackInput, ReadRuleInput, RecordFeedbackInput, RetrieveFeedbackInput, SuggestRuleInput } from './feedback-dto.js';
8
8
  import { type ProposalConfiguration, type ProposalReadConfiguration } from './proposal-contracts.js';
9
9
  import type { CompletedAnalysisSnapshot, PreviewGeneratedInput } from './proposal-dto.js';
10
- import type { LogicalSplitInput } from './review-dto.js';
10
+ import type { InboxState, LogicalSplitInput, ReviewerInstruction, ReviewerInstructionInput } from './review-dto.js';
11
11
  /** Authenticated host context. Never construct this from transport JSON. */
12
12
  export interface IngestionScope {
13
13
  tenantId: string;
@@ -26,23 +26,92 @@ export interface IntakePart {
26
26
  id: string;
27
27
  version: string;
28
28
  };
29
+ /** Original name as the source presented it; presentation only, never identity. */
30
+ filename?: string;
29
31
  }
32
+ /** A snapshot received by reference: the lifecycle owner keeps the bytes; no
33
+ * blob copy is preserved. Only the text/structured snapshot a stage needs is
34
+ * retained, redacted by the ordinary deletion path. The reference is identity,
35
+ * never authority. */
36
+ export interface IntakeReferencePart {
37
+ partId: string;
38
+ parentPartId?: string;
39
+ /** Host-typed owner record the snapshot was read from (for example `message`). */
40
+ reference: {
41
+ owner: string;
42
+ id: string;
43
+ version?: string;
44
+ };
45
+ snapshot: {
46
+ text: string;
47
+ } | {
48
+ structured: Record<string, unknown>;
49
+ };
50
+ }
51
+ /** Lifecycle owner for owner-bound retention; `kind` is host-typed. */
52
+ export interface IntakeOwner {
53
+ kind: string;
54
+ id: string;
55
+ }
56
+ /** Host-resolved retention. Deadlines are always required: in `owner` mode they
57
+ * are the hard privacy ceiling while `expireOwned` follows the owner's lifecycle. */
58
+ export type IntakeRetention = {
59
+ kind?: 'time';
60
+ version: string;
61
+ expiresAt: Date;
62
+ replayUntil: Date;
63
+ acceptAfter: Date;
64
+ } | {
65
+ kind: 'owner';
66
+ owner: IntakeOwner;
67
+ version: string;
68
+ expiresAt: Date;
69
+ replayUntil: Date;
70
+ acceptAfter: Date;
71
+ };
30
72
  /** Host-resolved delivery and retention policy, never untrusted content labels. */
31
73
  export interface ReceiveInput {
32
74
  sourceId: string;
33
75
  sourceVersion: string;
34
76
  deliveryKey: string;
35
77
  deliveredAt: Date;
36
- parts: IntakePart[];
78
+ parts: Array<IntakePart | IntakeReferencePart>;
37
79
  capturedCeiling: Record<string, unknown>;
38
- retention: {
39
- version: string;
40
- expiresAt: Date;
41
- replayUntil: Date;
42
- acceptAfter: Date;
43
- };
80
+ retention: IntakeRetention;
44
81
  limits: IntakeLimits;
45
82
  traceId?: string;
83
+ /** `inline` records no queued work for any revision; the host runs
84
+ * `interpretInline` in-process. Requires text/structured parts only. */
85
+ dispatch?: 'job' | 'inline';
86
+ }
87
+ /** One inbox page request. Filters apply in the query, before the page is cut. */
88
+ export interface ListItemsInput {
89
+ /** Rows per page; defaults to 20 and never exceeds 100. */
90
+ limit?: number;
91
+ /** Opaque continuation returned by the previous page. */
92
+ cursor?: string;
93
+ /** Durable inbox-state projection; see REVIEW.md for how it is derived. */
94
+ state?: InboxState;
95
+ /** Restrict the page to these item IDs (host-side assignment pushdown). */
96
+ itemIds?: string[];
97
+ /**
98
+ * Rows this call may examine, at most ITEM_SCAN_CEILING (the default). A
99
+ * host that scans across several calls passes its remaining budget so the
100
+ * sum never exceeds the ceiling.
101
+ */
102
+ scanLimit?: number;
103
+ }
104
+ /** Inbox items newest-first by receipt, with their durable state projection. */
105
+ export interface IntakeItemPage {
106
+ /** `cursor` continues after that row, so a host may cut a page short of it. */
107
+ items: Array<{
108
+ item: IntakeItemDTO;
109
+ state: InboxState;
110
+ cursor: string;
111
+ }>;
112
+ /** Rows this call examined, including denied and skipped ones; hosts cap on it. */
113
+ scanned: number;
114
+ nextCursor?: string;
46
115
  }
47
116
  /** Durable attempt claim. Its fence and token are verified on every completion. */
48
117
  export interface AnalysisLease {
@@ -77,6 +146,13 @@ export interface IngestionOptions {
77
146
  db: DatabaseInterface;
78
147
  assets: AssetRuntimeLike;
79
148
  scope: IngestionScope;
149
+ /**
150
+ * Optional server secret (at least 32 bytes) that seals inbox page cursors.
151
+ * With it, a page that spends its scan limit on unreadable rows can hand
152
+ * back an opaque position past them; without it, a cursor only ever names
153
+ * the last row the actor can read. Never derive it from request data.
154
+ */
155
+ cursorKey?: string | Uint8Array;
80
156
  /** Recheck current access for EVERY boundary, including worker completion. */
81
157
  authorize(input: {
82
158
  scope: IngestionScope;
@@ -110,11 +186,36 @@ export interface IngestionOptions {
110
186
  /** Fault injection/observability; never changes authority or persistence. */
111
187
  checkpoint?: (boundary: string) => Promise<void>;
112
188
  }
189
+ /** The most rows one inbox page returns. */
190
+ export declare const ITEM_PAGE_CEILING = 100;
191
+ /**
192
+ * The most rows one `listItemsPage` call examines, whatever its filters.
193
+ * When it is reached the page is returned short with a `nextCursor`, or the
194
+ * call fails with `IntakeScanLimitError` when it found no readable row and may not
195
+ * disclose a position; no single call scans an unbounded scope.
196
+ */
197
+ export declare const ITEM_SCAN_CEILING: number;
198
+ /** The most ids one page may be restricted to before the host must fall back to scanning. */
199
+ export declare const ITEM_ID_FILTER_CEILING = 1000;
200
+ /** True for a value shaped like an intake item id; hosts use it to drop junk before a page query. */
201
+ export declare function isIntakeId(value: unknown): value is string;
202
+ /**
203
+ * A page call spent its scan limit without finding a row the actor can read,
204
+ * or would otherwise hand back its own input cursor. Without a `cursorKey`
205
+ * the service may not return a position derived from rows the actor cannot
206
+ * read, so the call fails closed instead; the message names no row. Hosts
207
+ * that already collected rows return them with their cursor.
208
+ */
209
+ export declare class IntakeScanLimitError extends Error {
210
+ constructor();
211
+ }
113
212
  /** Server-only durable lifecycle. Domain approval/execution remains a later layer. */
114
213
  export declare class IngestionService {
115
214
  private readonly options;
116
215
  private readonly db;
117
216
  private readonly scope;
217
+ private readonly engine;
218
+ private readonly cursorKey?;
118
219
  private readonly dispatchTarget;
119
220
  constructor(options: IngestionOptions);
120
221
  private execution;
@@ -127,11 +228,21 @@ export declare class IngestionService {
127
228
  limit?: number;
128
229
  }): Promise<import("./review-dto.js").ReviewPage>;
129
230
  getAction(actionId: string): Promise<import("./execution-dto.js").ProposalReview>;
231
+ /** Own-submission review surface; see execution for its authority gate. */
232
+ listOwnProposals(input?: OwnProposalsInput): Promise<import("./dto.js").OwnProposalsPage>;
233
+ submitOwnDecision(input: ReviewInput): Promise<import("./execution-dto.js").ProposalReview>;
130
234
  authorizeAutomatic(actionId: string): Promise<import("./execution-dto.js").ProposalReview>;
235
+ /** Reviewer-chosen handler for any item; same preview/approval path, never automatic. */
236
+ startReviewerAction(input: StartActionInput): Promise<import("./execution-dto.js").ProposalReview>;
237
+ /** Terminal "handled, no action" disposition; distinct from rejecting a proposal. */
238
+ resolveItem(input: ResolveItemInput): Promise<import("./dto.js").ItemDisposition>;
239
+ /** Reviewer and reason of a resolved item; requires reviewer authority. */
240
+ getItemDisposition(itemId: string): Promise<import("./dto.js").ItemDisposition | undefined>;
131
241
  previewPlan(input: PreviewPlanInput): Promise<import("./execution-dto.js").PlanReview>;
132
242
  applyPlan(planId: string): Promise<import("./execution-dto.js").ActionResult[]>;
133
243
  private proposals;
134
244
  private proposalReader;
245
+ /** Currently offered reviewer catalog; needs no generation credentials. */
135
246
  listHandlers(itemId: string): Promise<import("./proposal-dto.js").ProposalCatalogEntry[]>;
136
247
  findCandidates(input: {
137
248
  itemId: string;
@@ -156,12 +267,15 @@ export declare class IngestionService {
156
267
  private rows;
157
268
  private item;
158
269
  private tx;
270
+ /** Refuse under the caller's item lock when a terminal disposition exists. */
271
+ private assertUnresolved;
159
272
  private lock;
160
273
  private insert;
161
274
  /** Diagnostic only: deploy manifest migrations before starting ingestion. */
162
275
  assertReady(): Promise<void>;
163
276
  /** Preserve every original before acknowledgment; retries retain receipt identity. */
164
277
  receive(input: ReceiveInput): Promise<ReceiptResult>;
278
+ private revokedBeforeAck;
165
279
  private preserve;
166
280
  /** Inspect retained route provenance without changing state or enqueuing work. */
167
281
  inspectDispatchRoute(itemId: string): Promise<DispatchRouteInspection>;
@@ -178,23 +292,143 @@ export declare class IngestionService {
178
292
  private dispatchRouteState;
179
293
  /** Repair lost enqueue/mark writes and deleted/failed jobs. Duplicate jobs are safe. */
180
294
  repairDispatches(): Promise<number>;
181
- /** List only authorized active items; omitted items do not contribute counts. */
295
+ /**
296
+ * One authorized inbox page, newest receipt first with the id as tiebreak.
297
+ * Tenant, confidential scope, retention and the id restriction run in the
298
+ * query; rows are authorized before the `state` filter is applied to the
299
+ * fetched batch, so every filter is bounded by the scan limit (default
300
+ * ITEM_SCAN_CEILING). Authority is rechecked at two levels: the host
301
+ * `authorize('read')` once per distinct captured ceiling, and the execution
302
+ * read gate once per distinct (item, handler) bound by a scanned row that
303
+ * passed the first. Without a `cursorKey` every cursor names a row the
304
+ * actor can read; with one, all cursors are sealed and a budget-stopped
305
+ * page may resume past rows the actor cannot read. `scanned` is for trusted
306
+ * host accounting and must not be sent to clients.
307
+ */
308
+ listItemsPage(input?: ListItemsInput): Promise<IntakeItemPage>;
309
+ /**
310
+ * The bounded page scan behind `listItemsPage` and `listItems`. It returns
311
+ * the rows to list with their positions, the exact scan position reached
312
+ * (`scanFrom`, which may be a row the actor cannot read and must never
313
+ * leave the service unsealed), and the last row the actor can read
314
+ * (`lastReadable`, which may not match the `state` filter).
315
+ */
316
+ private scanItems;
317
+ /** Associated data that binds a sealed cursor to this authenticated scope. */
318
+ private cursorScope;
319
+ private encodeCursor;
320
+ private decodeCursor;
321
+ /**
322
+ * Every authorized active item, newest receipt first.
323
+ * @deprecated Use `listItemsPage`. Kept so callers of the array-returning
324
+ * API keep working. It walks every page, so its cost grows with the scope,
325
+ * including one execution authorization per (item, handler) across the
326
+ * whole scope. It follows the internal scan position, which never leaves
327
+ * the service, so runs of rows the actor cannot read never stop it. Items
328
+ * are gated exactly as on a page.
329
+ */
182
330
  listItems(): Promise<IntakeItemDTO[]>;
331
+ /**
332
+ * One read authorization per distinct captured ceiling for a page of rows.
333
+ * A refusal hides the rows; a malformed ceiling hides its row; a host
334
+ * callback that throws rejects the page with that error.
335
+ */
336
+ private ceilingGate;
337
+ /**
338
+ * The handler checks `listReviews` applies per action, batched for a page:
339
+ * the bindings of the rows' current proposals are projected in SQL
340
+ * (handler id, version, operation and capability; distinct per item) once
341
+ * per fetched batch, then the execution list read gate runs once per distinct
342
+ * (item, handler) of a row that passed the item-level gate. An item whose
343
+ * bound handler the actor cannot currently read, whose binding drifted
344
+ * from the configured handler, or whose bindings cannot be resolved, is
345
+ * not listed. Actions without a proposal carry no handler and are not
346
+ * gated, as in `listReviews`.
347
+ */
348
+ private handlerGate;
349
+ /** Only the disposition state and time; reviewer and reason need review authority. */
183
350
  private itemDTO;
184
351
  getItem(id: string): Promise<IntakeItemDTO>;
185
352
  getEvidence(itemId: string): Promise<IntakeEvidenceDTO[]>;
353
+ /**
354
+ * Durable evidence for one inbox page in a single query, keyed by item id.
355
+ * Items that are not active, retained and readable are omitted (no
356
+ * existence disclosure); the host authorize callback runs once per distinct
357
+ * captured ceiling rather than once per item, through the same gate as
358
+ * `listItemsPage`: a refusal or a malformed ceiling hides the item, and a
359
+ * host callback that throws rejects the read.
360
+ */
361
+ listEvidence(itemIds: string[]): Promise<Map<string, IntakeEvidenceDTO[]>>;
362
+ private evidenceDTO;
186
363
  readEvidence(itemId: string, evidenceId: string): Promise<Uint8Array>;
364
+ private evidenceBytes;
187
365
  /** Append an immutable input revision. Reprocessing never creates actions. */
188
366
  analyze(itemId: string, configuration: Record<string, unknown>, requestKey: string): Promise<{
189
367
  id: string;
190
368
  revision: number;
191
369
  }>;
192
370
  private appendAnalysis;
371
+ /** Run one fenced stage in-process and reload its terminal projection. */
372
+ private inlineStage;
373
+ /** Documented in-process receive-to-proposals path for `dispatch: 'inline'`
374
+ * receipts. Extraction (UTF-8 text/structured only) and interpretation use the
375
+ * same immutable revisions, fenced leases, catalog-live checks, provenance and
376
+ * failure categories as the job path; no queue intent is created or delivered. */
377
+ interpretInline(itemId: string, input: InlineInterpretationInput): Promise<InlineInterpretation>;
378
+ /** Prepare outside the lock (it reads catalog and analysis), then append
379
+ * under it with the source pin rechecked. A concurrent identical request
380
+ * that appended first makes preparation fail; its revision is the replay. */
381
+ private appendInterpretation;
382
+ private analysisByRequest;
383
+ /** Owner-lifecycle hook: expire every active receipt bound to a deleted owner
384
+ * through the ordinary revoke-then-delete path. Returns the number scheduled. */
385
+ expireOwned(owner: IntakeOwner): Promise<number>;
193
386
  /** Record an authenticated split correction and queue fresh extraction, never copy model output. */
194
387
  reviseLogicalSplit(input: LogicalSplitInput): Promise<{
195
388
  id: string;
196
389
  revision: number;
197
390
  }>;
391
+ /**
392
+ * Record an authenticated reviewer instruction as an immutable human correction
393
+ * and queue a fresh extraction plus interpretation that carries it as trusted
394
+ * guidance. The text steers the model only; it never changes the catalog,
395
+ * candidates, schemas, permissions or automation eligibility.
396
+ */
397
+ recordReviewerInstruction(input: ReviewerInstructionInput): Promise<{
398
+ id: string;
399
+ revision: number;
400
+ instruction: ReviewerInstruction;
401
+ }>;
402
+ /**
403
+ * How the revisions after an anchor generation relate to it. Shared by the
404
+ * retry guard and getReinterpretationState so they cannot disagree.
405
+ * A completed extraction with no interpretation appended is in flight until
406
+ * its attempt's completion plus the item's analysis lease duration
407
+ * (`limits.leaseMs`, the same lease claimAnalysis grants); after that it is
408
+ * treated as a reinterpretation that did not start.
409
+ */
410
+ private laterWork;
411
+ /** Pollable reinterpretation state: current revision, safe failure and the retry anchor. */
412
+ getReinterpretationState(itemId: string): Promise<{
413
+ revision: number;
414
+ processingState: string;
415
+ /** Safe category, or `not_started` when the interpretation was never appended in time. */
416
+ failure: IntakeFailure | 'not_started' | null;
417
+ /** True while work after the latest completed generation is in flight, including between stages. */
418
+ reinterpreting: boolean;
419
+ /** Latest completed generation attempt; absent when none has completed. */
420
+ generationAttemptId: string | null;
421
+ /**
422
+ * Id of the instruction carried by the item's newest extraction (verified
423
+ * by digest), or null. A host reprocess builds its own configuration and
424
+ * cannot carry human corrections, so it drops the instruction exactly as
425
+ * it drops a split.
426
+ */
427
+ instructionInEffect: string | null;
428
+ }>;
429
+ /** Immutable instruction history, newest first. History is never deleted. */
430
+ listReviewerInstructions(itemId: string): Promise<ReviewerInstruction[]>;
431
+ private recordedInstructions;
198
432
  /** Allocate a fenced attempt; active leases cannot be stolen before expiry. */
199
433
  claimAnalysis(itemId: string, revision: number, workerId: string): Promise<AnalysisLease | null>;
200
434
  private completedAnalysisSnapshot;
@@ -254,12 +488,17 @@ export declare class IngestionService {
254
488
  private scheduleExpiry;
255
489
  /** Retry privacy propagation. Minimal receipt/action identities remain replay-safe. */
256
490
  repairDeletions(): Promise<number>;
491
+ private hasUnfinishedActions;
492
+ /** Later sweeps drop a principal retained for a reconciliation that has
493
+ * since reached a final state. */
494
+ private releaseRedactedPrincipal;
257
495
  /** Run host-configured expiry policy and retry interrupted deletion propagation. */
258
496
  sweepRetention(): Promise<number>;
259
497
  }
260
498
  export * from './extraction.js';
261
499
  export type * from './feedback-contracts.js';
262
- export { GenerationSnapshotStaleError } from './proposal-errors.js';
263
- export { createIntakeReviewHost, type IntakeReviewHostOptions, } from './review-host.js';
500
+ export { GenerationSnapshotStaleError, GenerationSourceStaleError, HandlerArgumentsInvalidError, ProposalsNotConfiguredError, } from './proposal-errors.js';
501
+ export { createIntakeReviewHost, type IntakeReviewHostOptions, type RowEvidenceRequest, type RowEvidenceView, } from './review-host.js';
502
+ export { REVIEWER_INSTRUCTION_MAX_LENGTH, ReviewerInstructionInvalidError, ReviewerInstructionStaleError, reviewerInstructionView, } from './reviewer-instruction.js';
264
503
  export * from './sources/index.js';
265
504
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}