edsger 0.77.0 → 0.79.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +95 -210
- package/assets/LICENSE +21 -0
- package/assets/README.md +104 -0
- package/assets/benchmark/base.yaml +286 -0
- package/assets/benchmark/csharp.yaml +68 -0
- package/assets/benchmark/dart.yaml +70 -0
- package/assets/benchmark/go.yaml +71 -0
- package/assets/benchmark/java.yaml +68 -0
- package/assets/benchmark/python.yaml +72 -0
- package/assets/benchmark/typescript.yaml +71 -0
- package/assets/languages.yaml +35 -0
- package/assets/manifest.yaml +39 -0
- package/assets/review/base.yaml +111 -0
- package/assets/review/csharp.yaml +38 -0
- package/assets/review/dart.yaml +40 -0
- package/assets/review/go.yaml +40 -0
- package/assets/review/java.yaml +40 -0
- package/assets/review/python.yaml +41 -0
- package/assets/review/typescript.yaml +40 -0
- package/assets/schema/benchmark.schema.json +87 -0
- package/assets/schema/review.schema.json +73 -0
- package/assets/skills/benchmark/SKILL.md +66 -0
- package/assets/skills/pr-resolve/SKILL.md +58 -0
- package/assets/skills/pr-review/SKILL.md +66 -0
- package/dist/index.js +1348 -1247
- package/dist/index.js.map +1 -0
- package/package.json +58 -53
- package/dist/api/adr.d.ts +0 -48
- package/dist/api/adr.js +0 -139
- package/dist/api/app-store-iap.d.ts +0 -60
- package/dist/api/app-store-iap.js +0 -145
- package/dist/api/app-store.d.ts +0 -93
- package/dist/api/app-store.js +0 -206
- package/dist/api/chat.d.ts +0 -72
- package/dist/api/chat.js +0 -272
- package/dist/api/cross-product.d.ts +0 -33
- package/dist/api/cross-product.js +0 -127
- package/dist/api/financing.d.ts +0 -47
- package/dist/api/financing.js +0 -37
- package/dist/api/github.d.ts +0 -86
- package/dist/api/github.js +0 -203
- package/dist/api/growth.d.ts +0 -81
- package/dist/api/growth.js +0 -75
- package/dist/api/intelligence-normalize.d.ts +0 -25
- package/dist/api/intelligence-normalize.js +0 -103
- package/dist/api/intelligence.d.ts +0 -187
- package/dist/api/intelligence.js +0 -402
- package/dist/api/issues/approval-checker.d.ts +0 -22
- package/dist/api/issues/approval-checker.js +0 -141
- package/dist/api/issues/batch-operations.d.ts +0 -17
- package/dist/api/issues/batch-operations.js +0 -100
- package/dist/api/issues/get-issue.d.ts +0 -5
- package/dist/api/issues/get-issue.js +0 -47
- package/dist/api/issues/index.d.ts +0 -8
- package/dist/api/issues/index.js +0 -10
- package/dist/api/issues/issue-utils.d.ts +0 -25
- package/dist/api/issues/issue-utils.js +0 -133
- package/dist/api/issues/status-updater.d.ts +0 -68
- package/dist/api/issues/status-updater.js +0 -190
- package/dist/api/issues/test-cases.d.ts +0 -29
- package/dist/api/issues/test-cases.js +0 -185
- package/dist/api/issues/update-issue.d.ts +0 -25
- package/dist/api/issues/update-issue.js +0 -127
- package/dist/api/issues/user-stories.d.ts +0 -21
- package/dist/api/issues/user-stories.js +0 -163
- package/dist/api/mcp-client.d.ts +0 -22
- package/dist/api/mcp-client.js +0 -75
- package/dist/api/products/test-cases.d.ts +0 -18
- package/dist/api/products/test-cases.js +0 -51
- package/dist/api/products.d.ts +0 -15
- package/dist/api/products.js +0 -45
- package/dist/api/release-test-cases.d.ts +0 -7
- package/dist/api/release-test-cases.js +0 -59
- package/dist/api/releases.d.ts +0 -41
- package/dist/api/releases.js +0 -117
- package/dist/api/run-sheets.d.ts +0 -22
- package/dist/api/run-sheets.js +0 -13
- package/dist/api/storage.d.ts +0 -13
- package/dist/api/storage.js +0 -29
- package/dist/api/tasks.d.ts +0 -26
- package/dist/api/tasks.js +0 -81
- package/dist/api/test-reports.d.ts +0 -9
- package/dist/api/test-reports.js +0 -43
- package/dist/api/user-psychology.d.ts +0 -101
- package/dist/api/user-psychology.js +0 -143
- package/dist/api/web-deploy.d.ts +0 -67
- package/dist/api/web-deploy.js +0 -199
- package/dist/auth/auth-store.d.ts +0 -98
- package/dist/auth/auth-store.js +0 -194
- package/dist/auth/env-store.d.ts +0 -41
- package/dist/auth/env-store.js +0 -127
- package/dist/auth/login.d.ts +0 -18
- package/dist/auth/login.js +0 -179
- package/dist/commands/adr/index.d.ts +0 -13
- package/dist/commands/adr/index.js +0 -31
- package/dist/commands/agent-workflow/chat-worker.d.ts +0 -16
- package/dist/commands/agent-workflow/chat-worker.js +0 -465
- package/dist/commands/agent-workflow/index.d.ts +0 -13
- package/dist/commands/agent-workflow/index.js +0 -107
- package/dist/commands/agent-workflow/issue-worker.d.ts +0 -14
- package/dist/commands/agent-workflow/issue-worker.js +0 -65
- package/dist/commands/agent-workflow/processor.d.ts +0 -95
- package/dist/commands/agent-workflow/processor.js +0 -519
- package/dist/commands/analyze-logs/index.d.ts +0 -7
- package/dist/commands/analyze-logs/index.js +0 -34
- package/dist/commands/api-docs/index.d.ts +0 -18
- package/dist/commands/api-docs/index.js +0 -41
- package/dist/commands/app-store/index.d.ts +0 -12
- package/dist/commands/app-store/index.js +0 -69
- package/dist/commands/architecture-diagram/index.d.ts +0 -8
- package/dist/commands/architecture-diagram/index.js +0 -10
- package/dist/commands/build/detect-project.d.ts +0 -52
- package/dist/commands/build/detect-project.js +0 -277
- package/dist/commands/build/index.d.ts +0 -66
- package/dist/commands/build/index.js +0 -544
- package/dist/commands/chat-serve/chat-server.d.ts +0 -114
- package/dist/commands/chat-serve/chat-server.js +0 -339
- package/dist/commands/chat-serve/index.d.ts +0 -20
- package/dist/commands/chat-serve/index.js +0 -58
- package/dist/commands/checklists/index.d.ts +0 -16
- package/dist/commands/checklists/index.js +0 -187
- package/dist/commands/checklists/tools.d.ts +0 -17
- package/dist/commands/checklists/tools.js +0 -19
- package/dist/commands/class-diagram/index.d.ts +0 -7
- package/dist/commands/class-diagram/index.js +0 -9
- package/dist/commands/code-review/index.d.ts +0 -2
- package/dist/commands/code-review/index.js +0 -37
- package/dist/commands/code-review/reviewer.d.ts +0 -3
- package/dist/commands/code-review/reviewer.js +0 -205
- package/dist/commands/config/index.d.ts +0 -16
- package/dist/commands/config/index.js +0 -60
- package/dist/commands/data-flow/index.d.ts +0 -19
- package/dist/commands/data-flow/index.js +0 -55
- package/dist/commands/diagram-shared/index.d.ts +0 -21
- package/dist/commands/diagram-shared/index.js +0 -37
- package/dist/commands/discover/index.d.ts +0 -14
- package/dist/commands/discover/index.js +0 -29
- package/dist/commands/er-diagram/index.d.ts +0 -19
- package/dist/commands/er-diagram/index.js +0 -55
- package/dist/commands/features/index.d.ts +0 -15
- package/dist/commands/features/index.js +0 -34
- package/dist/commands/financing-deck/index.d.ts +0 -8
- package/dist/commands/financing-deck/index.js +0 -66
- package/dist/commands/find-architecture/index.d.ts +0 -15
- package/dist/commands/find-architecture/index.js +0 -50
- package/dist/commands/find-bugs/index.d.ts +0 -13
- package/dist/commands/find-bugs/index.js +0 -48
- package/dist/commands/find-features/index.d.ts +0 -14
- package/dist/commands/find-features/index.js +0 -42
- package/dist/commands/find-smells/index.d.ts +0 -23
- package/dist/commands/find-smells/index.js +0 -74
- package/dist/commands/flowchart/index.d.ts +0 -8
- package/dist/commands/flowchart/index.js +0 -10
- package/dist/commands/growth-analysis/index.d.ts +0 -7
- package/dist/commands/growth-analysis/index.js +0 -89
- package/dist/commands/init/index.d.ts +0 -5
- package/dist/commands/init/index.js +0 -152
- package/dist/commands/init/prompts.d.ts +0 -9
- package/dist/commands/init/prompts.js +0 -128
- package/dist/commands/init/templates.d.ts +0 -9
- package/dist/commands/init/templates.js +0 -264
- package/dist/commands/intelligence/index.d.ts +0 -15
- package/dist/commands/intelligence/index.js +0 -138
- package/dist/commands/issue-analysis/index.d.ts +0 -5
- package/dist/commands/issue-analysis/index.js +0 -9
- package/dist/commands/pr-resolve/index.d.ts +0 -13
- package/dist/commands/pr-resolve/index.js +0 -50
- package/dist/commands/pr-review/index.d.ts +0 -12
- package/dist/commands/pr-review/index.js +0 -47
- package/dist/commands/product-techniques/index.d.ts +0 -15
- package/dist/commands/product-techniques/index.js +0 -37
- package/dist/commands/product-test-cases/index.d.ts +0 -12
- package/dist/commands/product-test-cases/index.js +0 -40
- package/dist/commands/quality-benchmark/index.d.ts +0 -45
- package/dist/commands/quality-benchmark/index.js +0 -247
- package/dist/commands/recipes/index.d.ts +0 -17
- package/dist/commands/recipes/index.js +0 -40
- package/dist/commands/refactor/refactor.d.ts +0 -2
- package/dist/commands/refactor/refactor.js +0 -134
- package/dist/commands/release-sync/index.d.ts +0 -5
- package/dist/commands/release-sync/index.js +0 -38
- package/dist/commands/run-sheet/index.d.ts +0 -6
- package/dist/commands/run-sheet/index.js +0 -48
- package/dist/commands/screen-flow/index.d.ts +0 -18
- package/dist/commands/screen-flow/index.js +0 -54
- package/dist/commands/sequence-diagram/index.d.ts +0 -19
- package/dist/commands/sequence-diagram/index.js +0 -55
- package/dist/commands/session-serve/index.d.ts +0 -32
- package/dist/commands/session-serve/index.js +0 -100
- package/dist/commands/session-turn/index.d.ts +0 -73
- package/dist/commands/session-turn/index.js +0 -254
- package/dist/commands/smoke-test/index.d.ts +0 -5
- package/dist/commands/smoke-test/index.js +0 -40
- package/dist/commands/state-diagram/index.d.ts +0 -7
- package/dist/commands/state-diagram/index.js +0 -9
- package/dist/commands/sync-aws/index.d.ts +0 -16
- package/dist/commands/sync-aws/index.js +0 -214
- package/dist/commands/sync-datadog/index.d.ts +0 -16
- package/dist/commands/sync-datadog/index.js +0 -236
- package/dist/commands/sync-github-issues/index.d.ts +0 -11
- package/dist/commands/sync-github-issues/index.js +0 -42
- package/dist/commands/sync-github-pull-requests/index.d.ts +0 -11
- package/dist/commands/sync-github-pull-requests/index.js +0 -42
- package/dist/commands/sync-org-repos/index.d.ts +0 -12
- package/dist/commands/sync-org-repos/index.js +0 -60
- package/dist/commands/sync-sentry-issues/index.d.ts +0 -14
- package/dist/commands/sync-sentry-issues/index.js +0 -73
- package/dist/commands/sync-terraform/index.d.ts +0 -16
- package/dist/commands/sync-terraform/index.js +0 -248
- package/dist/commands/task-worker/index.d.ts +0 -8
- package/dist/commands/task-worker/index.js +0 -34
- package/dist/commands/task-worker/processor.d.ts +0 -23
- package/dist/commands/task-worker/processor.js +0 -84
- package/dist/commands/technical-design/index.d.ts +0 -5
- package/dist/commands/technical-design/index.js +0 -9
- package/dist/commands/test-cases-analysis/index.d.ts +0 -5
- package/dist/commands/test-cases-analysis/index.js +0 -9
- package/dist/commands/user-psychology/index.d.ts +0 -7
- package/dist/commands/user-psychology/index.js +0 -51
- package/dist/commands/user-stories-analysis/index.d.ts +0 -5
- package/dist/commands/user-stories-analysis/index.js +0 -9
- package/dist/commands/workflow/config/phase-configs.d.ts +0 -5
- package/dist/commands/workflow/config/phase-configs.js +0 -132
- package/dist/commands/workflow/core/index.d.ts +0 -8
- package/dist/commands/workflow/core/index.js +0 -12
- package/dist/commands/workflow/core/issue-filter.d.ts +0 -16
- package/dist/commands/workflow/core/issue-filter.js +0 -47
- package/dist/commands/workflow/core/pipeline-evaluator.d.ts +0 -24
- package/dist/commands/workflow/core/pipeline-evaluator.js +0 -32
- package/dist/commands/workflow/core/state-manager.d.ts +0 -24
- package/dist/commands/workflow/core/state-manager.js +0 -42
- package/dist/commands/workflow/core/workflow-logger.d.ts +0 -23
- package/dist/commands/workflow/core/workflow-logger.js +0 -77
- package/dist/commands/workflow/executors/phase-executor.d.ts +0 -8
- package/dist/commands/workflow/executors/phase-executor.js +0 -338
- package/dist/commands/workflow/index.d.ts +0 -2
- package/dist/commands/workflow/index.js +0 -34
- package/dist/commands/workflow/issue-coordinator.d.ts +0 -18
- package/dist/commands/workflow/issue-coordinator.js +0 -161
- package/dist/commands/workflow/phase-orchestrator.d.ts +0 -26
- package/dist/commands/workflow/phase-orchestrator.js +0 -699
- package/dist/commands/workflow/processor.d.ts +0 -47
- package/dist/commands/workflow/processor.js +0 -149
- package/dist/config/issue-status.d.ts +0 -29
- package/dist/config/issue-status.js +0 -44
- package/dist/config.d.ts +0 -3
- package/dist/config.js +0 -79
- package/dist/constants.d.ts +0 -10
- package/dist/constants.js +0 -36
- package/dist/errors/index.d.ts +0 -68
- package/dist/errors/index.js +0 -129
- package/dist/index.d.ts +0 -4
- package/dist/phases/adr-generation/agent.d.ts +0 -6
- package/dist/phases/adr-generation/agent.js +0 -69
- package/dist/phases/adr-generation/index.d.ts +0 -15
- package/dist/phases/adr-generation/index.js +0 -66
- package/dist/phases/adr-generation/parse.d.ts +0 -12
- package/dist/phases/adr-generation/parse.js +0 -123
- package/dist/phases/adr-generation/prompts.d.ts +0 -8
- package/dist/phases/adr-generation/prompts.js +0 -35
- package/dist/phases/analyze-logs/agent.d.ts +0 -11
- package/dist/phases/analyze-logs/agent.js +0 -66
- package/dist/phases/analyze-logs/index.d.ts +0 -23
- package/dist/phases/analyze-logs/index.js +0 -152
- package/dist/phases/analyze-logs/prompts.d.ts +0 -3
- package/dist/phases/analyze-logs/prompts.js +0 -27
- package/dist/phases/api-docs/index.d.ts +0 -47
- package/dist/phases/api-docs/index.js +0 -254
- package/dist/phases/api-docs/mcp-server.d.ts +0 -25
- package/dist/phases/api-docs/mcp-server.js +0 -82
- package/dist/phases/api-docs/prompts.d.ts +0 -16
- package/dist/phases/api-docs/prompts.js +0 -65
- package/dist/phases/api-docs/types.d.ts +0 -22
- package/dist/phases/api-docs/types.js +0 -10
- package/dist/phases/app-store-generation/agent.d.ts +0 -2
- package/dist/phases/app-store-generation/agent.js +0 -177
- package/dist/phases/app-store-generation/assets/inter-latin-ext.woff2 +0 -0
- package/dist/phases/app-store-generation/assets/inter-latin.woff2 +0 -0
- package/dist/phases/app-store-generation/context.d.ts +0 -21
- package/dist/phases/app-store-generation/context.js +0 -78
- package/dist/phases/app-store-generation/index.d.ts +0 -20
- package/dist/phases/app-store-generation/index.js +0 -157
- package/dist/phases/app-store-generation/inter-font.d.ts +0 -20
- package/dist/phases/app-store-generation/inter-font.js +0 -49
- package/dist/phases/app-store-generation/prompts.d.ts +0 -43
- package/dist/phases/app-store-generation/prompts.js +0 -73
- package/dist/phases/app-store-generation/screenshot-composer.d.ts +0 -41
- package/dist/phases/app-store-generation/screenshot-composer.js +0 -516
- package/dist/phases/app-store-generation/uploader.d.ts +0 -19
- package/dist/phases/app-store-generation/uploader.js +0 -150
- package/dist/phases/architecture-diagram/index.d.ts +0 -15
- package/dist/phases/architecture-diagram/index.js +0 -51
- package/dist/phases/autonomous/index.d.ts +0 -32
- package/dist/phases/autonomous/index.js +0 -412
- package/dist/phases/autonomous/prompts.d.ts +0 -5
- package/dist/phases/autonomous/prompts.js +0 -31
- package/dist/phases/branch-planning/context.d.ts +0 -14
- package/dist/phases/branch-planning/context.js +0 -43
- package/dist/phases/branch-planning/index.d.ts +0 -25
- package/dist/phases/branch-planning/index.js +0 -404
- package/dist/phases/branch-planning/outcome.d.ts +0 -28
- package/dist/phases/branch-planning/outcome.js +0 -115
- package/dist/phases/branch-planning/prompts.d.ts +0 -41
- package/dist/phases/branch-planning/prompts.js +0 -157
- package/dist/phases/bug-fixing/analyzer.d.ts +0 -17
- package/dist/phases/bug-fixing/analyzer.js +0 -247
- package/dist/phases/bug-fixing/context-fetcher.d.ts +0 -22
- package/dist/phases/bug-fixing/context-fetcher.js +0 -137
- package/dist/phases/bug-fixing/index.d.ts +0 -7
- package/dist/phases/bug-fixing/index.js +0 -7
- package/dist/phases/bug-fixing/mcp-server.d.ts +0 -18
- package/dist/phases/bug-fixing/mcp-server.js +0 -19
- package/dist/phases/bug-fixing/prompts.d.ts +0 -2
- package/dist/phases/bug-fixing/prompts.js +0 -9
- package/dist/phases/chat-processor/context.d.ts +0 -38
- package/dist/phases/chat-processor/context.js +0 -91
- package/dist/phases/chat-processor/index.d.ts +0 -49
- package/dist/phases/chat-processor/index.js +0 -482
- package/dist/phases/chat-processor/product-context.d.ts +0 -36
- package/dist/phases/chat-processor/product-context.js +0 -113
- package/dist/phases/chat-processor/product-prompts.d.ts +0 -4
- package/dist/phases/chat-processor/product-prompts.js +0 -65
- package/dist/phases/chat-processor/product-tools.d.ts +0 -8
- package/dist/phases/chat-processor/product-tools.js +0 -11
- package/dist/phases/chat-processor/prompts.d.ts +0 -35
- package/dist/phases/chat-processor/prompts.js +0 -213
- package/dist/phases/chat-processor/tools.d.ts +0 -8
- package/dist/phases/chat-processor/tools.js +0 -11
- package/dist/phases/class-diagram/index.d.ts +0 -14
- package/dist/phases/class-diagram/index.js +0 -76
- package/dist/phases/code-implementation/branch-pr-creator.d.ts +0 -31
- package/dist/phases/code-implementation/branch-pr-creator.js +0 -172
- package/dist/phases/code-implementation/context.d.ts +0 -17
- package/dist/phases/code-implementation/context.js +0 -88
- package/dist/phases/code-implementation/index.d.ts +0 -33
- package/dist/phases/code-implementation/index.js +0 -926
- package/dist/phases/code-implementation/outcome.d.ts +0 -47
- package/dist/phases/code-implementation/outcome.js +0 -53
- package/dist/phases/code-implementation/prompts.d.ts +0 -8
- package/dist/phases/code-implementation/prompts.js +0 -166
- package/dist/phases/code-implementation-verification/agent.d.ts +0 -32
- package/dist/phases/code-implementation-verification/agent.js +0 -225
- package/dist/phases/code-implementation-verification/index.d.ts +0 -27
- package/dist/phases/code-implementation-verification/index.js +0 -121
- package/dist/phases/code-implementation-verification/prompts.d.ts +0 -10
- package/dist/phases/code-implementation-verification/prompts.js +0 -90
- package/dist/phases/code-refine/context.d.ts +0 -99
- package/dist/phases/code-refine/context.js +0 -457
- package/dist/phases/code-refine/index.d.ts +0 -59
- package/dist/phases/code-refine/index.js +0 -348
- package/dist/phases/code-refine/prompts.d.ts +0 -5
- package/dist/phases/code-refine/prompts.js +0 -162
- package/dist/phases/code-refine/refine-iteration.d.ts +0 -33
- package/dist/phases/code-refine/refine-iteration.js +0 -166
- package/dist/phases/code-refine/retry-handler.d.ts +0 -17
- package/dist/phases/code-refine/retry-handler.js +0 -87
- package/dist/phases/code-refine-verification/github.d.ts +0 -54
- package/dist/phases/code-refine-verification/github.js +0 -328
- package/dist/phases/code-refine-verification/index.d.ts +0 -11
- package/dist/phases/code-refine-verification/index.js +0 -260
- package/dist/phases/code-refine-verification/llm-analyzer.d.ts +0 -22
- package/dist/phases/code-refine-verification/llm-analyzer.js +0 -152
- package/dist/phases/code-refine-verification/prompts.d.ts +0 -5
- package/dist/phases/code-refine-verification/prompts.js +0 -119
- package/dist/phases/code-refine-verification/types.d.ts +0 -74
- package/dist/phases/code-refine-verification/types.js +0 -4
- package/dist/phases/code-review/context.d.ts +0 -96
- package/dist/phases/code-review/context.js +0 -278
- package/dist/phases/code-review/diff-utils.d.ts +0 -36
- package/dist/phases/code-review/diff-utils.js +0 -100
- package/dist/phases/code-review/index.d.ts +0 -40
- package/dist/phases/code-review/index.js +0 -627
- package/dist/phases/code-testing/analyzer.d.ts +0 -19
- package/dist/phases/code-testing/analyzer.js +0 -215
- package/dist/phases/code-testing/context-fetcher.d.ts +0 -16
- package/dist/phases/code-testing/context-fetcher.js +0 -83
- package/dist/phases/code-testing/index.d.ts +0 -2
- package/dist/phases/code-testing/index.js +0 -2
- package/dist/phases/code-testing/prompts.d.ts +0 -3
- package/dist/phases/code-testing/prompts.js +0 -63
- package/dist/phases/data-flow/index.d.ts +0 -28
- package/dist/phases/data-flow/index.js +0 -286
- package/dist/phases/data-flow/mcp-server.d.ts +0 -85
- package/dist/phases/data-flow/mcp-server.js +0 -140
- package/dist/phases/data-flow/prompts.d.ts +0 -14
- package/dist/phases/data-flow/prompts.js +0 -36
- package/dist/phases/data-flow/types.d.ts +0 -71
- package/dist/phases/data-flow/types.js +0 -86
- package/dist/phases/diagram-shared/clone-repos.d.ts +0 -63
- package/dist/phases/diagram-shared/clone-repos.js +0 -153
- package/dist/phases/diagram-shared/generate.d.ts +0 -42
- package/dist/phases/diagram-shared/generate.js +0 -162
- package/dist/phases/diagram-shared/graph.d.ts +0 -62
- package/dist/phases/diagram-shared/graph.js +0 -169
- package/dist/phases/diagram-shared/mcp.d.ts +0 -35
- package/dist/phases/diagram-shared/mcp.js +0 -68
- package/dist/phases/diagram-shared/prompts.d.ts +0 -23
- package/dist/phases/diagram-shared/prompts.js +0 -35
- package/dist/phases/discover-services/index.d.ts +0 -29
- package/dist/phases/discover-services/index.js +0 -528
- package/dist/phases/er-diagram/index.d.ts +0 -28
- package/dist/phases/er-diagram/index.js +0 -290
- package/dist/phases/er-diagram/mcp-server.d.ts +0 -77
- package/dist/phases/er-diagram/mcp-server.js +0 -144
- package/dist/phases/er-diagram/prompts.d.ts +0 -14
- package/dist/phases/er-diagram/prompts.js +0 -36
- package/dist/phases/er-diagram/types.d.ts +0 -76
- package/dist/phases/er-diagram/types.js +0 -84
- package/dist/phases/features/index.d.ts +0 -65
- package/dist/phases/features/index.js +0 -292
- package/dist/phases/features/mcp-server.d.ts +0 -61
- package/dist/phases/features/mcp-server.js +0 -165
- package/dist/phases/features/prompts.d.ts +0 -32
- package/dist/phases/features/prompts.js +0 -92
- package/dist/phases/features/types.d.ts +0 -34
- package/dist/phases/features/types.js +0 -15
- package/dist/phases/financing-deck/agent.d.ts +0 -1
- package/dist/phases/financing-deck/agent.js +0 -96
- package/dist/phases/financing-deck/context.d.ts +0 -13
- package/dist/phases/financing-deck/context.js +0 -69
- package/dist/phases/financing-deck/index.d.ts +0 -15
- package/dist/phases/financing-deck/index.js +0 -89
- package/dist/phases/financing-deck/prompts.d.ts +0 -2
- package/dist/phases/financing-deck/prompts.js +0 -94
- package/dist/phases/find-architecture/index.d.ts +0 -47
- package/dist/phases/find-architecture/index.js +0 -268
- package/dist/phases/find-architecture/prompts.d.ts +0 -32
- package/dist/phases/find-architecture/prompts.js +0 -129
- package/dist/phases/find-architecture/state.d.ts +0 -21
- package/dist/phases/find-architecture/state.js +0 -17
- package/dist/phases/find-architecture/types.d.ts +0 -55
- package/dist/phases/find-architecture/types.js +0 -69
- package/dist/phases/find-bugs/index.d.ts +0 -33
- package/dist/phases/find-bugs/index.js +0 -238
- package/dist/phases/find-bugs/prompts.d.ts +0 -22
- package/dist/phases/find-bugs/prompts.js +0 -101
- package/dist/phases/find-bugs/state.d.ts +0 -19
- package/dist/phases/find-bugs/state.js +0 -13
- package/dist/phases/find-bugs/types.d.ts +0 -21
- package/dist/phases/find-bugs/types.js +0 -16
- package/dist/phases/find-features/index.d.ts +0 -40
- package/dist/phases/find-features/index.js +0 -328
- package/dist/phases/find-features/prompts.d.ts +0 -43
- package/dist/phases/find-features/prompts.js +0 -138
- package/dist/phases/find-features/state.d.ts +0 -25
- package/dist/phases/find-features/state.js +0 -22
- package/dist/phases/find-features/types.d.ts +0 -27
- package/dist/phases/find-features/types.js +0 -16
- package/dist/phases/find-shared/baseline.d.ts +0 -45
- package/dist/phases/find-shared/baseline.js +0 -56
- package/dist/phases/find-shared/custom-rules.d.ts +0 -39
- package/dist/phases/find-shared/custom-rules.js +0 -75
- package/dist/phases/find-shared/detect-context.d.ts +0 -40
- package/dist/phases/find-shared/detect-context.js +0 -247
- package/dist/phases/find-shared/git.d.ts +0 -24
- package/dist/phases/find-shared/git.js +0 -60
- package/dist/phases/find-shared/mcp.d.ts +0 -54
- package/dist/phases/find-shared/mcp.js +0 -127
- package/dist/phases/find-shared/rule-config.d.ts +0 -37
- package/dist/phases/find-shared/rule-config.js +0 -67
- package/dist/phases/find-shared/rule-packs.d.ts +0 -65
- package/dist/phases/find-shared/rule-packs.js +0 -124
- package/dist/phases/find-shared/scan-state.d.ts +0 -33
- package/dist/phases/find-shared/scan-state.js +0 -112
- package/dist/phases/find-shared/scoped-read.d.ts +0 -12
- package/dist/phases/find-shared/scoped-read.js +0 -33
- package/dist/phases/find-smells/index.d.ts +0 -50
- package/dist/phases/find-smells/index.js +0 -305
- package/dist/phases/find-smells/prompts.d.ts +0 -31
- package/dist/phases/find-smells/prompts.js +0 -130
- package/dist/phases/find-smells/state.d.ts +0 -21
- package/dist/phases/find-smells/state.js +0 -17
- package/dist/phases/find-smells/types.d.ts +0 -51
- package/dist/phases/find-smells/types.js +0 -64
- package/dist/phases/flow-shared/clone-repos.d.ts +0 -63
- package/dist/phases/flow-shared/clone-repos.js +0 -153
- package/dist/phases/flowchart/index.d.ts +0 -15
- package/dist/phases/flowchart/index.js +0 -50
- package/dist/phases/functional-testing/analyzer.d.ts +0 -46
- package/dist/phases/functional-testing/analyzer.js +0 -622
- package/dist/phases/functional-testing/context-fetcher.d.ts +0 -16
- package/dist/phases/functional-testing/context-fetcher.js +0 -83
- package/dist/phases/functional-testing/http-fallback.d.ts +0 -10
- package/dist/phases/functional-testing/http-fallback.js +0 -156
- package/dist/phases/functional-testing/index.d.ts +0 -4
- package/dist/phases/functional-testing/index.js +0 -4
- package/dist/phases/functional-testing/mcp-server.d.ts +0 -9
- package/dist/phases/functional-testing/mcp-server.js +0 -13
- package/dist/phases/functional-testing/prompts.d.ts +0 -2
- package/dist/phases/functional-testing/prompts.js +0 -58
- package/dist/phases/functional-testing/test-report-creator.d.ts +0 -68
- package/dist/phases/functional-testing/test-report-creator.js +0 -306
- package/dist/phases/functional-testing/test-retry-handler.d.ts +0 -16
- package/dist/phases/functional-testing/test-retry-handler.js +0 -70
- package/dist/phases/growth-analysis/agent.d.ts +0 -2
- package/dist/phases/growth-analysis/agent.js +0 -107
- package/dist/phases/growth-analysis/context.d.ts +0 -23
- package/dist/phases/growth-analysis/context.js +0 -137
- package/dist/phases/growth-analysis/index.d.ts +0 -32
- package/dist/phases/growth-analysis/index.js +0 -226
- package/dist/phases/growth-analysis/prompts.d.ts +0 -2
- package/dist/phases/growth-analysis/prompts.js +0 -45
- package/dist/phases/intelligence-analysis/agent.d.ts +0 -2
- package/dist/phases/intelligence-analysis/agent.js +0 -338
- package/dist/phases/intelligence-analysis/context.d.ts +0 -23
- package/dist/phases/intelligence-analysis/context.js +0 -142
- package/dist/phases/intelligence-analysis/index.d.ts +0 -58
- package/dist/phases/intelligence-analysis/index.js +0 -244
- package/dist/phases/intelligence-analysis/prompts.d.ts +0 -2
- package/dist/phases/intelligence-analysis/prompts.js +0 -62
- package/dist/phases/issue-analysis/agent.d.ts +0 -21
- package/dist/phases/issue-analysis/agent.js +0 -153
- package/dist/phases/issue-analysis/context.d.ts +0 -20
- package/dist/phases/issue-analysis/context.js +0 -93
- package/dist/phases/issue-analysis/index.d.ts +0 -8
- package/dist/phases/issue-analysis/index.js +0 -147
- package/dist/phases/issue-analysis/outcome.d.ts +0 -10
- package/dist/phases/issue-analysis/outcome.js +0 -42
- package/dist/phases/issue-analysis/prompts.d.ts +0 -8
- package/dist/phases/issue-analysis/prompts.js +0 -99
- package/dist/phases/issue-analysis-verification/agent.d.ts +0 -33
- package/dist/phases/issue-analysis-verification/agent.js +0 -124
- package/dist/phases/issue-analysis-verification/index.d.ts +0 -27
- package/dist/phases/issue-analysis-verification/index.js +0 -79
- package/dist/phases/issue-analysis-verification/prompts.d.ts +0 -9
- package/dist/phases/issue-analysis-verification/prompts.js +0 -75
- package/dist/phases/output-contracts.d.ts +0 -7
- package/dist/phases/output-contracts.js +0 -1201
- package/dist/phases/pr-execution/context.d.ts +0 -32
- package/dist/phases/pr-execution/context.js +0 -246
- package/dist/phases/pr-execution/file-assigner.d.ts +0 -57
- package/dist/phases/pr-execution/file-assigner.js +0 -287
- package/dist/phases/pr-execution/index.d.ts +0 -22
- package/dist/phases/pr-execution/index.js +0 -401
- package/dist/phases/pr-execution/outcome.d.ts +0 -24
- package/dist/phases/pr-execution/outcome.js +0 -34
- package/dist/phases/pr-execution/pr-executor.d.ts +0 -42
- package/dist/phases/pr-execution/pr-executor.js +0 -78
- package/dist/phases/pr-execution/prompts.d.ts +0 -27
- package/dist/phases/pr-execution/prompts.js +0 -131
- package/dist/phases/pr-resolve/checklist-learner.d.ts +0 -28
- package/dist/phases/pr-resolve/checklist-learner.js +0 -153
- package/dist/phases/pr-resolve/github-reply.d.ts +0 -16
- package/dist/phases/pr-resolve/github-reply.js +0 -75
- package/dist/phases/pr-resolve/index.d.ts +0 -33
- package/dist/phases/pr-resolve/index.js +0 -272
- package/dist/phases/pr-resolve/prompts.d.ts +0 -17
- package/dist/phases/pr-resolve/prompts.js +0 -107
- package/dist/phases/pr-resolve/types.d.ts +0 -18
- package/dist/phases/pr-resolve/types.js +0 -14
- package/dist/phases/pr-resolve/workspace.d.ts +0 -45
- package/dist/phases/pr-resolve/workspace.js +0 -174
- package/dist/phases/pr-review/index.d.ts +0 -27
- package/dist/phases/pr-review/index.js +0 -209
- package/dist/phases/pr-review/prompts.d.ts +0 -5
- package/dist/phases/pr-review/prompts.js +0 -87
- package/dist/phases/pr-shared/agent-utils.d.ts +0 -47
- package/dist/phases/pr-shared/agent-utils.js +0 -112
- package/dist/phases/pr-shared/context.d.ts +0 -24
- package/dist/phases/pr-shared/context.js +0 -78
- package/dist/phases/pr-shared/status.d.ts +0 -18
- package/dist/phases/pr-shared/status.js +0 -37
- package/dist/phases/pr-splitting/context.d.ts +0 -28
- package/dist/phases/pr-splitting/context.js +0 -182
- package/dist/phases/pr-splitting/import-dep-validator.d.ts +0 -67
- package/dist/phases/pr-splitting/import-dep-validator.js +0 -255
- package/dist/phases/pr-splitting/index.d.ts +0 -36
- package/dist/phases/pr-splitting/index.js +0 -413
- package/dist/phases/pr-splitting/outcome.d.ts +0 -24
- package/dist/phases/pr-splitting/outcome.js +0 -114
- package/dist/phases/pr-splitting/prompts.d.ts +0 -43
- package/dist/phases/pr-splitting/prompts.js +0 -154
- package/dist/phases/product-techniques/index.d.ts +0 -52
- package/dist/phases/product-techniques/index.js +0 -268
- package/dist/phases/product-techniques/mcp-server.d.ts +0 -41
- package/dist/phases/product-techniques/mcp-server.js +0 -96
- package/dist/phases/product-techniques/prompts.d.ts +0 -19
- package/dist/phases/product-techniques/prompts.js +0 -66
- package/dist/phases/product-techniques/types.d.ts +0 -13
- package/dist/phases/product-techniques/types.js +0 -13
- package/dist/phases/product-test-cases/index.d.ts +0 -25
- package/dist/phases/product-test-cases/index.js +0 -174
- package/dist/phases/product-test-cases/prompts.d.ts +0 -24
- package/dist/phases/product-test-cases/prompts.js +0 -80
- package/dist/phases/product-test-cases/types.d.ts +0 -17
- package/dist/phases/product-test-cases/types.js +0 -27
- package/dist/phases/pull-request/creator.d.ts +0 -30
- package/dist/phases/pull-request/creator.js +0 -319
- package/dist/phases/pull-request/handler.d.ts +0 -15
- package/dist/phases/pull-request/handler.js +0 -92
- package/dist/phases/quality-benchmark/gate.d.ts +0 -50
- package/dist/phases/quality-benchmark/gate.js +0 -91
- package/dist/phases/quality-benchmark/index.d.ts +0 -65
- package/dist/phases/quality-benchmark/index.js +0 -208
- package/dist/phases/quality-benchmark/mcp-server.d.ts +0 -46
- package/dist/phases/quality-benchmark/mcp-server.js +0 -252
- package/dist/phases/quality-benchmark/parsers.d.ts +0 -45
- package/dist/phases/quality-benchmark/parsers.js +0 -1311
- package/dist/phases/quality-benchmark/prompts.d.ts +0 -31
- package/dist/phases/quality-benchmark/prompts.js +0 -154
- package/dist/phases/quality-benchmark/rubric.md +0 -1211
- package/dist/phases/quality-benchmark/tool-catalog.d.ts +0 -33
- package/dist/phases/quality-benchmark/tool-catalog.js +0 -693
- package/dist/phases/quality-benchmark/tool-runner.d.ts +0 -69
- package/dist/phases/quality-benchmark/tool-runner.js +0 -399
- package/dist/phases/quality-benchmark/types.d.ts +0 -319
- package/dist/phases/quality-benchmark/types.js +0 -23
- package/dist/phases/quality-benchmark/workspace.d.ts +0 -31
- package/dist/phases/quality-benchmark/workspace.js +0 -110
- package/dist/phases/recipes/index.d.ts +0 -63
- package/dist/phases/recipes/index.js +0 -358
- package/dist/phases/recipes/mcp-server.d.ts +0 -66
- package/dist/phases/recipes/mcp-server.js +0 -229
- package/dist/phases/recipes/prompts.d.ts +0 -35
- package/dist/phases/recipes/prompts.js +0 -105
- package/dist/phases/recipes/types.d.ts +0 -42
- package/dist/phases/recipes/types.js +0 -16
- package/dist/phases/release-sync/github.d.ts +0 -66
- package/dist/phases/release-sync/github.js +0 -140
- package/dist/phases/release-sync/index.d.ts +0 -24
- package/dist/phases/release-sync/index.js +0 -156
- package/dist/phases/release-sync/snapshot.d.ts +0 -27
- package/dist/phases/release-sync/snapshot.js +0 -158
- package/dist/phases/run-sheet/agent.d.ts +0 -49
- package/dist/phases/run-sheet/agent.js +0 -156
- package/dist/phases/run-sheet/index.d.ts +0 -57
- package/dist/phases/run-sheet/index.js +0 -392
- package/dist/phases/screen-flow/index.d.ts +0 -26
- package/dist/phases/screen-flow/index.js +0 -349
- package/dist/phases/screen-flow/mcp-server.d.ts +0 -201
- package/dist/phases/screen-flow/mcp-server.js +0 -272
- package/dist/phases/screen-flow/prompts.d.ts +0 -19
- package/dist/phases/screen-flow/prompts.js +0 -43
- package/dist/phases/screen-flow/theme.d.ts +0 -19
- package/dist/phases/screen-flow/theme.js +0 -193
- package/dist/phases/screen-flow/types.d.ts +0 -137
- package/dist/phases/screen-flow/types.js +0 -81
- package/dist/phases/sequence-diagram/index.d.ts +0 -30
- package/dist/phases/sequence-diagram/index.js +0 -290
- package/dist/phases/sequence-diagram/mcp-server.d.ts +0 -64
- package/dist/phases/sequence-diagram/mcp-server.js +0 -134
- package/dist/phases/sequence-diagram/prompts.d.ts +0 -14
- package/dist/phases/sequence-diagram/prompts.js +0 -36
- package/dist/phases/sequence-diagram/types.d.ts +0 -52
- package/dist/phases/sequence-diagram/types.js +0 -93
- package/dist/phases/smoke-test/agent.d.ts +0 -12
- package/dist/phases/smoke-test/agent.js +0 -93
- package/dist/phases/smoke-test/index.d.ts +0 -22
- package/dist/phases/smoke-test/index.js +0 -241
- package/dist/phases/smoke-test/prompts.d.ts +0 -15
- package/dist/phases/smoke-test/prompts.js +0 -35
- package/dist/phases/state-diagram/index.d.ts +0 -15
- package/dist/phases/state-diagram/index.js +0 -53
- package/dist/phases/sync-github-issues/index.d.ts +0 -41
- package/dist/phases/sync-github-issues/index.js +0 -187
- package/dist/phases/sync-github-issues/state.d.ts +0 -26
- package/dist/phases/sync-github-issues/state.js +0 -18
- package/dist/phases/sync-github-issues/types.d.ts +0 -35
- package/dist/phases/sync-github-issues/types.js +0 -6
- package/dist/phases/sync-github-pull-requests/index.d.ts +0 -23
- package/dist/phases/sync-github-pull-requests/index.js +0 -210
- package/dist/phases/sync-github-pull-requests/state.d.ts +0 -24
- package/dist/phases/sync-github-pull-requests/state.js +0 -16
- package/dist/phases/sync-github-pull-requests/types.d.ts +0 -22
- package/dist/phases/sync-github-pull-requests/types.js +0 -1
- package/dist/phases/sync-org-repos/index.d.ts +0 -28
- package/dist/phases/sync-org-repos/index.js +0 -133
- package/dist/phases/sync-sentry-issues/index.d.ts +0 -29
- package/dist/phases/sync-sentry-issues/index.js +0 -153
- package/dist/phases/sync-sentry-issues/sentry-client.d.ts +0 -66
- package/dist/phases/sync-sentry-issues/sentry-client.js +0 -221
- package/dist/phases/sync-sentry-issues/state.d.ts +0 -23
- package/dist/phases/sync-sentry-issues/state.js +0 -18
- package/dist/phases/sync-sentry-issues/types.d.ts +0 -46
- package/dist/phases/sync-sentry-issues/types.js +0 -6
- package/dist/phases/sync-shared/mcp.d.ts +0 -81
- package/dist/phases/sync-shared/mcp.js +0 -111
- package/dist/phases/task/agent.d.ts +0 -10
- package/dist/phases/task/agent.js +0 -83
- package/dist/phases/task/context.d.ts +0 -16
- package/dist/phases/task/context.js +0 -50
- package/dist/phases/task/index.d.ts +0 -17
- package/dist/phases/task/index.js +0 -54
- package/dist/phases/task/prompts.d.ts +0 -9
- package/dist/phases/task/prompts.js +0 -21
- package/dist/phases/technical-design/context.d.ts +0 -12
- package/dist/phases/technical-design/context.js +0 -39
- package/dist/phases/technical-design/index.d.ts +0 -21
- package/dist/phases/technical-design/index.js +0 -456
- package/dist/phases/technical-design/outcome.d.ts +0 -25
- package/dist/phases/technical-design/outcome.js +0 -41
- package/dist/phases/technical-design/prompts.d.ts +0 -8
- package/dist/phases/technical-design/prompts.js +0 -210
- package/dist/phases/technical-design-verification/agent.d.ts +0 -53
- package/dist/phases/technical-design-verification/agent.js +0 -186
- package/dist/phases/technical-design-verification/index.d.ts +0 -38
- package/dist/phases/technical-design-verification/index.js +0 -152
- package/dist/phases/technical-design-verification/prompts.d.ts +0 -12
- package/dist/phases/technical-design-verification/prompts.js +0 -143
- package/dist/phases/test-cases-analysis/agent.d.ts +0 -9
- package/dist/phases/test-cases-analysis/agent.js +0 -105
- package/dist/phases/test-cases-analysis/context.d.ts +0 -15
- package/dist/phases/test-cases-analysis/context.js +0 -86
- package/dist/phases/test-cases-analysis/formatters.d.ts +0 -6
- package/dist/phases/test-cases-analysis/formatters.js +0 -35
- package/dist/phases/test-cases-analysis/index.d.ts +0 -9
- package/dist/phases/test-cases-analysis/index.js +0 -175
- package/dist/phases/test-cases-analysis/outcome.d.ts +0 -27
- package/dist/phases/test-cases-analysis/outcome.js +0 -146
- package/dist/phases/test-cases-analysis/prompts.d.ts +0 -7
- package/dist/phases/test-cases-analysis/prompts.js +0 -171
- package/dist/phases/user-psychology/agent.d.ts +0 -16
- package/dist/phases/user-psychology/agent.js +0 -105
- package/dist/phases/user-psychology/context.d.ts +0 -10
- package/dist/phases/user-psychology/context.js +0 -65
- package/dist/phases/user-psychology/index.d.ts +0 -18
- package/dist/phases/user-psychology/index.js +0 -96
- package/dist/phases/user-psychology/prompts.d.ts +0 -2
- package/dist/phases/user-psychology/prompts.js +0 -41
- package/dist/phases/user-stories-analysis/agent.d.ts +0 -9
- package/dist/phases/user-stories-analysis/agent.js +0 -105
- package/dist/phases/user-stories-analysis/context.d.ts +0 -15
- package/dist/phases/user-stories-analysis/context.js +0 -86
- package/dist/phases/user-stories-analysis/formatters.d.ts +0 -6
- package/dist/phases/user-stories-analysis/formatters.js +0 -32
- package/dist/phases/user-stories-analysis/index.d.ts +0 -9
- package/dist/phases/user-stories-analysis/index.js +0 -175
- package/dist/phases/user-stories-analysis/outcome.d.ts +0 -27
- package/dist/phases/user-stories-analysis/outcome.js +0 -146
- package/dist/phases/user-stories-analysis/prompts.d.ts +0 -7
- package/dist/phases/user-stories-analysis/prompts.js +0 -194
- package/dist/services/audit-logs.d.ts +0 -73
- package/dist/services/audit-logs.js +0 -174
- package/dist/services/branches.d.ts +0 -103
- package/dist/services/branches.js +0 -391
- package/dist/services/checklist.d.ts +0 -100
- package/dist/services/checklist.js +0 -259
- package/dist/services/coaching/coaching-agent.d.ts +0 -39
- package/dist/services/coaching/coaching-agent.js +0 -308
- package/dist/services/coaching/coaching-loop.d.ts +0 -62
- package/dist/services/coaching/coaching-loop.js +0 -265
- package/dist/services/coaching/index.d.ts +0 -8
- package/dist/services/coaching/index.js +0 -8
- package/dist/services/coaching/phase-coaching.d.ts +0 -47
- package/dist/services/coaching/phase-coaching.js +0 -60
- package/dist/services/coaching/self-rating.d.ts +0 -26
- package/dist/services/coaching/self-rating.js +0 -153
- package/dist/services/feedbacks.d.ts +0 -57
- package/dist/services/feedbacks.js +0 -264
- package/dist/services/phase-hooks/bindings-fetcher.d.ts +0 -21
- package/dist/services/phase-hooks/bindings-fetcher.js +0 -53
- package/dist/services/phase-hooks/hook-executor.d.ts +0 -36
- package/dist/services/phase-hooks/hook-executor.js +0 -167
- package/dist/services/phase-hooks/hook-logging.d.ts +0 -14
- package/dist/services/phase-hooks/hook-logging.js +0 -41
- package/dist/services/phase-hooks/hook-runner.d.ts +0 -19
- package/dist/services/phase-hooks/hook-runner.js +0 -83
- package/dist/services/phase-hooks/index.d.ts +0 -10
- package/dist/services/phase-hooks/index.js +0 -9
- package/dist/services/phase-hooks/plugin-loader.d.ts +0 -31
- package/dist/services/phase-hooks/plugin-loader.js +0 -207
- package/dist/services/phase-hooks/types.d.ts +0 -69
- package/dist/services/phase-hooks/types.js +0 -8
- package/dist/services/phase-ratings.d.ts +0 -70
- package/dist/services/phase-ratings.js +0 -143
- package/dist/services/product-logs.d.ts +0 -31
- package/dist/services/product-logs.js +0 -94
- package/dist/services/pull-requests.d.ts +0 -57
- package/dist/services/pull-requests.js +0 -186
- package/dist/services/quality-reports.d.ts +0 -45
- package/dist/services/quality-reports.js +0 -93
- package/dist/services/repo-config.d.ts +0 -17
- package/dist/services/repo-config.js +0 -50
- package/dist/services/skill-resolver.d.ts +0 -46
- package/dist/services/skill-resolver.js +0 -123
- package/dist/services/video/device-frames.d.ts +0 -34
- package/dist/services/video/device-frames.js +0 -513
- package/dist/services/video/index.d.ts +0 -66
- package/dist/services/video/index.js +0 -238
- package/dist/services/video/retry.d.ts +0 -20
- package/dist/services/video/retry.js +0 -76
- package/dist/services/video/screenshot-generator.d.ts +0 -69
- package/dist/services/video/screenshot-generator.js +0 -259
- package/dist/services/video/tts-generator.d.ts +0 -40
- package/dist/services/video/tts-generator.js +0 -121
- package/dist/services/video/video-assembler.d.ts +0 -45
- package/dist/services/video/video-assembler.js +0 -351
- package/dist/services/video/video-uploader.d.ts +0 -28
- package/dist/services/video/video-uploader.js +0 -108
- package/dist/skills/phase/adr-generation/SKILL.md +0 -51
- package/dist/skills/phase/analyze-logs/SKILL.md +0 -24
- package/dist/skills/phase/app-store-generation/SKILL.md +0 -60
- package/dist/skills/phase/architecture-diagram/SKILL.md +0 -41
- package/dist/skills/phase/autonomous/SKILL.md +0 -52
- package/dist/skills/phase/branch-planning/SKILL.md +0 -55
- package/dist/skills/phase/bug-fixing/SKILL.md +0 -47
- package/dist/skills/phase/class-diagram/SKILL.md +0 -44
- package/dist/skills/phase/code-implementation/SKILL.md +0 -68
- package/dist/skills/phase/code-implementation-verification/SKILL.md +0 -76
- package/dist/skills/phase/code-refine/SKILL.md +0 -62
- package/dist/skills/phase/code-testing/SKILL.md +0 -78
- package/dist/skills/phase/data-flow/SKILL.md +0 -82
- package/dist/skills/phase/er-diagram/SKILL.md +0 -71
- package/dist/skills/phase/flowchart/SKILL.md +0 -38
- package/dist/skills/phase/functional-testing/SKILL.md +0 -62
- package/dist/skills/phase/growth-analysis/SKILL.md +0 -97
- package/dist/skills/phase/incremental-sync/SKILL.md +0 -59
- package/dist/skills/phase/intelligence-analysis/SKILL.md +0 -52
- package/dist/skills/phase/issue-analysis/SKILL.md +0 -73
- package/dist/skills/phase/issue-analysis-verification/SKILL.md +0 -61
- package/dist/skills/phase/pr-execution/SKILL.md +0 -69
- package/dist/skills/phase/pr-splitting/SKILL.md +0 -78
- package/dist/skills/phase/screen-flow/SKILL.md +0 -78
- package/dist/skills/phase/sequence-diagram/SKILL.md +0 -67
- package/dist/skills/phase/smoke-test/SKILL.md +0 -80
- package/dist/skills/phase/state-diagram/SKILL.md +0 -38
- package/dist/skills/phase/task/SKILL.md +0 -19
- package/dist/skills/phase/technical-design/SKILL.md +0 -75
- package/dist/skills/phase/technical-design-verification/SKILL.md +0 -43
- package/dist/skills/phase/test-cases-analysis/SKILL.md +0 -88
- package/dist/skills/phase/user-psychology/SKILL.md +0 -135
- package/dist/skills/phase/user-stories-analysis/SKILL.md +0 -118
- package/dist/supabase/client.d.ts +0 -34
- package/dist/supabase/client.js +0 -123
- package/dist/system/session-manager.d.ts +0 -67
- package/dist/system/session-manager.js +0 -300
- package/dist/system/sleep-notification.d.ts +0 -15
- package/dist/system/sleep-notification.js +0 -108
- package/dist/system/sleep-prevention.d.ts +0 -20
- package/dist/system/sleep-prevention.js +0 -112
- package/dist/tools/bootstrap.d.ts +0 -45
- package/dist/tools/bootstrap.js +0 -50
- package/dist/types/external-sources.d.ts +0 -22
- package/dist/types/external-sources.js +0 -23
- package/dist/types/index.d.ts +0 -206
- package/dist/types/index.js +0 -1
- package/dist/types/issues.d.ts +0 -37
- package/dist/types/issues.js +0 -1
- package/dist/types/llm-responses.d.ts +0 -114
- package/dist/types/llm-responses.js +0 -9
- package/dist/types/pipeline.d.ts +0 -28
- package/dist/types/pipeline.js +0 -4
- package/dist/updater/auto-updater.d.ts +0 -39
- package/dist/updater/auto-updater.js +0 -134
- package/dist/utils/conflict-resolver.d.ts +0 -49
- package/dist/utils/conflict-resolver.js +0 -201
- package/dist/utils/formatters.d.ts +0 -42
- package/dist/utils/formatters.js +0 -166
- package/dist/utils/git-branch-manager-async.d.ts +0 -127
- package/dist/utils/git-branch-manager-async.js +0 -425
- package/dist/utils/git-branch-manager.d.ts +0 -160
- package/dist/utils/git-branch-manager.js +0 -613
- package/dist/utils/git-push.d.ts +0 -43
- package/dist/utils/git-push.js +0 -136
- package/dist/utils/github-repo-info.d.ts +0 -26
- package/dist/utils/github-repo-info.js +0 -45
- package/dist/utils/image-downloader.d.ts +0 -32
- package/dist/utils/image-downloader.js +0 -152
- package/dist/utils/issue-phase-cli.d.ts +0 -26
- package/dist/utils/issue-phase-cli.js +0 -44
- package/dist/utils/json-extract.d.ts +0 -6
- package/dist/utils/json-extract.js +0 -44
- package/dist/utils/json-extractor.d.ts +0 -27
- package/dist/utils/json-extractor.js +0 -102
- package/dist/utils/logger.d.ts +0 -35
- package/dist/utils/logger.js +0 -167
- package/dist/utils/pipeline-logger.d.ts +0 -8
- package/dist/utils/pipeline-logger.js +0 -38
- package/dist/utils/validation.d.ts +0 -68
- package/dist/utils/validation.js +0 -229
- package/dist/utils/workflow-utils.d.ts +0 -22
- package/dist/utils/workflow-utils.js +0 -48
- package/dist/workspace/session-workspace.d.ts +0 -43
- package/dist/workspace/session-workspace.js +0 -90
- package/dist/workspace/workspace-manager.d.ts +0 -105
- package/dist/workspace/workspace-manager.js +0 -280
|
@@ -1,259 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Checklist service for pipeline integration
|
|
3
|
-
*/
|
|
4
|
-
import { callMcpEndpoint } from '../api/mcp-client.js';
|
|
5
|
-
import { logDebug, logError, logInfo, logSuccess, logWarning, } from '../utils/logger.js';
|
|
6
|
-
/**
|
|
7
|
-
* Fetch checklists for a specific phase
|
|
8
|
-
*/
|
|
9
|
-
export async function getChecklistsForPhase(options, phase) {
|
|
10
|
-
const { issueId } = options;
|
|
11
|
-
// Convert phase name from hyphen to underscore format for database compatibility
|
|
12
|
-
// e.g., 'issue-analysis' -> 'issue_analysis'
|
|
13
|
-
const dbPhase = phase.replace(/-/g, '_');
|
|
14
|
-
logInfo(`Fetching checklists: phase="${phase}" (db: "${dbPhase}"), issue_id="${issueId}"`);
|
|
15
|
-
const result = await callMcpEndpoint('checklists/phase', {
|
|
16
|
-
issue_id: issueId,
|
|
17
|
-
phase: dbPhase,
|
|
18
|
-
});
|
|
19
|
-
// Handle empty result gracefully
|
|
20
|
-
if (!result) {
|
|
21
|
-
return {
|
|
22
|
-
phase,
|
|
23
|
-
issue_id: issueId,
|
|
24
|
-
checklists: [],
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
return result;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Validate checklist completion for a phase
|
|
31
|
-
*/
|
|
32
|
-
export async function validateChecklistsForPhase(options, phase) {
|
|
33
|
-
const { issueId } = options;
|
|
34
|
-
// Convert phase name from hyphen to underscore format for database compatibility
|
|
35
|
-
const dbPhase = phase.replace(/-/g, '_');
|
|
36
|
-
const result = await callMcpEndpoint('checklists/validate', {
|
|
37
|
-
issue_id: issueId,
|
|
38
|
-
phase: dbPhase,
|
|
39
|
-
});
|
|
40
|
-
return result;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Create checklist results (mark as started/in-progress)
|
|
44
|
-
*/
|
|
45
|
-
export async function createChecklistResult(options, checklistId, itemResults) {
|
|
46
|
-
const { issueId } = options;
|
|
47
|
-
return await callMcpEndpoint('checklist_results/create', {
|
|
48
|
-
issue_id: issueId,
|
|
49
|
-
checklist_id: checklistId,
|
|
50
|
-
item_results: itemResults,
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Strictly validate that all required checklists have results
|
|
55
|
-
* Returns error if any checklists exist but don't have results
|
|
56
|
-
*/
|
|
57
|
-
export async function validateRequiredChecklistResults(options, phase, verbose) {
|
|
58
|
-
try {
|
|
59
|
-
// Get checklists for this phase
|
|
60
|
-
const checklistContext = await getChecklistsForPhase(options, phase);
|
|
61
|
-
// If no checklists exist for this phase, validation passes
|
|
62
|
-
if (!checklistContext.checklists ||
|
|
63
|
-
checklistContext.checklists.length === 0) {
|
|
64
|
-
if (verbose) {
|
|
65
|
-
logDebug(`No checklists found for phase ${phase} - validation passes`, verbose);
|
|
66
|
-
}
|
|
67
|
-
return { success: true, missingChecklists: [] };
|
|
68
|
-
}
|
|
69
|
-
// Validate checklist completion
|
|
70
|
-
const validation = await validateChecklistsForPhase(options, phase);
|
|
71
|
-
const missingChecklists = [];
|
|
72
|
-
// Check each checklist to ensure it has been addressed with results
|
|
73
|
-
for (const checklistValidation of validation.checklists_validation) {
|
|
74
|
-
// If checklist exists but has no result created (status is 'not_started')
|
|
75
|
-
if (checklistValidation.status === 'not_started') {
|
|
76
|
-
missingChecklists.push(checklistValidation.checklist_name);
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
if (missingChecklists.length > 0) {
|
|
80
|
-
const errorMsg = `Phase ${phase} has ${checklistContext.checklists.length} MANDATORY checklists but ${missingChecklists.length} are missing results. All checklists must be addressed. Missing: ${missingChecklists.join(', ')}`;
|
|
81
|
-
if (verbose) {
|
|
82
|
-
logError(errorMsg);
|
|
83
|
-
}
|
|
84
|
-
return {
|
|
85
|
-
success: false,
|
|
86
|
-
error: errorMsg,
|
|
87
|
-
missingChecklists,
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
if (verbose) {
|
|
91
|
-
logSuccess(`All ${validation.checklists_validation.length} mandatory checklists for phase ${phase} have been addressed`);
|
|
92
|
-
}
|
|
93
|
-
return { success: true, missingChecklists: [] };
|
|
94
|
-
}
|
|
95
|
-
catch (error) {
|
|
96
|
-
const errorMsg = `Failed to validate mandatory checklist compliance for phase ${phase}: ${error instanceof Error ? error.message : String(error)}`;
|
|
97
|
-
return {
|
|
98
|
-
success: false,
|
|
99
|
-
error: errorMsg,
|
|
100
|
-
missingChecklists: [],
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Create checklist item result
|
|
106
|
-
*/
|
|
107
|
-
export async function createChecklistItemResult(options, checklistItemId, isPassed, value, notes) {
|
|
108
|
-
const { issueId } = options;
|
|
109
|
-
return await callMcpEndpoint('checklist_item_results/create', {
|
|
110
|
-
issue_id: issueId,
|
|
111
|
-
checklist_item_id: checklistItemId,
|
|
112
|
-
is_passed: isPassed,
|
|
113
|
-
value,
|
|
114
|
-
notes,
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
|
-
/**
|
|
118
|
-
* Log individual checklist item results for debugging
|
|
119
|
-
*/
|
|
120
|
-
function logChecklistItemResults(itemResults, verbose) {
|
|
121
|
-
for (const itemResult of itemResults) {
|
|
122
|
-
const status = itemResult.is_passed ? 'PASS' : 'FAIL';
|
|
123
|
-
logDebug(` ${status} Item: ${String(itemResult.checklist_item_id)}`, verbose);
|
|
124
|
-
if (itemResult.notes) {
|
|
125
|
-
logDebug(` Notes: ${String(itemResult.notes)}`, verbose);
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Process checklist item results from phase JSON response and create MCP results
|
|
131
|
-
*/
|
|
132
|
-
export async function processChecklistItemResultsFromResponse(options, phase, checklistItemResults, verbose) {
|
|
133
|
-
const errors = [];
|
|
134
|
-
let created = 0;
|
|
135
|
-
if (!checklistItemResults || checklistItemResults.length === 0) {
|
|
136
|
-
if (verbose) {
|
|
137
|
-
logDebug('No checklist item results to process', verbose);
|
|
138
|
-
}
|
|
139
|
-
return { created, errors };
|
|
140
|
-
}
|
|
141
|
-
// Get current checklists to map checklist_item_id to checklist_id
|
|
142
|
-
const checklistContext = await getChecklistsForPhase(options, phase);
|
|
143
|
-
// Create a map from checklist_item_id to checklist_id
|
|
144
|
-
const itemToChecklistMap = new Map();
|
|
145
|
-
const checklistIds = new Set();
|
|
146
|
-
for (const checklist of checklistContext.checklists) {
|
|
147
|
-
checklistIds.add(checklist.id);
|
|
148
|
-
for (const item of checklist.items) {
|
|
149
|
-
itemToChecklistMap.set(item.id, checklist.id);
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
// Group checklist item results by checklist
|
|
153
|
-
const resultsByChecklist = new Map();
|
|
154
|
-
for (const result of checklistItemResults) {
|
|
155
|
-
const checklistId = itemToChecklistMap.get(result.checklist_item_id);
|
|
156
|
-
if (!checklistId) {
|
|
157
|
-
const errorMsg = `Could not find checklist for item ${result.checklist_item_id}`;
|
|
158
|
-
errors.push(errorMsg);
|
|
159
|
-
if (verbose) {
|
|
160
|
-
logError(errorMsg);
|
|
161
|
-
}
|
|
162
|
-
continue;
|
|
163
|
-
}
|
|
164
|
-
if (!resultsByChecklist.has(checklistId)) {
|
|
165
|
-
resultsByChecklist.set(checklistId, []);
|
|
166
|
-
}
|
|
167
|
-
const items = resultsByChecklist.get(checklistId);
|
|
168
|
-
items?.push({
|
|
169
|
-
checklist_item_id: result.checklist_item_id,
|
|
170
|
-
is_passed: result.is_passed,
|
|
171
|
-
value: result.value,
|
|
172
|
-
notes: result.notes,
|
|
173
|
-
});
|
|
174
|
-
}
|
|
175
|
-
// Create checklist results with item results for each checklist
|
|
176
|
-
for (const [checklistId, itemResults] of resultsByChecklist) {
|
|
177
|
-
try {
|
|
178
|
-
await createChecklistResult(options, checklistId, itemResults);
|
|
179
|
-
created += itemResults.length;
|
|
180
|
-
logInfo(`Created checklist result for ${checklistId} with ${itemResults.length} item results`);
|
|
181
|
-
logChecklistItemResults(itemResults, verbose);
|
|
182
|
-
}
|
|
183
|
-
catch (error) {
|
|
184
|
-
const errorMsg = `Failed to create checklist result for ${checklistId}: ${error instanceof Error ? error.message : String(error)}`;
|
|
185
|
-
errors.push(errorMsg);
|
|
186
|
-
if (verbose) {
|
|
187
|
-
logError(errorMsg);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
return { created, errors };
|
|
192
|
-
}
|
|
193
|
-
/**
|
|
194
|
-
* Process checklist results from phase JSON response and create MCP results
|
|
195
|
-
*/
|
|
196
|
-
export async function processChecklistResultsFromResponse(options, checklistResults, verbose) {
|
|
197
|
-
const errors = [];
|
|
198
|
-
let created = 0;
|
|
199
|
-
if (!checklistResults || checklistResults.length === 0) {
|
|
200
|
-
if (verbose) {
|
|
201
|
-
logDebug('No checklist results to process', verbose);
|
|
202
|
-
}
|
|
203
|
-
return { created, errors };
|
|
204
|
-
}
|
|
205
|
-
for (const result of checklistResults) {
|
|
206
|
-
if (!result.satisfied) {
|
|
207
|
-
// For unsatisfied checklists, log and continue
|
|
208
|
-
logWarning(`Checklist ${result.checklist_id} marked as NOT satisfied`);
|
|
209
|
-
if (result.notes) {
|
|
210
|
-
logDebug(` Reason: ${result.notes}`, verbose);
|
|
211
|
-
}
|
|
212
|
-
continue;
|
|
213
|
-
}
|
|
214
|
-
try {
|
|
215
|
-
await createChecklistResult(options, result.checklist_id);
|
|
216
|
-
created++;
|
|
217
|
-
logSuccess(`Created checklist result for: ${result.checklist_id}`);
|
|
218
|
-
if (result.notes) {
|
|
219
|
-
logDebug(` Notes: ${result.notes}`, verbose);
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
catch (error) {
|
|
223
|
-
const errorMsg = `Failed to create checklist result for ${result.checklist_id}: ${error instanceof Error ? error.message : String(error)}`;
|
|
224
|
-
errors.push(errorMsg);
|
|
225
|
-
if (verbose) {
|
|
226
|
-
logError(errorMsg);
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
return { created, errors };
|
|
231
|
-
}
|
|
232
|
-
/**
|
|
233
|
-
* Format checklist context as string for LLM consumption
|
|
234
|
-
*/
|
|
235
|
-
export function formatChecklistsForContext(context) {
|
|
236
|
-
if (!context.checklists || context.checklists.length === 0) {
|
|
237
|
-
return `No checklists defined for phase: ${context.phase}`;
|
|
238
|
-
}
|
|
239
|
-
const sections = context.checklists
|
|
240
|
-
.map((checklist) => {
|
|
241
|
-
const itemsText = checklist.items
|
|
242
|
-
.map((item) => ` - **${item.title}** (ID: ${item.id})${item.is_required ? ' (required)' : ''}: ${item.description || 'No description'}`)
|
|
243
|
-
.join('\n');
|
|
244
|
-
const phasesLabel = checklist.phases?.length > 0
|
|
245
|
-
? ` [Phases: ${checklist.phases.join(', ')}]`
|
|
246
|
-
: '';
|
|
247
|
-
return `**${checklist.name}** (${checklist.role})${phasesLabel}
|
|
248
|
-
ID: ${checklist.id}
|
|
249
|
-
${checklist.description || 'No description'}
|
|
250
|
-
Items:
|
|
251
|
-
${itemsText}`;
|
|
252
|
-
})
|
|
253
|
-
.join('\n\n');
|
|
254
|
-
return `# Checklists for ${context.phase} phase
|
|
255
|
-
|
|
256
|
-
${sections}
|
|
257
|
-
|
|
258
|
-
Please review these checklists and ensure your work addresses the relevant requirements for your role. These checklists will be used to validate the completion of this phase.`;
|
|
259
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Coaching Agent
|
|
3
|
-
* Analyzes the execution agent's self-rating and produces improvement suggestions.
|
|
4
|
-
* Decides whether the execution agent should continue optimizing or move on.
|
|
5
|
-
*/
|
|
6
|
-
import { type PhaseRating, type RatablePhase } from '../phase-ratings.js';
|
|
7
|
-
/** Coaching agent's decision */
|
|
8
|
-
export interface CoachingDecision {
|
|
9
|
-
/** Whether the execution agent should continue optimizing */
|
|
10
|
-
shouldContinue: boolean;
|
|
11
|
-
/** Specific, actionable improvement suggestions */
|
|
12
|
-
suggestions: string[];
|
|
13
|
-
/** Reasoning for the decision */
|
|
14
|
-
reasoning: string;
|
|
15
|
-
/** Priority areas to focus on (criteria names) */
|
|
16
|
-
focusAreas: string[];
|
|
17
|
-
}
|
|
18
|
-
export interface RunCoachingAgentParams {
|
|
19
|
-
phase: RatablePhase;
|
|
20
|
-
currentRating: PhaseRating;
|
|
21
|
-
previousRatings: PhaseRating[];
|
|
22
|
-
iteration: number;
|
|
23
|
-
sessionId?: string;
|
|
24
|
-
verbose?: boolean;
|
|
25
|
-
}
|
|
26
|
-
export interface CoachingAgentResult {
|
|
27
|
-
decision: CoachingDecision;
|
|
28
|
-
sessionId: string;
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Run the coaching agent to analyze a self-rating and produce a decision.
|
|
32
|
-
* Maintains its own session for context continuity across iterations.
|
|
33
|
-
*/
|
|
34
|
-
export declare function runCoachingAgent(params: RunCoachingAgentParams): Promise<CoachingAgentResult | null>;
|
|
35
|
-
/**
|
|
36
|
-
* Build the improvement prompt that will be sent to the execution agent,
|
|
37
|
-
* based on the coaching agent's suggestions.
|
|
38
|
-
*/
|
|
39
|
-
export declare function buildImprovementPrompt(decision: CoachingDecision, rating: PhaseRating, phase?: RatablePhase): string;
|
|
@@ -1,308 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Coaching Agent
|
|
3
|
-
* Analyzes the execution agent's self-rating and produces improvement suggestions.
|
|
4
|
-
* Decides whether the execution agent should continue optimizing or move on.
|
|
5
|
-
*/
|
|
6
|
-
import { query } from '@anthropic-ai/claude-agent-sdk';
|
|
7
|
-
import { DEFAULT_MODEL } from '../../constants.js';
|
|
8
|
-
import { logDebug, logError, logInfo } from '../../utils/logger.js';
|
|
9
|
-
/**
|
|
10
|
-
* Extract text content from assistant message content array
|
|
11
|
-
*/
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
|
-
function extractTextContent(content) {
|
|
14
|
-
let text = '';
|
|
15
|
-
for (const item of content) {
|
|
16
|
-
if (item.type === 'text') {
|
|
17
|
-
text += item.text;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return text;
|
|
21
|
-
}
|
|
22
|
-
/** JSON output format templates per phase category.
|
|
23
|
-
*
|
|
24
|
-
* For issue_analysis the contract is two blocks (sentinel-delimited
|
|
25
|
-
* markdown plan + a small JSON metadata block). The coaching agent
|
|
26
|
-
* re-emits the same form so the parseAnalysisResult downstream can
|
|
27
|
-
* pick up the improved plan without reformatting.
|
|
28
|
-
*/
|
|
29
|
-
const PHASE_JSON_TEMPLATES = {
|
|
30
|
-
issue_analysis: `<<<EXECUTION_PLAN>>>
|
|
31
|
-
# Execution Plan
|
|
32
|
-
|
|
33
|
-
## Issue type
|
|
34
|
-
<bug | feature | refactor | infra | spike | docs | hybrid>
|
|
35
|
-
|
|
36
|
-
## Summary
|
|
37
|
-
<2-3 sentences>
|
|
38
|
-
|
|
39
|
-
## Artifacts (in execution order)
|
|
40
|
-
|
|
41
|
-
### 1. <artifact-name>
|
|
42
|
-
**Why**: <why this issue needs this artifact>
|
|
43
|
-
**Success criteria**: <concrete, issue-specific>
|
|
44
|
-
**Depends on**: <none | previous artifact name>
|
|
45
|
-
|
|
46
|
-
## Risks / open questions
|
|
47
|
-
- <thing a human should resolve>
|
|
48
|
-
<<<END_EXECUTION_PLAN>>>
|
|
49
|
-
|
|
50
|
-
\`\`\`json
|
|
51
|
-
{
|
|
52
|
-
"analysis": {
|
|
53
|
-
"status": "success",
|
|
54
|
-
"summary": "..."
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
\`\`\``,
|
|
58
|
-
user_stories_analysis: `\`\`\`json
|
|
59
|
-
{
|
|
60
|
-
"analysis": {
|
|
61
|
-
"created_user_stories": [{ "title": "...", "description": "..." }],
|
|
62
|
-
"summary": "..."
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
\`\`\``,
|
|
66
|
-
test_cases_analysis: `\`\`\`json
|
|
67
|
-
{
|
|
68
|
-
"analysis": {
|
|
69
|
-
"created_test_cases": [{ "name": "...", "description": "...", "is_critical": true/false }],
|
|
70
|
-
"summary": "..."
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
\`\`\``,
|
|
74
|
-
technical_design: `\`\`\`json
|
|
75
|
-
{
|
|
76
|
-
"technical_design_result": {
|
|
77
|
-
"issue_id": "...",
|
|
78
|
-
"status": "success",
|
|
79
|
-
"summary": "...",
|
|
80
|
-
"technical_design": "The COMPLETE improved technical design in markdown"
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
\`\`\``,
|
|
84
|
-
};
|
|
85
|
-
/** Build the coaching agent's system prompt */
|
|
86
|
-
function buildCoachingSystemPrompt() {
|
|
87
|
-
return `You are a senior AI quality coach. Your job is to analyze an execution agent's self-rating and decide whether its output needs further improvement.
|
|
88
|
-
|
|
89
|
-
Your goal is perfection — the target is 100/100 on all criteria.
|
|
90
|
-
|
|
91
|
-
Rules:
|
|
92
|
-
1. Be specific and actionable. Vague advice like "improve quality" is useless.
|
|
93
|
-
2. Focus on the weakest criteria first — that's where the biggest gains are.
|
|
94
|
-
3. If the agent scored itself too generously, call it out.
|
|
95
|
-
4. Only recommend stopping when further optimization has diminishing returns — e.g., all criteria are 90+ and weaknesses are minor.
|
|
96
|
-
5. Your suggestions must be concrete enough that the execution agent can act on them immediately.
|
|
97
|
-
|
|
98
|
-
Respond with ONLY a JSON block.`;
|
|
99
|
-
}
|
|
100
|
-
/** Build the coaching analysis prompt */
|
|
101
|
-
function buildCoachingPrompt(phase, rating, iteration, previousRatings) {
|
|
102
|
-
let prompt = `## Phase: ${phase} (iteration ${iteration})
|
|
103
|
-
|
|
104
|
-
## Current Self-Rating
|
|
105
|
-
- **Overall Score**: ${rating.score}/100
|
|
106
|
-
- **Summary**: ${rating.summary}
|
|
107
|
-
|
|
108
|
-
### Criteria Scores:
|
|
109
|
-
${Object.entries(rating.criteria_scores)
|
|
110
|
-
.map(([k, v]) => `- ${k}: ${v.score}/100 — ${v.reason}`)
|
|
111
|
-
.join('\n')}
|
|
112
|
-
|
|
113
|
-
### Strengths:
|
|
114
|
-
${rating.strengths.map((s) => `- ${s}`).join('\n')}
|
|
115
|
-
|
|
116
|
-
### Weaknesses:
|
|
117
|
-
${rating.weaknesses.map((w) => `- ${w}`).join('\n')}`;
|
|
118
|
-
// Show improvement trend if we have previous ratings
|
|
119
|
-
if (previousRatings.length > 0) {
|
|
120
|
-
prompt += `\n\n## Improvement History`;
|
|
121
|
-
for (let i = 0; i < previousRatings.length; i++) {
|
|
122
|
-
const prev = previousRatings[i];
|
|
123
|
-
prompt += `\n- Iteration ${i + 1}: ${prev.score}/100`;
|
|
124
|
-
}
|
|
125
|
-
prompt += `\n- Iteration ${iteration} (current): ${rating.score}/100`;
|
|
126
|
-
// Detect stagnation
|
|
127
|
-
if (previousRatings.length >= 2) {
|
|
128
|
-
const last = previousRatings[previousRatings.length - 1];
|
|
129
|
-
const secondLast = previousRatings[previousRatings.length - 2];
|
|
130
|
-
if (Math.abs(rating.score - last.score) <= 2 &&
|
|
131
|
-
Math.abs(last.score - secondLast.score) <= 2) {
|
|
132
|
-
prompt += `\n\n⚠️ Score has been flat for 3 iterations. Consider whether the remaining gaps are addressable.`;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
prompt += `\n\nAnalyze the rating and decide: should the agent continue optimizing, or is this good enough?
|
|
137
|
-
|
|
138
|
-
\`\`\`json
|
|
139
|
-
{
|
|
140
|
-
"coaching_decision": {
|
|
141
|
-
"should_continue": <true/false>,
|
|
142
|
-
"reasoning": "<why continue or stop>",
|
|
143
|
-
"focus_areas": ["<criteria to improve>"],
|
|
144
|
-
"suggestions": [
|
|
145
|
-
"<specific actionable suggestion 1>",
|
|
146
|
-
"<specific actionable suggestion 2>"
|
|
147
|
-
]
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
\`\`\``;
|
|
151
|
-
return prompt;
|
|
152
|
-
}
|
|
153
|
-
/** Parse the coaching agent's response */
|
|
154
|
-
function parseCoachingDecision(response, verbose) {
|
|
155
|
-
try {
|
|
156
|
-
const jsonMatch = response.match(/```json\s*\n([\s\S]*?)\n\s*```/);
|
|
157
|
-
const jsonStr = jsonMatch ? jsonMatch[1] : response;
|
|
158
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
159
|
-
let parsed;
|
|
160
|
-
try {
|
|
161
|
-
parsed = JSON.parse(jsonStr);
|
|
162
|
-
}
|
|
163
|
-
catch {
|
|
164
|
-
const decisionMatch = jsonStr.match(/\{[\s\S]*"coaching_decision"[\s\S]*\}/);
|
|
165
|
-
if (decisionMatch) {
|
|
166
|
-
parsed = JSON.parse(decisionMatch[0]);
|
|
167
|
-
}
|
|
168
|
-
else {
|
|
169
|
-
throw new Error('No coaching_decision JSON found');
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
const decision = parsed.coaching_decision || parsed;
|
|
173
|
-
return {
|
|
174
|
-
shouldContinue: Boolean(decision.should_continue),
|
|
175
|
-
reasoning: String(decision.reasoning || ''),
|
|
176
|
-
focusAreas: Array.isArray(decision.focus_areas)
|
|
177
|
-
? decision.focus_areas.map(String)
|
|
178
|
-
: [],
|
|
179
|
-
suggestions: Array.isArray(decision.suggestions)
|
|
180
|
-
? decision.suggestions.map(String)
|
|
181
|
-
: [],
|
|
182
|
-
};
|
|
183
|
-
}
|
|
184
|
-
catch (error) {
|
|
185
|
-
logError(`Failed to parse coaching decision: ${error instanceof Error ? error.message : String(error)}`);
|
|
186
|
-
if (verbose) {
|
|
187
|
-
logDebug(`Raw response: ${response.substring(0, 500)}`, verbose);
|
|
188
|
-
}
|
|
189
|
-
return null;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Run the coaching agent to analyze a self-rating and produce a decision.
|
|
194
|
-
* Maintains its own session for context continuity across iterations.
|
|
195
|
-
*/
|
|
196
|
-
// eslint-disable-next-line complexity -- agent loop with session management and message processing
|
|
197
|
-
export async function runCoachingAgent(params) {
|
|
198
|
-
const { phase, currentRating, previousRatings, iteration, verbose } = params;
|
|
199
|
-
const coachingPrompt = buildCoachingPrompt(phase, currentRating, iteration, previousRatings);
|
|
200
|
-
if (verbose) {
|
|
201
|
-
logInfo(`🎯 Coaching agent analyzing iteration ${iteration} (score: ${currentRating.score}/100)...`);
|
|
202
|
-
}
|
|
203
|
-
let resultText = '';
|
|
204
|
-
let sessionId = params.sessionId || '';
|
|
205
|
-
try {
|
|
206
|
-
for await (const message of query({
|
|
207
|
-
prompt: coachingPrompt,
|
|
208
|
-
options: {
|
|
209
|
-
systemPrompt: buildCoachingSystemPrompt(),
|
|
210
|
-
model: DEFAULT_MODEL,
|
|
211
|
-
maxTurns: 1000,
|
|
212
|
-
permissionMode: 'bypassPermissions',
|
|
213
|
-
...(params.sessionId ? { resume: params.sessionId } : {}),
|
|
214
|
-
},
|
|
215
|
-
})) {
|
|
216
|
-
if (message.type === 'assistant') {
|
|
217
|
-
resultText += extractTextContent(message.message?.content ?? []);
|
|
218
|
-
continue;
|
|
219
|
-
}
|
|
220
|
-
if (message.type === 'result') {
|
|
221
|
-
sessionId = message.session_id || sessionId;
|
|
222
|
-
if (message.subtype === 'success' && message.result) {
|
|
223
|
-
resultText = message.result;
|
|
224
|
-
}
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
let decision = parseCoachingDecision(resultText, verbose);
|
|
228
|
-
if (!decision) {
|
|
229
|
-
// Retry once: resume session and ask for valid JSON
|
|
230
|
-
if (verbose) {
|
|
231
|
-
logInfo('🔄 Coaching agent returned invalid JSON. Retrying...');
|
|
232
|
-
}
|
|
233
|
-
let retryText = '';
|
|
234
|
-
for await (const message of query({
|
|
235
|
-
prompt: 'Your previous response was not valid JSON. Please respond with ONLY the JSON block in the exact format requested.',
|
|
236
|
-
options: {
|
|
237
|
-
resume: sessionId,
|
|
238
|
-
model: DEFAULT_MODEL,
|
|
239
|
-
maxTurns: 1000,
|
|
240
|
-
permissionMode: 'bypassPermissions',
|
|
241
|
-
},
|
|
242
|
-
})) {
|
|
243
|
-
if (message.type === 'assistant') {
|
|
244
|
-
retryText += extractTextContent(message.message?.content ?? []);
|
|
245
|
-
continue;
|
|
246
|
-
}
|
|
247
|
-
if (message.type !== 'result') {
|
|
248
|
-
continue;
|
|
249
|
-
}
|
|
250
|
-
sessionId = message.session_id || sessionId;
|
|
251
|
-
if (message.subtype === 'success' && message.result) {
|
|
252
|
-
retryText = message.result;
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
decision = parseCoachingDecision(retryText, verbose);
|
|
256
|
-
if (!decision) {
|
|
257
|
-
logError('Coaching agent failed to produce a valid decision after retry');
|
|
258
|
-
return null;
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
if (verbose) {
|
|
262
|
-
logInfo(`🎯 Coaching decision: ${decision.shouldContinue ? '🔄 Continue optimizing' : '✅ Good enough'}`);
|
|
263
|
-
logInfo(` Reasoning: ${decision.reasoning}`);
|
|
264
|
-
if (decision.focusAreas.length > 0) {
|
|
265
|
-
logInfo(` Focus areas: ${decision.focusAreas.join(', ')}`);
|
|
266
|
-
}
|
|
267
|
-
if (decision.suggestions.length > 0) {
|
|
268
|
-
decision.suggestions.forEach((s, i) => logInfo(` ${i + 1}. ${s}`));
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
return { decision, sessionId };
|
|
272
|
-
}
|
|
273
|
-
catch (error) {
|
|
274
|
-
logError(`Coaching agent failed: ${error instanceof Error ? error.message : String(error)}`);
|
|
275
|
-
return null;
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* Build the improvement prompt that will be sent to the execution agent,
|
|
280
|
-
* based on the coaching agent's suggestions.
|
|
281
|
-
*/
|
|
282
|
-
export function buildImprovementPrompt(decision, rating, phase) {
|
|
283
|
-
const jsonTemplate = phase ? PHASE_JSON_TEMPLATES[phase] : null;
|
|
284
|
-
let prompt = `Your previous output scored ${rating.score}/100. The target is 100/100.
|
|
285
|
-
|
|
286
|
-
## Coaching Feedback
|
|
287
|
-
|
|
288
|
-
${decision.reasoning}
|
|
289
|
-
|
|
290
|
-
## Priority Focus Areas
|
|
291
|
-
${decision.focusAreas.map((a) => `- **${a}**: score was ${rating.criteria_scores[a]?.score ?? '?'}/100`).join('\n')}
|
|
292
|
-
|
|
293
|
-
## Specific Improvements Required
|
|
294
|
-
${decision.suggestions.map((s, i) => `${i + 1}. ${s}`).join('\n')}
|
|
295
|
-
|
|
296
|
-
## Your Weaknesses to Address
|
|
297
|
-
${rating.weaknesses.map((w) => `- ${w}`).join('\n')}
|
|
298
|
-
|
|
299
|
-
Now improve your output based on this feedback. Focus on the priority areas and address every suggestion above. Do not just make superficial changes — aim for substantive quality improvement.`;
|
|
300
|
-
if (jsonTemplate) {
|
|
301
|
-
prompt += `
|
|
302
|
-
|
|
303
|
-
**CRITICAL**: Output your complete improved result in this exact JSON format:
|
|
304
|
-
|
|
305
|
-
${jsonTemplate}`;
|
|
306
|
-
}
|
|
307
|
-
return prompt;
|
|
308
|
-
}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Coaching Loop Orchestrator
|
|
3
|
-
* Orchestrates the execute → self-rate → coach → improve cycle.
|
|
4
|
-
* The loop runs until the coaching agent decides to stop.
|
|
5
|
-
* Stagnation safety: exits if score doesn't improve by MIN_IMPROVEMENT
|
|
6
|
-
* over STAGNATION_WINDOW consecutive iterations.
|
|
7
|
-
*/
|
|
8
|
-
import { type PhaseRating, type RatablePhase } from '../phase-ratings.js';
|
|
9
|
-
import { type CoachingDecision } from './coaching-agent.js';
|
|
10
|
-
import { type SelfRatingChecklistItem } from './self-rating.js';
|
|
11
|
-
/**
|
|
12
|
-
* Callback to persist the execution agent's improved output.
|
|
13
|
-
* Each phase provides its own implementation (e.g. save design to DB).
|
|
14
|
-
*
|
|
15
|
-
* @param executionSessionId - the agent's session ID
|
|
16
|
-
* @param responseText - the agent's full response text containing the improved output
|
|
17
|
-
*/
|
|
18
|
-
export type OnImprovedCallback = (executionSessionId: string, responseText: string) => Promise<void>;
|
|
19
|
-
/** Options for the coaching loop */
|
|
20
|
-
export interface CoachingLoopOptions {
|
|
21
|
-
issueId: string;
|
|
22
|
-
phase: RatablePhase;
|
|
23
|
-
/** The initial execution session ID (from the first phase execution) */
|
|
24
|
-
executionSessionId: string;
|
|
25
|
-
/** Callback to persist improved output after each coaching iteration */
|
|
26
|
-
onImproved?: OnImprovedCallback;
|
|
27
|
-
/** Checklist items for self-rating context (so agent rates against actual quality gates) */
|
|
28
|
-
checklistItems?: SelfRatingChecklistItem[];
|
|
29
|
-
verbose?: boolean;
|
|
30
|
-
}
|
|
31
|
-
/** Result of the coaching loop */
|
|
32
|
-
export interface CoachingLoopResult {
|
|
33
|
-
/** Final score after all coaching iterations */
|
|
34
|
-
finalScore: number;
|
|
35
|
-
/** Total coaching iterations performed */
|
|
36
|
-
iterations: number;
|
|
37
|
-
/** All ratings from each iteration */
|
|
38
|
-
ratings: PhaseRating[];
|
|
39
|
-
/** The execution agent's session ID (for verification to reference) */
|
|
40
|
-
executionSessionId: string;
|
|
41
|
-
/** The coaching agent's session ID */
|
|
42
|
-
coachingSessionId: string | null;
|
|
43
|
-
/** Final coaching decision */
|
|
44
|
-
finalDecision: CoachingDecision | null;
|
|
45
|
-
/** Why the loop exited */
|
|
46
|
-
exitReason: 'coaching_satisfied' | 'stagnation' | 'max_iterations' | 'self_rating_failed' | 'coaching_failed' | 'improvement_failed';
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Detect stagnation: score hasn't improved by MIN_IMPROVEMENT
|
|
50
|
-
* over the last STAGNATION_WINDOW iterations.
|
|
51
|
-
*/
|
|
52
|
-
export declare function isStagnant(ratings: PhaseRating[]): boolean;
|
|
53
|
-
/**
|
|
54
|
-
* Run the coaching loop:
|
|
55
|
-
* 1. Ask execution agent to self-rate (resume session)
|
|
56
|
-
* 2. Write rating to DB
|
|
57
|
-
* 3. Check stagnation — force exit if score is flat
|
|
58
|
-
* 4. Coaching agent analyzes → decide continue or stop
|
|
59
|
-
* 5. If continue: send improvement prompt to execution agent, call onImproved → go to 1
|
|
60
|
-
* 6. If stop: return result
|
|
61
|
-
*/
|
|
62
|
-
export declare function runCoachingLoop(options: CoachingLoopOptions): Promise<CoachingLoopResult>;
|