@jterrats/open-orchestra 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. package/AGENTS.md +7 -2
  2. package/CLAUDE.md +2 -2
  3. package/README.md +3 -0
  4. package/dist/args.js +12 -2
  5. package/dist/args.js.map +1 -1
  6. package/dist/assets/web-console.js +44 -0
  7. package/dist/autonomous-phase-lifecycle.js +23 -3
  8. package/dist/autonomous-phase-lifecycle.js.map +1 -1
  9. package/dist/autonomous-run-state.js +2 -0
  10. package/dist/autonomous-run-state.js.map +1 -1
  11. package/dist/benchmark.js +6 -0
  12. package/dist/benchmark.js.map +1 -1
  13. package/dist/cli.js +4 -1
  14. package/dist/cli.js.map +1 -1
  15. package/dist/command-manifest.js +4 -3
  16. package/dist/command-manifest.js.map +1 -1
  17. package/dist/command-utils.js +4 -5
  18. package/dist/command-utils.js.map +1 -1
  19. package/dist/commands.d.ts +1 -1
  20. package/dist/commands.js +1 -1
  21. package/dist/commands.js.map +1 -1
  22. package/dist/constants.js +1 -0
  23. package/dist/constants.js.map +1 -1
  24. package/dist/memory.js +18 -8
  25. package/dist/memory.js.map +1 -1
  26. package/dist/metrics-commands.js +8 -0
  27. package/dist/metrics-commands.js.map +1 -1
  28. package/dist/model-commands.js +6 -2
  29. package/dist/model-commands.js.map +1 -1
  30. package/dist/phase-executor.js +3 -0
  31. package/dist/phase-executor.js.map +1 -1
  32. package/dist/prompt-registry-update.js +20 -0
  33. package/dist/prompt-registry-update.js.map +1 -1
  34. package/dist/qa-coverage.js +15 -6
  35. package/dist/qa-coverage.js.map +1 -1
  36. package/dist/release-commands.js +42 -5
  37. package/dist/release-commands.js.map +1 -1
  38. package/dist/release-readiness.d.ts +3 -1
  39. package/dist/release-readiness.js +33 -6
  40. package/dist/release-readiness.js.map +1 -1
  41. package/dist/roles/core-roles.js +10 -5
  42. package/dist/roles/core-roles.js.map +1 -1
  43. package/dist/skills-catalog.js +130 -0
  44. package/dist/skills-catalog.js.map +1 -1
  45. package/dist/skills-commands.d.ts +1 -0
  46. package/dist/skills-commands.js +37 -1
  47. package/dist/skills-commands.js.map +1 -1
  48. package/dist/skills-planning.d.ts +2 -1
  49. package/dist/skills-planning.js +79 -11
  50. package/dist/skills-planning.js.map +1 -1
  51. package/dist/skills.d.ts +1 -1
  52. package/dist/skills.js +1 -1
  53. package/dist/skills.js.map +1 -1
  54. package/dist/task-graph-commands.js +36 -8
  55. package/dist/task-graph-commands.js.map +1 -1
  56. package/dist/types/metrics.d.ts +2 -0
  57. package/dist/types/model-config.d.ts +4 -0
  58. package/dist/types/skills.d.ts +9 -0
  59. package/dist/types/tasks.d.ts +8 -1
  60. package/dist/types.d.ts +2 -2
  61. package/dist/types.js.map +1 -1
  62. package/dist/web-api.js +80 -7
  63. package/dist/web-api.js.map +1 -1
  64. package/dist/web-console/assets/{index-C9lx-V42.css → index-jxCY5eEc.css} +1 -1
  65. package/dist/web-console/index.html +2 -2
  66. package/dist/workflow-approval-service.js +13 -0
  67. package/dist/workflow-approval-service.js.map +1 -1
  68. package/dist/workflow-evidence-service.js +37 -2
  69. package/dist/workflow-evidence-service.js.map +1 -1
  70. package/dist/workflow-gates.d.ts +1 -0
  71. package/dist/workflow-gates.js +220 -1
  72. package/dist/workflow-gates.js.map +1 -1
  73. package/dist/workflow-phase-planner.js +51 -9
  74. package/dist/workflow-phase-planner.js.map +1 -1
  75. package/dist/workflow-run-commands.d.ts +1 -0
  76. package/dist/workflow-run-commands.js +11 -6
  77. package/dist/workflow-run-commands.js.map +1 -1
  78. package/dist/workflow-services.js +26 -0
  79. package/dist/workflow-services.js.map +1 -1
  80. package/dist/workflow-task-service.js +27 -2
  81. package/dist/workflow-task-service.js.map +1 -1
  82. package/docs/adoption-guide.md +22 -1
  83. package/docs/advisory-supervisor-architecture.md +206 -0
  84. package/docs/architecture.md +47 -41
  85. package/docs/autonomous-workflow.md +2 -2
  86. package/docs/backlog/ac-evidence-bugfix-stories-20260517.md +76 -0
  87. package/docs/backlog/dev-best-practices-hardening-story.md +69 -0
  88. package/docs/backlog/docs-public-internal-package-hygiene-story.md +62 -0
  89. package/docs/backlog/prompt-bank-registry-epic.md +159 -0
  90. package/docs/backlog/site-docs-manifest-story.md +56 -0
  91. package/docs/dev-team-specialist-role-profiles.md +1 -1
  92. package/docs/diagrams/diagram-master-prompt.md +207 -0
  93. package/docs/diagrams/enterprise-set/README.md +22 -0
  94. package/docs/diagrams/enterprise-set/lead-to-account-swimlanes.svg +38 -0
  95. package/docs/diagrams/enterprise-set/product-implementation-timeline.svg +45 -0
  96. package/docs/diagrams/enterprise-set/salesforce-enterprise-architecture.svg +54 -0
  97. package/docs/diagrams/experiments/pixel-v2-review.md +124 -0
  98. package/docs/diagrams/experiments/roadmap/diagram.mmd +14 -0
  99. package/docs/diagrams/experiments/roadmap/diagram.svg +48 -0
  100. package/docs/diagrams/experiments/roadmap/experiment.md +44 -0
  101. package/docs/diagrams/experiments/sfdc-implementation/diagram.mmd +54 -0
  102. package/docs/diagrams/experiments/sfdc-implementation/diagram.svg +72 -0
  103. package/docs/diagrams/experiments/sfdc-implementation/experiment.md +41 -0
  104. package/docs/diagrams/experiments/swimlane/diagram.mmd +40 -0
  105. package/docs/diagrams/experiments/swimlane/diagram.svg +70 -0
  106. package/docs/diagrams/experiments/swimlane/experiment.md +50 -0
  107. package/docs/diagrams/experiments/timeline/diagram.mmd +9 -0
  108. package/docs/diagrams/experiments/timeline/diagram.svg +29 -0
  109. package/docs/diagrams/experiments/timeline/experiment.md +34 -0
  110. package/docs/diagrams/final-artifact-hygiene.md +40 -0
  111. package/docs/diagrams/mermaid-target-strategy.md +106 -0
  112. package/docs/diagrams/payment-gateway/architecture.md +57 -0
  113. package/docs/diagrams/payment-gateway/architecture.mmd +39 -0
  114. package/docs/diagrams/payment-gateway/architecture.svg +171 -0
  115. package/docs/diagrams/prompt-bank.md +48 -0
  116. package/docs/diagrams/salesforce-integration/architecture.md +56 -0
  117. package/docs/diagrams/salesforce-integration/architecture.mmd +26 -0
  118. package/docs/diagrams/salesforce-integration/architecture.svg +123 -0
  119. package/docs/diagrams/source-fidelity-review.md +116 -0
  120. package/docs/diagrams/state-uml-recreated.drawio +336 -0
  121. package/docs/diagrams/state-uml-recreated.prompt.md +114 -0
  122. package/docs/diagrams/state-uml-recreated.prompt.v10.md +52 -0
  123. package/docs/diagrams/state-uml-recreated.prompt.v11.md +52 -0
  124. package/docs/diagrams/state-uml-recreated.prompt.v12.md +50 -0
  125. package/docs/diagrams/state-uml-recreated.prompt.v14.md +91 -0
  126. package/docs/diagrams/state-uml-recreated.prompt.v2.md +31 -0
  127. package/docs/diagrams/state-uml-recreated.prompt.v3.md +36 -0
  128. package/docs/diagrams/state-uml-recreated.prompt.v4.md +35 -0
  129. package/docs/diagrams/state-uml-recreated.prompt.v5.md +35 -0
  130. package/docs/diagrams/state-uml-recreated.prompt.v6.md +39 -0
  131. package/docs/diagrams/state-uml-recreated.prompt.v7.md +37 -0
  132. package/docs/diagrams/state-uml-recreated.prompt.v8.md +41 -0
  133. package/docs/diagrams/state-uml-recreated.prompt.v9.md +32 -0
  134. package/docs/diagrams/state-uml-recreated.svg +159 -0
  135. package/docs/diagrams/v14-stress-test/README.md +33 -0
  136. package/docs/diagrams/v14-stress-test/stress-test.svg +114 -0
  137. package/docs/external-artifact-import-bridge.md +56 -0
  138. package/docs/{setup-agents-applicability-review.md → external-baseline-applicability-review.md} +37 -40
  139. package/docs/{setup-agents-dogfooding-findings.md → external-baseline-dogfooding-findings.md} +10 -9
  140. package/docs/multi-agent-orchestrator-backlog.md +1 -1
  141. package/docs/orchestra-mvp.md +19 -0
  142. package/docs/persona-workflows.md +42 -0
  143. package/docs/release-test-matrix.md +21 -9
  144. package/docs/reports/ac-evidence-backfill-20260517.md +256 -0
  145. package/docs/reports/ac-evolution-reconciliation-20260517.md +366 -0
  146. package/docs/reports/ac-failure-evidence-20260517.md +115 -0
  147. package/docs/reports/ac-history-dry-run-20260517.md +434 -0
  148. package/docs/runtime-llm-flow.md +8 -0
  149. package/docs/site-content-workflow.md +96 -0
  150. package/docs/site-manifest.json +143 -0
  151. package/docs/skill-loading-strategy.md +19 -7
  152. package/docs/story-mapping-adoption-review.md +99 -0
  153. package/docs/traceability-flow.md +11 -0
  154. package/docs/workspace-repo-strategy.md +63 -0
  155. package/package.json +3 -1
  156. package/rules/agent-collaboration.mdc +2 -0
  157. package/rules/code-review-engineering.mdc +2 -0
  158. package/rules/delivery-quality-gates.mdc +12 -0
  159. package/rules/development-engineering.mdc +5 -0
  160. package/rules/devops-tooling.mdc +1 -0
  161. package/rules/diagram-quality.mdc +35 -0
  162. package/rules/dry-clean-code.mdc +1 -0
  163. package/rules/module-boundaries.mdc +71 -0
  164. package/rules/performance-reliability.mdc +1 -0
  165. package/rules/testing-discipline.mdc +17 -1
  166. package/skills/collection-standards/SKILL.md +65 -0
  167. package/skills/collection-standards/manifest.json +69 -0
  168. package/skills/diagram-export/SKILL.md +30 -0
  169. package/skills/qa-evidence-pack/SKILL.md +110 -0
  170. package/skills/qa-evidence-pack/manifest.json +60 -0
  171. package/docs/setup-agents-bridge.md +0 -61
  172. /package/dist/web-console/assets/{index-M3S0g1GK.js → index-BNESIVvk.js} +0 -0
@@ -36,6 +36,7 @@ export async function addTask(input, root = process.cwd()) {
36
36
  if (!workspace.roleIds.has(input.ownerRole)) {
37
37
  throw new Error(`unknown owner role: ${input.ownerRole}`);
38
38
  }
39
+ assertTaskWorkflowRoles(input.workflow, workspace.roleIds);
39
40
  const now = new Date().toISOString();
40
41
  const task = removeUndefined({
41
42
  ...input,
@@ -136,6 +137,7 @@ export async function updateTask(input, root = process.cwd()) {
136
137
  if (input.ownerRole && !workspace.roleIds.has(input.ownerRole)) {
137
138
  throw new Error(`unknown owner role: ${input.ownerRole}`);
138
139
  }
140
+ assertTaskWorkflowRoles(input.workflow, workspace.roleIds);
139
141
  let updated;
140
142
  let changedFields = [];
141
143
  await mutateTasks(workspace.base, (tasks) => {
@@ -179,6 +181,7 @@ function applyTaskUpdate(next, current, input, changedFields) {
179
181
  setTaskField(next, current, "status", normalizeOptionalStatus(input.status), changedFields);
180
182
  setTaskField(next, current, "blockedReason", input.blockedReason, changedFields);
181
183
  mergeTaskObjectField(next, current, "qaGate", input.qaGate, changedFields);
184
+ mergeTaskObjectField(next, current, "workflow", input.workflow, changedFields);
182
185
  setTaskField(next, current, "claimedAt", input.claimedAt, changedFields);
183
186
  setTaskField(next, current, "doneAt", input.doneAt, changedFields);
184
187
  appendTaskField(next, "acceptanceCriteria", input.acceptanceCriteria, changedFields);
@@ -195,6 +198,16 @@ function normalizeOptionalStatus(status) {
195
198
  }
196
199
  return normalized;
197
200
  }
201
+ function assertTaskWorkflowRoles(workflow, roleIds) {
202
+ const roles = [
203
+ ...(workflow?.requiredRoles ?? []),
204
+ ...(workflow?.optionalRoles ?? []),
205
+ ];
206
+ const unknown = roles.filter((role) => !roleIds.has(role));
207
+ if (unknown.length > 0) {
208
+ throw new Error(`unknown workflow role(s): ${unknown.join(", ")}`);
209
+ }
210
+ }
198
211
  function setTaskField(next, current, key, value, changedFields) {
199
212
  if (value === undefined) {
200
213
  return;
@@ -208,8 +221,20 @@ function appendTaskField(next, key, values, changedFields) {
208
221
  if (!values || values.length === 0) {
209
222
  return;
210
223
  }
211
- next[key] = [...(next[key] ?? []), ...values];
212
- changedFields.add(key);
224
+ const currentValues = next[key] ?? [];
225
+ const seen = new Set(currentValues);
226
+ const nextValues = [...currentValues];
227
+ for (const value of values) {
228
+ if (seen.has(value)) {
229
+ continue;
230
+ }
231
+ seen.add(value);
232
+ nextValues.push(value);
233
+ }
234
+ if (nextValues.length !== currentValues.length) {
235
+ next[key] = nextValues;
236
+ changedFields.add(key);
237
+ }
213
238
  }
214
239
  function mergeTaskObjectField(next, current, key, value, changedFields) {
215
240
  if (value === undefined) {
@@ -1 +1 @@
1
- {"version":3,"file":"workflow-task-service.js","sourceRoot":"","sources":["../src/workflow-task-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow-task-service.js","sourceRoot":"","sources":["../src/workflow-task-service.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,7 @@ running.
17
17
  | Configure provider routing | [runtime-llm-flow.md](runtime-llm-flow.md) |
18
18
  | Sync tracker-backed work | [tracker-adapter-contract.md](tracker-adapter-contract.md) |
19
19
  | Use the local web console | [orchestra-mvp.md](orchestra-mvp.md) |
20
+ | Understand public site content generation | [site-content-workflow.md](site-content-workflow.md) |
20
21
  | Prepare release evidence | [release-test-matrix.md](release-test-matrix.md) |
21
22
  | Manage memory, prompts, and lessons | [source-of-truth-and-agent-learning.md](source-of-truth-and-agent-learning.md) |
22
23
  | Extend skills or adapters | [extension-contracts.md](extension-contracts.md) |
@@ -74,7 +75,7 @@ Team workflow with human gates:
74
75
 
75
76
  ```bash
76
77
  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 gate-approve --run <run-id> --gate "po->architect" --approver "<name>" --rationale "User validated the story, definitions, assumptions, non-goals, priority, and acceptance criteria"
78
79
  orchestra workflow run --task TEAM-001 --resume <run-id>
79
80
  ```
80
81
 
@@ -119,6 +120,11 @@ orchestra release check --json
119
120
  Attach command evidence with `orchestra evidence add`, then record QA and release
120
121
  reviews with `orchestra review`.
121
122
 
123
+ Documentation and public-site changes also need Technical Writer review before
124
+ release readiness. Use
125
+ [site-content-workflow.md](site-content-workflow.md) for the generated site
126
+ content contract, Technical Writer triggers, and site QA evidence expectations.
127
+
122
128
  ## Troubleshooting
123
129
 
124
130
  - Run `orchestra health --json` when CLI, Node, Git, GitHub, Playwright, or
@@ -143,5 +149,20 @@ For pre-1.0 workspaces:
143
149
  5. Run `orchestra validate --pre-run --task <id> --json` before resuming active
144
150
  tasks.
145
151
 
152
+ `orchestra init` and `orchestra refresh` preserve existing project instructions.
153
+ When files such as `AGENTS.md` or `ORCHESTRA.md` already exist, Open Orchestra
154
+ adds or updates only its marked managed block:
155
+
156
+ ```md
157
+ <!-- open-orchestra:start ... -->
158
+ ...
159
+ <!-- open-orchestra:end ... -->
160
+ ```
161
+
162
+ Rules outside that block remain project-owned. If a managed block was manually
163
+ edited, refresh reports drift and requires `--force` before replacing the block.
164
+ The forced refresh still replaces only the Open Orchestra block; it does not
165
+ rewrite the full instruction file.
166
+
146
167
  Migration must preserve `.agent-workflow/` history. Archive stale tasks or
147
168
  lessons with explicit commands instead of manually editing runtime files.
@@ -0,0 +1,206 @@
1
+ # Advisory Supervisor Architecture
2
+
3
+ ## Purpose
4
+
5
+ GH-333 defines an epic for extending Open Orchestra advisory mode into a
6
+ supervisor that finds improvement opportunities from local lessons and generated
7
+ prompt context. The supervisor remains offline-first, publishes findings only
8
+ through explicit user action, and uses guarded GitHub workers for evaluation.
9
+
10
+ ## Existing Product Surface
11
+
12
+ Open Orchestra already has `advisory` mode:
13
+
14
+ - `orchestra init --advisory` creates `.agent-workflow/advisory/` without
15
+ writing root instruction files.
16
+ - `orchestra advisory convert` promotes advisory artifacts into local workflow
17
+ tasks.
18
+ - `orchestra memory query` retrieves bounded lessons and prompt registry
19
+ entries.
20
+ - `orchestra doc-sync audit` already produces recommendations from local
21
+ project state.
22
+
23
+ The supervisor should extend this namespace instead of introducing a parallel
24
+ `advisor` product concept.
25
+
26
+ ## MVP Architecture
27
+
28
+ ```mermaid
29
+ flowchart LR
30
+ subgraph local["Local workspace"]
31
+ lessons["agent lessons"]
32
+ prompts["generated prompts"]
33
+ scan["orchestra advisory scan"]
34
+ findings[".agent-workflow/advisory/findings"]
35
+ publish["orchestra advisory publish"]
36
+ end
37
+
38
+ subgraph github["GitHub"]
39
+ issue["advisor:finding issue"]
40
+ triage["triage worker<br/>no secrets"]
41
+ eval["container evaluator<br/>least privilege"]
42
+ end
43
+
44
+ subgraph guardrails["Guardrails"]
45
+ redact["secret redaction"]
46
+ injection["prompt-injection scan"]
47
+ policy["policy decision"]
48
+ end
49
+
50
+ lessons --> scan
51
+ prompts --> scan
52
+ scan --> redact
53
+ redact --> injection
54
+ injection --> findings
55
+ findings --> publish
56
+ publish --> issue
57
+ issue --> triage
58
+ triage --> policy
59
+ policy -->|safe or approved| eval
60
+ policy -->|blocked| issue
61
+ ```
62
+
63
+ MVP commands:
64
+
65
+ - `orchestra advisory scan`
66
+ - `orchestra advisory suggest`
67
+ - `orchestra advisory publish`
68
+ - `orchestra advisory worker-policy`
69
+
70
+ MVP storage:
71
+
72
+ - `.agent-workflow/advisory/findings/*.json`
73
+ - `.agent-workflow/advisory/findings/*.md`
74
+ - `.agent-workflow/advisory/policy.json`
75
+
76
+ MVP finding fields:
77
+
78
+ - `id`
79
+ - `title`
80
+ - `summary`
81
+ - `sources`
82
+ - `sourceType`: `lesson | prompt | evidence | decision | mixed`
83
+ - `confidence`
84
+ - `riskLevel`
85
+ - `impactedPaths`
86
+ - `proposedAcceptanceCriteria`
87
+ - `labels`
88
+ - `policyStatus`: `draft | safe | needs_review | blocked | published`
89
+ - `guardrailFindings`
90
+
91
+ MVP GitHub labels:
92
+
93
+ - `advisor:finding`
94
+ - `advisor:needs-review`
95
+ - `advisor:approved`
96
+ - `advisor:blocked`
97
+ - `advisor:security`
98
+ - `advisor:prompt`
99
+ - `advisor:workflow`
100
+ - `advisor:docs`
101
+
102
+ The GitHub worker must trigger only on the specific advisor finding
103
+ classification. The first job runs without secrets and with minimal
104
+ permissions. Container evaluation is allowed only after the finding passes
105
+ guardrails or receives maintainer approval.
106
+
107
+ ## To-Be Architecture
108
+
109
+ ```mermaid
110
+ flowchart LR
111
+ subgraph workspace["Workspace control plane"]
112
+ supervisor["advisory supervisor"]
113
+ memory["bounded memory packet"]
114
+ findings["finding ledger"]
115
+ githubPublisher["GitHub publisher"]
116
+ end
117
+
118
+ subgraph policy["Policy and guardrails"]
119
+ promptSecurity["prompt-injection detector"]
120
+ secrets["secret classifier"]
121
+ evaluatorPolicy["execution policy"]
122
+ audit["audit trail"]
123
+ end
124
+
125
+ subgraph external["Execution options"]
126
+ githubWorker["GitHub worker"]
127
+ localProvider["local provider<br/>Ollama / Queen / OpenCode"]
128
+ saas["optional SaaS<br/>sanitized payloads"]
129
+ end
130
+
131
+ memory --> supervisor
132
+ supervisor --> promptSecurity
133
+ supervisor --> secrets
134
+ promptSecurity --> evaluatorPolicy
135
+ secrets --> evaluatorPolicy
136
+ evaluatorPolicy --> findings
137
+ findings --> githubPublisher
138
+ githubPublisher --> githubWorker
139
+ findings --> localProvider
140
+ findings --> saas
141
+ githubWorker --> audit
142
+ localProvider --> audit
143
+ saas --> audit
144
+ ```
145
+
146
+ The SaaS option is not required for local operation. If introduced, it should
147
+ receive sanitized finding payloads and policy metadata, not raw prompt history,
148
+ raw lesson logs, repository secrets, or privileged tokens. Repository execution
149
+ remains in GitHub Actions or an equivalent isolated runner.
150
+
151
+ ## Diagram Authoring Strategy
152
+
153
+ Mermaid remains useful for lightweight architecture docs, but it does not
154
+ provide enough control for high-fidelity recreation of Lucid or PDF diagrams.
155
+ Precise spacing, connector bends, line avoidance, container dimensions, border
156
+ styles, and exact colors require a layout-preserving format.
157
+
158
+ Use draw.io XML as the high-fidelity source format:
159
+
160
+ - version `.drawio` files as source artifacts.
161
+ - export deterministic `.svg` files for docs and the site.
162
+ - keep element geometry, connector waypoints, colors, borders, and typography
163
+ in the XML.
164
+ - validate that generated SVG exists and is non-empty before release.
165
+
166
+ Proposed future commands:
167
+
168
+ - `orchestra diagrams convert --from <file.pdf|file.svg> --to <file.drawio>`
169
+ - `orchestra diagrams export --file <file.drawio> --format svg`
170
+ - `orchestra diagrams lint --file <file.drawio>`
171
+
172
+ For PDF recreation, the process should capture:
173
+
174
+ - container positions and dimensions.
175
+ - internal and external spacing.
176
+ - connector routing and bend points.
177
+ - line avoidance around elements.
178
+ - fill, stroke, border, and text hex colors.
179
+ - typography, wrapping, and relative sizing.
180
+ - final resizing after real text is placed.
181
+
182
+ Draw.io export should run offline where possible. If the diagrams.net desktop or
183
+ CLI exporter is unavailable, the command should report exact installation or
184
+ manual export guidance instead of silently generating an approximation.
185
+
186
+ ## Security Boundaries
187
+
188
+ - Treat lessons, prompt registry entries, GitHub issues, comments, and PDFs as
189
+ untrusted input.
190
+ - Never pass secrets or raw unbounded prompt history to a provider.
191
+ - Do not use shell interpolation. Execute provider and diagram tools with
192
+ argument arrays.
193
+ - Validate all file paths against the workspace root.
194
+ - Block or require human approval when prompt content asks to ignore policies,
195
+ reveal secrets, alter workflow permissions, or exfiltrate data.
196
+ - Keep worker permissions explicit and minimal.
197
+
198
+ ## Child Stories
199
+
200
+ 1. Advisory finding schema and local scan.
201
+ 2. Provider adapter contract for local runtimes.
202
+ 3. GitHub issue publication and label taxonomy.
203
+ 4. GitHub worker MVP with no-secret triage.
204
+ 5. Prompt-injection and secret guardrails.
205
+ 6. Draw.io XML source and SVG export support.
206
+ 7. Optional SaaS-ready sanitized finding event contract.
@@ -10,68 +10,72 @@ the project site.
10
10
  flowchart LR
11
11
  subgraph entry["Entry surfaces"]
12
12
  human["Human operator"]
13
- agent["Codex / Claude / Cursor"]
14
- ide["VS Code control center"]
13
+ runtime["Agent runtimes"]
14
+ ide["IDE control center"]
15
15
  web["Local web console"]
16
16
  end
17
17
 
18
- subgraph cli["CLI contract"]
19
- commands["orchestra commands"]
20
- manifest["command manifest"]
21
- json["JSON output contracts"]
18
+ subgraph contract["Runtime and CLI contract"]
19
+ bootstrap["Runtime bootstrap"]
20
+ commands["orchestra CLI"]
21
+ manifest["Command manifest"]
22
+ api["JSON contracts"]
22
23
  end
23
24
 
24
- subgraph core["Workflow services"]
25
- tasks["task registry"]
26
- workflow["autonomous workflow"]
27
- gates["review gates"]
28
- memory["role-scoped memory"]
29
- skills["skills and prompts"]
30
- release["release readiness"]
25
+ subgraph workflow["Workflow core"]
26
+ intake["Task registry"]
27
+ phases["PM to release phases"]
28
+ gates["Human review gates"]
29
+ skills["Skills and memory"]
30
+ readiness["Release readiness"]
31
31
  end
32
32
 
33
- subgraph state["State and integrations"]
34
- files[".agent-workflow files"]
35
- providers["model providers"]
36
- trackers["tracker adapters / MCP"]
37
- evidence["evidence artifacts"]
33
+ subgraph state["Local state and adapters"]
34
+ files[".agent-workflow state"]
35
+ providers["Model providers"]
36
+ trackers["Tracker adapters"]
37
+ evidence["Evidence packs"]
38
+ content["Docs manifest"]
38
39
  end
39
40
 
40
- subgraph outputs["Delivery outputs"]
41
- docs["docs and site"]
42
- npm["npm package"]
43
- tags["release tags"]
44
- reports["handoff reports"]
41
+ subgraph delivery["Delivery outputs"]
42
+ site["Public site"]
43
+ package["npm package"]
44
+ reports["Handoffs and reports"]
45
+ release["CI release tags"]
45
46
  end
46
47
 
47
48
  human --> commands
48
- agent --> commands
49
- ide --> commands
50
- web --> commands
49
+ runtime --> bootstrap
50
+ ide --> api
51
+ web --> api
52
+ bootstrap --> commands
51
53
  commands --> manifest
52
- commands --> json
53
- manifest --> workflow
54
- json --> workflow
55
- workflow --> tasks
56
- workflow --> gates
57
- workflow --> memory
58
- workflow --> skills
59
- workflow --> release
60
- tasks --> files
54
+ api --> manifest
55
+ manifest --> phases
56
+ phases --> intake
57
+ phases --> gates
58
+ phases --> skills
59
+ phases --> readiness
60
+ intake --> files
61
61
  gates --> evidence
62
- memory --> files
63
62
  skills --> files
64
- workflow --> providers
65
- workflow --> trackers
66
- release --> docs
67
- release --> npm
68
- release --> tags
63
+ phases --> providers
64
+ phases --> trackers
65
+ readiness --> evidence
66
+ content --> site
67
+ readiness --> site
68
+ readiness --> package
69
+ readiness --> release
69
70
  evidence --> reports
70
71
  ```
71
72
 
72
73
  The site renders the same source from
73
74
  [`site/public/architecture.mmd`](../site/public/architecture.mmd) through the
74
75
  React + Vite public site with pan, zoom, reset, and fullscreen controls.
76
+ The documentation and served Mermaid source must be updated together. See
77
+ [Public Site Content Workflow](site-content-workflow.md) for the generated
78
+ content contract and diagram QA expectations.
75
79
 
76
80
  ## How To Read It
77
81
 
@@ -97,6 +101,8 @@ React + Vite public site with pan, zoom, reset, and fullscreen controls.
97
101
  ## Related Docs
98
102
 
99
103
  - [MVP guide](orchestra-mvp.md)
104
+ - [Advisory supervisor architecture](advisory-supervisor-architecture.md)
100
105
  - [Persona workflows](persona-workflows.md)
101
106
  - [Runtime adapters](runtime-adapters.md)
107
+ - [Public site content workflow](site-content-workflow.md)
102
108
  - [Traceability flow](traceability-flow.md)
@@ -34,7 +34,7 @@ PM → PO [gate] → Architect [sizing gate] → Developer → QA [gate] → Rel
34
34
  | Phase | Role | Output | Human checkpoint |
35
35
  | ----------- | --------------- | -------------------------------------------------------------------- | --------------------------------------------------------- |
36
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` |
37
+ | `po` | product_owner | User-validated scope, definitions, acceptance criteria, assumptions, non-goals, priority, and release value | `po→architect` when `--gates phase` or `--gates all` |
38
38
  | `architect` | architect | Technical approach, affected boundaries, sizing decision, and risks | Architect sizing gate is always required |
39
39
  | `developer` | developer | Code/docs changes, implementation notes, and Developer to QA handoff | Optional clarification to PO or Architect |
40
40
  | `qa` | qa | Test plan, validation evidence, gaps, and QA recommendation | `qa→release` when `--gates phase` or `--gates all` |
@@ -64,7 +64,7 @@ the active role from continuing safely.
64
64
 
65
65
  | Situation | Use | Why |
66
66
  | ------------------------------------------------------------------- | ------------- | --------------------------------------------------------------------- |
67
- | PO acceptance criteria need human confirmation before design starts | Gate | This is a planned phase boundary |
67
+ | PO/BA stories, definitions, acceptance criteria, or assumptions need user confirmation before design starts | Gate | This is a planned phase boundary |
68
68
  | QA evidence is complete but release risk needs sign-off | Gate | This determines whether Release may proceed |
69
69
  | Developer needs to know whether empty input is valid | Clarification | The active phase is blocked by a product or architecture question |
70
70
  | QA finds ambiguous expected behavior while writing tests | Clarification | The answer should unblock QA without inventing a new phase boundary |
@@ -0,0 +1,76 @@
1
+ # AC Evidence Bugfix Stories
2
+
3
+ Date: 2026-05-17
4
+ Source task: AC-EVIDENCE-BACKFILL-20260517
5
+
6
+ These bugfix stories come from the reconciled acceptance-criteria evidence batch.
7
+ They are current failures, not historical superseded criteria.
8
+
9
+ ## BUG-DOCS-GENERATED-SITE-AC-20260517
10
+
11
+ Title: Fix docs adoption test after generated site content migration
12
+
13
+ As a product user evaluating first-run onboarding, I want the public site,
14
+ README, and adoption docs to consistently prove the first visible value path so
15
+ that documentation tests validate the real source of rendered content.
16
+
17
+ Acceptance criteria:
18
+
19
+ - `node --test test/docs-adoption.test.js` passes.
20
+ - The test validates `First visible value` in the generated site content source
21
+ or rendered site output instead of requiring literal copy in `site/src/App.jsx`.
22
+ - README, adoption guide, core command surface, and site content still point to
23
+ `orchestra workflow run --task DEMO-001 --gates none`.
24
+ - The governed production path remains documented.
25
+
26
+ ## BUG-SITE-ARCH-DIAGRAM-RENDER-20260517
27
+
28
+ Title: Fix project site architecture diagram render
29
+
30
+ As a site visitor, I want the architecture viewer to render its SVG on desktop
31
+ and mobile so that the product architecture can be inspected visually.
32
+
33
+ Acceptance criteria:
34
+
35
+ - `npm run site:build` passes.
36
+ - `npm run test:e2e -- e2e/project-site.spec.js` passes.
37
+ - `[data-architecture-diagram] svg` becomes visible on desktop and mobile.
38
+ - Architecture controls remain interactive: zoom, pan, reset, node drag, and
39
+ group drag.
40
+ - No console or page errors are emitted during diagram render.
41
+
42
+ ## BUG-WEB-OPS-READINESS-COPY-20260517
43
+
44
+ Title: Restore release readiness state in task detail
45
+
46
+ As an operator using the web console, I want task detail to show release
47
+ readiness state consistently so that I can understand whether a task is ready or
48
+ what remains unresolved.
49
+
50
+ Acceptance criteria:
51
+
52
+ - `npm run test:e2e -- e2e/web-console.spec.js` passes the WEB-OPS scenario.
53
+ - Task detail for `OPS-E2E` shows an explicit positive release readiness state
54
+ or the E2E is updated to assert the current accepted copy.
55
+ - Task detail still shows acceptance criteria, Definition of Ready, Definition
56
+ of Done, handoffs, reviews, and evidence.
57
+ - Negative readiness state for `COST-E2E` still surfaces missing backlog item
58
+ and release-readiness remediation.
59
+
60
+ ## BUG-WEB-LIFECYCLE-BLOCK-GATE-20260517
61
+
62
+ Title: Restore web lifecycle block gate control after request changes
63
+
64
+ As a release reviewer using the web console, I want to approve, request changes,
65
+ or block a workflow gate from the same lifecycle surface so that gate decisions
66
+ remain auditable and actionable.
67
+
68
+ Acceptance criteria:
69
+
70
+ - `npm run test:e2e -- e2e/web-console.spec.js` passes the WEB-LIFECYCLE scenario.
71
+ - After a `Request Changes` decision, the gate decision surface still exposes a
72
+ valid block path or the workflow state transition intentionally removes block
73
+ and the test documents the accepted behavior.
74
+ - Gate history records `changes`, `block`, and `approve` decisions when those
75
+ actions are available.
76
+ - Resume continues from the approved gate and completes the lifecycle.
@@ -0,0 +1,69 @@
1
+ # Story: Harden developer best practices for module boundaries and god-file prevention
2
+
3
+ Backlog Item ID: DEV-BEST-PRACTICES-HARDENING
4
+
5
+ ## User Story
6
+
7
+ As a technical lead, I want Open Orchestra developer guidance to enforce
8
+ pre-write god-file checks and clean module boundaries, so that new code follows
9
+ domain/model/service/adapters separation and command files stay nearly
10
+ logicless.
11
+
12
+ ## Background
13
+
14
+ As the project grows, large command and service files can accumulate parsing,
15
+ business rules, storage access, formatting, and integration orchestration in the
16
+ same place. This increases regression risk and makes agent-generated changes
17
+ harder to review.
18
+
19
+ Developer standards should force agents to check file size and responsibility
20
+ before writing code. If a change would grow a god file or add business logic to
21
+ an adapter, the agent should create or reuse the correct domain/model/service
22
+ module instead.
23
+
24
+ ## Acceptance Criteria
25
+
26
+ - Developer rules require a pre-write file-size and responsibility check before
27
+ adding code to an existing file.
28
+ - Rules define god-file risk thresholds and require extraction when a change
29
+ would materially increase a large or multi-responsibility file.
30
+ - Rules define expected boundaries:
31
+ - `model/types`: data contracts and narrow public types;
32
+ - `domain`: pure invariants, policy, and business decisions;
33
+ - `service/use-case`: orchestration of workflows and dependencies;
34
+ - `commands`: CLI adapter for parsing input, calling services, formatting
35
+ output, and converting errors;
36
+ - `web/api`: HTTP/UI adapter behavior;
37
+ - `storage/repository`: persistence and file I/O.
38
+ - Command modules are documented as logicless adapters and must not contain deep
39
+ business rules, multi-step workflow policy, direct persistence logic, or
40
+ duplicated hardcoded collections when a domain/service source of truth exists.
41
+ - Review guidance requires reviewers to flag command/service files that are
42
+ growing without a boundary decision.
43
+ - QA or static validation includes a lightweight check or documented checklist
44
+ for large files, new exports, and adapter logic creep.
45
+ - Existing collection standards are referenced so repeated hardcoded values are
46
+ extracted into typed/configurable sources of truth.
47
+
48
+ ## Non-Goals
49
+
50
+ - Refactoring every existing large file in one change.
51
+ - Blocking emergency hotfixes when a follow-up debt task is explicitly created.
52
+ - Introducing a heavy architecture framework.
53
+
54
+ ## Suggested Implementation
55
+
56
+ - Add or update a focused rule file for module boundaries and god-file
57
+ prevention.
58
+ - Reference the rule from developer-facing standards and relevant skills.
59
+ - Add a checklist to code review/QA standards.
60
+ - Add a small validation command or test only if it can be low-noise and
61
+ maintainable.
62
+
63
+ ## T-Shirt Size
64
+
65
+ S
66
+
67
+ ## Suggested Owners
68
+
69
+ Architect, Developer, QA.