@generacy-ai/workflow-engine 0.0.0-preview-20260304013206
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/LICENSE +191 -0
- package/README.md +265 -0
- package/dist/actions/base-action.d.ts +63 -0
- package/dist/actions/base-action.d.ts.map +1 -0
- package/dist/actions/base-action.js +130 -0
- package/dist/actions/base-action.js.map +1 -0
- package/dist/actions/builtin/agent-invoke.d.ts +16 -0
- package/dist/actions/builtin/agent-invoke.d.ts.map +1 -0
- package/dist/actions/builtin/agent-invoke.js +108 -0
- package/dist/actions/builtin/agent-invoke.js.map +1 -0
- package/dist/actions/builtin/humancy-api-handler.d.ts +191 -0
- package/dist/actions/builtin/humancy-api-handler.d.ts.map +1 -0
- package/dist/actions/builtin/humancy-api-handler.js +521 -0
- package/dist/actions/builtin/humancy-api-handler.js.map +1 -0
- package/dist/actions/builtin/humancy-review.d.ts +83 -0
- package/dist/actions/builtin/humancy-review.d.ts.map +1 -0
- package/dist/actions/builtin/humancy-review.js +250 -0
- package/dist/actions/builtin/humancy-review.js.map +1 -0
- package/dist/actions/builtin/pr-create.d.ts +16 -0
- package/dist/actions/builtin/pr-create.d.ts.map +1 -0
- package/dist/actions/builtin/pr-create.js +110 -0
- package/dist/actions/builtin/pr-create.js.map +1 -0
- package/dist/actions/builtin/shell.d.ts +16 -0
- package/dist/actions/builtin/shell.d.ts.map +1 -0
- package/dist/actions/builtin/shell.js +80 -0
- package/dist/actions/builtin/shell.js.map +1 -0
- package/dist/actions/builtin/speckit/index.d.ts +47 -0
- package/dist/actions/builtin/speckit/index.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/index.js +347 -0
- package/dist/actions/builtin/speckit/index.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/feature.d.ts +17 -0
- package/dist/actions/builtin/speckit/lib/feature.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/feature.js +430 -0
- package/dist/actions/builtin/speckit/lib/feature.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/fs.d.ts +62 -0
- package/dist/actions/builtin/speckit/lib/fs.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/fs.js +181 -0
- package/dist/actions/builtin/speckit/lib/fs.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/paths.d.ts +7 -0
- package/dist/actions/builtin/speckit/lib/paths.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/paths.js +161 -0
- package/dist/actions/builtin/speckit/lib/paths.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/prereqs.d.ts +8 -0
- package/dist/actions/builtin/speckit/lib/prereqs.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/prereqs.js +194 -0
- package/dist/actions/builtin/speckit/lib/prereqs.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/stream-batcher.d.ts +14 -0
- package/dist/actions/builtin/speckit/lib/stream-batcher.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/stream-batcher.js +31 -0
- package/dist/actions/builtin/speckit/lib/stream-batcher.js.map +1 -0
- package/dist/actions/builtin/speckit/lib/templates.d.ts +15 -0
- package/dist/actions/builtin/speckit/lib/templates.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/lib/templates.js +176 -0
- package/dist/actions/builtin/speckit/lib/templates.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/check-prereqs.d.ts +11 -0
- package/dist/actions/builtin/speckit/operations/check-prereqs.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/check-prereqs.js +22 -0
- package/dist/actions/builtin/speckit/operations/check-prereqs.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/clarify.d.ts +7 -0
- package/dist/actions/builtin/speckit/operations/clarify.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/clarify.js +302 -0
- package/dist/actions/builtin/speckit/operations/clarify.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/copy-template.d.ts +11 -0
- package/dist/actions/builtin/speckit/operations/copy-template.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/copy-template.js +23 -0
- package/dist/actions/builtin/speckit/operations/copy-template.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/create-feature.d.ts +11 -0
- package/dist/actions/builtin/speckit/operations/create-feature.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/create-feature.js +25 -0
- package/dist/actions/builtin/speckit/operations/create-feature.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/get-paths.d.ts +11 -0
- package/dist/actions/builtin/speckit/operations/get-paths.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/get-paths.js +17 -0
- package/dist/actions/builtin/speckit/operations/get-paths.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/implement.d.ts +7 -0
- package/dist/actions/builtin/speckit/operations/implement.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/implement.js +246 -0
- package/dist/actions/builtin/speckit/operations/implement.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/plan.d.ts +7 -0
- package/dist/actions/builtin/speckit/operations/plan.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/plan.js +253 -0
- package/dist/actions/builtin/speckit/operations/plan.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/specify.d.ts +7 -0
- package/dist/actions/builtin/speckit/operations/specify.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/specify.js +178 -0
- package/dist/actions/builtin/speckit/operations/specify.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/tasks-to-issues.d.ts +42 -0
- package/dist/actions/builtin/speckit/operations/tasks-to-issues.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/tasks-to-issues.js +386 -0
- package/dist/actions/builtin/speckit/operations/tasks-to-issues.js.map +1 -0
- package/dist/actions/builtin/speckit/operations/tasks.d.ts +7 -0
- package/dist/actions/builtin/speckit/operations/tasks.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/operations/tasks.js +234 -0
- package/dist/actions/builtin/speckit/operations/tasks.js.map +1 -0
- package/dist/actions/builtin/speckit/types.d.ts +268 -0
- package/dist/actions/builtin/speckit/types.d.ts.map +1 -0
- package/dist/actions/builtin/speckit/types.js +11 -0
- package/dist/actions/builtin/speckit/types.js.map +1 -0
- package/dist/actions/builtin/verification-check.d.ts +16 -0
- package/dist/actions/builtin/verification-check.d.ts.map +1 -0
- package/dist/actions/builtin/verification-check.js +99 -0
- package/dist/actions/builtin/verification-check.js.map +1 -0
- package/dist/actions/builtin/workspace-prepare.d.ts +16 -0
- package/dist/actions/builtin/workspace-prepare.d.ts.map +1 -0
- package/dist/actions/builtin/workspace-prepare.js +108 -0
- package/dist/actions/builtin/workspace-prepare.js.map +1 -0
- package/dist/actions/cli-utils.d.ts +76 -0
- package/dist/actions/cli-utils.d.ts.map +1 -0
- package/dist/actions/cli-utils.js +278 -0
- package/dist/actions/cli-utils.js.map +1 -0
- package/dist/actions/epic/check-completion.d.ts +14 -0
- package/dist/actions/epic/check-completion.d.ts.map +1 -0
- package/dist/actions/epic/check-completion.js +57 -0
- package/dist/actions/epic/check-completion.js.map +1 -0
- package/dist/actions/epic/close.d.ts +18 -0
- package/dist/actions/epic/close.d.ts.map +1 -0
- package/dist/actions/epic/close.js +76 -0
- package/dist/actions/epic/close.js.map +1 -0
- package/dist/actions/epic/create-pr.d.ts +22 -0
- package/dist/actions/epic/create-pr.d.ts.map +1 -0
- package/dist/actions/epic/create-pr.js +140 -0
- package/dist/actions/epic/create-pr.js.map +1 -0
- package/dist/actions/epic/dispatch-children.d.ts +16 -0
- package/dist/actions/epic/dispatch-children.d.ts.map +1 -0
- package/dist/actions/epic/dispatch-children.js +95 -0
- package/dist/actions/epic/dispatch-children.js.map +1 -0
- package/dist/actions/epic/find-children.d.ts +16 -0
- package/dist/actions/epic/find-children.d.ts.map +1 -0
- package/dist/actions/epic/find-children.js +92 -0
- package/dist/actions/epic/find-children.js.map +1 -0
- package/dist/actions/epic/index.d.ts +20 -0
- package/dist/actions/epic/index.d.ts.map +1 -0
- package/dist/actions/epic/index.js +35 -0
- package/dist/actions/epic/index.js.map +1 -0
- package/dist/actions/epic/post-tasks-summary.d.ts +18 -0
- package/dist/actions/epic/post-tasks-summary.d.ts.map +1 -0
- package/dist/actions/epic/post-tasks-summary.js +123 -0
- package/dist/actions/epic/post-tasks-summary.js.map +1 -0
- package/dist/actions/epic/update-status.d.ts +22 -0
- package/dist/actions/epic/update-status.d.ts.map +1 -0
- package/dist/actions/epic/update-status.js +105 -0
- package/dist/actions/epic/update-status.js.map +1 -0
- package/dist/actions/github/add-comment.d.ts +14 -0
- package/dist/actions/github/add-comment.d.ts.map +1 -0
- package/dist/actions/github/add-comment.js +44 -0
- package/dist/actions/github/add-comment.js.map +1 -0
- package/dist/actions/github/client/gh-cli.d.ts +68 -0
- package/dist/actions/github/client/gh-cli.d.ts.map +1 -0
- package/dist/actions/github/client/gh-cli.js +781 -0
- package/dist/actions/github/client/gh-cli.js.map +1 -0
- package/dist/actions/github/client/index.d.ts +12 -0
- package/dist/actions/github/client/index.d.ts.map +1 -0
- package/dist/actions/github/client/index.js +10 -0
- package/dist/actions/github/client/index.js.map +1 -0
- package/dist/actions/github/client/interface.d.ts +270 -0
- package/dist/actions/github/client/interface.d.ts.map +1 -0
- package/dist/actions/github/client/interface.js +2 -0
- package/dist/actions/github/client/interface.js.map +1 -0
- package/dist/actions/github/commit-and-push.d.ts +19 -0
- package/dist/actions/github/commit-and-push.d.ts.map +1 -0
- package/dist/actions/github/commit-and-push.js +86 -0
- package/dist/actions/github/commit-and-push.js.map +1 -0
- package/dist/actions/github/create-draft-pr.d.ts +18 -0
- package/dist/actions/github/create-draft-pr.d.ts.map +1 -0
- package/dist/actions/github/create-draft-pr.js +76 -0
- package/dist/actions/github/create-draft-pr.js.map +1 -0
- package/dist/actions/github/get-context.d.ts +23 -0
- package/dist/actions/github/get-context.d.ts.map +1 -0
- package/dist/actions/github/get-context.js +109 -0
- package/dist/actions/github/get-context.js.map +1 -0
- package/dist/actions/github/index.d.ts +32 -0
- package/dist/actions/github/index.d.ts.map +1 -0
- package/dist/actions/github/index.js +67 -0
- package/dist/actions/github/index.js.map +1 -0
- package/dist/actions/github/label-definitions.d.ts +19 -0
- package/dist/actions/github/label-definitions.d.ts.map +1 -0
- package/dist/actions/github/label-definitions.js +71 -0
- package/dist/actions/github/label-definitions.js.map +1 -0
- package/dist/actions/github/mark-pr-ready.d.ts +14 -0
- package/dist/actions/github/mark-pr-ready.d.ts.map +1 -0
- package/dist/actions/github/mark-pr-ready.js +43 -0
- package/dist/actions/github/mark-pr-ready.js.map +1 -0
- package/dist/actions/github/merge-from-base.d.ts +15 -0
- package/dist/actions/github/merge-from-base.d.ts.map +1 -0
- package/dist/actions/github/merge-from-base.js +120 -0
- package/dist/actions/github/merge-from-base.js.map +1 -0
- package/dist/actions/github/preflight.d.ts +36 -0
- package/dist/actions/github/preflight.d.ts.map +1 -0
- package/dist/actions/github/preflight.js +292 -0
- package/dist/actions/github/preflight.js.map +1 -0
- package/dist/actions/github/read-pr-feedback.d.ts +14 -0
- package/dist/actions/github/read-pr-feedback.d.ts.map +1 -0
- package/dist/actions/github/read-pr-feedback.js +53 -0
- package/dist/actions/github/read-pr-feedback.js.map +1 -0
- package/dist/actions/github/respond-pr-feedback.d.ts +14 -0
- package/dist/actions/github/respond-pr-feedback.d.ts.map +1 -0
- package/dist/actions/github/respond-pr-feedback.js +58 -0
- package/dist/actions/github/respond-pr-feedback.js.map +1 -0
- package/dist/actions/github/review-changes.d.ts +19 -0
- package/dist/actions/github/review-changes.d.ts.map +1 -0
- package/dist/actions/github/review-changes.js +95 -0
- package/dist/actions/github/review-changes.js.map +1 -0
- package/dist/actions/github/sync-labels.d.ts +14 -0
- package/dist/actions/github/sync-labels.d.ts.map +1 -0
- package/dist/actions/github/sync-labels.js +81 -0
- package/dist/actions/github/sync-labels.js.map +1 -0
- package/dist/actions/github/update-pr.d.ts +14 -0
- package/dist/actions/github/update-pr.d.ts.map +1 -0
- package/dist/actions/github/update-pr.js +63 -0
- package/dist/actions/github/update-pr.js.map +1 -0
- package/dist/actions/index.d.ts +109 -0
- package/dist/actions/index.d.ts.map +1 -0
- package/dist/actions/index.js +233 -0
- package/dist/actions/index.js.map +1 -0
- package/dist/actions/workflow/check-gate.d.ts +15 -0
- package/dist/actions/workflow/check-gate.d.ts.map +1 -0
- package/dist/actions/workflow/check-gate.js +75 -0
- package/dist/actions/workflow/check-gate.js.map +1 -0
- package/dist/actions/workflow/index.d.ts +21 -0
- package/dist/actions/workflow/index.d.ts.map +1 -0
- package/dist/actions/workflow/index.js +31 -0
- package/dist/actions/workflow/index.js.map +1 -0
- package/dist/actions/workflow/update-phase.d.ts +15 -0
- package/dist/actions/workflow/update-phase.d.ts.map +1 -0
- package/dist/actions/workflow/update-phase.js +143 -0
- package/dist/actions/workflow/update-phase.js.map +1 -0
- package/dist/actions/workflow/update-stage.d.ts +19 -0
- package/dist/actions/workflow/update-stage.d.ts.map +1 -0
- package/dist/actions/workflow/update-stage.js +137 -0
- package/dist/actions/workflow/update-stage.js.map +1 -0
- package/dist/errors/base-workflow-not-found.d.ts +10 -0
- package/dist/errors/base-workflow-not-found.d.ts.map +1 -0
- package/dist/errors/base-workflow-not-found.js +18 -0
- package/dist/errors/base-workflow-not-found.js.map +1 -0
- package/dist/errors/circular-extends.d.ts +9 -0
- package/dist/errors/circular-extends.d.ts.map +1 -0
- package/dist/errors/circular-extends.js +13 -0
- package/dist/errors/circular-extends.js.map +1 -0
- package/dist/errors/correlation-timeout.d.ts +9 -0
- package/dist/errors/correlation-timeout.d.ts.map +1 -0
- package/dist/errors/correlation-timeout.js +13 -0
- package/dist/errors/correlation-timeout.js.map +1 -0
- package/dist/errors/workflow-override.d.ts +9 -0
- package/dist/errors/workflow-override.d.ts.map +1 -0
- package/dist/errors/workflow-override.js +12 -0
- package/dist/errors/workflow-override.js.map +1 -0
- package/dist/executor/events.d.ts +55 -0
- package/dist/executor/events.d.ts.map +1 -0
- package/dist/executor/events.js +72 -0
- package/dist/executor/events.js.map +1 -0
- package/dist/executor/gate-handler.d.ts +55 -0
- package/dist/executor/gate-handler.d.ts.map +1 -0
- package/dist/executor/gate-handler.js +139 -0
- package/dist/executor/gate-handler.js.map +1 -0
- package/dist/executor/index.d.ts +140 -0
- package/dist/executor/index.d.ts.map +1 -0
- package/dist/executor/index.js +681 -0
- package/dist/executor/index.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/interpolation/context.d.ts +117 -0
- package/dist/interpolation/context.d.ts.map +1 -0
- package/dist/interpolation/context.js +256 -0
- package/dist/interpolation/context.js.map +1 -0
- package/dist/interpolation/index.d.ts +76 -0
- package/dist/interpolation/index.d.ts.map +1 -0
- package/dist/interpolation/index.js +264 -0
- package/dist/interpolation/index.js.map +1 -0
- package/dist/loader/extends.d.ts +48 -0
- package/dist/loader/extends.d.ts.map +1 -0
- package/dist/loader/extends.js +140 -0
- package/dist/loader/extends.js.map +1 -0
- package/dist/loader/index.d.ts +50 -0
- package/dist/loader/index.d.ts.map +1 -0
- package/dist/loader/index.js +190 -0
- package/dist/loader/index.js.map +1 -0
- package/dist/loader/schema.d.ts +506 -0
- package/dist/loader/schema.d.ts.map +1 -0
- package/dist/loader/schema.js +63 -0
- package/dist/loader/schema.js.map +1 -0
- package/dist/loader/validator.d.ts +33 -0
- package/dist/loader/validator.d.ts.map +1 -0
- package/dist/loader/validator.js +135 -0
- package/dist/loader/validator.js.map +1 -0
- package/dist/registry/index.d.ts +42 -0
- package/dist/registry/index.d.ts.map +1 -0
- package/dist/registry/index.js +77 -0
- package/dist/registry/index.js.map +1 -0
- package/dist/retry/index.d.ts +37 -0
- package/dist/retry/index.d.ts.map +1 -0
- package/dist/retry/index.js +225 -0
- package/dist/retry/index.js.map +1 -0
- package/dist/retry/strategies.d.ts +74 -0
- package/dist/retry/strategies.d.ts.map +1 -0
- package/dist/retry/strategies.js +136 -0
- package/dist/retry/strategies.js.map +1 -0
- package/dist/store/filesystem-store.d.ts +52 -0
- package/dist/store/filesystem-store.d.ts.map +1 -0
- package/dist/store/filesystem-store.js +230 -0
- package/dist/store/filesystem-store.js.map +1 -0
- package/dist/store/index.d.ts +7 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +6 -0
- package/dist/store/index.js.map +1 -0
- package/dist/types/action.d.ts +358 -0
- package/dist/types/action.d.ts.map +1 -0
- package/dist/types/action.js +96 -0
- package/dist/types/action.js.map +1 -0
- package/dist/types/events.d.ts +25 -0
- package/dist/types/events.d.ts.map +1 -0
- package/dist/types/events.js +6 -0
- package/dist/types/events.js.map +1 -0
- package/dist/types/execution.d.ts +145 -0
- package/dist/types/execution.d.ts.map +1 -0
- package/dist/types/execution.js +2 -0
- package/dist/types/execution.js.map +1 -0
- package/dist/types/gate.d.ts +98 -0
- package/dist/types/gate.d.ts.map +1 -0
- package/dist/types/gate.js +41 -0
- package/dist/types/gate.js.map +1 -0
- package/dist/types/github.d.ts +706 -0
- package/dist/types/github.d.ts.map +1 -0
- package/dist/types/github.js +6 -0
- package/dist/types/github.js.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/logger.d.ts +60 -0
- package/dist/types/logger.d.ts.map +1 -0
- package/dist/types/logger.js +66 -0
- package/dist/types/logger.js.map +1 -0
- package/dist/types/retry.d.ts +36 -0
- package/dist/types/retry.d.ts.map +1 -0
- package/dist/types/retry.js +6 -0
- package/dist/types/retry.js.map +1 -0
- package/dist/types/store.d.ts +88 -0
- package/dist/types/store.d.ts.map +1 -0
- package/dist/types/store.js +6 -0
- package/dist/types/store.js.map +1 -0
- package/dist/types/workflow.d.ts +105 -0
- package/dist/types/workflow.d.ts.map +1 -0
- package/dist/types/workflow.js +6 -0
- package/dist/types/workflow.js.map +1 -0
- package/package.json +69 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workflow action namespace registration.
|
|
3
|
+
* Exports all workflow.* actions and provides namespace registration.
|
|
4
|
+
*/
|
|
5
|
+
import type { ActionNamespace, ActionHandler } from '../../types/index.js';
|
|
6
|
+
export { UpdatePhaseAction } from './update-phase.js';
|
|
7
|
+
export { CheckGateAction } from './check-gate.js';
|
|
8
|
+
export { UpdateStageAction } from './update-stage.js';
|
|
9
|
+
/**
|
|
10
|
+
* All workflow action handlers
|
|
11
|
+
*/
|
|
12
|
+
export declare const workflowActionHandlers: ActionHandler[];
|
|
13
|
+
/**
|
|
14
|
+
* Workflow action namespace definition
|
|
15
|
+
*/
|
|
16
|
+
export declare const workflowNamespace: ActionNamespace;
|
|
17
|
+
/**
|
|
18
|
+
* Get all workflow action handlers
|
|
19
|
+
*/
|
|
20
|
+
export declare function getWorkflowActionHandlers(): ActionHandler[];
|
|
21
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/actions/workflow/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAQ3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,aAAa,EAIjD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,eAI/B,CAAC;AAEF;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,aAAa,EAAE,CAE3D"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// Workflow actions
|
|
2
|
+
import { UpdatePhaseAction } from './update-phase.js';
|
|
3
|
+
import { CheckGateAction } from './check-gate.js';
|
|
4
|
+
import { UpdateStageAction } from './update-stage.js';
|
|
5
|
+
// Re-export action classes
|
|
6
|
+
export { UpdatePhaseAction } from './update-phase.js';
|
|
7
|
+
export { CheckGateAction } from './check-gate.js';
|
|
8
|
+
export { UpdateStageAction } from './update-stage.js';
|
|
9
|
+
/**
|
|
10
|
+
* All workflow action handlers
|
|
11
|
+
*/
|
|
12
|
+
export const workflowActionHandlers = [
|
|
13
|
+
new UpdatePhaseAction(),
|
|
14
|
+
new CheckGateAction(),
|
|
15
|
+
new UpdateStageAction(),
|
|
16
|
+
];
|
|
17
|
+
/**
|
|
18
|
+
* Workflow action namespace definition
|
|
19
|
+
*/
|
|
20
|
+
export const workflowNamespace = {
|
|
21
|
+
namespace: 'workflow',
|
|
22
|
+
description: 'Workflow state management for phase progression and review gates',
|
|
23
|
+
handlers: workflowActionHandlers,
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Get all workflow action handlers
|
|
27
|
+
*/
|
|
28
|
+
export function getWorkflowActionHandlers() {
|
|
29
|
+
return [...workflowActionHandlers];
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/actions/workflow/index.ts"],"names":[],"mappings":"AAMA,mBAAmB;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,2BAA2B;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,IAAI,iBAAiB,EAAE;IACvB,IAAI,eAAe,EAAE;IACrB,IAAI,iBAAiB,EAAE;CACxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAoB;IAChD,SAAS,EAAE,UAAU;IACrB,WAAW,EAAE,kEAAkE;IAC/E,QAAQ,EAAE,sBAAsB;CACjC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO,CAAC,GAAG,sBAAsB,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* workflow.update_phase action - manages phase labels on issues.
|
|
3
|
+
* Handles starting, completing, and blocking phases.
|
|
4
|
+
*/
|
|
5
|
+
import { BaseAction } from '../base-action.js';
|
|
6
|
+
import type { ActionContext, ActionResult, ActionIdentifier, StepDefinition } from '../../types/index.js';
|
|
7
|
+
/**
|
|
8
|
+
* workflow.update_phase action handler
|
|
9
|
+
*/
|
|
10
|
+
export declare class UpdatePhaseAction extends BaseAction {
|
|
11
|
+
readonly type: ActionIdentifier;
|
|
12
|
+
canHandle(step: StepDefinition): boolean;
|
|
13
|
+
protected executeInternal(step: StepDefinition, context: ActionContext): Promise<Omit<ActionResult, 'duration'>>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=update-phase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-phase.d.ts","sourceRoot":"","sources":["../../../src/actions/workflow/update-phase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAsC9B;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,UAAU;IAC/C,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAA2B;IAE1D,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO;cAOxB,eAAe,CAC7B,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;CAuG3C"}
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* workflow.update_phase action - manages phase labels on issues.
|
|
3
|
+
* Handles starting, completing, and blocking phases.
|
|
4
|
+
*/
|
|
5
|
+
import { BaseAction } from '../base-action.js';
|
|
6
|
+
import { isNamespacedAction } from '../../types/action.js';
|
|
7
|
+
import { createGitHubClient } from '../github/client/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* Phase label mappings
|
|
10
|
+
*/
|
|
11
|
+
const PHASE_LABELS = {
|
|
12
|
+
specify: 'phase:specify',
|
|
13
|
+
clarify: 'phase:clarify',
|
|
14
|
+
plan: 'phase:plan',
|
|
15
|
+
tasks: 'phase:tasks',
|
|
16
|
+
implement: 'phase:implement',
|
|
17
|
+
validate: 'phase:validate',
|
|
18
|
+
};
|
|
19
|
+
const COMPLETED_LABELS = {
|
|
20
|
+
specify: 'completed:specify',
|
|
21
|
+
clarify: 'completed:clarify',
|
|
22
|
+
plan: 'completed:plan',
|
|
23
|
+
tasks: 'completed:tasks',
|
|
24
|
+
implement: 'completed:implement',
|
|
25
|
+
validate: 'completed:validate',
|
|
26
|
+
};
|
|
27
|
+
const WAITING_FOR_LABELS = {
|
|
28
|
+
'spec-review': 'waiting-for:spec-review',
|
|
29
|
+
'clarification': 'waiting-for:clarification',
|
|
30
|
+
'clarification-review': 'waiting-for:clarification-review',
|
|
31
|
+
'plan-review': 'waiting-for:plan-review',
|
|
32
|
+
'tasks-review': 'waiting-for:tasks-review',
|
|
33
|
+
'implementation-review': 'waiting-for:implementation-review',
|
|
34
|
+
'manual-validation': 'waiting-for:manual-validation',
|
|
35
|
+
'address-pr-feedback': 'waiting-for:address-pr-feedback',
|
|
36
|
+
'children-complete': 'waiting-for:children-complete',
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* workflow.update_phase action handler
|
|
40
|
+
*/
|
|
41
|
+
export class UpdatePhaseAction extends BaseAction {
|
|
42
|
+
type = 'workflow.update_phase';
|
|
43
|
+
canHandle(step) {
|
|
44
|
+
const uses = step.uses ?? step.action;
|
|
45
|
+
if (!uses)
|
|
46
|
+
return false;
|
|
47
|
+
return uses === 'workflow.update_phase' ||
|
|
48
|
+
(isNamespacedAction(uses) && uses === this.type);
|
|
49
|
+
}
|
|
50
|
+
async executeInternal(step, context) {
|
|
51
|
+
// Get inputs
|
|
52
|
+
const issueNumber = this.getRequiredInput(step, context, 'issue_number');
|
|
53
|
+
const phase = this.getRequiredInput(step, context, 'phase');
|
|
54
|
+
const action = this.getRequiredInput(step, context, 'action');
|
|
55
|
+
context.logger.info(`Updating phase labels: ${phase} (${action}) for issue #${issueNumber}`);
|
|
56
|
+
try {
|
|
57
|
+
// Get GitHub client
|
|
58
|
+
const client = createGitHubClient(context.workdir);
|
|
59
|
+
// Get repo info
|
|
60
|
+
const repoInfo = await client.getRepoInfo();
|
|
61
|
+
const labelsAdded = [];
|
|
62
|
+
const labelsRemoved = [];
|
|
63
|
+
switch (action) {
|
|
64
|
+
case 'start':
|
|
65
|
+
// Remove waiting-for label for this phase
|
|
66
|
+
if (WAITING_FOR_LABELS[phase]) {
|
|
67
|
+
try {
|
|
68
|
+
await client.removeLabels(repoInfo.owner, repoInfo.repo, issueNumber, [WAITING_FOR_LABELS[phase]]);
|
|
69
|
+
labelsRemoved.push(WAITING_FOR_LABELS[phase]);
|
|
70
|
+
}
|
|
71
|
+
catch {
|
|
72
|
+
// Label might not exist
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
break;
|
|
76
|
+
case 'complete': {
|
|
77
|
+
// Add completed label for review gates
|
|
78
|
+
const completedLabel = `completed:${phase}`;
|
|
79
|
+
await client.addLabels(repoInfo.owner, repoInfo.repo, issueNumber, [completedLabel]);
|
|
80
|
+
labelsAdded.push(completedLabel);
|
|
81
|
+
// Remove waiting-for label
|
|
82
|
+
if (WAITING_FOR_LABELS[phase]) {
|
|
83
|
+
try {
|
|
84
|
+
await client.removeLabels(repoInfo.owner, repoInfo.repo, issueNumber, [WAITING_FOR_LABELS[phase]]);
|
|
85
|
+
labelsRemoved.push(WAITING_FOR_LABELS[phase]);
|
|
86
|
+
}
|
|
87
|
+
catch {
|
|
88
|
+
// Label might not exist
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
case 'block':
|
|
94
|
+
// Add waiting-for label
|
|
95
|
+
if (WAITING_FOR_LABELS[phase]) {
|
|
96
|
+
await client.addLabels(repoInfo.owner, repoInfo.repo, issueNumber, [WAITING_FOR_LABELS[phase]]);
|
|
97
|
+
labelsAdded.push(WAITING_FOR_LABELS[phase]);
|
|
98
|
+
}
|
|
99
|
+
break;
|
|
100
|
+
case 'set_current':
|
|
101
|
+
// Set the current phase label
|
|
102
|
+
if (PHASE_LABELS[phase]) {
|
|
103
|
+
// Remove other phase labels first
|
|
104
|
+
const otherPhaseLabels = Object.values(PHASE_LABELS).filter(l => l !== PHASE_LABELS[phase]);
|
|
105
|
+
try {
|
|
106
|
+
await client.removeLabels(repoInfo.owner, repoInfo.repo, issueNumber, otherPhaseLabels);
|
|
107
|
+
labelsRemoved.push(...otherPhaseLabels);
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
// Labels might not exist
|
|
111
|
+
}
|
|
112
|
+
// Add current phase label
|
|
113
|
+
await client.addLabels(repoInfo.owner, repoInfo.repo, issueNumber, [PHASE_LABELS[phase]]);
|
|
114
|
+
labelsAdded.push(PHASE_LABELS[phase]);
|
|
115
|
+
}
|
|
116
|
+
break;
|
|
117
|
+
case 'add_completion':
|
|
118
|
+
// Add completed label for core phases
|
|
119
|
+
if (COMPLETED_LABELS[phase]) {
|
|
120
|
+
await client.addLabels(repoInfo.owner, repoInfo.repo, issueNumber, [COMPLETED_LABELS[phase]]);
|
|
121
|
+
labelsAdded.push(COMPLETED_LABELS[phase]);
|
|
122
|
+
}
|
|
123
|
+
break;
|
|
124
|
+
default:
|
|
125
|
+
return this.failureResult(`Unknown action: ${action}`);
|
|
126
|
+
}
|
|
127
|
+
context.logger.info(`Labels added: ${labelsAdded.join(', ') || 'none'}`);
|
|
128
|
+
context.logger.info(`Labels removed: ${labelsRemoved.join(', ') || 'none'}`);
|
|
129
|
+
const output = {
|
|
130
|
+
success: true,
|
|
131
|
+
phase,
|
|
132
|
+
action,
|
|
133
|
+
labels_added: labelsAdded,
|
|
134
|
+
labels_removed: labelsRemoved,
|
|
135
|
+
};
|
|
136
|
+
return this.successResult(output);
|
|
137
|
+
}
|
|
138
|
+
catch (error) {
|
|
139
|
+
return this.failureResult(error instanceof Error ? error.message : String(error));
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=update-phase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-phase.js","sourceRoot":"","sources":["../../../src/actions/workflow/update-phase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* workflow.update_stage action - updates stage comment with progress.
|
|
3
|
+
* Creates or updates consolidated stage comments on issues.
|
|
4
|
+
*/
|
|
5
|
+
import { BaseAction } from '../base-action.js';
|
|
6
|
+
import type { ActionContext, ActionResult, ActionIdentifier, StepDefinition } from '../../types/index.js';
|
|
7
|
+
/**
|
|
8
|
+
* workflow.update_stage action handler
|
|
9
|
+
*/
|
|
10
|
+
export declare class UpdateStageAction extends BaseAction {
|
|
11
|
+
readonly type: ActionIdentifier;
|
|
12
|
+
canHandle(step: StepDefinition): boolean;
|
|
13
|
+
protected executeInternal(step: StepDefinition, context: ActionContext): Promise<Omit<ActionResult, 'duration'>>;
|
|
14
|
+
/**
|
|
15
|
+
* Generate stage comment body
|
|
16
|
+
*/
|
|
17
|
+
private generateStageComment;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=update-stage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-stage.d.ts","sourceRoot":"","sources":["../../../src/actions/workflow/update-stage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAiC9B;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,UAAU;IAC/C,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAA2B;IAE1D,SAAS,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO;cAOxB,eAAe,CAC7B,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IA8E1C;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAmD7B"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* workflow.update_stage action - updates stage comment with progress.
|
|
3
|
+
* Creates or updates consolidated stage comments on issues.
|
|
4
|
+
*/
|
|
5
|
+
import { BaseAction } from '../base-action.js';
|
|
6
|
+
import { isNamespacedAction } from '../../types/action.js';
|
|
7
|
+
import { createGitHubClient } from '../github/client/index.js';
|
|
8
|
+
/**
|
|
9
|
+
* Stage comment markers
|
|
10
|
+
*/
|
|
11
|
+
const STAGE_MARKERS = {
|
|
12
|
+
specification: '<!-- stage:specification -->',
|
|
13
|
+
planning: '<!-- stage:planning -->',
|
|
14
|
+
implementation: '<!-- stage:implementation -->',
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Stage titles
|
|
18
|
+
*/
|
|
19
|
+
const STAGE_TITLES = {
|
|
20
|
+
specification: 'Specification',
|
|
21
|
+
planning: 'Planning',
|
|
22
|
+
implementation: 'Implementation',
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Status icons
|
|
26
|
+
*/
|
|
27
|
+
const STATUS_ICONS = {
|
|
28
|
+
pending: '',
|
|
29
|
+
in_progress: '',
|
|
30
|
+
complete: '',
|
|
31
|
+
blocked: '',
|
|
32
|
+
};
|
|
33
|
+
/**
|
|
34
|
+
* workflow.update_stage action handler
|
|
35
|
+
*/
|
|
36
|
+
export class UpdateStageAction extends BaseAction {
|
|
37
|
+
type = 'workflow.update_stage';
|
|
38
|
+
canHandle(step) {
|
|
39
|
+
const uses = step.uses ?? step.action;
|
|
40
|
+
if (!uses)
|
|
41
|
+
return false;
|
|
42
|
+
return uses === 'workflow.update_stage' ||
|
|
43
|
+
(isNamespacedAction(uses) && uses === this.type);
|
|
44
|
+
}
|
|
45
|
+
async executeInternal(step, context) {
|
|
46
|
+
// Get inputs
|
|
47
|
+
const issueNumber = this.getRequiredInput(step, context, 'issue_number');
|
|
48
|
+
const stage = this.getRequiredInput(step, context, 'stage');
|
|
49
|
+
const status = this.getRequiredInput(step, context, 'status');
|
|
50
|
+
const progress = this.getRequiredInput(step, context, 'progress');
|
|
51
|
+
const branch = this.getInput(step, context, 'branch');
|
|
52
|
+
const prNumber = this.getInput(step, context, 'pr_number');
|
|
53
|
+
const nextStep = this.getInput(step, context, 'next_step');
|
|
54
|
+
const blockedReason = this.getInput(step, context, 'blocked_reason');
|
|
55
|
+
context.logger.info(`Updating stage comment: ${stage} (${status}) for issue #${issueNumber}`);
|
|
56
|
+
try {
|
|
57
|
+
// Get GitHub client
|
|
58
|
+
const client = createGitHubClient(context.workdir);
|
|
59
|
+
// Get repo info
|
|
60
|
+
const repoInfo = await client.getRepoInfo();
|
|
61
|
+
// Generate comment body
|
|
62
|
+
const commentBody = this.generateStageComment(stage, status, progress, branch, prNumber, nextStep, blockedReason);
|
|
63
|
+
// Find existing stage comment
|
|
64
|
+
const comments = await client.getIssueComments(repoInfo.owner, repoInfo.repo, issueNumber);
|
|
65
|
+
const marker = STAGE_MARKERS[stage];
|
|
66
|
+
const existingComment = comments.find(c => c.body.includes(marker));
|
|
67
|
+
let commentId;
|
|
68
|
+
let created;
|
|
69
|
+
if (existingComment) {
|
|
70
|
+
// Update existing comment
|
|
71
|
+
await client.updateComment(repoInfo.owner, repoInfo.repo, existingComment.id, commentBody);
|
|
72
|
+
commentId = existingComment.id;
|
|
73
|
+
created = false;
|
|
74
|
+
context.logger.info(`Updated existing stage comment ${commentId}`);
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
// Create new comment
|
|
78
|
+
const comment = await client.addIssueComment(repoInfo.owner, repoInfo.repo, issueNumber, commentBody);
|
|
79
|
+
commentId = comment.id;
|
|
80
|
+
created = true;
|
|
81
|
+
context.logger.info(`Created new stage comment ${commentId}`);
|
|
82
|
+
}
|
|
83
|
+
const output = {
|
|
84
|
+
success: true,
|
|
85
|
+
comment_id: commentId,
|
|
86
|
+
comment_url: `https://github.com/${repoInfo.owner}/${repoInfo.repo}/issues/${issueNumber}#issuecomment-${commentId}`,
|
|
87
|
+
created,
|
|
88
|
+
};
|
|
89
|
+
return this.successResult(output);
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
return this.failureResult(error instanceof Error ? error.message : String(error));
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Generate stage comment body
|
|
97
|
+
*/
|
|
98
|
+
generateStageComment(stage, status, progress, branch, prNumber, nextStep, blockedReason) {
|
|
99
|
+
const marker = STAGE_MARKERS[stage];
|
|
100
|
+
const title = STAGE_TITLES[stage];
|
|
101
|
+
const statusIcon = STATUS_ICONS[status];
|
|
102
|
+
let body = `${marker}\n## ${statusIcon} ${title}\n\n`;
|
|
103
|
+
// Add branch and PR info
|
|
104
|
+
if (branch) {
|
|
105
|
+
body += `**Branch:** \`${branch}\`\n`;
|
|
106
|
+
}
|
|
107
|
+
if (prNumber) {
|
|
108
|
+
body += `**PR:** #${prNumber}\n`;
|
|
109
|
+
}
|
|
110
|
+
if (branch || prNumber) {
|
|
111
|
+
body += '\n';
|
|
112
|
+
}
|
|
113
|
+
// Add progress items
|
|
114
|
+
body += '### Progress\n\n';
|
|
115
|
+
for (const item of progress) {
|
|
116
|
+
const icon = STATUS_ICONS[item.status];
|
|
117
|
+
const statusText = item.status === 'complete' ? 'Done' :
|
|
118
|
+
item.status === 'in_progress' ? 'In Progress' : 'Pending';
|
|
119
|
+
body += `- ${icon} **${item.command}**: ${statusText}`;
|
|
120
|
+
if (item.summary) {
|
|
121
|
+
body += ` - ${item.summary}`;
|
|
122
|
+
}
|
|
123
|
+
body += '\n';
|
|
124
|
+
}
|
|
125
|
+
// Add next step or blocked reason
|
|
126
|
+
if (status === 'blocked' && blockedReason) {
|
|
127
|
+
body += `\n**Blocked:** ${blockedReason}\n`;
|
|
128
|
+
}
|
|
129
|
+
else if (nextStep) {
|
|
130
|
+
body += `\n**Next:** ${nextStep}\n`;
|
|
131
|
+
}
|
|
132
|
+
// Add timestamp
|
|
133
|
+
body += `\n---\n*Updated: ${new Date().toISOString()}*\n`;
|
|
134
|
+
return body;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=update-stage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-stage.js","sourceRoot":"","sources":["../../../src/actions/workflow/update-stage.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a base workflow referenced by `extends` cannot be found
|
|
3
|
+
* in any of the searched locations.
|
|
4
|
+
*/
|
|
5
|
+
export declare class BaseWorkflowNotFoundError extends Error {
|
|
6
|
+
readonly workflowName: string;
|
|
7
|
+
readonly searchedLocations: string[];
|
|
8
|
+
constructor(workflowName: string, searchedLocations: string[]);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=base-workflow-not-found.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-workflow-not-found.d.ts","sourceRoot":"","sources":["../../src/errors/base-workflow-not-found.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,SAAgB,YAAY,EAAE,MAAM,CAAC;IACrC,SAAgB,iBAAiB,EAAE,MAAM,EAAE,CAAC;gBAEhC,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,EAAE;CAS9D"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a base workflow referenced by `extends` cannot be found
|
|
3
|
+
* in any of the searched locations.
|
|
4
|
+
*/
|
|
5
|
+
export class BaseWorkflowNotFoundError extends Error {
|
|
6
|
+
workflowName;
|
|
7
|
+
searchedLocations;
|
|
8
|
+
constructor(workflowName, searchedLocations) {
|
|
9
|
+
const locations = searchedLocations.length > 0
|
|
10
|
+
? `\n Searched:\n - ${searchedLocations.join('\n - ')}`
|
|
11
|
+
: '';
|
|
12
|
+
super(`Base workflow "${workflowName}" not found.${locations}`);
|
|
13
|
+
this.name = 'BaseWorkflowNotFoundError';
|
|
14
|
+
this.workflowName = workflowName;
|
|
15
|
+
this.searchedLocations = searchedLocations;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=base-workflow-not-found.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base-workflow-not-found.js","sourceRoot":"","sources":["../../src/errors/base-workflow-not-found.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IAClC,YAAY,CAAS;IACrB,iBAAiB,CAAW;IAE5C,YAAY,YAAoB,EAAE,iBAA2B;QAC3D,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC;YAC5C,CAAC,CAAC,wBAAwB,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,kBAAkB,YAAY,eAAe,SAAS,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;QACxC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a circular `extends` chain is detected during workflow resolution.
|
|
3
|
+
* The chain includes the full list of file paths forming the cycle.
|
|
4
|
+
*/
|
|
5
|
+
export declare class CircularExtendsError extends Error {
|
|
6
|
+
readonly chain: string[];
|
|
7
|
+
constructor(chain: string[]);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=circular-extends.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circular-extends.d.ts","sourceRoot":"","sources":["../../src/errors/circular-extends.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,SAAgB,KAAK,EAAE,MAAM,EAAE,CAAC;gBAEpB,KAAK,EAAE,MAAM,EAAE;CAK5B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a circular `extends` chain is detected during workflow resolution.
|
|
3
|
+
* The chain includes the full list of file paths forming the cycle.
|
|
4
|
+
*/
|
|
5
|
+
export class CircularExtendsError extends Error {
|
|
6
|
+
chain;
|
|
7
|
+
constructor(chain) {
|
|
8
|
+
super(`Circular extends detected: ${chain.join(' → ')}`);
|
|
9
|
+
this.name = 'CircularExtendsError';
|
|
10
|
+
this.chain = chain;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=circular-extends.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"circular-extends.js","sourceRoot":"","sources":["../../src/errors/circular-extends.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7B,KAAK,CAAW;IAEhC,YAAY,KAAe;QACzB,KAAK,CAAC,8BAA8B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;QACnC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a decision request times out waiting for a human response.
|
|
3
|
+
* Checked by name in HumancyReviewAction to produce a timeout failure result.
|
|
4
|
+
*/
|
|
5
|
+
export declare class CorrelationTimeoutError extends Error {
|
|
6
|
+
readonly decisionId?: string;
|
|
7
|
+
constructor(message: string, decisionId?: string);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=correlation-timeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"correlation-timeout.d.ts","sourceRoot":"","sources":["../../src/errors/correlation-timeout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;IAChD,SAAgB,UAAU,CAAC,EAAE,MAAM,CAAC;gBAExB,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM;CAKjD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a decision request times out waiting for a human response.
|
|
3
|
+
* Checked by name in HumancyReviewAction to produce a timeout failure result.
|
|
4
|
+
*/
|
|
5
|
+
export class CorrelationTimeoutError extends Error {
|
|
6
|
+
decisionId;
|
|
7
|
+
constructor(message, decisionId) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.name = 'CorrelationTimeoutError';
|
|
10
|
+
this.decisionId = decisionId;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=correlation-timeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"correlation-timeout.js","sourceRoot":"","sources":["../../src/errors/correlation-timeout.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChC,UAAU,CAAU;IAEpC,YAAY,OAAe,EAAE,UAAmB;QAC9C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a workflow has an invalid override configuration.
|
|
3
|
+
* Examples: `overrides` without `extends`, or `phases` and `overrides.phases`
|
|
4
|
+
* specified simultaneously.
|
|
5
|
+
*/
|
|
6
|
+
export declare class WorkflowOverrideError extends Error {
|
|
7
|
+
constructor(message: string);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=workflow-override.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-override.d.ts","sourceRoot":"","sources":["../../src/errors/workflow-override.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when a workflow has an invalid override configuration.
|
|
3
|
+
* Examples: `overrides` without `extends`, or `phases` and `overrides.phases`
|
|
4
|
+
* specified simultaneously.
|
|
5
|
+
*/
|
|
6
|
+
export class WorkflowOverrideError extends Error {
|
|
7
|
+
constructor(message) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.name = 'WorkflowOverrideError';
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=workflow-override.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-override.js","sourceRoot":"","sources":["../../src/errors/workflow-override.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event emission system for workflow execution.
|
|
3
|
+
* Provides typed event emission and subscription.
|
|
4
|
+
*/
|
|
5
|
+
import type { ExecutionEvent, ExecutionEventListener, ExecutionEventType } from '../types/events.js';
|
|
6
|
+
/**
|
|
7
|
+
* Event emitter for workflow execution
|
|
8
|
+
*/
|
|
9
|
+
export declare class ExecutionEventEmitter {
|
|
10
|
+
private listeners;
|
|
11
|
+
/**
|
|
12
|
+
* Add an event listener
|
|
13
|
+
* @param listener The listener function
|
|
14
|
+
* @returns Disposable to remove the listener
|
|
15
|
+
*/
|
|
16
|
+
addEventListener(listener: ExecutionEventListener): {
|
|
17
|
+
dispose: () => void;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Remove an event listener
|
|
21
|
+
* @param listener The listener to remove
|
|
22
|
+
*/
|
|
23
|
+
removeEventListener(listener: ExecutionEventListener): void;
|
|
24
|
+
/**
|
|
25
|
+
* Remove all listeners
|
|
26
|
+
*/
|
|
27
|
+
removeAllListeners(): void;
|
|
28
|
+
/**
|
|
29
|
+
* Emit an event to all listeners
|
|
30
|
+
* @param event The event to emit
|
|
31
|
+
*/
|
|
32
|
+
emit(event: ExecutionEvent): void;
|
|
33
|
+
/**
|
|
34
|
+
* Create and emit an event
|
|
35
|
+
* @param type The event type
|
|
36
|
+
* @param workflowName The workflow name
|
|
37
|
+
* @param options Additional event options
|
|
38
|
+
*/
|
|
39
|
+
emitEvent(type: ExecutionEventType, workflowName: string, options?: {
|
|
40
|
+
phaseName?: string;
|
|
41
|
+
stepName?: string;
|
|
42
|
+
message?: string;
|
|
43
|
+
data?: unknown;
|
|
44
|
+
}): void;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Create execution event
|
|
48
|
+
*/
|
|
49
|
+
export declare function createExecutionEvent(type: ExecutionEventType, workflowName: string, options?: {
|
|
50
|
+
phaseName?: string;
|
|
51
|
+
stepName?: string;
|
|
52
|
+
message?: string;
|
|
53
|
+
data?: unknown;
|
|
54
|
+
}): ExecutionEvent;
|
|
55
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/executor/events.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EACV,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,SAAS,CAAqC;IAEtD;;;;OAIG;IACH,gBAAgB,CAAC,QAAQ,EAAE,sBAAsB,GAAG;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE;IAS3E;;;OAGG;IACH,mBAAmB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI;IAI3D;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAI1B;;;OAGG;IACH,IAAI,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI;IAUjC;;;;;OAKG;IACH,SAAS,CACP,IAAI,EAAE,kBAAkB,EACxB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,GACA,IAAI;CAQR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,kBAAkB,EACxB,YAAY,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;IACR,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GACA,cAAc,CAOhB"}
|