@lucern/sdk 1.0.11 → 1.0.13

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 (331) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +24 -27
  3. package/dist/.generated +2 -0
  4. package/dist/accessControl.d.ts +19 -26
  5. package/dist/accessControl.js +195 -1423
  6. package/dist/adminClient.d.ts +52 -59
  7. package/dist/adminClient.js +364 -1142
  8. package/dist/answersClient.d.ts +5 -14
  9. package/dist/answersClient.js +19 -737
  10. package/dist/audience/index.d.ts +18 -18
  11. package/dist/audience/index.js +87 -90
  12. package/dist/audiencesClient.d.ts +19 -27
  13. package/dist/audiencesClient.js +107 -868
  14. package/dist/auditClient.d.ts +8 -15
  15. package/dist/auditClient.js +18 -791
  16. package/dist/authContext.d.ts +11 -16
  17. package/dist/authContext.js +122 -154
  18. package/dist/authDeviceClient.d.ts +8 -17
  19. package/dist/authDeviceClient.js +113 -102
  20. package/dist/beliefs/index.d.ts +16 -67
  21. package/dist/beliefs/index.js +20 -10181
  22. package/dist/beliefs/lifecycle.d.ts +10 -11
  23. package/dist/beliefs/lifecycle.js +78 -80
  24. package/dist/beliefsClient.d.ts +30 -35
  25. package/dist/beliefsClient.js +238 -994
  26. package/dist/boundaryClientSurface.d.ts +11 -16
  27. package/dist/boundaryClientSurface.js +49 -68
  28. package/dist/client.d.ts +82 -113
  29. package/dist/client.js +232 -10155
  30. package/dist/clientAssemblyTypes.d.ts +3 -3
  31. package/dist/clientAssemblyTypes.js +1 -2
  32. package/dist/clientConfig.d.ts +45 -59
  33. package/dist/clientConfig.js +1 -2
  34. package/dist/clientEvidenceCompat.d.ts +24 -14
  35. package/dist/clientEvidenceCompat.js +56 -64
  36. package/dist/clientGraphNamespaces.d.ts +3 -5
  37. package/dist/clientGraphNamespaces.js +170 -245
  38. package/dist/clientHelpers.d.ts +20 -25
  39. package/dist/clientHelpers.js +104 -127
  40. package/dist/clientKnowledgeNamespaces.d.ts +24 -54
  41. package/dist/clientKnowledgeNamespaces.js +506 -506
  42. package/dist/clientLocalHelpers.d.ts +11 -56
  43. package/dist/clientLocalHelpers.js +503 -732
  44. package/dist/clientPlatformNamespaces.d.ts +5 -53
  45. package/dist/clientPlatformNamespaces.js +229 -323
  46. package/dist/clientRuntime.d.ts +5 -53
  47. package/dist/clientRuntime.js +26 -30
  48. package/dist/clientWorkflowNamespaces.d.ts +6 -15
  49. package/dist/clientWorkflowNamespaces.js +529 -596
  50. package/dist/contextClient.d.ts +9 -17
  51. package/dist/contextClient.js +92 -805
  52. package/dist/contextFacade.d.ts +11 -2
  53. package/dist/contextFacade.js +10 -81
  54. package/dist/contextPackCompiler.d.ts +10 -11
  55. package/dist/contextPackCompiler.js +494 -1040
  56. package/dist/contextPackPolicy.d.ts +14 -15
  57. package/dist/contextPackPolicy.js +227 -305
  58. package/dist/contextPackSchema.d.ts +3 -3
  59. package/dist/contextPackSchema.js +169 -176
  60. package/dist/contextTypes.d.ts +14 -15
  61. package/dist/contextTypes.js +1 -2
  62. package/dist/contracts/api-enums.contract.d.ts +29 -30
  63. package/dist/contracts/api-enums.contract.js +162 -88
  64. package/dist/contracts/auth-session.contract.d.ts +13 -14
  65. package/dist/contracts/auth-session.contract.js +55 -52
  66. package/dist/contracts/context-pack.contract.d.ts +54 -55
  67. package/dist/contracts/context-pack.contract.js +160 -88
  68. package/dist/contracts/contextPack.d.ts +2 -1
  69. package/dist/contracts/contextPack.js +1 -97
  70. package/dist/contracts/index.d.ts +11 -12
  71. package/dist/contracts/index.js +10 -854
  72. package/dist/contracts/lens-filter.contract.d.ts +9 -10
  73. package/dist/contracts/lens-filter.contract.js +82 -58
  74. package/dist/contracts/lens-workflow.contract.d.ts +21 -23
  75. package/dist/contracts/lens-workflow.contract.js +48 -117
  76. package/dist/contracts/lensFilter.d.ts +2 -1
  77. package/dist/contracts/lensFilter.js +1 -71
  78. package/dist/contracts/lensWorkflow.d.ts +2 -2
  79. package/dist/contracts/lensWorkflow.js +1 -123
  80. package/dist/contracts/mcpTools.d.ts +16 -18
  81. package/dist/contracts/mcpTools.js +89 -123
  82. package/dist/contracts/prompt.contract.d.ts +4 -5
  83. package/dist/contracts/prompt.contract.js +23 -10
  84. package/dist/contracts/prompt.d.ts +2 -1
  85. package/dist/contracts/prompt.js +1 -11
  86. package/dist/contracts/sdk-tools.contract.d.ts +2 -1
  87. package/dist/contracts/sdk-tools.contract.js +1 -2
  88. package/dist/contracts/sdkTools.d.ts +2 -1
  89. package/dist/contracts/sdkTools.js +1 -26
  90. package/dist/contracts/tool-contracts.d.ts +2 -1
  91. package/dist/contracts/tool-contracts.js +1 -2
  92. package/dist/contracts/workflow-runtime.contract.d.ts +45 -46
  93. package/dist/contracts/workflow-runtime.contract.js +241 -228
  94. package/dist/contracts/workflowRuntime.d.ts +2 -1
  95. package/dist/contracts/workflowRuntime.js +1 -244
  96. package/dist/contradictions/index.d.ts +8 -60
  97. package/dist/contradictions/index.js +11 -10175
  98. package/dist/control-plane.d.ts +17 -24
  99. package/dist/control-plane.js +124 -840
  100. package/dist/controlObjectOwnership.d.ts +19 -20
  101. package/dist/controlObjectOwnership.js +207 -201
  102. package/dist/coreClient.d.ts +23 -28
  103. package/dist/coreClient.js +567 -692
  104. package/dist/customTools.d.ts +17 -21
  105. package/dist/customTools.js +221 -221
  106. package/dist/decisions/index.d.ts +7 -58
  107. package/dist/decisions/index.js +14 -10177
  108. package/dist/decisionsClient.d.ts +25 -32
  109. package/dist/decisionsClient.js +113 -913
  110. package/dist/domainContext.d.ts +2 -1
  111. package/dist/domainContext.js +1 -2
  112. package/dist/edges/index.d.ts +21 -73
  113. package/dist/edges/index.js +12 -10176
  114. package/dist/embeddingsClient.d.ts +22 -30
  115. package/dist/embeddingsClient.js +73 -922
  116. package/dist/eventingClient.d.ts +23 -31
  117. package/dist/eventingClient.js +89 -918
  118. package/dist/events.d.ts +48 -49
  119. package/dist/events.js +257 -241
  120. package/dist/eventsCore.d.ts +20 -29
  121. package/dist/eventsCore.js +86 -830
  122. package/dist/evidence/index.d.ts +42 -61
  123. package/dist/evidence/index.js +13 -10176
  124. package/dist/evidenceClient.d.ts +13 -22
  125. package/dist/evidenceClient.js +34 -751
  126. package/dist/facade/context.d.ts +7 -8
  127. package/dist/facade/context.js +73 -72
  128. package/dist/functionSurface.d.ts +2 -156
  129. package/dist/functionSurface.js +1 -1460
  130. package/dist/functionSurfaceClient.d.ts +2 -9
  131. package/dist/functionSurfaceClient.js +1 -1460
  132. package/dist/gatewayFacades.d.ts +93 -296
  133. package/dist/gatewayFacades.factories.d.ts +209 -14
  134. package/dist/gatewayFacades.factories.js +545 -2228
  135. package/dist/gatewayFacades.js +284 -2627
  136. package/dist/generated/functionSurface.d.ts +149 -0
  137. package/dist/generated/functionSurface.js +749 -0
  138. package/dist/graphAnalysisClient.d.ts +41 -49
  139. package/dist/graphAnalysisClient.js +185 -974
  140. package/dist/graphClient.d.ts +53 -60
  141. package/dist/graphClient.js +219 -1090
  142. package/dist/graphIntel.d.ts +2 -4
  143. package/dist/graphIntel.js +1 -2
  144. package/dist/graphIntelligence.d.ts +4 -2
  145. package/dist/graphIntelligence.js +2 -46
  146. package/dist/graphRecommendationsClient.d.ts +15 -23
  147. package/dist/graphRecommendationsClient.js +70 -849
  148. package/dist/graphStateClassifierClient.d.ts +17 -25
  149. package/dist/graphStateClassifierClient.js +67 -908
  150. package/dist/harnessClient.d.ts +40 -47
  151. package/dist/harnessClient.js +198 -993
  152. package/dist/identityClient.d.ts +25 -33
  153. package/dist/identityClient.js +245 -1186
  154. package/dist/index.d.ts +73 -69
  155. package/dist/index.js +72 -13313
  156. package/dist/infisicalRuntime.d.ts +12 -14
  157. package/dist/infisicalRuntime.js +290 -297
  158. package/dist/jobsClient.d.ts +24 -32
  159. package/dist/jobsClient.js +101 -916
  160. package/dist/learningClient.d.ts +8 -16
  161. package/dist/learningClient.js +45 -809
  162. package/dist/lenses/index.d.ts +13 -65
  163. package/dist/lenses/index.js +11 -10175
  164. package/dist/mcpClient.d.ts +14 -23
  165. package/dist/mcpClient.js +115 -856
  166. package/dist/modelRuntimeClient.d.ts +18 -26
  167. package/dist/modelRuntimeClient.js +74 -894
  168. package/dist/nodes/index.d.ts +7 -58
  169. package/dist/nodes/index.js +14 -10177
  170. package/dist/ontologies/index.d.ts +21 -73
  171. package/dist/ontologies/index.js +14 -10178
  172. package/dist/ontologyClient.d.ts +23 -31
  173. package/dist/ontologyClient.js +138 -924
  174. package/dist/ontologyLinksClient.d.ts +16 -24
  175. package/dist/ontologyLinksClient.js +76 -886
  176. package/dist/opinion.d.ts +5 -6
  177. package/dist/opinion.js +21 -25
  178. package/dist/orgGraphSearchClient.d.ts +19 -27
  179. package/dist/orgGraphSearchClient.js +89 -857
  180. package/dist/packRuntime.d.ts +2 -2
  181. package/dist/packRuntime.js +1 -2
  182. package/dist/packsClient.d.ts +30 -37
  183. package/dist/packsClient.js +131 -906
  184. package/dist/policyClient.d.ts +21 -29
  185. package/dist/policyClient.js +267 -1026
  186. package/dist/proof-attestation.json +1 -1
  187. package/dist/questions/index.d.ts +9 -60
  188. package/dist/questions/index.js +15 -10178
  189. package/dist/realtime/index.d.ts +20 -16
  190. package/dist/realtime/index.js +30 -19
  191. package/dist/realtime/refs.d.ts +4 -6
  192. package/dist/realtime/refs.js +12 -7
  193. package/dist/realtime-refs.d.ts +1 -0
  194. package/dist/realtime-refs.js +1 -0
  195. package/dist/realtime.d.ts +1 -0
  196. package/dist/realtime.js +1 -0
  197. package/dist/reportsClient.d.ts +10 -19
  198. package/dist/reportsClient.js +48 -836
  199. package/dist/schemaClient.d.ts +16 -23
  200. package/dist/schemaClient.js +62 -832
  201. package/dist/sdkSurface.d.ts +18 -25
  202. package/dist/sdkSurface.js +135 -106
  203. package/dist/secrets.d.ts +2 -1
  204. package/dist/secrets.js +1 -2
  205. package/dist/sourcesClient.d.ts +11 -18
  206. package/dist/sourcesClient.js +18 -741
  207. package/dist/telemetryClient.d.ts +22 -30
  208. package/dist/telemetryClient.js +107 -931
  209. package/dist/toolRegistryClient.d.ts +27 -35
  210. package/dist/toolRegistryClient.js +116 -954
  211. package/dist/topics/index.d.ts +13 -64
  212. package/dist/topics/index.js +15 -10178
  213. package/dist/topicsClient.d.ts +19 -27
  214. package/dist/topicsClient.js +106 -894
  215. package/dist/types.d.ts +84 -87
  216. package/dist/types.js +1 -2
  217. package/dist/version.d.ts +2 -3
  218. package/dist/version.js +2 -5
  219. package/dist/workflowClient.d.ts +60 -65
  220. package/dist/workflowClient.js +343 -1219
  221. package/dist/worktrees/index.d.ts +16 -68
  222. package/dist/worktrees/index.js +14 -10178
  223. package/package.json +6 -6
  224. package/dist/accessControl.js.map +0 -1
  225. package/dist/adminClient.js.map +0 -1
  226. package/dist/answersClient.js.map +0 -1
  227. package/dist/audience/index.js.map +0 -1
  228. package/dist/audiencesClient.js.map +0 -1
  229. package/dist/auditClient.js.map +0 -1
  230. package/dist/authContext.js.map +0 -1
  231. package/dist/authDeviceClient.js.map +0 -1
  232. package/dist/beliefs/index.js.map +0 -1
  233. package/dist/beliefs/lifecycle.js.map +0 -1
  234. package/dist/beliefsClient.js.map +0 -1
  235. package/dist/boundaryClientSurface.js.map +0 -1
  236. package/dist/client.js.map +0 -1
  237. package/dist/clientAssemblyTypes.js.map +0 -1
  238. package/dist/clientConfig.js.map +0 -1
  239. package/dist/clientEvidenceCompat.js.map +0 -1
  240. package/dist/clientGraphNamespaces.js.map +0 -1
  241. package/dist/clientHelpers.js.map +0 -1
  242. package/dist/clientKnowledgeNamespaces.js.map +0 -1
  243. package/dist/clientLocalHelpers.js.map +0 -1
  244. package/dist/clientPlatformNamespaces.js.map +0 -1
  245. package/dist/clientRuntime.js.map +0 -1
  246. package/dist/clientWorkflowNamespaces.js.map +0 -1
  247. package/dist/contextClient.js.map +0 -1
  248. package/dist/contextFacade.js.map +0 -1
  249. package/dist/contextPackCompiler.js.map +0 -1
  250. package/dist/contextPackPolicy.js.map +0 -1
  251. package/dist/contextPackSchema.js.map +0 -1
  252. package/dist/contextTypes.js.map +0 -1
  253. package/dist/contracts/api-enums.contract.js.map +0 -1
  254. package/dist/contracts/auth-session.contract.js.map +0 -1
  255. package/dist/contracts/context-pack.contract.js.map +0 -1
  256. package/dist/contracts/contextPack.js.map +0 -1
  257. package/dist/contracts/index.js.map +0 -1
  258. package/dist/contracts/lens-filter.contract.js.map +0 -1
  259. package/dist/contracts/lens-workflow.contract.js.map +0 -1
  260. package/dist/contracts/lensFilter.js.map +0 -1
  261. package/dist/contracts/lensWorkflow.js.map +0 -1
  262. package/dist/contracts/mcpTools.js.map +0 -1
  263. package/dist/contracts/prompt.contract.js.map +0 -1
  264. package/dist/contracts/prompt.js.map +0 -1
  265. package/dist/contracts/sdk-tools.contract.js.map +0 -1
  266. package/dist/contracts/sdkTools.js.map +0 -1
  267. package/dist/contracts/tool-contracts.js.map +0 -1
  268. package/dist/contracts/workflow-runtime.contract.js.map +0 -1
  269. package/dist/contracts/workflowRuntime.js.map +0 -1
  270. package/dist/contradictions/index.js.map +0 -1
  271. package/dist/control-plane.js.map +0 -1
  272. package/dist/controlObjectOwnership.js.map +0 -1
  273. package/dist/coreClient.js.map +0 -1
  274. package/dist/customTools.js.map +0 -1
  275. package/dist/decisions/index.js.map +0 -1
  276. package/dist/decisionsClient.js.map +0 -1
  277. package/dist/domainContext.js.map +0 -1
  278. package/dist/edges/index.js.map +0 -1
  279. package/dist/embeddingsClient.js.map +0 -1
  280. package/dist/eventingClient.js.map +0 -1
  281. package/dist/events.js.map +0 -1
  282. package/dist/eventsCore.js.map +0 -1
  283. package/dist/evidence/index.js.map +0 -1
  284. package/dist/evidenceClient.js.map +0 -1
  285. package/dist/facade/context.js.map +0 -1
  286. package/dist/functionSurface.js.map +0 -1
  287. package/dist/functionSurfaceClient.js.map +0 -1
  288. package/dist/gatewayFacades.factories.js.map +0 -1
  289. package/dist/gatewayFacades.js.map +0 -1
  290. package/dist/graphAnalysisClient.js.map +0 -1
  291. package/dist/graphClient.js.map +0 -1
  292. package/dist/graphIntel.js.map +0 -1
  293. package/dist/graphIntelligence.js.map +0 -1
  294. package/dist/graphRecommendationsClient.js.map +0 -1
  295. package/dist/graphStateClassifierClient.js.map +0 -1
  296. package/dist/harnessClient.js.map +0 -1
  297. package/dist/identityClient.js.map +0 -1
  298. package/dist/index.js.map +0 -1
  299. package/dist/infisicalRuntime.js.map +0 -1
  300. package/dist/jobsClient.js.map +0 -1
  301. package/dist/learningClient.js.map +0 -1
  302. package/dist/lenses/index.js.map +0 -1
  303. package/dist/mcpClient.js.map +0 -1
  304. package/dist/modelRuntimeClient.js.map +0 -1
  305. package/dist/nodes/index.js.map +0 -1
  306. package/dist/ontologies/index.js.map +0 -1
  307. package/dist/ontologyClient.js.map +0 -1
  308. package/dist/ontologyLinksClient.js.map +0 -1
  309. package/dist/opinion.js.map +0 -1
  310. package/dist/orgGraphSearchClient.js.map +0 -1
  311. package/dist/packRuntime.js.map +0 -1
  312. package/dist/packsClient.js.map +0 -1
  313. package/dist/policyClient.js.map +0 -1
  314. package/dist/questions/index.js.map +0 -1
  315. package/dist/realtime/index.js.map +0 -1
  316. package/dist/realtime/refs.js.map +0 -1
  317. package/dist/reportsClient.js.map +0 -1
  318. package/dist/schemaClient.js.map +0 -1
  319. package/dist/sdk-tools.contract-B4c1Zr1o.d.ts +0 -22
  320. package/dist/sdkSurface.js.map +0 -1
  321. package/dist/secrets.js.map +0 -1
  322. package/dist/sourcesClient.js.map +0 -1
  323. package/dist/telemetryClient.js.map +0 -1
  324. package/dist/tool-contracts-BUiL9P6z.d.ts +0 -22
  325. package/dist/toolRegistryClient.js.map +0 -1
  326. package/dist/topics/index.js.map +0 -1
  327. package/dist/topicsClient.js.map +0 -1
  328. package/dist/types.js.map +0 -1
  329. package/dist/version.js.map +0 -1
  330. package/dist/workflowClient.js.map +0 -1
  331. package/dist/worktrees/index.js.map +0 -1
@@ -15,58 +15,58 @@
15
15
  * - Reclassifying a mutation tier is BREAKING
16
16
  * - Changing canonical workflow IDs is BREAKING
17
17
  */
18
- declare const WORKFLOW_RUNTIME_SCHEMA_VERSION: "1.0.0";
19
- declare const WORKFLOW_MUTATION_TIERS: readonly ["read_only", "low_risk_write", "high_risk_write"];
20
- type WorkflowMutationTier = (typeof WORKFLOW_MUTATION_TIERS)[number];
21
- declare const WORKFLOW_APPROVAL_MODES: readonly ["none", "audit_only", "human_required", "auto_approve"];
22
- type WorkflowApprovalMode = (typeof WORKFLOW_APPROVAL_MODES)[number];
23
- declare const DEFAULT_TIER_APPROVAL_MODE: Readonly<Record<WorkflowMutationTier, WorkflowApprovalMode>>;
24
- declare const WORKFLOW_ACTION_KINDS: readonly ["context_pack", "integrity_check", "lucern_tool", "report_compile", "brief_publish", "notification", "custom"];
25
- type WorkflowActionKind = (typeof WORKFLOW_ACTION_KINDS)[number];
26
- declare const WORKFLOW_HOOK_EVENTS: readonly ["schedule.tick", "worktree.activated", "worktree.completed", "question.created", "question.answered", "evidence.appended", "inbox.item_created"];
27
- type WorkflowHookEvent = (typeof WORKFLOW_HOOK_EVENTS)[number];
28
- declare const WORKFLOW_OUTPUT_KINDS: readonly ["engineering_brief", "research_memo", "strategy_artifact", "inbox_summary", "pipeline_brief", "structured_payload"];
29
- type WorkflowOutputKind = (typeof WORKFLOW_OUTPUT_KINDS)[number];
30
- declare const WORKFLOW_RUN_STATUSES: readonly ["queued", "running", "awaiting_approval", "completed", "failed", "cancelled"];
31
- type WorkflowRunStatus = (typeof WORKFLOW_RUN_STATUSES)[number];
32
- declare const WORKFLOW_TRIGGER_KINDS: readonly ["manual", "schedule", "hook"];
33
- type WorkflowTriggerKind = (typeof WORKFLOW_TRIGGER_KINDS)[number];
34
- declare const WORKFLOW_PROOF_ARTIFACT_KINDS: readonly ["report", "brief", "artifact", "dashboard", "test_evidence"];
35
- type WorkflowProofArtifactKind = (typeof WORKFLOW_PROOF_ARTIFACT_KINDS)[number];
36
- declare const WORKFLOW_STAFFING_HINTS: readonly ["solo", "backend+tests", "fullstack", "mcp+tests"];
37
- type WorkflowStaffingHint = (typeof WORKFLOW_STAFFING_HINTS)[number];
38
- declare const WORKFLOW_AUTO_FIX_MODES: readonly ["disabled", "dry_run", "safe", "aggressive"];
39
- type WorkflowAutoFixMode = (typeof WORKFLOW_AUTO_FIX_MODES)[number];
40
- declare const WORKFLOW_INTEGRITY_CHECKS: readonly ["null_dependency_refs", "superseded_blockers", "band_order_inconsistency", "sparse_shaping", "failed_completed_gate"];
41
- type WorkflowIntegrityCheckId = (typeof WORKFLOW_INTEGRITY_CHECKS)[number];
42
- type WorkflowProofArtifact = {
18
+ export declare const WORKFLOW_RUNTIME_SCHEMA_VERSION: "1.0.0";
19
+ export declare const WORKFLOW_MUTATION_TIERS: readonly ["read_only", "low_risk_write", "high_risk_write"];
20
+ export type WorkflowMutationTier = (typeof WORKFLOW_MUTATION_TIERS)[number];
21
+ export declare const WORKFLOW_APPROVAL_MODES: readonly ["none", "audit_only", "human_required", "auto_approve"];
22
+ export type WorkflowApprovalMode = (typeof WORKFLOW_APPROVAL_MODES)[number];
23
+ export declare const DEFAULT_TIER_APPROVAL_MODE: Readonly<Record<WorkflowMutationTier, WorkflowApprovalMode>>;
24
+ export declare const WORKFLOW_ACTION_KINDS: readonly ["context_pack", "integrity_check", "lucern_tool", "report_compile", "brief_publish", "notification", "custom"];
25
+ export type WorkflowActionKind = (typeof WORKFLOW_ACTION_KINDS)[number];
26
+ export declare const WORKFLOW_HOOK_EVENTS: readonly ["schedule.tick", "worktree.activated", "worktree.completed", "question.created", "question.answered", "evidence.appended", "inbox.item_created"];
27
+ export type WorkflowHookEvent = (typeof WORKFLOW_HOOK_EVENTS)[number];
28
+ export declare const WORKFLOW_OUTPUT_KINDS: readonly ["engineering_brief", "research_memo", "strategy_artifact", "inbox_summary", "pipeline_brief", "structured_payload"];
29
+ export type WorkflowOutputKind = (typeof WORKFLOW_OUTPUT_KINDS)[number];
30
+ export declare const WORKFLOW_RUN_STATUSES: readonly ["queued", "running", "awaiting_approval", "completed", "failed", "cancelled"];
31
+ export type WorkflowRunStatus = (typeof WORKFLOW_RUN_STATUSES)[number];
32
+ export declare const WORKFLOW_TRIGGER_KINDS: readonly ["manual", "schedule", "hook"];
33
+ export type WorkflowTriggerKind = (typeof WORKFLOW_TRIGGER_KINDS)[number];
34
+ export declare const WORKFLOW_PROOF_ARTIFACT_KINDS: readonly ["report", "brief", "artifact", "dashboard", "test_evidence"];
35
+ export type WorkflowProofArtifactKind = (typeof WORKFLOW_PROOF_ARTIFACT_KINDS)[number];
36
+ export declare const WORKFLOW_STAFFING_HINTS: readonly ["solo", "backend+tests", "fullstack", "mcp+tests"];
37
+ export type WorkflowStaffingHint = (typeof WORKFLOW_STAFFING_HINTS)[number];
38
+ export declare const WORKFLOW_AUTO_FIX_MODES: readonly ["disabled", "dry_run", "safe", "aggressive"];
39
+ export type WorkflowAutoFixMode = (typeof WORKFLOW_AUTO_FIX_MODES)[number];
40
+ export declare const WORKFLOW_INTEGRITY_CHECKS: readonly ["null_dependency_refs", "superseded_blockers", "band_order_inconsistency", "sparse_shaping", "failed_completed_gate"];
41
+ export type WorkflowIntegrityCheckId = (typeof WORKFLOW_INTEGRITY_CHECKS)[number];
42
+ export type WorkflowProofArtifact = {
43
43
  kind: WorkflowProofArtifactKind;
44
44
  label: string;
45
45
  required?: boolean;
46
46
  sourceRef?: string;
47
47
  };
48
- type WorkflowAutoFixPolicy = {
48
+ export type WorkflowAutoFixPolicy = {
49
49
  mode: WorkflowAutoFixMode;
50
50
  maxActionsPerRun?: number;
51
51
  permittedMutationTiers?: WorkflowMutationTier[];
52
52
  requireAuditTrail?: boolean;
53
53
  escalationGate?: string;
54
54
  };
55
- declare const DEFAULT_WORKFLOW_AUTO_FIX_POLICY: WorkflowAutoFixPolicy;
56
- type WorkflowApprovalPolicy = {
55
+ export declare const DEFAULT_WORKFLOW_AUTO_FIX_POLICY: WorkflowAutoFixPolicy;
56
+ export type WorkflowApprovalPolicy = {
57
57
  mode: WorkflowApprovalMode;
58
58
  approvalGate?: string;
59
59
  autoApprovePolicyKey?: string;
60
60
  rationaleRequired?: boolean;
61
61
  };
62
- type WorkflowOutputBase = {
62
+ export type WorkflowOutputBase = {
63
63
  outputId: string;
64
64
  kind: WorkflowOutputKind;
65
65
  title: string;
66
66
  summary: string;
67
67
  generatedAt?: number;
68
68
  };
69
- type EngineeringBriefOutput = WorkflowOutputBase & {
69
+ export type EngineeringBriefOutput = WorkflowOutputBase & {
70
70
  kind: "engineering_brief";
71
71
  sections: Array<{
72
72
  heading: string;
@@ -74,23 +74,23 @@ type EngineeringBriefOutput = WorkflowOutputBase & {
74
74
  }>;
75
75
  touchedPaths?: string[];
76
76
  };
77
- type ResearchMemoOutput = WorkflowOutputBase & {
77
+ export type ResearchMemoOutput = WorkflowOutputBase & {
78
78
  kind: "research_memo";
79
79
  claims: string[];
80
80
  evidenceRefs?: string[];
81
81
  };
82
- type StrategyArtifactOutput = WorkflowOutputBase & {
82
+ export type StrategyArtifactOutput = WorkflowOutputBase & {
83
83
  kind: "strategy_artifact";
84
84
  recommendations: string[];
85
85
  decisionWindow?: string;
86
86
  };
87
- type InboxSummaryOutput = WorkflowOutputBase & {
87
+ export type InboxSummaryOutput = WorkflowOutputBase & {
88
88
  kind: "inbox_summary";
89
89
  channel: "developer_portal" | "chat" | "ops";
90
90
  inboxTitle: string;
91
91
  inboxBody: string;
92
92
  };
93
- type PipelineBriefOutput = WorkflowOutputBase & {
93
+ export type PipelineBriefOutput = WorkflowOutputBase & {
94
94
  kind: "pipeline_brief";
95
95
  hingeWorktreeId?: string;
96
96
  groupedBlockers: Array<{
@@ -98,12 +98,12 @@ type PipelineBriefOutput = WorkflowOutputBase & {
98
98
  blockedWorktreeIds: string[];
99
99
  }>;
100
100
  };
101
- type StructuredPayloadOutput = WorkflowOutputBase & {
101
+ export type StructuredPayloadOutput = WorkflowOutputBase & {
102
102
  kind: "structured_payload";
103
103
  payload: Record<string, unknown>;
104
104
  };
105
- type WorkflowOutputContract = EngineeringBriefOutput | ResearchMemoOutput | StrategyArtifactOutput | InboxSummaryOutput | PipelineBriefOutput | StructuredPayloadOutput;
106
- type WorkflowActionContract = {
105
+ export type WorkflowOutputContract = EngineeringBriefOutput | ResearchMemoOutput | StrategyArtifactOutput | InboxSummaryOutput | PipelineBriefOutput | StructuredPayloadOutput;
106
+ export type WorkflowActionContract = {
107
107
  actionId: string;
108
108
  kind: WorkflowActionKind;
109
109
  title: string;
@@ -114,14 +114,14 @@ type WorkflowActionContract = {
114
114
  idempotent?: boolean;
115
115
  approval: WorkflowApprovalPolicy;
116
116
  };
117
- type WorkflowHookContract = {
117
+ export type WorkflowHookContract = {
118
118
  hookId: string;
119
119
  event: WorkflowHookEvent;
120
120
  description: string;
121
121
  condition?: string;
122
122
  actionIds: string[];
123
123
  };
124
- type WorkflowTriggerContract = {
124
+ export type WorkflowTriggerContract = {
125
125
  kind: "manual";
126
126
  description?: string;
127
127
  } | {
@@ -132,7 +132,7 @@ type WorkflowTriggerContract = {
132
132
  kind: "hook";
133
133
  event: WorkflowHookEvent;
134
134
  };
135
- type WorkflowDefinitionV1 = {
135
+ export type WorkflowDefinitionV1 = {
136
136
  workflowId: string;
137
137
  version: typeof WORKFLOW_RUNTIME_SCHEMA_VERSION;
138
138
  title: string;
@@ -146,7 +146,7 @@ type WorkflowDefinitionV1 = {
146
146
  outputs: readonly WorkflowOutputKind[];
147
147
  integrityChecks?: readonly WorkflowIntegrityCheckId[];
148
148
  };
149
- type WorkflowRunReceiptV1 = {
149
+ export type WorkflowRunReceiptV1 = {
150
150
  runId: string;
151
151
  workflowId: string;
152
152
  status: WorkflowRunStatus;
@@ -156,8 +156,7 @@ type WorkflowRunReceiptV1 = {
156
156
  outputKinds: WorkflowOutputKind[];
157
157
  approvalsRequired?: number;
158
158
  };
159
- declare const NIGHTLY_RECONCILIATION_WORKFLOW_ID: "workflow.pipeline_reconciliation.v1";
160
- declare const MORNING_BRIEF_WORKFLOW_ID: "workflow.morning_brief.v1";
161
- declare const CANONICAL_WORKFLOW_DEFINITIONS: readonly WorkflowDefinitionV1[];
162
-
163
- export { CANONICAL_WORKFLOW_DEFINITIONS, DEFAULT_TIER_APPROVAL_MODE, DEFAULT_WORKFLOW_AUTO_FIX_POLICY, type EngineeringBriefOutput, type InboxSummaryOutput, MORNING_BRIEF_WORKFLOW_ID, NIGHTLY_RECONCILIATION_WORKFLOW_ID, type PipelineBriefOutput, type ResearchMemoOutput, type StrategyArtifactOutput, type StructuredPayloadOutput, WORKFLOW_ACTION_KINDS, WORKFLOW_APPROVAL_MODES, WORKFLOW_AUTO_FIX_MODES, WORKFLOW_HOOK_EVENTS, WORKFLOW_INTEGRITY_CHECKS, WORKFLOW_MUTATION_TIERS, WORKFLOW_OUTPUT_KINDS, WORKFLOW_PROOF_ARTIFACT_KINDS, WORKFLOW_RUNTIME_SCHEMA_VERSION, WORKFLOW_RUN_STATUSES, WORKFLOW_STAFFING_HINTS, WORKFLOW_TRIGGER_KINDS, type WorkflowActionContract, type WorkflowActionKind, type WorkflowApprovalMode, type WorkflowApprovalPolicy, type WorkflowAutoFixMode, type WorkflowAutoFixPolicy, type WorkflowDefinitionV1, type WorkflowHookContract, type WorkflowHookEvent, type WorkflowIntegrityCheckId, type WorkflowMutationTier, type WorkflowOutputBase, type WorkflowOutputContract, type WorkflowOutputKind, type WorkflowProofArtifact, type WorkflowProofArtifactKind, type WorkflowRunReceiptV1, type WorkflowRunStatus, type WorkflowStaffingHint, type WorkflowTriggerContract, type WorkflowTriggerKind };
159
+ export declare const NIGHTLY_RECONCILIATION_WORKFLOW_ID: "workflow.pipeline_reconciliation.v1";
160
+ export declare const MORNING_BRIEF_WORKFLOW_ID: "workflow.morning_brief.v1";
161
+ export declare const CANONICAL_WORKFLOW_DEFINITIONS: readonly WorkflowDefinitionV1[];
162
+ //# sourceMappingURL=workflow-runtime.contract.d.ts.map
@@ -1,245 +1,258 @@
1
- // src/contracts/workflow-runtime.contract.ts
2
- var WORKFLOW_RUNTIME_SCHEMA_VERSION = "1.0.0";
3
- var WORKFLOW_MUTATION_TIERS = [
4
- "read_only",
5
- "low_risk_write",
6
- "high_risk_write"
1
+ /**
2
+ * Workflow Runtime Contract v1
3
+ *
4
+ * Canonical TypeScript contract for Lucern's graph-local workflow runtime.
5
+ * WF-1 defines the typed substrate for:
6
+ * - workflow definitions and run receipts
7
+ * - action mutation tiering and approval expectations
8
+ * - hooks over worktree/question/evidence/inbox events
9
+ * - output unions for domain-specific artifacts
10
+ * - deterministic integrity checks and operational metadata
11
+ *
12
+ * BREAKING CHANGE RULES:
13
+ * - Adding optional fields is NON-breaking
14
+ * - Removing fields or renaming enum values is BREAKING
15
+ * - Reclassifying a mutation tier is BREAKING
16
+ * - Changing canonical workflow IDs is BREAKING
17
+ */
18
+ export const WORKFLOW_RUNTIME_SCHEMA_VERSION = "1.0.0";
19
+ export const WORKFLOW_MUTATION_TIERS = [
20
+ "read_only",
21
+ "low_risk_write",
22
+ "high_risk_write",
7
23
  ];
8
- var WORKFLOW_APPROVAL_MODES = [
9
- "none",
10
- "audit_only",
11
- "human_required",
12
- "auto_approve"
24
+ export const WORKFLOW_APPROVAL_MODES = [
25
+ "none",
26
+ "audit_only",
27
+ "human_required",
28
+ "auto_approve",
13
29
  ];
14
- var DEFAULT_TIER_APPROVAL_MODE = {
15
- read_only: "none",
16
- low_risk_write: "audit_only",
17
- high_risk_write: "human_required"
30
+ export const DEFAULT_TIER_APPROVAL_MODE = {
31
+ read_only: "none",
32
+ low_risk_write: "audit_only",
33
+ high_risk_write: "human_required",
18
34
  };
19
- var WORKFLOW_ACTION_KINDS = [
20
- "context_pack",
21
- "integrity_check",
22
- "lucern_tool",
23
- "report_compile",
24
- "brief_publish",
25
- "notification",
26
- "custom"
35
+ export const WORKFLOW_ACTION_KINDS = [
36
+ "context_pack",
37
+ "integrity_check",
38
+ "lucern_tool",
39
+ "report_compile",
40
+ "brief_publish",
41
+ "notification",
42
+ "custom",
27
43
  ];
28
- var WORKFLOW_HOOK_EVENTS = [
29
- "schedule.tick",
30
- "worktree.activated",
31
- "worktree.completed",
32
- "question.created",
33
- "question.answered",
34
- "evidence.appended",
35
- "inbox.item_created"
44
+ export const WORKFLOW_HOOK_EVENTS = [
45
+ "schedule.tick",
46
+ "worktree.activated",
47
+ "worktree.completed",
48
+ "question.created",
49
+ "question.answered",
50
+ "evidence.appended",
51
+ "inbox.item_created",
36
52
  ];
37
- var WORKFLOW_OUTPUT_KINDS = [
38
- "engineering_brief",
39
- "research_memo",
40
- "strategy_artifact",
41
- "inbox_summary",
42
- "pipeline_brief",
43
- "structured_payload"
53
+ export const WORKFLOW_OUTPUT_KINDS = [
54
+ "engineering_brief",
55
+ "research_memo",
56
+ "strategy_artifact",
57
+ "inbox_summary",
58
+ "pipeline_brief",
59
+ "structured_payload",
44
60
  ];
45
- var WORKFLOW_RUN_STATUSES = [
46
- "queued",
47
- "running",
48
- "awaiting_approval",
49
- "completed",
50
- "failed",
51
- "cancelled"
61
+ export const WORKFLOW_RUN_STATUSES = [
62
+ "queued",
63
+ "running",
64
+ "awaiting_approval",
65
+ "completed",
66
+ "failed",
67
+ "cancelled",
52
68
  ];
53
- var WORKFLOW_TRIGGER_KINDS = [
54
- "manual",
55
- "schedule",
56
- "hook"
69
+ export const WORKFLOW_TRIGGER_KINDS = [
70
+ "manual",
71
+ "schedule",
72
+ "hook",
57
73
  ];
58
- var WORKFLOW_PROOF_ARTIFACT_KINDS = [
59
- "report",
60
- "brief",
61
- "artifact",
62
- "dashboard",
63
- "test_evidence"
74
+ export const WORKFLOW_PROOF_ARTIFACT_KINDS = [
75
+ "report",
76
+ "brief",
77
+ "artifact",
78
+ "dashboard",
79
+ "test_evidence",
64
80
  ];
65
- var WORKFLOW_STAFFING_HINTS = [
66
- "solo",
67
- "backend+tests",
68
- "fullstack",
69
- "mcp+tests"
81
+ export const WORKFLOW_STAFFING_HINTS = [
82
+ "solo",
83
+ "backend+tests",
84
+ "fullstack",
85
+ "mcp+tests",
70
86
  ];
71
- var WORKFLOW_AUTO_FIX_MODES = [
72
- "disabled",
73
- "dry_run",
74
- "safe",
75
- "aggressive"
87
+ export const WORKFLOW_AUTO_FIX_MODES = [
88
+ "disabled",
89
+ "dry_run",
90
+ "safe",
91
+ "aggressive",
76
92
  ];
77
- var WORKFLOW_INTEGRITY_CHECKS = [
78
- "null_dependency_refs",
79
- "superseded_blockers",
80
- "band_order_inconsistency",
81
- "sparse_shaping",
82
- "failed_completed_gate"
93
+ export const WORKFLOW_INTEGRITY_CHECKS = [
94
+ "null_dependency_refs",
95
+ "superseded_blockers",
96
+ "band_order_inconsistency",
97
+ "sparse_shaping",
98
+ "failed_completed_gate",
83
99
  ];
84
- var DEFAULT_WORKFLOW_AUTO_FIX_POLICY = {
85
- mode: "disabled",
86
- permittedMutationTiers: ["read_only"],
87
- requireAuditTrail: true
100
+ export const DEFAULT_WORKFLOW_AUTO_FIX_POLICY = {
101
+ mode: "disabled",
102
+ permittedMutationTiers: ["read_only"],
103
+ requireAuditTrail: true,
88
104
  };
89
- var NIGHTLY_RECONCILIATION_WORKFLOW_ID = "workflow.pipeline_reconciliation.v1";
90
- var MORNING_BRIEF_WORKFLOW_ID = "workflow.morning_brief.v1";
91
- var CANONICAL_WORKFLOW_DEFINITIONS = [
92
- {
93
- workflowId: NIGHTLY_RECONCILIATION_WORKFLOW_ID,
94
- version: WORKFLOW_RUNTIME_SCHEMA_VERSION,
95
- title: "Nightly Pipeline Reconciliation",
96
- description: "Runs deterministic integrity checks, compiles pipeline state, and emits an operator-facing reconciliation brief.",
97
- trigger: {
98
- kind: "schedule",
99
- cadence: "daily",
100
- timezone: "America/New_York"
105
+ export const NIGHTLY_RECONCILIATION_WORKFLOW_ID = "workflow.pipeline_reconciliation.v1";
106
+ export const MORNING_BRIEF_WORKFLOW_ID = "workflow.morning_brief.v1";
107
+ export const CANONICAL_WORKFLOW_DEFINITIONS = [
108
+ {
109
+ workflowId: NIGHTLY_RECONCILIATION_WORKFLOW_ID,
110
+ version: WORKFLOW_RUNTIME_SCHEMA_VERSION,
111
+ title: "Nightly Pipeline Reconciliation",
112
+ description: "Runs deterministic integrity checks, compiles pipeline state, and emits an operator-facing reconciliation brief.",
113
+ trigger: {
114
+ kind: "schedule",
115
+ cadence: "daily",
116
+ timezone: "America/New_York",
117
+ },
118
+ staffingHint: "backend+tests",
119
+ proofArtifacts: [
120
+ {
121
+ kind: "report",
122
+ label: "Pipeline reconciliation report",
123
+ required: true,
124
+ },
125
+ {
126
+ kind: "test_evidence",
127
+ label: "Integrity check receipt",
128
+ required: true,
129
+ },
130
+ ],
131
+ autoFixPolicy: {
132
+ mode: "safe",
133
+ maxActionsPerRun: 5,
134
+ permittedMutationTiers: ["read_only", "low_risk_write"],
135
+ requireAuditTrail: true,
136
+ escalationGate: "gate:workflow-runtime-contract-live",
137
+ },
138
+ actions: [
139
+ {
140
+ actionId: "compile_context_pack",
141
+ kind: "context_pack",
142
+ title: "Compile pipeline context",
143
+ description: "Build the ranked context needed for deterministic checks.",
144
+ mutationTier: "read_only",
145
+ produces: ["structured_payload"],
146
+ idempotent: true,
147
+ approval: { mode: "none" },
148
+ },
149
+ {
150
+ actionId: "run_integrity_checks",
151
+ kind: "integrity_check",
152
+ title: "Run integrity checks",
153
+ description: "Evaluate dependency references, blockers, campaign/lane placement, shaping coverage, and completed gates.",
154
+ mutationTier: "read_only",
155
+ produces: ["structured_payload"],
156
+ idempotent: true,
157
+ approval: { mode: "none" },
158
+ },
159
+ {
160
+ actionId: "record_followup_questions",
161
+ kind: "lucern_tool",
162
+ title: "Record follow-up questions",
163
+ description: "Create or reopen operator-facing questions for integrity failures that require human review.",
164
+ mutationTier: "low_risk_write",
165
+ toolName: "create_question",
166
+ produces: ["pipeline_brief"],
167
+ approval: { mode: "audit_only", rationaleRequired: true },
168
+ },
169
+ {
170
+ actionId: "publish_reconciliation_brief",
171
+ kind: "brief_publish",
172
+ title: "Publish reconciliation brief",
173
+ description: "Emit an inbox-routed brief summarizing the nightly pipeline state and grouped blockers.",
174
+ mutationTier: "low_risk_write",
175
+ produces: ["pipeline_brief", "inbox_summary"],
176
+ approval: { mode: "audit_only" },
177
+ },
178
+ ],
179
+ hooks: [
180
+ {
181
+ hookId: "nightly-schedule",
182
+ event: "schedule.tick",
183
+ description: "Run once per nightly cadence.",
184
+ actionIds: [
185
+ "compile_context_pack",
186
+ "run_integrity_checks",
187
+ "record_followup_questions",
188
+ "publish_reconciliation_brief",
189
+ ],
190
+ },
191
+ ],
192
+ outputs: ["pipeline_brief", "inbox_summary", "structured_payload"],
193
+ integrityChecks: WORKFLOW_INTEGRITY_CHECKS,
101
194
  },
102
- staffingHint: "backend+tests",
103
- proofArtifacts: [
104
- {
105
- kind: "report",
106
- label: "Pipeline reconciliation report",
107
- required: true
108
- },
109
- {
110
- kind: "test_evidence",
111
- label: "Integrity check receipt",
112
- required: true
113
- }
114
- ],
115
- autoFixPolicy: {
116
- mode: "safe",
117
- maxActionsPerRun: 5,
118
- permittedMutationTiers: ["read_only", "low_risk_write"],
119
- requireAuditTrail: true,
120
- escalationGate: "gate:workflow-runtime-contract-live"
195
+ {
196
+ workflowId: MORNING_BRIEF_WORKFLOW_ID,
197
+ version: WORKFLOW_RUNTIME_SCHEMA_VERSION,
198
+ title: "Morning Brief",
199
+ description: "Compiles a developer-facing morning brief from graph state, overnight workflow outputs, and inbox routing preferences.",
200
+ trigger: {
201
+ kind: "schedule",
202
+ cadence: "daily",
203
+ timezone: "America/New_York",
204
+ },
205
+ staffingHint: "solo",
206
+ proofArtifacts: [
207
+ {
208
+ kind: "brief",
209
+ label: "Morning brief",
210
+ required: true,
211
+ },
212
+ ],
213
+ autoFixPolicy: {
214
+ mode: "dry_run",
215
+ maxActionsPerRun: 1,
216
+ permittedMutationTiers: ["read_only", "low_risk_write"],
217
+ requireAuditTrail: true,
218
+ },
219
+ actions: [
220
+ {
221
+ actionId: "compile_brief_inputs",
222
+ kind: "context_pack",
223
+ title: "Compile brief inputs",
224
+ description: "Read graph state, worktree state, and overnight workflow receipts.",
225
+ mutationTier: "read_only",
226
+ produces: ["structured_payload"],
227
+ idempotent: true,
228
+ approval: { mode: "none" },
229
+ },
230
+ {
231
+ actionId: "publish_morning_brief",
232
+ kind: "brief_publish",
233
+ title: "Publish morning brief",
234
+ description: "Publish a typed inbox summary with prioritized worktree and question context.",
235
+ mutationTier: "low_risk_write",
236
+ produces: ["engineering_brief", "inbox_summary"],
237
+ approval: { mode: "audit_only" },
238
+ },
239
+ ],
240
+ hooks: [
241
+ {
242
+ hookId: "morning-schedule",
243
+ event: "schedule.tick",
244
+ description: "Run once per morning cadence.",
245
+ actionIds: ["compile_brief_inputs", "publish_morning_brief"],
246
+ },
247
+ {
248
+ hookId: "worktree-complete-refresh",
249
+ event: "worktree.completed",
250
+ description: "Refresh the queued morning brief inputs when worktree outcomes land overnight.",
251
+ actionIds: ["compile_brief_inputs"],
252
+ },
253
+ ],
254
+ outputs: ["engineering_brief", "inbox_summary", "structured_payload"],
255
+ integrityChecks: ["sparse_shaping"],
121
256
  },
122
- actions: [
123
- {
124
- actionId: "compile_context_pack",
125
- kind: "context_pack",
126
- title: "Compile pipeline context",
127
- description: "Build the ranked context needed for deterministic checks.",
128
- mutationTier: "read_only",
129
- produces: ["structured_payload"],
130
- idempotent: true,
131
- approval: { mode: "none" }
132
- },
133
- {
134
- actionId: "run_integrity_checks",
135
- kind: "integrity_check",
136
- title: "Run integrity checks",
137
- description: "Evaluate dependency references, blockers, campaign/lane placement, shaping coverage, and completed gates.",
138
- mutationTier: "read_only",
139
- produces: ["structured_payload"],
140
- idempotent: true,
141
- approval: { mode: "none" }
142
- },
143
- {
144
- actionId: "record_followup_questions",
145
- kind: "lucern_tool",
146
- title: "Record follow-up questions",
147
- description: "Create or reopen operator-facing questions for integrity failures that require human review.",
148
- mutationTier: "low_risk_write",
149
- toolName: "create_question",
150
- produces: ["pipeline_brief"],
151
- approval: { mode: "audit_only", rationaleRequired: true }
152
- },
153
- {
154
- actionId: "publish_reconciliation_brief",
155
- kind: "brief_publish",
156
- title: "Publish reconciliation brief",
157
- description: "Emit an inbox-routed brief summarizing the nightly pipeline state and grouped blockers.",
158
- mutationTier: "low_risk_write",
159
- produces: ["pipeline_brief", "inbox_summary"],
160
- approval: { mode: "audit_only" }
161
- }
162
- ],
163
- hooks: [
164
- {
165
- hookId: "nightly-schedule",
166
- event: "schedule.tick",
167
- description: "Run once per nightly cadence.",
168
- actionIds: [
169
- "compile_context_pack",
170
- "run_integrity_checks",
171
- "record_followup_questions",
172
- "publish_reconciliation_brief"
173
- ]
174
- }
175
- ],
176
- outputs: ["pipeline_brief", "inbox_summary", "structured_payload"],
177
- integrityChecks: WORKFLOW_INTEGRITY_CHECKS
178
- },
179
- {
180
- workflowId: MORNING_BRIEF_WORKFLOW_ID,
181
- version: WORKFLOW_RUNTIME_SCHEMA_VERSION,
182
- title: "Morning Brief",
183
- description: "Compiles a developer-facing morning brief from graph state, overnight workflow outputs, and inbox routing preferences.",
184
- trigger: {
185
- kind: "schedule",
186
- cadence: "daily",
187
- timezone: "America/New_York"
188
- },
189
- staffingHint: "solo",
190
- proofArtifacts: [
191
- {
192
- kind: "brief",
193
- label: "Morning brief",
194
- required: true
195
- }
196
- ],
197
- autoFixPolicy: {
198
- mode: "dry_run",
199
- maxActionsPerRun: 1,
200
- permittedMutationTiers: ["read_only", "low_risk_write"],
201
- requireAuditTrail: true
202
- },
203
- actions: [
204
- {
205
- actionId: "compile_brief_inputs",
206
- kind: "context_pack",
207
- title: "Compile brief inputs",
208
- description: "Read graph state, worktree state, and overnight workflow receipts.",
209
- mutationTier: "read_only",
210
- produces: ["structured_payload"],
211
- idempotent: true,
212
- approval: { mode: "none" }
213
- },
214
- {
215
- actionId: "publish_morning_brief",
216
- kind: "brief_publish",
217
- title: "Publish morning brief",
218
- description: "Publish a typed inbox summary with prioritized worktree and question context.",
219
- mutationTier: "low_risk_write",
220
- produces: ["engineering_brief", "inbox_summary"],
221
- approval: { mode: "audit_only" }
222
- }
223
- ],
224
- hooks: [
225
- {
226
- hookId: "morning-schedule",
227
- event: "schedule.tick",
228
- description: "Run once per morning cadence.",
229
- actionIds: ["compile_brief_inputs", "publish_morning_brief"]
230
- },
231
- {
232
- hookId: "worktree-complete-refresh",
233
- event: "worktree.completed",
234
- description: "Refresh the queued morning brief inputs when worktree outcomes land overnight.",
235
- actionIds: ["compile_brief_inputs"]
236
- }
237
- ],
238
- outputs: ["engineering_brief", "inbox_summary", "structured_payload"],
239
- integrityChecks: ["sparse_shaping"]
240
- }
241
257
  ];
242
-
243
- export { CANONICAL_WORKFLOW_DEFINITIONS, DEFAULT_TIER_APPROVAL_MODE, DEFAULT_WORKFLOW_AUTO_FIX_POLICY, MORNING_BRIEF_WORKFLOW_ID, NIGHTLY_RECONCILIATION_WORKFLOW_ID, WORKFLOW_ACTION_KINDS, WORKFLOW_APPROVAL_MODES, WORKFLOW_AUTO_FIX_MODES, WORKFLOW_HOOK_EVENTS, WORKFLOW_INTEGRITY_CHECKS, WORKFLOW_MUTATION_TIERS, WORKFLOW_OUTPUT_KINDS, WORKFLOW_PROOF_ARTIFACT_KINDS, WORKFLOW_RUNTIME_SCHEMA_VERSION, WORKFLOW_RUN_STATUSES, WORKFLOW_STAFFING_HINTS, WORKFLOW_TRIGGER_KINDS };
244
- //# sourceMappingURL=workflow-runtime.contract.js.map
245
258
  //# sourceMappingURL=workflow-runtime.contract.js.map