@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.
- package/AGENTS.md +9 -8
- package/CLAUDE.md +13 -11
- package/README.md +78 -11
- package/dist/assets/web-console.js +169 -32
- package/dist/automation-evidence.d.ts +23 -0
- package/dist/automation-evidence.js +97 -0
- package/dist/automation-evidence.js.map +1 -0
- package/dist/autonomous-run-store.js +3 -3
- package/dist/autonomous-run-store.js.map +1 -1
- package/dist/benchmark.d.ts +4 -1
- package/dist/benchmark.js +93 -4
- package/dist/benchmark.js.map +1 -1
- package/dist/cli.js +73 -2
- package/dist/cli.js.map +1 -1
- package/dist/collaboration-flows.js +3 -5
- package/dist/collaboration-flows.js.map +1 -1
- package/dist/collection-utils.d.ts +3 -0
- package/dist/collection-utils.js +10 -0
- package/dist/collection-utils.js.map +1 -0
- package/dist/command-manifest.d.ts +12 -1
- package/dist/command-manifest.js +213 -10
- package/dist/command-manifest.js.map +1 -1
- package/dist/commands.d.ts +10 -5
- package/dist/commands.js +16 -6
- package/dist/commands.js.map +1 -1
- package/dist/config-migrations.d.ts +24 -0
- package/dist/config-migrations.js +102 -0
- package/dist/config-migrations.js.map +1 -0
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +22 -0
- package/dist/constants.js.map +1 -1
- package/dist/dashboard-commands.d.ts +2 -0
- package/dist/dashboard-commands.js +14 -0
- package/dist/dashboard-commands.js.map +1 -0
- package/dist/defaults.d.ts +13 -0
- package/dist/defaults.js +13 -0
- package/dist/defaults.js.map +1 -1
- package/dist/delegation-decision.js +23 -8
- package/dist/delegation-decision.js.map +1 -1
- package/dist/delivery-commands.js +5 -0
- package/dist/delivery-commands.js.map +1 -1
- package/dist/delivery-dashboard-charts.d.ts +4 -0
- package/dist/delivery-dashboard-charts.js +156 -0
- package/dist/delivery-dashboard-charts.js.map +1 -0
- package/dist/delivery-dashboard-html.d.ts +2 -0
- package/dist/delivery-dashboard-html.js +115 -0
- package/dist/delivery-dashboard-html.js.map +1 -0
- package/dist/delivery-dashboard-types.d.ts +78 -0
- package/dist/delivery-dashboard-types.js +2 -0
- package/dist/delivery-dashboard-types.js.map +1 -0
- package/dist/delivery-dashboard.d.ts +8 -0
- package/dist/delivery-dashboard.js +124 -0
- package/dist/delivery-dashboard.js.map +1 -0
- package/dist/effort-classification.d.ts +7 -0
- package/dist/effort-classification.js +72 -0
- package/dist/effort-classification.js.map +1 -0
- package/dist/extension-commands.d.ts +3 -0
- package/dist/extension-commands.js +40 -0
- package/dist/extension-commands.js.map +1 -0
- package/dist/extensions.d.ts +22 -0
- package/dist/extensions.js +126 -0
- package/dist/extensions.js.map +1 -0
- package/dist/github.d.ts +2 -0
- package/dist/github.js +15 -3
- package/dist/github.js.map +1 -1
- package/dist/health-checks.js +51 -0
- package/dist/health-checks.js.map +1 -1
- package/dist/lucid-story-map.d.ts +73 -0
- package/dist/lucid-story-map.js +112 -0
- package/dist/lucid-story-map.js.map +1 -0
- package/dist/mcp-integrations.d.ts +19 -0
- package/dist/mcp-integrations.js +58 -0
- package/dist/mcp-integrations.js.map +1 -0
- package/dist/mcp-tool-adapter.d.ts +21 -0
- package/dist/mcp-tool-adapter.js +56 -0
- package/dist/mcp-tool-adapter.js.map +1 -0
- package/dist/metrics-commands.js +47 -13
- package/dist/metrics-commands.js.map +1 -1
- package/dist/model-commands.d.ts +5 -0
- package/dist/model-commands.js +95 -1
- package/dist/model-commands.js.map +1 -1
- package/dist/model-providers.js +13 -1
- package/dist/model-providers.js.map +1 -1
- package/dist/package-update-check.d.ts +18 -0
- package/dist/package-update-check.js +20 -0
- package/dist/package-update-check.js.map +1 -1
- package/dist/phase-executor.d.ts +1 -0
- package/dist/phase-executor.js +115 -14
- package/dist/phase-executor.js.map +1 -1
- package/dist/phase-playbooks.d.ts +15 -0
- package/dist/phase-playbooks.js +82 -0
- package/dist/phase-playbooks.js.map +1 -1
- package/dist/planning-commands.d.ts +1 -0
- package/dist/planning-commands.js +24 -1
- package/dist/planning-commands.js.map +1 -1
- package/dist/project-detection.js +9 -7
- package/dist/project-detection.js.map +1 -1
- package/dist/prompt-registry-update.d.ts +2 -0
- package/dist/prompt-registry-update.js +5 -1
- package/dist/prompt-registry-update.js.map +1 -1
- package/dist/prompt-registry-validation.js +39 -2
- package/dist/prompt-registry-validation.js.map +1 -1
- package/dist/qa-commands.d.ts +2 -0
- package/dist/qa-commands.js +18 -0
- package/dist/qa-commands.js.map +1 -0
- package/dist/qa-coverage.d.ts +24 -0
- package/dist/qa-coverage.js +189 -0
- package/dist/qa-coverage.js.map +1 -0
- package/dist/qa-readiness.d.ts +5 -0
- package/dist/qa-readiness.js +26 -0
- package/dist/qa-readiness.js.map +1 -0
- package/dist/refresh-generated.d.ts +10 -1
- package/dist/refresh-generated.js +83 -6
- package/dist/refresh-generated.js.map +1 -1
- package/dist/release-candidate.d.ts +9 -1
- package/dist/release-candidate.js +52 -1
- package/dist/release-candidate.js.map +1 -1
- package/dist/release-commands.js +161 -8
- package/dist/release-commands.js.map +1 -1
- package/dist/release-readiness.d.ts +33 -0
- package/dist/release-readiness.js +187 -3
- package/dist/release-readiness.js.map +1 -1
- package/dist/runtime-bootstrap.js +1 -1
- package/dist/runtime-bootstrap.js.map +1 -1
- package/dist/runtime-commands.d.ts +2 -0
- package/dist/runtime-commands.js +77 -0
- package/dist/runtime-commands.js.map +1 -1
- package/dist/runtime-execution-renderer.d.ts +3 -2
- package/dist/runtime-execution-renderer.js +19 -1
- package/dist/runtime-execution-renderer.js.map +1 -1
- package/dist/runtime-execution.d.ts +2 -1
- package/dist/runtime-execution.js +71 -11
- package/dist/runtime-execution.js.map +1 -1
- package/dist/runtime-guardrails.d.ts +26 -0
- package/dist/runtime-guardrails.js +168 -0
- package/dist/runtime-guardrails.js.map +1 -0
- package/dist/setup-agents-import.js +5 -3
- package/dist/setup-agents-import.js.map +1 -1
- package/dist/skills-commands.d.ts +4 -0
- package/dist/skills-commands.js +55 -2
- package/dist/skills-commands.js.map +1 -1
- package/dist/skills-memory.d.ts +36 -2
- package/dist/skills-memory.js +165 -6
- package/dist/skills-memory.js.map +1 -1
- package/dist/skills-planning.js +2 -4
- package/dist/skills-planning.js.map +1 -1
- package/dist/skills-render.js +2 -4
- package/dist/skills-render.js.map +1 -1
- package/dist/skills.d.ts +1 -1
- package/dist/skills.js +1 -1
- package/dist/skills.js.map +1 -1
- package/dist/sprint-commands.js +2 -1
- package/dist/sprint-commands.js.map +1 -1
- package/dist/subagent-protocol.js +3 -5
- package/dist/subagent-protocol.js.map +1 -1
- package/dist/support-commands.d.ts +2 -0
- package/dist/support-commands.js +18 -0
- package/dist/support-commands.js.map +1 -0
- package/dist/support-diagnostics.d.ts +49 -0
- package/dist/support-diagnostics.js +86 -0
- package/dist/support-diagnostics.js.map +1 -0
- package/dist/task-graph-commands.js +5 -3
- package/dist/task-graph-commands.js.map +1 -1
- package/dist/telemetry-redaction.js +8 -1
- package/dist/telemetry-redaction.js.map +1 -1
- package/dist/tool-commands.d.ts +3 -0
- package/dist/tool-commands.js +62 -0
- package/dist/tool-commands.js.map +1 -1
- package/dist/tracker-adapters.d.ts +71 -0
- package/dist/tracker-adapters.js +186 -0
- package/dist/tracker-adapters.js.map +1 -0
- package/dist/tracker-commands.d.ts +2 -0
- package/dist/tracker-commands.js +119 -0
- package/dist/tracker-commands.js.map +1 -0
- package/dist/types/metrics.d.ts +24 -0
- package/dist/types/model-config.d.ts +35 -0
- package/dist/types/runtime.d.ts +56 -0
- package/dist/types/skills.d.ts +2 -0
- package/dist/types/tasks.d.ts +6 -0
- package/dist/types/workflow-run.d.ts +17 -0
- package/dist/types.d.ts +4 -4
- package/dist/types.js.map +1 -1
- package/dist/upgrade-commands.js +13 -4
- package/dist/upgrade-commands.js.map +1 -1
- package/dist/validation.js +2 -2
- package/dist/validation.js.map +1 -1
- package/dist/visual-validation.d.ts +81 -0
- package/dist/visual-validation.js +290 -0
- package/dist/visual-validation.js.map +1 -0
- package/dist/web-action-security.d.ts +11 -0
- package/dist/web-action-security.js +45 -0
- package/dist/web-action-security.js.map +1 -0
- package/dist/web-api-read-routes.js +101 -1
- package/dist/web-api-read-routes.js.map +1 -1
- package/dist/web-api.js +507 -5
- package/dist/web-api.js.map +1 -1
- package/dist/web-artifacts.d.ts +55 -0
- package/dist/web-artifacts.js +222 -0
- package/dist/web-artifacts.js.map +1 -0
- package/dist/web-console/assets/index-C9lx-V42.css +1 -0
- package/dist/web-console/assets/index-M3S0g1GK.js +11 -0
- package/dist/web-console/index.html +13 -0
- package/dist/web-console.js +9 -3
- package/dist/web-console.js.map +1 -1
- package/dist/web-recovery.d.ts +30 -0
- package/dist/web-recovery.js +163 -0
- package/dist/web-recovery.js.map +1 -0
- package/dist/web-workflow-progress.d.ts +41 -0
- package/dist/web-workflow-progress.js +114 -0
- package/dist/web-workflow-progress.js.map +1 -0
- package/dist/workflow-approval-service.d.ts +2 -1
- package/dist/workflow-approval-service.js +72 -0
- package/dist/workflow-approval-service.js.map +1 -1
- package/dist/workflow-evidence-service.js +8 -1
- package/dist/workflow-evidence-service.js.map +1 -1
- package/dist/workflow-gates.d.ts +1 -0
- package/dist/workflow-gates.js +57 -0
- package/dist/workflow-gates.js.map +1 -1
- package/dist/workflow-run-commands.js +13 -1
- package/dist/workflow-run-commands.js.map +1 -1
- package/dist/workflow-services.d.ts +16 -12
- package/dist/workflow-services.js +311 -253
- package/dist/workflow-services.js.map +1 -1
- package/dist/workflow-task-service.d.ts +11 -0
- package/dist/workflow-task-service.js +242 -0
- package/dist/workflow-task-service.js.map +1 -0
- package/dist/workspace-validator.js +109 -3
- package/dist/workspace-validator.js.map +1 -1
- package/dist/workspace.js +8 -2
- package/dist/workspace.js.map +1 -1
- package/docs/adoption-guide.md +147 -0
- package/docs/autonomous-workflow.md +118 -27
- package/docs/benchmark.md +15 -7
- package/docs/command-contracts.md +18 -1
- package/docs/core-command-surface.md +59 -13
- package/docs/end-to-end-demo.md +1 -0
- package/docs/extension-contracts.md +83 -0
- package/docs/orchestra-mvp.md +83 -3
- package/docs/persona-workflows.md +32 -0
- package/docs/release-test-matrix.md +42 -0
- package/docs/runtime-adapters.md +92 -0
- package/docs/runtime-llm-flow.md +13 -0
- package/docs/setup-agents-applicability-review.md +173 -0
- package/docs/source-of-truth-and-agent-learning.md +14 -0
- package/docs/traceability-flow.md +5 -1
- package/docs/tracker-adapter-contract.md +10 -1
- package/docs/web-console-qa.md +35 -0
- package/package.json +12 -6
- package/rules/development-engineering.mdc +66 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
+
import { uniqueNonEmptyStrings } from "./collection-utils.js";
|
|
2
3
|
import { roleForRiskArea } from "./role-aliases.js";
|
|
3
4
|
import { appendEvent, loadWorkspace, readEvents } from "./workspace.js";
|
|
4
5
|
const REVIEW_STATUSES = new Set(["review", "approved"]);
|
|
@@ -215,8 +216,25 @@ function delegationRationale(task, complexityScore, urgency) {
|
|
|
215
216
|
];
|
|
216
217
|
}
|
|
217
218
|
function needsReviewDelegation(task, events) {
|
|
218
|
-
|
|
219
|
-
|
|
219
|
+
if (REVIEW_STATUSES.has(task.status)) {
|
|
220
|
+
return true;
|
|
221
|
+
}
|
|
222
|
+
if (task.status !== "in_progress") {
|
|
223
|
+
return false;
|
|
224
|
+
}
|
|
225
|
+
return events.some((event) => isDeliveryReviewSignal(event));
|
|
226
|
+
}
|
|
227
|
+
function isDeliveryReviewSignal(event) {
|
|
228
|
+
if (event.type === "REVIEW_RECORDED") {
|
|
229
|
+
return true;
|
|
230
|
+
}
|
|
231
|
+
if (event.type === "HANDOFF_READY") {
|
|
232
|
+
return (event.metadata.to === "qa" || event.metadata.to === "reviewer_critic");
|
|
233
|
+
}
|
|
234
|
+
if (event.type === "EVIDENCE_ADDED") {
|
|
235
|
+
return event.actor === "qa" || event.metadata.deliveryReady === true;
|
|
236
|
+
}
|
|
237
|
+
return false;
|
|
220
238
|
}
|
|
221
239
|
function candidateAssignments(task, roleIds) {
|
|
222
240
|
const assignments = new Map();
|
|
@@ -228,8 +246,8 @@ function candidateAssignments(task, roleIds) {
|
|
|
228
246
|
assignments.set(role, existing
|
|
229
247
|
? {
|
|
230
248
|
...existing,
|
|
231
|
-
rationale:
|
|
232
|
-
writeScopes:
|
|
249
|
+
rationale: uniqueNonEmptyStrings(existing.rationale.concat(rationale)),
|
|
250
|
+
writeScopes: uniqueNonEmptyStrings(existing.writeScopes.concat(scopes)),
|
|
233
251
|
}
|
|
234
252
|
: assignment(role, "execute", rationale, scopes));
|
|
235
253
|
};
|
|
@@ -261,7 +279,7 @@ function assignment(role, mode, rationale, writeScopes) {
|
|
|
261
279
|
role,
|
|
262
280
|
mode,
|
|
263
281
|
rationale,
|
|
264
|
-
writeScopes:
|
|
282
|
+
writeScopes: uniqueNonEmptyStrings(writeScopes),
|
|
265
283
|
expectedOutputs: mode === "review"
|
|
266
284
|
? ["review findings", "approval or blocking recommendation"]
|
|
267
285
|
: ["role-scoped artifact", "tests or evidence", "handoff summary"],
|
|
@@ -377,7 +395,4 @@ function pathsConflict(left, right) {
|
|
|
377
395
|
function normalizePath(value) {
|
|
378
396
|
return value.split(path.sep).join("/").replace(/^\.\//, "");
|
|
379
397
|
}
|
|
380
|
-
function unique(values) {
|
|
381
|
-
return [...new Set(values.filter(Boolean))];
|
|
382
|
-
}
|
|
383
398
|
//# sourceMappingURL=delegation-decision.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegation-decision.js","sourceRoot":"","sources":["../src/delegation-decision.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"delegation-decision.js","sourceRoot":"","sources":["../src/delegation-decision.ts"],"names":[],"mappings":"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"}
|
|
@@ -100,6 +100,11 @@ export async function evidenceCommand(options, io) {
|
|
|
100
100
|
path: options.path,
|
|
101
101
|
command: options.command,
|
|
102
102
|
exitCode: options["exit-code"],
|
|
103
|
+
surface: options.surface,
|
|
104
|
+
assertions: options.assertions,
|
|
105
|
+
externalValidation: options["external-validation"],
|
|
106
|
+
deferredOwner: options["deferred-owner"],
|
|
107
|
+
deferredRationale: options["deferred-rationale"],
|
|
103
108
|
});
|
|
104
109
|
const { artifact } = await addEvidence(input);
|
|
105
110
|
io.log(`Created ${artifact}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delivery-commands.js","sourceRoot":"","sources":["../src/delivery-commands.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"delivery-commands.js","sourceRoot":"","sources":["../src/delivery-commands.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EACL,WAAW,EACX,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,WAAW,EACX,cAAc,EACd,YAAY,GACb,MAAM,wBAAwB,CAAC;AAUhC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAAmB,EACnB,EAAS;IAET,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9C,OAAO;IACT,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAmB,EACnB,EAAS;IAET,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IACD,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAmB,EACnB,EAAS;IAET,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,aAAa,CACtC,eAAe,CAAe;QAC5B,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,EAAE,EAAE,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC;QAC7B,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;QACvC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;QACzC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;QACnC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;QACzC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;QACpC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC;QAChC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,UAAU,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC;QAC5C,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;KACxD,CAAC,CACH,CAAC;IACF,EAAE,CAAC,GAAG,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAmB,EACnB,EAAS;IAET,MAAM,KAAK,GAAgB;QACzB,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC;QACrC,QAAQ,EAAE,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,MAAM;QAClD,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;QACzC,cAAc,EAAE,UAAU,CAAC,OAAO,EAAE,gBAAgB,CAAC;KACtD,CAAC;IACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,EAAE,CAAC,GAAG,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAmB,EACnB,EAAS;IAET,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC;QACpC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;QACnC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;QACvC,QAAQ,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC;QACzC,YAAY,EAAE,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC;QACjD,MAAM,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,UAAU,CAGnC;QAChB,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;KACpC,CAAC,CAAC;IACH,EAAE,CAAC,GAAG,CAAC,WAAW,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAmB,EACnB,EAAS;IAET,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3C,OAAO;IACT,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACvB,OAAO;IACT,CAAC;IACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,EAAE,CAAC,GAAG,CACJ,GAAG,QAAQ,CAAC,MAAM,IAAI,SAAS,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,OAAO,EAAE,CACzE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAmB,EACnB,EAAS;IAET,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO;IACT,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,IAAI,SAAS,CAAC,CAAC;QAC/D,EAAE,CAAC,GAAG,CACJ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,KAAK,QAAQ,GAAG,CACxE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAmB,EACnB,EAAS;IAET,MAAM,KAAK,GAAG,eAAe,CAAgB;QAC3C,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;QACjC,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC;QACvC,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC;QAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,kBAAkB,EAAE,OAAO,CAAC,qBAAqB,CAAC;QAClD,aAAa,EAAE,OAAO,CAAC,gBAAgB,CAAC;QACxC,iBAAiB,EAAE,OAAO,CAAC,oBAAoB,CAAC;KACjD,CAAC,CAAC;IACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9C,EAAE,CAAC,GAAG,CAAC,WAAW,QAAQ,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAmB,EACnB,EAAS;IAET,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAChE,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1C,OAAO;IACT,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACtB,OAAO;IACT,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC;QACrD,EAAE,CAAC,GAAG,CACJ,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE,CACrE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAC9B,IAAU,EACV,MAA+C;IAE/C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QACvB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACxD,CAAC,CAAC,QAAQ,CAAC;IACf,OAAO;QACL,eAAe,IAAI,CAAC,EAAE,EAAE;QACxB,EAAE;QACF,WAAW,MAAM,EAAE;QACnB,EAAE;QACF,iBAAiB;QACjB,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,MAI3B;IACC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACpD,MAAM,OAAO,GACX,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QACvB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACxD,CAAC,CAAC,QAAQ,CAAC;IACf,OAAO;QACL,UAAU,MAAM,CAAC,MAAM,EAAE;QACzB,EAAE;QACF,WAAW,MAAM,EAAE;QACnB,EAAE;QACF,iBAAiB;QACjB,OAAO;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { AutonomousRun, BenchmarkResult, EffortBreakdown, EventEntry, Task } from "./types.js";
|
|
2
|
+
import type { DashboardCharts, DashboardEffortMetrics } from "./delivery-dashboard-types.js";
|
|
3
|
+
export declare function effortMetrics(breakdowns: EffortBreakdown[]): DashboardEffortMetrics;
|
|
4
|
+
export declare function chartData(tasks: Task[], benchmarks: BenchmarkResult[], runs: AutonomousRun[], events: EventEntry[]): DashboardCharts;
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
const MIN_AI_HOURS_FOR_RULES_MULTIPLIER = 0.1;
|
|
2
|
+
export function effortMetrics(breakdowns) {
|
|
3
|
+
const totals = breakdowns.reduce((sum, item) => ({
|
|
4
|
+
aiAutonomousMinutes: sum.aiAutonomousMinutes + item.aiAutonomousMinutes,
|
|
5
|
+
aiSupervisedMinutes: sum.aiSupervisedMinutes + item.aiSupervisedMinutes,
|
|
6
|
+
aiCalibrationBaselineMinutes: sum.aiCalibrationBaselineMinutes + item.aiCalibrationBaselineMinutes,
|
|
7
|
+
humanReviewMinutes: sum.humanReviewMinutes + item.humanReviewMinutes,
|
|
8
|
+
humanManualMinutes: sum.humanManualMinutes + item.humanManualMinutes,
|
|
9
|
+
}), {
|
|
10
|
+
aiAutonomousMinutes: 0,
|
|
11
|
+
aiSupervisedMinutes: 0,
|
|
12
|
+
aiCalibrationBaselineMinutes: 0,
|
|
13
|
+
humanReviewMinutes: 0,
|
|
14
|
+
humanManualMinutes: 0,
|
|
15
|
+
});
|
|
16
|
+
const aiHours = minutesToHours(totals.aiAutonomousMinutes + totals.aiSupervisedMinutes);
|
|
17
|
+
const totalHours = minutesToHours(totals.aiAutonomousMinutes +
|
|
18
|
+
totals.aiSupervisedMinutes +
|
|
19
|
+
totals.humanReviewMinutes +
|
|
20
|
+
totals.humanManualMinutes);
|
|
21
|
+
const baselineHours = minutesToHours(totals.aiCalibrationBaselineMinutes);
|
|
22
|
+
return {
|
|
23
|
+
humanManualHours: minutesToHours(totals.humanManualMinutes),
|
|
24
|
+
humanReviewHours: minutesToHours(totals.humanReviewMinutes),
|
|
25
|
+
aiSupervisedHours: minutesToHours(totals.aiSupervisedMinutes),
|
|
26
|
+
aiAutonomousHours: minutesToHours(totals.aiAutonomousMinutes),
|
|
27
|
+
aiCalibrationBaselineHours: baselineHours,
|
|
28
|
+
totalHours,
|
|
29
|
+
aiRatioPct: totalHours > 0 ? Math.round((aiHours / totalHours) * 100) : 0,
|
|
30
|
+
rulesMultiplier: aiHours >= MIN_AI_HOURS_FOR_RULES_MULTIPLIER
|
|
31
|
+
? roundHours(baselineHours / aiHours)
|
|
32
|
+
: null,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
export function chartData(tasks, benchmarks, runs, events) {
|
|
36
|
+
return {
|
|
37
|
+
burndown: burndown(tasks),
|
|
38
|
+
statusDonut: countsBy(tasks, (task) => task.status),
|
|
39
|
+
phaseAvgCycleTime: phaseAverage(benchmarks),
|
|
40
|
+
doneByOwner: countsBy(tasks.filter((task) => task.status === "done"), (task) => task.ownerRole),
|
|
41
|
+
storyCycleTime: benchmarks
|
|
42
|
+
.filter((story) => story.actualHours !== null)
|
|
43
|
+
.map((story) => ({ label: story.taskId, value: story.actualHours ?? 0 })),
|
|
44
|
+
ownerDistribution: countsBy(tasks, (task) => task.ownerRole),
|
|
45
|
+
velocity: velocity(events),
|
|
46
|
+
effortDonut: effortDonut(benchmarks),
|
|
47
|
+
effortByPhase: effortByPhase(benchmarks),
|
|
48
|
+
effortTimeline: effortTimeline(benchmarks, runs),
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function burndown(tasks) {
|
|
52
|
+
const total = tasks.length;
|
|
53
|
+
const doneTasks = tasks
|
|
54
|
+
.filter((task) => task.doneAt)
|
|
55
|
+
.sort((left, right) => String(left.doneAt).localeCompare(String(right.doneAt)));
|
|
56
|
+
const points = [{ label: "start", value: total }];
|
|
57
|
+
doneTasks.forEach((task, index) => {
|
|
58
|
+
points.push({
|
|
59
|
+
label: String(task.doneAt).slice(0, 10),
|
|
60
|
+
value: Math.max(0, total - index - 1),
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
return points;
|
|
64
|
+
}
|
|
65
|
+
function countsBy(items, keyFor) {
|
|
66
|
+
const counts = new Map();
|
|
67
|
+
for (const item of items) {
|
|
68
|
+
const key = keyFor(item);
|
|
69
|
+
counts.set(key, (counts.get(key) ?? 0) + 1);
|
|
70
|
+
}
|
|
71
|
+
return [...counts.entries()].map(([label, value]) => ({ label, value }));
|
|
72
|
+
}
|
|
73
|
+
function phaseAverage(benchmarks) {
|
|
74
|
+
const buckets = new Map();
|
|
75
|
+
for (const story of benchmarks) {
|
|
76
|
+
for (const phase of story.phaseDurations) {
|
|
77
|
+
if (phase.durationMs === null)
|
|
78
|
+
continue;
|
|
79
|
+
const values = buckets.get(phase.phase) ?? [];
|
|
80
|
+
values.push(phase.durationMs / 1000 / 60 / 60);
|
|
81
|
+
buckets.set(phase.phase, values);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
return [...buckets.entries()].map(([label, values]) => ({
|
|
85
|
+
label,
|
|
86
|
+
value: roundHours(values.reduce((sum, value) => sum + value, 0) / values.length),
|
|
87
|
+
}));
|
|
88
|
+
}
|
|
89
|
+
function velocity(events) {
|
|
90
|
+
const doneEvents = events.filter((event) => event.type === "TASK_UPDATED" && String(event.metadata.status) === "done");
|
|
91
|
+
const counts = new Map();
|
|
92
|
+
for (const event of doneEvents) {
|
|
93
|
+
const week = event.timestamp.slice(0, 10);
|
|
94
|
+
counts.set(week, (counts.get(week) ?? 0) + 1);
|
|
95
|
+
}
|
|
96
|
+
return [...counts.entries()].map(([label, value]) => ({ label, value }));
|
|
97
|
+
}
|
|
98
|
+
function effortDonut(benchmarks) {
|
|
99
|
+
const effort = effortMetrics(benchmarks.map((story) => story.effortBreakdown));
|
|
100
|
+
return [
|
|
101
|
+
{ label: "AI Supervisado", value: effort.aiSupervisedHours },
|
|
102
|
+
{ label: "AI Autonomo", value: effort.aiAutonomousHours },
|
|
103
|
+
{ label: "Human Review", value: effort.humanReviewHours },
|
|
104
|
+
{ label: "Human Manual", value: effort.humanManualHours },
|
|
105
|
+
].filter((slice) => slice.value > 0);
|
|
106
|
+
}
|
|
107
|
+
function effortByPhase(benchmarks) {
|
|
108
|
+
const totals = new Map();
|
|
109
|
+
for (const story of benchmarks) {
|
|
110
|
+
for (const phase of story.phaseDurations) {
|
|
111
|
+
if (phase.durationMs === null)
|
|
112
|
+
continue;
|
|
113
|
+
totals.set(phase.phase, (totals.get(phase.phase) ?? 0) + phase.durationMs / 1000 / 60 / 60);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
return [...totals.entries()].map(([label, value]) => ({
|
|
117
|
+
label,
|
|
118
|
+
value: roundHours(value),
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
function effortTimeline(benchmarks, runs) {
|
|
122
|
+
const byTask = new Map(runs.map((run) => [run.taskId, run]));
|
|
123
|
+
const timeline = new Map();
|
|
124
|
+
for (const story of benchmarks) {
|
|
125
|
+
const run = byTask.get(story.taskId);
|
|
126
|
+
const label = run?.phases
|
|
127
|
+
.find((phase) => phase.phase === "release")
|
|
128
|
+
?.completedAt?.slice(0, 10) ?? "pending";
|
|
129
|
+
const point = timeline.get(label) ?? {
|
|
130
|
+
label,
|
|
131
|
+
aiSupervisedHours: 0,
|
|
132
|
+
aiAutonomousHours: 0,
|
|
133
|
+
humanReviewHours: 0,
|
|
134
|
+
humanManualHours: 0,
|
|
135
|
+
};
|
|
136
|
+
point.aiSupervisedHours += story.effortBreakdown.aiSupervisedMinutes / 60;
|
|
137
|
+
point.aiAutonomousHours += story.effortBreakdown.aiAutonomousMinutes / 60;
|
|
138
|
+
point.humanReviewHours += story.effortBreakdown.humanReviewMinutes / 60;
|
|
139
|
+
point.humanManualHours += story.effortBreakdown.humanManualMinutes / 60;
|
|
140
|
+
timeline.set(label, point);
|
|
141
|
+
}
|
|
142
|
+
return [...timeline.values()].map((point) => ({
|
|
143
|
+
label: point.label,
|
|
144
|
+
aiSupervisedHours: roundHours(point.aiSupervisedHours),
|
|
145
|
+
aiAutonomousHours: roundHours(point.aiAutonomousHours),
|
|
146
|
+
humanReviewHours: roundHours(point.humanReviewHours),
|
|
147
|
+
humanManualHours: roundHours(point.humanManualHours),
|
|
148
|
+
}));
|
|
149
|
+
}
|
|
150
|
+
function minutesToHours(minutes) {
|
|
151
|
+
return roundHours(minutes / 60);
|
|
152
|
+
}
|
|
153
|
+
function roundHours(value) {
|
|
154
|
+
return Math.round(value * 100) / 100;
|
|
155
|
+
}
|
|
156
|
+
//# sourceMappingURL=delivery-dashboard-charts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery-dashboard-charts.js","sourceRoot":"","sources":["../src/delivery-dashboard-charts.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
const CHART_JS_CDN = "https://cdn.jsdelivr.net/npm/chart.js@4.5.1/dist/chart.umd.min.js";
|
|
2
|
+
const CHART_CARDS = [
|
|
3
|
+
["Burndown", "burndown"],
|
|
4
|
+
["Status", "statusDonut"],
|
|
5
|
+
["Phase avg cycle time", "phaseAvgCycleTime"],
|
|
6
|
+
["Done by owner", "doneByOwner"],
|
|
7
|
+
["Story cycle time", "storyCycleTime"],
|
|
8
|
+
["Owner distribution", "ownerDistribution"],
|
|
9
|
+
["Velocity", "velocity"],
|
|
10
|
+
["Effort mix", "effortDonut"],
|
|
11
|
+
["Effort by phase", "effortByPhase"],
|
|
12
|
+
["Effort timeline", "effortTimeline"],
|
|
13
|
+
];
|
|
14
|
+
export function renderDeliveryDashboardHtml(dashboard) {
|
|
15
|
+
const data = safeJson(dashboard);
|
|
16
|
+
return `<!doctype html>
|
|
17
|
+
<html lang="en">
|
|
18
|
+
<head>
|
|
19
|
+
<meta charset="utf-8">
|
|
20
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
21
|
+
<title>${escapeHtml(dashboard.project.name)} Delivery Dashboard</title>
|
|
22
|
+
<script src="${CHART_JS_CDN}"></script>
|
|
23
|
+
<style>
|
|
24
|
+
:root { color-scheme: light; --ink: #172033; --muted: #5f6b7a; --line: #d8dee8; --panel: #ffffff; --bg: #f5f7fb; --accent: #1f6feb; }
|
|
25
|
+
body { margin: 0; font: 14px/1.45 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: var(--ink); background: var(--bg); }
|
|
26
|
+
main { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 40px; }
|
|
27
|
+
header { margin-bottom: 18px; }
|
|
28
|
+
h1 { margin: 0 0 6px; font-size: 1.7rem; letter-spacing: 0; }
|
|
29
|
+
h2 { margin: 0 0 10px; font-size: 1rem; letter-spacing: 0; }
|
|
30
|
+
p { margin: 0; color: var(--muted); }
|
|
31
|
+
.grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
|
|
32
|
+
.charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
|
|
33
|
+
.panel, .metric { background: var(--panel); border: 1px solid var(--line); border-radius: 8px; padding: 14px; }
|
|
34
|
+
.metric strong { display: block; font-size: 1.3rem; margin-bottom: 2px; }
|
|
35
|
+
.chart-frame { height: 230px; position: relative; }
|
|
36
|
+
table { width: 100%; border-collapse: collapse; margin-top: 12px; background: var(--panel); border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
|
|
37
|
+
th, td { padding: 10px; border-bottom: 1px solid var(--line); text-align: left; }
|
|
38
|
+
th { color: var(--muted); font-weight: 600; }
|
|
39
|
+
@media (max-width: 820px) { .grid, .charts { grid-template-columns: 1fr; } main { width: min(100% - 20px, 1180px); padding-top: 18px; } }
|
|
40
|
+
</style>
|
|
41
|
+
</head>
|
|
42
|
+
<body>
|
|
43
|
+
<main>
|
|
44
|
+
<header>
|
|
45
|
+
<h1>${escapeHtml(dashboard.project.name)} Delivery Dashboard</h1>
|
|
46
|
+
<p>Generated ${escapeHtml(dashboard.project.generatedAt)} from local Open Orchestra telemetry.</p>
|
|
47
|
+
</header>
|
|
48
|
+
<section class="grid" aria-label="Key metrics">
|
|
49
|
+
${metric("Tasks done", `${dashboard.metrics.tasks.done}/${dashboard.metrics.tasks.total}`, `${dashboard.metrics.tasks.completionPct}% complete`)}
|
|
50
|
+
${metric("Workflow runs", String(dashboard.metrics.tasks.workflowRuns), "local autonomous run records")}
|
|
51
|
+
${metric("Total effort", `${dashboard.metrics.effort.totalHours}h`, `${dashboard.metrics.effort.aiRatioPct}% AI ratio`)}
|
|
52
|
+
${metric("Evidence", String(dashboard.metrics.evidence.count), `${dashboard.metrics.evidence.decisions} decisions`)}
|
|
53
|
+
</section>
|
|
54
|
+
<section class="charts" aria-label="Delivery charts">
|
|
55
|
+
${CHART_CARDS.map(([title, id]) => chartCard(title, id)).join("")}
|
|
56
|
+
</section>
|
|
57
|
+
<table aria-label="Benchmark stories">
|
|
58
|
+
<thead><tr><th>Story</th><th>Size</th><th>Status</th><th>Mode</th><th>Actual</th><th>Total effort</th></tr></thead>
|
|
59
|
+
<tbody>${storyRows(dashboard)}</tbody>
|
|
60
|
+
</table>
|
|
61
|
+
</main>
|
|
62
|
+
<script id="dashboard-data" type="application/json">${data}</script>
|
|
63
|
+
<script>${chartScript()}</script>
|
|
64
|
+
</body>
|
|
65
|
+
</html>
|
|
66
|
+
`;
|
|
67
|
+
}
|
|
68
|
+
function storyRows(dashboard) {
|
|
69
|
+
return dashboard.stories
|
|
70
|
+
.map((story) => `<tr><td>${escapeHtml(story.taskId)}</td><td>${escapeHtml(story.sizingLabel)}</td><td>${escapeHtml(story.status)}</td><td>${escapeHtml(story.classification)}</td><td>${story.actualHours ?? "pending"}h</td><td>${story.effort.totalHours}h</td></tr>`)
|
|
71
|
+
.join("");
|
|
72
|
+
}
|
|
73
|
+
function chartScript() {
|
|
74
|
+
return `
|
|
75
|
+
const dashboard = JSON.parse(document.getElementById("dashboard-data").textContent);
|
|
76
|
+
const colors = ["#1f6feb", "#2da44e", "#d29922", "#cf222e", "#8250df", "#0969da"];
|
|
77
|
+
function values(items) { return items.map((item) => item.value); }
|
|
78
|
+
function labels(items) { return items.map((item) => item.label); }
|
|
79
|
+
function render(id, type, items) {
|
|
80
|
+
const canvas = document.getElementById(id);
|
|
81
|
+
if (!canvas || !items.length || !window.Chart) return;
|
|
82
|
+
new Chart(canvas, { type, data: { labels: labels(items), datasets: [{ data: values(items), backgroundColor: colors, borderColor: "#ffffff" }] }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { position: "bottom" } } } });
|
|
83
|
+
}
|
|
84
|
+
render("burndown", "line", dashboard.charts.burndown);
|
|
85
|
+
render("statusDonut", "doughnut", dashboard.charts.statusDonut);
|
|
86
|
+
render("phaseAvgCycleTime", "bar", dashboard.charts.phaseAvgCycleTime);
|
|
87
|
+
render("doneByOwner", "bar", dashboard.charts.doneByOwner);
|
|
88
|
+
render("storyCycleTime", "bar", dashboard.charts.storyCycleTime);
|
|
89
|
+
render("ownerDistribution", "doughnut", dashboard.charts.ownerDistribution);
|
|
90
|
+
render("velocity", "bar", dashboard.charts.velocity);
|
|
91
|
+
render("effortDonut", "doughnut", dashboard.charts.effortDonut);
|
|
92
|
+
render("effortByPhase", "bar", dashboard.charts.effortByPhase);
|
|
93
|
+
const timeline = dashboard.charts.effortTimeline;
|
|
94
|
+
if (timeline.length && window.Chart) {
|
|
95
|
+
new Chart(document.getElementById("effortTimeline"), { type: "bar", data: { labels: labels(timeline), datasets: ["aiSupervisedHours", "aiAutonomousHours", "humanReviewHours", "humanManualHours"].map((key, index) => ({ label: key, data: timeline.map((item) => item[key]), backgroundColor: colors[index] })) }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { position: "bottom" } }, scales: { x: { stacked: true }, y: { stacked: true } } } });
|
|
96
|
+
}
|
|
97
|
+
`;
|
|
98
|
+
}
|
|
99
|
+
function metric(value, label, detail) {
|
|
100
|
+
return `<div class="metric"><strong>${escapeHtml(value)}</strong><span>${escapeHtml(label)}</span><p>${escapeHtml(detail)}</p></div>`;
|
|
101
|
+
}
|
|
102
|
+
function chartCard(title, id) {
|
|
103
|
+
return `<div class="panel"><h2>${escapeHtml(title)}</h2><div class="chart-frame"><canvas id="${escapeHtml(id)}" aria-label="${escapeHtml(title)}" role="img"></canvas></div></div>`;
|
|
104
|
+
}
|
|
105
|
+
function safeJson(value) {
|
|
106
|
+
return JSON.stringify(value).replace(/</g, "\\u003c");
|
|
107
|
+
}
|
|
108
|
+
function escapeHtml(value) {
|
|
109
|
+
return value
|
|
110
|
+
.replace(/&/g, "&")
|
|
111
|
+
.replace(/</g, "<")
|
|
112
|
+
.replace(/>/g, ">")
|
|
113
|
+
.replace(/"/g, """);
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=delivery-dashboard-html.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery-dashboard-html.js","sourceRoot":"","sources":["../src/delivery-dashboard-html.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import type { BenchmarkResult, EffortBreakdown, UsageReport } from "./types.js";
|
|
2
|
+
export interface DeliveryDashboardOptions {
|
|
3
|
+
output?: string;
|
|
4
|
+
format?: "html" | "json";
|
|
5
|
+
open?: boolean;
|
|
6
|
+
recalculateEffort?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface DeliveryDashboard {
|
|
9
|
+
project: {
|
|
10
|
+
name: string;
|
|
11
|
+
root: string;
|
|
12
|
+
generatedAt: string;
|
|
13
|
+
};
|
|
14
|
+
metrics: {
|
|
15
|
+
tasks: {
|
|
16
|
+
total: number;
|
|
17
|
+
done: number;
|
|
18
|
+
claimed: number;
|
|
19
|
+
open: number;
|
|
20
|
+
completionPct: number;
|
|
21
|
+
avgCycleHours: number | null;
|
|
22
|
+
workflowRuns: number;
|
|
23
|
+
};
|
|
24
|
+
effort: DashboardEffortMetrics;
|
|
25
|
+
evidence: {
|
|
26
|
+
count: number;
|
|
27
|
+
decisions: number;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
charts: DashboardCharts;
|
|
31
|
+
stories: DashboardStory[];
|
|
32
|
+
usage: UsageReport;
|
|
33
|
+
}
|
|
34
|
+
export interface DashboardEffortMetrics {
|
|
35
|
+
humanManualHours: number;
|
|
36
|
+
humanReviewHours: number;
|
|
37
|
+
aiSupervisedHours: number;
|
|
38
|
+
aiAutonomousHours: number;
|
|
39
|
+
aiCalibrationBaselineHours: number;
|
|
40
|
+
totalHours: number;
|
|
41
|
+
aiRatioPct: number;
|
|
42
|
+
rulesMultiplier: number | null;
|
|
43
|
+
}
|
|
44
|
+
export interface DashboardStory {
|
|
45
|
+
taskId: string;
|
|
46
|
+
status: BenchmarkResult["status"];
|
|
47
|
+
sizingLabel: BenchmarkResult["sizingLabel"];
|
|
48
|
+
actualHours: number | null;
|
|
49
|
+
classification: EffortBreakdown["classification"];
|
|
50
|
+
effort: DashboardEffortMetrics;
|
|
51
|
+
}
|
|
52
|
+
export interface ChartSlice {
|
|
53
|
+
label: string;
|
|
54
|
+
value: number;
|
|
55
|
+
}
|
|
56
|
+
export interface SeriesPoint {
|
|
57
|
+
label: string;
|
|
58
|
+
value: number;
|
|
59
|
+
}
|
|
60
|
+
export interface PhaseSeriesPoint {
|
|
61
|
+
label: string;
|
|
62
|
+
aiSupervisedHours: number;
|
|
63
|
+
aiAutonomousHours: number;
|
|
64
|
+
humanReviewHours: number;
|
|
65
|
+
humanManualHours: number;
|
|
66
|
+
}
|
|
67
|
+
export interface DashboardCharts {
|
|
68
|
+
burndown: SeriesPoint[];
|
|
69
|
+
statusDonut: ChartSlice[];
|
|
70
|
+
phaseAvgCycleTime: ChartSlice[];
|
|
71
|
+
doneByOwner: ChartSlice[];
|
|
72
|
+
storyCycleTime: ChartSlice[];
|
|
73
|
+
ownerDistribution: ChartSlice[];
|
|
74
|
+
velocity: SeriesPoint[];
|
|
75
|
+
effortDonut: ChartSlice[];
|
|
76
|
+
effortByPhase: ChartSlice[];
|
|
77
|
+
effortTimeline: PhaseSeriesPoint[];
|
|
78
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivery-dashboard-types.js","sourceRoot":"","sources":["../src/delivery-dashboard-types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { DeliveryDashboard, DeliveryDashboardOptions } from "./delivery-dashboard-types.js";
|
|
2
|
+
import type { CliOptions } from "./types.js";
|
|
3
|
+
export declare function buildDeliveryDashboard(root: string): Promise<DeliveryDashboard>;
|
|
4
|
+
export declare function writeDeliveryDashboard(root: string, options?: DeliveryDashboardOptions): Promise<{
|
|
5
|
+
dashboard: DeliveryDashboard;
|
|
6
|
+
outputPath?: string;
|
|
7
|
+
}>;
|
|
8
|
+
export declare function dashboardOptions(options: CliOptions): DeliveryDashboardOptions;
|