@farmslot/protocol 0.37.0 → 0.39.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 +29 -0
- package/dist/agents/reviewer-context.d.ts +4 -4
- package/dist/agents/reviewer-context.d.ts.map +1 -1
- package/dist/agents/reviewer-context.js +10 -10
- package/dist/agents/reviewer-context.js.map +1 -1
- package/dist/agents/roles.d.ts +2 -2
- package/dist/agents/roles.d.ts.map +1 -1
- package/dist/agents/roles.js +5 -9
- package/dist/agents/roles.js.map +1 -1
- package/dist/checklist-target.d.ts +6 -6
- package/dist/checklist-target.d.ts.map +1 -1
- package/dist/checklist-target.js +11 -11
- package/dist/checklist-target.js.map +1 -1
- package/dist/contracts/acceptance.d.ts +19 -34
- package/dist/contracts/acceptance.d.ts.map +1 -1
- package/dist/contracts/acceptance.js +11 -156
- package/dist/contracts/acceptance.js.map +1 -1
- package/dist/contracts/agents.d.ts +4 -2
- package/dist/contracts/agents.d.ts.map +1 -1
- package/dist/contracts/agents.js +1 -2
- 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/backlog.d.ts +16 -7
- package/dist/contracts/backlog.d.ts.map +1 -1
- package/dist/contracts/backlog.js.map +1 -1
- package/dist/contracts/config.d.ts +12 -3
- package/dist/contracts/config.d.ts.map +1 -1
- package/dist/contracts/config.js +32 -0
- package/dist/contracts/config.js.map +1 -1
- package/dist/contracts/dispatch.d.ts +7 -4
- package/dist/contracts/dispatch.d.ts.map +1 -1
- package/dist/contracts/family.d.ts +2 -2
- package/dist/contracts/family.d.ts.map +1 -1
- package/dist/contracts/gate-park.d.ts +4 -1
- package/dist/contracts/gate-park.d.ts.map +1 -1
- package/dist/contracts/gate-park.js +3 -0
- package/dist/contracts/gate-park.js.map +1 -1
- package/dist/contracts/index.d.ts +1 -0
- package/dist/contracts/index.d.ts.map +1 -1
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/pr-monitoring.d.ts +9 -9
- package/dist/contracts/pr-monitoring.d.ts.map +1 -1
- package/dist/contracts/pr-rules.d.ts +5 -7
- package/dist/contracts/pr-rules.d.ts.map +1 -1
- package/dist/contracts/pr-rules.js +4 -6
- package/dist/contracts/pr-rules.js.map +1 -1
- package/dist/contracts/qa.d.ts +2 -2
- package/dist/contracts/qa.d.ts.map +1 -1
- package/dist/contracts/qa.js +5 -9
- package/dist/contracts/qa.js.map +1 -1
- package/dist/contracts/recipe-conformance.d.ts +51 -0
- package/dist/contracts/recipe-conformance.d.ts.map +1 -1
- package/dist/contracts/recipe-conformance.js +134 -1
- package/dist/contracts/recipe-conformance.js.map +1 -1
- package/dist/contracts/resources.d.ts +1 -1
- package/dist/contracts/resources.d.ts.map +1 -1
- package/dist/contracts/resources.js.map +1 -1
- package/dist/contracts/reviews.d.ts +19 -3
- package/dist/contracts/reviews.d.ts.map +1 -1
- package/dist/contracts/reviews.js +2 -2
- package/dist/contracts/reviews.js.map +1 -1
- package/dist/contracts/runner-mobile-keys.d.ts +217 -0
- package/dist/contracts/runner-mobile-keys.d.ts.map +1 -0
- package/dist/contracts/runner-mobile-keys.js +189 -0
- package/dist/contracts/runner-mobile-keys.js.map +1 -0
- package/dist/contracts/runs.d.ts +105 -91
- package/dist/contracts/runs.d.ts.map +1 -1
- package/dist/contracts/runs.js +10 -14
- package/dist/contracts/runs.js.map +1 -1
- package/dist/contracts/runtime-capabilities.d.ts +2 -0
- package/dist/contracts/runtime-capabilities.d.ts.map +1 -1
- package/dist/contracts/runtime-capabilities.js.map +1 -1
- package/dist/contracts/template-placeholders.d.ts +0 -6
- package/dist/contracts/template-placeholders.d.ts.map +1 -1
- package/dist/contracts/template-placeholders.js +22 -4
- package/dist/contracts/template-placeholders.js.map +1 -1
- package/dist/contracts/worker-terminal.d.ts +19 -0
- package/dist/contracts/worker-terminal.d.ts.map +1 -1
- package/dist/contracts/worker-terminal.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/integrations/pr-monitoring.d.ts +5 -0
- package/dist/integrations/pr-monitoring.d.ts.map +1 -1
- package/dist/integrations/pr-monitoring.js +54 -9
- package/dist/integrations/pr-monitoring.js.map +1 -1
- package/dist/integrations/pr-rule-config.d.ts.map +1 -1
- package/dist/integrations/pr-rule-config.js +21 -25
- 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 +2 -5
- package/dist/integrations/pr-workflow-defaults.js.map +1 -1
- package/dist/node/pack-portability.d.ts +19 -0
- package/dist/node/pack-portability.d.ts.map +1 -0
- package/dist/node/pack-portability.js +192 -0
- package/dist/node/pack-portability.js.map +1 -0
- package/dist/node/slot-by-repo.d.ts +6 -0
- package/dist/node/slot-by-repo.d.ts.map +1 -1
- package/dist/node/slot-by-repo.js +27 -15
- package/dist/node/slot-by-repo.js.map +1 -1
- package/dist/recipe/artifact.d.ts.map +1 -1
- package/dist/recipe/artifact.js +20 -4
- package/dist/recipe/artifact.js.map +1 -1
- package/dist/recipe/document.d.ts +2 -0
- package/dist/recipe/document.d.ts.map +1 -1
- package/dist/recipe/document.js +38 -35
- package/dist/recipe/document.js.map +1 -1
- package/dist/recipe/evidence.d.ts +128 -0
- package/dist/recipe/evidence.d.ts.map +1 -0
- package/dist/recipe/evidence.js +141 -0
- package/dist/recipe/evidence.js.map +1 -0
- package/dist/recipe/hud-intent.d.ts +56 -0
- package/dist/recipe/hud-intent.d.ts.map +1 -0
- package/dist/recipe/hud-intent.js +46 -0
- package/dist/recipe/hud-intent.js.map +1 -0
- package/dist/recipe/index.d.ts +4 -2
- package/dist/recipe/index.d.ts.map +1 -1
- package/dist/recipe/index.js +4 -2
- package/dist/recipe/index.js.map +1 -1
- package/dist/recipe/recording.d.ts +7 -0
- package/dist/recipe/recording.d.ts.map +1 -1
- package/dist/recipe/recording.js +48 -0
- package/dist/recipe/recording.js.map +1 -1
- package/dist/recipe/workflow.d.ts.map +1 -1
- package/dist/recipe/workflow.js +23 -1
- package/dist/recipe/workflow.js.map +1 -1
- package/dist/recipes/step-io.d.ts +8 -4
- package/dist/recipes/step-io.d.ts.map +1 -1
- package/dist/recipes/step-io.js.map +1 -1
- package/dist/rpc/copilot-runtime.d.ts +1 -1
- package/dist/rpc/copilot-runtime.d.ts.map +1 -1
- package/dist/rpc/dispatch.d.ts +10 -6
- package/dist/rpc/dispatch.d.ts.map +1 -1
- package/dist/rpc/native-session.d.ts +1 -0
- package/dist/rpc/native-session.d.ts.map +1 -1
- package/dist/rpc/native-session.js.map +1 -1
- package/dist/rpc/nodes.d.ts +15 -0
- package/dist/rpc/nodes.d.ts.map +1 -1
- package/dist/rpc/nodes.js +32 -1
- package/dist/rpc/nodes.js.map +1 -1
- package/dist/rpc/registry.d.ts +1 -0
- package/dist/rpc/registry.d.ts.map +1 -1
- package/dist/rpc/registry.js +1 -0
- package/dist/rpc/registry.js.map +1 -1
- package/dist/rpc/roadmap.d.ts +2 -0
- package/dist/rpc/roadmap.d.ts.map +1 -1
- package/dist/rpc/run.d.ts +20 -3
- package/dist/rpc/run.d.ts.map +1 -1
- package/dist/rpc/run.js +1 -0
- package/dist/rpc/run.js.map +1 -1
- package/dist/rpc/slot.d.ts +1 -0
- package/dist/rpc/slot.d.ts.map +1 -1
- package/dist/rpc/tmux.d.ts +10 -0
- package/dist/rpc/tmux.d.ts.map +1 -1
- package/dist/runs/ci-decision-context.d.ts +40 -0
- package/dist/runs/ci-decision-context.d.ts.map +1 -0
- package/dist/runs/ci-decision-context.js +129 -0
- package/dist/runs/ci-decision-context.js.map +1 -0
- package/dist/runs/decision-resolution.d.ts +37 -1
- package/dist/runs/decision-resolution.d.ts.map +1 -1
- package/dist/runs/decision-resolution.js +36 -0
- package/dist/runs/decision-resolution.js.map +1 -1
- package/dist/runs/family-iteration-ledger.js +1 -1
- package/dist/runs/family-iteration-ledger.js.map +1 -1
- package/dist/runs/publish-approval.d.ts +20 -0
- package/dist/runs/publish-approval.d.ts.map +1 -0
- package/dist/runs/publish-approval.js +29 -0
- package/dist/runs/publish-approval.js.map +1 -0
- package/dist/runs/review-chain.d.ts +2 -2
- package/dist/runs/review-chain.d.ts.map +1 -1
- package/dist/runs/review-chain.js +4 -4
- package/dist/runs/review-chain.js.map +1 -1
- package/dist/runs/review-policy.d.ts +9 -0
- package/dist/runs/review-policy.d.ts.map +1 -0
- package/dist/runs/review-policy.js +34 -0
- package/dist/runs/review-policy.js.map +1 -0
- package/dist/runs/review-retries.d.ts +10 -10
- package/dist/runs/review-retries.d.ts.map +1 -1
- package/dist/runs/review-retries.js +17 -22
- package/dist/runs/review-retries.js.map +1 -1
- package/dist/runs/slot-resolution.js +1 -1
- package/dist/runs/slot-resolution.js.map +1 -1
- package/dist/transport/signal.d.ts +3 -3
- package/dist/transport/signal.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +14 -2
- package/schemas/recipe-v1.schema.json +113 -22
- package/scripts/acceptance.d.mts +16 -0
- package/scripts/acceptance.mjs +233 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,35 @@ All notable changes to `@farmslot/protocol` are tracked here.
|
|
|
4
4
|
|
|
5
5
|
## Unreleased
|
|
6
6
|
|
|
7
|
+
## 0.39.0 - 2026-10-12
|
|
8
|
+
|
|
9
|
+
- Allow project packs to declare default static recipe check invocations.
|
|
10
|
+
|
|
11
|
+
- Share selected-flow requirement validation and scoped compatibility across gateway and clients, including template parameters and positive evidence for static and live checks.
|
|
12
|
+
- Bind live recipe conformance to named runtime and teardown proof targets, retained artifact digests and typed capture metadata.
|
|
13
|
+
- Declare optional recording-target resource claim bindings for scoped recording admission.
|
|
14
|
+
|
|
15
|
+
- Define automatic registered claim evidence and original recording segments, with checked timeline identities and one shared acceptance validator (ADR-062).
|
|
16
|
+
- Expose shared snapshot and current-check views for CI decisions.
|
|
17
|
+
- Carry frozen deterministic checklist commands and verified local CI receipts into publication packages.
|
|
18
|
+
- Replace runner-diversity review contracts with WARM/COLD selections, ordered review sequences and separate-session review provenance.
|
|
19
|
+
|
|
20
|
+
- Keep recipe HUD intent on two bounded lines through the shared display policy, with authoring warnings above 80 characters and errors above 120.
|
|
21
|
+
- `RUNNER_MOBILE_KEY_PROFILES` and `runnerMobileKeyProfile()`: the extra phone terminal keys (the Companion runner row) for claude, codex, cursor, grok and pi, each key recording the CLI version and documented binding it was checked against. `TmuxWorkerSummary.processRunnerIds` (optional) lists the runners whose process matchers hit the pane command, and `TmuxWorkerSummary.linkedRunner` names the linked run's runner only on the pane its worker context records exactly.
|
|
22
|
+
- Export the publish-approval action set (`PUBLISH_APPROVAL_ACTIONS`, `isPublishApprovalAction`) and the review-depth helpers (`defaultReviewDepthPolicy`, `effectiveRequiredReviewCount`, `isQualifyingIndependentReview`) so clients guard publish gates with the gateway's own rules.
|
|
23
|
+
- Share candidate slot selection, improvement Apply routing and validation outcomes between operator clients.
|
|
24
|
+
|
|
25
|
+
## 0.38.0 - 2026-10-11
|
|
26
|
+
|
|
27
|
+
- Declare connection-scoped node execution and cancellation support.
|
|
28
|
+
|
|
29
|
+
- Add `run.refreshPublishedEvidence` for refreshing a finished run's existing PR evidence through the upload/render pipeline, with selected keys, hosted URLs and a posted-body receipt.
|
|
30
|
+
|
|
31
|
+
- Workspace pool policies may omit allowedMachines; admission binds them to the configured pool registry while explicit and model lists still narrow access. Slot policies and native authority keep their existing requirements.
|
|
32
|
+
|
|
33
|
+
- Provide shared file:line portability validation for project packs, including home aliases and SSH hosts. Copied packs retain their ignore rules; control test source stays hashed while runtime references remain checked.
|
|
34
|
+
- Park consumers share the original slot identity after rehoming, including the legacy run-slot fallback used by dispatch guards.
|
|
35
|
+
|
|
7
36
|
## 0.37.0 - 2026-10-11
|
|
8
37
|
|
|
9
38
|
- Declare portable project providers and ordered libraries, and record recipe conformance evidence bound to source, target selection, trust, invocation parameters and effective library paths. Slot reverse lookup refuses ambiguity and supports explicit selection while preserving local-host preference.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AgentContext, AgentRole } from '../contracts/index.js';
|
|
2
|
-
/** Legacy fixed
|
|
3
|
-
export declare const
|
|
2
|
+
/** Legacy fixed review tmux window (pre multi-reviewer tabs). */
|
|
3
|
+
export declare const LEGACY_REVIEW_WINDOW: string;
|
|
4
4
|
/**
|
|
5
5
|
* Short runner token for tmux tab names. Model stays in AgentContext.model metadata —
|
|
6
6
|
* never in the window title.
|
|
@@ -39,7 +39,7 @@ export interface AllocateReviewerContextInput {
|
|
|
39
39
|
}
|
|
40
40
|
export interface AllocatedReviewerContext {
|
|
41
41
|
id: string;
|
|
42
|
-
role: '
|
|
42
|
+
role: 'review';
|
|
43
43
|
label: string;
|
|
44
44
|
windowName: string;
|
|
45
45
|
runId: string;
|
|
@@ -52,7 +52,7 @@ export interface AllocatedReviewerContext {
|
|
|
52
52
|
* session, never the tmux topology.
|
|
53
53
|
*/
|
|
54
54
|
export declare function allocateReviewerContext(input: AllocateReviewerContextInput): AllocatedReviewerContext;
|
|
55
|
-
/** Prefer the most recently updated reviewer; falls back to legacy
|
|
55
|
+
/** Prefer the most recently updated reviewer; falls back to legacy review id. */
|
|
56
56
|
export declare function selectLatestReviewerContext<T extends {
|
|
57
57
|
id: string;
|
|
58
58
|
role?: AgentRole;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewer-context.d.ts","sourceRoot":"","sources":["../../src/agents/reviewer-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIrE,
|
|
1
|
+
{"version":3,"file":"reviewer-context.d.ts","sourceRoot":"","sources":["../../src/agents/reviewer-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAIrE,iEAAiE;AACjE,eAAO,MAAM,oBAAoB,QAA2C,CAAC;AAE7E;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAO7E;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAG5E;AAKD,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAInF;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACpC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAWjD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE/E;AAED,wBAAgB,sBAAsB,CACpC,GAAG,EACC;IACE,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CAC5C,GACD,IAAI,GACJ,SAAS,GACZ,OAAO,CAOT;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE5D;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACjC,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAKR;AAED,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,4BAA4B,GAClC,wBAAwB,CAa1B;AAED,iFAAiF;AACjF,wBAAgB,2BAA2B,CACzC,CAAC,SAAS;IACR,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B,EACD,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAStC;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,CAU9F;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAExE;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAEhE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AGENT_ROLE_WINDOWS, agentRoleLabel, agentRoleWindow, contextIdFor } from './roles.js';
|
|
2
|
-
/** Legacy fixed
|
|
3
|
-
export const
|
|
2
|
+
/** Legacy fixed review tmux window (pre multi-reviewer tabs). */
|
|
3
|
+
export const LEGACY_REVIEW_WINDOW = AGENT_ROLE_WINDOWS['review'] ?? 'review';
|
|
4
4
|
/**
|
|
5
5
|
* Short runner token for tmux tab names. Model stays in AgentContext.model metadata —
|
|
6
6
|
* never in the window title.
|
|
@@ -28,15 +28,15 @@ const LEGACY_REVIEW_FIX_WINDOW_RE = /^review-fix(?:-\d+)?$/;
|
|
|
28
28
|
export function isReviewerWindowName(windowName) {
|
|
29
29
|
if (!windowName)
|
|
30
30
|
return false;
|
|
31
|
-
if (windowName ===
|
|
31
|
+
if (windowName === LEGACY_REVIEW_WINDOW)
|
|
32
32
|
return true;
|
|
33
33
|
return REVIEWER_WINDOW_RE.test(windowName) || LEGACY_REVIEW_FIX_WINDOW_RE.test(windowName);
|
|
34
34
|
}
|
|
35
35
|
export function parseReviewerWindowName(windowName) {
|
|
36
36
|
if (!windowName)
|
|
37
37
|
return null;
|
|
38
|
-
if (windowName ===
|
|
39
|
-
return { ordinal: 0, runnerToken: '
|
|
38
|
+
if (windowName === LEGACY_REVIEW_WINDOW) {
|
|
39
|
+
return { ordinal: 0, runnerToken: 'review' };
|
|
40
40
|
}
|
|
41
41
|
const match = REVIEWER_WINDOW_RE.exec(windowName);
|
|
42
42
|
if (!match)
|
|
@@ -47,7 +47,7 @@ export function parseReviewerWindowName(windowName) {
|
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
49
|
export function isReviewerAgentRole(role) {
|
|
50
|
-
return role === '
|
|
50
|
+
return role === 'review';
|
|
51
51
|
}
|
|
52
52
|
export function isReviewerAgentContext(ctx) {
|
|
53
53
|
if (!ctx)
|
|
@@ -57,7 +57,7 @@ export function isReviewerAgentContext(ctx) {
|
|
|
57
57
|
if (isReviewerWindowName(ctx.target?.window ?? null))
|
|
58
58
|
return true;
|
|
59
59
|
const id = ctx.id ?? '';
|
|
60
|
-
if (id === contextIdFor('
|
|
60
|
+
if (id === contextIdFor('review') || id.startsWith('rev-') || /^rev\d+-/.test(id))
|
|
61
61
|
return true;
|
|
62
62
|
return false;
|
|
63
63
|
}
|
|
@@ -85,7 +85,7 @@ export function allocateReviewerContext(input) {
|
|
|
85
85
|
const windowName = reviewerWindowName(runner);
|
|
86
86
|
return {
|
|
87
87
|
id: reviewerContextId(windowName),
|
|
88
|
-
role: '
|
|
88
|
+
role: 'review',
|
|
89
89
|
label: reviewerContextLabel(runner, windowName, model),
|
|
90
90
|
windowName,
|
|
91
91
|
runId,
|
|
@@ -93,7 +93,7 @@ export function allocateReviewerContext(input) {
|
|
|
93
93
|
model,
|
|
94
94
|
};
|
|
95
95
|
}
|
|
96
|
-
/** Prefer the most recently updated reviewer; falls back to legacy
|
|
96
|
+
/** Prefer the most recently updated reviewer; falls back to legacy review id. */
|
|
97
97
|
export function selectLatestReviewerContext(contexts) {
|
|
98
98
|
const reviewers = contexts.filter((ctx) => isReviewerAgentContext(ctx));
|
|
99
99
|
if (reviewers.length === 0)
|
|
@@ -110,7 +110,7 @@ export function agentRoleForWindowName(windowName) {
|
|
|
110
110
|
if (!windowName)
|
|
111
111
|
return null;
|
|
112
112
|
if (isReviewerWindowName(windowName))
|
|
113
|
-
return '
|
|
113
|
+
return 'review';
|
|
114
114
|
for (const [role, name] of Object.entries(AGENT_ROLE_WINDOWS)) {
|
|
115
115
|
if (role === 'primary')
|
|
116
116
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewer-context.js","sourceRoot":"","sources":["../../src/agents/reviewer-context.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/F,
|
|
1
|
+
{"version":3,"file":"reviewer-context.js","sourceRoot":"","sources":["../../src/agents/reviewer-context.ts"],"names":[],"mappings":"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"}
|
package/dist/agents/roles.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export { AGENT_ROLES };
|
|
|
6
6
|
* so it is not a session target — clients validate against this list, not the
|
|
7
7
|
* full role union.
|
|
8
8
|
*/
|
|
9
|
-
export declare const DISPATCHABLE_AGENT_ROLES: ("primary" | "dev" | "fix-bug" | "review" | "
|
|
9
|
+
export declare const DISPATCHABLE_AGENT_ROLES: ("primary" | "dev" | "fix-bug" | "review" | "review-fix" | "ci-fix")[];
|
|
10
10
|
export declare const AGENT_ROLE_LABELS: Record<AgentRole, string>;
|
|
11
11
|
export declare const AGENT_ROLE_SHORT_LABELS: Record<AgentRole, string>;
|
|
12
12
|
export declare const AGENT_ROLE_WINDOWS: Record<AgentRole, string | null>;
|
|
@@ -15,7 +15,7 @@ export declare const PRIMARY_WORKER_WINDOW = "worker";
|
|
|
15
15
|
/**
|
|
16
16
|
* Concrete dispatch/shutdown target for a role. Unlike agentRoleWindow(), this
|
|
17
17
|
* resolves the primary role to the canonical session anchor. Secondary roles
|
|
18
|
-
* without their own pane (
|
|
18
|
+
* without their own pane (review-fix) still return null because they must
|
|
19
19
|
* share the owning run's persisted worker target.
|
|
20
20
|
*/
|
|
21
21
|
export declare function agentDispatchWindow(role: AgentRole): string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../src/agents/roles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,
|
|
1
|
+
{"version":3,"file":"roles.d.ts","sourceRoot":"","sources":["../../src/agents/roles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,SAAS,EAAE,KAAK,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,wEAEpC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAQvD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAQ7D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAQ/D,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,qBAAqB,WAAW,CAAC;AAE9C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAGlE;AAKD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAQtD,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAUjF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAEpD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAEtD;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAE3D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,IAAI,CAE9D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CASrD;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAazE;AAED,wBAAgB,oBAAoB,CAClC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,EACxB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,GAC7B,MAAM,GAAG,IAAI,CAEf"}
|
package/dist/agents/roles.js
CHANGED
|
@@ -12,8 +12,7 @@ export const AGENT_ROLE_LABELS = {
|
|
|
12
12
|
dev: 'Dev',
|
|
13
13
|
'fix-bug': 'Bugfix',
|
|
14
14
|
review: 'Review',
|
|
15
|
-
'
|
|
16
|
-
'self-review-fix': 'Self-review fix',
|
|
15
|
+
'review-fix': 'Review fix',
|
|
17
16
|
'ci-fix': 'CI fix',
|
|
18
17
|
subtask: 'Sub-task',
|
|
19
18
|
};
|
|
@@ -22,8 +21,7 @@ export const AGENT_ROLE_SHORT_LABELS = {
|
|
|
22
21
|
dev: 'DEV',
|
|
23
22
|
'fix-bug': 'BUG',
|
|
24
23
|
review: 'REV',
|
|
25
|
-
'
|
|
26
|
-
'self-review-fix': 'S-FIX',
|
|
24
|
+
'review-fix': 'R-FIX',
|
|
27
25
|
'ci-fix': 'CI',
|
|
28
26
|
subtask: 'SUB',
|
|
29
27
|
};
|
|
@@ -32,8 +30,7 @@ export const AGENT_ROLE_WINDOWS = {
|
|
|
32
30
|
dev: 'dev',
|
|
33
31
|
'fix-bug': 'bugfix',
|
|
34
32
|
review: 'review',
|
|
35
|
-
'
|
|
36
|
-
'self-review-fix': null, // runs in the primary worker's window, not a separate one
|
|
33
|
+
'review-fix': null, // runs in the primary worker's window, not a separate one
|
|
37
34
|
'ci-fix': 'ci-fix',
|
|
38
35
|
subtask: null, // a child unit is observed, never spawned — it owns no window
|
|
39
36
|
};
|
|
@@ -42,7 +39,7 @@ export const PRIMARY_WORKER_WINDOW = 'worker';
|
|
|
42
39
|
/**
|
|
43
40
|
* Concrete dispatch/shutdown target for a role. Unlike agentRoleWindow(), this
|
|
44
41
|
* resolves the primary role to the canonical session anchor. Secondary roles
|
|
45
|
-
* without their own pane (
|
|
42
|
+
* without their own pane (review-fix) still return null because they must
|
|
46
43
|
* share the owning run's persisted worker target.
|
|
47
44
|
*/
|
|
48
45
|
export function agentDispatchWindow(role) {
|
|
@@ -58,8 +55,7 @@ export const AGENT_ROLE_RANKS = {
|
|
|
58
55
|
dev: 1,
|
|
59
56
|
'fix-bug': 2,
|
|
60
57
|
review: 3,
|
|
61
|
-
'
|
|
62
|
-
'self-review-fix': 20,
|
|
58
|
+
'review-fix': 20,
|
|
63
59
|
'ci-fix': 30,
|
|
64
60
|
subtask: 40,
|
|
65
61
|
};
|
package/dist/agents/roles.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../../src/agents/roles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiC,MAAM,uBAAuB,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,WAAW,CAAC,MAAM,CACxD,CAAC,IAAI,EAAyC,EAAE,CAAC,IAAI,KAAK,SAAS,CACpE,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAA8B;IAC1D,OAAO,EAAE,SAAS;IAClB,GAAG,EAAE,KAAK;IACV,SAAS,EAAE,QAAQ;IACnB,MAAM,EAAE,QAAQ;IAChB,
|
|
1
|
+
{"version":3,"file":"roles.js","sourceRoot":"","sources":["../../src/agents/roles.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,8 +12,8 @@ export declare const SUBTASKS_DIR = "subtasks";
|
|
|
12
12
|
export declare const SUBTASK_INDEX_FILE = "index.json";
|
|
13
13
|
/** A child unit id: a slug, unique for the life of one task directory. */
|
|
14
14
|
export declare const SUBTASK_ID_PATTERN: RegExp;
|
|
15
|
-
export declare const
|
|
16
|
-
export declare const
|
|
15
|
+
export declare const REVIEW_CHECKLIST = "REVIEW.md";
|
|
16
|
+
export declare const REVIEW_FIX_CHECKLIST = "REVIEW-FIX.md";
|
|
17
17
|
export declare const CI_FIX_CHECKLIST = "CI-FIX.md";
|
|
18
18
|
/**
|
|
19
19
|
* Sections whose checkboxes are informational (ACs, descriptions, upstream
|
|
@@ -67,7 +67,7 @@ export interface ChecklistTarget {
|
|
|
67
67
|
checklist: string;
|
|
68
68
|
signal: string;
|
|
69
69
|
}
|
|
70
|
-
export type NestedLoopAgentRole = Extract<AgentRole, '
|
|
70
|
+
export type NestedLoopAgentRole = Extract<AgentRole, 'review' | 'review-fix' | 'ci-fix'>;
|
|
71
71
|
export interface ChecklistTargetRegistry {
|
|
72
72
|
manifest: string;
|
|
73
73
|
workerTask: string;
|
|
@@ -100,8 +100,8 @@ export interface SubtaskIndex {
|
|
|
100
100
|
}
|
|
101
101
|
export declare function targetForChecklistBasename(checklistBasename: string, registry?: Pick<ChecklistTargetRegistry, 'workerTask' | 'interactiveChecklist' | 'workerSignal' | 'roleSignalSuffix'>): ChecklistTarget;
|
|
102
102
|
export declare function terminalContractInputForChecklist(checklistBasename: string): string;
|
|
103
|
-
export declare const
|
|
104
|
-
export declare const
|
|
103
|
+
export declare const REVIEW_CHECKLIST_TARGET: ChecklistTarget;
|
|
104
|
+
export declare const REVIEW_FIX_CHECKLIST_TARGET: ChecklistTarget;
|
|
105
105
|
export declare const CI_FIX_CHECKLIST_TARGET: ChecklistTarget;
|
|
106
106
|
export declare const CHECKLIST_TARGET_BY_AGENT_ROLE: Record<NestedLoopAgentRole, ChecklistTarget>;
|
|
107
107
|
export declare const DEFAULT_CHECKLIST_TARGET_REGISTRY: ChecklistTargetRegistry;
|
|
@@ -120,6 +120,6 @@ export interface TaskProgressAcceptanceUpdate {
|
|
|
120
120
|
parentChecklist?: string | null;
|
|
121
121
|
}
|
|
122
122
|
export declare function shouldAcceptTaskProgressUpdate(run: TaskProgressAcceptanceRun | null, update: TaskProgressAcceptanceUpdate, registry?: ChecklistTargetRegistry): boolean;
|
|
123
|
-
export type PipelineProgressStep = 'monitor' | '
|
|
123
|
+
export type PipelineProgressStep = 'monitor' | 'review' | 'ci-watch' | 'human-gate' | null;
|
|
124
124
|
export declare function nestedLoopProgressLabel(activeStep: PipelineProgressStep, activeTaskBasename: string | null | undefined, registry?: ChecklistTargetRegistry): string;
|
|
125
125
|
//# sourceMappingURL=checklist-target.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checklist-target.d.ts","sourceRoot":"","sources":["../src/checklist-target.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAEpE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE7E,eAAO,MAAM,yBAAyB,0BAA0B,CAAC;AACjE,eAAO,MAAM,sBAAsB,YAAY,CAAC;AAChD,eAAO,MAAM,8BAA8B,iBAAiB,CAAC;AAC7D,eAAO,MAAM,kBAAkB,gBAAgB,CAAC;AAChD,eAAO,MAAM,kBAAkB,iBAAiB,CAAC;AAEjD,2EAA2E;AAC3E,eAAO,MAAM,YAAY,aAAa,CAAC;AACvC,oGAAoG;AACpG,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAC/C,0EAA0E;AAC1E,eAAO,MAAM,kBAAkB,QAAiB,CAAC;AAEjD,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"checklist-target.d.ts","sourceRoot":"","sources":["../src/checklist-target.ts"],"names":[],"mappings":"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"}
|
package/dist/checklist-target.js
CHANGED
|
@@ -10,8 +10,8 @@ export const SUBTASKS_DIR = 'subtasks';
|
|
|
10
10
|
export const SUBTASK_INDEX_FILE = 'index.json';
|
|
11
11
|
/** A child unit id: a slug, unique for the life of one task directory. */
|
|
12
12
|
export const SUBTASK_ID_PATTERN = /^[a-z0-9-]+$/;
|
|
13
|
-
export const
|
|
14
|
-
export const
|
|
13
|
+
export const REVIEW_CHECKLIST = 'REVIEW.md';
|
|
14
|
+
export const REVIEW_FIX_CHECKLIST = 'REVIEW-FIX.md';
|
|
15
15
|
export const CI_FIX_CHECKLIST = 'CI-FIX.md';
|
|
16
16
|
/**
|
|
17
17
|
* Sections whose checkboxes are informational (ACs, descriptions, upstream
|
|
@@ -162,12 +162,12 @@ export function terminalContractInputForChecklist(checklistBasename) {
|
|
|
162
162
|
const base = checklistBasename.replace(/\.md$/i, '');
|
|
163
163
|
return `inputs/worker-terminal-contract.${base}.json`;
|
|
164
164
|
}
|
|
165
|
-
export const
|
|
166
|
-
export const
|
|
165
|
+
export const REVIEW_CHECKLIST_TARGET = targetForChecklistBasename(REVIEW_CHECKLIST);
|
|
166
|
+
export const REVIEW_FIX_CHECKLIST_TARGET = targetForChecklistBasename(REVIEW_FIX_CHECKLIST);
|
|
167
167
|
export const CI_FIX_CHECKLIST_TARGET = targetForChecklistBasename(CI_FIX_CHECKLIST);
|
|
168
168
|
export const CHECKLIST_TARGET_BY_AGENT_ROLE = {
|
|
169
|
-
|
|
170
|
-
'
|
|
169
|
+
review: REVIEW_CHECKLIST_TARGET,
|
|
170
|
+
'review-fix': REVIEW_FIX_CHECKLIST_TARGET,
|
|
171
171
|
'ci-fix': CI_FIX_CHECKLIST_TARGET,
|
|
172
172
|
};
|
|
173
173
|
export const DEFAULT_CHECKLIST_TARGET_REGISTRY = {
|
|
@@ -240,13 +240,13 @@ export function shouldAcceptTaskProgressUpdate(run, update, registry = DEFAULT_C
|
|
|
240
240
|
return contextId === expectedRole;
|
|
241
241
|
}
|
|
242
242
|
export function nestedLoopProgressLabel(activeStep, activeTaskBasename, registry = DEFAULT_CHECKLIST_TARGET_REGISTRY) {
|
|
243
|
-
if (activeStep === '
|
|
243
|
+
if (activeStep === 'review' || activeStep === 'human-gate') {
|
|
244
244
|
const role = agentRoleForChecklistBasename(activeTaskBasename ?? '', registry);
|
|
245
|
-
if (role === '
|
|
246
|
-
return '
|
|
245
|
+
if (role === 'review-fix')
|
|
246
|
+
return 'Review Fix Progress';
|
|
247
247
|
if (activeStep === 'human-gate')
|
|
248
|
-
return '
|
|
249
|
-
return '
|
|
248
|
+
return 'Review Progress';
|
|
249
|
+
return 'Review Progress';
|
|
250
250
|
}
|
|
251
251
|
if (activeStep === 'ci-watch')
|
|
252
252
|
return 'CI Fix Progress';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checklist-target.js","sourceRoot":"","sources":["../src/checklist-target.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,8BAA8B,EAAE,MAAM,gCAAgC,CAAC;AAKhF,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAAC;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,SAAS,CAAC;AAChD,MAAM,CAAC,MAAM,8BAA8B,GAAG,cAAc,CAAC;AAC7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAC;AAChD,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAEjD,2EAA2E;AAC3E,MAAM,CAAC,MAAM,YAAY,GAAG,UAAU,CAAC;AACvC,oGAAoG;AACpG,MAAM,CAAC,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAC/C,0EAA0E;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AAEjD,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"checklist-target.js","sourceRoot":"","sources":["../src/checklist-target.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import * as contract from '../../scripts/acceptance.mjs';
|
|
2
|
+
import type { EvidenceMomentRef, RecipeClaimKind } from '../recipe/evidence.js';
|
|
1
3
|
/** Task-dir relative path of the ledger. Written by `farmslot-agent ac` and recipe runs. */
|
|
2
|
-
export declare const ACCEPTANCE_STATUS_ARTIFACT
|
|
3
|
-
export declare const ACCEPTANCE_VERDICTS: readonly ["proven", "weak", "missing", "untestable"];
|
|
4
|
+
export declare const ACCEPTANCE_STATUS_ARTIFACT: string;
|
|
5
|
+
export declare const ACCEPTANCE_VERDICTS: readonly ["proven", "weak", "missing", "untestable", "failed", "awaiting-review"];
|
|
4
6
|
export type AcceptanceVerdict = (typeof ACCEPTANCE_VERDICTS)[number];
|
|
5
7
|
export declare const ACCEPTANCE_PROOF_MODES: readonly ["state", "visual", "mixed"];
|
|
6
8
|
export type AcceptanceProofMode = (typeof ACCEPTANCE_PROOF_MODES)[number];
|
|
@@ -11,7 +13,7 @@ export declare const ACCEPTANCE_CRITERION_ID_PATTERN: RegExp;
|
|
|
11
13
|
*
|
|
12
14
|
* @param index 0-based position in `inputs/handoff.json` `task.acceptanceCriteria`.
|
|
13
15
|
*/
|
|
14
|
-
export declare
|
|
16
|
+
export declare const acceptanceCriterionId: typeof contract.acceptanceCriterionId;
|
|
15
17
|
export interface AcceptanceCriterionStatus {
|
|
16
18
|
/** `AC-<N>`, N the 1-based position in the handoff criteria array. */
|
|
17
19
|
id: string;
|
|
@@ -24,10 +26,15 @@ export interface AcceptanceCriterionStatus {
|
|
|
24
26
|
/** Recipe node ids that prove this criterion. */
|
|
25
27
|
recipeNodes: string[];
|
|
26
28
|
note?: string;
|
|
27
|
-
updatedAt
|
|
29
|
+
updatedAt?: string;
|
|
30
|
+
kind?: RecipeClaimKind;
|
|
31
|
+
parentId?: string;
|
|
32
|
+
assertionIndices?: number[];
|
|
33
|
+
moments?: EvidenceMomentRef[];
|
|
28
34
|
}
|
|
29
35
|
export interface AcceptanceStatusLedger {
|
|
30
|
-
schemaVersion: 1;
|
|
36
|
+
schemaVersion: 1 | 2;
|
|
37
|
+
recipeRunId?: string;
|
|
31
38
|
criteria: AcceptanceCriterionStatus[];
|
|
32
39
|
}
|
|
33
40
|
/**
|
|
@@ -49,7 +56,7 @@ export interface AcceptanceCriterionView extends AcceptanceCriterionRef {
|
|
|
49
56
|
* `criteria` is the authority for how many criteria the run has; `ledger` only ever
|
|
50
57
|
* holds the ones already judged.
|
|
51
58
|
*/
|
|
52
|
-
export declare
|
|
59
|
+
export declare const acceptanceCriteriaView: (criteria: ReadonlyArray<AcceptanceCriterionRef>, ledger: AcceptanceStatusLedger | null) => AcceptanceCriterionView[];
|
|
53
60
|
/**
|
|
54
61
|
* Where a run's acceptance panel data came from. Only `ledger` carries verdicts;
|
|
55
62
|
* `evidence-manifest` is the display fallback for a run that wrote no ledger.
|
|
@@ -69,38 +76,16 @@ export interface AcceptanceEvidenceLink {
|
|
|
69
76
|
export interface AcceptanceStatusSummary {
|
|
70
77
|
proven: number;
|
|
71
78
|
weak: number;
|
|
79
|
+
failed: number;
|
|
80
|
+
'awaiting-review': number;
|
|
72
81
|
missing: number;
|
|
73
82
|
untestable: number;
|
|
74
83
|
/** Registered criteria with no verdict recorded yet; 0 unless `criteria` was given. */
|
|
75
84
|
unrecorded: number;
|
|
76
85
|
total: number;
|
|
77
86
|
}
|
|
78
|
-
/**
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
*/
|
|
83
|
-
export declare function validateAcceptanceStatusLedger(value: unknown): string[];
|
|
84
|
-
/**
|
|
85
|
-
* Verdict tally over the ledger.
|
|
86
|
-
*
|
|
87
|
-
* Omitting `criteria` counts only the rows already recorded, which understates a
|
|
88
|
-
* partial ledger: `total` is then "verdicts written", not "criteria the task has".
|
|
89
|
-
* Pass the registered criteria whenever the caller can read them — every caller
|
|
90
|
-
* with the task directory can — to get a `total` of registered criteria and an
|
|
91
|
-
* `unrecorded` count of those still waiting for a verdict.
|
|
92
|
-
*/
|
|
93
|
-
export declare function summarizeAcceptanceStatus(ledger: AcceptanceStatusLedger, criteria?: ReadonlyArray<AcceptanceCriterionRef>): AcceptanceStatusSummary;
|
|
94
|
-
/**
|
|
95
|
-
* The coverage table `artifacts/recipe-coverage.md` holds today, rendered from the
|
|
96
|
-
* ledger. The proof-mode column keeps the lowercase `state` / `visual` / `mixed`
|
|
97
|
-
* vocabulary the evidence rules key off, and the last line is the `Overall recipe
|
|
98
|
-
* coverage:` summary every consumer of the coverage file already looks for.
|
|
99
|
-
*
|
|
100
|
-
* Pass `criteria` so the overall line counts registered criteria: without them a
|
|
101
|
-
* partial ledger reads `1/1 PROVEN` when the task has three criteria. A criterion
|
|
102
|
-
* with no verdict yet is counted in the total and listed as awaiting one; it is
|
|
103
|
-
* never given a verdict it does not have.
|
|
104
|
-
*/
|
|
105
|
-
export declare function renderAcceptanceCoverage(ledger: AcceptanceStatusLedger, criteria?: ReadonlyArray<AcceptanceCriterionRef>): string;
|
|
87
|
+
/** Shared validation/rendering also runs in unbuilt operator CJS scripts. */
|
|
88
|
+
export declare const validateAcceptanceStatusLedger: typeof contract.validateAcceptanceStatusLedger;
|
|
89
|
+
export declare const summarizeAcceptanceStatus: (ledger: AcceptanceStatusLedger, criteria?: ReadonlyArray<AcceptanceCriterionRef>) => AcceptanceStatusSummary;
|
|
90
|
+
export declare const renderAcceptanceCoverage: (ledger: AcceptanceStatusLedger, criteria?: ReadonlyArray<AcceptanceCriterionRef>) => string;
|
|
106
91
|
//# sourceMappingURL=acceptance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptance.d.ts","sourceRoot":"","sources":["../../src/contracts/acceptance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"acceptance.d.ts","sourceRoot":"","sources":["../../src/contracts/acceptance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAYhF,4FAA4F;AAC5F,eAAO,MAAM,0BAA0B,EAAE,MAA4C,CAAC;AAEtF,eAAO,MAAM,mBAAmB,mFAA+B,CAAC;AAChE,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAErE,eAAO,MAAM,sBAAsB,uCAAkC,CAAC;AACtE,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,oFAAoF;AACpF,eAAO,MAAM,+BAA+B,QAA2C,CAAC;AAExF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,uCAAiC,CAAC;AAEpE,MAAM,WAAW,yBAAyB;IACxC,sEAAsE;IACtE,EAAE,EAAE,MAAM,CAAC;IACX,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,iBAAiB,CAAC;IAC3B,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iDAAiD;IACjD,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,OAAO,CAAC,EAAE,iBAAiB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8EAA8E;AAC9E,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;IACrE,MAAM,EAAE,yBAAyB,GAAG,IAAI,CAAC;CAC1C;AAED;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,CACnC,QAAQ,EAAE,aAAa,CAAC,sBAAsB,CAAC,EAC/C,MAAM,EAAE,sBAAsB,GAAG,IAAI,KAClC,uBAAuB,EAAqE,CAAC;AAElG;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,mBAAmB,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,6EAA6E;AAC7E,eAAO,MAAM,8BAA8B,gDAA0C,CAAC;AACtF,eAAO,MAAM,yBAAyB,EAAE,CACtC,MAAM,EAAE,sBAAsB,EAC9B,QAAQ,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,KAC7C,uBACmE,CAAC;AACzE,eAAO,MAAM,wBAAwB,EAAE,CACrC,MAAM,EAAE,sBAAsB,EAC9B,QAAQ,CAAC,EAAE,aAAa,CAAC,sBAAsB,CAAC,KAC7C,MAA0C,CAAC"}
|