@jterrats/open-orchestra 0.5.7 → 1.0.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 (249) hide show
  1. package/AGENTS.md +9 -8
  2. package/CLAUDE.md +13 -11
  3. package/README.md +78 -11
  4. package/dist/assets/web-console.js +169 -32
  5. package/dist/automation-evidence.d.ts +23 -0
  6. package/dist/automation-evidence.js +97 -0
  7. package/dist/automation-evidence.js.map +1 -0
  8. package/dist/autonomous-run-store.js +3 -3
  9. package/dist/autonomous-run-store.js.map +1 -1
  10. package/dist/benchmark.d.ts +4 -1
  11. package/dist/benchmark.js +93 -4
  12. package/dist/benchmark.js.map +1 -1
  13. package/dist/cli.js +73 -2
  14. package/dist/cli.js.map +1 -1
  15. package/dist/collaboration-flows.js +3 -5
  16. package/dist/collaboration-flows.js.map +1 -1
  17. package/dist/collection-utils.d.ts +3 -0
  18. package/dist/collection-utils.js +10 -0
  19. package/dist/collection-utils.js.map +1 -0
  20. package/dist/command-manifest.d.ts +12 -1
  21. package/dist/command-manifest.js +213 -10
  22. package/dist/command-manifest.js.map +1 -1
  23. package/dist/commands.d.ts +10 -5
  24. package/dist/commands.js +16 -6
  25. package/dist/commands.js.map +1 -1
  26. package/dist/config-migrations.d.ts +24 -0
  27. package/dist/config-migrations.js +102 -0
  28. package/dist/config-migrations.js.map +1 -0
  29. package/dist/constants.d.ts +2 -0
  30. package/dist/constants.js +22 -0
  31. package/dist/constants.js.map +1 -1
  32. package/dist/dashboard-commands.d.ts +2 -0
  33. package/dist/dashboard-commands.js +14 -0
  34. package/dist/dashboard-commands.js.map +1 -0
  35. package/dist/defaults.d.ts +13 -0
  36. package/dist/defaults.js +13 -0
  37. package/dist/defaults.js.map +1 -1
  38. package/dist/delegation-decision.js +23 -8
  39. package/dist/delegation-decision.js.map +1 -1
  40. package/dist/delivery-commands.js +5 -0
  41. package/dist/delivery-commands.js.map +1 -1
  42. package/dist/delivery-dashboard-charts.d.ts +4 -0
  43. package/dist/delivery-dashboard-charts.js +156 -0
  44. package/dist/delivery-dashboard-charts.js.map +1 -0
  45. package/dist/delivery-dashboard-html.d.ts +2 -0
  46. package/dist/delivery-dashboard-html.js +115 -0
  47. package/dist/delivery-dashboard-html.js.map +1 -0
  48. package/dist/delivery-dashboard-types.d.ts +78 -0
  49. package/dist/delivery-dashboard-types.js +2 -0
  50. package/dist/delivery-dashboard-types.js.map +1 -0
  51. package/dist/delivery-dashboard.d.ts +8 -0
  52. package/dist/delivery-dashboard.js +124 -0
  53. package/dist/delivery-dashboard.js.map +1 -0
  54. package/dist/effort-classification.d.ts +7 -0
  55. package/dist/effort-classification.js +72 -0
  56. package/dist/effort-classification.js.map +1 -0
  57. package/dist/extension-commands.d.ts +3 -0
  58. package/dist/extension-commands.js +40 -0
  59. package/dist/extension-commands.js.map +1 -0
  60. package/dist/extensions.d.ts +22 -0
  61. package/dist/extensions.js +126 -0
  62. package/dist/extensions.js.map +1 -0
  63. package/dist/github.d.ts +2 -0
  64. package/dist/github.js +15 -3
  65. package/dist/github.js.map +1 -1
  66. package/dist/health-checks.js +51 -0
  67. package/dist/health-checks.js.map +1 -1
  68. package/dist/lucid-story-map.d.ts +73 -0
  69. package/dist/lucid-story-map.js +112 -0
  70. package/dist/lucid-story-map.js.map +1 -0
  71. package/dist/mcp-integrations.d.ts +19 -0
  72. package/dist/mcp-integrations.js +58 -0
  73. package/dist/mcp-integrations.js.map +1 -0
  74. package/dist/mcp-tool-adapter.d.ts +21 -0
  75. package/dist/mcp-tool-adapter.js +56 -0
  76. package/dist/mcp-tool-adapter.js.map +1 -0
  77. package/dist/metrics-commands.js +47 -13
  78. package/dist/metrics-commands.js.map +1 -1
  79. package/dist/model-commands.d.ts +5 -0
  80. package/dist/model-commands.js +95 -1
  81. package/dist/model-commands.js.map +1 -1
  82. package/dist/model-providers.js +13 -1
  83. package/dist/model-providers.js.map +1 -1
  84. package/dist/package-update-check.d.ts +18 -0
  85. package/dist/package-update-check.js +20 -0
  86. package/dist/package-update-check.js.map +1 -1
  87. package/dist/phase-executor.d.ts +1 -0
  88. package/dist/phase-executor.js +115 -14
  89. package/dist/phase-executor.js.map +1 -1
  90. package/dist/phase-playbooks.d.ts +15 -0
  91. package/dist/phase-playbooks.js +82 -0
  92. package/dist/phase-playbooks.js.map +1 -1
  93. package/dist/planning-commands.d.ts +1 -0
  94. package/dist/planning-commands.js +24 -1
  95. package/dist/planning-commands.js.map +1 -1
  96. package/dist/project-detection.js +9 -7
  97. package/dist/project-detection.js.map +1 -1
  98. package/dist/prompt-registry-update.d.ts +2 -0
  99. package/dist/prompt-registry-update.js +5 -1
  100. package/dist/prompt-registry-update.js.map +1 -1
  101. package/dist/prompt-registry-validation.js +39 -2
  102. package/dist/prompt-registry-validation.js.map +1 -1
  103. package/dist/qa-commands.d.ts +2 -0
  104. package/dist/qa-commands.js +18 -0
  105. package/dist/qa-commands.js.map +1 -0
  106. package/dist/qa-coverage.d.ts +24 -0
  107. package/dist/qa-coverage.js +189 -0
  108. package/dist/qa-coverage.js.map +1 -0
  109. package/dist/qa-readiness.d.ts +5 -0
  110. package/dist/qa-readiness.js +26 -0
  111. package/dist/qa-readiness.js.map +1 -0
  112. package/dist/refresh-generated.d.ts +10 -1
  113. package/dist/refresh-generated.js +83 -6
  114. package/dist/refresh-generated.js.map +1 -1
  115. package/dist/release-candidate.d.ts +9 -1
  116. package/dist/release-candidate.js +52 -1
  117. package/dist/release-candidate.js.map +1 -1
  118. package/dist/release-commands.js +161 -8
  119. package/dist/release-commands.js.map +1 -1
  120. package/dist/release-readiness.d.ts +33 -0
  121. package/dist/release-readiness.js +187 -3
  122. package/dist/release-readiness.js.map +1 -1
  123. package/dist/runtime-bootstrap.js +1 -1
  124. package/dist/runtime-bootstrap.js.map +1 -1
  125. package/dist/runtime-commands.d.ts +2 -0
  126. package/dist/runtime-commands.js +77 -0
  127. package/dist/runtime-commands.js.map +1 -1
  128. package/dist/runtime-execution-renderer.d.ts +3 -2
  129. package/dist/runtime-execution-renderer.js +19 -1
  130. package/dist/runtime-execution-renderer.js.map +1 -1
  131. package/dist/runtime-execution.d.ts +2 -1
  132. package/dist/runtime-execution.js +71 -11
  133. package/dist/runtime-execution.js.map +1 -1
  134. package/dist/runtime-guardrails.d.ts +26 -0
  135. package/dist/runtime-guardrails.js +168 -0
  136. package/dist/runtime-guardrails.js.map +1 -0
  137. package/dist/setup-agents-import.js +5 -3
  138. package/dist/setup-agents-import.js.map +1 -1
  139. package/dist/skills-commands.d.ts +4 -0
  140. package/dist/skills-commands.js +55 -2
  141. package/dist/skills-commands.js.map +1 -1
  142. package/dist/skills-memory.d.ts +36 -2
  143. package/dist/skills-memory.js +165 -6
  144. package/dist/skills-memory.js.map +1 -1
  145. package/dist/skills-planning.js +2 -4
  146. package/dist/skills-planning.js.map +1 -1
  147. package/dist/skills-render.js +2 -4
  148. package/dist/skills-render.js.map +1 -1
  149. package/dist/skills.d.ts +1 -1
  150. package/dist/skills.js +1 -1
  151. package/dist/skills.js.map +1 -1
  152. package/dist/sprint-commands.js +2 -1
  153. package/dist/sprint-commands.js.map +1 -1
  154. package/dist/subagent-protocol.js +3 -5
  155. package/dist/subagent-protocol.js.map +1 -1
  156. package/dist/support-commands.d.ts +2 -0
  157. package/dist/support-commands.js +18 -0
  158. package/dist/support-commands.js.map +1 -0
  159. package/dist/support-diagnostics.d.ts +49 -0
  160. package/dist/support-diagnostics.js +86 -0
  161. package/dist/support-diagnostics.js.map +1 -0
  162. package/dist/task-graph-commands.js +5 -3
  163. package/dist/task-graph-commands.js.map +1 -1
  164. package/dist/telemetry-redaction.js +8 -1
  165. package/dist/telemetry-redaction.js.map +1 -1
  166. package/dist/tool-commands.d.ts +3 -0
  167. package/dist/tool-commands.js +62 -0
  168. package/dist/tool-commands.js.map +1 -1
  169. package/dist/tracker-adapters.d.ts +71 -0
  170. package/dist/tracker-adapters.js +186 -0
  171. package/dist/tracker-adapters.js.map +1 -0
  172. package/dist/tracker-commands.d.ts +2 -0
  173. package/dist/tracker-commands.js +119 -0
  174. package/dist/tracker-commands.js.map +1 -0
  175. package/dist/types/metrics.d.ts +24 -0
  176. package/dist/types/model-config.d.ts +35 -0
  177. package/dist/types/runtime.d.ts +56 -0
  178. package/dist/types/skills.d.ts +2 -0
  179. package/dist/types/tasks.d.ts +6 -0
  180. package/dist/types/workflow-run.d.ts +17 -0
  181. package/dist/types.d.ts +4 -4
  182. package/dist/types.js.map +1 -1
  183. package/dist/upgrade-commands.js +13 -4
  184. package/dist/upgrade-commands.js.map +1 -1
  185. package/dist/validation.js +2 -2
  186. package/dist/validation.js.map +1 -1
  187. package/dist/visual-validation.d.ts +81 -0
  188. package/dist/visual-validation.js +290 -0
  189. package/dist/visual-validation.js.map +1 -0
  190. package/dist/web-action-security.d.ts +11 -0
  191. package/dist/web-action-security.js +45 -0
  192. package/dist/web-action-security.js.map +1 -0
  193. package/dist/web-api-read-routes.js +101 -1
  194. package/dist/web-api-read-routes.js.map +1 -1
  195. package/dist/web-api.js +507 -5
  196. package/dist/web-api.js.map +1 -1
  197. package/dist/web-artifacts.d.ts +55 -0
  198. package/dist/web-artifacts.js +222 -0
  199. package/dist/web-artifacts.js.map +1 -0
  200. package/dist/web-console/assets/index-C9lx-V42.css +1 -0
  201. package/dist/web-console/assets/index-M3S0g1GK.js +11 -0
  202. package/dist/web-console/index.html +13 -0
  203. package/dist/web-console.js +9 -3
  204. package/dist/web-console.js.map +1 -1
  205. package/dist/web-recovery.d.ts +30 -0
  206. package/dist/web-recovery.js +163 -0
  207. package/dist/web-recovery.js.map +1 -0
  208. package/dist/web-workflow-progress.d.ts +41 -0
  209. package/dist/web-workflow-progress.js +114 -0
  210. package/dist/web-workflow-progress.js.map +1 -0
  211. package/dist/workflow-approval-service.d.ts +2 -1
  212. package/dist/workflow-approval-service.js +72 -0
  213. package/dist/workflow-approval-service.js.map +1 -1
  214. package/dist/workflow-evidence-service.js +8 -1
  215. package/dist/workflow-evidence-service.js.map +1 -1
  216. package/dist/workflow-gates.d.ts +1 -0
  217. package/dist/workflow-gates.js +57 -0
  218. package/dist/workflow-gates.js.map +1 -1
  219. package/dist/workflow-run-commands.js +13 -1
  220. package/dist/workflow-run-commands.js.map +1 -1
  221. package/dist/workflow-services.d.ts +16 -12
  222. package/dist/workflow-services.js +311 -253
  223. package/dist/workflow-services.js.map +1 -1
  224. package/dist/workflow-task-service.d.ts +11 -0
  225. package/dist/workflow-task-service.js +242 -0
  226. package/dist/workflow-task-service.js.map +1 -0
  227. package/dist/workspace-validator.js +109 -3
  228. package/dist/workspace-validator.js.map +1 -1
  229. package/dist/workspace.js +8 -2
  230. package/dist/workspace.js.map +1 -1
  231. package/docs/adoption-guide.md +147 -0
  232. package/docs/autonomous-workflow.md +118 -27
  233. package/docs/benchmark.md +15 -7
  234. package/docs/command-contracts.md +18 -1
  235. package/docs/core-command-surface.md +59 -13
  236. package/docs/end-to-end-demo.md +1 -0
  237. package/docs/extension-contracts.md +83 -0
  238. package/docs/orchestra-mvp.md +83 -3
  239. package/docs/persona-workflows.md +32 -0
  240. package/docs/release-test-matrix.md +42 -0
  241. package/docs/runtime-adapters.md +92 -0
  242. package/docs/runtime-llm-flow.md +13 -0
  243. package/docs/setup-agents-applicability-review.md +173 -0
  244. package/docs/source-of-truth-and-agent-learning.md +14 -0
  245. package/docs/traceability-flow.md +5 -1
  246. package/docs/tracker-adapter-contract.md +10 -1
  247. package/docs/web-console-qa.md +35 -0
  248. package/package.json +12 -6
  249. package/rules/development-engineering.mdc +66 -0
@@ -1,10 +1,12 @@
1
- import { readFile } from "node:fs/promises";
1
+ import { readdir, readFile, stat } from "node:fs/promises";
2
2
  import path from "node:path";
3
+ import { AUTONOMOUS_RUNS_FILE } from "./autonomous-run-store.js";
3
4
  import { DIRECTORIES, EVENT_TYPES, FILES, WORKFLOW_DIR } from "./constants.js";
4
5
  import { validatePromptRegistryCoverage } from "./prompt-registry-validation.js";
5
6
  import { exists, readJson, resolveWorkflowPath } from "./fs-utils.js";
6
7
  import { validateEventArtifacts } from "./workspace-artifacts.js";
7
8
  import { taskIdsFor, validateLocks, validateRoles, validateTasks, } from "./validation.js";
9
+ const STALE_CLAIM_TTL_MS = 30 * 60 * 1000;
8
10
  export async function validateWorkspace(root = process.cwd(), options = {}) {
9
11
  const issues = [];
10
12
  const base = path.join(root, WORKFLOW_DIR);
@@ -20,7 +22,9 @@ export async function validateWorkspace(root = process.cwd(), options = {}) {
20
22
  const taskIds = await validateTaskFile(root, roleIds, issues);
21
23
  await validateLockFile(root, taskIds, roleIds, issues);
22
24
  await validateConfigFile(root, roleIds, issues);
23
- await validateEventLog(root, issues);
25
+ await validateEventLog(root, taskIds, issues);
26
+ await validateAutonomousRunLog(root, taskIds, issues);
27
+ await validateRecoveryArtifacts(base, issues);
24
28
  for (const issue of await validatePromptRegistryCoverage(root, options.promptRegistry ?? {})) {
25
29
  issues.push({ severity: issue.severity, message: issue.message });
26
30
  }
@@ -80,6 +84,7 @@ async function validateLockFile(root, taskIds, roleIds, issues) {
80
84
  try {
81
85
  const locks = await readJson(resolveWorkflowPath(root, FILES.locks), []);
82
86
  validateLocks(locks, taskIds, roleIds);
87
+ validateStaleClaimLocks(locks, issues);
83
88
  }
84
89
  catch (error) {
85
90
  issues.push({
@@ -157,7 +162,7 @@ function validateArchitectureChallengeConfig(config, roleIds, issues) {
157
162
  });
158
163
  }
159
164
  }
160
- async function validateEventLog(root, issues) {
165
+ async function validateEventLog(root, taskIds, issues) {
161
166
  const eventPath = resolveWorkflowPath(root, FILES.events);
162
167
  if (!(await exists(eventPath))) {
163
168
  return;
@@ -177,9 +182,43 @@ async function validateEventLog(root, issues) {
177
182
  continue;
178
183
  }
179
184
  validateEventShape(event, index + 1, issues);
185
+ validateEventReferences(event, index + 1, taskIds, issues);
180
186
  await validateArtifacts(root, event, index + 1, issues);
181
187
  }
182
188
  }
189
+ async function validateAutonomousRunLog(root, taskIds, issues) {
190
+ const runPath = resolveWorkflowPath(root, AUTONOMOUS_RUNS_FILE);
191
+ if (!(await exists(runPath))) {
192
+ return;
193
+ }
194
+ const content = await readFile(runPath, "utf8");
195
+ const lines = content.split("\n").filter((line) => line.trim() !== "");
196
+ for (const [index, line] of lines.entries()) {
197
+ let run;
198
+ try {
199
+ run = JSON.parse(line);
200
+ }
201
+ catch {
202
+ issues.push({
203
+ severity: "error",
204
+ message: `${AUTONOMOUS_RUNS_FILE}:${index + 1}: invalid JSON; remove or repair the partial run record before resuming`,
205
+ });
206
+ continue;
207
+ }
208
+ if (typeof run.id !== "string" || run.id.trim() === "") {
209
+ issues.push({
210
+ severity: "error",
211
+ message: `${AUTONOMOUS_RUNS_FILE}:${index + 1}: missing run id`,
212
+ });
213
+ }
214
+ if (typeof run.taskId !== "string" || !taskIds.has(run.taskId)) {
215
+ issues.push({
216
+ severity: "warning",
217
+ message: `${AUTONOMOUS_RUNS_FILE}:${index + 1}: run ${String(run.id ?? "unknown")} references unknown task ${String(run.taskId ?? "unknown")}; archive or restore the task before resuming this run`,
218
+ });
219
+ }
220
+ }
221
+ }
183
222
  function validateEventShape(event, line, issues) {
184
223
  if (!event.id ||
185
224
  !event.type ||
@@ -198,6 +237,64 @@ function validateEventShape(event, line, issues) {
198
237
  });
199
238
  }
200
239
  }
240
+ function validateEventReferences(event, line, taskIds, issues) {
241
+ if (event.taskId && !taskIds.has(event.taskId)) {
242
+ issues.push({
243
+ severity: "error",
244
+ message: `events.jsonl:${line}: event ${event.id} references unknown task ${event.taskId}`,
245
+ });
246
+ }
247
+ }
248
+ function validateStaleClaimLocks(locks, issues) {
249
+ const now = Date.now();
250
+ for (const lock of locks) {
251
+ const ageMs = now - Date.parse(lock.createdAt);
252
+ if (Number.isFinite(ageMs) && ageMs > STALE_CLAIM_TTL_MS) {
253
+ issues.push({
254
+ severity: "warning",
255
+ message: `locks.json: lock ${lock.id} for task ${lock.taskId} (${lock.path}) is stale after ${formatAge(ageMs)}; owner=${lock.ownerRole}; inspect worktree and run orchestra lock release --id ${lock.id} when safe`,
256
+ });
257
+ }
258
+ }
259
+ }
260
+ async function validateRecoveryArtifacts(base, issues) {
261
+ for (const artifact of await findRecoveryArtifacts(base)) {
262
+ const details = await stat(artifact.path);
263
+ const ageMs = Date.now() - details.mtimeMs;
264
+ if (artifact.kind === "lock") {
265
+ issues.push({
266
+ severity: "warning",
267
+ message: `${relativeWorkflowPath(base, artifact.path)}: stale file lock directory after ${formatAge(ageMs)}; if no Orchestra command is running, remove it to unblock writes`,
268
+ });
269
+ }
270
+ else {
271
+ issues.push({
272
+ severity: "warning",
273
+ message: `${relativeWorkflowPath(base, artifact.path)}: interrupted atomic write temp file after ${formatAge(ageMs)}; inspect and delete after confirming the target JSON is valid`,
274
+ });
275
+ }
276
+ }
277
+ }
278
+ async function findRecoveryArtifacts(directory) {
279
+ const artifacts = [];
280
+ if (!(await exists(directory)))
281
+ return artifacts;
282
+ for (const entry of await readdir(directory, { withFileTypes: true })) {
283
+ const entryPath = path.join(directory, entry.name);
284
+ if (entry.isDirectory()) {
285
+ if (entry.name.endsWith(".lock")) {
286
+ artifacts.push({ kind: "lock", path: entryPath });
287
+ }
288
+ else {
289
+ artifacts.push(...(await findRecoveryArtifacts(entryPath)));
290
+ }
291
+ }
292
+ else if (entry.name.endsWith(".tmp")) {
293
+ artifacts.push({ kind: "tmp", path: entryPath });
294
+ }
295
+ }
296
+ return artifacts;
297
+ }
201
298
  async function validateArtifacts(root, event, line, issues) {
202
299
  for (const issue of await validateEventArtifacts(root, event, line)) {
203
300
  issues.push({ severity: "error", message: issue.message });
@@ -206,4 +303,13 @@ async function validateArtifacts(root, event, line, issues) {
206
303
  function errorMessage(error) {
207
304
  return error instanceof Error ? error.message : String(error);
208
305
  }
306
+ function formatAge(ageMs) {
307
+ const minutes = Math.max(0, Math.round(ageMs / 60000));
308
+ if (minutes < 60)
309
+ return `${minutes}m`;
310
+ return `${Math.round(minutes / 60)}h`;
311
+ }
312
+ function relativeWorkflowPath(base, filePath) {
313
+ return path.join(WORKFLOW_DIR, path.relative(base, filePath));
314
+ }
209
315
  //# sourceMappingURL=workspace-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-validator.js","sourceRoot":"","sources":["../src/workspace-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EACL,UAAU,EACV,aAAa,EACb,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAC;AAoBzB,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,EACpB,UAEI,EAAE;IAEN,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAE3C,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QAC1B,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,CAAC,GAAG,YAAY,iBAAiB,CAAC;YAC1C,QAAQ,EAAE,EAAE;SACb,CAAC;IACJ,CAAC;IAED,MAAM,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,MAAM,gBAAgB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACvD,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAChD,MAAM,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM,8BAA8B,CACtD,IAAI,EACJ,OAAO,CAAC,cAAc,IAAI,EAAE,CAC7B,EAAE,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,MAAM,GAAG,MAAM;SAClB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC;SAC7C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,MAAM;SACpB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC;SAC/C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,IAAY,EACZ,MAAyB;IAEzB,KAAK,MAAM,SAAS,IAAI,WAAW,EAAE,CAAC;QACpC,MAAM,eAAe,CACnB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,EAC1B,GAAG,SAAS,wBAAwB,EACpC,MAAM,CACP,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;QAC5C,MAAM,eAAe,CACnB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,EACzB,GAAG,QAAQ,aAAa,EACxB,MAAM,CACP,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,QAAgB,EAChB,OAAe,EACf,MAAyB;IAEzB,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAY,EACZ,MAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAC1B,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,EACtC,EAAE,CACH,CAAC;QACF,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,eAAe,YAAY,CAAC,KAAK,CAAC,EAAE;SAC9C,CAAC,CAAC;QACH,OAAO,IAAI,GAAG,EAAU,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAY,EACZ,OAAoB,EACpB,MAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAC1B,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,EACtC,EAAE,CACH,CAAC;QACF,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,eAAe,YAAY,CAAC,KAAK,CAAC,EAAE;SAC9C,CAAC,CAAC;QACH,OAAO,IAAI,GAAG,EAAU,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAY,EACZ,OAAoB,EACpB,OAAoB,EACpB,MAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAC1B,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,EACtC,EAAE,CACH,CAAC;QACF,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,eAAe,YAAY,CAAC,KAAK,CAAC,EAAE;SAC9C,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,IAAY,EACZ,OAAoB,EACpB,MAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAC3B,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EACvC,EAAoB,CACrB,CAAC;QACF,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,uCAAuC;aACjD,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,sCAAsC;aAChD,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,KAAK,MAAM,YAAY,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC5D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;gBAChC,MAAM,CAAC,IAAI,CAAC;oBACV,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,wBAAwB,YAAY,cAAc;iBAC5D,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,EAAE,SAAS,EAAE,MAAM,CAAC;QACxD,KAAK,MAAM,aAAa,IAAI;YAC1B,QAAQ;YACR,MAAM;YACN,WAAW;YACX,aAAa;YACb,cAAc;SACf,EAAE,CAAC;YACF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC9D,MAAM,CAAC,IAAI,CAAC;oBACV,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,yCAAyC,aAAa,EAAE;iBAClE,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,mCAAmC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,gBAAgB,YAAY,CAAC,KAAK,CAAC,EAAE;SAC/C,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,mCAAmC,CAC1C,MAAsB,EACtB,OAAoB,EACpB,MAAyB;IAEzB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,EAAE,qBAAqB,CAAC;IACzD,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,CAAC;QACxB,OAAO;IACT,CAAC;IACD,IACE,SAAS,CAAC,IAAI,KAAK,SAAS;QAC5B,CAAC,OAAO,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EACpE,CAAC;QACD,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EACL,8EAA8E;SACjF,CAAC,CAAC;QACH,OAAO;IACT,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,iBAAiB,CAAC;IACzD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,6EAA6E,IAAI,EAAE;SAC7F,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAY,EACZ,MAAyB;IAEzB,MAAM,SAAS,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QAC/B,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5C,IAAI,KAAiB,CAAC;QACtB,IAAI,CAAC;YACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAe,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,gBAAgB,KAAK,GAAG,CAAC,gBAAgB;aACnD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,iBAAiB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAiB,EACjB,IAAY,EACZ,MAAyB;IAEzB,IACE,CAAC,KAAK,CAAC,EAAE;QACT,CAAC,KAAK,CAAC,IAAI;QACX,CAAC,KAAK,CAAC,KAAK;QACZ,CAAC,KAAK,CAAC,OAAO;QACd,CAAC,KAAK,CAAC,SAAS,EAChB,CAAC;QACD,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,gBAAgB,IAAI,iCAAiC;SAC/D,CAAC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC;YACV,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,gBAAgB,IAAI,wBAAwB,KAAK,CAAC,IAAI,EAAE;SAClE,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,IAAY,EACZ,KAAiB,EACjB,IAAY,EACZ,MAAyB;IAEzB,KAAK,MAAM,KAAK,IAAI,MAAM,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"workspace-validator.js","sourceRoot":"","sources":["../src/workspace-validator.ts"],"names":[],"mappings":"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"}
package/dist/workspace.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import path from "node:path";
2
2
  import { readFile, writeFile } from "node:fs/promises";
3
- import { DIRECTORIES, FILES, WORKFLOW_DIR } from "./constants.js";
3
+ import { DIRECTORIES, FILES, WORKFLOW_DIR, normalizeTaskStatus, } from "./constants.js";
4
4
  import { defaultConfig, defaultRoles } from "./defaults.js";
5
5
  import { writeAdvisoryArtifacts } from "./advisory-artifacts.js";
6
6
  import { defaultSourceOfTruthCatalog } from "./knowledge-base.js";
@@ -214,11 +214,17 @@ export async function loadWorkspace(root = process.cwd()) {
214
214
  }
215
215
  const roles = await readJson(path.join(base, FILES.roles), []);
216
216
  const roleIds = validateRoles(roles);
217
- const tasks = await readJson(path.join(base, FILES.tasks), []);
217
+ const tasks = normalizeTaskStatuses(await readJson(path.join(base, FILES.tasks), []));
218
218
  validateTasks(tasks, roleIds);
219
219
  const locks = await readJson(path.join(base, FILES.locks), []);
220
220
  return { base, roles, roleIds, tasks, locks };
221
221
  }
222
+ function normalizeTaskStatuses(tasks) {
223
+ return tasks.map((task) => ({
224
+ ...task,
225
+ status: normalizeTaskStatus(String(task.status)) ?? task.status,
226
+ }));
227
+ }
222
228
  export async function appendEvent(root, event) {
223
229
  const timestamp = new Date().toISOString();
224
230
  const entry = {
@@ -1 +1 @@
1
- {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace.js","sourceRoot":"","sources":["../src/workspace.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ # Open Orchestra 1.0.0 Adoption Guide
2
+
3
+ This guide is the documentation map for teams evaluating or adopting Open
4
+ Orchestra. Start here, then follow the focused document for the workflow you are
5
+ running.
6
+
7
+ ## Documentation Map
8
+
9
+ | Need | Start Here |
10
+ | --- | --- |
11
+ | Install and run the first task | [Quickstart](#quickstart) |
12
+ | Understand the control plane | [architecture.md](architecture.md) |
13
+ | Choose the stable command surface | [core-command-surface.md](core-command-surface.md) |
14
+ | Automate against JSON contracts | [command-contracts.md](command-contracts.md) |
15
+ | Run governed task delivery | [autonomous-workflow.md](autonomous-workflow.md) |
16
+ | Use Claude, Codex, OpenCode, Cursor, VS Code, or Windsurf | [runtime-adapters.md](runtime-adapters.md) and [runtime-llm-flow.md](runtime-llm-flow.md) |
17
+ | Configure provider routing | [runtime-llm-flow.md](runtime-llm-flow.md) |
18
+ | Sync tracker-backed work | [tracker-adapter-contract.md](tracker-adapter-contract.md) |
19
+ | Use the local web console | [orchestra-mvp.md](orchestra-mvp.md) |
20
+ | Prepare release evidence | [release-test-matrix.md](release-test-matrix.md) |
21
+ | Manage memory, prompts, and lessons | [source-of-truth-and-agent-learning.md](source-of-truth-and-agent-learning.md) |
22
+ | Extend skills or adapters | [extension-contracts.md](extension-contracts.md) |
23
+ | Upgrade pre-1.0 workspaces | [Migration](#migration) |
24
+
25
+ ## Quickstart
26
+
27
+ The first run should stay local and deterministic. No provider token is
28
+ required. First visible value means a completed local workflow run and
29
+ release-candidate preview in under ten minutes.
30
+
31
+ ```bash
32
+ npm install -g @jterrats/open-orchestra@latest
33
+ orchestra init
34
+ orchestra health --json
35
+ orchestra task add --id DEMO-001 --title "Ship a governed README update" --owner developer --paths "README.md"
36
+ orchestra workflow run --task DEMO-001 --gates none
37
+ orchestra status
38
+ orchestra release candidate --dry-run --json
39
+ ```
40
+
41
+ For production delivery, add explicit effort baselines, architecture sizing,
42
+ human gates, command evidence, and QA review before release checks:
43
+
44
+ ```bash
45
+ orchestra estimate --task STORY-001 --sizing s --solo-days 1 --ai-unguided-days 0.5 --ai-guided-days 0.25
46
+ orchestra decision add --task STORY-001 --owner architect --title "Story sizing" --decision "s 2 points" --context "Production story" --consequences "Developer phase can start"
47
+ orchestra workflow run --task STORY-001 --gates phase
48
+ orchestra evidence add --task STORY-001 --role developer --type command --summary "Validation passed" --command "npm run precommit" --exit-code 0
49
+ orchestra review --task STORY-001 --role qa --result approve --findings "Acceptance criteria covered" --recommendation "Ready for release review"
50
+ orchestra release check --json
51
+ ```
52
+
53
+ ## Concepts
54
+
55
+ Open Orchestra is a local control plane. The parent runtime remains the active
56
+ agent. Orchestra coordinates workflow state through task files, events,
57
+ handoffs, reviews, evidence, gates, locks, runtime briefs, and release reports.
58
+
59
+ Provider configuration is optional. Teams can start with deterministic local
60
+ workflow phases, then route roles to OpenAI, Anthropic, Gemini, Ollama, or other
61
+ runtime adapters when credentials and policy are ready.
62
+
63
+ ## Workflow Examples
64
+
65
+ Solo developer:
66
+
67
+ ```bash
68
+ orchestra task add --id SOLO-001 --title "Fix a small CLI bug" --owner developer --paths "src/cli.ts,test/orchestra.test.js"
69
+ orchestra workflow run --task SOLO-001 --gates none
70
+ orchestra release check --json
71
+ ```
72
+
73
+ Team workflow with human gates:
74
+
75
+ ```bash
76
+ orchestra workflow run --task TEAM-001 --gates phase
77
+ orchestra workflow gate-approve --run <run-id> --gate "po->architect" --approver "<name>" --rationale "Scope and acceptance criteria are ready"
78
+ orchestra workflow run --task TEAM-001 --resume <run-id>
79
+ ```
80
+
81
+ Local-only provider:
82
+
83
+ ```bash
84
+ orchestra model profile set --name local --role developer --provider ollama --model llama3.1
85
+ orchestra model profile apply --name local
86
+ orchestra model profile smoke --name local --json
87
+ ```
88
+
89
+ Tracker-integrated workflow:
90
+
91
+ ```bash
92
+ orchestra github sync --issue 123 --json
93
+ orchestra tracker sync --tracker jira --remote PROJ-123 --issue-file jira-123.json --json
94
+ orchestra task list --json --status pending,blocked,in_progress
95
+ ```
96
+
97
+ ## Provider And Tracker Safety
98
+
99
+ Never store raw provider keys in workflow files, docs, prompt registries, or
100
+ lessons. Use environment variables or provider-specific secret storage, and keep
101
+ `orchestra model providers --json` output sanitized before attaching evidence.
102
+
103
+ If `gh` or another tracker CLI is unavailable, use the MCP-backed tracker
104
+ fallback described in [tracker-adapter-contract.md](tracker-adapter-contract.md).
105
+ Fallbacks should produce normalized task metadata or a clear pending finding;
106
+ they should not invent remote state.
107
+
108
+ ## Release Operations
109
+
110
+ Before a production release candidate, run:
111
+
112
+ ```bash
113
+ npm run precommit
114
+ npm run test:e2e
115
+ npm run release:matrix -- --json
116
+ orchestra release check --json
117
+ ```
118
+
119
+ Attach command evidence with `orchestra evidence add`, then record QA and release
120
+ reviews with `orchestra review`.
121
+
122
+ ## Troubleshooting
123
+
124
+ - Run `orchestra health --json` when CLI, Node, Git, GitHub, Playwright, or
125
+ workspace readiness is unclear.
126
+ - Run `orchestra validate --pre-run --task <id> --json` before implementation
127
+ when workflow gates or evidence appear incomplete.
128
+ - Run `orchestra memory governance --json` if prompt registry or lesson history
129
+ is too large or may contain sensitive values.
130
+ - Run `orchestra diagnostics bundle --output support/orchestra-diagnostics.json`
131
+ before handing off environment-specific failures.
132
+
133
+ ## Migration
134
+
135
+ For pre-1.0 workspaces:
136
+
137
+ 1. Upgrade the package with `npm install -g @jterrats/open-orchestra@latest`.
138
+ 2. Run `orchestra upgrade --smoke --json`.
139
+ 3. Run `orchestra config migrate --dry-run --json`, then apply the migration
140
+ only after reviewing the planned backup and normalized config.
141
+ 4. Run `orchestra refresh --check --json` to detect stale generated bootstrap or
142
+ runtime files.
143
+ 5. Run `orchestra validate --pre-run --task <id> --json` before resuming active
144
+ tasks.
145
+
146
+ Migration must preserve `.agent-workflow/` history. Archive stale tasks or
147
+ lessons with explicit commands instead of manually editing runtime files.
@@ -2,20 +2,43 @@
2
2
 
3
3
  `orchestra workflow run` executes a full story lifecycle as a governed multi-phase sequence without requiring manual step-by-step commands. Each phase creates a sub-task, generates handoff artifacts, and persists state in an append-only run log at `.agent-workflow/workflow-runs.jsonl`.
4
4
 
5
+ ## End-To-End Lifecycle
6
+
7
+ Use the autonomous workflow when a task needs product framing, architecture,
8
+ implementation, QA evidence, and release readiness in one governed trace.
9
+
10
+ 1. Register or sync the backlog item with a task ID, paths, owner, and
11
+ acceptance criteria.
12
+ 2. Record an estimate and an architect sizing decision before implementation
13
+ work begins.
14
+ 3. Start `orchestra workflow run --task <id> --gates phase`.
15
+ 4. Review the PO to Architect gate. Approve it when the story is refined enough
16
+ for technical design and implementation.
17
+ 5. Let Architect, Developer, and QA phases produce handoffs, reviews, evidence,
18
+ and any clarification records needed to finish the work.
19
+ 6. Review the QA to Release gate. Approve it only when validation evidence,
20
+ unresolved risks, release notes, and rollback expectations are acceptable.
21
+ 7. Resume into Release, then run `orchestra benchmark --task <id>` to capture
22
+ actual delivery data for future estimates.
23
+
24
+ The run state, gate artifacts, handoffs, evidence, reviews, decisions, and
25
+ clarifications are persisted under `.agent-workflow/` so the delivery story can
26
+ be audited after the fact.
27
+
5
28
  ## Phase Graph
6
29
 
7
30
  ```
8
31
  PM → PO [gate] → Architect [sizing gate] → Developer → QA [gate] → Release
9
32
  ```
10
33
 
11
- | Phase | Role | Summary |
12
- |-------|------|---------|
13
- | `pm` | product_manager | Product framing, prioritization, and success metrics |
14
- | `po` | product_owner | Backlog refinement, story sizing, and acceptance criteria |
15
- | `architect` | architect | Technical tasking, design decisions, and size estimation |
16
- | `developer` | developer | Implementation against acceptance criteria |
17
- | `qa` | qa | Verification against acceptance criteria and edge cases |
18
- | `release` | release_manager | Release candidate validation and PR creation |
34
+ | Phase | Role | Output | Human checkpoint |
35
+ | ----------- | --------------- | -------------------------------------------------------------------- | --------------------------------------------------------- |
36
+ | `pm` | product_manager | Product framing, trade-offs, sequencing, and success metrics | None by default |
37
+ | `po` | product_owner | Refined scope, acceptance criteria, assumptions, and release value | `po→architect` when `--gates phase` or `--gates all` |
38
+ | `architect` | architect | Technical approach, affected boundaries, sizing decision, and risks | Architect sizing gate is always required |
39
+ | `developer` | developer | Code/docs changes, implementation notes, and Developer to QA handoff | Optional clarification to PO or Architect |
40
+ | `qa` | qa | Test plan, validation evidence, gaps, and QA recommendation | `qa→release` when `--gates phase` or `--gates all` |
41
+ | `release` | release_manager | Release readiness, rollback notes, and final completion state | Release approval is represented by the QA to Release gate |
19
42
 
20
43
  ## Gate Modes
21
44
 
@@ -25,14 +48,33 @@ orchestra workflow run --task <id> --gates phase # gates at po→architect and
25
48
  orchestra workflow run --task <id> --gates all # gate at every transition
26
49
  ```
27
50
 
28
- | Mode | Pauses at |
29
- |------|-----------|
30
- | `none` | Never — fully autonomous |
51
+ | Mode | Pauses at |
52
+ | ------- | ------------------------------- |
53
+ | `none` | Never — fully autonomous |
31
54
  | `phase` | `po→architect` and `qa→release` |
32
- | `all` | Every phase transition |
55
+ | `all` | Every phase transition |
33
56
 
34
57
  When a gate is reached, the run writes a review artifact to `.agent-workflow/approvals/` and prints the exact `--resume` command. The run resumes when a human approves and runs that command.
35
58
 
59
+ ## Gates Versus Clarifications
60
+
61
+ Gates and clarifications solve different problems. A gate is a planned approval
62
+ checkpoint between phases. A clarification is a mid-phase question that prevents
63
+ the active role from continuing safely.
64
+
65
+ | Situation | Use | Why |
66
+ | ------------------------------------------------------------------- | ------------- | --------------------------------------------------------------------- |
67
+ | PO acceptance criteria need human confirmation before design starts | Gate | This is a planned phase boundary |
68
+ | QA evidence is complete but release risk needs sign-off | Gate | This determines whether Release may proceed |
69
+ | Developer needs to know whether empty input is valid | Clarification | The active phase is blocked by a product or architecture question |
70
+ | QA finds ambiguous expected behavior while writing tests | Clarification | The answer should unblock QA without inventing a new phase boundary |
71
+ | Architect chooses between two durable system approaches | Decision | This is an architecture record, not a pause by itself |
72
+ | Reviewer finds a defect after evidence is attached | Review | This is a quality finding that can approve, block, or request changes |
73
+
74
+ Do not use gates for every question. Use `workflow clarify` when the question is
75
+ specific, answerable by PO or Architect, and the current Developer or QA phase
76
+ can continue after the answer is recorded.
77
+
36
78
  ## Provider-Backed Phase Execution
37
79
 
38
80
  By default, workflow phases remain deterministic because the default provider is `none`. When a role or default provider route is configured to a non-`none` provider, each phase builds a prompt from task context, rendered skills, the active phase playbook, and prior handoff content, then writes the provider output to `.agent-workflow/runs/<task>/<phase>/`.
@@ -75,6 +117,23 @@ Use playbooks for phase-specific guidance that should not live in always-loaded
75
117
 
76
118
  Playbooks are provider-agnostic. They are loaded into provider-backed phase prompts, `workflow render --phase <phase>`, runtime briefs, and runtime delegation packets. Only the active phase playbook is loaded.
77
119
 
120
+ ### Authoring Playbooks
121
+
122
+ Write playbooks as concise phase instructions, not as a second root
123
+ `AGENTS.md`. A good playbook should include:
124
+
125
+ - Role objective for the phase.
126
+ - Inputs the role should read before acting.
127
+ - Required outputs and artifact names.
128
+ - Quality gates or review checks owned by that role.
129
+ - Evidence that must be recorded before handoff.
130
+ - Escalation rules for clarifications, decisions, reviews, or security checks.
131
+
132
+ Keep project-specific conventions in the project playbooks and keep stack-wide
133
+ policy in root instructions or `rules/*.mdc`. If a playbook starts duplicating
134
+ all phases, split the shared rule into `rules/` and leave only phase-specific
135
+ work in the playbook.
136
+
78
137
  Configuration is convention-over-config by default, with optional overrides:
79
138
 
80
139
  ```json
@@ -90,6 +149,20 @@ Configuration is convention-over-config by default, with optional overrides:
90
149
 
91
150
  If a playbook file is missing, Orchestra uses deterministic fallback guidance and surfaces a warning in rendered content.
92
151
 
152
+ ### Playbook Resolution
153
+
154
+ Resolution order is:
155
+
156
+ 1. `workflow.phasePlaybooks[phase]` in `.agent-workflow/config.json`, when set.
157
+ 2. `<playbooksDir>/<phase>.md`, where `playbooksDir` defaults to
158
+ `.agent-workflow/playbooks`.
159
+ 3. Deterministic fallback guidance built into Open Orchestra.
160
+
161
+ Use `orchestra workflow render --task <id> --phase <phase>` to inspect the exact
162
+ playbook content that a runtime brief or provider-backed phase will receive.
163
+ Use `orchestra health --json` to confirm the workflow state is readable before a
164
+ run.
165
+
93
166
  ## Architect Sizing Gate
94
167
 
95
168
  Regardless of `--gates` mode, the architect phase always requires a valid sizing decision before the developer phase starts. Provider-backed architect phases record that decision from structured phase output. Deterministic architect phases record a conservative default (`m [3 points]`) when no architect sizing exists, so unattended local runs remain complete and auditable. If the provider returns an unsupported sizing label, Orchestra normalizes it back to the same default before recording the decision.
@@ -154,6 +227,24 @@ documentation or public-site changes. If `.agent-workflow/config.json` already
154
227
  defines `workflow.phaseSequence`, that manual sequence remains authoritative and
155
228
  the recommendations are reported without silently changing the run.
156
229
 
230
+ ## Web and Runtime Progress
231
+
232
+ Workflow progress is available from both CLI and web-supported surfaces:
233
+
234
+ ```bash
235
+ orchestra workflow runs --json
236
+ orchestra web
237
+ ```
238
+
239
+ The local web console reads `/api/workflow/progress` and shows the active phase,
240
+ role, provider/model, elapsed time, fallback state, failed reason, paused gates,
241
+ and resumable runs. This is a local web API contract; it does not execute
242
+ runtime agents or call provider APIs by itself.
243
+
244
+ Provider-backed phases also print progress in `workflow run` human output. The
245
+ default provider remains `none`, so deterministic workflow runs do not require
246
+ model credentials.
247
+
157
248
  ## Clarification Loop
158
249
 
159
250
  Developers or QA engineers can surface blocking questions to the PO or architect mid-phase. The active phase is suspended until the answer is recorded, then resumed normally.
@@ -186,24 +277,24 @@ Clarification records are persisted in `.agent-workflow/clarifications.jsonl` an
186
277
 
187
278
  ## Run States
188
279
 
189
- | Status | Meaning |
190
- |--------|---------|
191
- | `running` | Execution in progress |
192
- | `paused` | Waiting for human gate approval or clarification answer |
193
- | `done` | All phases completed successfully |
194
- | `failed` | Run stopped due to a missing prerequisite (e.g. sizing decision) |
280
+ | Status | Meaning |
281
+ | --------- | ---------------------------------------------------------------- |
282
+ | `running` | Execution in progress |
283
+ | `paused` | Waiting for human gate approval or clarification answer |
284
+ | `done` | All phases completed successfully |
285
+ | `failed` | Run stopped due to a missing prerequisite (e.g. sizing decision) |
195
286
 
196
287
  ## Phase States
197
288
 
198
- | Status | Meaning |
199
- |--------|---------|
200
- | `pending` | Not yet started |
201
- | `running` | Currently executing |
202
- | `done` | Completed and handed off |
203
- | `gate_paused` | Completed; waiting for human gate approval before next phase |
204
- | `awaiting_clarification` | Suspended; waiting for a clarification answer |
205
- | `qa_failed` | QA found issues; developer phase will retry |
206
- | `blocked` | Blocked by an unresolvable condition |
289
+ | Status | Meaning |
290
+ | ------------------------ | ------------------------------------------------------------ |
291
+ | `pending` | Not yet started |
292
+ | `running` | Currently executing |
293
+ | `done` | Completed and handed off |
294
+ | `gate_paused` | Completed; waiting for human gate approval before next phase |
295
+ | `awaiting_clarification` | Suspended; waiting for a clarification answer |
296
+ | `qa_failed` | QA found issues; developer phase will retry |
297
+ | `blocked` | Blocked by an unresolvable condition |
207
298
 
208
299
  ## Gate Pause Notifications
209
300