@openpond/evals 0.10.5 → 0.10.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LEARNING.md +24 -0
- package/dist/learning/admission.js +1 -0
- package/dist/learning/contracts.js +11 -1
- package/dist/learning/index.js +1 -0
- package/dist/learning/iteration-candidate-decision.js +12 -7
- package/dist/learning/iteration-reservation-contracts.js +2 -1
- package/dist/learning/iteration-reservation-service.js +5 -1
- package/dist/learning/iteration-training-parent.js +47 -0
- package/dist/learning/policy-inspection.js +15 -3
- package/dist/types/learning/admission.d.ts +18 -0
- package/dist/types/learning/admission.d.ts.map +1 -1
- package/dist/types/learning/batch-service.d.ts +14 -0
- package/dist/types/learning/batch-service.d.ts.map +1 -1
- package/dist/types/learning/contracts.d.ts +98 -0
- package/dist/types/learning/contracts.d.ts.map +1 -1
- package/dist/types/learning/index.d.ts +1 -0
- package/dist/types/learning/index.d.ts.map +1 -1
- package/dist/types/learning/iteration-candidate-decision.d.ts +16 -0
- package/dist/types/learning/iteration-candidate-decision.d.ts.map +1 -1
- package/dist/types/learning/iteration-reservation-contracts.d.ts +14 -0
- package/dist/types/learning/iteration-reservation-contracts.d.ts.map +1 -1
- package/dist/types/learning/iteration-reservation-service.d.ts.map +1 -1
- package/dist/types/learning/iteration-training-parent.d.ts +37 -0
- package/dist/types/learning/iteration-training-parent.d.ts.map +1 -0
- package/dist/types/learning/operations.d.ts +72 -0
- package/dist/types/learning/operations.d.ts.map +1 -1
- package/dist/types/learning/policy-inspection.d.ts +34 -0
- package/dist/types/learning/policy-inspection.d.ts.map +1 -1
- package/dist/types/learning/repository.d.ts +47 -0
- package/dist/types/learning/repository.d.ts.map +1 -1
- package/dist/types/learning/service.d.ts +34 -0
- package/dist/types/learning/service.d.ts.map +1 -1
- package/dist/types/learning/transport.d.ts +83 -0
- package/dist/types/learning/transport.d.ts.map +1 -1
- package/package.json +1 -1
- package/schemas/learning/v1/chain.schema.json +75 -2
- package/schemas/learning/v1/command-request.schema.json +201 -136
- package/schemas/learning/v1/definition.schema.json +116 -14
- package/schemas/learning/v1/iteration.schema.json +47 -0
- package/schemas/learning/v1/policy-inspection.schema.json +127 -33
package/LEARNING.md
CHANGED
|
@@ -79,6 +79,24 @@ for untrusted schemas and deliberately rejects unsupported capabilities.
|
|
|
79
79
|
|
|
80
80
|
## Host responsibilities
|
|
81
81
|
|
|
82
|
+
### Accepted checkpoints between iterations
|
|
83
|
+
|
|
84
|
+
Candidate decisions are reconciled with their verified `decidedAt`, immutable
|
|
85
|
+
decision reference, execution, evaluation and terminal receipt. The chain records
|
|
86
|
+
the latest accepted candidate. New reservations capture its exact accepted
|
|
87
|
+
iteration revision in `trainingParentSelection`; `trainingParent` becomes that
|
|
88
|
+
candidate's artifact reference. Before the first acceptance, the configured base
|
|
89
|
+
parent is used. A rejected candidate is removed from future parent selection;
|
|
90
|
+
already reserved iterations keep their captured parent and original review.
|
|
91
|
+
|
|
92
|
+
`inspectPolicy` returns the resolved next `trainingParent`, or a blocker when its
|
|
93
|
+
accepted evidence or underlying model/method is incompatible. Execution owners
|
|
94
|
+
must resolve the captured iteration revision, verify the team/Model-scoped
|
|
95
|
+
terminal checkpoint and materialize it through their existing continuation
|
|
96
|
+
adapter. The hosted adapter uses fresh optimizer state. Acceptance does not
|
|
97
|
+
activate serving. Candidate decisions lacking verified timing must be reconciled
|
|
98
|
+
from their retained provider receipts before another reservation can use them.
|
|
99
|
+
|
|
82
100
|
### Reward fixture checks
|
|
83
101
|
|
|
84
102
|
Reward drafts may contain up to 50 named fixtures. JSON and numeric editor fields
|
|
@@ -274,3 +292,9 @@ retained diagnostic; a new reviewed policy revision may resume it. Hosts must
|
|
|
274
292
|
poll due timers for their execution owner and supply an authorized actor. This
|
|
275
293
|
worker does not execute a Work prompt or submit a provider Job; the existing
|
|
276
294
|
iteration dispatch worker owns that next transition.
|
|
295
|
+
|
|
296
|
+
Task Definitions may declare `requiredOutputs`. These optional contracts use
|
|
297
|
+
Taskset output paths, media types, schema references and size bounds. Evidence
|
|
298
|
+
conversion copies them into every task before grading or sealing a batch, so a
|
|
299
|
+
changed output contract requires a new definition and new matching evidence and
|
|
300
|
+
review receipts. Definitions without this field retain their existing hashes.
|
|
@@ -85,6 +85,7 @@ export function taskRecordFromEvidence(evidence, definition) {
|
|
|
85
85
|
policyVisibleContext: { instructions: definition.instructions },
|
|
86
86
|
privilegedContextRef: evidence.submission.evaluatorContext === null ? null : `task-evidence:${evidence.contentHash}`,
|
|
87
87
|
artifactRefs: evidence.submission.assets, tags: [definition.category],
|
|
88
|
+
...(definition.requiredOutputs ? { requiredOutputs: definition.requiredOutputs } : {}),
|
|
88
89
|
});
|
|
89
90
|
}
|
|
90
91
|
export function taskAttemptEvidence(evidence, output) {
|
|
@@ -2,7 +2,7 @@ import { LearningDomainError } from "./errors.js";
|
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { ImmutableAssetRefSchema, ImmutableReleaseRefSchema, ReleaseHashSchema, ReleaseIdSchema, ReleaseTimestampSchema, contentHash } from "@openpond/harness";
|
|
4
4
|
import { RewardBindingSchema, RewardCompositionSchema, RewardReleaseRefSchema, RewardReleaseSchema } from "../rewards.js";
|
|
5
|
-
import { TaskSplitSchema, TasksetReleaseContentSchema } from "../tasksets.js";
|
|
5
|
+
import { TaskRecordSchema, TaskSplitSchema, TasksetReleaseContentSchema } from "../tasksets.js";
|
|
6
6
|
import { assertBoundedTaskJson, validateTaskSchema } from "../task-schema.js";
|
|
7
7
|
export const LearningJsonObjectSchema = z.record(z.string(), z.json());
|
|
8
8
|
export const LearningRevisionRefSchema = RewardReleaseRefSchema;
|
|
@@ -18,6 +18,7 @@ export const TaskDefinitionContentSchema = z.object({
|
|
|
18
18
|
familyNamespace: ReleaseIdSchema,
|
|
19
19
|
inputSchema: z.record(z.string(), z.unknown()),
|
|
20
20
|
outputSchema: z.record(z.string(), z.unknown()),
|
|
21
|
+
requiredOutputs: TaskRecordSchema.shape.requiredOutputs,
|
|
21
22
|
rewardBinding: LearningRevisionRefSchema,
|
|
22
23
|
harness: ImmutableReleaseRefSchema.nullable(),
|
|
23
24
|
execution: TasksetReleaseContentSchema.pick({ policy: true, environment: true, environmentRelease: true, tools: true, capabilities: true, verifierSetRelease: true }).strict(),
|
|
@@ -216,6 +217,13 @@ export const LearningPolicyContentSchema = z.object({
|
|
|
216
217
|
context.addIssue({ code: "custom", path: ["limits"], message: "Daily spend must permit the iteration budget." });
|
|
217
218
|
});
|
|
218
219
|
export const LearningPolicySchema = LearningPolicyContentSchema.safeExtend({ contentHash: ReleaseHashSchema }).strict();
|
|
220
|
+
export const LearningAcceptedParentSchema = z.object({
|
|
221
|
+
iterationId: ReleaseIdSchema,
|
|
222
|
+
iterationRevision: z.number().int().positive(),
|
|
223
|
+
candidate: ImmutableReleaseRefSchema,
|
|
224
|
+
decision: LearningRevisionRefSchema,
|
|
225
|
+
decidedAt: ReleaseTimestampSchema,
|
|
226
|
+
}).strict();
|
|
219
227
|
export const LearningIterationStatusSchema = z.enum(["waiting_for_data", "waiting_for_review", "ready", "dispatching", "training", "evaluating", "candidate_ready", "accepted", "rejected", "paused", "failed", "cancelling", "cancelled", "completed_without_candidate"]);
|
|
220
228
|
export const LearningIterationSchema = z.object({
|
|
221
229
|
schemaVersion: z.literal("openpond.learningIteration.v1"),
|
|
@@ -227,12 +235,14 @@ export const LearningIterationSchema = z.object({
|
|
|
227
235
|
batch: LearningRevisionRefSchema.nullable(),
|
|
228
236
|
sourceWatermarks: z.record(ReleaseIdSchema, z.number().int().nonnegative()),
|
|
229
237
|
trainingParent: ImmutableReleaseRefSchema,
|
|
238
|
+
trainingParentSelection: LearningAcceptedParentSchema.nullable().optional(),
|
|
230
239
|
teacher: ImmutableReleaseRefSchema.nullable(),
|
|
231
240
|
upstreamEvent: ImmutableReleaseRefSchema.nullable(),
|
|
232
241
|
trainingJob: ImmutableReleaseRefSchema.nullable(),
|
|
233
242
|
evaluationJob: ImmutableReleaseRefSchema.nullable(),
|
|
234
243
|
candidateVersion: ImmutableReleaseRefSchema.nullable(),
|
|
235
244
|
candidateDecision: LearningRevisionRefSchema.nullable().default(null),
|
|
245
|
+
candidateDecisionAt: ReleaseTimestampSchema.nullable().optional(),
|
|
236
246
|
dispatchId: ReleaseIdSchema,
|
|
237
247
|
retryCount: z.number().int().nonnegative(),
|
|
238
248
|
spendUsd: z.number().nonnegative(),
|
package/dist/learning/index.js
CHANGED
|
@@ -16,6 +16,7 @@ export * from "./iteration-reservation-contracts.js";
|
|
|
16
16
|
export * from "./iteration-dispatch-contracts.js";
|
|
17
17
|
export * from "./iteration-dispatch-worker.js";
|
|
18
18
|
export * from "./iteration-candidate-decision.js";
|
|
19
|
+
export { resolveLearningTrainingParent } from "./iteration-training-parent.js";
|
|
19
20
|
export * from "./schedule-contracts.js";
|
|
20
21
|
export * from "./schedule-service.js";
|
|
21
22
|
export * from "./schedule-worker.js";
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { ImmutableReleaseRefSchema, ReleaseIdSchema } from "@openpond/harness";
|
|
2
|
+
import { ImmutableReleaseRefSchema, ReleaseIdSchema, ReleaseTimestampSchema } from "@openpond/harness";
|
|
3
3
|
import { LearningIterationSchema, LearningRevisionRefSchema } from "./contracts.js";
|
|
4
4
|
import { LearningDomainError } from "./errors.js";
|
|
5
5
|
import { LearningChainSchema } from "./iteration-reservation-contracts.js";
|
|
6
6
|
import { requireLearningResource } from "./repository.js";
|
|
7
|
+
import { latestAcceptedLearningParent } from "./iteration-training-parent.js";
|
|
7
8
|
export const LearningCandidateDecisionObservationSchema = z.object({
|
|
8
9
|
scope: ReleaseIdSchema,
|
|
9
10
|
iterationId: ReleaseIdSchema,
|
|
10
11
|
decision: LearningRevisionRefSchema,
|
|
12
|
+
decidedAt: ReleaseTimestampSchema,
|
|
11
13
|
outcome: z.enum(["accepted", "rejected"]),
|
|
12
14
|
execution: ImmutableReleaseRefSchema,
|
|
13
15
|
candidate: ImmutableReleaseRefSchema,
|
|
@@ -34,18 +36,21 @@ export async function reconcileLearningCandidateDecision(repository, value, opti
|
|
|
34
36
|
if (previous && input.decision.revision < previous.revision)
|
|
35
37
|
return iteration;
|
|
36
38
|
if (previous && input.decision.revision === previous.revision) {
|
|
37
|
-
if (!same(previous, input.decision) || iteration.status !== input.outcome
|
|
39
|
+
if (!same(previous, input.decision) || iteration.status !== input.outcome
|
|
40
|
+
|| (iteration.candidateDecisionAt != null && iteration.candidateDecisionAt !== input.decidedAt))
|
|
38
41
|
throw new LearningDomainError("learning_candidate_decision_revision_conflict", 409);
|
|
39
|
-
|
|
42
|
+
if (iteration.candidateDecisionAt != null)
|
|
43
|
+
return iteration;
|
|
40
44
|
}
|
|
41
45
|
const now = (options.now ?? (() => new Date().toISOString()))();
|
|
42
46
|
const updated = LearningIterationSchema.parse({ ...iteration, revision: iteration.revision + 1,
|
|
43
|
-
candidateDecision: input.decision, status: input.outcome, updatedAt: now });
|
|
47
|
+
candidateDecision: input.decision, candidateDecisionAt: input.decidedAt, status: input.outcome, updatedAt: now });
|
|
44
48
|
await tx.put("iteration", updated, iteration.revision, { parentId: dispatch.chainId, status: updated.status });
|
|
45
49
|
const chain = await requireLearningResource(tx, "chain", dispatch.chainId);
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
50
|
+
const acceptedParent = await latestAcceptedLearningParent(tx, chain.id);
|
|
51
|
+
await tx.put("chain", LearningChainSchema.parse({ ...chain, acceptedParent,
|
|
52
|
+
revision: chain.revision + 1, activeIterationId: chain.activeIterationId === iteration.id ? null : chain.activeIterationId,
|
|
53
|
+
updatedAt: now }), chain.revision, { parentId: chain.modelProjectId });
|
|
49
54
|
return updated;
|
|
50
55
|
});
|
|
51
56
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { ReleaseHashSchema, ReleaseIdSchema, ReleaseTimestampSchema } from "@openpond/harness";
|
|
3
|
-
import { LearningRevisionRefSchema } from "./contracts.js";
|
|
3
|
+
import { LearningAcceptedParentSchema, LearningRevisionRefSchema } from "./contracts.js";
|
|
4
4
|
export const LearningIterationTriggerSchema = z.discriminatedUnion("kind", [
|
|
5
5
|
z.object({ kind: z.literal("manual"), identity: ReleaseIdSchema }).strict(),
|
|
6
6
|
z.object({ kind: z.literal("schedule"), scheduledAt: ReleaseTimestampSchema }).strict(),
|
|
@@ -12,6 +12,7 @@ export const LearningChainSchema = z.object({
|
|
|
12
12
|
revision: z.number().int().positive(),
|
|
13
13
|
modelProjectId: ReleaseIdSchema,
|
|
14
14
|
activeIterationId: ReleaseIdSchema.nullable(),
|
|
15
|
+
acceptedParent: LearningAcceptedParentSchema.nullable().optional(),
|
|
15
16
|
latestIterationId: ReleaseIdSchema,
|
|
16
17
|
lastReservedAt: ReleaseTimestampSchema.nullable(),
|
|
17
18
|
updatedAt: ReleaseTimestampSchema,
|
|
@@ -6,6 +6,7 @@ import { inspectIterationEligibility, learningChainId, learningConsumptionId } f
|
|
|
6
6
|
import { readLearningIterationBudget } from "./iteration-budget.js";
|
|
7
7
|
import { LearningChainSchema, LearningConsumptionSchema, LearningIterationReservationSchema } from "./iteration-reservation-contracts.js";
|
|
8
8
|
import { requireLearningRelease, requireLearningResource } from "./repository.js";
|
|
9
|
+
import { latestAcceptedLearningParent, resolveLearningTrainingParent } from "./iteration-training-parent.js";
|
|
9
10
|
/** The caller owns one scope-serialized transaction. This never submits a Job. */
|
|
10
11
|
export async function reserveLearningIteration(transaction, input, actorId, now) {
|
|
11
12
|
const policy = await requireLearningRelease(transaction, "policy", input.policy);
|
|
@@ -44,6 +45,8 @@ export async function reserveLearningIteration(transaction, input, actorId, now)
|
|
|
44
45
|
const ready = eligibility.counts.eligible >= policy.admission.minimumApprovedExamples;
|
|
45
46
|
const status = ready ? "ready" : eligibility.counts.awaitingReview > 0 ? "waiting_for_review" : "waiting_for_data";
|
|
46
47
|
const pointers = [];
|
|
48
|
+
const acceptedParent = await latestAcceptedLearningParent(transaction, chainId, true);
|
|
49
|
+
const parent = await resolveLearningTrainingParent(transaction, policy, acceptedParent);
|
|
47
50
|
let batch = null;
|
|
48
51
|
if (ready) {
|
|
49
52
|
await assertAvailableBudget(transaction, chainId, now, policy.limits.maxIterationSpendUsd, policy.limits.maxDailySpendUsd);
|
|
@@ -68,7 +71,7 @@ export async function reserveLearningIteration(transaction, input, actorId, now)
|
|
|
68
71
|
triggerIdentity, batch,
|
|
69
72
|
// Existing evidence has no ordered ingress sequence. Consumption records,
|
|
70
73
|
// not a count or lexicographic ID cursor, decide whether an example is new.
|
|
71
|
-
sourceWatermarks: {},
|
|
74
|
+
sourceWatermarks: {}, ...parent, teacher: policy.teacher, upstreamEvent: null,
|
|
72
75
|
trainingJob: null, evaluationJob: null, candidateVersion: null, dispatchId: `dispatch-${contentHash(id)}`,
|
|
73
76
|
retryCount: 0, spendUsd: 0, failure: null, createdAt: now, updatedAt: now,
|
|
74
77
|
});
|
|
@@ -82,6 +85,7 @@ export async function reserveLearningIteration(transaction, input, actorId, now)
|
|
|
82
85
|
const updatedChain = LearningChainSchema.parse({
|
|
83
86
|
schemaVersion: "openpond.learningChain.v1", id: chainId, revision: (chain?.revision ?? 0) + 1,
|
|
84
87
|
modelProjectId: policy.modelProjectId, activeIterationId: ready ? id : null, latestIterationId: id,
|
|
88
|
+
acceptedParent,
|
|
85
89
|
lastReservedAt: ready ? now : chain?.lastReservedAt ?? null, updatedAt: now,
|
|
86
90
|
});
|
|
87
91
|
await transaction.put("iteration", iteration, 0, { parentId: chainId, status });
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { LearningAcceptedParentSchema, sameLearningRef } from "./contracts.js";
|
|
2
|
+
import { LearningDomainError } from "./errors.js";
|
|
3
|
+
import { requireLearningRelease, requireLearningResource } from "./repository.js";
|
|
4
|
+
/** Select the latest accepted human decision. A later rejection removes that
|
|
5
|
+
* candidate from future selection without rewriting reserved descendants. */
|
|
6
|
+
export async function latestAcceptedLearningParent(tx, chainId, requireComplete = false) {
|
|
7
|
+
let selected = null;
|
|
8
|
+
let afterId;
|
|
9
|
+
do {
|
|
10
|
+
const page = await tx.list("iteration", { parentId: chainId, status: "accepted", limit: 100, ...(afterId ? { afterId } : {}) });
|
|
11
|
+
for (const iteration of page.items) {
|
|
12
|
+
if (!iteration.candidateVersion || !iteration.candidateDecision || !iteration.candidateDecisionAt || !iteration.trainingJob) {
|
|
13
|
+
if (requireComplete)
|
|
14
|
+
throw new LearningDomainError("learning_accepted_parent_evidence_missing", 409);
|
|
15
|
+
continue;
|
|
16
|
+
}
|
|
17
|
+
const candidate = LearningAcceptedParentSchema.parse({ iterationId: iteration.id, iterationRevision: iteration.revision,
|
|
18
|
+
candidate: iteration.candidateVersion, decision: iteration.candidateDecision, decidedAt: iteration.candidateDecisionAt });
|
|
19
|
+
const order = [Date.parse(candidate.decidedAt), candidate.decision.id, candidate.decision.revision];
|
|
20
|
+
const previous = selected ? [Date.parse(selected.decidedAt), selected.decision.id, selected.decision.revision] : null;
|
|
21
|
+
if (!previous || order[0] > previous[0] || (order[0] === previous[0]
|
|
22
|
+
&& (order[1] > previous[1] || (order[1] === previous[1] && order[2] > previous[2]))))
|
|
23
|
+
selected = candidate;
|
|
24
|
+
}
|
|
25
|
+
afterId = page.nextCursor ?? undefined;
|
|
26
|
+
} while (afterId);
|
|
27
|
+
return selected;
|
|
28
|
+
}
|
|
29
|
+
/** Reservation captures an accepted revision before dispatch or later reviews.
|
|
30
|
+
* Switching the underlying base requires a separately reviewed learning chain. */
|
|
31
|
+
export async function resolveLearningTrainingParent(tx, policy, selection) {
|
|
32
|
+
if (!selection)
|
|
33
|
+
return { trainingParent: policy.trainingParent, trainingParentSelection: null };
|
|
34
|
+
const parent = await requireLearningResource(tx, "iteration", selection.iterationId, selection.iterationRevision);
|
|
35
|
+
const sourcePolicy = await requireLearningRelease(tx, "policy", parent.policy);
|
|
36
|
+
if (parent.status !== "accepted" || !parent.candidateVersion || !parent.candidateDecision || !parent.trainingJob
|
|
37
|
+
|| parent.candidateVersion.id !== selection.candidate.id || parent.candidateVersion.contentHash !== selection.candidate.contentHash
|
|
38
|
+
|| !sameLearningRef(parent.candidateDecision, selection.decision) || parent.candidateDecisionAt !== selection.decidedAt
|
|
39
|
+
|| sourcePolicy.modelProjectId !== policy.modelProjectId || sourcePolicy.executionOwner !== policy.executionOwner) {
|
|
40
|
+
throw new LearningDomainError("learning_accepted_parent_evidence_mismatch", 409);
|
|
41
|
+
}
|
|
42
|
+
if (sourcePolicy.trainingParent.id !== policy.trainingParent.id || sourcePolicy.trainingParent.contentHash !== policy.trainingParent.contentHash
|
|
43
|
+
|| sourcePolicy.training.method !== policy.training.method) {
|
|
44
|
+
throw new LearningDomainError("learning_accepted_parent_configuration_mismatch", 409, "The accepted checkpoint belongs to a different starting model or training method.");
|
|
45
|
+
}
|
|
46
|
+
return { trainingParent: selection.candidate, trainingParentSelection: selection };
|
|
47
|
+
}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import { ReleaseIdSchema, ReleaseTimestampSchema } from "@openpond/harness";
|
|
1
|
+
import { ImmutableReleaseRefSchema, ReleaseIdSchema, ReleaseTimestampSchema } from "@openpond/harness";
|
|
2
2
|
import { z } from "zod";
|
|
3
|
-
import { LearningRevisionRefSchema, learningRef, sameLearningRef } from "./contracts.js";
|
|
3
|
+
import { LearningAcceptedParentSchema, LearningRevisionRefSchema, learningRef, sameLearningRef } from "./contracts.js";
|
|
4
4
|
import { prepareLearningBatch } from "./batch-service.js";
|
|
5
5
|
import { LearningDomainError } from "./errors.js";
|
|
6
6
|
import { readLearningIterationBudget } from "./iteration-budget.js";
|
|
7
7
|
import { inspectIterationEligibility, learningChainId } from "./iteration-eligibility.js";
|
|
8
8
|
import { LearningChainSchema, LearningEligibilityCountsSchema } from "./iteration-reservation-contracts.js";
|
|
9
9
|
import { requireLearningRelease, requireLearningResource } from "./repository.js";
|
|
10
|
+
import { latestAcceptedLearningParent, resolveLearningTrainingParent } from "./iteration-training-parent.js";
|
|
10
11
|
/** A scope-serialized snapshot of shared reservation readiness, not a Job guarantee.
|
|
11
12
|
* No iteration, timer, batch, consumption or operation record is written. */
|
|
12
13
|
export const LearningPolicyInspectionResultSchema = z.object({
|
|
@@ -14,6 +15,7 @@ export const LearningPolicyInspectionResultSchema = z.object({
|
|
|
14
15
|
modelProjectId: ReleaseIdSchema,
|
|
15
16
|
inspectedAt: ReleaseTimestampSchema,
|
|
16
17
|
chain: LearningChainSchema.nullable(),
|
|
18
|
+
trainingParent: z.object({ reference: ImmutableReleaseRefSchema, selection: LearningAcceptedParentSchema.nullable() }).strict().nullable().default(null),
|
|
17
19
|
counts: LearningEligibilityCountsSchema.nullable(),
|
|
18
20
|
minimumApprovedExamples: z.number().int().positive(),
|
|
19
21
|
canReserve: z.boolean(),
|
|
@@ -73,8 +75,18 @@ export async function inspectLearningPolicy(transaction, reference, actorId, now
|
|
|
73
75
|
// must remain visible while the Model's settings and history can still load.
|
|
74
76
|
block(error.code, error.message.slice(0, 20_000));
|
|
75
77
|
}
|
|
78
|
+
let trainingParent = null;
|
|
79
|
+
try {
|
|
80
|
+
const resolved = await resolveLearningTrainingParent(transaction, policy, await latestAcceptedLearningParent(transaction, chainId, true));
|
|
81
|
+
trainingParent = { reference: resolved.trainingParent, selection: resolved.trainingParentSelection };
|
|
82
|
+
}
|
|
83
|
+
catch (error) {
|
|
84
|
+
if (!(error instanceof LearningDomainError))
|
|
85
|
+
throw error;
|
|
86
|
+
block(error.code, error.message.slice(0, 20_000));
|
|
87
|
+
}
|
|
76
88
|
return LearningPolicyInspectionResultSchema.parse({
|
|
77
|
-
policy: learningRef(policy), modelProjectId: policy.modelProjectId, inspectedAt: now, chain,
|
|
89
|
+
policy: learningRef(policy), modelProjectId: policy.modelProjectId, inspectedAt: now, chain, trainingParent,
|
|
78
90
|
counts, minimumApprovedExamples: policy.admission.minimumApprovedExamples, canReserve: blockers.length === 0,
|
|
79
91
|
blockers, cooldownUntil,
|
|
80
92
|
budget: { ...budget, maximumIterationSpendUsd: policy.limits.maxIterationSpendUsd, maximumDailySpendUsd: policy.limits.maxDailySpendUsd },
|
|
@@ -79,6 +79,24 @@ export declare const TaskBatchPackageMetadataSchema: z.ZodObject<{
|
|
|
79
79
|
familyNamespace: z.ZodString;
|
|
80
80
|
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
81
81
|
outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
82
|
+
requiredOutputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
83
|
+
path: z.ZodString;
|
|
84
|
+
mediaType: z.ZodString;
|
|
85
|
+
schemaRef: z.ZodDefault<z.ZodNullable<z.ZodObject<{
|
|
86
|
+
id: z.ZodString;
|
|
87
|
+
path: z.ZodString;
|
|
88
|
+
contentHash: z.ZodString;
|
|
89
|
+
sizeBytes: z.ZodNumber;
|
|
90
|
+
mediaType: z.ZodString;
|
|
91
|
+
visibility: z.ZodEnum<{
|
|
92
|
+
policy: "policy";
|
|
93
|
+
verifier: "verifier";
|
|
94
|
+
host_private: "host_private";
|
|
95
|
+
}>;
|
|
96
|
+
}, z.core.$strict>>>;
|
|
97
|
+
maxBytes: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
|
|
98
|
+
metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
99
|
+
}, z.core.$strict>>>;
|
|
82
100
|
rewardBinding: z.ZodObject<{
|
|
83
101
|
id: z.ZodString;
|
|
84
102
|
contentHash: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"admission.d.ts","sourceRoot":"","sources":["../../../../../src/learning/admission.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAsF,KAAK,aAAa,EAAE,KAAK,iBAAiB,EAAE,KAAK,aAAa,EAAE,MAAM,eAAe,CAAC;AACnL,OAAO,EAAuE,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC3I,OAAO,EAA4C,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnG,OAAO,EAAwS,KAAK,cAAc,EAAE,KAAK,qBAAqB,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE3c,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,EAAE,OAAO,GAAG,SAAS,CAAC;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,mBAAmB,EAAE,OAAO,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B,CAAC;AACF,MAAM,MAAM,eAAe,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,KAAK,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAA;CAAE,CAAC;AAElI,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,GAAG,sBAAsB,CAe9G;AAED,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,qBAAqB,GAAG,qBAAqB,CAWnI;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,qBAAqB,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAmB/M;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAU5E;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"admission.d.ts","sourceRoot":"","sources":["../../../../../src/learning/admission.ts"],"names":[],"mappings":"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"}
|
|
@@ -312,6 +312,20 @@ export declare function prepareLearningBatch(transaction: LearningTransaction, i
|
|
|
312
312
|
} | undefined;
|
|
313
313
|
};
|
|
314
314
|
contentHash: string;
|
|
315
|
+
requiredOutputs?: {
|
|
316
|
+
path: string;
|
|
317
|
+
mediaType: string;
|
|
318
|
+
schemaRef: {
|
|
319
|
+
id: string;
|
|
320
|
+
path: string;
|
|
321
|
+
contentHash: string;
|
|
322
|
+
sizeBytes: number;
|
|
323
|
+
mediaType: string;
|
|
324
|
+
visibility: "policy" | "verifier" | "host_private";
|
|
325
|
+
} | null;
|
|
326
|
+
maxBytes: number | null;
|
|
327
|
+
metadata: Record<string, unknown>;
|
|
328
|
+
}[] | undefined;
|
|
315
329
|
};
|
|
316
330
|
}>;
|
|
317
331
|
export declare function requireCurrentLearningEvidence(transaction: LearningTransaction, ref: LearningRevisionRef): Promise<TaskEvidence>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batch-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/batch-service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA8E,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAErK,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAQ3M;AAED,kGAAkG;AAClG,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"batch-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/batch-service.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgC,KAAK,mBAAmB,EAAE,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3G,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAA8E,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAErK,wBAAsB,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAQ3M;AAED,kGAAkG;AAClG,wBAAsB,oBAAoB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsBzK;AAED,wBAAsB,8BAA8B,CAAC,WAAW,EAAE,mBAAmB,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC,CAKtI"}
|
|
@@ -23,6 +23,24 @@ export declare const TaskDefinitionContentSchema: z.ZodObject<{
|
|
|
23
23
|
familyNamespace: z.ZodString;
|
|
24
24
|
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
25
25
|
outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
26
|
+
requiredOutputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
27
|
+
path: z.ZodString;
|
|
28
|
+
mediaType: z.ZodString;
|
|
29
|
+
schemaRef: z.ZodDefault<z.ZodNullable<z.ZodObject<{
|
|
30
|
+
id: z.ZodString;
|
|
31
|
+
path: z.ZodString;
|
|
32
|
+
contentHash: z.ZodString;
|
|
33
|
+
sizeBytes: z.ZodNumber;
|
|
34
|
+
mediaType: z.ZodString;
|
|
35
|
+
visibility: z.ZodEnum<{
|
|
36
|
+
policy: "policy";
|
|
37
|
+
verifier: "verifier";
|
|
38
|
+
host_private: "host_private";
|
|
39
|
+
}>;
|
|
40
|
+
}, z.core.$strict>>>;
|
|
41
|
+
maxBytes: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
|
|
42
|
+
metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
43
|
+
}, z.core.$strict>>>;
|
|
26
44
|
rewardBinding: z.ZodObject<{
|
|
27
45
|
id: z.ZodString;
|
|
28
46
|
contentHash: z.ZodString;
|
|
@@ -113,6 +131,24 @@ export declare const TaskDefinitionSchema: z.ZodObject<{
|
|
|
113
131
|
familyNamespace: z.ZodString;
|
|
114
132
|
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
115
133
|
outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
134
|
+
requiredOutputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
135
|
+
path: z.ZodString;
|
|
136
|
+
mediaType: z.ZodString;
|
|
137
|
+
schemaRef: z.ZodDefault<z.ZodNullable<z.ZodObject<{
|
|
138
|
+
id: z.ZodString;
|
|
139
|
+
path: z.ZodString;
|
|
140
|
+
contentHash: z.ZodString;
|
|
141
|
+
sizeBytes: z.ZodNumber;
|
|
142
|
+
mediaType: z.ZodString;
|
|
143
|
+
visibility: z.ZodEnum<{
|
|
144
|
+
policy: "policy";
|
|
145
|
+
verifier: "verifier";
|
|
146
|
+
host_private: "host_private";
|
|
147
|
+
}>;
|
|
148
|
+
}, z.core.$strict>>>;
|
|
149
|
+
maxBytes: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
|
|
150
|
+
metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
151
|
+
}, z.core.$strict>>>;
|
|
116
152
|
rewardBinding: z.ZodObject<{
|
|
117
153
|
id: z.ZodString;
|
|
118
154
|
contentHash: z.ZodString;
|
|
@@ -1174,6 +1210,20 @@ export declare const LearningPolicySchema: z.ZodObject<{
|
|
|
1174
1210
|
}, z.core.$strict>;
|
|
1175
1211
|
contentHash: z.ZodString;
|
|
1176
1212
|
}, z.core.$strict>;
|
|
1213
|
+
export declare const LearningAcceptedParentSchema: z.ZodObject<{
|
|
1214
|
+
iterationId: z.ZodString;
|
|
1215
|
+
iterationRevision: z.ZodNumber;
|
|
1216
|
+
candidate: z.ZodObject<{
|
|
1217
|
+
id: z.ZodString;
|
|
1218
|
+
contentHash: z.ZodString;
|
|
1219
|
+
}, z.core.$strict>;
|
|
1220
|
+
decision: z.ZodObject<{
|
|
1221
|
+
id: z.ZodString;
|
|
1222
|
+
contentHash: z.ZodString;
|
|
1223
|
+
revision: z.ZodNumber;
|
|
1224
|
+
}, z.core.$strict>;
|
|
1225
|
+
decidedAt: z.ZodString;
|
|
1226
|
+
}, z.core.$strict>;
|
|
1177
1227
|
export declare const LearningIterationStatusSchema: z.ZodEnum<{
|
|
1178
1228
|
failed: "failed";
|
|
1179
1229
|
cancelled: "cancelled";
|
|
@@ -1226,6 +1276,20 @@ export declare const LearningIterationSchema: z.ZodObject<{
|
|
|
1226
1276
|
id: z.ZodString;
|
|
1227
1277
|
contentHash: z.ZodString;
|
|
1228
1278
|
}, z.core.$strict>;
|
|
1279
|
+
trainingParentSelection: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
1280
|
+
iterationId: z.ZodString;
|
|
1281
|
+
iterationRevision: z.ZodNumber;
|
|
1282
|
+
candidate: z.ZodObject<{
|
|
1283
|
+
id: z.ZodString;
|
|
1284
|
+
contentHash: z.ZodString;
|
|
1285
|
+
}, z.core.$strict>;
|
|
1286
|
+
decision: z.ZodObject<{
|
|
1287
|
+
id: z.ZodString;
|
|
1288
|
+
contentHash: z.ZodString;
|
|
1289
|
+
revision: z.ZodNumber;
|
|
1290
|
+
}, z.core.$strict>;
|
|
1291
|
+
decidedAt: z.ZodString;
|
|
1292
|
+
}, z.core.$strict>>>;
|
|
1229
1293
|
teacher: z.ZodNullable<z.ZodObject<{
|
|
1230
1294
|
id: z.ZodString;
|
|
1231
1295
|
contentHash: z.ZodString;
|
|
@@ -1251,6 +1315,7 @@ export declare const LearningIterationSchema: z.ZodObject<{
|
|
|
1251
1315
|
contentHash: z.ZodString;
|
|
1252
1316
|
revision: z.ZodNumber;
|
|
1253
1317
|
}, z.core.$strict>>>;
|
|
1318
|
+
candidateDecisionAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
1254
1319
|
dispatchId: z.ZodString;
|
|
1255
1320
|
retryCount: z.ZodNumber;
|
|
1256
1321
|
spendUsd: z.ZodNumber;
|
|
@@ -1366,6 +1431,24 @@ export declare const LearningResourceSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
1366
1431
|
familyNamespace: z.ZodString;
|
|
1367
1432
|
inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
1368
1433
|
outputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
1434
|
+
requiredOutputs: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
1435
|
+
path: z.ZodString;
|
|
1436
|
+
mediaType: z.ZodString;
|
|
1437
|
+
schemaRef: z.ZodDefault<z.ZodNullable<z.ZodObject<{
|
|
1438
|
+
id: z.ZodString;
|
|
1439
|
+
path: z.ZodString;
|
|
1440
|
+
contentHash: z.ZodString;
|
|
1441
|
+
sizeBytes: z.ZodNumber;
|
|
1442
|
+
mediaType: z.ZodString;
|
|
1443
|
+
visibility: z.ZodEnum<{
|
|
1444
|
+
policy: "policy";
|
|
1445
|
+
verifier: "verifier";
|
|
1446
|
+
host_private: "host_private";
|
|
1447
|
+
}>;
|
|
1448
|
+
}, z.core.$strict>>>;
|
|
1449
|
+
maxBytes: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
|
|
1450
|
+
metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1451
|
+
}, z.core.$strict>>>;
|
|
1369
1452
|
rewardBinding: z.ZodObject<{
|
|
1370
1453
|
id: z.ZodString;
|
|
1371
1454
|
contentHash: z.ZodString;
|
|
@@ -2105,6 +2188,20 @@ export declare const LearningResourceSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
2105
2188
|
id: z.ZodString;
|
|
2106
2189
|
contentHash: z.ZodString;
|
|
2107
2190
|
}, z.core.$strict>;
|
|
2191
|
+
trainingParentSelection: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
2192
|
+
iterationId: z.ZodString;
|
|
2193
|
+
iterationRevision: z.ZodNumber;
|
|
2194
|
+
candidate: z.ZodObject<{
|
|
2195
|
+
id: z.ZodString;
|
|
2196
|
+
contentHash: z.ZodString;
|
|
2197
|
+
}, z.core.$strict>;
|
|
2198
|
+
decision: z.ZodObject<{
|
|
2199
|
+
id: z.ZodString;
|
|
2200
|
+
contentHash: z.ZodString;
|
|
2201
|
+
revision: z.ZodNumber;
|
|
2202
|
+
}, z.core.$strict>;
|
|
2203
|
+
decidedAt: z.ZodString;
|
|
2204
|
+
}, z.core.$strict>>>;
|
|
2108
2205
|
teacher: z.ZodNullable<z.ZodObject<{
|
|
2109
2206
|
id: z.ZodString;
|
|
2110
2207
|
contentHash: z.ZodString;
|
|
@@ -2130,6 +2227,7 @@ export declare const LearningResourceSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
2130
2227
|
contentHash: z.ZodString;
|
|
2131
2228
|
revision: z.ZodNumber;
|
|
2132
2229
|
}, z.core.$strict>>>;
|
|
2230
|
+
candidateDecisionAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2133
2231
|
dispatchId: z.ZodString;
|
|
2134
2232
|
retryCount: z.ZodNumber;
|
|
2135
2233
|
spendUsd: z.ZodNumber;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/contracts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,wBAAwB,2CAAiC,CAAC;AACvE,eAAO,MAAM,yBAAyB;;;;kBAAyB,CAAC;AAChE,eAAO,MAAM,yBAAyB,aAAiJ,CAAC;AAExL,eAAO,MAAM,2BAA2B
|
|
1
|
+
{"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/contracts.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ export * from "./iteration-reservation-contracts.js";
|
|
|
16
16
|
export * from "./iteration-dispatch-contracts.js";
|
|
17
17
|
export * from "./iteration-dispatch-worker.js";
|
|
18
18
|
export * from "./iteration-candidate-decision.js";
|
|
19
|
+
export { resolveLearningTrainingParent } from "./iteration-training-parent.js";
|
|
19
20
|
export * from "./schedule-contracts.js";
|
|
20
21
|
export * from "./schedule-service.js";
|
|
21
22
|
export * from "./schedule-worker.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/learning/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AACrD,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/learning/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,sCAAsC,CAAC;AACrD,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC;AAClD,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC"}
|
|
@@ -8,6 +8,7 @@ export declare const LearningCandidateDecisionObservationSchema: z.ZodObject<{
|
|
|
8
8
|
contentHash: z.ZodString;
|
|
9
9
|
revision: z.ZodNumber;
|
|
10
10
|
}, z.core.$strict>;
|
|
11
|
+
decidedAt: z.ZodString;
|
|
11
12
|
outcome: z.ZodEnum<{
|
|
12
13
|
rejected: "rejected";
|
|
13
14
|
accepted: "accepted";
|
|
@@ -90,5 +91,20 @@ export declare function reconcileLearningCandidateDecision(repository: LearningR
|
|
|
90
91
|
} | null;
|
|
91
92
|
createdAt: string;
|
|
92
93
|
updatedAt: string;
|
|
94
|
+
trainingParentSelection?: {
|
|
95
|
+
iterationId: string;
|
|
96
|
+
iterationRevision: number;
|
|
97
|
+
candidate: {
|
|
98
|
+
id: string;
|
|
99
|
+
contentHash: string;
|
|
100
|
+
};
|
|
101
|
+
decision: {
|
|
102
|
+
id: string;
|
|
103
|
+
contentHash: string;
|
|
104
|
+
revision: number;
|
|
105
|
+
};
|
|
106
|
+
decidedAt: string;
|
|
107
|
+
} | null | undefined;
|
|
108
|
+
candidateDecisionAt?: string | null | undefined;
|
|
93
109
|
}>;
|
|
94
110
|
//# sourceMappingURL=iteration-candidate-decision.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iteration-candidate-decision.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-candidate-decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAA2B,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"iteration-candidate-decision.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-candidate-decision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAA2B,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGnF,eAAO,MAAM,0CAA0C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAU5C,CAAC;AACZ,MAAM,MAAM,oCAAoC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0CAA0C,CAAC,CAAC;AAE9G;;gEAEgE;AAChE,wBAAsB,kCAAkC,CAAC,UAAU,EAAE,kBAAkB,EAAE,KAAK,EAAE,oCAAoC,EAClI,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCrC"}
|
|
@@ -13,6 +13,20 @@ export declare const LearningChainSchema: z.ZodObject<{
|
|
|
13
13
|
revision: z.ZodNumber;
|
|
14
14
|
modelProjectId: z.ZodString;
|
|
15
15
|
activeIterationId: z.ZodNullable<z.ZodString>;
|
|
16
|
+
acceptedParent: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
17
|
+
iterationId: z.ZodString;
|
|
18
|
+
iterationRevision: z.ZodNumber;
|
|
19
|
+
candidate: z.ZodObject<{
|
|
20
|
+
id: z.ZodString;
|
|
21
|
+
contentHash: z.ZodString;
|
|
22
|
+
}, z.core.$strict>;
|
|
23
|
+
decision: z.ZodObject<{
|
|
24
|
+
id: z.ZodString;
|
|
25
|
+
contentHash: z.ZodString;
|
|
26
|
+
revision: z.ZodNumber;
|
|
27
|
+
}, z.core.$strict>;
|
|
28
|
+
decidedAt: z.ZodString;
|
|
29
|
+
}, z.core.$strict>>>;
|
|
16
30
|
latestIterationId: z.ZodString;
|
|
17
31
|
lastReservedAt: z.ZodNullable<z.ZodString>;
|
|
18
32
|
updatedAt: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iteration-reservation-contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-reservation-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,8BAA8B;;;;;;4BAGzC,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"iteration-reservation-contracts.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-reservation-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,8BAA8B;;;;;;4BAGzC,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;kBAUrB,CAAC;AAEZ,eAAO,MAAM,+BAA+B;;;;;kBAKjC,CAAC;AAEZ;qFACqF;AACrF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;kBAS3B,CAAC;AAEZ,uFAAuF;AACvF,eAAO,MAAM,kCAAkC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmBpC,CAAC;AAEZ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAAC;AAC9F,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"iteration-reservation-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-reservation-service.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAmD,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"iteration-reservation-service.d.ts","sourceRoot":"","sources":["../../../../../src/learning/iteration-reservation-service.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAmD,KAAK,uBAAuB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAG1I,KAAK,cAAc,GAAG,OAAO,CAAC,eAAe,EAAE;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAAC;AAEhF,kFAAkF;AAClF,wBAAsB,wBAAwB,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,EAAE,CAAC,CA6ExK"}
|