@kontourai/flow-agents 3.3.0 → 3.4.1

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 (256) hide show
  1. package/.github/workflows/add-to-project.yml +15 -0
  2. package/.github/workflows/ci.yml +161 -0
  3. package/CHANGELOG.md +48 -0
  4. package/CONTEXT.md +5 -1
  5. package/README.md +19 -8
  6. package/build/src/builder-flow-run-adapter.d.ts +80 -0
  7. package/build/src/builder-flow-run-adapter.js +241 -0
  8. package/build/src/builder-flow-runtime.d.ts +16 -0
  9. package/build/src/builder-flow-runtime.js +290 -0
  10. package/build/src/cli/builder-run.d.ts +1 -0
  11. package/build/src/cli/builder-run.js +27 -0
  12. package/build/src/cli/effective-backlog-settings.js +70 -2
  13. package/build/src/cli/init.d.ts +34 -0
  14. package/build/src/cli/init.js +341 -61
  15. package/build/src/cli/kit.js +55 -12
  16. package/build/src/cli/pull-work-provider.js +346 -5
  17. package/build/src/cli/skill-drift-check.d.ts +1 -0
  18. package/build/src/cli/skill-drift-check.js +165 -0
  19. package/build/src/cli/telemetry-doctor.d.ts +37 -0
  20. package/build/src/cli/telemetry-doctor.js +53 -6
  21. package/build/src/cli/validate-hook-influence.js +37 -7
  22. package/build/src/cli/workflow-sidecar.d.ts +93 -8
  23. package/build/src/cli/workflow-sidecar.js +1175 -158
  24. package/build/src/cli.js +5 -0
  25. package/build/src/flow-kit/validate.d.ts +54 -34
  26. package/build/src/flow-kit/validate.js +237 -26
  27. package/build/src/index.d.ts +2 -0
  28. package/build/src/index.js +1 -0
  29. package/build/src/lib/console-connect-options.d.ts +97 -0
  30. package/build/src/lib/console-connect-options.js +199 -0
  31. package/build/src/lib/console-telemetry-validate.d.ts +49 -0
  32. package/build/src/lib/console-telemetry-validate.js +91 -0
  33. package/build/src/lib/flow-resolver.d.ts +56 -3
  34. package/build/src/lib/flow-resolver.js +151 -11
  35. package/build/src/lib/fs.d.ts +17 -0
  36. package/build/src/lib/fs.js +172 -0
  37. package/build/src/lib/local-artifact-root.d.ts +44 -1
  38. package/build/src/lib/local-artifact-root.js +131 -3
  39. package/build/src/runtime-adapters.d.ts +39 -3
  40. package/build/src/runtime-adapters.js +77 -31
  41. package/build/src/tools/build-universal-bundles.js +40 -2
  42. package/build/src/tools/codex-agent-routing.d.ts +2 -0
  43. package/build/src/tools/codex-agent-routing.js +49 -0
  44. package/build/src/tools/generate-context-map.js +1 -0
  45. package/build/src/tools/validate-source-tree.js +27 -1
  46. package/context/scripts/hooks/lib/kit-catalog.js +235 -0
  47. package/context/scripts/hooks/lib/runnable-command.js +177 -0
  48. package/context/scripts/hooks/stop-goal-fit.js +278 -48
  49. package/context/scripts/hooks/workflow-steering.js +121 -21
  50. package/context/scripts/package.json +3 -0
  51. package/context/scripts/telemetry/install-console-config.sh +25 -4
  52. package/context/scripts/telemetry/lib/config.sh +102 -12
  53. package/context/scripts/telemetry/lib/pricing.sh +50 -0
  54. package/context/scripts/telemetry/lib/session.sh +3 -0
  55. package/context/scripts/telemetry/lib/transport.sh +87 -0
  56. package/context/scripts/telemetry/lib/usage.sh +205 -4
  57. package/context/scripts/telemetry/telemetry.conf +6 -0
  58. package/context/scripts/telemetry/telemetry.sh +48 -0
  59. package/context/settings/workspace-backlog-provider-settings.example.json +48 -0
  60. package/docs/agent-usage-feedback-loop.md +35 -0
  61. package/docs/architecture-engine-and-kits.md +110 -0
  62. package/docs/context-map.md +2 -0
  63. package/docs/decisions/embeddable-engine.md +152 -0
  64. package/docs/decisions/index.md +3 -1
  65. package/docs/decisions/trust-ledger-retention.md +88 -0
  66. package/docs/decisions/workflow-enforcement.md +31 -9
  67. package/docs/fixture-ownership.md +3 -0
  68. package/docs/implementing-trust-reconciliation.md +129 -0
  69. package/docs/index.md +19 -9
  70. package/docs/integrations/flow-agents-console.md +167 -0
  71. package/docs/kit-authoring-guide.md +52 -21
  72. package/docs/spec/builder-flow-runtime.md +80 -0
  73. package/docs/spec/runtime-hook-surface.md +45 -1
  74. package/docs/specs/economics-record-contract.md +270 -0
  75. package/docs/specs/harness-capability-matrix.md +74 -0
  76. package/docs/specs/learning-review-proposals-contract.md +340 -0
  77. package/docs/specs/routing-efficiency-review.md +59 -0
  78. package/docs/verifiable-trust.md +74 -25
  79. package/docs/workflow-usage-guide.md +10 -0
  80. package/evals/acceptance/prove-capture-teeth.sh +132 -0
  81. package/evals/ci/antigaming-suite.sh +1 -0
  82. package/evals/ci/run-baseline.sh +72 -4
  83. package/evals/fixtures/economics/acceptance.json +12 -0
  84. package/evals/fixtures/economics/agents/tool-worker-1/events.jsonl +2 -0
  85. package/evals/fixtures/economics/agents/tool-worker-2/events.jsonl +2 -0
  86. package/evals/fixtures/economics/agents/tool-worker-3/events.jsonl +2 -0
  87. package/evals/fixtures/economics/agents/tool-worker-4/events.jsonl +1 -0
  88. package/evals/fixtures/economics/agents/tool-worker-5/events.jsonl +2 -0
  89. package/evals/fixtures/economics/critique.json +22 -0
  90. package/evals/fixtures/economics/expected-record.json +71 -0
  91. package/evals/fixtures/economics/session-usage-event.json +1 -0
  92. package/evals/fixtures/economics/state.json +11 -0
  93. package/evals/fixtures/economics/transcript.jsonl +3 -0
  94. package/evals/fixtures/hook-influence/cases.json +7 -7
  95. package/evals/fixtures/learning-review-proposals/balanced/economics.jsonl +6 -0
  96. package/evals/fixtures/learning-review-proposals/effect-follow-up/economics.jsonl +5 -0
  97. package/evals/fixtures/learning-review-proposals/effect-follow-up/sessions/task-lr-ef-1/trust.bundle +21 -0
  98. package/evals/fixtures/learning-review-proposals/effect-follow-up/sessions/task-lr-ef-2/trust.bundle +21 -0
  99. package/evals/fixtures/learning-review-proposals/effect-follow-up/sessions/task-lr-ef-3/trust.bundle +21 -0
  100. package/evals/fixtures/learning-review-proposals/effect-follow-up/sessions/task-lr-ef-4/trust.bundle +21 -0
  101. package/evals/fixtures/learning-review-proposals/effect-follow-up/sessions/task-lr-ef-5/trust.bundle +21 -0
  102. package/evals/fixtures/learning-review-proposals/pattern-present/economics.jsonl +6 -0
  103. package/evals/fixtures/learning-review-proposals/pattern-present/expected-aggregates.json +30 -0
  104. package/evals/fixtures/learning-review-proposals/pattern-present/expected-aggregates.md +66 -0
  105. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-1/gate-review.inquiries.json +26 -0
  106. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-1/trust.bundle +21 -0
  107. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-2/gate-review.inquiries.json +26 -0
  108. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-2/trust.bundle +21 -0
  109. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-3/gate-review.inquiries.json +26 -0
  110. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-3/trust.bundle +21 -0
  111. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-4/gate-review.inquiries.json +26 -0
  112. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-4/trust.bundle +21 -0
  113. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-5/trust.bundle +21 -0
  114. package/evals/fixtures/learning-review-proposals/pattern-present/sessions/task-lr-pp-6/trust.bundle +21 -0
  115. package/evals/fixtures/learning-review-proposals/repeat-window/economics.jsonl +6 -0
  116. package/evals/fixtures/learning-review-proposals/under-threshold/economics.jsonl +3 -0
  117. package/evals/fixtures/telemetry/usage-transcript-sample.jsonl +4 -0
  118. package/evals/fixtures/trust-reconcile-exploits/mcp-degrade.json +42 -0
  119. package/evals/integration/test_builder_entry_enforcement.sh +241 -0
  120. package/evals/integration/test_builder_step_producers.sh +18 -10
  121. package/evals/integration/test_bundle_install.sh +172 -0
  122. package/evals/integration/test_console_tenant_isolation.sh +167 -0
  123. package/evals/integration/test_critique_supersession_roundtrip.sh +4 -1
  124. package/evals/integration/test_dual_emit_flow_step.sh +10 -4
  125. package/evals/integration/test_economics_record.sh +674 -0
  126. package/evals/integration/test_effective_backlog_settings.sh +1 -1
  127. package/evals/integration/test_evidence_capture_hook.sh +17 -2
  128. package/evals/integration/test_exemption_usage_review.sh +198 -0
  129. package/evals/integration/test_fixture_retirement_audit.sh +2 -2
  130. package/evals/integration/test_flow_kit_install_git.sh +83 -0
  131. package/evals/integration/test_flowdef_session_activation.sh +0 -1
  132. package/evals/integration/test_flowdef_session_history_preservation.sh +13 -3
  133. package/evals/integration/test_gate_lockdown.sh +7 -0
  134. package/evals/integration/test_gate_review_inquiry_records.sh +9 -1
  135. package/evals/integration/test_goal_fit_hook.sh +2031 -0
  136. package/evals/integration/test_hook_category_behaviors.sh +8 -1
  137. package/evals/integration/test_hook_influence_cases.sh +25 -1
  138. package/evals/integration/test_install_merge.sh +227 -2
  139. package/evals/integration/test_kit_conformance_levels.sh +6 -6
  140. package/evals/integration/test_learning_review_proposals.sh +329 -0
  141. package/evals/integration/test_liveness_conflict_injection.sh +26 -22
  142. package/evals/integration/test_liveness_console_relay.sh +166 -0
  143. package/evals/integration/test_liveness_heartbeat.sh +17 -17
  144. package/evals/integration/test_liveness_worktree_root.sh +575 -0
  145. package/evals/integration/test_phase_map_and_gate_claim.sh +6 -1
  146. package/evals/integration/test_publish_delivery.sh +331 -1
  147. package/evals/integration/test_pull_work_board.sh +200 -0
  148. package/evals/integration/test_pull_work_provider.sh +1 -1
  149. package/evals/integration/test_record_check.sh +378 -0
  150. package/evals/integration/test_routing_efficiency.sh +71 -0
  151. package/evals/integration/test_runtime_adapter_activation.sh +28 -0
  152. package/evals/integration/test_session_resume_roundtrip.sh +16 -19
  153. package/evals/integration/test_skill_drift_check.sh +870 -0
  154. package/evals/integration/test_telemetry.sh +445 -0
  155. package/evals/integration/test_telemetry_doctor.sh +66 -0
  156. package/evals/integration/test_telemetry_usage_pipeline.sh +228 -0
  157. package/evals/integration/test_trust_reconcile_negatives.sh +30 -13
  158. package/evals/integration/test_trust_reconcile_trailer_diagnostic.sh +247 -0
  159. package/evals/integration/test_usage_cost.sh +61 -0
  160. package/evals/integration/test_workflow_sidecar_writer.sh +1395 -0
  161. package/evals/integration/test_workflow_steering_hook.sh +157 -16
  162. package/evals/integration/test_workspace_settings.sh +176 -0
  163. package/evals/lib/env.sh +26 -0
  164. package/evals/lib/node.sh +8 -0
  165. package/evals/run.sh +29 -0
  166. package/evals/static/test_ci_integration_coverage.sh +115 -0
  167. package/evals/static/test_declared_scope_forms_documented.sh +114 -0
  168. package/evals/static/test_universal_bundles.sh +34 -0
  169. package/evals/static/test_validate_source_kit_asset_scope.sh +259 -0
  170. package/evals/static/test_workflow_skills.sh +1 -1
  171. package/kits/builder/flows/build.flow.json +9 -18
  172. package/kits/builder/flows/publish-learn.flow.json +5 -1
  173. package/kits/builder/kit.json +120 -0
  174. package/kits/builder/skills/deliver/SKILL.md +42 -0
  175. package/kits/builder/skills/evidence-gate/SKILL.md +12 -0
  176. package/kits/builder/skills/execute-plan/SKILL.md +9 -0
  177. package/kits/builder/skills/learning-review/SKILL.md +51 -0
  178. package/kits/builder/skills/plan-work/SKILL.md +17 -20
  179. package/kits/builder/skills/pull-work/SKILL.md +21 -0
  180. package/kits/builder/skills/release-readiness/SKILL.md +12 -0
  181. package/kits/knowledge/kit.json +9 -0
  182. package/kits/veritas-governance/docs/README.md +35 -7
  183. package/kits/veritas-governance/fixtures/exemption-review/mixed-fresh-stale.DECLARED.json +14 -0
  184. package/kits/veritas-governance/kit.json +14 -0
  185. package/kits/veritas-governance/skills/exemption-usage-review/SKILL.md +128 -0
  186. package/kits/veritas-governance/skills/exemption-usage-review/review-exemptions.mjs +231 -0
  187. package/package.json +2 -2
  188. package/packaging/manifest.json +29 -0
  189. package/schemas/backlog-provider-settings.schema.json +13 -0
  190. package/schemas/workflow-state.schema.json +44 -0
  191. package/scripts/README.md +4 -0
  192. package/scripts/check-content-boundary.cjs +8 -1
  193. package/scripts/ci/trust-reconcile.js +136 -0
  194. package/scripts/hooks/codex-hook-adapter.js +77 -2
  195. package/scripts/hooks/evidence-capture.js +38 -5
  196. package/scripts/hooks/lib/codex-exit-code.js +316 -0
  197. package/scripts/hooks/lib/kit-catalog.js +235 -0
  198. package/scripts/hooks/lib/liveness-write.js +28 -1
  199. package/scripts/hooks/lib/local-artifact-paths.js +97 -1
  200. package/scripts/hooks/lib/runnable-command.js +177 -0
  201. package/scripts/hooks/lib/skill-drift.js +350 -0
  202. package/scripts/hooks/stop-goal-fit.js +278 -48
  203. package/scripts/hooks/workflow-steering.js +121 -21
  204. package/scripts/install-codex-home.sh +97 -47
  205. package/scripts/install-merge.js +72 -14
  206. package/scripts/install-owned-files.js +178 -0
  207. package/scripts/liveness/relay.sh +84 -0
  208. package/scripts/telemetry/economics-record.schema.json +145 -0
  209. package/scripts/telemetry/economics-record.sh +331 -0
  210. package/scripts/telemetry/install-console-config.sh +25 -4
  211. package/scripts/telemetry/learning-review-decide.sh +124 -0
  212. package/scripts/telemetry/learning-review-proposals.schema.json +161 -0
  213. package/scripts/telemetry/learning-review-proposals.sh +484 -0
  214. package/scripts/telemetry/lib/config.sh +102 -12
  215. package/scripts/telemetry/lib/pricing.sh +14 -6
  216. package/scripts/telemetry/lib/session.sh +3 -0
  217. package/scripts/telemetry/lib/transport.sh +133 -15
  218. package/scripts/telemetry/lib/usage.sh +121 -28
  219. package/scripts/telemetry/routing-efficiency.sh +0 -0
  220. package/scripts/telemetry/telemetry.conf +6 -0
  221. package/scripts/telemetry/telemetry.sh +48 -0
  222. package/src/builder-flow-run-adapter.ts +357 -0
  223. package/src/builder-flow-runtime.ts +348 -0
  224. package/src/cli/builder-flow-run-adapter.test.mjs +495 -0
  225. package/src/cli/builder-flow-runtime.test.mjs +213 -0
  226. package/src/cli/builder-run.ts +28 -0
  227. package/src/cli/codex-agent-routing.test.mjs +44 -0
  228. package/src/cli/codex-exit-code.test.mjs +207 -0
  229. package/src/cli/console-connect-options.test.mjs +329 -0
  230. package/src/cli/console-telemetry-validate.test.mjs +157 -0
  231. package/src/cli/effective-backlog-settings.ts +68 -2
  232. package/src/cli/flow-resolver-composition.test.mjs +101 -0
  233. package/src/cli/init.test.mjs +161 -0
  234. package/src/cli/init.ts +407 -62
  235. package/src/cli/kit-metadata-security.test.mjs +443 -0
  236. package/src/cli/kit.ts +50 -12
  237. package/src/cli/pull-work-provider.ts +377 -3
  238. package/src/cli/sidecar-pure-helpers.test.mjs +64 -0
  239. package/src/cli/skill-drift-check.ts +196 -0
  240. package/src/cli/telemetry-doctor.test.mjs +53 -0
  241. package/src/cli/telemetry-doctor.ts +50 -7
  242. package/src/cli/validate-hook-influence.ts +37 -6
  243. package/src/cli/workflow-sidecar.ts +1150 -151
  244. package/src/cli.ts +5 -0
  245. package/src/flow-kit/validate.ts +277 -38
  246. package/src/index.ts +19 -0
  247. package/src/lib/console-connect-options.ts +261 -0
  248. package/src/lib/console-telemetry-validate.ts +88 -0
  249. package/src/lib/flow-resolver.ts +153 -10
  250. package/src/lib/fs.ts +160 -0
  251. package/src/lib/local-artifact-root.ts +129 -3
  252. package/src/runtime-adapters.ts +113 -33
  253. package/src/tools/build-universal-bundles.ts +36 -2
  254. package/src/tools/codex-agent-routing.ts +48 -0
  255. package/src/tools/generate-context-map.ts +1 -0
  256. package/src/tools/validate-source-tree.ts +26 -1
@@ -0,0 +1,15 @@
1
+ name: Add issue to org project
2
+
3
+ on:
4
+ issues:
5
+ types: [opened, reopened, closed]
6
+
7
+ permissions:
8
+ contents: read
9
+ issues: read
10
+
11
+ jobs:
12
+ add-to-project:
13
+ uses: kontourai/.github/.github/workflows/add-issue-to-project.yml@main
14
+ secrets:
15
+ ADD_TO_PROJECT_PAT: ${{ secrets.ADD_TO_PROJECT_PAT }}
@@ -145,6 +145,10 @@ jobs:
145
145
  continue-on-error: true
146
146
  run: bash evals/ci/run-baseline.sh --check sidecar-field-preservation-integration
147
147
 
148
+ - name: Record-check integration
149
+ continue-on-error: true
150
+ run: bash evals/ci/run-baseline.sh --check record-check-integration
151
+
148
152
  - name: Actor identity resolver integration
149
153
  continue-on-error: true
150
154
  run: bash evals/ci/run-baseline.sh --check actor-identity-resolver-integration
@@ -185,6 +189,14 @@ jobs:
185
189
  continue-on-error: true
186
190
  run: bash evals/ci/run-baseline.sh --check current-json-per-actor-integration
187
191
 
192
+ - name: Liveness console relay integration
193
+ continue-on-error: true
194
+ run: bash evals/ci/run-baseline.sh --check liveness-console-relay-integration
195
+
196
+ - name: Console tenant isolation integration
197
+ continue-on-error: true
198
+ run: bash evals/ci/run-baseline.sh --check console-tenant-isolation-integration
199
+
188
200
  - name: Finalize CI evidence
189
201
  if: always()
190
202
  run: bash evals/ci/run-baseline.sh --finalize
@@ -306,6 +318,18 @@ jobs:
306
318
  continue-on-error: true
307
319
  run: bash evals/ci/run-baseline.sh --check usage-and-cost-integration
308
320
 
321
+ - name: Telemetry usage pipeline integration
322
+ continue-on-error: true
323
+ run: bash evals/ci/run-baseline.sh --check telemetry-usage-pipeline-integration
324
+
325
+ - name: Economics record integration
326
+ continue-on-error: true
327
+ run: bash evals/ci/run-baseline.sh --check economics-record-integration
328
+
329
+ - name: Learning review proposals integration
330
+ continue-on-error: true
331
+ run: bash evals/ci/run-baseline.sh --check learning-review-proposals-integration
332
+
309
333
  - name: Utterance check integration
310
334
  continue-on-error: true
311
335
  run: bash evals/ci/run-baseline.sh --check utterance-check-integration
@@ -350,6 +374,143 @@ jobs:
350
374
  if-no-files-found: warn
351
375
  retention-days: 14
352
376
 
377
+ integration-coverage:
378
+ name: Integration Coverage
379
+ runs-on: ubuntu-latest
380
+ timeout-minutes: 15
381
+ env:
382
+ FLOW_AGENTS_CI_LANE: integration-coverage
383
+ FLOW_AGENTS_CI_RESULTS_DIR: evals/results/ci-baseline/integration-coverage
384
+
385
+ steps:
386
+ - name: Checkout
387
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
388
+
389
+ - name: Set up Node.js
390
+ uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
391
+ with:
392
+ node-version: "24"
393
+
394
+ - name: Install Node dependencies
395
+ run: npm ci
396
+
397
+ - name: Install shell tools
398
+ run: |
399
+ sudo apt-get update
400
+ sudo apt-get install -y jq ripgrep
401
+
402
+ - name: Initialize CI evidence
403
+ run: bash evals/ci/run-baseline.sh --init
404
+
405
+ - name: Builder step producers integration
406
+ continue-on-error: true
407
+ run: bash evals/ci/run-baseline.sh --check builder-step-producers-integration
408
+
409
+ - name: Builder canonical Flow run integration
410
+ continue-on-error: true
411
+ run: bash evals/ci/run-baseline.sh --check builder-canonical-flow-run-integration
412
+
413
+ - name: Codex hook resolution integration
414
+ continue-on-error: true
415
+ run: bash evals/ci/run-baseline.sh --check codex-hook-resolution-integration
416
+
417
+ - name: Critique supersession roundtrip integration
418
+ continue-on-error: true
419
+ run: bash evals/ci/run-baseline.sh --check critique-supersession-roundtrip-integration
420
+
421
+ - name: Dual emit flow step integration
422
+ continue-on-error: true
423
+ run: bash evals/ci/run-baseline.sh --check dual-emit-flow-step-integration
424
+
425
+ - name: Evidence capture hook integration
426
+ continue-on-error: true
427
+ run: bash evals/ci/run-baseline.sh --check evidence-capture-hook-integration
428
+
429
+ - name: Exemption usage review integration
430
+ continue-on-error: true
431
+ run: bash evals/ci/run-baseline.sh --check exemption-usage-review-integration
432
+
433
+ - name: FlowDefinition session history preservation integration
434
+ continue-on-error: true
435
+ run: bash evals/ci/run-baseline.sh --check flowdefinition-session-history-preservation-integration
436
+
437
+ - name: Gate review inquiry records integration
438
+ continue-on-error: true
439
+ run: bash evals/ci/run-baseline.sh --check gate-review-inquiry-records-integration
440
+
441
+ - name: Install merge integration
442
+ continue-on-error: true
443
+ run: bash evals/ci/run-baseline.sh --check install-merge-integration
444
+
445
+ - name: Kit identity trust integration
446
+ continue-on-error: true
447
+ run: bash evals/ci/run-baseline.sh --check kit-identity-trust-integration
448
+
449
+ - name: Liveness worktree root integration
450
+ continue-on-error: true
451
+ run: bash evals/ci/run-baseline.sh --check liveness-worktree-root-integration
452
+
453
+ - name: Migrate local artifacts integration
454
+ continue-on-error: true
455
+ run: bash evals/ci/run-baseline.sh --check migrate-local-artifacts-integration
456
+
457
+ - name: Model routing escalation integration
458
+ continue-on-error: true
459
+ run: bash evals/ci/run-baseline.sh --check model-routing-escalation-integration
460
+
461
+ - name: Promote gate integration
462
+ continue-on-error: true
463
+ run: bash evals/ci/run-baseline.sh --check promote-gate-integration
464
+
465
+ - name: Pull work board integration
466
+ continue-on-error: true
467
+ run: bash evals/ci/run-baseline.sh --check pull-work-board-integration
468
+
469
+ - name: Routing efficiency integration
470
+ continue-on-error: true
471
+ run: bash evals/ci/run-baseline.sh --check routing-efficiency-integration
472
+
473
+ - name: Session resume roundtrip integration
474
+ continue-on-error: true
475
+ run: bash evals/ci/run-baseline.sh --check session-resume-roundtrip-integration
476
+
477
+ - name: Skill drift check integration
478
+ continue-on-error: true
479
+ run: bash evals/ci/run-baseline.sh --check skill-drift-check-integration
480
+
481
+ - name: Trust reconcile trailer diagnostic integration
482
+ continue-on-error: true
483
+ run: bash evals/ci/run-baseline.sh --check trust-reconcile-trailer-diagnostic-integration
484
+
485
+ - name: Validate artifacts portability integration
486
+ continue-on-error: true
487
+ run: bash evals/ci/run-baseline.sh --check validate-artifacts-portability-integration
488
+
489
+ - name: Verify CLI integration
490
+ continue-on-error: true
491
+ run: bash evals/ci/run-baseline.sh --check verify-cli-integration
492
+
493
+ - name: Veritas governance adapter integration
494
+ continue-on-error: true
495
+ run: bash evals/ci/run-baseline.sh --check veritas-governance-adapter-integration
496
+
497
+ - name: Workspace settings integration
498
+ continue-on-error: true
499
+ run: bash evals/ci/run-baseline.sh --check workspace-settings-integration
500
+
501
+ - name: Finalize CI evidence
502
+ if: always()
503
+ run: bash evals/ci/run-baseline.sh --finalize
504
+
505
+ - name: Upload CI evidence artifacts
506
+ if: always()
507
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
508
+ with:
509
+ name: flow-agents-ci-integration-coverage
510
+ path: evals/results/ci-baseline/integration-coverage/
511
+ if-no-files-found: warn
512
+ retention-days: 14
513
+
353
514
  usage-feedback:
354
515
  name: Usage Feedback
355
516
  runs-on: ubuntu-latest
package/CHANGELOG.md CHANGED
@@ -1,5 +1,53 @@
1
1
  # Changelog
2
2
 
3
+ ## [3.4.1](https://github.com/kontourai/flow-agents/compare/v3.4.0...v3.4.1) (2026-07-10)
4
+
5
+
6
+ ### Fixes
7
+
8
+ * resolve packaged Flow definitions in consumer repos ([#532](https://github.com/kontourai/flow-agents/issues/532)) ([3eb4a2e](https://github.com/kontourai/flow-agents/commit/3eb4a2e42d49a9c31b16ef62484cf5b0a001c7a1))
9
+
10
+ ## [3.4.0](https://github.com/kontourai/flow-agents/compare/v3.3.0...v3.4.0) (2026-07-10)
11
+
12
+
13
+ ### Features
14
+
15
+ * **builder:** add fail-closed FlowRun adapter prefix ([#511](https://github.com/kontourai/flow-agents/issues/511)) ([1f2a1bd](https://github.com/kontourai/flow-agents/commit/1f2a1bd0a6a6f1b5610848b417ed8c9561b85131))
16
+ * **builder:** route Codex specialists by role ([5a53e9b](https://github.com/kontourai/flow-agents/commit/5a53e9bb79afbba6823c7c1de77125030d87dc41))
17
+ * drive Builder sessions with canonical Flow runs ([#531](https://github.com/kontourai/flow-agents/issues/531)) ([72301c7](https://github.com/kontourai/flow-agents/commit/72301c735d3788283ffe40963ee7fc622f69e822))
18
+ * **engine:** collapse kit trust model to structured steering (kit-neutral) ([#491](https://github.com/kontourai/flow-agents/issues/491)) ([615dc44](https://github.com/kontourai/flow-agents/commit/615dc4477f884e8ad61f37ea67fc250a3a3030ec))
19
+ * installed-skill drift detection — per-skill manifest, skill-drift-check CLI, SessionStart advisory ([#439](https://github.com/kontourai/flow-agents/issues/439)) ([#455](https://github.com/kontourai/flow-agents/issues/455)) ([a23c346](https://github.com/kontourai/flow-agents/commit/a23c34673e41bc8dcb8fd0c72425ac5ae83f4247))
20
+ * **install:** guided console-connect wizard + auto-verify + post-install summary (easy-install-flow PR2/3) ([#483](https://github.com/kontourai/flow-agents/issues/483)) ([573fd81](https://github.com/kontourai/flow-agents/commit/573fd81860de9731ebe76f352da8502137159bb7))
21
+ * **install:** runtime auto-detection + surface silent fail-open paths (easy-install-flow PR1/3) ([#482](https://github.com/kontourai/flow-agents/issues/482)) ([a9d249e](https://github.com/kontourai/flow-agents/commit/a9d249ee1b5104488ead521dbd012e5cc8240b6c))
22
+ * **learning-review:** economics-driven advisory proposals + human-ratified decision ledger ([#352](https://github.com/kontourai/flow-agents/issues/352)) ([#464](https://github.com/kontourai/flow-agents/issues/464)) ([1f8e56b](https://github.com/kontourai/flow-agents/commit/1f8e56bba2a71e77e43e42dc2574101e40399adc))
23
+ * **telemetry:** auto-discover owner console conf via trusted workspace/global tiers (fa[#410](https://github.com/kontourai/flow-agents/issues/410) slice 1) ([#460](https://github.com/kontourai/flow-agents/issues/460)) ([4f82858](https://github.com/kontourai/flow-agents/commit/4f828589dc70d6a25bfa609961968833106d58e4))
24
+ * **telemetry:** config-driven kit-economics console relay so ROI views populate ([#469](https://github.com/kontourai/flow-agents/issues/469)) ([#471](https://github.com/kontourai/flow-agents/issues/471)) ([f604f60](https://github.com/kontourai/flow-agents/commit/f604f609924635ea53ac051b822ee068504f59fb))
25
+ * **veritas-governance:** exemption-usage-review skill, trailer diagnostic, DECLARED scope-forms docs ([#408](https://github.com/kontourai/flow-agents/issues/408)) ([d304621](https://github.com/kontourai/flow-agents/commit/d304621d744f84cd422ca069183f41826c2c1b20))
26
+
27
+
28
+ ### Fixes
29
+
30
+ * **checks:** content-boundary scans untracked files — local matches CI (closes [#367](https://github.com/kontourai/flow-agents/issues/367)) ([#374](https://github.com/kontourai/flow-agents/issues/374)) ([a4e7a0e](https://github.com/kontourai/flow-agents/commit/a4e7a0ef8341ab951597ef6255e4b66f315f8f2c))
31
+ * codex capture false-pass — deterministic exit codes, ambiguous default, anti-forgery extraction ([2806c5b](https://github.com/kontourai/flow-agents/commit/2806c5bb7c39e376937162ab0680c01f4fc80666))
32
+ * codex capture false-pass — deterministic exit codes, ambiguous default, anti-forgery extraction ([#470](https://github.com/kontourai/flow-agents/issues/470)) ([06c292a](https://github.com/kontourai/flow-agents/commit/06c292a6ccfface4d778f78ec2e04ba2dd801daa))
33
+ * enforce first-step workflow entry ([17b3a12](https://github.com/kontourai/flow-agents/commit/17b3a1282f491cd2c655b0da9847c00925f18ef8))
34
+ * **goal-fit:** stop re-running model-asserted RECHECK text on terminal sessions ([#494](https://github.com/kontourai/flow-agents/issues/494)) ([#504](https://github.com/kontourai/flow-agents/issues/504)) ([9546252](https://github.com/kontourai/flow-agents/commit/954625233dddd14772b57ecba98016a911443f4d))
35
+ * harden global Codex home installs ([1bfaba6](https://github.com/kontourai/flow-agents/commit/1bfaba65a3b490d0b031401268c55b8d74f930b7))
36
+ * preserve user installer settings conflicts ([#430](https://github.com/kontourai/flow-agents/issues/430)) ([ac2d356](https://github.com/kontourai/flow-agents/commit/ac2d3567f47a744c7c5466d60aec26577f846a31))
37
+ * **sidecar:** trust-bundle writers compose losslessly; record-check; record-time evidence-ref validation ([#418](https://github.com/kontourai/flow-agents/issues/418)) ([800675f](https://github.com/kontourai/flow-agents/commit/800675f75033a164c24e2be379dc2b41c76d2237))
38
+ * skill-drift-check ignores foreign (non-kit) installed files ([#465](https://github.com/kontourai/flow-agents/issues/465)) ([#468](https://github.com/kontourai/flow-agents/issues/468)) ([71985c9](https://github.com/kontourai/flow-agents/commit/71985c9c8f860a50b25f1bec3818af9807832cae))
39
+ * **telemetry:** land owner usage attributed + priced in the hosted console ([#487](https://github.com/kontourai/flow-agents/issues/487)) ([ace8faf](https://github.com/kontourai/flow-agents/commit/ace8fafc2af274302397c1e12bb09388db5fe0e9))
40
+ * **telemetry:** real per-session token/cost + model so console ROI stops showing $0 ([#477](https://github.com/kontourai/flow-agents/issues/477)) ([2a6fcfc](https://github.com/kontourai/flow-agents/commit/2a6fcfc5d18acaddcb64eabc4341e10d2c9d7184))
41
+ * **telemetry:** suppress console relay of genuinely-empty economics records ([#478](https://github.com/kontourai/flow-agents/issues/478)) ([b09b6de](https://github.com/kontourai/flow-agents/commit/b09b6de189f6bef051c25fbb6c52dd61919d9c62))
42
+
43
+
44
+ ### Documentation
45
+
46
+ * **console:** document attribution & pricing correctness ([#487](https://github.com/kontourai/flow-agents/issues/487)) ([#490](https://github.com/kontourai/flow-agents/issues/490)) ([36b0ec2](https://github.com/kontourai/flow-agents/commit/36b0ec288b3aea6ca49efaaa2373ea9b60a55197))
47
+ * **decisions:** embeddable engine and adapter model direction ([#499](https://github.com/kontourai/flow-agents/issues/499)) ([89aec1d](https://github.com/kontourai/flow-agents/commit/89aec1df53df27cfa85685bc24612edf0882cb5c))
48
+ * **engine:** reframe around engine↔kit split + honest trust tiers ([#495](https://github.com/kontourai/flow-agents/issues/495)) ([b5b5ae3](https://github.com/kontourai/flow-agents/commit/b5b5ae392cd43ee2e0374b5b08da40add5c06c3a))
49
+ * trust-reconciliation guide + trust-ledger-retention decision ([#488](https://github.com/kontourai/flow-agents/issues/488)) ([9d5feba](https://github.com/kontourai/flow-agents/commit/9d5febae318e62bb59189279321d92f4ede3afa2))
50
+
3
51
  ## [3.3.0](https://github.com/kontourai/flow-agents/compare/v3.2.0...v3.3.0) (2026-07-05)
4
52
 
5
53
 
package/CONTEXT.md CHANGED
@@ -171,6 +171,11 @@ A stable explanation for why a Gate passed, failed, could not be verified, or ro
171
171
  One execution of a Workflow from selected scope through its gates, evidence, route-backs, and terminal outcome. A Workflow Run references its canonical Selected Scope and snapshots the selected subject identifiers for audit history. Builder Kit Delivery Runs are a build-specific kind of Workflow Run.
172
172
  _Avoid_: Delivery Run as the generic term
173
173
 
174
+ ### Workflow Entry Authority
175
+
176
+ The authority to create a new Workflow Run or resume an existing one. A new run always starts at the Workflow's first step; a later current step is valid only when recovered from persisted run state whose transitions, gate outcomes, evidence, and accepted exceptions validate against the canonical Workflow definition. Gate exceptions may authorize a gate outcome inside an existing run, but never authorize selecting a later starting step.
177
+ _Avoid_: Ad-hoc entry, skip-step override
178
+
174
179
  ### Run Plan
175
180
 
176
181
  The core workflow-level plan for a Workflow Run. Run Plans describe intended gate order, selected scope, required capabilities, required evidence, route-back policy, and learning points without assuming the work is software delivery.
@@ -398,4 +403,3 @@ The CI-anchored reconciliation of a session's trust claims against a manifest
398
403
 
399
404
  The policy that maps a delegate role name (such as `delegate-mechanical`, `delegate-implementation`, `delegate-design`, `orchestrator`, `extraction-default`) to a specific `model@provider` ref. Model Routing is data, not code: it lives in `.datum/config.json` (read by the `@kontourai/datum` registry, schema `datum.schema.json`) and never in generated files or per-agent frontmatter. The orchestrator resolves the role at delegation time (`datum resolve <role> --json`) and passes the resolved model explicitly when spawning each delegate. See [context/contracts/execution-contract.md](context/contracts/execution-contract.md) § Delegation: Model Routing and [docs/decisions/model-routing.md](docs/decisions/model-routing.md).
400
405
  _Avoid_: Generated per-agent model frontmatter, environment-variable-only model selection
401
-
package/README.md CHANGED
@@ -17,7 +17,7 @@
17
17
 
18
18
  Agents are powerful and forgetful. They plan well, then drift. They skip verification when context gets crowded. They call partial work done, and after a compaction nobody — including the agent — can say where the work actually stands.
19
19
 
20
- Flow Agents addresses this with a process-discipline layer that sits between the user and the agent: four canonical policy classes (workflow steering, quality gate, stop-goal-fit, config protection), durable sidecar state that survives compaction and handoff, evidence gates before release decisions, and telemetry that feeds corrections back into the system. [Kontour Flow](https://kontourai.github.io/flow/) owns the gate semantics underneath; Flow Agents compiles those policies to whatever hook surface a host exposes — coding-agent harnesses today, agent frameworks next.
20
+ Flow Agents has two layers. The **engine** is product-neutral: FlowDefinition interpretation, gates, runtime and harness adapters, SDK/evidence/trust primitives, and kit validation. **Kits** are the swappable solutions on top: Builder, Knowledge, Release Evidence, Veritas Governance, and any third-party kit declared with `kit.json` and registered through a catalog. [Kontour Flow](https://kontourai.github.io/flow/) owns the gate semantics underneath; Flow Agents compiles those policies to whatever hook surface a host exposes — coding-agent harnesses today, agent frameworks next.
21
21
 
22
22
  **You ask for outcomes. The system supplies the path, the state, the checks, and the proof.**
23
23
 
@@ -28,7 +28,8 @@ Flow Agents addresses this with a process-discipline layer that sits between the
28
28
  - **Resumable workflow state** — schema-validated sidecars under `.kontourai/flow-agents/` record acceptance criteria, evidence, critique, handoff, and learning, so any session can resume from recorded state instead of chat memory.
29
29
  - **Four canonical policies** — workflow steering (phase reminders at each turn), quality gate (per-file checks after edits), stop-goal-fit (evidence check before the agent stops), and config protection (veto writes to linter/formatter configs). Each policy class has a canonical script under `scripts/hooks/` and compiles to the host's native hook format.
30
30
  - **Evidence over confidence** — important work ends with tests, browser checks, CI results, review findings, governance reports, or an explicit `NOT_VERIFIED` gap. Optional [Veritas](docs/veritas-integration.md) integration attaches repo-governance evidence without making it mandatory.
31
- - **Verifiable, un-gameable "done"** — the agent can't mark work complete that isn't: the gate re-derives the verdict from independent evidence, an external CI anchor re-runs the verification fresh and fails the merge on any divergence, and CI mints a Sigstore-signed record of what shipped. See [Verifiable Trust — why "done" actually means done](docs/verifiable-trust.md).
31
+ - **Tamper-evident "done"** — the local runtime gate is advisory and best-effort; the controlled CI re-run is the authoritative anchor that reconciles manifest commands and git diff against fresh results before evidence is treated as CI-verified. See [Verifiable Trust — why "done" actually means done](docs/verifiable-trust.md).
32
+ - **Engine plus opt-in kits** — `kits/catalog.json` lists discoverable kits, each `kit.json` declares its flows and assets, and bring-your-own-kit follows the same validation and activation path. See [Engine and Kits](docs/architecture-engine-and-kits.md).
32
33
  - **Evals that keep the bundle honest** — 60 integration scenarios (1,829 assertions) and 7 static suites (110 assertions) validate the skills, contracts, fixtures, and hook influence as the bundle evolves.
33
34
 
34
35
  ## Flow Agents as a process-discipline layer
@@ -83,16 +84,18 @@ npx @kontourai/flow-agents init --dest /path/to/workspace --telemetry-sink local
83
84
 
84
85
  # runtime-specific wiring
85
86
  npx @kontourai/flow-agents init --runtime claude-code --dest /path/to/workspace --yes
86
- npx @kontourai/flow-agents init --runtime codex --dest /path/to/workspace --activate-kits --yes
87
+ npx @kontourai/flow-agents init --runtime codex --dest /path/to/workspace --activate-kit builder --yes
87
88
  npx @kontourai/flow-agents init --runtime opencode --dest /path/to/workspace --yes
88
89
  npx @kontourai/flow-agents init --runtime pi --dest /path/to/workspace --yes
89
90
  ```
90
91
 
91
92
  For Codex global installs, omit `--dest` and use `--global`: Flow Agents installs into `CODEX_HOME` when it is set, otherwise `~/.codex`. Pass `--dest` only when you intentionally want an isolated or test-specific Codex home.
92
93
 
94
+ Runtime auto-detection is best-effort: it first checks environment markers set by the invoking coding agent (e.g. `CLAUDECODE`, `CODEX_SESSION_ID`, `OPENCODE_SESSION_ID`), then falls back to checking whether exactly one of `~/.claude`, `~/.codex` (or `$CODEX_HOME`), or opencode's global config dir already exists. If neither signal is unambiguous, it defaults to `base`. Pass `--runtime` explicitly to override the detected default at any time.
95
+
93
96
  Working from a checkout (for contributors): `npm install && npm run build`, then `node build/src/cli.js init --dest /path/to/workspace`.
94
97
 
95
- The installer copies the bundled agents, skills, context, scripts, evals, Flow Kit assets, and the Flow Agents-owned `console.telemetry.json` descriptor into the target workspace. Telemetry writes to local files by default; optional sinks mirror it to a local, hosted, or self-hosted Kontour Console (`--telemetry-sink local-kontour-console | kontour-hosted-console | user-hosted-console --console-url …`).
98
+ The installer copies the bundled agents, skills, context, scripts, evals, the kit catalog, and the Flow Agents-owned `console.telemetry.json` descriptor into the target workspace. Kits are opt-in at activation time: pass `--activate-kit <kit-id>` for a specific kit, or `--activate-kits` when you intentionally want every catalog kit. Telemetry writes to local files by default; optional sinks mirror it to a local, hosted, or self-hosted Kontour Console (`--telemetry-sink local-kontour-console | kontour-hosted-console | user-hosted-console --console-url …`).
96
99
 
97
100
  `bash install.sh` is the low-level option for CI pipelines or scripts that already have a generated bundle checkout (e.g. from a pinned `git clone` of this repo). Prefer `npx @kontourai/flow-agents init` for normal workspace setup — it fetches the latest published bundle and auto-detects the runtime:
98
101
 
@@ -106,7 +109,7 @@ After installing, ask the agent for the workflow you want — in plain language.
106
109
 
107
110
  ### Builder Kit quick start
108
111
 
109
- The Builder Kit installs automatically and gives your agent two gated flows: `builder.shape` turns a raw idea into slices and executable work items; `builder.build` takes a selected work item through design probe, planning, execution, verification, PR readiness, merge readiness, and learning.
112
+ After activating the Builder Kit, your agent gets two gated flows: `builder.shape` turns a raw idea into slices and executable work items; `builder.build` takes a selected work item through design probe, planning, execution, verification, PR readiness, merge readiness, and learning.
110
113
 
111
114
  Shape an idea:
112
115
 
@@ -135,11 +138,15 @@ Use fix-bug. Reproduce the problem, diagnose root cause, implement the fix, and
135
138
 
136
139
  The [Workflow Usage Guide](docs/workflow-usage-guide.md) has example prompts and expected behavior for every stage — `pull-work`, `plan-work`, `execute-plan`, `review-work`, `verify-work`, `fix-bug`, `release-readiness`, and more. The [Agent System Guidebook](docs/agent-system-guidebook.md) is the plain-language map of how the pieces fit.
137
140
 
138
- ## Flow Kits
141
+ ## Engine and Flow Kits
142
+
143
+ Flow Agents is not the Builder Kit. The engine is kit-neutral: every kit, built-in or third-party, declares its flows and assets in `kit.json` and is discovered through a catalog. Runtime steering comes from structured `workflow_triggers` rendered through the same engine path; `first_party` or "official" status is marketplace/catalog metadata only and grants no runtime privilege.
144
+
145
+ Read [Engine and Kits](docs/architecture-engine-and-kits.md) for the canonical split, including the built-in catalog, the manifest model, and the bring-your-own-kit extension point.
139
146
 
140
147
  A Flow Kit bundles a workflow AND its opinionated output shape into a single validated unit: a `kit.json` manifest (schema version 1.0), one or more Flow Definitions, and optional skills, docs, adapters, evals, and assets. Authoring a kit means deciding not just _what_ an agent does but _how the result is rendered_ — the same pipeline produces different representations depending on which store adapter is active. Kits are the extension model for Flow Agents: validated and installed through the `flow-agents kit` CLI, and activatable into any workspace that runs Flow Agents.
141
148
 
142
- **Builder Kit** — ships with `builder.shape` (shape a problem into slices and fileable work items) and `builder.build` (pull ready work through design probing, planning, execution, verification, PR readiness, merge readiness, and learning). Installed automatically by `npx @kontourai/flow-agents init`.
149
+ **Builder Kit** — ships with `builder.shape` (shape a problem into slices and fileable work items), `builder.build` (pull ready work through design probing, planning, execution, verification, PR readiness, merge readiness, and learning), and `builder.publish-learn` (publish, provider/CI merge readiness, and learning feedback gates).
143
150
 
144
151
  **Knowledge Kit** — a Flow Kit for durable, gated knowledge storage. It ships a store contract with four record types (`raw`, `compiled`, `concept`, `snapshot`), five pipeline flows (`ingest`, `compile`, `synthesize`, `consolidate`, `retire`), and a mutation policy of propose→evidence-gate→apply/reject with supersede-not-delete. All mutations require provenance; nothing is silently overwritten or deleted. Ships with 198 tests.
145
152
 
@@ -161,7 +168,11 @@ npx @kontourai/flow-agents kit install path/to/my-kit --dest /path/to/workspace
161
168
  - [Flow Kit Repository Contract](docs/flow-kit-repository-contract.md) — the full validation rules, registry schema, and activation diagnostics.
162
169
  - [Knowledge Kit docs](kits/knowledge/docs/README.md) — store contract, record types, mutation ops, similarity detectors, and the Obsidian adapter.
163
170
 
164
- **Direction** (not shipped): domain kits that compose this substrate — a Sales Kit (territory/customer/initiative schema with side-effect adapters for CRM logging), a Research Kit (transcript capture→compile→recall). Distribution follows sequencing: authoring tooling and covetable reference kits first, then a registry, then a marketplace. No marketplace claims are shipped.
171
+ **Release Evidence Kit** — a minimal flows-only kit that proves agentless gate evaluation over trusted `release.evidence` claims in CI.
172
+
173
+ **Veritas Governance Kit** — an agentless kit that gates a real `veritas readiness` verdict as a trust.bundle software-readiness-verdict claim. It wraps @kontourai/veritas through CLI + a kit-local adapter and does not reimplement standards evaluation.
174
+
175
+ **Direction**: domain kits that compose this substrate — a Sales Kit (territory/customer/initiative schema with side-effect adapters for CRM logging), a Research Kit (transcript capture→compile→recall), and community-contributed kits discovered through a marketplace. Marketplace labels such as official or first-party describe provenance; they do not grant runtime privilege.
165
176
 
166
177
  ## Framework adapters
167
178
 
@@ -0,0 +1,80 @@
1
+ import { type FlowEvidenceEntry, type FlowRunState, type GateOutcome, type JsonObject } from "@kontourai/flow";
2
+ export declare const BUILDER_BUILD_FLOW_ID = "builder.build";
3
+ export declare const BUILDER_BUILD_FLOW_RELATIVE_PATH = "kits/builder/flows/build.flow.json";
4
+ export interface BuilderBuildTrustBundleEvidenceInput {
5
+ gate: string;
6
+ /**
7
+ * Trusted local evidence path interpreted by Flow relative to `cwd`.
8
+ * Callers must not pass raw user-controlled paths to this local runtime API.
9
+ */
10
+ file: string;
11
+ status?: "passed" | "failed";
12
+ producer?: string;
13
+ authorityTrace?: string;
14
+ routeReason?: string;
15
+ expectationIds?: string[];
16
+ supersede?: string | string[];
17
+ classifier?: JsonObject;
18
+ diagnostics?: JsonObject;
19
+ analytics?: JsonObject;
20
+ }
21
+ export interface StartBuilderBuildRunInput {
22
+ subject: string;
23
+ params?: JsonObject;
24
+ /**
25
+ * Trusted local runtime root. Flow owns persistence and interprets attached
26
+ * evidence files relative to this directory.
27
+ */
28
+ cwd?: string;
29
+ runId?: string;
30
+ }
31
+ export interface EvaluateBuilderBuildRunInput {
32
+ runId: string;
33
+ /**
34
+ * Trusted local runtime root. Flow owns persistence and interprets attached
35
+ * evidence files relative to this directory.
36
+ */
37
+ cwd?: string;
38
+ evidence?: BuilderBuildTrustBundleEvidenceInput;
39
+ }
40
+ export interface LoadBuilderBuildRunInput {
41
+ runId: string;
42
+ cwd?: string;
43
+ }
44
+ export interface BuilderBuildRunResult {
45
+ definitionId: typeof BUILDER_BUILD_FLOW_ID;
46
+ definitionVersion: string;
47
+ runId: string;
48
+ dir: string;
49
+ state: FlowRunState;
50
+ attachedEvidence: FlowEvidenceEntry[];
51
+ outcomes: GateOutcome[];
52
+ manifest: JsonObject;
53
+ freshnessTransitions: JsonObject[];
54
+ }
55
+ export type BuilderBuildRunIdentityMismatch = "definition-id" | "definition-version" | "definition-content";
56
+ export declare class BuilderBuildRunInputError extends Error {
57
+ readonly code: "BUILDER_BUILD_RUN_INVALID_INPUT";
58
+ readonly field: string;
59
+ constructor(field: string, reason: string);
60
+ }
61
+ export declare class BuilderBuildRunIdentityError extends Error {
62
+ readonly code: "BUILDER_BUILD_RUN_IDENTITY_MISMATCH";
63
+ readonly expectedDefinitionId: string;
64
+ readonly expectedDefinitionVersion: string;
65
+ readonly actualDefinitionId: string;
66
+ readonly actualDefinitionVersion: string;
67
+ readonly mismatch: BuilderBuildRunIdentityMismatch;
68
+ readonly runId: string;
69
+ constructor(runId: string, expectedDefinition: {
70
+ id: string;
71
+ version: string;
72
+ }, actualDefinition: {
73
+ id: string;
74
+ version: string;
75
+ }, mismatch: BuilderBuildRunIdentityMismatch);
76
+ }
77
+ export declare function resolveBuilderBuildFlowDefinitionPath(startDir?: string): string;
78
+ export declare function startBuilderBuildRun(input: StartBuilderBuildRunInput): Promise<BuilderBuildRunResult>;
79
+ export declare function evaluateBuilderBuildRun(input: EvaluateBuilderBuildRunInput): Promise<BuilderBuildRunResult>;
80
+ export declare function loadBuilderBuildRun(input: LoadBuilderBuildRunInput): Promise<BuilderBuildRunResult>;