edsger 0.76.0 → 0.78.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 +1339 -1218
- 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/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 -40
- package/dist/commands/quality-benchmark/index.js +0 -219
- 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/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 -261
- package/dist/phases/find-architecture/prompts.d.ts +0 -31
- package/dist/phases/find-architecture/prompts.js +0 -128
- 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 -236
- 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/git.d.ts +0 -24
- package/dist/phases/find-shared/git.js +0 -60
- package/dist/phases/find-shared/mcp.d.ts +0 -48
- package/dist/phases/find-shared/mcp.js +0 -125
- 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-smells/index.d.ts +0 -50
- package/dist/phases/find-smells/index.js +0 -298
- package/dist/phases/find-smells/prompts.d.ts +0 -30
- package/dist/phases/find-smells/prompts.js +0 -129
- 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/index.d.ts +0 -65
- package/dist/phases/quality-benchmark/index.js +0 -194
- 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 -22
- package/dist/phases/quality-benchmark/parsers.js +0 -1101
- 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 -1174
- package/dist/phases/quality-benchmark/tool-catalog.d.ts +0 -33
- package/dist/phases/quality-benchmark/tool-catalog.js +0 -636
- 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 -312
- 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
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
id: base
|
|
2
|
+
name: Universal Engineering Baseline
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: null
|
|
6
|
+
appliesTo: ["*"]
|
|
7
|
+
# Each criterion is scored 0..4. 0 = absent/harmful, 4 = exemplary.
|
|
8
|
+
scoreScale: 4
|
|
9
|
+
|
|
10
|
+
categories:
|
|
11
|
+
# ----------------------------------------------------------------------------
|
|
12
|
+
- id: security
|
|
13
|
+
name: Security
|
|
14
|
+
weight: 22
|
|
15
|
+
description: >
|
|
16
|
+
Protecting the software, its data, and its users from misuse. Weighted
|
|
17
|
+
highest because security defects are the most expensive class of failure.
|
|
18
|
+
criteria:
|
|
19
|
+
- id: no-hardcoded-secrets
|
|
20
|
+
title: No secrets committed to the repository
|
|
21
|
+
weight: 2
|
|
22
|
+
guidance: >
|
|
23
|
+
Search source, config, CI files, and history-adjacent files for API
|
|
24
|
+
keys, passwords, tokens, private keys, and connection strings. Verify
|
|
25
|
+
secrets are sourced from environment variables or a secret manager and
|
|
26
|
+
that a .gitignore / secret-scanning setup exists.
|
|
27
|
+
rubric:
|
|
28
|
+
excellent: No secrets present; .env is gitignored; secret scanning (e.g. gitleaks/trufflehog or platform scanning) is configured.
|
|
29
|
+
good: No secrets present and .env files are ignored.
|
|
30
|
+
adequate: No obvious secrets, but no preventative tooling.
|
|
31
|
+
poor: Hardcoded credentials or private keys are present.
|
|
32
|
+
references:
|
|
33
|
+
- "OWASP ASVS V2 (Authentication) & V6 (Stored Cryptography)"
|
|
34
|
+
- "https://owasp.org/www-project-top-ten/"
|
|
35
|
+
- id: input-validation
|
|
36
|
+
title: Untrusted input is validated and output is encoded
|
|
37
|
+
guidance: >
|
|
38
|
+
Check that data crossing trust boundaries (HTTP params, CLI args, file
|
|
39
|
+
contents, message payloads) is validated, and that queries use
|
|
40
|
+
parameterisation and output is contextually encoded to prevent
|
|
41
|
+
injection (SQLi, command injection, XSS, path traversal).
|
|
42
|
+
rubric:
|
|
43
|
+
excellent: Centralised validation/escaping; parameterised queries everywhere; no string-built shell/SQL.
|
|
44
|
+
adequate: Validation present in most entry points but inconsistent.
|
|
45
|
+
poor: Raw concatenation of untrusted input into queries, shells, or markup.
|
|
46
|
+
references:
|
|
47
|
+
- "OWASP Top 10 A03:2021 Injection"
|
|
48
|
+
- id: dependency-security
|
|
49
|
+
title: Dependencies are tracked, pinned, and scanned for vulnerabilities
|
|
50
|
+
guidance: >
|
|
51
|
+
Confirm a lockfile exists, that there is automated vulnerability
|
|
52
|
+
scanning (Dependabot/Renovate/audit in CI), and that known-vulnerable
|
|
53
|
+
or unmaintained dependencies are not in use.
|
|
54
|
+
rubric:
|
|
55
|
+
excellent: Lockfile committed; automated update + audit in CI; no known high/critical advisories.
|
|
56
|
+
adequate: Lockfile present but no automated scanning.
|
|
57
|
+
poor: No lockfile, or known critical advisories left unaddressed.
|
|
58
|
+
references:
|
|
59
|
+
- "OWASP Top 10 A06:2021 Vulnerable and Outdated Components"
|
|
60
|
+
- "https://slsa.dev/"
|
|
61
|
+
- id: authz-and-secrets-handling
|
|
62
|
+
title: Sound authn/authz and least-privilege handling of credentials
|
|
63
|
+
guidance: >
|
|
64
|
+
Where the project authenticates users or services, check for sound
|
|
65
|
+
session/token handling, authorization checks on every privileged
|
|
66
|
+
action, and least-privilege scopes for tokens and service accounts.
|
|
67
|
+
For libraries/CLIs, check that credentials are not logged.
|
|
68
|
+
rubric:
|
|
69
|
+
excellent: Centralised authz checks; least-privilege tokens; no credential logging.
|
|
70
|
+
adequate: Authz present but ad hoc; some over-broad scopes.
|
|
71
|
+
poor: Missing authorization checks or credentials written to logs.
|
|
72
|
+
references:
|
|
73
|
+
- "OWASP Top 10 A01:2021 Broken Access Control"
|
|
74
|
+
|
|
75
|
+
# ----------------------------------------------------------------------------
|
|
76
|
+
- id: maintainability
|
|
77
|
+
name: Maintainability & Code Quality
|
|
78
|
+
weight: 20
|
|
79
|
+
description: How easily the code can be understood, changed, and extended.
|
|
80
|
+
criteria:
|
|
81
|
+
- id: structure-and-modularity
|
|
82
|
+
title: Clear structure with cohesive, loosely-coupled modules
|
|
83
|
+
guidance: >
|
|
84
|
+
Assess directory layout, separation of concerns, and whether modules
|
|
85
|
+
have a single clear responsibility. Look for god files, circular
|
|
86
|
+
dependencies, and leaky abstractions.
|
|
87
|
+
rubric:
|
|
88
|
+
excellent: Intuitive layout; small cohesive modules; dependencies flow one direction.
|
|
89
|
+
adequate: Generally reasonable structure with some large or tangled areas.
|
|
90
|
+
poor: Monolithic files, tangled dependencies, no discernible architecture.
|
|
91
|
+
- id: readability-and-naming
|
|
92
|
+
title: Readable code with meaningful names and consistent style
|
|
93
|
+
guidance: >
|
|
94
|
+
Check naming, function length, nesting depth, and the presence of an
|
|
95
|
+
enforced formatter/linter so style is consistent rather than debated.
|
|
96
|
+
rubric:
|
|
97
|
+
excellent: Self-documenting names; small functions; auto-formatted and linted.
|
|
98
|
+
adequate: Mostly readable; style enforced loosely or not at all.
|
|
99
|
+
poor: Cryptic names, very long functions, inconsistent style.
|
|
100
|
+
references:
|
|
101
|
+
- "https://google.github.io/styleguide/"
|
|
102
|
+
- id: error-handling
|
|
103
|
+
title: Robust, intentional error handling
|
|
104
|
+
guidance: >
|
|
105
|
+
Verify errors are handled at the right layer, not swallowed; that
|
|
106
|
+
failures produce actionable messages; and that resources are released
|
|
107
|
+
on error paths.
|
|
108
|
+
rubric:
|
|
109
|
+
excellent: Errors are typed/categorised, surfaced with context, never silently swallowed.
|
|
110
|
+
adequate: Errors handled but messages are thin or inconsistent.
|
|
111
|
+
poor: Empty catch blocks, ignored return codes, crashes without context.
|
|
112
|
+
- id: complexity-and-duplication
|
|
113
|
+
title: Low duplication and managed complexity
|
|
114
|
+
guidance: >
|
|
115
|
+
Look for copy-pasted logic, deeply nested conditionals, and functions
|
|
116
|
+
doing too much. Reasonable use of abstractions to remove duplication
|
|
117
|
+
without over-engineering.
|
|
118
|
+
rubric:
|
|
119
|
+
excellent: DRY without premature abstraction; complex logic isolated and documented.
|
|
120
|
+
adequate: Some duplication or hotspots of complexity.
|
|
121
|
+
poor: Pervasive copy-paste and unmanaged complexity.
|
|
122
|
+
|
|
123
|
+
# ----------------------------------------------------------------------------
|
|
124
|
+
- id: testing
|
|
125
|
+
name: Testing & Verification
|
|
126
|
+
weight: 18
|
|
127
|
+
description: Confidence that the software works and stays working.
|
|
128
|
+
criteria:
|
|
129
|
+
- id: test-presence-and-coverage
|
|
130
|
+
title: Meaningful automated tests covering core logic
|
|
131
|
+
guidance: >
|
|
132
|
+
Determine whether a test suite exists, whether it covers the important
|
|
133
|
+
behaviour (not just trivial getters), and roughly how much of the code
|
|
134
|
+
base is exercised. Prefer evidence (coverage config/reports) over
|
|
135
|
+
guessing.
|
|
136
|
+
rubric:
|
|
137
|
+
excellent: Comprehensive tests on critical paths; coverage measured and reported.
|
|
138
|
+
good: Solid coverage of core logic.
|
|
139
|
+
adequate: Some tests but major paths untested.
|
|
140
|
+
poor: No automated tests.
|
|
141
|
+
- id: test-quality
|
|
142
|
+
title: Tests are deterministic, isolated, and assert behaviour
|
|
143
|
+
guidance: >
|
|
144
|
+
Check for flaky patterns (real network/time/sleep dependence), shared
|
|
145
|
+
mutable state between tests, and assertions that actually verify
|
|
146
|
+
behaviour rather than just executing code.
|
|
147
|
+
rubric:
|
|
148
|
+
excellent: Fast, deterministic, isolated tests with clear assertions.
|
|
149
|
+
adequate: Tests work but are slow, order-dependent, or shallow.
|
|
150
|
+
poor: Flaky, networked, or assertion-free tests.
|
|
151
|
+
- id: tests-run-in-ci
|
|
152
|
+
title: Tests and checks run automatically on every change
|
|
153
|
+
guidance: >
|
|
154
|
+
Confirm CI executes the test suite (and linters/type checks) on pull
|
|
155
|
+
requests, and that a green pipeline is required.
|
|
156
|
+
rubric:
|
|
157
|
+
excellent: CI runs tests + static checks on every PR and is required to merge.
|
|
158
|
+
adequate: CI exists but is partial or not enforced.
|
|
159
|
+
poor: No CI, or tests not run automatically.
|
|
160
|
+
|
|
161
|
+
# ----------------------------------------------------------------------------
|
|
162
|
+
- id: documentation
|
|
163
|
+
name: Documentation & Onboarding
|
|
164
|
+
weight: 12
|
|
165
|
+
description: How quickly a newcomer can understand, run, and contribute.
|
|
166
|
+
criteria:
|
|
167
|
+
- id: readme-quality
|
|
168
|
+
title: README explains what, why, install, and usage
|
|
169
|
+
guidance: >
|
|
170
|
+
A good README states the purpose, prerequisites, install steps, a
|
|
171
|
+
minimal usage example, and where to go next. It should let a newcomer
|
|
172
|
+
run the project in minutes.
|
|
173
|
+
rubric:
|
|
174
|
+
excellent: Purpose, install, runnable examples, configuration, and links to deeper docs.
|
|
175
|
+
adequate: Basic README with install/usage but gaps.
|
|
176
|
+
poor: Empty or placeholder README.
|
|
177
|
+
references:
|
|
178
|
+
- "https://www.makeareadme.com/"
|
|
179
|
+
- id: api-and-code-docs
|
|
180
|
+
title: Public interfaces and non-obvious decisions are documented
|
|
181
|
+
guidance: >
|
|
182
|
+
Public APIs/exports carry doc comments; non-obvious decisions are
|
|
183
|
+
explained (in code comments or docs/ADRs). Comments explain "why",
|
|
184
|
+
not restate the code.
|
|
185
|
+
rubric:
|
|
186
|
+
excellent: Documented public API plus ADRs/design notes for key decisions.
|
|
187
|
+
adequate: Some doc comments; rationale often missing.
|
|
188
|
+
poor: No meaningful documentation of interfaces or decisions.
|
|
189
|
+
- id: contribution-guidance
|
|
190
|
+
title: Contribution, license, and governance basics are present
|
|
191
|
+
guidance: >
|
|
192
|
+
Look for LICENSE, CONTRIBUTING, a code of conduct where appropriate,
|
|
193
|
+
and clear instructions for the dev setup and how to propose changes.
|
|
194
|
+
rubric:
|
|
195
|
+
excellent: LICENSE + CONTRIBUTING + dev setup + change process documented.
|
|
196
|
+
adequate: LICENSE present; contribution guidance thin.
|
|
197
|
+
poor: No license or contribution guidance.
|
|
198
|
+
|
|
199
|
+
# ----------------------------------------------------------------------------
|
|
200
|
+
- id: delivery
|
|
201
|
+
name: Delivery & Operations
|
|
202
|
+
weight: 16
|
|
203
|
+
description: Reproducible builds, releases, configuration, and observability.
|
|
204
|
+
criteria:
|
|
205
|
+
- id: reproducible-build
|
|
206
|
+
title: Reproducible, automated build and dependency install
|
|
207
|
+
guidance: >
|
|
208
|
+
One documented command should install dependencies and build/run the
|
|
209
|
+
project. Pinned toolchain/runtime versions and committed lockfiles
|
|
210
|
+
support reproducibility.
|
|
211
|
+
rubric:
|
|
212
|
+
excellent: Single-command setup; pinned toolchain; reproducible from a clean clone.
|
|
213
|
+
adequate: Build works but requires undocumented manual steps.
|
|
214
|
+
poor: Build is broken, manual, or undocumented.
|
|
215
|
+
references:
|
|
216
|
+
- "https://12factor.net/"
|
|
217
|
+
- id: config-and-env
|
|
218
|
+
title: Configuration via environment, separated from code
|
|
219
|
+
guidance: >
|
|
220
|
+
Configuration (especially secrets and per-environment values) is read
|
|
221
|
+
from the environment or config files, not hardcoded, with sane
|
|
222
|
+
defaults and documentation of required variables.
|
|
223
|
+
rubric:
|
|
224
|
+
excellent: Clean config separation; documented env vars; safe defaults.
|
|
225
|
+
adequate: Mostly externalised config with gaps.
|
|
226
|
+
poor: Environment-specific values hardcoded in source.
|
|
227
|
+
references:
|
|
228
|
+
- "https://12factor.net/config"
|
|
229
|
+
- id: ci-cd-pipeline
|
|
230
|
+
title: Automated pipeline for build, test, and release
|
|
231
|
+
guidance: >
|
|
232
|
+
Beyond tests, check for an automated path to a release/artifact, and
|
|
233
|
+
that the pipeline fails the build on lint/type/test errors.
|
|
234
|
+
rubric:
|
|
235
|
+
excellent: CI/CD builds, tests, and publishes artifacts/releases automatically.
|
|
236
|
+
adequate: CI present; release is manual.
|
|
237
|
+
poor: No automation.
|
|
238
|
+
- id: observability
|
|
239
|
+
title: Logging and diagnosability appropriate to the project
|
|
240
|
+
guidance: >
|
|
241
|
+
For services: structured logs, error reporting, and health/metrics.
|
|
242
|
+
For libraries/CLIs: actionable error output and optional debug logging.
|
|
243
|
+
Avoid logging secrets or PII.
|
|
244
|
+
rubric:
|
|
245
|
+
excellent: Structured, levelled logging; no sensitive data; diagnosable failures.
|
|
246
|
+
adequate: Basic logging present.
|
|
247
|
+
poor: No logging, or noisy logs leaking sensitive data.
|
|
248
|
+
|
|
249
|
+
# ----------------------------------------------------------------------------
|
|
250
|
+
- id: vcs-hygiene
|
|
251
|
+
name: Version Control & Release Hygiene
|
|
252
|
+
weight: 12
|
|
253
|
+
description: Healthy history, change communication, and dependency upkeep.
|
|
254
|
+
criteria:
|
|
255
|
+
- id: commit-and-history
|
|
256
|
+
title: Clean, meaningful commit history and branching
|
|
257
|
+
guidance: >
|
|
258
|
+
Look for descriptive commits (ideally Conventional Commits), absence
|
|
259
|
+
of committed build artifacts/large binaries, and a sensible .gitignore.
|
|
260
|
+
rubric:
|
|
261
|
+
excellent: Descriptive, scoped commits; clean tree; no generated artifacts committed.
|
|
262
|
+
adequate: Reasonable history with some noise.
|
|
263
|
+
poor: Uninformative commits ("fix", "wip") and committed build output.
|
|
264
|
+
references:
|
|
265
|
+
- "https://www.conventionalcommits.org/"
|
|
266
|
+
- id: changelog-and-versioning
|
|
267
|
+
title: Versioning and change communication
|
|
268
|
+
guidance: >
|
|
269
|
+
For released software, check for SemVer tags/releases and a changelog
|
|
270
|
+
(or generated release notes) so consumers understand what changed.
|
|
271
|
+
rubric:
|
|
272
|
+
excellent: SemVer releases with a maintained changelog / release notes.
|
|
273
|
+
adequate: Some tags/releases but no changelog.
|
|
274
|
+
poor: No versioning or release communication.
|
|
275
|
+
references:
|
|
276
|
+
- "https://keepachangelog.com/"
|
|
277
|
+
- "https://semver.org/"
|
|
278
|
+
- id: dependency-currency
|
|
279
|
+
title: Dependencies are reasonably current and maintained
|
|
280
|
+
guidance: >
|
|
281
|
+
Check for severely outdated or abandoned dependencies and whether an
|
|
282
|
+
update mechanism (Renovate/Dependabot) keeps them current.
|
|
283
|
+
rubric:
|
|
284
|
+
excellent: Dependencies current; automated update PRs configured.
|
|
285
|
+
adequate: Mostly current; manual updates.
|
|
286
|
+
poor: Many years-stale or abandoned dependencies.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
id: csharp
|
|
2
|
+
name: C# / .NET Overlay
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: base
|
|
6
|
+
appliesTo: [csharp]
|
|
7
|
+
scoreScale: 4
|
|
8
|
+
|
|
9
|
+
categories:
|
|
10
|
+
- id: language
|
|
11
|
+
name: C# / .NET Language Quality
|
|
12
|
+
weight: 14
|
|
13
|
+
description: Idiomatic, safe, and well-tooled .NET code.
|
|
14
|
+
criteria:
|
|
15
|
+
- id: nullable-and-analyzers
|
|
16
|
+
title: Nullable reference types and analyzers enabled
|
|
17
|
+
guidance: >
|
|
18
|
+
Check the project enables `<Nullable>enable</Nullable>` and
|
|
19
|
+
`TreatWarningsAsErrors`, and uses analyzers (.editorconfig + Roslyn
|
|
20
|
+
analyzers). Penalise `#nullable disable` and pervasive `!` null-forgiving.
|
|
21
|
+
rubric:
|
|
22
|
+
excellent: Nullable enabled solution-wide; analyzers on; warnings treated as errors.
|
|
23
|
+
adequate: Nullable on in some projects; analyzers loosely applied.
|
|
24
|
+
poor: Nullable disabled; no analyzers.
|
|
25
|
+
references:
|
|
26
|
+
- "https://learn.microsoft.com/dotnet/csharp/nullable-references"
|
|
27
|
+
- id: async-disposal
|
|
28
|
+
title: Correct async/await and resource disposal
|
|
29
|
+
guidance: >
|
|
30
|
+
Async methods avoid `async void` (except event handlers), avoid
|
|
31
|
+
`.Result`/`.Wait()` deadlock patterns, flow CancellationTokens, and
|
|
32
|
+
use `using`/`await using` for IDisposable/IAsyncDisposable resources.
|
|
33
|
+
rubric:
|
|
34
|
+
excellent: No async void/blocking-on-async; tokens flowed; deterministic disposal.
|
|
35
|
+
adequate: Mostly correct with isolated blocking calls.
|
|
36
|
+
poor: Blocking on async / leaked disposables.
|
|
37
|
+
- id: style-format
|
|
38
|
+
title: dotnet format / EditorConfig style enforced
|
|
39
|
+
guidance: >
|
|
40
|
+
A shared .editorconfig defines style and `dotnet format` (or analyzers)
|
|
41
|
+
enforces it, ideally in CI.
|
|
42
|
+
rubric:
|
|
43
|
+
excellent: .editorconfig + dotnet format enforced in CI.
|
|
44
|
+
adequate: Style defined but not enforced.
|
|
45
|
+
poor: No shared style.
|
|
46
|
+
- id: di-and-structure
|
|
47
|
+
title: Dependency injection and layered structure
|
|
48
|
+
guidance: >
|
|
49
|
+
For applications, dependencies are injected rather than newed up
|
|
50
|
+
statically, enabling testability and clear layering.
|
|
51
|
+
rubric:
|
|
52
|
+
excellent: Constructor DI; clear layers; testable seams.
|
|
53
|
+
adequate: Some DI with static dependencies mixed in.
|
|
54
|
+
poor: Pervasive static/`new` coupling.
|
|
55
|
+
|
|
56
|
+
- id: testing
|
|
57
|
+
name: Testing & Verification
|
|
58
|
+
weight: 18
|
|
59
|
+
criteria:
|
|
60
|
+
- id: dotnet-test
|
|
61
|
+
title: xUnit/NUnit suite runnable via dotnet test
|
|
62
|
+
guidance: >
|
|
63
|
+
A test project exists and `dotnet test` runs it; coverage collected
|
|
64
|
+
via coverlet or similar.
|
|
65
|
+
rubric:
|
|
66
|
+
excellent: Solid xUnit/NUnit suite; coverage collected; runs in CI.
|
|
67
|
+
adequate: Some tests; not in CI.
|
|
68
|
+
poor: No test project.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
id: dart
|
|
2
|
+
name: Dart / Flutter Overlay
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: base
|
|
6
|
+
appliesTo: [dart]
|
|
7
|
+
scoreScale: 4
|
|
8
|
+
|
|
9
|
+
categories:
|
|
10
|
+
- id: language
|
|
11
|
+
name: Dart / Flutter Language Quality
|
|
12
|
+
weight: 14
|
|
13
|
+
description: Idiomatic, null-safe, well-analyzed Dart and Flutter code.
|
|
14
|
+
criteria:
|
|
15
|
+
- id: analysis-options
|
|
16
|
+
title: Strict analysis_options with recommended lints
|
|
17
|
+
guidance: >
|
|
18
|
+
An analysis_options.yaml enables a recommended lint set
|
|
19
|
+
(package:lints/recommended or flutter_lints) and ideally strict
|
|
20
|
+
language modes (strict-casts, strict-raw-types). `dart analyze` should
|
|
21
|
+
be clean and run in CI.
|
|
22
|
+
rubric:
|
|
23
|
+
excellent: Recommended/flutter lints + strict modes; `dart analyze` clean in CI.
|
|
24
|
+
adequate: Lints enabled but warnings tolerated.
|
|
25
|
+
poor: No analysis_options or many analyzer warnings.
|
|
26
|
+
references:
|
|
27
|
+
- "https://dart.dev/tools/analysis"
|
|
28
|
+
- id: null-safety
|
|
29
|
+
title: Sound null safety, no needless bang operators
|
|
30
|
+
guidance: >
|
|
31
|
+
The package is null-safe (SDK constraint >= 2.12) and avoids overusing
|
|
32
|
+
the `!` null-assertion and `late` where nullable handling is clearer.
|
|
33
|
+
rubric:
|
|
34
|
+
excellent: Null-safe with minimal, justified `!`/`late` usage.
|
|
35
|
+
adequate: Null-safe but liberal `!`/`late`.
|
|
36
|
+
poor: Not null-safe or unsound patterns.
|
|
37
|
+
- id: format-pub
|
|
38
|
+
title: dart format clean and healthy pubspec
|
|
39
|
+
guidance: >
|
|
40
|
+
Code is `dart format` clean; pubspec.yaml has bounded dependency
|
|
41
|
+
constraints and pubspec.lock is committed for apps. `dart pub outdated`
|
|
42
|
+
shows reasonable currency.
|
|
43
|
+
rubric:
|
|
44
|
+
excellent: Formatted; bounded constraints; lockfile committed (apps); deps current.
|
|
45
|
+
adequate: Mostly formatted; loose constraints.
|
|
46
|
+
poor: Unformatted; unbounded or stale dependencies.
|
|
47
|
+
- id: flutter-structure
|
|
48
|
+
title: Sensible widget/state structure (Flutter)
|
|
49
|
+
guidance: >
|
|
50
|
+
For Flutter apps, widgets are decomposed (const where possible), state
|
|
51
|
+
management is consistent (Provider/Riverpod/Bloc), and business logic
|
|
52
|
+
is separated from UI. Skip if not a Flutter project.
|
|
53
|
+
rubric:
|
|
54
|
+
excellent: Decomposed const widgets; consistent state mgmt; logic separated from UI.
|
|
55
|
+
adequate: Workable structure with large widgets.
|
|
56
|
+
poor: Monolithic widgets; logic tangled into UI.
|
|
57
|
+
|
|
58
|
+
- id: testing
|
|
59
|
+
name: Testing & Verification
|
|
60
|
+
weight: 18
|
|
61
|
+
criteria:
|
|
62
|
+
- id: dart-test
|
|
63
|
+
title: dart/flutter test suite with widget tests
|
|
64
|
+
guidance: >
|
|
65
|
+
A test suite runs via `dart test` / `flutter test`, including widget
|
|
66
|
+
tests for Flutter UIs, with coverage collected.
|
|
67
|
+
rubric:
|
|
68
|
+
excellent: Unit + widget tests; coverage collected; runs in CI.
|
|
69
|
+
adequate: Some tests; UI untested.
|
|
70
|
+
poor: No tests.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
id: go
|
|
2
|
+
name: Go Overlay
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: base
|
|
6
|
+
appliesTo: [go]
|
|
7
|
+
scoreScale: 4
|
|
8
|
+
|
|
9
|
+
categories:
|
|
10
|
+
- id: language
|
|
11
|
+
name: Go Language Quality
|
|
12
|
+
weight: 14
|
|
13
|
+
description: Idiomatic, simple, and well-structured Go.
|
|
14
|
+
criteria:
|
|
15
|
+
- id: gofmt-vet-lint
|
|
16
|
+
title: gofmt-clean, go vet, and a linter
|
|
17
|
+
guidance: >
|
|
18
|
+
Code is gofmt/goimports clean, `go vet` passes, and a linter
|
|
19
|
+
(golangci-lint) is configured. These should run in CI.
|
|
20
|
+
rubric:
|
|
21
|
+
excellent: gofmt clean; go vet + golangci-lint enforced in CI.
|
|
22
|
+
adequate: gofmt clean but no vet/lint enforcement.
|
|
23
|
+
poor: Unformatted code; no static analysis.
|
|
24
|
+
references:
|
|
25
|
+
- "https://go.dev/doc/effective_go"
|
|
26
|
+
- id: error-handling-go
|
|
27
|
+
title: Idiomatic error handling with wrapping
|
|
28
|
+
guidance: >
|
|
29
|
+
Errors are checked, wrapped with context using `fmt.Errorf("...: %w",
|
|
30
|
+
err)`, and not discarded with `_`. Panics are reserved for truly
|
|
31
|
+
unrecoverable states. Sentinel/typed errors used where callers branch.
|
|
32
|
+
rubric:
|
|
33
|
+
excellent: Errors consistently wrapped with context; no silently ignored errors.
|
|
34
|
+
adequate: Errors handled but context often lost.
|
|
35
|
+
poor: Errors ignored or panics used for control flow.
|
|
36
|
+
references:
|
|
37
|
+
- "https://go.dev/blog/go1.13-errors"
|
|
38
|
+
- id: concurrency-safety
|
|
39
|
+
title: Safe concurrency (no leaks or races)
|
|
40
|
+
guidance: >
|
|
41
|
+
Goroutines have clear lifetimes (context cancellation), shared state is
|
|
42
|
+
protected, and `go test -race` is part of CI. Look for goroutine leaks
|
|
43
|
+
and unguarded shared maps/slices.
|
|
44
|
+
rubric:
|
|
45
|
+
excellent: Context-scoped goroutines; -race in CI; no obvious leaks/races.
|
|
46
|
+
adequate: Concurrency used correctly but no race detector in CI.
|
|
47
|
+
poor: Leaky goroutines or unsynchronised shared state.
|
|
48
|
+
- id: module-layout
|
|
49
|
+
title: Clean module layout and minimal exported surface
|
|
50
|
+
guidance: >
|
|
51
|
+
go.mod is tidy (go mod tidy clean), package boundaries are sensible,
|
|
52
|
+
and the exported API surface is intentional rather than everything
|
|
53
|
+
public.
|
|
54
|
+
rubric:
|
|
55
|
+
excellent: Tidy modules; cohesive packages; intentional exported API.
|
|
56
|
+
adequate: Reasonable layout with some over-exposure.
|
|
57
|
+
poor: Dumping-ground packages; untidy go.mod.
|
|
58
|
+
|
|
59
|
+
- id: testing
|
|
60
|
+
name: Testing & Verification
|
|
61
|
+
weight: 18
|
|
62
|
+
criteria:
|
|
63
|
+
- id: table-tests-race
|
|
64
|
+
title: Table-driven tests run with the race detector
|
|
65
|
+
guidance: >
|
|
66
|
+
Tests use table-driven style where appropriate and CI runs
|
|
67
|
+
`go test ./... -race`.
|
|
68
|
+
rubric:
|
|
69
|
+
excellent: Table-driven tests; `go test -race` in CI; meaningful coverage.
|
|
70
|
+
adequate: Tests exist without race detection.
|
|
71
|
+
poor: No tests.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
id: java
|
|
2
|
+
name: Java / JVM Overlay
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: base
|
|
6
|
+
appliesTo: [java]
|
|
7
|
+
scoreScale: 4
|
|
8
|
+
|
|
9
|
+
categories:
|
|
10
|
+
- id: language
|
|
11
|
+
name: Java / JVM Language Quality
|
|
12
|
+
weight: 14
|
|
13
|
+
description: Idiomatic, safe, and well-built JVM code.
|
|
14
|
+
criteria:
|
|
15
|
+
- id: build-tooling
|
|
16
|
+
title: Maven/Gradle build with pinned plugin/dep versions
|
|
17
|
+
guidance: >
|
|
18
|
+
A declarative Maven (pom.xml) or Gradle build manages dependencies and
|
|
19
|
+
versions (BOM or version catalog), with a wrapper (mvnw/gradlew)
|
|
20
|
+
committed for reproducibility.
|
|
21
|
+
rubric:
|
|
22
|
+
excellent: Wrapper committed; versions centrally managed (BOM/catalog); reproducible build.
|
|
23
|
+
adequate: Build works but versions scattered / no wrapper.
|
|
24
|
+
poor: Ad hoc build or unmanaged versions.
|
|
25
|
+
- id: static-analysis
|
|
26
|
+
title: Static analysis and formatting enforced
|
|
27
|
+
guidance: >
|
|
28
|
+
Tools such as SpotBugs/Error Prone, Checkstyle/PMD, and a formatter
|
|
29
|
+
(Spotless/google-java-format) are configured and run in CI.
|
|
30
|
+
rubric:
|
|
31
|
+
excellent: Error Prone/SpotBugs + Checkstyle + Spotless enforced in CI.
|
|
32
|
+
adequate: Some tools configured, not enforced.
|
|
33
|
+
poor: No static analysis or formatting.
|
|
34
|
+
references:
|
|
35
|
+
- "https://google.github.io/styleguide/javaguide.html"
|
|
36
|
+
- id: null-safety-resources
|
|
37
|
+
title: Null-safety and try-with-resources
|
|
38
|
+
guidance: >
|
|
39
|
+
Nullability is communicated (Optional or annotations like JSpecify/
|
|
40
|
+
@Nullable) and resources use try-with-resources. Penalise returning
|
|
41
|
+
null collections and swallowing exceptions.
|
|
42
|
+
rubric:
|
|
43
|
+
excellent: Clear nullability contracts; try-with-resources throughout.
|
|
44
|
+
adequate: Inconsistent null handling; mostly closes resources.
|
|
45
|
+
poor: NPE-prone APIs; leaked resources; swallowed exceptions.
|
|
46
|
+
- id: immutability-di
|
|
47
|
+
title: Favour immutability and dependency injection
|
|
48
|
+
guidance: >
|
|
49
|
+
Value types are immutable (records/final fields), and dependencies are
|
|
50
|
+
injected (framework or constructor) rather than statically bound.
|
|
51
|
+
rubric:
|
|
52
|
+
excellent: Immutable value types; constructor/framework DI; testable seams.
|
|
53
|
+
adequate: Some immutability/DI with mutable static state mixed in.
|
|
54
|
+
poor: Mutable shared state and static coupling.
|
|
55
|
+
|
|
56
|
+
- id: testing
|
|
57
|
+
name: Testing & Verification
|
|
58
|
+
weight: 18
|
|
59
|
+
criteria:
|
|
60
|
+
- id: junit-suite
|
|
61
|
+
title: JUnit 5 suite with coverage
|
|
62
|
+
guidance: >
|
|
63
|
+
A JUnit 5 (or Spock) suite runs via the build tool, with coverage
|
|
64
|
+
(JaCoCo) collected and ideally a minimum threshold.
|
|
65
|
+
rubric:
|
|
66
|
+
excellent: JUnit 5 suite; JaCoCo coverage with threshold; runs in CI.
|
|
67
|
+
adequate: Tests exist; no coverage gate.
|
|
68
|
+
poor: No tests.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
id: python
|
|
2
|
+
name: Python Overlay
|
|
3
|
+
version: 0.1.0
|
|
4
|
+
kind: benchmark
|
|
5
|
+
extends: base
|
|
6
|
+
appliesTo: [python]
|
|
7
|
+
scoreScale: 4
|
|
8
|
+
|
|
9
|
+
categories:
|
|
10
|
+
- id: language
|
|
11
|
+
name: Python Language Quality
|
|
12
|
+
weight: 14
|
|
13
|
+
description: Idiomatic, typed, and well-packaged Python.
|
|
14
|
+
criteria:
|
|
15
|
+
- id: type-hints
|
|
16
|
+
title: Type hints with a static checker
|
|
17
|
+
guidance: >
|
|
18
|
+
Public functions/classes carry type hints and a checker (mypy or
|
|
19
|
+
pyright) is configured, ideally in CI. Penalise pervasive `Any` and
|
|
20
|
+
`# type: ignore` without justification.
|
|
21
|
+
rubric:
|
|
22
|
+
excellent: Typed public API; mypy/pyright clean and enforced in CI.
|
|
23
|
+
adequate: Partial hints; checker present but not enforced.
|
|
24
|
+
poor: No type hints or checker.
|
|
25
|
+
references:
|
|
26
|
+
- "https://peps.python.org/pep-0484/"
|
|
27
|
+
- id: lint-format-toolchain
|
|
28
|
+
title: Ruff/flake8 + formatter (black/ruff format)
|
|
29
|
+
guidance: >
|
|
30
|
+
A linter and an auto-formatter are configured and runnable. Ruff
|
|
31
|
+
covers both well; black + flake8 is also fine.
|
|
32
|
+
rubric:
|
|
33
|
+
excellent: Lint + format configured and enforced in CI/pre-commit.
|
|
34
|
+
adequate: Configured but not enforced.
|
|
35
|
+
poor: None configured; inconsistent style (PEP 8 violations).
|
|
36
|
+
references:
|
|
37
|
+
- "https://peps.python.org/pep-0008/"
|
|
38
|
+
- id: packaging
|
|
39
|
+
title: Modern packaging with pyproject.toml and pinned deps
|
|
40
|
+
guidance: >
|
|
41
|
+
Project metadata and build config live in pyproject.toml (PEP 621);
|
|
42
|
+
dependencies are managed with a lockfile (uv/poetry/pip-tools) rather
|
|
43
|
+
than an unpinned requirements.txt.
|
|
44
|
+
rubric:
|
|
45
|
+
excellent: pyproject.toml + lockfile; reproducible install; clear entry points.
|
|
46
|
+
adequate: requirements.txt present but unpinned or partial metadata.
|
|
47
|
+
poor: No declared dependencies / ad hoc setup.
|
|
48
|
+
references:
|
|
49
|
+
- "https://peps.python.org/pep-0621/"
|
|
50
|
+
- id: env-isolation
|
|
51
|
+
title: Virtual environment / dependency isolation documented
|
|
52
|
+
guidance: >
|
|
53
|
+
Setup instructions use an isolated environment (venv/uv/poetry/conda);
|
|
54
|
+
the project does not assume global site-packages.
|
|
55
|
+
rubric:
|
|
56
|
+
excellent: Documented isolated env; reproducible from clean machine.
|
|
57
|
+
adequate: Isolation implied but not documented.
|
|
58
|
+
poor: Assumes global installs.
|
|
59
|
+
|
|
60
|
+
- id: testing
|
|
61
|
+
name: Testing & Verification
|
|
62
|
+
weight: 18
|
|
63
|
+
criteria:
|
|
64
|
+
- id: pytest-suite
|
|
65
|
+
title: pytest (or unittest) suite with fixtures
|
|
66
|
+
guidance: >
|
|
67
|
+
A runnable test suite using pytest/unittest with proper fixtures
|
|
68
|
+
rather than global setup, runnable via a single command.
|
|
69
|
+
rubric:
|
|
70
|
+
excellent: Well-structured pytest suite with fixtures; coverage measured.
|
|
71
|
+
adequate: Tests exist but rely on global state.
|
|
72
|
+
poor: No runnable test suite.
|