@openpond/evals 0.11.15 → 0.11.17

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 (159) hide show
  1. package/CONTRACT.md +9 -0
  2. package/dist/connected-evidence/contracts.js +72 -0
  3. package/dist/connected-evidence/imports.js +71 -0
  4. package/dist/connected-evidence/index.js +5 -0
  5. package/dist/connected-evidence/normalize.js +97 -0
  6. package/dist/connected-evidence/python-correctness.js +73 -0
  7. package/dist/connected-evidence/sources/claude-code.js +71 -0
  8. package/dist/connected-evidence/sources/codex.js +52 -0
  9. package/dist/connected-evidence/sources/history.js +86 -0
  10. package/dist/connected-evidence/sources/usage.js +15 -0
  11. package/dist/connected-evidence/usage-summary.js +52 -0
  12. package/dist/experiments.js +41 -7
  13. package/dist/graders.js +9 -6
  14. package/dist/human-review/comparison.js +161 -0
  15. package/dist/human-review/contracts.js +110 -0
  16. package/dist/human-review/execution.js +61 -0
  17. package/dist/human-review/handoff.js +18 -0
  18. package/dist/human-review/index.js +9 -0
  19. package/dist/human-review/local-publication.js +18 -0
  20. package/dist/human-review/repository.js +1 -0
  21. package/dist/human-review/results.js +18 -0
  22. package/dist/human-review/service.js +268 -0
  23. package/dist/human-review/task-proposals.js +39 -0
  24. package/dist/index.js +1 -0
  25. package/dist/javascript-verifier-contract.js +2 -2
  26. package/dist/learning/authoring.js +2 -1
  27. package/dist/learning/contracts.js +353 -81
  28. package/dist/learning/index.js +1 -0
  29. package/dist/learning/reward-authoring.js +5 -2
  30. package/dist/learning/training-handoff.js +32 -0
  31. package/dist/metrics-node.js +2 -0
  32. package/dist/profile-evaluation-target.js +7 -0
  33. package/dist/profile-evaluations.js +7 -10
  34. package/dist/profile-external-evaluation.js +35 -0
  35. package/dist/profile-source-candidate.js +5 -0
  36. package/dist/rewards.js +5 -3
  37. package/dist/taskset-run-contract.js +10 -0
  38. package/dist/tasksets.js +2 -0
  39. package/dist/types/builtin-benchmarks/harness-refiner.d.ts +75 -1
  40. package/dist/types/builtin-benchmarks/harness-refiner.d.ts.map +1 -1
  41. package/dist/types/conformance.d.ts +150 -2
  42. package/dist/types/conformance.d.ts.map +1 -1
  43. package/dist/types/connected-evidence/contracts.d.ts +317 -0
  44. package/dist/types/connected-evidence/contracts.d.ts.map +1 -0
  45. package/dist/types/connected-evidence/imports.d.ts +19 -0
  46. package/dist/types/connected-evidence/imports.d.ts.map +1 -0
  47. package/dist/types/connected-evidence/index.d.ts +6 -0
  48. package/dist/types/connected-evidence/index.d.ts.map +1 -0
  49. package/dist/types/connected-evidence/normalize.d.ts +25 -0
  50. package/dist/types/connected-evidence/normalize.d.ts.map +1 -0
  51. package/dist/types/connected-evidence/python-correctness.d.ts +196 -0
  52. package/dist/types/connected-evidence/python-correctness.d.ts.map +1 -0
  53. package/dist/types/connected-evidence/sources/claude-code.d.ts +74 -0
  54. package/dist/types/connected-evidence/sources/claude-code.d.ts.map +1 -0
  55. package/dist/types/connected-evidence/sources/codex.d.ts +74 -0
  56. package/dist/types/connected-evidence/sources/codex.d.ts.map +1 -0
  57. package/dist/types/connected-evidence/sources/history.d.ts +146 -0
  58. package/dist/types/connected-evidence/sources/history.d.ts.map +1 -0
  59. package/dist/types/connected-evidence/sources/usage.d.ts +3 -0
  60. package/dist/types/connected-evidence/sources/usage.d.ts.map +1 -0
  61. package/dist/types/connected-evidence/usage-summary.d.ts +162 -0
  62. package/dist/types/connected-evidence/usage-summary.d.ts.map +1 -0
  63. package/dist/types/evidence/conformance.d.ts +28 -28
  64. package/dist/types/evidence/contracts.d.ts +27 -27
  65. package/dist/types/execution-contracts.d.ts +159 -5
  66. package/dist/types/execution-contracts.d.ts.map +1 -1
  67. package/dist/types/experiments.d.ts +498 -7
  68. package/dist/types/experiments.d.ts.map +1 -1
  69. package/dist/types/graders.d.ts +21 -1
  70. package/dist/types/graders.d.ts.map +1 -1
  71. package/dist/types/human-review/comparison.d.ts +1959 -0
  72. package/dist/types/human-review/comparison.d.ts.map +1 -0
  73. package/dist/types/human-review/contracts.d.ts +2719 -0
  74. package/dist/types/human-review/contracts.d.ts.map +1 -0
  75. package/dist/types/human-review/execution.d.ts +298 -0
  76. package/dist/types/human-review/execution.d.ts.map +1 -0
  77. package/dist/types/human-review/handoff.d.ts +124 -0
  78. package/dist/types/human-review/handoff.d.ts.map +1 -0
  79. package/dist/types/human-review/index.d.ts +10 -0
  80. package/dist/types/human-review/index.d.ts.map +1 -0
  81. package/dist/types/human-review/local-publication.d.ts +165 -0
  82. package/dist/types/human-review/local-publication.d.ts.map +1 -0
  83. package/dist/types/human-review/repository.d.ts +43 -0
  84. package/dist/types/human-review/repository.d.ts.map +1 -0
  85. package/dist/types/human-review/results.d.ts +118 -0
  86. package/dist/types/human-review/results.d.ts.map +1 -0
  87. package/dist/types/human-review/service.d.ts +878 -0
  88. package/dist/types/human-review/service.d.ts.map +1 -0
  89. package/dist/types/human-review/task-proposals.d.ts +70 -0
  90. package/dist/types/human-review/task-proposals.d.ts.map +1 -0
  91. package/dist/types/index.d.ts +1 -0
  92. package/dist/types/index.d.ts.map +1 -1
  93. package/dist/types/javascript-environment-contract.d.ts +1 -1
  94. package/dist/types/javascript-verifier-contract.d.ts +1 -1
  95. package/dist/types/javascript-verifier-contract.d.ts.map +1 -1
  96. package/dist/types/learned-preference.d.ts +2 -2
  97. package/dist/types/learning/acceptance-group.d.ts +13 -13
  98. package/dist/types/learning/acceptance-plan.d.ts +1 -1
  99. package/dist/types/learning/admission.d.ts +78 -1
  100. package/dist/types/learning/admission.d.ts.map +1 -1
  101. package/dist/types/learning/authoring-service.d.ts +2 -0
  102. package/dist/types/learning/authoring-service.d.ts.map +1 -1
  103. package/dist/types/learning/authoring.d.ts +20 -0
  104. package/dist/types/learning/authoring.d.ts.map +1 -1
  105. package/dist/types/learning/batch-service.d.ts +76 -2
  106. package/dist/types/learning/batch-service.d.ts.map +1 -1
  107. package/dist/types/learning/contracts.d.ts +759 -24
  108. package/dist/types/learning/contracts.d.ts.map +1 -1
  109. package/dist/types/learning/index.d.ts +1 -0
  110. package/dist/types/learning/index.d.ts.map +1 -1
  111. package/dist/types/learning/iteration-candidate-decision.d.ts +2 -2
  112. package/dist/types/learning/iteration-dispatch-contracts.d.ts +2 -2
  113. package/dist/types/learning/operations.d.ts +1118 -8
  114. package/dist/types/learning/operations.d.ts.map +1 -1
  115. package/dist/types/learning/repository.d.ts +402 -15
  116. package/dist/types/learning/repository.d.ts.map +1 -1
  117. package/dist/types/learning/reward-authoring.d.ts.map +1 -1
  118. package/dist/types/learning/reward-calibration.d.ts +74 -0
  119. package/dist/types/learning/reward-calibration.d.ts.map +1 -1
  120. package/dist/types/learning/reward-checks.d.ts +14 -2
  121. package/dist/types/learning/reward-checks.d.ts.map +1 -1
  122. package/dist/types/learning/training-handoff.d.ts +201 -0
  123. package/dist/types/learning/training-handoff.d.ts.map +1 -0
  124. package/dist/types/learning/transport.d.ts +963 -21
  125. package/dist/types/learning/transport.d.ts.map +1 -1
  126. package/dist/types/metrics-node.d.ts +3 -1
  127. package/dist/types/metrics-node.d.ts.map +1 -1
  128. package/dist/types/model-improvement-qualification.d.ts +3 -3
  129. package/dist/types/native-harness-experiment-attempt.d.ts +2 -2
  130. package/dist/types/profile-evaluation-comparisons.d.ts +230 -0
  131. package/dist/types/profile-evaluation-comparisons.d.ts.map +1 -1
  132. package/dist/types/profile-evaluation-target.d.ts +14 -0
  133. package/dist/types/profile-evaluation-target.d.ts.map +1 -0
  134. package/dist/types/profile-evaluations.d.ts +117 -14
  135. package/dist/types/profile-evaluations.d.ts.map +1 -1
  136. package/dist/types/profile-external-evaluation.d.ts +404 -0
  137. package/dist/types/profile-external-evaluation.d.ts.map +1 -0
  138. package/dist/types/profile-source-candidate.d.ts +15 -0
  139. package/dist/types/profile-source-candidate.d.ts.map +1 -0
  140. package/dist/types/review-conformance.d.ts +7 -7
  141. package/dist/types/rewards.d.ts +253 -0
  142. package/dist/types/rewards.d.ts.map +1 -1
  143. package/dist/types/rollouts.d.ts +3 -3
  144. package/dist/types/taskset-run-contract.d.ts +230 -0
  145. package/dist/types/taskset-run-contract.d.ts.map +1 -1
  146. package/dist/types/tasksets.d.ts +311 -3
  147. package/dist/types/tasksets.d.ts.map +1 -1
  148. package/dist/types/telemetry-analysis.d.ts +2 -2
  149. package/dist/types/telemetry-bundle.d.ts +6 -6
  150. package/dist/types/telemetry.d.ts +3 -3
  151. package/package.json +9 -1
  152. package/schemas/learning/v1/command-request.schema.json +1745 -409
  153. package/schemas/learning/v1/decision.schema.json +11 -0
  154. package/schemas/learning/v1/draft.schema.json +11 -0
  155. package/schemas/learning/v1/grade.schema.json +11 -0
  156. package/schemas/learning/v1/package.schema.json +532 -12
  157. package/schemas/learning/v1/policy.schema.json +836 -28
  158. package/schemas/learning/v1/reward.schema.json +520 -0
  159. package/schemas/learning/v1/reward_check.schema.json +9 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/contracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,298 @@
1
+ import { createHumanReviewService } from "./service.js";
2
+ import type { HumanReview, HumanExecuteRequestSchema } from "./contracts.js";
3
+ import type { HumanReviewContext } from "./repository.js";
4
+ import type { z } from "zod";
5
+ /** Reserve before I/O; recovery reads the original owner's durable admission.
6
+ * A reservation with unknown admission never becomes a second dispatch. */
7
+ export declare function dispatchAssignedHumanExecution(input: {
8
+ service: ReturnType<typeof createHumanReviewService>;
9
+ context: HumanReviewContext;
10
+ request: z.infer<typeof HumanExecuteRequestSchema>;
11
+ configuration: unknown;
12
+ dispatch: (configuration: unknown, review: HumanReview) => Promise<{
13
+ id: string;
14
+ }>;
15
+ recover: (review: HumanReview) => Promise<{
16
+ id: string;
17
+ } | null>;
18
+ cancel: (review: HumanReview) => Promise<void>;
19
+ }): Promise<{
20
+ schemaVersion: "openpond.humanReview.v1";
21
+ id: string;
22
+ revision: number;
23
+ scope: string;
24
+ projectId: string;
25
+ createdBy: string;
26
+ kind: "author" | "execute" | "grade";
27
+ title: string;
28
+ authorPublication: {
29
+ proposalHash: string;
30
+ dataset: {
31
+ id: string;
32
+ revision: number;
33
+ contentHash: string;
34
+ };
35
+ operationId: string;
36
+ publishedBy: string;
37
+ publishedAt: string;
38
+ } | null;
39
+ evidence: {
40
+ dataset: {
41
+ id: string;
42
+ revision: number;
43
+ contentHash: string;
44
+ };
45
+ grader: {
46
+ id: string;
47
+ revision: number;
48
+ contentHash: string;
49
+ };
50
+ graderBinding: {
51
+ id: string;
52
+ version: string;
53
+ contentHash: string;
54
+ };
55
+ rubric: {
56
+ id: string;
57
+ revision: number;
58
+ contentHash: string;
59
+ };
60
+ attempts: {
61
+ experimentId: string;
62
+ attemptId: string;
63
+ taskId: string;
64
+ targetId: string;
65
+ output: {
66
+ id: string;
67
+ revision: number;
68
+ contentHash: string;
69
+ };
70
+ trace: {
71
+ id: string;
72
+ revision: number;
73
+ contentHash: string;
74
+ } | null;
75
+ familyKey: string;
76
+ split: "train" | "validation" | "test" | "frozen_eval";
77
+ localSource?: {
78
+ kind: "owner_attested_local";
79
+ ownerActorId: string;
80
+ teamId: string;
81
+ executionHash: string;
82
+ configurationHash: string;
83
+ retainedAttemptHash: string;
84
+ traceHash: string;
85
+ publicationCutoffHash: string;
86
+ } | {
87
+ ownerActorId: string;
88
+ teamId: string;
89
+ executionHash: string;
90
+ configurationHash: string;
91
+ retainedAttemptHash: string;
92
+ traceHash: string;
93
+ kind: "native_local";
94
+ } | undefined;
95
+ recordedSource?: {
96
+ id: string;
97
+ snapshotHash: string;
98
+ boundaryId: string;
99
+ boundaryRevisionHash: string;
100
+ } | undefined;
101
+ }[];
102
+ publication?: {
103
+ id: string;
104
+ revision: number;
105
+ contentHash: string;
106
+ } | undefined;
107
+ taskIds?: string[] | undefined;
108
+ };
109
+ form: {
110
+ schemaVersion: "openpond.humanForm.v1";
111
+ mode: "individual" | "pairwise";
112
+ instructions: string;
113
+ criteria: ({
114
+ id: string;
115
+ label: string;
116
+ instructions: string;
117
+ required: boolean;
118
+ allowAbstain: boolean;
119
+ kind: "score";
120
+ minimum: number;
121
+ maximum: number;
122
+ step: number;
123
+ requireRationale?: boolean | undefined;
124
+ anchors?: {
125
+ value: string | number | boolean;
126
+ description: string;
127
+ }[] | undefined;
128
+ } | {
129
+ id: string;
130
+ label: string;
131
+ instructions: string;
132
+ required: boolean;
133
+ allowAbstain: boolean;
134
+ kind: "category";
135
+ options: string[];
136
+ requireRationale?: boolean | undefined;
137
+ anchors?: {
138
+ value: string | number | boolean;
139
+ description: string;
140
+ }[] | undefined;
141
+ } | {
142
+ id: string;
143
+ label: string;
144
+ instructions: string;
145
+ required: boolean;
146
+ allowAbstain: boolean;
147
+ kind: "boolean";
148
+ requireRationale?: boolean | undefined;
149
+ anchors?: {
150
+ value: string | number | boolean;
151
+ description: string;
152
+ }[] | undefined;
153
+ } | {
154
+ id: string;
155
+ label: string;
156
+ instructions: string;
157
+ required: boolean;
158
+ allowAbstain: boolean;
159
+ kind: "text";
160
+ maximumLength: number;
161
+ requireRationale?: boolean | undefined;
162
+ anchors?: {
163
+ value: string | number | boolean;
164
+ description: string;
165
+ }[] | undefined;
166
+ minimumLength?: number | undefined;
167
+ } | {
168
+ id: string;
169
+ label: string;
170
+ instructions: string;
171
+ required: boolean;
172
+ allowAbstain: boolean;
173
+ kind: "preference";
174
+ allowTie: boolean;
175
+ requireRationale?: boolean | undefined;
176
+ anchors?: {
177
+ value: string | number | boolean;
178
+ description: string;
179
+ }[] | undefined;
180
+ requireStrength?: boolean | undefined;
181
+ })[];
182
+ };
183
+ policy: {
184
+ approval: "none" | "manager";
185
+ minimumRaters: number;
186
+ managerIds: string[];
187
+ reviewerIds: string[];
188
+ queueClaim: boolean;
189
+ teamVisible: boolean;
190
+ distinctManager?: boolean | undefined;
191
+ independentRaters?: boolean | undefined;
192
+ blindPair?: boolean | undefined;
193
+ };
194
+ status: "queued" | "assigned" | "in_progress" | "submitted" | "returned" | "accepted" | "rejected" | "cancelled";
195
+ assigneeId: string | null;
196
+ generation: number;
197
+ drafts: {
198
+ actorId: string;
199
+ generation: number;
200
+ answers: {
201
+ criterionId: string;
202
+ value: string | number | boolean | null;
203
+ abstain: boolean;
204
+ note: string;
205
+ strength?: "slight" | "moderate" | "strong" | undefined;
206
+ }[];
207
+ note: string;
208
+ updatedAt: string;
209
+ taskProposal?: {
210
+ schemaVersion: "openpond.humanTaskProposal.v1";
211
+ tasks: {
212
+ taskId: string;
213
+ input: Record<string, unknown>;
214
+ policyVisibleContext: Record<string, unknown>;
215
+ expectedOutput?: Record<string, unknown> | null | undefined;
216
+ tags?: string[] | undefined;
217
+ }[];
218
+ contentHash: string;
219
+ } | undefined;
220
+ }[];
221
+ submissions: {
222
+ id: string;
223
+ revision: number;
224
+ actorId: string;
225
+ generation: number;
226
+ evidenceHash: string;
227
+ formHash: string;
228
+ answers: {
229
+ criterionId: string;
230
+ value: string | number | boolean | null;
231
+ abstain: boolean;
232
+ note: string;
233
+ strength?: "slight" | "moderate" | "strong" | undefined;
234
+ }[];
235
+ note: string;
236
+ submittedAt: string;
237
+ supersedes: string | null;
238
+ contentHash: string;
239
+ taskProposal?: {
240
+ schemaVersion: "openpond.humanTaskProposal.v1";
241
+ tasks: {
242
+ taskId: string;
243
+ input: Record<string, unknown>;
244
+ policyVisibleContext: Record<string, unknown>;
245
+ expectedOutput?: Record<string, unknown> | null | undefined;
246
+ tags?: string[] | undefined;
247
+ }[];
248
+ contentHash: string;
249
+ } | undefined;
250
+ }[];
251
+ decisions: {
252
+ id: string;
253
+ revision: number;
254
+ actorId: string;
255
+ outcome: "accept" | "reject" | "request_changes";
256
+ submissions: {
257
+ id: string;
258
+ contentHash: string;
259
+ }[];
260
+ answers: {
261
+ criterionId: string;
262
+ value: string | number | boolean | null;
263
+ abstain: boolean;
264
+ note: string;
265
+ strength?: "slight" | "moderate" | "strong" | undefined;
266
+ }[];
267
+ note: string;
268
+ decidedAt: string;
269
+ contentHash: string;
270
+ taskProposalHash?: string | undefined;
271
+ }[];
272
+ audit: {
273
+ actorId: string;
274
+ action: "claim" | "reassign" | "cancel";
275
+ priorAssigneeId: string | null;
276
+ assigneeId: string | null;
277
+ generation: number;
278
+ note: string;
279
+ occurredAt: string;
280
+ }[];
281
+ execution: {
282
+ executionId: string | null;
283
+ operationId: string;
284
+ boundBy: string;
285
+ configurationHash: string;
286
+ generation: number;
287
+ result: {
288
+ id: string;
289
+ revision: number;
290
+ contentHash: string;
291
+ } | null;
292
+ } | null;
293
+ createdAt: string;
294
+ updatedAt: string;
295
+ contentHash: string;
296
+ dueAt?: string | undefined;
297
+ }>;
298
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/execution.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,wBAAwB,EAAC,MAAM,cAAc,CAAC;AACtD,OAAO,KAAK,EAAC,WAAW,EAAC,yBAAyB,EAAC,MAAM,gBAAgB,CAAC;AAC1E,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAC3B;2EAC2E;AAC3E,wBAAsB,8BAA8B,CAAC,KAAK,EAAC;IAAC,OAAO,EAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;IAAA,OAAO,EAAC,kBAAkB,CAAC;IAAA,OAAO,EAAC,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;IAAA,aAAa,EAAC,OAAO,CAAC;IAAA,QAAQ,EAAC,CAAC,aAAa,EAAC,OAAO,EAAC,MAAM,EAAC,WAAW,KAAG,OAAO,CAAC;QAAC,EAAE,EAAC,MAAM,CAAA;KAAC,CAAC,CAAC;IAAA,OAAO,EAAC,CAAC,MAAM,EAAC,WAAW,KAAG,OAAO,CAAC;QAAC,EAAE,EAAC,MAAM,CAAA;KAAC,GAAC,IAAI,CAAC,CAAC;IAAA,MAAM,EAAC,CAAC,MAAM,EAAC,WAAW,KAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+B/X"}
@@ -0,0 +1,124 @@
1
+ import { type HumanReview } from "./contracts.js";
2
+ /** Call only after current host authority/evidence checks. Acceptance grants no learning use or adoption. */
3
+ export declare function acceptedHumanEvidence(raw: HumanReview, expected: {
4
+ reviewHash: string;
5
+ decisionHash: string;
6
+ }): {
7
+ taskProposal?: {
8
+ schemaVersion: "openpond.humanTaskProposal.v1";
9
+ tasks: {
10
+ taskId: string;
11
+ input: Record<string, unknown>;
12
+ policyVisibleContext: Record<string, unknown>;
13
+ expectedOutput?: Record<string, unknown> | null | undefined;
14
+ tags?: string[] | undefined;
15
+ }[];
16
+ contentHash: string;
17
+ } | undefined;
18
+ execution?: {
19
+ id: string;
20
+ result: {
21
+ id: string;
22
+ revision: number;
23
+ contentHash: string;
24
+ };
25
+ configurationHash: string;
26
+ } | undefined;
27
+ schemaVersion: "openpond.acceptedHumanEvidence.v1";
28
+ scope: string;
29
+ projectId: string;
30
+ review: {
31
+ id: string;
32
+ revision: number;
33
+ contentHash: string;
34
+ };
35
+ sourceOrigins: ("owner_attested_local" | "native_local" | "recorded_evidence" | "hosted_retained")[];
36
+ decision: {
37
+ id: string;
38
+ revision: number;
39
+ contentHash: string;
40
+ };
41
+ submissions: {
42
+ id: string;
43
+ revision: number;
44
+ contentHash: string;
45
+ }[];
46
+ evidence: {
47
+ dataset: {
48
+ id: string;
49
+ revision: number;
50
+ contentHash: string;
51
+ };
52
+ grader: {
53
+ id: string;
54
+ revision: number;
55
+ contentHash: string;
56
+ };
57
+ graderBinding: {
58
+ id: string;
59
+ version: string;
60
+ contentHash: string;
61
+ };
62
+ rubric: {
63
+ id: string;
64
+ revision: number;
65
+ contentHash: string;
66
+ };
67
+ attempts: {
68
+ experimentId: string;
69
+ attemptId: string;
70
+ taskId: string;
71
+ targetId: string;
72
+ output: {
73
+ id: string;
74
+ revision: number;
75
+ contentHash: string;
76
+ };
77
+ trace: {
78
+ id: string;
79
+ revision: number;
80
+ contentHash: string;
81
+ } | null;
82
+ familyKey: string;
83
+ split: "train" | "validation" | "test" | "frozen_eval";
84
+ localSource?: {
85
+ kind: "owner_attested_local";
86
+ ownerActorId: string;
87
+ teamId: string;
88
+ executionHash: string;
89
+ configurationHash: string;
90
+ retainedAttemptHash: string;
91
+ traceHash: string;
92
+ publicationCutoffHash: string;
93
+ } | {
94
+ ownerActorId: string;
95
+ teamId: string;
96
+ executionHash: string;
97
+ configurationHash: string;
98
+ retainedAttemptHash: string;
99
+ traceHash: string;
100
+ kind: "native_local";
101
+ } | undefined;
102
+ recordedSource?: {
103
+ id: string;
104
+ snapshotHash: string;
105
+ boundaryId: string;
106
+ boundaryRevisionHash: string;
107
+ } | undefined;
108
+ }[];
109
+ publication?: {
110
+ id: string;
111
+ revision: number;
112
+ contentHash: string;
113
+ } | undefined;
114
+ taskIds?: string[] | undefined;
115
+ };
116
+ answers: {
117
+ criterionId: string;
118
+ value: string | number | boolean | null;
119
+ abstain: boolean;
120
+ note: string;
121
+ strength?: "slight" | "moderate" | "strong" | undefined;
122
+ }[];
123
+ };
124
+ //# sourceMappingURL=handoff.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handoff.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/handoff.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAErE,6GAA6G;AAC7G,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW7G"}
@@ -0,0 +1,10 @@
1
+ export * from "./contracts.js";
2
+ export * from "./repository.js";
3
+ export * from "./service.js";
4
+ export * from "./handoff.js";
5
+ export * from "./results.js";
6
+ export * from "./execution.js";
7
+ export * from "./task-proposals.js";
8
+ export * from "./local-publication.js";
9
+ export * from "./comparison.js";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAE7B,cAAc,cAAc,CAAC;AAE7B,cAAc,cAAc,CAAC;AAE7B,cAAc,gBAAgB,CAAC;AAE/B,cAAc,qBAAqB,CAAC;AAEpC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,165 @@
1
+ import { z } from "zod";
2
+ export declare const HumanLocalAttemptOriginSchema: z.ZodObject<{
3
+ kind: z.ZodLiteral<"owner_attested_local">;
4
+ ownerActorId: z.ZodString;
5
+ teamId: z.ZodString;
6
+ executionHash: z.ZodString;
7
+ configurationHash: z.ZodString;
8
+ retainedAttemptHash: z.ZodString;
9
+ traceHash: z.ZodString;
10
+ publicationCutoffHash: z.ZodString;
11
+ }, z.core.$strict>;
12
+ export declare const HumanNativeAttemptOriginSchema: z.ZodObject<{
13
+ ownerActorId: z.ZodString;
14
+ teamId: z.ZodString;
15
+ executionHash: z.ZodString;
16
+ configurationHash: z.ZodString;
17
+ retainedAttemptHash: z.ZodString;
18
+ traceHash: z.ZodString;
19
+ kind: z.ZodLiteral<"native_local">;
20
+ }, z.core.$strict>;
21
+ export declare const HumanLocalEvidenceExportSchema: z.ZodObject<{
22
+ schemaVersion: z.ZodLiteral<"openpond.humanLocalEvidenceExport.v1">;
23
+ actorId: z.ZodString;
24
+ scope: z.ZodString;
25
+ projectId: z.ZodString;
26
+ dataset: z.ZodObject<{
27
+ id: z.ZodString;
28
+ revision: z.ZodNumber;
29
+ contentHash: z.ZodString;
30
+ }, z.core.$strict>;
31
+ graderId: z.ZodString;
32
+ compiledGraderHash: z.ZodString;
33
+ attempts: z.ZodArray<z.ZodObject<{
34
+ origin: z.ZodObject<{
35
+ kind: z.ZodLiteral<"owner_attested_local">;
36
+ ownerActorId: z.ZodString;
37
+ teamId: z.ZodString;
38
+ executionHash: z.ZodString;
39
+ configurationHash: z.ZodString;
40
+ retainedAttemptHash: z.ZodString;
41
+ traceHash: z.ZodString;
42
+ publicationCutoffHash: z.ZodString;
43
+ }, z.core.$strict>;
44
+ executionId: z.ZodString;
45
+ receiptId: z.ZodString;
46
+ taskId: z.ZodString;
47
+ targetId: z.ZodString;
48
+ familyKey: z.ZodString;
49
+ split: z.ZodEnum<{
50
+ train: "train";
51
+ validation: "validation";
52
+ test: "test";
53
+ frozen_eval: "frozen_eval";
54
+ }>;
55
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
56
+ policyVisibleContext: z.ZodRecord<z.ZodString, z.ZodUnknown>;
57
+ output: z.ZodNullable<z.ZodString>;
58
+ error: z.ZodNullable<z.ZodString>;
59
+ events: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
60
+ coverage: z.ZodObject<{
61
+ sourceEventCount: z.ZodNumber;
62
+ publishedEventCount: z.ZodNumber;
63
+ traceLimited: z.ZodBoolean;
64
+ artifactsIncluded: z.ZodLiteral<false>;
65
+ }, z.core.$strict>;
66
+ }, z.core.$strict>>;
67
+ sealedAt: z.ZodString;
68
+ contentHash: z.ZodString;
69
+ }, z.core.$strict>;
70
+ export type HumanLocalEvidenceExport = z.infer<typeof HumanLocalEvidenceExportSchema>;
71
+ export declare const HumanExportLocalRequestSchema: z.ZodObject<{
72
+ endpoint: z.ZodLiteral<"export_local">;
73
+ scope: z.ZodString;
74
+ projectId: z.ZodString;
75
+ graderId: z.ZodString;
76
+ selections: z.ZodArray<z.ZodObject<{
77
+ executionId: z.ZodString;
78
+ receiptId: z.ZodString;
79
+ }, z.core.$strict>>;
80
+ }, z.core.$strict>;
81
+ export declare const HumanPublishLocalRequestSchema: z.ZodObject<{
82
+ endpoint: z.ZodLiteral<"publish_local">;
83
+ scope: z.ZodString;
84
+ projectId: z.ZodString;
85
+ operationId: z.ZodString;
86
+ audience: z.ZodArray<z.ZodString>;
87
+ workspaceVisible: z.ZodBoolean;
88
+ evidence: z.ZodObject<{
89
+ schemaVersion: z.ZodLiteral<"openpond.humanLocalEvidenceExport.v1">;
90
+ actorId: z.ZodString;
91
+ scope: z.ZodString;
92
+ projectId: z.ZodString;
93
+ dataset: z.ZodObject<{
94
+ id: z.ZodString;
95
+ revision: z.ZodNumber;
96
+ contentHash: z.ZodString;
97
+ }, z.core.$strict>;
98
+ graderId: z.ZodString;
99
+ compiledGraderHash: z.ZodString;
100
+ attempts: z.ZodArray<z.ZodObject<{
101
+ origin: z.ZodObject<{
102
+ kind: z.ZodLiteral<"owner_attested_local">;
103
+ ownerActorId: z.ZodString;
104
+ teamId: z.ZodString;
105
+ executionHash: z.ZodString;
106
+ configurationHash: z.ZodString;
107
+ retainedAttemptHash: z.ZodString;
108
+ traceHash: z.ZodString;
109
+ publicationCutoffHash: z.ZodString;
110
+ }, z.core.$strict>;
111
+ executionId: z.ZodString;
112
+ receiptId: z.ZodString;
113
+ taskId: z.ZodString;
114
+ targetId: z.ZodString;
115
+ familyKey: z.ZodString;
116
+ split: z.ZodEnum<{
117
+ train: "train";
118
+ validation: "validation";
119
+ test: "test";
120
+ frozen_eval: "frozen_eval";
121
+ }>;
122
+ input: z.ZodRecord<z.ZodString, z.ZodUnknown>;
123
+ policyVisibleContext: z.ZodRecord<z.ZodString, z.ZodUnknown>;
124
+ output: z.ZodNullable<z.ZodString>;
125
+ error: z.ZodNullable<z.ZodString>;
126
+ events: z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
127
+ coverage: z.ZodObject<{
128
+ sourceEventCount: z.ZodNumber;
129
+ publishedEventCount: z.ZodNumber;
130
+ traceLimited: z.ZodBoolean;
131
+ artifactsIncluded: z.ZodLiteral<false>;
132
+ }, z.core.$strict>;
133
+ }, z.core.$strict>>;
134
+ sealedAt: z.ZodString;
135
+ contentHash: z.ZodString;
136
+ }, z.core.$strict>;
137
+ }, z.core.$strict>;
138
+ export declare const HumanShareLocalRequestSchema: z.ZodObject<{
139
+ scope: z.ZodString;
140
+ projectId: z.ZodString;
141
+ graderId: z.ZodString;
142
+ selections: z.ZodArray<z.ZodObject<{
143
+ executionId: z.ZodString;
144
+ receiptId: z.ZodString;
145
+ }, z.core.$strict>>;
146
+ endpoint: z.ZodLiteral<"share_local">;
147
+ operationId: z.ZodString;
148
+ audience: z.ZodArray<z.ZodString>;
149
+ workspaceVisible: z.ZodBoolean;
150
+ }, z.core.$strict>;
151
+ export declare const HumanLocalPublicationsReadSchema: z.ZodObject<{
152
+ endpoint: z.ZodLiteral<"local_publications">;
153
+ scope: z.ZodString;
154
+ executionId: z.ZodString;
155
+ }, z.core.$strict>;
156
+ export declare const HumanRevokeLocalPublicationSchema: z.ZodObject<{
157
+ endpoint: z.ZodLiteral<"revoke_local">;
158
+ scope: z.ZodString;
159
+ publication: z.ZodObject<{
160
+ id: z.ZodString;
161
+ revision: z.ZodNumber;
162
+ contentHash: z.ZodString;
163
+ }, z.core.$strict>;
164
+ }, z.core.$strict>;
165
+ //# sourceMappingURL=local-publication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-publication.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/local-publication.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAItB,eAAO,MAAM,6BAA6B;;;;;;;;;kBAAmM,CAAC;AAC9O,eAAO,MAAM,8BAA8B;;;;;;;;kBAA6H,CAAC;AAGzK,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAA2O,CAAC;AACvR,MAAM,MAAM,wBAAwB,GAAC,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AACpF,eAAO,MAAM,6BAA6B;;;;;;;;;kBAA6K,CAAC;AACxN,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAAiM,CAAC;AAC7O,eAAO,MAAM,4BAA4B;;;;;;;;;;;;kBAAmL,CAAC;AAE7N,eAAO,MAAM,gCAAgC;;;;kBAAsF,CAAC;AAEpI,eAAO,MAAM,iCAAiC;;;;;;;;kBAAqF,CAAC"}
@@ -0,0 +1,43 @@
1
+ import type { HumanReview, HumanReviewCommand } from "./contracts.js";
2
+ export type HumanOperationReceipt = {
3
+ requestHash: string;
4
+ reviewId: string;
5
+ revision: number;
6
+ };
7
+ export interface HumanReviewTransaction {
8
+ get(id: string, revision?: number): Promise<HumanReview | null>;
9
+ put(record: HumanReview, expectedRevision: number): Promise<void>;
10
+ list(query: {
11
+ afterId?: string;
12
+ limit: number;
13
+ projectId?: string;
14
+ }): Promise<{
15
+ items: HumanReview[];
16
+ nextCursor: string | null;
17
+ }>;
18
+ operation(id: string): Promise<HumanOperationReceipt | null>;
19
+ saveOperation(id: string, receipt: HumanOperationReceipt): Promise<void>;
20
+ }
21
+ /** Serialize and atomically roll back all review mutations in one scope. */
22
+ export interface HumanReviewRepository {
23
+ transaction<T>(scope: string, callback: (tx: HumanReviewTransaction) => Promise<T>): Promise<T>;
24
+ }
25
+ export type HumanReviewContext = {
26
+ scope: string;
27
+ actorId: string;
28
+ };
29
+ export type HumanReviewAuthority = {
30
+ /** Current membership and resource authority, never a caller-supplied role. */
31
+ owner(context: HumanReviewContext, projectId: string): Promise<boolean>;
32
+ member(context: HumanReviewContext): Promise<void>;
33
+ /** Includes dataset/grader/rubric pins and exact output/trace identities. Never shares evidence. */
34
+ evidence(context: HumanReviewContext, record: Pick<HumanReview, "projectId" | "evidence" | "form">): Promise<void>;
35
+ publication?(context: HumanReviewContext, record: HumanReview, release: HumanReview["evidence"]["dataset"], proposalHash: string): Promise<void>;
36
+ completeExecution?(context: HumanReviewContext, record: HumanReview, result: NonNullable<HumanReview["execution"]>["result"]): Promise<void>;
37
+ execution?(context: HumanReviewContext, record: HumanReview, binding: NonNullable<HumanReview["execution"]>): Promise<void>;
38
+ assignee(context: HumanReviewContext, actorId: string, record: Pick<HumanReview, "projectId" | "evidence" | "form">): Promise<void>;
39
+ };
40
+ export type HumanReviewExecutionOwner = {
41
+ dispatch(context: HumanReviewContext, review: HumanReview, command: HumanReviewCommand): Promise<unknown>;
42
+ };
43
+ //# sourceMappingURL=repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../../src/human-review/repository.ts"],"names":[],"mappings":"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"}