@farmslot/protocol 0.7.2 → 0.7.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/contracts/backlog.d.ts +23 -1
  3. package/dist/contracts/backlog.d.ts.map +1 -1
  4. package/dist/contracts/backlog.js.map +1 -1
  5. package/dist/contracts/config.d.ts +7 -2
  6. package/dist/contracts/config.d.ts.map +1 -1
  7. package/dist/contracts/config.js +10 -2
  8. package/dist/contracts/config.js.map +1 -1
  9. package/dist/contracts/index.d.ts +1 -0
  10. package/dist/contracts/index.d.ts.map +1 -1
  11. package/dist/contracts/index.js +1 -0
  12. package/dist/contracts/index.js.map +1 -1
  13. package/dist/contracts/interactive-operator-packets.d.ts +79 -0
  14. package/dist/contracts/interactive-operator-packets.d.ts.map +1 -0
  15. package/dist/contracts/interactive-operator-packets.js +274 -0
  16. package/dist/contracts/interactive-operator-packets.js.map +1 -0
  17. package/dist/contracts/recipes.d.ts +7 -0
  18. package/dist/contracts/recipes.d.ts.map +1 -1
  19. package/dist/contracts/recipes.js +140 -0
  20. package/dist/contracts/recipes.js.map +1 -1
  21. package/dist/contracts/roadmap.d.ts +5 -0
  22. package/dist/contracts/roadmap.d.ts.map +1 -1
  23. package/dist/index.d.ts +1 -0
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +1 -0
  26. package/dist/index.js.map +1 -1
  27. package/dist/node/capture-helper-path.d.ts +7 -0
  28. package/dist/node/capture-helper-path.d.ts.map +1 -1
  29. package/dist/node/capture-helper-path.js +31 -14
  30. package/dist/node/capture-helper-path.js.map +1 -1
  31. package/dist/roadmap/promotion-drafts.d.ts +16 -0
  32. package/dist/roadmap/promotion-drafts.d.ts.map +1 -0
  33. package/dist/roadmap/promotion-drafts.js +90 -0
  34. package/dist/roadmap/promotion-drafts.js.map +1 -0
  35. package/dist/rpc/backlog.d.ts +10 -0
  36. package/dist/rpc/backlog.d.ts.map +1 -1
  37. package/dist/rpc/backlog.js +1 -0
  38. package/dist/rpc/backlog.js.map +1 -1
  39. package/dist/rpc/gateway.d.ts +13 -0
  40. package/dist/rpc/gateway.d.ts.map +1 -1
  41. package/dist/rpc/index.d.ts +1 -0
  42. package/dist/rpc/index.d.ts.map +1 -1
  43. package/dist/rpc/index.js +1 -0
  44. package/dist/rpc/index.js.map +1 -1
  45. package/dist/rpc/registry.d.ts +9 -0
  46. package/dist/rpc/registry.d.ts.map +1 -1
  47. package/dist/rpc/registry.js +10 -0
  48. package/dist/rpc/registry.js.map +1 -1
  49. package/dist/rpc/roadmap.d.ts +59 -0
  50. package/dist/rpc/roadmap.d.ts.map +1 -1
  51. package/dist/rpc/roadmap.js +7 -0
  52. package/dist/rpc/roadmap.js.map +1 -1
  53. package/dist/rpc/worker-session-history.d.ts +78 -0
  54. package/dist/rpc/worker-session-history.d.ts.map +1 -0
  55. package/dist/rpc/worker-session-history.js +7 -0
  56. package/dist/rpc/worker-session-history.js.map +1 -0
  57. package/dist/transport/events.d.ts +4 -1
  58. package/dist/transport/events.d.ts.map +1 -1
  59. package/dist/transport/events.js +1 -0
  60. package/dist/transport/events.js.map +1 -1
  61. package/dist/version.d.ts +1 -1
  62. package/dist/version.js +1 -1
  63. package/package.json +6 -1
package/CHANGELOG.md CHANGED
@@ -6,6 +6,16 @@ All notable changes to `@farmslot/protocol` are tracked here.
6
6
 
7
7
  - Active-development baseline; add user-facing changes here before release or package publication.
8
8
 
9
+ ## 0.7.3 - 2026-07-06
10
+
11
+ - feat: add `artifact_available` to `PREPARE_REQUIREMENTS` (bound to the project `artifact_check` hook) so prepare profiles can gate their cheap path on a fast artifact-resolution probe before selection.
12
+ - Export the shared `RecipeQualityArtifact` validator from protocol for gateway and agent-runtime use.
13
+ - Add `captureHelperPathInfo()` returning the resolved capture-helper path plus its resolution source (`env:CAPTURE_HELPER_PATH`, `env:SITEED_CAPTURE_HELPER_BIN`, `npm-global`, `npm-root`, `PATH`, `fallback`); `captureHelperPath()` is unchanged and delegates to it.
14
+ - Add `GatewayListenInfo` on `gateway.status` for Companion LAN pairing diagnostics.
15
+ - Add roadmap promotion draft contracts, backlog spec file reads, and graph dispatch configuration fields.
16
+ - Add interactive operator packet contracts, artifact discovery, and action request helpers.
17
+ - Add worker session history RPC and event contracts for read-only transcript snapshots and deltas.
18
+
9
19
  ## 0.7.2 - 2026-07-03
10
20
 
11
21
  - Rename the team overlay abstraction to "domain" (contracts, rpc, DOMAIN_NAME_RE/isValidDomainName) — clean break, no alias
@@ -1,6 +1,7 @@
1
1
  import type { ScriptedRunnerConfig } from './agents.js';
2
2
  import type { QueueItem } from './dispatch.js';
3
- import type { FlowType, RunStatus } from './runs.js';
3
+ import type { TaskTemplateSelection } from './evals.js';
4
+ import type { DevInteractiveProfile, FlowType, ReviewDepthPolicy, ReviewLoopRequest, RunStatus } from './runs.js';
4
5
  export declare const BACKLOG_STATUSES: readonly ["candidate", "ready", "queued", "dispatching", "running", "done", "failed", "needs-attention", "archived"];
5
6
  export type BacklogStatus = (typeof BACKLOG_STATUSES)[number];
6
7
  export declare const BACKLOG_SOURCE_KINDS: readonly ["jira", "github", "manual"];
@@ -80,6 +81,13 @@ export interface BacklogItem {
80
81
  model?: string;
81
82
  scripted?: ScriptedRunnerConfig;
82
83
  effort?: string;
84
+ taskTemplate?: TaskTemplateSelection;
85
+ app?: string;
86
+ prepareProfile?: string;
87
+ mode?: 'interactive' | 'autonomous';
88
+ devInteractiveProfile?: DevInteractiveProfile;
89
+ reviewDepth?: ReviewDepthPolicy;
90
+ pendingReviewPlan?: ReviewLoopRequest[];
83
91
  launchPlan?: BacklogLaunchPlan;
84
92
  launchPlanState?: BacklogLaunchPlanState;
85
93
  createdAt: string;
@@ -112,6 +120,13 @@ export interface BacklogCreateInput {
112
120
  model?: string;
113
121
  scripted?: ScriptedRunnerConfig;
114
122
  effort?: string;
123
+ taskTemplate?: TaskTemplateSelection;
124
+ app?: string;
125
+ prepareProfile?: string;
126
+ mode?: 'interactive' | 'autonomous';
127
+ devInteractiveProfile?: DevInteractiveProfile;
128
+ reviewDepth?: ReviewDepthPolicy;
129
+ pendingReviewPlan?: ReviewLoopRequest[];
115
130
  launchPlan?: BacklogLaunchPlan;
116
131
  status?: Extract<BacklogStatus, 'candidate' | 'ready'>;
117
132
  }
@@ -132,6 +147,13 @@ export interface BacklogUpdateInput {
132
147
  model?: string | null;
133
148
  scripted?: ScriptedRunnerConfig | null;
134
149
  effort?: string | null;
150
+ taskTemplate?: TaskTemplateSelection | null;
151
+ app?: string | null;
152
+ prepareProfile?: string | null;
153
+ mode?: 'interactive' | 'autonomous' | null;
154
+ devInteractiveProfile?: DevInteractiveProfile | null;
155
+ reviewDepth?: ReviewDepthPolicy | null;
156
+ pendingReviewPlan?: ReviewLoopRequest[] | null;
135
157
  launchPlan?: BacklogLaunchPlan | null;
136
158
  }
137
159
  export interface BacklogEnqueueResultData {
@@ -1 +1 @@
1
- {"version":3,"file":"backlog.d.ts","sourceRoot":"","sources":["../../src/contracts/backlog.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAErD,eAAO,MAAM,gBAAgB,sHAUnB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAC9D,eAAO,MAAM,oBAAoB,uCAAwC,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,yBAAyB,CAAC;CAC1C;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEhD,MAAM,MAAM,0BAA0B,GAAG,UAAU,GAAG,YAAY,CAAC;AAEnE,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,0BAA0B,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,uBAAuB,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;IACX,UAAU,EAAE,sBAAsB,EAAE,CAAC;CACtC;AAED,MAAM,MAAM,4BAA4B,GACpC,SAAS,GACT,QAAQ,GACR,SAAS,GACT,OAAO,GACP,WAAW,GACX,QAAQ,GACR,WAAW,GACX,SAAS,CAAC;AAEd,MAAM,WAAW,gCAAgC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,4BAA4B,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,gCAAgC,EAAE,CAAC;CAChD;AAyCD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,iBAAiB,CAgD1F;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kGAAkG;IAClG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qBAAqB,CAAC,EAAE,SAAS,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,iBAAiB,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,oBAAoB,CAAC;IAChC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC,aAAa,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC/B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;CACvC;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,WAAW,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;CACtB"}
1
+ {"version":3,"file":"backlog.d.ts","sourceRoot":"","sources":["../../src/contracts/backlog.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"backlog.js","sourceRoot":"","sources":["../../src/contracts/backlog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backlog.js","sourceRoot":"","sources":["../../src/contracts/backlog.ts"],"names":[],"mappings":"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"}
@@ -76,6 +76,8 @@ export interface ProjectRoadmapConfig {
76
76
  model?: string;
77
77
  /** Optional command template launched for refinement. Supports {{runner}}, {{model}}, {{prompt_path}}, and {{item_file}}. */
78
78
  runnerCommand?: string;
79
+ /** Optional executable prefix for Farmslot CLI commands, e.g. `farmslot`, `yarn workspace @farmslot/cli farmslot`, or `yarn dlx ... farmslot`. */
80
+ farmslotCommand?: string;
79
81
  }
80
82
  /**
81
83
  * Optional cost phases a prepare profile may select. Safety invariants (ssh
@@ -88,9 +90,12 @@ export type PreparePhase = (typeof PREPARE_PHASES)[number];
88
90
  * Framework-owned precondition checks a profile may require before its cheap
89
91
  * path is valid. Each name binds to existing project hooks/sentinels:
90
92
  * deps_current → lockfile-hash sentinel, dev_server_up → dev_server_check
91
- * hook, health_ok → health_check + ready_indicator pipeline.
93
+ * hook, health_ok → health_check + ready_indicator pipeline,
94
+ * artifact_available → artifact_check hook (a fast, seconds-scale probe that
95
+ * reports whether the profile's prebuilt artifact could be resolved; failure
96
+ * walks the profile's fallback).
92
97
  */
93
- export declare const PREPARE_REQUIREMENTS: readonly ["deps_current", "dev_server_up", "health_ok"];
98
+ export declare const PREPARE_REQUIREMENTS: readonly ["deps_current", "dev_server_up", "health_ok", "artifact_available"];
94
99
  export type PrepareRequirement = (typeof PREPARE_REQUIREMENTS)[number];
95
100
  export interface PrepareProfileConfig {
96
101
  /** Operator-facing label for wizard/CLI listings. */
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAI5C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,sBAAsB,CAAC;IACrC,KAAK,EAAE,KAAK,CAAC;QACX,EAAE,EAAE,MAAM,CAAC;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,IAAI,EAAE,YAAY,CAAC;QACnB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;KACvE,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACrC,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACjC,OAAO,CAAC,EAAE,oBAAoB,EAAE,CAAC;CAClC;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,iBAAiB,CAAC,EAAE,eAAe,EAAE,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,GAAG,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACvE;AAED,MAAM,WAAW,kCAAkC;IACjD,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6HAA6H;IAC7H,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kJAAkJ;IAClJ,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID;;;;GAIG;AACH,eAAO,MAAM,cAAc,6DAA8D,CAAC;AAC1F,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,+EAKvB,CAAC;AACX,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,MAAM,WAAW,oBAAoB;IACnC,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,kBAAkB,EAAE,CAAC;IAChC,qGAAqG;IACrG,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,uDAAuD;IACvD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;CAChD;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,+EAA+E;IAC/E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qIAAqI;IACrI,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvD,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,EAAE,EAAE;QACF,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QACpB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,EAAE,CAAC;QACtB,WAAW,EAAE,mBAAmB,EAAE,CAAC;QACnC,WAAW,EAAE,KAAK,CAAC;YACjB,MAAM,EAAE,MAAM,CAAC;YACf,KAAK,EAAE,MAAM,CAAC;YACd,aAAa,EAAE,cAAc,GAAG,YAAY,CAAC;YAC7C,OAAO,CAAC,EAAE,KAAK,CAAC;gBAAE,SAAS,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,cAAc,GAAG,YAAY,CAAC;gBAAC,KAAK,CAAC,EAAE,MAAM,CAAA;aAAE,CAAC,CAAC;SAC/F,CAAC,CAAC;KACJ,CAAC;IACF,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IAIF,iBAAiB,CAAC,EAAE,UAAU,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACnD,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,aAAa,CAAC,EAAE;YACd,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB,eAAe,CAAC,EAAE,OAAO,CAAC;YAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;SACxB,CAAC;KACH,CAAC;IACF,YAAY,CAAC,EAAE;QACb,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,iBAAiB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,GAAG,KAAK,EAAE,kCAAkC,CAAC,CAAC,CAAC;IAC3F,YAAY,CAAC,EAAE,yBAAyB,CAAC;IACzC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,yEAAyE;IACzE,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,sFAAsF;IACtF,6BAA6B,CAAC,EAAE,OAAO,CAAC;IACxC,yGAAyG;IACzG,+BAA+B,CAAC,EAAE,OAAO,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,OAAO,CAAC;IAC1C,SAAS,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;CACrC;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC;IACnB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB"}
@@ -9,7 +9,15 @@ export const PREPARE_PHASES = ['git', 'fixtures', 'deps', 'preflight', 'health']
9
9
  * Framework-owned precondition checks a profile may require before its cheap
10
10
  * path is valid. Each name binds to existing project hooks/sentinels:
11
11
  * deps_current → lockfile-hash sentinel, dev_server_up → dev_server_check
12
- * hook, health_ok → health_check + ready_indicator pipeline.
12
+ * hook, health_ok → health_check + ready_indicator pipeline,
13
+ * artifact_available → artifact_check hook (a fast, seconds-scale probe that
14
+ * reports whether the profile's prebuilt artifact could be resolved; failure
15
+ * walks the profile's fallback).
13
16
  */
14
- export const PREPARE_REQUIREMENTS = ['deps_current', 'dev_server_up', 'health_ok'];
17
+ export const PREPARE_REQUIREMENTS = [
18
+ 'deps_current',
19
+ 'dev_server_up',
20
+ 'health_ok',
21
+ 'artifact_available',
22
+ ];
15
23
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"AAsFA,qCAAqC;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAG1F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,cAAc,EAAE,eAAe,EAAE,WAAW,CAAU,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/contracts/config.ts"],"names":[],"mappings":"AAwFA,qCAAqC;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAU,CAAC;AAG1F;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,cAAc;IACd,eAAe;IACf,WAAW;IACX,oBAAoB;CACZ,CAAC"}
@@ -7,6 +7,7 @@ export * from './config.js';
7
7
  export * from './dispatch.js';
8
8
  export * from './evals.js';
9
9
  export * from './family.js';
10
+ export * from './interactive-operator-packets.js';
10
11
  export * from './recipes.js';
11
12
  export * from './resources.js';
12
13
  export * from './reviews.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mCAAmC,CAAC;AAClD,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
@@ -7,6 +7,7 @@ export * from './config.js';
7
7
  export * from './dispatch.js';
8
8
  export * from './evals.js';
9
9
  export * from './family.js';
10
+ export * from './interactive-operator-packets.js';
10
11
  export * from './recipes.js';
11
12
  export * from './resources.js';
12
13
  export * from './reviews.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,mCAAmC,CAAC;AAClD,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,79 @@
1
+ import type { ArtifactRef } from '../recipes/step-io.js';
2
+ export declare const INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1 = "farmslot.interactive.operator-packet.v1";
3
+ export declare const INTERACTIVE_OPERATOR_PACKET_INTENTS: readonly [
4
+ 'plan',
5
+ 'decision',
6
+ 'review',
7
+ 'blocker',
8
+ 'evidence',
9
+ 'comparison'
10
+ ];
11
+ export type InteractiveOperatorPacketIntent = (typeof INTERACTIVE_OPERATOR_PACKET_INTENTS)[number];
12
+ export declare const INTERACTIVE_OPERATOR_PACKET_ACTION_KINDS: readonly [
13
+ 'terminal.send',
14
+ 'decision.resolve',
15
+ 'copy',
16
+ 'open-artifact'
17
+ ];
18
+ export type InteractiveOperatorPacketActionKind = (typeof INTERACTIVE_OPERATOR_PACKET_ACTION_KINDS)[number];
19
+ export type InteractiveOperatorPacketActionSafety = 'read-only' | 'operator-confirmed';
20
+ export interface InteractiveOperatorPacketBody {
21
+ format: 'markdown';
22
+ path?: string;
23
+ text?: string;
24
+ }
25
+ export interface InteractiveOperatorPacketAnchor {
26
+ id: string;
27
+ label: string;
28
+ artifactPath?: string;
29
+ selector?: string;
30
+ line?: number;
31
+ range?: {
32
+ start: number;
33
+ end: number;
34
+ };
35
+ }
36
+ export interface InteractiveOperatorPacketAction {
37
+ id: string;
38
+ label: string;
39
+ kind: InteractiveOperatorPacketActionKind;
40
+ safety: InteractiveOperatorPacketActionSafety;
41
+ payload?: Record<string, unknown>;
42
+ }
43
+ export type InteractiveOperatorPacketActionRequest = {
44
+ kind: 'copy';
45
+ text: string;
46
+ } | {
47
+ kind: 'open-artifact';
48
+ artifactPath: string;
49
+ } | {
50
+ kind: 'terminal.send';
51
+ text: string;
52
+ } | {
53
+ kind: 'decision.resolve';
54
+ decisionId: string;
55
+ actionId: string;
56
+ };
57
+ export interface InteractiveOperatorPacket {
58
+ schema: typeof INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1;
59
+ id: string;
60
+ runId?: string;
61
+ title: string;
62
+ intent: InteractiveOperatorPacketIntent;
63
+ summary?: string;
64
+ body: InteractiveOperatorPacketBody;
65
+ anchors?: InteractiveOperatorPacketAnchor[];
66
+ actions?: InteractiveOperatorPacketAction[];
67
+ createdAt: string;
68
+ }
69
+ export interface InteractiveOperatorPacketValidationResult {
70
+ ok: boolean;
71
+ packet?: InteractiveOperatorPacket;
72
+ errors: string[];
73
+ }
74
+ export declare function validateInteractiveOperatorPacket(value: unknown): InteractiveOperatorPacketValidationResult;
75
+ export declare function isInteractiveOperatorPacket(value: unknown): value is InteractiveOperatorPacket;
76
+ export declare function interactiveOperatorPacketActionRequest(action: InteractiveOperatorPacketAction): InteractiveOperatorPacketActionRequest | null;
77
+ export declare function isInteractiveOperatorPacketArtifact(artifact: Pick<ArtifactRef, 'path' | 'purpose' | 'type' | 'mimeType'>): boolean;
78
+ export declare function interactiveOperatorPacketArtifacts<T extends Pick<ArtifactRef, 'path' | 'purpose' | 'type' | 'mimeType'>>(artifacts: readonly T[]): T[];
79
+ //# sourceMappingURL=interactive-operator-packets.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-operator-packets.d.ts","sourceRoot":"","sources":["../../src/contracts/interactive-operator-packets.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,274 @@
1
+ export const INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1 = 'farmslot.interactive.operator-packet.v1';
2
+ export const INTERACTIVE_OPERATOR_PACKET_INTENTS = ['plan', 'decision', 'review', 'blocker', 'evidence', 'comparison'];
3
+ export const INTERACTIVE_OPERATOR_PACKET_ACTION_KINDS = ['terminal.send', 'decision.resolve', 'copy', 'open-artifact'];
4
+ function isRecord(value) {
5
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
6
+ }
7
+ function stringValue(value) {
8
+ if (typeof value !== 'string')
9
+ return null;
10
+ const trimmed = value.trim();
11
+ return trimmed ? trimmed : null;
12
+ }
13
+ function payloadString(payload, key) {
14
+ const value = payload?.[key];
15
+ return stringValue(value);
16
+ }
17
+ function isKnownString(value, known) {
18
+ if (typeof value !== 'string')
19
+ return false;
20
+ return known.some((candidate) => candidate === value);
21
+ }
22
+ function knownStringValue(value, known) {
23
+ return isKnownString(value, known) ? value : null;
24
+ }
25
+ function parseBody(value, errors) {
26
+ if (!isRecord(value)) {
27
+ errors.push('body must be an object');
28
+ return null;
29
+ }
30
+ if (value.format !== 'markdown') {
31
+ errors.push('body.format must be "markdown"');
32
+ return null;
33
+ }
34
+ const path = stringValue(value.path) ?? undefined;
35
+ const text = stringValue(value.text) ?? undefined;
36
+ if (!path && !text) {
37
+ errors.push('body must include path or text');
38
+ return null;
39
+ }
40
+ const body = { format: 'markdown' };
41
+ if (path)
42
+ body.path = path;
43
+ if (text)
44
+ body.text = text;
45
+ return body;
46
+ }
47
+ function parseAnchors(value, errors) {
48
+ if (value == null)
49
+ return undefined;
50
+ if (!Array.isArray(value)) {
51
+ errors.push('anchors must be an array');
52
+ return undefined;
53
+ }
54
+ const anchors = [];
55
+ const seenIds = new Set();
56
+ value.forEach((anchor, index) => {
57
+ if (!isRecord(anchor)) {
58
+ errors.push(`anchors[${index}] must be an object`);
59
+ return;
60
+ }
61
+ const id = stringValue(anchor.id);
62
+ const label = stringValue(anchor.label);
63
+ const errorCountBeforeAnchor = errors.length;
64
+ if (!id)
65
+ errors.push(`anchors[${index}].id must be a non-empty string`);
66
+ if (id && seenIds.has(id)) {
67
+ errors.push(`anchors[${index}].id must be unique`);
68
+ }
69
+ if (id)
70
+ seenIds.add(id);
71
+ if (!label) {
72
+ errors.push(`anchors[${index}].label must be a non-empty string`);
73
+ }
74
+ const artifactPath = stringValue(anchor.artifactPath) ?? undefined;
75
+ const selector = stringValue(anchor.selector) ?? undefined;
76
+ const line = Number.isInteger(anchor.line) ? Number(anchor.line) : undefined;
77
+ if (anchor.line != null && (line == null || line < 1)) {
78
+ errors.push(`anchors[${index}].line must be a positive integer`);
79
+ }
80
+ let range;
81
+ if (anchor.range != null) {
82
+ if (!isRecord(anchor.range)) {
83
+ errors.push(`anchors[${index}].range must be an object`);
84
+ }
85
+ else if (!Number.isInteger(anchor.range.start) ||
86
+ !Number.isInteger(anchor.range.end) ||
87
+ Number(anchor.range.start) < 0 ||
88
+ Number(anchor.range.end) < Number(anchor.range.start)) {
89
+ errors.push(`anchors[${index}].range must include valid start/end offsets`);
90
+ }
91
+ else {
92
+ range = { start: Number(anchor.range.start), end: Number(anchor.range.end) };
93
+ }
94
+ }
95
+ if (id && label && (anchor.line == null || line != null) && (anchor.range == null || range)) {
96
+ if (errors.length !== errorCountBeforeAnchor)
97
+ return;
98
+ const parsed = { id, label };
99
+ if (artifactPath)
100
+ parsed.artifactPath = artifactPath;
101
+ if (selector)
102
+ parsed.selector = selector;
103
+ if (line != null)
104
+ parsed.line = line;
105
+ if (range)
106
+ parsed.range = range;
107
+ anchors.push(parsed);
108
+ }
109
+ });
110
+ return anchors;
111
+ }
112
+ function validateActionPayload(kind, payload, index, errors) {
113
+ if (kind === 'copy' || kind === 'terminal.send') {
114
+ if (!payloadString(payload, 'text')) {
115
+ errors.push(`actions[${index}].payload.text must be a non-empty string`);
116
+ }
117
+ return;
118
+ }
119
+ if (kind === 'open-artifact') {
120
+ if (!payloadString(payload, 'artifactPath')) {
121
+ errors.push(`actions[${index}].payload.artifactPath must be a non-empty string`);
122
+ }
123
+ return;
124
+ }
125
+ if (!payloadString(payload, 'decisionId')) {
126
+ errors.push(`actions[${index}].payload.decisionId must be a non-empty string`);
127
+ }
128
+ if (!payloadString(payload, 'actionId')) {
129
+ errors.push(`actions[${index}].payload.actionId must be a non-empty string`);
130
+ }
131
+ }
132
+ function parseActions(value, errors) {
133
+ if (value == null)
134
+ return undefined;
135
+ if (!Array.isArray(value)) {
136
+ errors.push('actions must be an array');
137
+ return undefined;
138
+ }
139
+ const actions = [];
140
+ const seenIds = new Set();
141
+ value.forEach((action, index) => {
142
+ if (!isRecord(action)) {
143
+ errors.push(`actions[${index}] must be an object`);
144
+ return;
145
+ }
146
+ const id = stringValue(action.id);
147
+ const label = stringValue(action.label);
148
+ const errorCountBeforeAction = errors.length;
149
+ if (!id)
150
+ errors.push(`actions[${index}].id must be a non-empty string`);
151
+ if (id && seenIds.has(id)) {
152
+ errors.push(`actions[${index}].id must be unique`);
153
+ }
154
+ if (id)
155
+ seenIds.add(id);
156
+ if (!label) {
157
+ errors.push(`actions[${index}].label must be a non-empty string`);
158
+ }
159
+ const kind = knownStringValue(action.kind, INTERACTIVE_OPERATOR_PACKET_ACTION_KINDS);
160
+ if (!kind) {
161
+ errors.push(`actions[${index}].kind is unsupported`);
162
+ }
163
+ const safety = action.safety === 'read-only' || action.safety === 'operator-confirmed'
164
+ ? action.safety
165
+ : null;
166
+ if (!safety) {
167
+ errors.push(`actions[${index}].safety must be read-only or operator-confirmed`);
168
+ }
169
+ const payload = isRecord(action.payload) ? action.payload : undefined;
170
+ if (action.payload != null && !isRecord(action.payload)) {
171
+ errors.push(`actions[${index}].payload must be an object when present`);
172
+ }
173
+ if (kind)
174
+ validateActionPayload(kind, payload, index, errors);
175
+ if (id &&
176
+ label &&
177
+ kind &&
178
+ safety &&
179
+ (action.payload == null || payload) &&
180
+ errors.length === errorCountBeforeAction) {
181
+ const parsed = { id, label, kind, safety };
182
+ if (payload)
183
+ parsed.payload = payload;
184
+ actions.push(parsed);
185
+ }
186
+ });
187
+ return actions;
188
+ }
189
+ export function validateInteractiveOperatorPacket(value) {
190
+ const errors = [];
191
+ if (!isRecord(value))
192
+ return { ok: false, errors: ['packet must be an object'] };
193
+ if (value.schema !== INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1) {
194
+ errors.push(`schema must be ${INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1}`);
195
+ }
196
+ const id = stringValue(value.id);
197
+ const runId = stringValue(value.runId) ?? undefined;
198
+ const title = stringValue(value.title);
199
+ const summary = stringValue(value.summary) ?? undefined;
200
+ const intent = isKnownString(value.intent, INTERACTIVE_OPERATOR_PACKET_INTENTS)
201
+ ? value.intent
202
+ : null;
203
+ const createdAt = stringValue(value.createdAt);
204
+ if (!id)
205
+ errors.push('id must be a non-empty string');
206
+ if (!title)
207
+ errors.push('title must be a non-empty string');
208
+ if (!intent) {
209
+ errors.push('intent is unsupported');
210
+ }
211
+ const body = parseBody(value.body, errors);
212
+ const anchors = parseAnchors(value.anchors, errors);
213
+ const actions = parseActions(value.actions, errors);
214
+ if (!createdAt)
215
+ errors.push('createdAt must be a non-empty string');
216
+ if (errors.length > 0 || !id || !title || !intent || !body || !createdAt) {
217
+ return { ok: false, errors };
218
+ }
219
+ const packet = {
220
+ schema: INTERACTIVE_OPERATOR_PACKET_SCHEMA_V1,
221
+ id,
222
+ title,
223
+ intent,
224
+ body,
225
+ createdAt,
226
+ };
227
+ if (runId)
228
+ packet.runId = runId;
229
+ if (summary)
230
+ packet.summary = summary;
231
+ if (anchors)
232
+ packet.anchors = anchors;
233
+ if (actions)
234
+ packet.actions = actions;
235
+ return { ok: true, packet, errors: [] };
236
+ }
237
+ export function isInteractiveOperatorPacket(value) {
238
+ return validateInteractiveOperatorPacket(value).ok;
239
+ }
240
+ export function interactiveOperatorPacketActionRequest(action) {
241
+ switch (action.kind) {
242
+ case 'copy': {
243
+ const text = payloadString(action.payload, 'text');
244
+ return text ? { kind: 'copy', text } : null;
245
+ }
246
+ case 'open-artifact': {
247
+ const artifactPath = payloadString(action.payload, 'artifactPath');
248
+ return artifactPath ? { kind: 'open-artifact', artifactPath } : null;
249
+ }
250
+ case 'terminal.send': {
251
+ const text = payloadString(action.payload, 'text');
252
+ return text ? { kind: 'terminal.send', text } : null;
253
+ }
254
+ case 'decision.resolve': {
255
+ const decisionId = payloadString(action.payload, 'decisionId');
256
+ const actionId = payloadString(action.payload, 'actionId');
257
+ return decisionId && actionId ? { kind: 'decision.resolve', decisionId, actionId } : null;
258
+ }
259
+ }
260
+ }
261
+ export function isInteractiveOperatorPacketArtifact(artifact) {
262
+ const normalizedPath = artifact.path.replace(/\\/g, '/').toLowerCase();
263
+ const purpose = artifact.purpose?.toLowerCase() ?? '';
264
+ const type = artifact.type?.toLowerCase() ?? '';
265
+ const mimeType = artifact.mimeType?.toLowerCase() ?? '';
266
+ return (normalizedPath.endsWith('.packet.json') ||
267
+ purpose === 'interactive-packet' ||
268
+ type === 'interactive-packet' ||
269
+ mimeType === 'application/vnd.farmslot.operator-packet+json');
270
+ }
271
+ export function interactiveOperatorPacketArtifacts(artifacts) {
272
+ return artifacts.filter(isInteractiveOperatorPacketArtifact);
273
+ }
274
+ //# sourceMappingURL=interactive-operator-packets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactive-operator-packets.js","sourceRoot":"","sources":["../../src/contracts/interactive-operator-packets.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,12 @@ export type RecipeQualityVerdict = 'pass' | 'warn' | 'fail';
37
37
  export type RecipeQualityDimensionStatus = 'pass' | 'warn' | 'fail' | 'not_applicable';
38
38
  export type RecipeQualityEvidenceMode = 'logs' | 'state' | 'trace' | 'screenshot' | 'mixed' | 'unknown';
39
39
  export type RecipeQualityArtifactSource = 'worker' | 'gateway' | 'fallback:recipe-coverage' | 'fallback:recipe-json' | 'fallback:report' | 'fallback:missing';
40
+ export declare const RECIPE_QUALITY_ARTIFACT_VERSION = 1;
41
+ export declare const RECIPE_QUALITY_VERDICTS: readonly ["pass", "warn", "fail"];
42
+ export declare const RECIPE_QUALITY_DIMENSION_STATUSES: readonly ["pass", "warn", "fail", "not_applicable"];
43
+ export declare const RECIPE_QUALITY_PROOF_MODES: readonly ["logs", "state", "trace", "screenshot", "mixed", "unknown"];
44
+ export declare const RECIPE_QUALITY_ARTIFACT_SOURCES: readonly ["worker", "gateway", "fallback:recipe-coverage", "fallback:recipe-json", "fallback:report", "fallback:missing"];
45
+ export declare const RECIPE_QUALITY_FALLBACK_SOURCES: readonly ["fallback:recipe-coverage", "fallback:recipe-json", "fallback:report", "fallback:missing"];
40
46
  export interface RecipeQualityCompactProjection {
41
47
  verdict: 'PASS' | 'WARN' | 'FAIL';
42
48
  reasons: string[];
@@ -89,6 +95,7 @@ export interface RecipeQualitySignal {
89
95
  source: 'recipe-quality' | 'human-grade' | 'recipe-coverage' | 'recipe-json' | 'report' | 'missing';
90
96
  reasoning: string;
91
97
  }
98
+ export declare function isRecipeQualityArtifact(value: unknown): value is RecipeQualityArtifact;
92
99
  export type { EvidenceManifestEntry, EvidenceManifestStandalone, LiveRecipeContext, LiveRecipeSelectionReason, LiveRecipeSource, RecipeRunArtifactGroup, RecipeRunArtifactGroupKind, RecipeRunArtifactGroupStatus, } from './runs.js';
93
100
  export { hasLiveRecipeEvidence, LIVE_RECIPE_EVIDENCE_FILES, LIVE_RECIPE_EVIDENCE_PURPOSES, } from './runs.js';
94
101
  //# sourceMappingURL=recipes.d.ts.map