@farmslot/protocol 0.83.1 → 0.84.0
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/CHANGELOG.md +52 -0
- package/dist/checklist-target.d.ts +5 -1
- package/dist/checklist-target.d.ts.map +1 -1
- package/dist/checklist-target.js +41 -0
- package/dist/checklist-target.js.map +1 -1
- package/dist/client-cache/cache.d.ts.map +1 -1
- package/dist/client-cache/cache.js +370 -26
- package/dist/client-cache/cache.js.map +1 -1
- package/dist/client-cache/command-method.d.ts +1 -1
- package/dist/client-cache/command-method.d.ts.map +1 -1
- package/dist/client-cache/command-method.js +1 -0
- package/dist/client-cache/command-method.js.map +1 -1
- package/dist/client-cache/entity-collection.d.ts +115 -0
- package/dist/client-cache/entity-collection.d.ts.map +1 -0
- package/dist/client-cache/entity-collection.js +323 -0
- package/dist/client-cache/entity-collection.js.map +1 -0
- package/dist/client-cache/entity-guards.d.ts +47 -0
- package/dist/client-cache/entity-guards.d.ts.map +1 -0
- package/dist/client-cache/entity-guards.js +193 -0
- package/dist/client-cache/entity-guards.js.map +1 -0
- package/dist/client-cache/entity-views.d.ts +62 -0
- package/dist/client-cache/entity-views.d.ts.map +1 -0
- package/dist/client-cache/entity-views.js +386 -0
- package/dist/client-cache/entity-views.js.map +1 -0
- package/dist/client-cache/index.d.ts +4 -0
- package/dist/client-cache/index.d.ts.map +1 -1
- package/dist/client-cache/index.js +4 -0
- package/dist/client-cache/index.js.map +1 -1
- package/dist/client-cache/keys.d.ts +13 -0
- package/dist/client-cache/keys.d.ts.map +1 -1
- package/dist/client-cache/keys.js +1 -0
- package/dist/client-cache/keys.js.map +1 -1
- package/dist/client-cache/native-history.d.ts +9 -2
- package/dist/client-cache/native-history.d.ts.map +1 -1
- package/dist/client-cache/native-history.js +66 -18
- package/dist/client-cache/native-history.js.map +1 -1
- package/dist/client-cache/registry.d.ts +15 -0
- package/dist/client-cache/registry.d.ts.map +1 -1
- package/dist/client-cache/registry.js +10 -0
- package/dist/client-cache/registry.js.map +1 -1
- package/dist/client-cache/run-details.d.ts +2 -1
- package/dist/client-cache/run-details.d.ts.map +1 -1
- package/dist/client-cache/run-details.js.map +1 -1
- package/dist/client-cache/run-list-versions.d.ts.map +1 -1
- package/dist/client-cache/run-list-versions.js.map +1 -1
- package/dist/client-cache/sync-state.d.ts +23 -0
- package/dist/client-cache/sync-state.d.ts.map +1 -0
- package/dist/client-cache/sync-state.js +39 -0
- package/dist/client-cache/sync-state.js.map +1 -0
- package/dist/client-cache/text-links.d.ts +11 -0
- package/dist/client-cache/text-links.d.ts.map +1 -0
- package/dist/client-cache/text-links.js +61 -0
- package/dist/client-cache/text-links.js.map +1 -0
- package/dist/client-cache/types.d.ts +11 -0
- package/dist/client-cache/types.d.ts.map +1 -1
- package/dist/contracts/agents.d.ts +6 -0
- package/dist/contracts/agents.d.ts.map +1 -1
- package/dist/contracts/agents.js.map +1 -1
- package/dist/contracts/analytics.d.ts +2 -2
- package/dist/contracts/analytics.d.ts.map +1 -1
- package/dist/contracts/evals.d.ts +9 -0
- package/dist/contracts/evals.d.ts.map +1 -1
- package/dist/contracts/evals.js +5 -0
- package/dist/contracts/evals.js.map +1 -1
- package/dist/contracts/family.d.ts +1 -1
- package/dist/contracts/family.d.ts.map +1 -1
- package/dist/contracts/pr-rules.d.ts +1 -1
- package/dist/contracts/pr-rules.d.ts.map +1 -1
- package/dist/contracts/pr-rules.js +3 -1
- package/dist/contracts/pr-rules.js.map +1 -1
- package/dist/contracts/review-workspace.d.ts +12 -0
- package/dist/contracts/review-workspace.d.ts.map +1 -1
- package/dist/contracts/review-workspace.js +9 -2
- package/dist/contracts/review-workspace.js.map +1 -1
- package/dist/contracts/reviews.d.ts +1 -1
- package/dist/contracts/reviews.d.ts.map +1 -1
- package/dist/contracts/run-lifecycle-view.d.ts.map +1 -1
- package/dist/contracts/run-lifecycle-view.js +9 -7
- package/dist/contracts/run-lifecycle-view.js.map +1 -1
- package/dist/contracts/runs.d.ts +77 -23
- package/dist/contracts/runs.d.ts.map +1 -1
- package/dist/contracts/runs.js +2 -2
- package/dist/contracts/runs.js.map +1 -1
- package/dist/contracts/slot-recovery.d.ts +10 -1
- package/dist/contracts/slot-recovery.d.ts.map +1 -1
- package/dist/contracts/slot-recovery.js +18 -10
- package/dist/contracts/slot-recovery.js.map +1 -1
- package/dist/contracts/slots.d.ts +31 -1
- package/dist/contracts/slots.d.ts.map +1 -1
- package/dist/contracts/task.d.ts +2 -0
- package/dist/contracts/task.d.ts.map +1 -1
- package/dist/contracts/task.js.map +1 -1
- package/dist/contracts/template-placeholders.d.ts.map +1 -1
- package/dist/contracts/template-placeholders.js +3 -2
- package/dist/contracts/template-placeholders.js.map +1 -1
- package/dist/deep-freeze.d.ts +6 -0
- package/dist/deep-freeze.d.ts.map +1 -0
- package/dist/deep-freeze.js +13 -0
- package/dist/deep-freeze.js.map +1 -0
- package/dist/file-stamp.d.ts +10 -0
- package/dist/file-stamp.d.ts.map +1 -0
- package/dist/file-stamp.js +12 -0
- package/dist/file-stamp.js.map +1 -0
- package/dist/fleet/host-load.d.ts +18 -0
- package/dist/fleet/host-load.d.ts.map +1 -0
- package/dist/fleet/host-load.js +30 -0
- package/dist/fleet/host-load.js.map +1 -0
- package/dist/fleet/stale.d.ts +13 -0
- package/dist/fleet/stale.d.ts.map +1 -0
- package/dist/fleet/stale.js +18 -0
- package/dist/fleet/stale.js.map +1 -0
- package/dist/fleet/summary.d.ts +8 -0
- package/dist/fleet/summary.d.ts.map +1 -0
- package/dist/fleet/summary.js +45 -0
- package/dist/fleet/summary.js.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/integrations/pr-rule-config.d.ts +2 -0
- package/dist/integrations/pr-rule-config.d.ts.map +1 -1
- package/dist/integrations/pr-rule-config.js +17 -4
- package/dist/integrations/pr-rule-config.js.map +1 -1
- package/dist/integrations/pr-workflow-defaults.d.ts.map +1 -1
- package/dist/integrations/pr-workflow-defaults.js +6 -3
- package/dist/integrations/pr-workflow-defaults.js.map +1 -1
- package/dist/node/farm-paths.d.ts +5 -0
- package/dist/node/farm-paths.d.ts.map +1 -1
- package/dist/node/farm-paths.js +64 -27
- package/dist/node/farm-paths.js.map +1 -1
- package/dist/node/pack-portability.d.ts +16 -0
- package/dist/node/pack-portability.d.ts.map +1 -1
- package/dist/node/pack-portability.js +169 -32
- package/dist/node/pack-portability.js.map +1 -1
- package/dist/node/slot-by-repo.d.ts +15 -1
- package/dist/node/slot-by-repo.d.ts.map +1 -1
- package/dist/node/slot-by-repo.js +115 -31
- package/dist/node/slot-by-repo.js.map +1 -1
- package/dist/node/tcp-metrics.d.ts +7 -0
- package/dist/node/tcp-metrics.d.ts.map +1 -0
- package/dist/node/tcp-metrics.js +131 -0
- package/dist/node/tcp-metrics.js.map +1 -0
- package/dist/performance/ranking.d.ts.map +1 -1
- package/dist/performance/ranking.js +1 -0
- package/dist/performance/ranking.js.map +1 -1
- package/dist/performance/recorder.d.ts.map +1 -1
- package/dist/performance/recorder.js +1 -1
- package/dist/performance/recorder.js.map +1 -1
- package/dist/performance/types.d.ts +5 -1
- package/dist/performance/types.d.ts.map +1 -1
- package/dist/performance/types.js +3 -0
- package/dist/performance/types.js.map +1 -1
- package/dist/performance/validation.d.ts.map +1 -1
- package/dist/performance/validation.js +19 -9
- package/dist/performance/validation.js.map +1 -1
- package/dist/recipe/common.d.ts.map +1 -1
- package/dist/recipe/common.js +2 -1
- package/dist/recipe/common.js.map +1 -1
- package/dist/recipe/manifest.js +1 -1
- package/dist/recipe/manifest.js.map +1 -1
- package/dist/rpc/auth.d.ts +6 -0
- package/dist/rpc/auth.d.ts.map +1 -1
- package/dist/rpc/auth.js.map +1 -1
- package/dist/rpc/clip.d.ts +38 -0
- package/dist/rpc/clip.d.ts.map +1 -0
- package/dist/rpc/clip.js +26 -0
- package/dist/rpc/clip.js.map +1 -0
- package/dist/rpc/eval.d.ts +5 -0
- package/dist/rpc/eval.d.ts.map +1 -1
- package/dist/rpc/fleet.d.ts +28 -1
- package/dist/rpc/fleet.d.ts.map +1 -1
- package/dist/rpc/fleet.js.map +1 -1
- package/dist/rpc/fs.d.ts +18 -0
- package/dist/rpc/fs.d.ts.map +1 -1
- package/dist/rpc/fs.js +2 -0
- package/dist/rpc/fs.js.map +1 -1
- package/dist/rpc/index.d.ts +1 -0
- package/dist/rpc/index.d.ts.map +1 -1
- package/dist/rpc/index.js +1 -0
- package/dist/rpc/index.js.map +1 -1
- package/dist/rpc/native-session.d.ts +31 -0
- package/dist/rpc/native-session.d.ts.map +1 -1
- package/dist/rpc/native-session.js.map +1 -1
- package/dist/rpc/pr.d.ts +24 -0
- package/dist/rpc/pr.d.ts.map +1 -1
- package/dist/rpc/registry.d.ts +3 -0
- package/dist/rpc/registry.d.ts.map +1 -1
- package/dist/rpc/registry.js +4 -0
- package/dist/rpc/registry.js.map +1 -1
- package/dist/rpc/run.d.ts +2 -1
- package/dist/rpc/run.d.ts.map +1 -1
- package/dist/rpc/run.js.map +1 -1
- package/dist/rpc/runner-models.d.ts.map +1 -1
- package/dist/rpc/runner-models.js +1 -0
- package/dist/rpc/runner-models.js.map +1 -1
- package/dist/rpc/slot.d.ts +26 -1
- package/dist/rpc/slot.d.ts.map +1 -1
- package/dist/rpc/slot.js +1 -0
- package/dist/rpc/slot.js.map +1 -1
- package/dist/runs/evidence-summary.d.ts +60 -4
- package/dist/runs/evidence-summary.d.ts.map +1 -1
- package/dist/runs/evidence-summary.js +148 -12
- package/dist/runs/evidence-summary.js.map +1 -1
- package/dist/runs/family-readiness.d.ts +4 -3
- package/dist/runs/family-readiness.d.ts.map +1 -1
- package/dist/runs/family-readiness.js.map +1 -1
- package/dist/runs/linked-tickets.d.ts +1 -1
- package/dist/runs/linked-tickets.d.ts.map +1 -1
- package/dist/runs/list-row.d.ts +57 -0
- package/dist/runs/list-row.d.ts.map +1 -0
- package/dist/runs/list-row.js +2 -0
- package/dist/runs/list-row.js.map +1 -0
- package/dist/runs/list-trim.d.ts +36 -4
- package/dist/runs/list-trim.d.ts.map +1 -1
- package/dist/runs/list-trim.js +327 -9
- package/dist/runs/list-trim.js.map +1 -1
- package/dist/runs/list-version.d.ts +2 -1
- package/dist/runs/list-version.d.ts.map +1 -1
- package/dist/runs/list-version.js.map +1 -1
- package/dist/runs/review-chain.d.ts +34 -2
- package/dist/runs/review-chain.d.ts.map +1 -1
- package/dist/runs/review-chain.js +31 -4
- package/dist/runs/review-chain.js.map +1 -1
- package/dist/runs/review-retries.d.ts +13 -3
- package/dist/runs/review-retries.d.ts.map +1 -1
- package/dist/runs/review-retries.js.map +1 -1
- package/dist/runs/run-family-groups.d.ts +7 -7
- package/dist/runs/run-family-groups.d.ts.map +1 -1
- package/dist/runs/run-family-groups.js.map +1 -1
- package/dist/runs/run-list-filter.d.ts +2 -1
- package/dist/runs/run-list-filter.d.ts.map +1 -1
- package/dist/runs/run-list-filter.js.map +1 -1
- package/dist/runs/run-list-observation.d.ts.map +1 -1
- package/dist/runs/run-list-observation.js.map +1 -1
- package/dist/runs/run-list-view.d.ts +3 -2
- package/dist/runs/run-list-view.d.ts.map +1 -1
- package/dist/runs/run-list-view.js.map +1 -1
- package/dist/slots/tracking-branch.d.ts.map +1 -1
- package/dist/slots/tracking-branch.js +4 -3
- package/dist/slots/tracking-branch.js.map +1 -1
- package/dist/surfaces/view-state.js +1 -1
- package/dist/surfaces/view-state.js.map +1 -1
- package/dist/transport/events.d.ts +42 -12
- package/dist/transport/events.d.ts.map +1 -1
- package/dist/transport/events.js +0 -1
- package/dist/transport/events.js.map +1 -1
- package/dist/transport/observations.d.ts +2 -0
- package/dist/transport/observations.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +12 -1
- package/scripts/literal-replacement.d.mts +2 -0
- package/scripts/literal-replacement.mjs +4 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-lifecycle-view.d.ts","sourceRoot":"","sources":["../../src/contracts/run-lifecycle-view.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,OAAO,KAAK,EAAE,yBAAyB,EAAoB,MAAM,yBAAyB,CAAC;AAC3F,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAEnE,wFAAwF;AACxF,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,SAAS,CAAC;AAE7D,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,SAAS,yBAAyB,EAAE,CAAC;CAC/C;AAyBD,eAAO,MAAM,wBAAwB,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"run-lifecycle-view.d.ts","sourceRoot":"","sources":["../../src/contracts/run-lifecycle-view.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ const labels = {
|
|
|
23
23
|
};
|
|
24
24
|
export const HUMAN_GATE_DECISION_TYPE = 'engine_human_gate';
|
|
25
25
|
const NEEDS_YOUR_DECISION = 'Needs your decision';
|
|
26
|
+
const WAITING_FOR_POSTING_DECISION = 'Waiting for posting decision';
|
|
26
27
|
/** The run's latest unresolved human gate, if any. */
|
|
27
28
|
export function openHumanGateDecision(run) {
|
|
28
29
|
const decisions = run?.decisions ?? [];
|
|
@@ -51,13 +52,16 @@ export function isBlockedAtOpenHumanGate(run) {
|
|
|
51
52
|
* decision, with the gate's first readiness reason.
|
|
52
53
|
*/
|
|
53
54
|
function gateDecisionWait(run) {
|
|
55
|
+
if (['reconciling', 'human-gating', 'needs-decision', 'blocked'].includes(run.status) &&
|
|
56
|
+
run.decisions?.some((decision) => decision.type === 'engine_review_posting' && !decision.resolvedAt))
|
|
57
|
+
return { kind: 'posting', label: WAITING_FOR_POSTING_DECISION };
|
|
54
58
|
if (run.status !== 'blocked' && run.status !== 'human-gating')
|
|
55
59
|
return undefined;
|
|
56
60
|
const decision = openHumanGateDecision(run);
|
|
57
61
|
if (!decision)
|
|
58
62
|
return undefined;
|
|
59
63
|
const reason = gateWaitReason(decision);
|
|
60
|
-
return reason ? { reason } : {};
|
|
64
|
+
return { kind: 'human', label: NEEDS_YOUR_DECISION, ...(reason ? { reason } : {}) };
|
|
61
65
|
}
|
|
62
66
|
/** A decision's readiness reasons, which of them the gate offers a remedy for, and its review budget. */
|
|
63
67
|
function gateReasons(decision) {
|
|
@@ -106,7 +110,7 @@ export function gateDisplayReasons(decision) {
|
|
|
106
110
|
}
|
|
107
111
|
/** A run's status as a badge shows it: a run at its open human gate needs a decision. */
|
|
108
112
|
export function runDisplayStatus(run) {
|
|
109
|
-
return gateDecisionWait(run)
|
|
113
|
+
return gateDecisionWait(run)?.label ?? run.status;
|
|
110
114
|
}
|
|
111
115
|
/** Both clients and the CLI present the gateway's state and prerequisite reasons. */
|
|
112
116
|
export function deriveRunLifecycleView(input) {
|
|
@@ -132,12 +136,10 @@ export function deriveRunLifecycleView(input) {
|
|
|
132
136
|
: 'running';
|
|
133
137
|
return {
|
|
134
138
|
status: input.status,
|
|
135
|
-
label: gateWait
|
|
136
|
-
...(gateWait && input.status === 'blocked'
|
|
139
|
+
label: gateWait?.label ?? labels[input.status],
|
|
140
|
+
...(gateWait && (input.status === 'blocked' || gateWait.kind === 'posting')
|
|
137
141
|
? {
|
|
138
|
-
activityLabel: gateWait.reason
|
|
139
|
-
? `${NEEDS_YOUR_DECISION}: ${gateWait.reason}`
|
|
140
|
-
: NEEDS_YOUR_DECISION,
|
|
142
|
+
activityLabel: gateWait.reason ? `${gateWait.label}: ${gateWait.reason}` : gateWait.label,
|
|
141
143
|
}
|
|
142
144
|
: input.status === 'blocked'
|
|
143
145
|
? { activityLabel: blockedReason ? `Blocked: ${blockedReason}` : labels.blocked }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-lifecycle-view.js","sourceRoot":"","sources":["../../src/contracts/run-lifecycle-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAmB/C,MAAM,MAAM,GAA8B;IACxC,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,cAAc,EAAE,cAAc;IAC9B,cAAc,EAAE,cAAc;IAC9B,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,SAAS;IACrB,SAAS,EAAE,WAAW;IACtB,MAAM,EAAE,QAAQ;IAChB,eAAe,EAAE,eAAe;IAChC,WAAW,EAAE,aAAa;IAC1B,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,mBAAmB;IACnC,gBAAgB,EAAE,gBAAgB;IAClC,aAAa,EAAE,aAAa;IAC5B,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,SAAS,EAAE,WAAW;CACvB,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,mBAAmB,CAAC;AAE5D,MAAM,mBAAmB,GAAG,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"run-lifecycle-view.js","sourceRoot":"","sources":["../../src/contracts/run-lifecycle-view.ts"],"names":[],"mappings":"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"}
|
package/dist/contracts/runs.d.ts
CHANGED
|
@@ -61,7 +61,11 @@ export declare function canActivateRunOnSlot(status: RunStatus): boolean;
|
|
|
61
61
|
* outcome in history.
|
|
62
62
|
* Shared by the gateway archive guard and the UI so both agree on eligibility.
|
|
63
63
|
*/
|
|
64
|
-
export declare function isSettledBlockedRun(run: Pick<Run, 'status' | 'steps'
|
|
64
|
+
export declare function isSettledBlockedRun(run: Pick<Run, 'status' | 'steps'> & {
|
|
65
|
+
decisions?: ReadonlyArray<{
|
|
66
|
+
resolvedAt?: string;
|
|
67
|
+
}>;
|
|
68
|
+
}): boolean;
|
|
65
69
|
/** The failed COMPLETE or FINALIZE step that recorded a refused completion prerequisite. */
|
|
66
70
|
export declare function refusedCompletionStep(run: Pick<Run, 'status'> & Partial<Pick<Run, 'steps'>>): RunStep | undefined;
|
|
67
71
|
/** A failed deterministic gate keeps its resources until an operator settles or replays it. */
|
|
@@ -102,6 +106,12 @@ export interface RunStep {
|
|
|
102
106
|
lastProgressAt?: string;
|
|
103
107
|
inputs?: Record<string, unknown>;
|
|
104
108
|
outputs?: Record<string, unknown>;
|
|
109
|
+
/**
|
|
110
|
+
* Set only on a `run.list` row's step that left out inputs or output values
|
|
111
|
+
* (see `payloadTrimmed` on decisions). Absent on `run.get`, `run.forSlot` and
|
|
112
|
+
* run events, which carry the full step. A reader that needs them fetches the run.
|
|
113
|
+
*/
|
|
114
|
+
outputsTrimmed?: true;
|
|
105
115
|
}
|
|
106
116
|
export type LiveRecipeSource = 'decision' | 'recipe-run-live' | 'recipe-run-artifacts' | 'final-artifacts';
|
|
107
117
|
export type LiveRecipeSelectionReason = 'latest-run' | 'user-selected' | 'decision-derived' | 'fallback-none';
|
|
@@ -216,6 +226,8 @@ export interface ReviewLineageOption {
|
|
|
216
226
|
}
|
|
217
227
|
/** Context rows align with the complete sequence, including the first request row. */
|
|
218
228
|
export interface ReviewRequestContext {
|
|
229
|
+
/** New review-pr request only: omit predecessor input and start a separate chain. */
|
|
230
|
+
freshChain?: boolean;
|
|
219
231
|
reviewLineages: Array<ReviewContinuationContext | null>;
|
|
220
232
|
}
|
|
221
233
|
/** One gate receipt contains the first selection and any remaining ordered selections. */
|
|
@@ -229,7 +241,7 @@ export declare function isReviewValidationDepth(value: unknown): value is Review
|
|
|
229
241
|
export declare function reviewValidationDepthForLoop(_index: number, _total: number): ReviewValidationDepth;
|
|
230
242
|
/** Observed launch provenance, kept separate from user selection. */
|
|
231
243
|
export type ReviewSessionContinuity = 'fresh' | 'resumed' | 'resume-unconfirmed' | 'refused';
|
|
232
|
-
export type ReviewSessionRefusalReason = 'unsupported-runner' | 'repository-mismatch' | 'pr-mismatch' | 'slot-mismatch' | 'runner-mismatch' | 'model-mismatch' | 'effort-mismatch' | 'missing-session' | 'missing-reviewed-head' | 'session-busy' | 'session-unavailable' | 'retention-expired' | 'reviewed-head-not-ancestor';
|
|
244
|
+
export type ReviewSessionRefusalReason = 'session-resume-unsupported' | 'unsupported-runner' | 'repository-mismatch' | 'pr-mismatch' | 'slot-mismatch' | 'runner-mismatch' | 'model-mismatch' | 'effort-mismatch' | 'missing-session' | 'missing-reviewed-head' | 'session-busy' | 'session-unavailable' | 'retention-expired' | 'reviewed-head-not-ancestor';
|
|
233
245
|
/** Why a re-review ran COLD in a fresh session, and the ranges it compared (ADR-063 Amendment 5). */
|
|
234
246
|
export interface ReviewSessionFallback {
|
|
235
247
|
reason: ReviewSessionRefusalReason;
|
|
@@ -258,9 +270,17 @@ export interface ReviewSessionTrace {
|
|
|
258
270
|
refusalReason?: ReviewSessionRefusalReason;
|
|
259
271
|
/** Why a retained session was unavailable for a COLD review; expiry may require full scope. */
|
|
260
272
|
fallback?: ReviewSessionFallback;
|
|
273
|
+
/** Persisted before maintenance delivery, reconciled by exact session/packet identity. */
|
|
274
|
+
compaction?: import('../rpc/native-session.js').NativeContextCompactionRecord;
|
|
275
|
+
}
|
|
276
|
+
/** Recorded generation display values, projected by the gateway from retained review records. */
|
|
277
|
+
export interface ReviewChainMetrics {
|
|
278
|
+
durationMs?: number | null;
|
|
279
|
+
costUsd?: number | null;
|
|
280
|
+
costReason?: string;
|
|
261
281
|
}
|
|
262
282
|
/** Frozen summary for one run in a repeated-PR review chain. */
|
|
263
|
-
export interface ReviewChainEntry {
|
|
283
|
+
export interface ReviewChainEntry extends ReviewChainMetrics {
|
|
264
284
|
chainId: string;
|
|
265
285
|
generation: number;
|
|
266
286
|
runId: string;
|
|
@@ -303,6 +323,8 @@ export interface RepeatReviewContext {
|
|
|
303
323
|
session?: ReviewSessionTrace;
|
|
304
324
|
/** Completed predecessors, oldest first. The current run is derived from this Run record. */
|
|
305
325
|
priorGenerations?: ReviewChainEntry[];
|
|
326
|
+
/** Current generation accounting, carried with the run read rather than derived in clients. */
|
|
327
|
+
currentMetrics?: ReviewChainMetrics;
|
|
306
328
|
}
|
|
307
329
|
export type ReviewRunnerId = string;
|
|
308
330
|
export interface DiffStat {
|
|
@@ -377,6 +399,8 @@ export interface RunnerSessionUsage {
|
|
|
377
399
|
slotId?: string | null;
|
|
378
400
|
/** Exact source retained when the owning context is replayed or replaced. */
|
|
379
401
|
nativeSession?: Pick<import('./agents.js').NativeWorkerSessionBinding, 'sessionId' | 'ownerPrincipalId' | 'executionNodeId' | 'stateDirectory'>;
|
|
402
|
+
/** All node-owned task leases contributing to this run's conversation receipt. */
|
|
403
|
+
usageLeaseIds?: string[];
|
|
380
404
|
startedAt?: string | null;
|
|
381
405
|
completedAt?: string | null;
|
|
382
406
|
durationMs?: number | null;
|
|
@@ -398,8 +422,8 @@ export interface RunnerSessionUsage {
|
|
|
398
422
|
costUsd?: number | null;
|
|
399
423
|
measuredAt: string;
|
|
400
424
|
source: 'runner-transcript' | 'provider-response' | 'unavailable';
|
|
401
|
-
/**
|
|
402
|
-
scope?: 'session-total';
|
|
425
|
+
/** Transcript total at measurement time, or usage first observed within the owning run. */
|
|
426
|
+
scope?: 'session-total' | 'run-delta';
|
|
403
427
|
error?: string;
|
|
404
428
|
}
|
|
405
429
|
export type ReviewLoopTimelineSegmentKind = 'review' | 'worker-fix' | 're-review';
|
|
@@ -570,7 +594,7 @@ export interface GateSummary {
|
|
|
570
594
|
worker: {
|
|
571
595
|
model: string | null;
|
|
572
596
|
turns: number | null;
|
|
573
|
-
outcome?: 'success' | 'failure' | 'partial' | 'cancelled';
|
|
597
|
+
outcome?: 'success' | 'failure' | 'partial' | 'cancelled' | 'unjudged';
|
|
574
598
|
};
|
|
575
599
|
review: ReviewSummary;
|
|
576
600
|
tokens: GateTokenSummary;
|
|
@@ -649,9 +673,25 @@ export interface ReviewSummary {
|
|
|
649
673
|
didAnyReviewTriggerReWork: boolean;
|
|
650
674
|
summaryText?: string;
|
|
651
675
|
}
|
|
676
|
+
export interface GateCostSummary {
|
|
677
|
+
/** Null/absent means incomplete pricing, never free work. */
|
|
678
|
+
costUsd?: number | null;
|
|
679
|
+
costReason?: string;
|
|
680
|
+
}
|
|
681
|
+
export interface GateReviewTokenSummary extends GateCostSummary {
|
|
682
|
+
id: string;
|
|
683
|
+
model: string | null;
|
|
684
|
+
input?: number;
|
|
685
|
+
output?: number;
|
|
686
|
+
cacheRead?: number;
|
|
687
|
+
cacheCreation?: number;
|
|
688
|
+
total: number;
|
|
689
|
+
roundNumber?: number;
|
|
690
|
+
costScope?: 'session-total' | 'shared-session' | 'unavailable';
|
|
691
|
+
}
|
|
652
692
|
/** Token cost of reaching a gate, including chained family fix-loops. */
|
|
653
693
|
export interface GateTokenSummary {
|
|
654
|
-
mainWorker: {
|
|
694
|
+
mainWorker: GateCostSummary & {
|
|
655
695
|
model: string | null;
|
|
656
696
|
input: number;
|
|
657
697
|
output: number;
|
|
@@ -665,22 +705,16 @@ export interface GateTokenSummary {
|
|
|
665
705
|
* input/output/cache split is present when the review's usage record carried
|
|
666
706
|
* it; older entries may only have `total`.
|
|
667
707
|
*/
|
|
668
|
-
reviews:
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
input?: number;
|
|
672
|
-
output?: number;
|
|
673
|
-
cacheRead?: number;
|
|
674
|
-
cacheCreation?: number;
|
|
675
|
-
total: number;
|
|
676
|
-
}>;
|
|
708
|
+
reviews: GateReviewTokenSummary[];
|
|
709
|
+
/** Attempt-level history. Shared session totals are explicitly not a round charge. */
|
|
710
|
+
reviewRounds?: GateReviewTokenSummary[];
|
|
677
711
|
/**
|
|
678
712
|
* Token totals grouped by model across worker + reviews + family fix-loops.
|
|
679
713
|
* The single scannable "what did each model cost us, in tokens" rollup. `input`
|
|
680
714
|
* etc. sum only the entries that carried a split; `total` always covers every
|
|
681
715
|
* entry for that model.
|
|
682
716
|
*/
|
|
683
|
-
byModel: Array<{
|
|
717
|
+
byModel: Array<GateCostSummary & {
|
|
684
718
|
model: string | null;
|
|
685
719
|
input: number;
|
|
686
720
|
output: number;
|
|
@@ -701,7 +735,7 @@ export interface GateTokenSummary {
|
|
|
701
735
|
nudgeCount?: number;
|
|
702
736
|
};
|
|
703
737
|
/** pr-complete / update-branch fix loops in the same family that ran after this gate's run. */
|
|
704
|
-
familyChainedLoops?: Array<{
|
|
738
|
+
familyChainedLoops?: Array<GateCostSummary & {
|
|
705
739
|
runId: string;
|
|
706
740
|
flowType: FlowType;
|
|
707
741
|
role: 'fix-loop' | 'review';
|
|
@@ -718,6 +752,8 @@ export interface GateTokenSummary {
|
|
|
718
752
|
}>;
|
|
719
753
|
/** mainWorker + reviews + all familyChainedLoops. */
|
|
720
754
|
familyTotalTokens: number;
|
|
755
|
+
familyCostUsd?: number | null;
|
|
756
|
+
familyCostReason?: string;
|
|
721
757
|
perTurnDetailsAvailable: boolean;
|
|
722
758
|
/** All runner-session JSONL paths backing this summary, for per-turn drill-down. */
|
|
723
759
|
runnerSessionPaths?: string[];
|
|
@@ -1132,7 +1168,7 @@ export interface FeedbackCandidateSummary {
|
|
|
1132
1168
|
}
|
|
1133
1169
|
export interface RetrospectivePayload {
|
|
1134
1170
|
kind: 'retrospective';
|
|
1135
|
-
outcome: 'success' | 'failure' | 'partial' | 'cancelled' | 'unknown';
|
|
1171
|
+
outcome: 'success' | 'failure' | 'partial' | 'cancelled' | 'unjudged' | 'unknown';
|
|
1136
1172
|
whatThisIs: string;
|
|
1137
1173
|
reviewVerdict?: string;
|
|
1138
1174
|
reviewSummary?: string;
|
|
@@ -1514,7 +1550,7 @@ export interface RunMetrics {
|
|
|
1514
1550
|
* (after any in-place failover). Label only — never an email, token, or home path.
|
|
1515
1551
|
*/
|
|
1516
1552
|
providerAccountLabel?: string | null;
|
|
1517
|
-
outcome?: 'success' | 'failure' | 'partial' | 'cancelled';
|
|
1553
|
+
outcome?: 'success' | 'failure' | 'partial' | 'cancelled' | 'unjudged';
|
|
1518
1554
|
disposition?: WorkerTerminalDisposition;
|
|
1519
1555
|
terminalEvidence?: WorkerTerminalEvidence;
|
|
1520
1556
|
/** Per-step checklist timing from the worker's SIGNAL.json, persisted at finalize so it survives task-dir pruning. */
|
|
@@ -1542,7 +1578,7 @@ export interface RunMetrics {
|
|
|
1542
1578
|
}
|
|
1543
1579
|
export type RunCompletionPolicy = 'default' | 'artifact-only';
|
|
1544
1580
|
export declare function isRunCompletionPolicy(value: unknown): value is RunCompletionPolicy;
|
|
1545
|
-
/**
|
|
1581
|
+
/** Local work retained before a checkout mutation; also used for ownerless work. */
|
|
1546
1582
|
export interface ParkedRunCommits {
|
|
1547
1583
|
slotId: string;
|
|
1548
1584
|
ref: string;
|
|
@@ -1552,6 +1588,19 @@ export interface ParkedRunCommits {
|
|
|
1552
1588
|
/** The parked commits not on any remote, newest first. */
|
|
1553
1589
|
commits: string[];
|
|
1554
1590
|
parkedAt: string;
|
|
1591
|
+
kind?: 'commits' | 'worktree';
|
|
1592
|
+
purpose?: 'checkpoint' | 'prior-work';
|
|
1593
|
+
sourceHeadSha?: string;
|
|
1594
|
+
indexArchiveSha?: string;
|
|
1595
|
+
fingerprint?: string;
|
|
1596
|
+
operationKey?: string;
|
|
1597
|
+
repoKey?: string;
|
|
1598
|
+
metadataRef?: string;
|
|
1599
|
+
worktreeTreeSha?: string;
|
|
1600
|
+
runId?: string;
|
|
1601
|
+
storageVersion?: number;
|
|
1602
|
+
prunedAt?: string;
|
|
1603
|
+
pruneReason?: 'age' | 'remote';
|
|
1555
1604
|
}
|
|
1556
1605
|
/** `none`: the REVIEW step's pipeline code review does not run. Only for artifact-only dev runs. */
|
|
1557
1606
|
export type RunPipelineReviewPolicy = 'default' | 'none';
|
|
@@ -2422,8 +2471,8 @@ export interface Run {
|
|
|
2422
2471
|
at: string;
|
|
2423
2472
|
};
|
|
2424
2473
|
/**
|
|
2425
|
-
*
|
|
2426
|
-
*
|
|
2474
|
+
* Canonical retained-work receipts recorded before checkout mutation. Prior work is not a replay checkpoint.
|
|
2475
|
+
* Immutable slot/run/snapshot refs keep the commits and saved index/worktree state reachable.
|
|
2427
2476
|
*/
|
|
2428
2477
|
parkedCommits?: ParkedRunCommits[];
|
|
2429
2478
|
/**
|
|
@@ -2763,6 +2812,11 @@ export interface RunEngineState {
|
|
|
2763
2812
|
};
|
|
2764
2813
|
/** Artifact-first experiment trial linkage for artifact-only reference/template regression candidates. */
|
|
2765
2814
|
evalExperiment?: {
|
|
2815
|
+
/** Trial-level judging opt-out, retained across retries and resumes. */
|
|
2816
|
+
review?: false;
|
|
2817
|
+
/** Resolved trial judge override, retained across retries and resumes. */
|
|
2818
|
+
reviewRunner?: string;
|
|
2819
|
+
reviewModel?: string;
|
|
2766
2820
|
blind?: import('./evals.js').EvalBlindTrial;
|
|
2767
2821
|
/** Matrix/suite-wide cap group for eval queue accounting across per-case experiments. */
|
|
2768
2822
|
capGroupId?: string;
|