@jterrats/open-orchestra 0.4.2-beta.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +50 -5
  2. package/dist/advisory-artifacts.d.ts +6 -0
  3. package/dist/advisory-artifacts.js +37 -1
  4. package/dist/advisory-artifacts.js.map +1 -1
  5. package/dist/assets/web-console.js +297 -4
  6. package/dist/cli.js +13 -118
  7. package/dist/cli.js.map +1 -1
  8. package/dist/command-manifest.d.ts +3 -0
  9. package/dist/command-manifest.js +132 -42
  10. package/dist/command-manifest.js.map +1 -1
  11. package/dist/command-utils.d.ts +5 -0
  12. package/dist/command-utils.js +23 -0
  13. package/dist/command-utils.js.map +1 -1
  14. package/dist/commands.d.ts +6 -42
  15. package/dist/commands.js +204 -1372
  16. package/dist/commands.js.map +1 -1
  17. package/dist/constants.js +1 -0
  18. package/dist/constants.js.map +1 -1
  19. package/dist/delivery-commands.d.ts +10 -0
  20. package/dist/delivery-commands.js +152 -0
  21. package/dist/delivery-commands.js.map +1 -0
  22. package/dist/github.d.ts +50 -1
  23. package/dist/github.js +234 -0
  24. package/dist/github.js.map +1 -1
  25. package/dist/health-checks.d.ts +1 -0
  26. package/dist/health-checks.js +11 -1
  27. package/dist/health-checks.js.map +1 -1
  28. package/dist/health-commands.js +2 -0
  29. package/dist/health-commands.js.map +1 -1
  30. package/dist/memory.d.ts +2 -1
  31. package/dist/memory.js +71 -10
  32. package/dist/memory.js.map +1 -1
  33. package/dist/package-update-check.d.ts +5 -1
  34. package/dist/package-update-check.js +20 -8
  35. package/dist/package-update-check.js.map +1 -1
  36. package/dist/planning-commands.d.ts +14 -0
  37. package/dist/planning-commands.js +372 -0
  38. package/dist/planning-commands.js.map +1 -0
  39. package/dist/release-candidate.d.ts +2 -0
  40. package/dist/release-candidate.js +9 -14
  41. package/dist/release-candidate.js.map +1 -1
  42. package/dist/release-commands.d.ts +2 -0
  43. package/dist/release-commands.js +58 -6
  44. package/dist/release-commands.js.map +1 -1
  45. package/dist/release-readiness.d.ts +49 -0
  46. package/dist/release-readiness.js +172 -0
  47. package/dist/release-readiness.js.map +1 -0
  48. package/dist/runtime-commands.js +2 -5
  49. package/dist/runtime-commands.js.map +1 -1
  50. package/dist/setup-agents-import.js +1 -3
  51. package/dist/setup-agents-import.js.map +1 -1
  52. package/dist/skills-catalog-service.d.ts +2 -0
  53. package/dist/skills-catalog-service.js +8 -0
  54. package/dist/skills-catalog-service.js.map +1 -0
  55. package/dist/skills-catalog.d.ts +2 -0
  56. package/dist/skills-catalog.js +389 -0
  57. package/dist/skills-catalog.js.map +1 -0
  58. package/dist/skills-commands.js +1 -11
  59. package/dist/skills-commands.js.map +1 -1
  60. package/dist/skills-events.d.ts +9 -0
  61. package/dist/skills-events.js +50 -0
  62. package/dist/skills-events.js.map +1 -0
  63. package/dist/skills-memory.d.ts +18 -0
  64. package/dist/skills-memory.js +127 -0
  65. package/dist/skills-memory.js.map +1 -0
  66. package/dist/skills-planning.d.ts +2 -0
  67. package/dist/skills-planning.js +87 -0
  68. package/dist/skills-planning.js.map +1 -0
  69. package/dist/skills-render.d.ts +14 -0
  70. package/dist/skills-render.js +83 -0
  71. package/dist/skills-render.js.map +1 -0
  72. package/dist/skills-validation.d.ts +2 -0
  73. package/dist/skills-validation.js +49 -0
  74. package/dist/skills-validation.js.map +1 -0
  75. package/dist/skills.d.ts +6 -42
  76. package/dist/skills.js +6 -773
  77. package/dist/skills.js.map +1 -1
  78. package/dist/task-graph-commands.d.ts +14 -0
  79. package/dist/task-graph-commands.js +367 -0
  80. package/dist/task-graph-commands.js.map +1 -0
  81. package/dist/types/context.d.ts +12 -0
  82. package/dist/types/context.js +2 -0
  83. package/dist/types/context.js.map +1 -0
  84. package/dist/types/metrics.d.ts +114 -0
  85. package/dist/types/metrics.js +2 -0
  86. package/dist/types/metrics.js.map +1 -0
  87. package/dist/types/model-config.d.ts +212 -0
  88. package/dist/types/model-config.js +2 -0
  89. package/dist/types/model-config.js.map +1 -0
  90. package/dist/types/runtime.d.ts +93 -0
  91. package/dist/types/runtime.js +2 -0
  92. package/dist/types/runtime.js.map +1 -0
  93. package/dist/types/skills.d.ts +147 -0
  94. package/dist/types/skills.js +2 -0
  95. package/dist/types/skills.js.map +1 -0
  96. package/dist/types/tasks.d.ts +171 -0
  97. package/dist/types/tasks.js +2 -0
  98. package/dist/types/tasks.js.map +1 -0
  99. package/dist/types/workflow-run.d.ts +79 -0
  100. package/dist/types/workflow-run.js +2 -0
  101. package/dist/types/workflow-run.js.map +1 -0
  102. package/dist/types.d.ts +12 -833
  103. package/dist/types.js +1 -1
  104. package/dist/types.js.map +1 -1
  105. package/dist/upgrade-commands.d.ts +2 -0
  106. package/dist/upgrade-commands.js +65 -0
  107. package/dist/upgrade-commands.js.map +1 -0
  108. package/dist/web-api-read-routes.d.ts +5 -0
  109. package/dist/web-api-read-routes.js +37 -0
  110. package/dist/web-api-read-routes.js.map +1 -0
  111. package/dist/web-api.d.ts +1 -3
  112. package/dist/web-api.js +23 -45
  113. package/dist/web-api.js.map +1 -1
  114. package/dist/web-console-sections.d.ts +2 -0
  115. package/dist/web-console-sections.js +7 -0
  116. package/dist/web-console-sections.js.map +1 -0
  117. package/dist/web-console.js +23 -3
  118. package/dist/web-console.js.map +1 -1
  119. package/dist/workflow-approval-service.d.ts +9 -0
  120. package/dist/workflow-approval-service.js +126 -0
  121. package/dist/workflow-approval-service.js.map +1 -0
  122. package/dist/workflow-approval-utils.d.ts +10 -0
  123. package/dist/workflow-approval-utils.js +82 -0
  124. package/dist/workflow-approval-utils.js.map +1 -0
  125. package/dist/workflow-budget-utils.d.ts +7 -0
  126. package/dist/workflow-budget-utils.js +96 -0
  127. package/dist/workflow-budget-utils.js.map +1 -0
  128. package/dist/workflow-evidence-service.d.ts +7 -0
  129. package/dist/workflow-evidence-service.js +100 -0
  130. package/dist/workflow-evidence-service.js.map +1 -0
  131. package/dist/workflow-run-commands.d.ts +8 -0
  132. package/dist/workflow-run-commands.js +479 -0
  133. package/dist/workflow-run-commands.js.map +1 -0
  134. package/dist/workflow-services.d.ts +5 -17
  135. package/dist/workflow-services.js +26 -479
  136. package/dist/workflow-services.js.map +1 -1
  137. package/dist/workflow-summary-service.d.ts +4 -0
  138. package/dist/workflow-summary-service.js +82 -0
  139. package/dist/workflow-summary-service.js.map +1 -0
  140. package/dist/workspace-classification.js +10 -10
  141. package/dist/workspace-classification.js.map +1 -1
  142. package/dist/workspace.d.ts +18 -1
  143. package/dist/workspace.js +66 -4
  144. package/dist/workspace.js.map +1 -1
  145. package/docs/architecture.md +35 -0
  146. package/docs/orchestra-mvp.md +187 -114
  147. package/docs/package-naming.md +20 -0
  148. package/docs/persona-workflows.md +209 -0
  149. package/docs/runtime-adapters.md +15 -14
  150. package/docs/runtime-llm-flow.md +29 -28
  151. package/package.json +3 -2
@@ -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,35 @@
1
+ # Architecture
2
+
3
+ Open Orchestra is a local-first workflow control plane. The CLI remains the
4
+ source of truth, while web, VS Code, and agent runtimes use the same workflow
5
+ files and JSON command contracts.
6
+
7
+ ![Open Orchestra architecture](../site/architecture.svg)
8
+
9
+ ## How To Read It
10
+
11
+ - **Entry points** are humans, agent runtimes, the local web console, and IDE
12
+ surfaces. They all route through the public `orchestra` command surface.
13
+ - **CLI layer** owns command parsing, command manifest metadata, JSON contracts,
14
+ and stable local behavior.
15
+ - **Core workflow services** coordinate task graphs, autonomous workflow runs,
16
+ gates, role-scoped memory, skills, and release readiness.
17
+ - **State and integrations** stay explicit: `.agent-workflow/` is local
18
+ durable state; model providers and trackers are integration boundaries; docs,
19
+ site, npm, and release tags are delivery outputs.
20
+
21
+ ## Design Principles
22
+
23
+ - Local workflow state is durable and reviewable.
24
+ - Network calls are explicit, opt-in, or CI-owned.
25
+ - Tracker integrations use stable child-process calls locally, or runtime MCP
26
+ skills/adapters when the tracker belongs to the agent runtime.
27
+ - Release decisions are evidence-based: acceptance coverage, smoke, rollback,
28
+ locks, reviews, and blockers are visible before publish.
29
+
30
+ ## Related Docs
31
+
32
+ - [MVP guide](orchestra-mvp.md)
33
+ - [Persona workflows](persona-workflows.md)
34
+ - [Runtime adapters](runtime-adapters.md)
35
+ - [Traceability flow](traceability-flow.md)
@@ -4,6 +4,9 @@ Open Orchestra is a local-first, provider-agnostic framework for governed multi-
4
4
 
5
5
  It stores workflow state in `.agent-workflow/` and coordinates agents through files, events, handoffs, reviews, evidence, gates, locks, and model provenance.
6
6
 
7
+ See [architecture.md](architecture.md) for the system diagram and layer
8
+ overview.
9
+
7
10
  ## Compatibility
8
11
 
9
12
  - `orchestra` is the only public CLI name.
@@ -38,119 +41,176 @@ Open Orchestra should treat skills as demand-loaded capabilities. Main files suc
38
41
 
39
42
  ## Commands
40
43
 
44
+ Use the installed CLI form in project documentation and automation:
45
+
41
46
  ```bash
42
- npm install
43
- npm run build
44
- npm run lint
45
- npm run typecheck
46
- npm run secret-scan
47
- npm test
48
- npm run hooks:install
49
- node bin/orchestra.js init
50
- node bin/orchestra.js status
51
- node bin/orchestra.js status --json
52
- node bin/orchestra.js validate
53
- node bin/orchestra.js validate --json
54
- node bin/orchestra.js task add --id TASK-1 --title "First task" --owner developer --paths src/commands.ts
55
- node bin/orchestra.js task list
56
- node bin/orchestra.js task update --id TASK-1 --status in_progress
57
- node bin/orchestra.js task deps --id TASK-1
58
- node bin/orchestra.js graph plan
59
- node bin/orchestra.js graph plan --json
60
- node bin/orchestra.js graph run-next
61
- node bin/orchestra.js graph run-next --json
62
- node bin/orchestra.js graph run-ready
63
- node bin/orchestra.js graph run-ready --json
64
- node bin/orchestra.js lock claim --task TASK-1 --role developer --path src/commands.ts --reason "editing commands"
65
- node bin/orchestra.js lock list
66
- node bin/orchestra.js lock release --id lock-123
67
- node bin/orchestra.js roles list
68
- node bin/orchestra.js roles list --json
69
- node bin/orchestra.js skills list
70
- node bin/orchestra.js skills list --json
71
- node bin/orchestra.js skills plan --task TASK-1
72
- node bin/orchestra.js skills plan --task TASK-1 --json
73
- node bin/orchestra.js skills render --target generic --task TASK-1
74
- node bin/orchestra.js skills render --target claude --task TASK-1
75
- node bin/orchestra.js skills render --target cursor --skills static-analysis,playwright-evidence
76
- node bin/orchestra.js skills render --target codex --task TASK-1
77
- node bin/orchestra.js skills render --target vscode --task TASK-1 --json
78
- node bin/orchestra.js skills validate
79
- node bin/orchestra.js skills validate --json
80
- node bin/orchestra.js sources list
81
- node bin/orchestra.js sources list --json
82
- node bin/orchestra.js lessons list
83
- node bin/orchestra.js lessons add --operation "shell edit" --failed-action "bad escaping" --error-signature "syntax error" --root-cause "unescaped token" --fix "escape token" --prevention "dry run first" --applies-to node,markdown --verified-by precommit
84
- node bin/orchestra.js lessons promote --to doc --filter escaping
85
- node bin/orchestra.js readiness --task TASK-1
86
- node bin/orchestra.js gate --gate architecture --task TASK-1
87
- node bin/orchestra.js gate --gate qa-release --task TASK-1
88
- node bin/orchestra.js gate --gate risk-review --task TASK-1
89
- node bin/orchestra.js gate --gate release-readiness --task TASK-1
90
- node bin/orchestra.js review list
91
- node bin/orchestra.js decision add --task TASK-1 --owner architect --title "Use service layer" --context "CLI should stay thin" --decision "Move behavior to services" --consequences "Reusable core"
92
- node bin/orchestra.js decision list --task TASK-1
93
- node bin/orchestra.js evidence list
94
- node bin/orchestra.js usage --task TASK-1
95
- node bin/orchestra.js usage --task TASK-1 --json
96
- node bin/orchestra.js budget check --task TASK-1
97
- node bin/orchestra.js budget check --task TASK-1 --json
98
- node bin/orchestra.js config show
99
- node bin/orchestra.js config show --json
100
- node bin/orchestra.js approvals list --task TASK-1
101
- node bin/orchestra.js approvals show --id TASK-1-budget-fallback
102
- node bin/orchestra.js approvals approve --id TASK-1-budget-fallback --approver "user" --rationale "approved cheaper fallback"
103
- node bin/orchestra.js approvals reject --id TASK-1-budget-fallback --approver "user" --rationale "not approved"
104
- node bin/orchestra.js summary
105
- node bin/orchestra.js summary --json
106
- node bin/orchestra.js pr-summary --task TASK-1
107
- node bin/orchestra.js pr-summary --task TASK-1 --json
108
- node bin/orchestra.js context --task TASK-1
109
- node bin/orchestra.js context --task TASK-1 --json
110
- node bin/orchestra.js plan --task TASK-1
111
- node bin/orchestra.js plan --task TASK-1 --json
112
- node bin/orchestra.js run --task TASK-1
113
- node bin/orchestra.js run --task TASK-1 --json
114
- node bin/orchestra.js run --task TASK-1 --approve-budget-fallback --approver "user" --rationale "approved cheaper fallback"
115
- node bin/orchestra.js run --task TASK-1 --json # consumes stored approved budget fallback when present
116
- node bin/orchestra.js playwright plan --task TASK-1
117
- node bin/orchestra.js playwright plan --task TASK-1 --json
118
- node bin/orchestra.js playwright evidence --task TASK-1 --kind trace --path trace.zip --summary "trace captured"
119
- node bin/orchestra.js model providers
120
- node bin/orchestra.js model providers --json
121
- node bin/orchestra.js model set-role --role developer --provider openai --model gpt-example
122
- node bin/orchestra.js model complete-fake --provider primary --model fake-model --prompt "hello" --fallbacks backup --fail-provider primary
123
- node bin/orchestra.js model provenance add --task TASK-1 --role developer --provider openai --model gpt-example --prompt-id prompt-1 --response-id response-1 --finish-reason stop
124
- node bin/orchestra.js model provenance list --task TASK-1 --json
125
-
126
- # Autonomous workflow
127
- node bin/orchestra.js workflow run --task TASK-1 --dry-run --gates phase
128
- node bin/orchestra.js workflow run --task TASK-1 --gates none
129
- node bin/orchestra.js workflow run --task TASK-1 --gates phase
130
- node bin/orchestra.js workflow run --task TASK-1 --gates all
131
- node bin/orchestra.js workflow run --task TASK-1 --resume <run-id>
132
- node bin/orchestra.js workflow runs
133
- node bin/orchestra.js workflow runs --json
134
-
135
- # Clarification loop
136
- node bin/orchestra.js workflow clarify --run <run-id> --from developer --to po --question "..."
137
- node bin/orchestra.js workflow clarify --run <run-id> --from developer --to architect --question "..."
138
- node bin/orchestra.js workflow clarify --run <run-id> --from qa --to po --question "..."
139
- node bin/orchestra.js workflow clarify-respond --run <run-id> --clarification <id> --answer "..."
140
- node bin/orchestra.js workflow clarify-list --run <run-id>
141
- node bin/orchestra.js workflow clarify-list --run <run-id> --json
142
-
143
- # Benchmark & burndown
144
- node bin/orchestra.js estimate --task TASK-1 --sizing m --solo-days 5 --ai-unguided-days 3
145
- node bin/orchestra.js estimate --task TASK-1 --sizing l --solo-days 8 --ai-unguided-days 5 --confidence high --declared-by pm --json
146
- node bin/orchestra.js benchmark --task TASK-1
147
- node bin/orchestra.js benchmark --task TASK-1 --json
148
- node bin/orchestra.js benchmark --summary
149
- node bin/orchestra.js benchmark --summary --json
150
- node bin/orchestra.js burndown --sprint TASK-1,TASK-2,TASK-3
151
- node bin/orchestra.js burndown --sprint TASK-1,TASK-2,TASK-3 --json
47
+ orchestra init
48
+ orchestra health --json
49
+ orchestra commands manifest --json
50
+ orchestra status --json
152
51
  ```
153
52
 
53
+ For installed-package dogfooding, run `npm run test:e2e:init` after installing
54
+ the package under test. The suite resolves `orchestra` from `PATH`, uses real
55
+ temporary workspaces, and avoids Unix shell features so the coverage can run on
56
+ Windows, Linux, and macOS.
57
+
58
+ The first-use E2E path starts from an empty temporary project and exercises the
59
+ installed binary through `orchestra init`, `orchestra health --json`,
60
+ `orchestra task add`, `orchestra status --json`, `orchestra handoff`,
61
+ `orchestra evidence add`, and `orchestra gate --gate release-readiness`. The
62
+ same test intentionally checks the blocked release-readiness output before
63
+ evidence is attached, so missing fields such as QA evidence or a developer to QA
64
+ handoff remain visible as recovery steps.
65
+
66
+ Supported local development platforms are macOS, Linux, and Windows with a
67
+ current Node.js runtime. The core validation scripts are written in Node where
68
+ shell differences matter; in particular, `npm run validate:workflow` does not
69
+ require `sh` and runs the local build plus `orchestra validate` whenever
70
+ `.agent-workflow/` exists. CI runs installed-package dogfooding and workflow
71
+ validation on `ubuntu-latest`, `macos-latest`, and `windows-latest`.
72
+
73
+ When developing Open Orchestra itself, run `npm install`, `npm run build`,
74
+ `npm run lint`, `npm run typecheck`, `npm run secret-scan`, `npm test`, and use
75
+ `node bin/orchestra.js ...` when you need to exercise the local checkout before
76
+ installing or packing it.
77
+
78
+ Core task and graph commands:
79
+
80
+ ```bash
81
+ orchestra task add --id TASK-1 --title "First task" --owner developer --paths src/commands.ts
82
+ orchestra task list --json
83
+ orchestra task update --id TASK-1 --status in_progress
84
+ orchestra task deps --id TASK-1 --json
85
+ orchestra graph plan --json
86
+ orchestra graph run-next --json
87
+ orchestra graph run-ready --json
88
+ orchestra github sync --issue 169 --task GITHUB-SYNC --comment --transport gh --dry-run --json
89
+ orchestra lock claim --task TASK-1 --role developer --path src/commands.ts --reason "editing commands"
90
+ orchestra lock list --json
91
+ ```
92
+
93
+ Issue sync maps visible backlog into workflow state with explicit, reviewable
94
+ mutations. By default `orchestra github sync --issue <number>` uses
95
+ `--transport gh`, reads issue title, body sections, labels, milestone, URL, and
96
+ state through the GitHub CLI, and creates or updates task `GH-<number>`. Use
97
+ `--task <id>` to preserve a named backlog item such as `GITHUB-SYNC`, `--owner`
98
+ and `--status` to override local task metadata, `--comment` to upsert a single
99
+ idempotent issue comment with status and evidence counts, and `--close` only
100
+ when release readiness passes. If release readiness is blocked, closure
101
+ requires `--accepted-risk <text>`. `--dry-run --json` prints planned commands
102
+ without writing local tasks, comments, or issue state.
103
+
104
+ The transport boundary is intentionally tracker-agnostic. The local CLI can
105
+ execute `gh` because it is a child process with stable arguments. MCP-backed
106
+ trackers such as GitHub MCP, Jira, Bitbucket, GitLab, or a custom work tracker
107
+ belong to the agent runtime rather than the Node process, so they should be
108
+ exposed through a tracker skill/adapter that implements equivalent
109
+ issue-read/comment-upsert/close operations. `--transport mcp-skill` records that
110
+ intent and fails locally with recovery guidance unless a runtime injects a
111
+ compatible runner.
112
+
113
+ Default mapping is intentionally small: issue title -> task title, issue URL ->
114
+ backlog item, `## Acceptance Criteria` bullets -> task acceptance criteria,
115
+ labels -> risks, milestone -> scope, and `## Test Evidence Required` -> test
116
+ strategy. Teams can make the mapping explicit per run with command flags until
117
+ project-level mapping policy is added.
118
+
119
+ Advisory mode is the consulting or audit entry point. It creates
120
+ `.agent-workflow/advisory/` artifacts without writing root instruction files
121
+ such as `AGENTS.md` or `ORCHESTRA.md`. Use it when the target repository still
122
+ needs evaluation or owner approval:
123
+
124
+ ```bash
125
+ orchestra init --advisory
126
+ orchestra status --json
127
+ orchestra health --json
128
+ orchestra advisory convert --json
129
+ ```
130
+
131
+ The advisory artifacts include a README, role guides, portable decisions,
132
+ conversion guide, and `project-task.json`. After the target project is
133
+ confirmed, `orchestra advisory convert` promotes that JSON into a real workflow
134
+ task while keeping writes inside workflow-owned paths.
135
+
136
+ Context, memory, skills, and runtime rendering:
137
+
138
+ ```bash
139
+ orchestra context --task TASK-1 --json
140
+ orchestra context --task TASK-1 --budget 12000 --json
141
+ orchestra memory query --task TASK-1 --role developer --budget 2000 --json
142
+ orchestra memory hook --point before_plan --task TASK-1 --role qa --json
143
+ orchestra skills plan --task TASK-1 --json
144
+ orchestra skills render --target codex --task TASK-1
145
+ orchestra protocol render --target codex --task TASK-1
146
+ orchestra workflow render --target codex --task TASK-1
147
+ orchestra runtime brief --task TASK-1 --runtime codex-cli --json
148
+ ```
149
+
150
+ Memory hooks are explicit retrieval points for lessons learned and prompt
151
+ registry entries. Bundles are scoped by role (`product_owner`, `architect`,
152
+ `developer`, `qa`, or `release_manager`) and report token budget, estimated
153
+ tokens, kept and omitted sections, and trimming rationale in both JSON and human
154
+ output.
155
+
156
+ Delivery evidence, handoff, and gates:
157
+
158
+ ```bash
159
+ orchestra readiness --task TASK-1
160
+ orchestra handoff --task TASK-1 --from developer --to qa --changed "..." --behavior "..." --tests "..." --commands "..." --update-owner
161
+ orchestra evidence add --task TASK-1 --role developer --type command --summary "npm test passed" --command "npm test" --exit-code 0
162
+ orchestra review --task TASK-1 --role qa --result approve --findings "..." --recommendation "..."
163
+ orchestra gate --gate architecture --task TASK-1
164
+ orchestra gate --gate qa-release --task TASK-1
165
+ orchestra gate --gate risk-review --task TASK-1
166
+ orchestra gate --gate release-readiness --task TASK-1
167
+ ```
168
+
169
+ `orchestra release check --json` includes a structured `releaseReadiness`
170
+ report when the workspace is initialized. It maps each acceptance criterion to
171
+ traceable evidence, flags uncovered AC, unresolved blocker reviews, active
172
+ locks, and missing smoke or rollback evidence. Browser/UI criteria require
173
+ Playwright-style screenshot, trace, or video evidence unless the task has an
174
+ accepted risk.
175
+
176
+ Upgrade dogfooding:
177
+
178
+ ```bash
179
+ orchestra upgrade --json
180
+ orchestra upgrade --beta --json
181
+ orchestra upgrade --smoke --json
182
+ ```
183
+
184
+ Stable installs use `npm install -g @jterrats/open-orchestra@latest`; beta
185
+ dogfooding uses `npm install -g @jterrats/open-orchestra@beta` or the exact
186
+ version reported by `orchestra upgrade --beta`. After upgrading, run the smoke
187
+ command shown by the CLI to verify the installed binary and health report.
188
+
189
+ Release go/no-go:
190
+
191
+ - Run `npm run precommit` locally before pushing release changes.
192
+ - Confirm GitHub Actions CI is green for the latest pushed HEAD.
193
+ - Confirm installed-package dogfooding passes on `ubuntu-latest`,
194
+ `macos-latest`, and `windows-latest`.
195
+ - Confirm `Create release tag`, site publish, and npm publish workflows are
196
+ successful for the intended release commit.
197
+
198
+ Model routing, budget, telemetry, and release:
199
+
200
+ ```bash
201
+ orchestra model providers --json
202
+ orchestra model set-role --role developer --provider openai --model gpt-example
203
+ orchestra budget check --task TASK-1 --json
204
+ orchestra telemetry status --json
205
+ orchestra release check --json
206
+ orchestra release candidate --version 1.0.0-beta.1 --json
207
+ orchestra release tag --version 1.0.0-beta.1 --approve --approver "user" --json
208
+ ```
209
+
210
+ Use `orchestra commands manifest --json` as the canonical machine-readable
211
+ command surface. It includes stable JSON contracts, required flags, optional
212
+ flags, and examples generated from the current CLI.
213
+
154
214
  ## Autonomous Workflow Engine
155
215
 
156
216
  `orchestra workflow run` executes a full story lifecycle as a governed multi-phase sequence. Each phase creates a sub-task, generates handoff artifacts, and persists state in an append-only run log.
@@ -265,7 +325,11 @@ The VS Code Control Center scaffold is under `extensions/vscode-open-orchestra`.
265
325
 
266
326
  ## Reusable Core
267
327
 
268
- - `src/types.ts` owns workflow domain contracts shared by CLI and future adapters.
328
+ - `src/types.ts` is the compatibility barrel for public TypeScript contracts
329
+ shared by CLI, web, VS Code, and future adapters. New domain-owned contracts
330
+ should live in focused modules under `src/types/` and be re-exported from the
331
+ barrel; existing consumers should continue importing from `src/types.ts`
332
+ unless they intentionally depend on a narrower internal domain module.
269
333
  - `src/workflow-services.ts` owns reusable workflow behavior for tasks, locks, readiness, handoffs, reviews, evidence, status, and summary.
270
334
  - `orchestra task deps` checks whether task dependencies are approved or done before downstream work starts.
271
335
  - `orchestra graph plan` classifies current tasks as dependency-ready, blocked, or complete before execution.
@@ -274,17 +338,20 @@ The VS Code Control Center scaffold is under `extensions/vscode-open-orchestra`.
274
338
  - Graph scheduling omits tasks with active task locks or path conflicts and reports them as locked.
275
339
  - Graph batch runs write summary artifacts under `.agent-workflow/runs/batches/`.
276
340
  - `orchestra decision` records ADR-like decision artifacts and append-only events for task context.
277
- - `orchestra context` aggregates task state, dependencies, locks, decisions, handoffs, reviews, evidence, gates, model provenance, and risks before an agent starts work.
341
+ - `orchestra context` aggregates task state, dependencies, locks, decisions, handoffs, reviews, evidence, gates, model provenance, memory, and risks before an agent starts work, with a configurable context budget.
342
+ - `orchestra memory query` and `orchestra memory hook` retrieve bounded lessons and prompt-registry memory at lifecycle checkpoints without loading the full history into the prompt.
278
343
  - `orchestra plan` generates an ordered parent-agent execution plan by role without invoking model providers.
279
344
  - `orchestra run` checks task dependencies and usage budgets before execution, then can execute an approved budget fallback with the deterministic fake provider, recording step events and model provenance without network calls.
280
345
  - Budget fallback requests write reviewable approval proposals under `.agent-workflow/approvals/`.
281
- - Stored approved budget fallback proposals can be consumed by a later `orchestra run` without repeating approval flags.
346
+ - Stored approved budget fallback proposals can be consumed by a later `orchestra run` without repeating approval flags. Timeout errors do not fall back to another provider automatically.
282
347
  - Run steps write artifacts under `.agent-workflow/runs/<task>/` so downstream agents can consume prior role output.
348
+ - `orchestra handoff --update-owner` records the handoff and transfers task ownership to the receiving role explicitly.
283
349
  - `orchestra pr-summary` generates PR or release-review context from task state, evidence, reviews, gates, handoffs, locks, rollout notes, and rollback notes.
284
350
  - `orchestra playwright plan` generates deterministic Playwright test plans from task acceptance criteria and QA context.
285
351
  - `orchestra playwright evidence` attaches Playwright screenshots, traces, videos, or reports through the existing evidence workflow.
286
352
  - `orchestra usage` aggregates request counts, token totals, and estimated model cost from recorded model provenance events.
287
353
  - `orchestra budget check` enforces configured usage budgets from local provenance events and fails when limits are exceeded.
354
+ - `orchestra telemetry` is disabled by default and requires explicit consent before export or submission.
288
355
  - `orchestra approvals` lists, shows, approves, and rejects approval proposal artifacts through append-only decision events.
289
356
  - `src/workflow-gates.ts` owns reusable gate evaluators. Current gates include `architecture`, which blocks non-trivial work until proposal, user approval, and architect approval are present; `qa-release`, which requires QA plan, execution status, evidence, and no unresolved critical QA block; `risk-review`, which maps impact areas to required risk-owner reviews; and `release-readiness`, which composes readiness, architecture, QA, risk, evidence, handoff, review, and lock checks.
290
357
  - `src/model-providers.ts` owns provider-agnostic model contracts, an in-memory provider registry, and a fake provider for deterministic tests.
@@ -292,6 +359,12 @@ The VS Code Control Center scaffold is under `extensions/vscode-open-orchestra`.
292
359
  - `orchestra model set-role` configures provider/model routing per role without invoking real model APIs.
293
360
  - `orchestra model complete-fake` simulates provider fallback behavior without invoking real model APIs.
294
361
  - `orchestra model provenance` records model usage metadata in the append-only event log without storing raw prompts, raw responses, or secrets.
362
+ - `orchestra release check`, `release candidate`, `release tag`, and `release evidence` provide a local release-readiness flow for stable, beta, and other prerelease tags.
363
+ - `orchestra health --network` can check for a newer published package version and print the exact `npm install -g @jterrats/open-orchestra@<version>` update command when one is available.
364
+ - Package identity is intentionally split: `@jterrats/open-orchestra` is the
365
+ canonical npm package and `orchestra` is the installed CLI binary. Do not use
366
+ `@jterrats/orchestra` in install snippets unless a future alias package is
367
+ explicitly published and documented.
295
368
  - `src/commands.ts` is the CLI adapter: it parses command options, delegates to services, and renders terminal output.
296
369
  - Services accept an explicit repo root, so future web, GitHub Actions, Playwright, or multi-model orchestration layers can reuse the same core without depending on `process.cwd()`.
297
370
 
@@ -328,7 +401,7 @@ See [benchmark.md](benchmark.md) for the full reference.
328
401
  - Clarification loop (`workflow clarify`) allows developer and QA phases to surface blocking questions to PO or architect without abandoning the run.
329
402
  - Benchmark (`orchestra estimate` + `orchestra benchmark`) compares declared effort baselines against actual cycle time and automatically collected quality signals from the event log.
330
403
  - Sprint burndown (`orchestra burndown`) computes ideal vs actual lines from developer or architect story point estimates.
331
- - No real LLM calls in the autonomous engine phases complete deterministically and generate handoff artifacts; LLM execution per phase is a future layer.
404
+ - Provider-backed workflow execution supports deterministic `fake`, OpenAI Responses API, and Anthropic Messages API adapters when configured. The default provider remains `none`, so workflows stay deterministic unless routing is explicitly enabled.
332
405
  - No automatic code editing.
333
406
  - Python workers are represented in config only and disabled by default.
334
407
  - Static analysis is enforced locally through `.githooks/pre-commit` after running `npm run hooks:install`.
@@ -0,0 +1,20 @@
1
+ # Package Naming Decision
2
+
3
+ Open Orchestra keeps two public names with different meanings:
4
+
5
+ - npm package: `@jterrats/open-orchestra`
6
+ - installed CLI binary: `orchestra`
7
+
8
+ The canonical install command is:
9
+
10
+ ```bash
11
+ npm install -g @jterrats/open-orchestra
12
+ ```
13
+
14
+ Do not document `@jterrats/orchestra` as an install target yet. That package is
15
+ not the canonical published package for this project. If the shorter package
16
+ name is reserved or published later, it should be introduced as an explicit
17
+ alias with a documented ownership, forwarding, and deprecation strategy.
18
+
19
+ Update warnings and release notes must use the package name from `package.json`
20
+ and may continue to refer to the CLI command as `orchestra`.
@@ -0,0 +1,209 @@
1
+ # Persona Workflows
2
+
3
+ Use these paths when you want to operate Open Orchestra by role instead of
4
+ learning the full command catalog first. Commands assume the installed CLI form:
5
+ `orchestra`.
6
+
7
+ ## Product Owner Refinement
8
+
9
+ Goal: turn a backlog item into a task that is ready for architecture and
10
+ delivery.
11
+
12
+ Commands:
13
+
14
+ ```bash
15
+ orchestra health --json
16
+ orchestra task add --id STORY-001 --title "..." --owner product_owner \
17
+ --paths "src,docs,test" --goal "..." --acceptance "..." \
18
+ --risks "..." --test-strategy "..."
19
+ orchestra github sync --issue 123 --task STORY-001 --comment --dry-run --json
20
+ orchestra context --task STORY-001
21
+ ```
22
+
23
+ Expected artifacts:
24
+
25
+ - `.agent-workflow/tasks.json` task entry with backlog item, acceptance
26
+ criteria, assumptions, risks, paths, and test strategy.
27
+ - GitHub sync dry-run or comment evidence when using GitHub issues.
28
+ - Context output showing memory, missing artifacts, and selected workflow.
29
+
30
+ Common blockers:
31
+
32
+ - Missing acceptance criteria or test strategy.
33
+ - GitHub CLI unavailable in local shell.
34
+ - Issue tracker is not GitHub.
35
+
36
+ Recovery:
37
+
38
+ - Add missing readiness fields with `orchestra task update --id STORY-001 ...`.
39
+ - Use `orchestra github sync --transport mcp-skill` only as a runtime-adapter
40
+ boundary; tracker MCP skills for GitHub, Jira, Bitbucket, GitLab, or custom
41
+ trackers must inject equivalent issue/comment/close operations.
42
+ - Continue locally with task metadata when tracker sync is unavailable.
43
+
44
+ Related docs: [first-use flow](../README.md#quick-start),
45
+ [GitHub sync](orchestra-mvp.md), and [memory hooks](orchestra-mvp.md).
46
+
47
+ ## Developer Execution
48
+
49
+ Goal: implement a scoped task with role handoffs, evidence, and workflow gates.
50
+
51
+ Commands:
52
+
53
+ ```bash
54
+ orchestra delegation decide --task STORY-001
55
+ orchestra workflow run --task STORY-001 --gates phase
56
+ orchestra decision add --task STORY-001 --owner architect \
57
+ --title "Story sizing" --decision "m 3 points" \
58
+ --context "..." --consequences "..." --status accepted
59
+ orchestra memory hook --point before_implementation --task STORY-001 \
60
+ --role developer --json
61
+ orchestra evidence add --task STORY-001 --role developer --type command \
62
+ --summary "npm run precommit passed" --command "npm run precommit" \
63
+ --exit-code 0
64
+ ```
65
+
66
+ Expected artifacts:
67
+
68
+ - Workflow run records in `.agent-workflow/workflow-runs.jsonl`.
69
+ - Decisions and handoffs under `.agent-workflow/decisions/` and
70
+ `.agent-workflow/handoffs/`.
71
+ - Command evidence under `.agent-workflow/evidence/`.
72
+
73
+ Common blockers:
74
+
75
+ - Architect sizing missing before development.
76
+ - Active locks on overlapping paths.
77
+ - Context budget too high or memory output too broad.
78
+
79
+ Recovery:
80
+
81
+ - Record the sizing decision printed by the workflow failure.
82
+ - Inspect conflicts with `orchestra graph plan --json`.
83
+ - Query role-scoped memory with `orchestra memory query --role developer`.
84
+
85
+ Related docs: [autonomous workflow](autonomous-workflow.md),
86
+ [runtime flow](runtime-llm-flow.md), and [memory governance](orchestra-mvp.md).
87
+
88
+ ## QA Validation
89
+
90
+ Goal: prove acceptance criteria with traceable evidence and release-ready
91
+ coverage.
92
+
93
+ Commands:
94
+
95
+ ```bash
96
+ orchestra playwright plan --task STORY-001
97
+ orchestra playwright evidence --task STORY-001 --kind screenshot \
98
+ --summary "Browser AC passed" --path path/to/screenshot.png
99
+ orchestra review --task STORY-001 --role qa --result approve \
100
+ --findings "AC covered" --recommendation "Release handoff approved"
101
+ orchestra gate --gate qa-release --task STORY-001
102
+ ```
103
+
104
+ Expected artifacts:
105
+
106
+ - QA review in `.agent-workflow/reviews/`.
107
+ - Unit, integration, manual, or Playwright evidence mapped to acceptance
108
+ criteria.
109
+ - QA gate result showing no missing plan, execution status, or QA evidence.
110
+
111
+ Common blockers:
112
+
113
+ - Browser/UI AC has only report evidence and no Playwright artifact.
114
+ - QA review blocks are unresolved.
115
+ - Evidence summary does not identify the AC it covers.
116
+
117
+ Recovery:
118
+
119
+ - Attach screenshot, trace, or video evidence for browser criteria.
120
+ - Resolve blocker reviews with a new QA review after fixes.
121
+ - Use evidence summaries that name the acceptance criterion or say
122
+ "covers all acceptance criteria."
123
+
124
+ Related docs: [release readiness](orchestra-mvp.md) and
125
+ [Playwright evidence](orchestra-mvp.md).
126
+
127
+ ## Tech Lead Oversight
128
+
129
+ Goal: keep parallel work coordinated and reviewable.
130
+
131
+ Commands:
132
+
133
+ ```bash
134
+ orchestra graph plan --json
135
+ orchestra review --task STORY-001 --role tech_lead --result approve \
136
+ --findings "Diff and tests reviewed" --recommendation "Proceed"
137
+ orchestra pr-summary --task STORY-001
138
+ orchestra commands manifest --json
139
+ ```
140
+
141
+ Expected artifacts:
142
+
143
+ - Graph plan with ready, blocked, locked, and dependency-ready tasks.
144
+ - Tech lead review artifact with severity and recommendation.
145
+ - PR summary with evidence, risks, and remaining gaps.
146
+
147
+ Common blockers:
148
+
149
+ - Multiple agents edit the same path without locks.
150
+ - Command behavior is duplicated outside the manifest.
151
+ - PR lacks command evidence or reviewer context.
152
+
153
+ Recovery:
154
+
155
+ - Split work by stable path boundaries and record locks.
156
+ - Check the manifest before adding commands.
157
+ - Add missing evidence and rerun `orchestra pr-summary --task STORY-001`.
158
+
159
+ Related docs: [command contracts](command-contracts.md),
160
+ [traceability](traceability-flow.md), and [runtime adapters](runtime-adapters.md).
161
+
162
+ ## Release Management
163
+
164
+ Goal: decide whether a story or candidate release can ship.
165
+
166
+ Commands:
167
+
168
+ ```bash
169
+ orchestra release check --json
170
+ orchestra release evidence --kind smoke --summary "smoke passed"
171
+ orchestra release evidence --kind rollback --summary "rollback verified"
172
+ orchestra gate --gate release-readiness --task STORY-001
173
+ orchestra release candidate --version 0.5.0-beta.0 --json
174
+ ```
175
+
176
+ Expected artifacts:
177
+
178
+ - Release check JSON with acceptance coverage, blockers, locks, smoke, and
179
+ rollback gaps.
180
+ - Smoke and rollback evidence events.
181
+ - Candidate release plan under `.agent-workflow/releases/`.
182
+
183
+ Common blockers:
184
+
185
+ - Uncovered acceptance criteria.
186
+ - Active locks or blocker reviews.
187
+ - Missing smoke or rollback evidence.
188
+ - Dirty working tree during release check.
189
+
190
+ Recovery:
191
+
192
+ - Attach required evidence or record an accepted risk on the task.
193
+ - Resolve locks and blocking reviews.
194
+ - Run `orchestra upgrade --smoke --json` after installing a new package version.
195
+
196
+ Related docs: [upgrade dogfooding](orchestra-mvp.md),
197
+ [package naming](package-naming.md), and [release readiness](orchestra-mvp.md).
198
+
199
+ ## Docs Review Checklist
200
+
201
+ Before release, verify:
202
+
203
+ - Persona paths use `orchestra`, not local `node bin/orchestra.js`, unless the
204
+ section is explicitly about repository development.
205
+ - Package references use `@jterrats/open-orchestra`.
206
+ - Links cover first-use onboarding, web console, memory, GitHub sync, release
207
+ readiness, and upgrade dogfooding.
208
+ - Commands list expected artifacts, common blockers, and recovery steps.
209
+ - Site copy reflects implemented capabilities, not planned-only features.