edsger 0.50.0 → 0.52.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/.claude/settings.local.json +23 -3
- package/.env.local +12 -0
- package/README.md +25 -25
- package/dist/api/chat.d.ts +7 -7
- package/dist/api/chat.js +13 -13
- package/dist/api/cross-product.d.ts +10 -10
- package/dist/api/cross-product.js +30 -30
- package/dist/api/github.d.ts +5 -5
- package/dist/api/github.js +10 -10
- package/dist/api/intelligence.d.ts +3 -3
- package/dist/api/issues/approval-checker.d.ts +20 -0
- package/dist/api/{features → issues}/approval-checker.js +16 -16
- package/dist/api/issues/get-issue.d.ts +5 -0
- package/dist/api/issues/get-issue.js +21 -0
- package/dist/api/issues/index.d.ts +8 -0
- package/dist/api/issues/index.js +10 -0
- package/dist/api/issues/issue-utils.d.ts +23 -0
- package/dist/api/issues/issue-utils.js +80 -0
- package/dist/api/issues/status-updater.d.ts +41 -0
- package/dist/api/{features → issues}/status-updater.js +23 -23
- package/dist/api/{features → issues}/test-cases.d.ts +7 -7
- package/dist/api/{features → issues}/test-cases.js +12 -12
- package/dist/api/issues/update-issue.d.ts +20 -0
- package/dist/api/{features/update-feature.js → issues/update-issue.js} +22 -22
- package/dist/api/{features → issues}/user-stories.d.ts +5 -5
- package/dist/api/{features → issues}/user-stories.js +8 -8
- package/dist/api/products.d.ts +1 -1
- package/dist/api/tasks.d.ts +1 -1
- package/dist/api/test-reports.d.ts +2 -2
- package/dist/api/test-reports.js +4 -4
- package/dist/auth/login.js +1 -1
- package/dist/commands/agent-workflow/chat-worker.d.ts +7 -7
- package/dist/commands/agent-workflow/chat-worker.js +50 -50
- package/dist/commands/agent-workflow/index.d.ts +2 -2
- package/dist/commands/agent-workflow/index.js +3 -3
- package/dist/commands/agent-workflow/{feature-worker.d.ts → issue-worker.d.ts} +4 -4
- package/dist/commands/agent-workflow/{feature-worker.js → issue-worker.js} +12 -12
- package/dist/commands/agent-workflow/processor.d.ts +9 -9
- package/dist/commands/agent-workflow/processor.js +90 -90
- package/dist/commands/build/index.js +2 -2
- package/dist/commands/find-bugs/index.d.ts +11 -0
- package/dist/commands/find-bugs/index.js +39 -0
- package/dist/commands/find-features/index.d.ts +14 -0
- package/dist/commands/find-features/index.js +42 -0
- package/dist/commands/find-smells/index.d.ts +21 -0
- package/dist/commands/find-smells/index.js +65 -0
- package/dist/commands/init/prompts.js +1 -1
- package/dist/commands/init/templates.d.ts +1 -1
- package/dist/commands/init/templates.js +4 -4
- package/dist/commands/workflow/config/phase-configs.js +17 -17
- package/dist/commands/workflow/core/index.d.ts +1 -1
- package/dist/commands/workflow/core/index.js +2 -2
- package/dist/commands/workflow/core/issue-filter.d.ts +16 -0
- package/dist/commands/workflow/core/issue-filter.js +47 -0
- package/dist/commands/workflow/core/state-manager.d.ts +10 -10
- package/dist/commands/workflow/core/state-manager.js +10 -10
- package/dist/commands/workflow/core/workflow-logger.d.ts +9 -9
- package/dist/commands/workflow/core/workflow-logger.js +21 -21
- package/dist/commands/workflow/executors/phase-executor.d.ts +2 -2
- package/dist/commands/workflow/executors/phase-executor.js +32 -32
- package/dist/commands/workflow/issue-coordinator.d.ts +18 -0
- package/dist/commands/workflow/{feature-coordinator.js → issue-coordinator.js} +29 -29
- package/dist/commands/workflow/phase-orchestrator.d.ts +2 -2
- package/dist/commands/workflow/phase-orchestrator.js +82 -82
- package/dist/commands/workflow/processor.d.ts +7 -7
- package/dist/commands/workflow/processor.js +44 -44
- package/dist/config/{feature-status.d.ts → issue-status.d.ts} +14 -14
- package/dist/config/{feature-status.js → issue-status.js} +14 -14
- package/dist/errors/index.d.ts +6 -6
- package/dist/errors/index.js +11 -11
- package/dist/index.js +90 -1
- package/dist/phases/app-store-generation/context.js +6 -6
- package/dist/phases/app-store-generation/index.js +2 -2
- package/dist/phases/app-store-generation/prompts.js +2 -2
- package/dist/phases/autonomous/index.d.ts +3 -3
- package/dist/phases/autonomous/index.js +37 -37
- package/dist/phases/autonomous/prompts.d.ts +2 -2
- package/dist/phases/autonomous/prompts.js +4 -4
- package/dist/phases/branch-planning/context.d.ts +3 -3
- package/dist/phases/branch-planning/context.js +12 -12
- package/dist/phases/branch-planning/index.d.ts +3 -3
- package/dist/phases/branch-planning/index.js +32 -32
- package/dist/phases/branch-planning/outcome.d.ts +5 -5
- package/dist/phases/branch-planning/outcome.js +12 -12
- package/dist/phases/branch-planning/prompts.d.ts +3 -3
- package/dist/phases/branch-planning/prompts.js +13 -13
- package/dist/phases/bug-fixing/analyzer.d.ts +2 -2
- package/dist/phases/bug-fixing/analyzer.js +13 -13
- package/dist/phases/bug-fixing/context-fetcher.d.ts +3 -3
- package/dist/phases/bug-fixing/context-fetcher.js +18 -18
- package/dist/phases/bug-fixing/mcp-server.js +17 -18
- package/dist/phases/chat-processor/context.d.ts +5 -5
- package/dist/phases/chat-processor/context.js +17 -17
- package/dist/phases/chat-processor/index.d.ts +4 -4
- package/dist/phases/chat-processor/index.js +17 -17
- package/dist/phases/chat-processor/product-context.d.ts +3 -3
- package/dist/phases/chat-processor/product-context.js +16 -16
- package/dist/phases/chat-processor/product-prompts.d.ts +1 -1
- package/dist/phases/chat-processor/product-prompts.js +10 -10
- package/dist/phases/chat-processor/product-tools.d.ts +2 -2
- package/dist/phases/chat-processor/product-tools.js +33 -33
- package/dist/phases/chat-processor/prompts.d.ts +3 -3
- package/dist/phases/chat-processor/prompts.js +22 -22
- package/dist/phases/chat-processor/tools.js +46 -46
- package/dist/phases/code-implementation/branch-pr-creator.d.ts +3 -3
- package/dist/phases/code-implementation/branch-pr-creator.js +5 -5
- package/dist/phases/code-implementation/context.d.ts +3 -3
- package/dist/phases/code-implementation/context.js +18 -18
- package/dist/phases/code-implementation/index.d.ts +4 -4
- package/dist/phases/code-implementation/index.js +88 -88
- package/dist/phases/code-implementation/outcome.d.ts +3 -3
- package/dist/phases/code-implementation/outcome.js +6 -6
- package/dist/phases/code-implementation/prompts.d.ts +1 -1
- package/dist/phases/code-implementation/prompts.js +6 -6
- package/dist/phases/code-implementation-verification/agent.d.ts +3 -3
- package/dist/phases/code-implementation-verification/agent.js +5 -5
- package/dist/phases/code-implementation-verification/index.d.ts +3 -3
- package/dist/phases/code-implementation-verification/index.js +11 -11
- package/dist/phases/code-implementation-verification/prompts.d.ts +3 -3
- package/dist/phases/code-implementation-verification/prompts.js +7 -7
- package/dist/phases/code-refine/context.d.ts +8 -8
- package/dist/phases/code-refine/context.js +29 -29
- package/dist/phases/code-refine/index.d.ts +2 -2
- package/dist/phases/code-refine/index.js +20 -20
- package/dist/phases/code-refine/prompts.d.ts +1 -1
- package/dist/phases/code-refine/prompts.js +3 -3
- package/dist/phases/code-refine/refine-iteration.d.ts +1 -1
- package/dist/phases/code-refine/refine-iteration.js +4 -4
- package/dist/phases/code-refine/retry-handler.js +2 -2
- package/dist/phases/code-refine-verification/index.js +10 -10
- package/dist/phases/code-refine-verification/types.d.ts +2 -2
- package/dist/phases/code-review/context.d.ts +8 -8
- package/dist/phases/code-review/context.js +25 -25
- package/dist/phases/code-review/diff-utils.d.ts +1 -1
- package/dist/phases/code-review/diff-utils.js +1 -1
- package/dist/phases/code-review/index.d.ts +2 -2
- package/dist/phases/code-review/index.js +26 -26
- package/dist/phases/code-testing/analyzer.d.ts +2 -2
- package/dist/phases/code-testing/analyzer.js +18 -18
- package/dist/phases/code-testing/context-fetcher.d.ts +3 -3
- package/dist/phases/code-testing/context-fetcher.js +16 -16
- package/dist/phases/code-testing/prompts.d.ts +1 -1
- package/dist/phases/code-testing/prompts.js +5 -5
- package/dist/phases/find-bugs/index.d.ts +30 -0
- package/dist/phases/find-bugs/index.js +216 -0
- package/dist/phases/find-bugs/prompts.d.ts +22 -0
- package/dist/phases/find-bugs/prompts.js +101 -0
- package/dist/phases/find-bugs/state.d.ts +19 -0
- package/dist/phases/find-bugs/state.js +13 -0
- package/dist/phases/find-bugs/types.d.ts +21 -0
- package/dist/phases/find-bugs/types.js +16 -0
- package/dist/phases/find-features/index.d.ts +40 -0
- package/dist/phases/find-features/index.js +279 -0
- package/dist/phases/find-features/prompts.d.ts +43 -0
- package/dist/phases/find-features/prompts.js +138 -0
- package/dist/phases/find-features/state.d.ts +25 -0
- package/dist/phases/find-features/state.js +22 -0
- package/dist/phases/find-features/types.d.ts +27 -0
- package/dist/phases/find-features/types.js +16 -0
- package/dist/phases/find-shared/git.d.ts +24 -0
- package/dist/phases/find-shared/git.js +60 -0
- package/dist/phases/find-shared/mcp.d.ts +33 -0
- package/dist/phases/find-shared/mcp.js +69 -0
- package/dist/phases/find-shared/scan-state.d.ts +33 -0
- package/dist/phases/find-shared/scan-state.js +112 -0
- package/dist/phases/find-smells/index.d.ts +47 -0
- package/dist/phases/find-smells/index.js +278 -0
- package/dist/phases/find-smells/prompts.d.ts +30 -0
- package/dist/phases/find-smells/prompts.js +129 -0
- package/dist/phases/find-smells/state.d.ts +21 -0
- package/dist/phases/find-smells/state.js +17 -0
- package/dist/phases/find-smells/types.d.ts +51 -0
- package/dist/phases/find-smells/types.js +64 -0
- package/dist/phases/functional-testing/analyzer.d.ts +2 -2
- package/dist/phases/functional-testing/analyzer.js +40 -40
- package/dist/phases/functional-testing/context-fetcher.d.ts +3 -3
- package/dist/phases/functional-testing/context-fetcher.js +16 -16
- package/dist/phases/functional-testing/http-fallback.d.ts +2 -2
- package/dist/phases/functional-testing/http-fallback.js +9 -9
- package/dist/phases/functional-testing/mcp-server.js +23 -24
- package/dist/phases/functional-testing/prompts.d.ts +1 -1
- package/dist/phases/functional-testing/prompts.js +4 -4
- package/dist/phases/functional-testing/test-report-creator.d.ts +2 -2
- package/dist/phases/functional-testing/test-report-creator.js +10 -10
- package/dist/phases/functional-testing/test-retry-handler.js +3 -3
- package/dist/phases/growth-analysis/context.js +6 -6
- package/dist/phases/growth-analysis/index.js +2 -2
- package/dist/phases/growth-analysis/prompts.js +2 -2
- package/dist/phases/intelligence-analysis/context.js +7 -7
- package/dist/phases/intelligence-analysis/index.js +3 -3
- package/dist/phases/{feature-analysis → issue-analysis}/agent.js +1 -1
- package/dist/phases/issue-analysis/context.d.ts +24 -0
- package/dist/phases/{feature-analysis → issue-analysis}/context.js +30 -30
- package/dist/phases/issue-analysis/index.d.ts +8 -0
- package/dist/phases/{feature-analysis → issue-analysis}/index.js +29 -29
- package/dist/phases/issue-analysis/outcome.d.ts +40 -0
- package/dist/phases/{feature-analysis → issue-analysis}/outcome.js +17 -17
- package/dist/phases/{feature-analysis → issue-analysis}/prompts.d.ts +3 -3
- package/dist/phases/{feature-analysis → issue-analysis}/prompts.js +12 -12
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/agent.d.ts +2 -2
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/agent.js +1 -1
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/index.d.ts +5 -5
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/index.js +9 -9
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/prompts.d.ts +2 -2
- package/dist/phases/{feature-analysis-verification → issue-analysis-verification}/prompts.js +7 -7
- package/dist/phases/output-contracts.js +37 -37
- package/dist/phases/pr-execution/context.d.ts +3 -3
- package/dist/phases/pr-execution/context.js +14 -14
- package/dist/phases/pr-execution/index.d.ts +2 -2
- package/dist/phases/pr-execution/index.js +22 -22
- package/dist/phases/pr-execution/outcome.d.ts +4 -4
- package/dist/phases/pr-execution/outcome.js +6 -6
- package/dist/phases/pr-execution/prompts.d.ts +4 -4
- package/dist/phases/pr-execution/prompts.js +6 -6
- package/dist/phases/pr-resolve/checklist-learner.js +2 -2
- package/dist/phases/pr-review/index.d.ts +1 -1
- package/dist/phases/pr-review/index.js +1 -1
- package/dist/phases/pr-review/prompts.d.ts +1 -1
- package/dist/phases/pr-review/prompts.js +1 -1
- package/dist/phases/pr-shared/context.d.ts +3 -3
- package/dist/phases/pr-shared/context.js +3 -3
- package/dist/phases/pr-splitting/context.d.ts +3 -3
- package/dist/phases/pr-splitting/context.js +16 -16
- package/dist/phases/pr-splitting/index.d.ts +4 -4
- package/dist/phases/pr-splitting/index.js +29 -29
- package/dist/phases/pr-splitting/outcome.d.ts +3 -3
- package/dist/phases/pr-splitting/outcome.js +7 -7
- package/dist/phases/pr-splitting/prompts.d.ts +3 -3
- package/dist/phases/pr-splitting/prompts.js +11 -11
- package/dist/phases/pull-request/creator.d.ts +4 -4
- package/dist/phases/pull-request/creator.js +25 -25
- package/dist/phases/pull-request/handler.d.ts +3 -3
- package/dist/phases/pull-request/handler.js +16 -16
- package/dist/phases/release-sync/index.js +2 -2
- package/dist/phases/run-sheet/agent.js +1 -2
- package/dist/phases/run-sheet/index.js +3 -3
- package/dist/phases/smoke-test/index.js +2 -2
- package/dist/phases/technical-design/context.d.ts +3 -3
- package/dist/phases/technical-design/context.js +11 -11
- package/dist/phases/technical-design/index.d.ts +2 -2
- package/dist/phases/technical-design/index.js +27 -27
- package/dist/phases/technical-design/outcome.d.ts +4 -4
- package/dist/phases/technical-design/outcome.js +6 -6
- package/dist/phases/technical-design/prompts.d.ts +2 -2
- package/dist/phases/technical-design/prompts.js +10 -10
- package/dist/phases/technical-design-verification/agent.d.ts +3 -3
- package/dist/phases/technical-design-verification/agent.js +4 -4
- package/dist/phases/technical-design-verification/index.d.ts +4 -4
- package/dist/phases/technical-design-verification/index.js +12 -12
- package/dist/phases/technical-design-verification/prompts.d.ts +3 -3
- package/dist/phases/technical-design-verification/prompts.js +6 -6
- package/dist/phases/test-cases-analysis/context.d.ts +5 -5
- package/dist/phases/test-cases-analysis/context.js +18 -18
- package/dist/phases/test-cases-analysis/formatters.js +7 -7
- package/dist/phases/test-cases-analysis/index.d.ts +1 -1
- package/dist/phases/test-cases-analysis/index.js +21 -21
- package/dist/phases/test-cases-analysis/outcome.d.ts +7 -7
- package/dist/phases/test-cases-analysis/outcome.js +13 -13
- package/dist/phases/test-cases-analysis/prompts.d.ts +3 -3
- package/dist/phases/test-cases-analysis/prompts.js +6 -6
- package/dist/phases/user-stories-analysis/context.d.ts +5 -5
- package/dist/phases/user-stories-analysis/context.js +18 -18
- package/dist/phases/user-stories-analysis/formatters.js +7 -7
- package/dist/phases/user-stories-analysis/index.d.ts +1 -1
- package/dist/phases/user-stories-analysis/index.js +21 -21
- package/dist/phases/user-stories-analysis/outcome.d.ts +7 -7
- package/dist/phases/user-stories-analysis/outcome.js +13 -13
- package/dist/phases/user-stories-analysis/prompts.d.ts +3 -3
- package/dist/phases/user-stories-analysis/prompts.js +10 -10
- package/dist/services/audit-logs.d.ts +10 -10
- package/dist/services/audit-logs.js +12 -12
- package/dist/services/branches.d.ts +6 -6
- package/dist/services/branches.js +16 -16
- package/dist/services/checklist.d.ts +3 -3
- package/dist/services/checklist.js +11 -11
- package/dist/services/coaching/coaching-agent.js +2 -2
- package/dist/services/coaching/coaching-loop.d.ts +1 -1
- package/dist/services/coaching/coaching-loop.js +2 -2
- package/dist/services/coaching/phase-coaching.d.ts +2 -2
- package/dist/services/coaching/phase-coaching.js +3 -3
- package/dist/services/coaching/self-rating.js +1 -1
- package/dist/services/feedbacks.d.ts +4 -4
- package/dist/services/feedbacks.js +8 -8
- package/dist/services/phase-hooks/bindings-fetcher.d.ts +4 -4
- package/dist/services/phase-hooks/bindings-fetcher.js +8 -8
- package/dist/services/phase-hooks/hook-executor.js +1 -1
- package/dist/services/phase-hooks/hook-logging.d.ts +2 -2
- package/dist/services/phase-hooks/hook-logging.js +4 -4
- package/dist/services/phase-hooks/hook-runner.d.ts +1 -1
- package/dist/services/phase-hooks/hook-runner.js +4 -4
- package/dist/services/phase-hooks/types.d.ts +3 -3
- package/dist/services/phase-ratings.d.ts +7 -7
- package/dist/services/phase-ratings.js +8 -8
- package/dist/services/pull-requests.d.ts +4 -4
- package/dist/services/pull-requests.js +11 -11
- package/dist/services/skill-resolver.d.ts +1 -1
- package/dist/services/skill-resolver.js +1 -1
- package/dist/skills/phase/app-store-generation/SKILL.md +9 -9
- package/dist/skills/phase/autonomous/SKILL.md +2 -2
- package/dist/skills/phase/branch-planning/SKILL.md +12 -12
- package/dist/skills/phase/bug-fixing/SKILL.md +1 -1
- package/dist/skills/phase/code-implementation/SKILL.md +6 -6
- package/dist/skills/phase/code-implementation-verification/SKILL.md +3 -3
- package/dist/skills/phase/code-testing/SKILL.md +5 -5
- package/dist/skills/phase/functional-testing/SKILL.md +3 -3
- package/dist/skills/phase/growth-analysis/SKILL.md +8 -8
- package/dist/skills/phase/incremental-sync/SKILL.md +6 -6
- package/dist/skills/phase/intelligence-analysis/SKILL.md +7 -7
- package/dist/skills/phase/{feature-analysis → issue-analysis}/SKILL.md +8 -8
- package/dist/skills/phase/pr-execution/SKILL.md +7 -7
- package/dist/skills/phase/pr-splitting/SKILL.md +14 -14
- package/dist/skills/phase/smoke-test/SKILL.md +1 -1
- package/dist/skills/phase/technical-design/SKILL.md +5 -5
- package/dist/skills/phase/test-cases-analysis/SKILL.md +4 -4
- package/dist/skills/phase/user-stories-analysis/SKILL.md +13 -13
- package/dist/system/session-manager.d.ts +3 -3
- package/dist/system/session-manager.js +3 -3
- package/dist/system/sleep-notification.js +2 -2
- package/dist/system/sleep-prevention.js +1 -1
- package/dist/types/index.d.ts +21 -21
- package/dist/types/{features.d.ts → issues.d.ts} +3 -3
- package/dist/types/pipeline.d.ts +4 -4
- package/dist/updater/auto-updater.d.ts +2 -2
- package/dist/updater/auto-updater.js +3 -3
- package/dist/utils/conflict-resolver.d.ts +1 -1
- package/dist/utils/conflict-resolver.js +5 -5
- package/dist/utils/formatters.d.ts +4 -4
- package/dist/utils/formatters.js +29 -29
- package/dist/utils/git-branch-manager-async.d.ts +6 -6
- package/dist/utils/git-branch-manager-async.js +41 -41
- package/dist/utils/git-branch-manager.d.ts +11 -11
- package/dist/utils/git-branch-manager.js +42 -42
- package/dist/utils/image-downloader.d.ts +4 -4
- package/dist/utils/image-downloader.js +17 -17
- package/dist/utils/pipeline-logger.d.ts +1 -1
- package/dist/utils/pipeline-logger.js +5 -5
- package/dist/workspace/workspace-manager.d.ts +17 -17
- package/dist/workspace/workspace-manager.js +21 -21
- package/package.json +1 -1
- package/vitest.config.ts +4 -0
- package/dist/api/__tests__/app-store.test.d.ts +0 -7
- package/dist/api/__tests__/app-store.test.js +0 -60
- package/dist/api/__tests__/intelligence.test.d.ts +0 -11
- package/dist/api/__tests__/intelligence.test.js +0 -315
- package/dist/api/features/__tests__/feature-utils.test.d.ts +0 -4
- package/dist/api/features/__tests__/feature-utils.test.js +0 -370
- package/dist/api/features/__tests__/status-updater.test.d.ts +0 -4
- package/dist/api/features/__tests__/status-updater.test.js +0 -88
- package/dist/api/features/approval-checker.d.ts +0 -20
- package/dist/api/features/feature-utils.d.ts +0 -23
- package/dist/api/features/feature-utils.js +0 -80
- package/dist/api/features/get-feature.d.ts +0 -5
- package/dist/api/features/get-feature.js +0 -21
- package/dist/api/features/index.d.ts +0 -8
- package/dist/api/features/index.js +0 -10
- package/dist/api/features/status-updater.d.ts +0 -41
- package/dist/api/features/update-feature.d.ts +0 -20
- package/dist/commands/build/__tests__/build.test.d.ts +0 -5
- package/dist/commands/build/__tests__/build.test.js +0 -206
- package/dist/commands/build/__tests__/detect-project.test.d.ts +0 -6
- package/dist/commands/build/__tests__/detect-project.test.js +0 -160
- package/dist/commands/build/__tests__/run-build.test.d.ts +0 -6
- package/dist/commands/build/__tests__/run-build.test.js +0 -433
- package/dist/commands/intelligence/__tests__/command.test.d.ts +0 -4
- package/dist/commands/intelligence/__tests__/command.test.js +0 -48
- package/dist/commands/workflow/core/__tests__/feature-filter.test.d.ts +0 -5
- package/dist/commands/workflow/core/__tests__/feature-filter.test.js +0 -316
- package/dist/commands/workflow/core/__tests__/pipeline-evaluator.test.d.ts +0 -4
- package/dist/commands/workflow/core/__tests__/pipeline-evaluator.test.js +0 -397
- package/dist/commands/workflow/core/__tests__/state-manager.test.d.ts +0 -4
- package/dist/commands/workflow/core/__tests__/state-manager.test.js +0 -384
- package/dist/commands/workflow/core/feature-filter.d.ts +0 -16
- package/dist/commands/workflow/core/feature-filter.js +0 -47
- package/dist/commands/workflow/feature-coordinator.d.ts +0 -18
- package/dist/config/__tests__/config.test.d.ts +0 -4
- package/dist/config/__tests__/config.test.js +0 -286
- package/dist/config/__tests__/feature-status.test.d.ts +0 -4
- package/dist/config/__tests__/feature-status.test.js +0 -111
- package/dist/errors/__tests__/index.test.d.ts +0 -4
- package/dist/errors/__tests__/index.test.js +0 -349
- package/dist/phases/app-store-generation/__tests__/agent.test.d.ts +0 -5
- package/dist/phases/app-store-generation/__tests__/agent.test.js +0 -142
- package/dist/phases/app-store-generation/__tests__/context.test.d.ts +0 -4
- package/dist/phases/app-store-generation/__tests__/context.test.js +0 -284
- package/dist/phases/app-store-generation/__tests__/prompts.test.d.ts +0 -4
- package/dist/phases/app-store-generation/__tests__/prompts.test.js +0 -122
- package/dist/phases/app-store-generation/__tests__/screenshot-composer.test.d.ts +0 -5
- package/dist/phases/app-store-generation/__tests__/screenshot-composer.test.js +0 -826
- package/dist/phases/code-review/__tests__/diff-utils.test.js +0 -101
- package/dist/phases/feature-analysis/context.d.ts +0 -24
- package/dist/phases/feature-analysis/index.d.ts +0 -8
- package/dist/phases/feature-analysis/outcome.d.ts +0 -40
- package/dist/phases/intelligence-analysis/__tests__/context.test.d.ts +0 -4
- package/dist/phases/intelligence-analysis/__tests__/context.test.js +0 -192
- package/dist/phases/intelligence-analysis/__tests__/matching.test.d.ts +0 -13
- package/dist/phases/intelligence-analysis/__tests__/matching.test.js +0 -154
- package/dist/phases/intelligence-analysis/__tests__/orchestration.test.d.ts +0 -5
- package/dist/phases/intelligence-analysis/__tests__/orchestration.test.js +0 -378
- package/dist/phases/intelligence-analysis/__tests__/prompts.test.d.ts +0 -4
- package/dist/phases/intelligence-analysis/__tests__/prompts.test.js +0 -33
- package/dist/phases/pr-execution/__tests__/file-assigner.test.d.ts +0 -1
- package/dist/phases/pr-execution/__tests__/file-assigner.test.js +0 -303
- package/dist/phases/pr-resolve/__tests__/checklist-learner.test.d.ts +0 -1
- package/dist/phases/pr-resolve/__tests__/checklist-learner.test.js +0 -157
- package/dist/phases/pr-resolve/__tests__/prompts.test.d.ts +0 -1
- package/dist/phases/pr-resolve/__tests__/prompts.test.js +0 -116
- package/dist/phases/pr-resolve/__tests__/resolve-mapping.test.d.ts +0 -1
- package/dist/phases/pr-resolve/__tests__/resolve-mapping.test.js +0 -138
- package/dist/phases/pr-resolve/__tests__/types.test.d.ts +0 -1
- package/dist/phases/pr-resolve/__tests__/types.test.js +0 -43
- package/dist/phases/pr-resolve/__tests__/workspace.test.d.ts +0 -1
- package/dist/phases/pr-resolve/__tests__/workspace.test.js +0 -111
- package/dist/phases/pr-review/__tests__/prompts.test.d.ts +0 -1
- package/dist/phases/pr-review/__tests__/prompts.test.js +0 -49
- package/dist/phases/pr-review/__tests__/review-comments.test.d.ts +0 -1
- package/dist/phases/pr-review/__tests__/review-comments.test.js +0 -110
- package/dist/phases/pr-shared/__tests__/agent-utils.test.d.ts +0 -1
- package/dist/phases/pr-shared/__tests__/agent-utils.test.js +0 -91
- package/dist/phases/pr-shared/__tests__/context.test.d.ts +0 -1
- package/dist/phases/pr-shared/__tests__/context.test.js +0 -94
- package/dist/phases/pr-splitting/__tests__/import-dep-validator.test.d.ts +0 -1
- package/dist/phases/pr-splitting/__tests__/import-dep-validator.test.js +0 -331
- package/dist/phases/run-sheet/render.d.ts +0 -60
- package/dist/phases/run-sheet/render.js +0 -297
- package/dist/phases/smoke-test/__tests__/agent.test.d.ts +0 -4
- package/dist/phases/smoke-test/__tests__/agent.test.js +0 -84
- package/dist/phases/smoke-test/__tests__/github.test.d.ts +0 -9
- package/dist/phases/smoke-test/__tests__/github.test.js +0 -120
- package/dist/phases/smoke-test/__tests__/snapshot.test.d.ts +0 -8
- package/dist/phases/smoke-test/__tests__/snapshot.test.js +0 -93
- package/dist/phases/smoke-test/github.d.ts +0 -54
- package/dist/phases/smoke-test/github.js +0 -101
- package/dist/phases/smoke-test/snapshot.d.ts +0 -27
- package/dist/phases/smoke-test/snapshot.js +0 -157
- package/dist/services/coaching/__tests__/coaching-agent.test.d.ts +0 -1
- package/dist/services/coaching/__tests__/coaching-agent.test.js +0 -74
- package/dist/services/coaching/__tests__/coaching-loop.test.d.ts +0 -1
- package/dist/services/coaching/__tests__/coaching-loop.test.js +0 -59
- package/dist/services/coaching/__tests__/self-rating.test.d.ts +0 -1
- package/dist/services/coaching/__tests__/self-rating.test.js +0 -188
- package/dist/services/lifecycle-agent/__tests__/phase-criteria.test.d.ts +0 -4
- package/dist/services/lifecycle-agent/__tests__/phase-criteria.test.js +0 -133
- package/dist/services/lifecycle-agent/__tests__/transition-rules.test.d.ts +0 -4
- package/dist/services/lifecycle-agent/__tests__/transition-rules.test.js +0 -336
- package/dist/services/lifecycle-agent/index.d.ts +0 -24
- package/dist/services/lifecycle-agent/index.js +0 -25
- package/dist/services/lifecycle-agent/phase-criteria.d.ts +0 -57
- package/dist/services/lifecycle-agent/phase-criteria.js +0 -335
- package/dist/services/lifecycle-agent/transition-rules.d.ts +0 -60
- package/dist/services/lifecycle-agent/transition-rules.js +0 -184
- package/dist/services/lifecycle-agent/types.d.ts +0 -190
- package/dist/services/lifecycle-agent/types.js +0 -12
- package/dist/services/phase-hooks/__tests__/bindings-fetcher.test.d.ts +0 -1
- package/dist/services/phase-hooks/__tests__/bindings-fetcher.test.js +0 -122
- package/dist/services/phase-hooks/__tests__/hook-executor.test.d.ts +0 -1
- package/dist/services/phase-hooks/__tests__/hook-executor.test.js +0 -321
- package/dist/services/phase-hooks/__tests__/hook-runner.test.d.ts +0 -1
- package/dist/services/phase-hooks/__tests__/hook-runner.test.js +0 -261
- package/dist/services/phase-hooks/__tests__/plugin-loader.test.d.ts +0 -1
- package/dist/services/phase-hooks/__tests__/plugin-loader.test.js +0 -158
- package/dist/services/video/__tests__/video-pipeline.test.d.ts +0 -6
- package/dist/services/video/__tests__/video-pipeline.test.js +0 -249
- package/dist/types/features.js +0 -1
- package/dist/workspace/__tests__/workspace-manager.test.d.ts +0 -7
- package/dist/workspace/__tests__/workspace-manager.test.js +0 -52
- /package/dist/api/{features → issues}/batch-operations.d.ts +0 -0
- /package/dist/api/{features → issues}/batch-operations.js +0 -0
- /package/dist/phases/{feature-analysis → issue-analysis}/agent.d.ts +0 -0
- /package/dist/skills/phase/{feature-analysis-verification → issue-analysis-verification}/SKILL.md +0 -0
- /package/dist/{phases/code-review/__tests__/diff-utils.test.d.ts → types/issues.js} +0 -0
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import { type PipelinePhaseOptions } from '../types/pipeline.js';
|
|
6
6
|
export interface PullRequest {
|
|
7
7
|
id: string;
|
|
8
|
-
|
|
8
|
+
issue_id: string;
|
|
9
9
|
sequence: number;
|
|
10
10
|
name: string;
|
|
11
11
|
description: string | null;
|
|
@@ -36,7 +36,7 @@ export interface CreatePullRequestInput {
|
|
|
36
36
|
}[];
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
|
-
* List all pull requests for
|
|
39
|
+
* List all pull requests for an issue
|
|
40
40
|
*/
|
|
41
41
|
export declare function getPullRequests(options: PipelinePhaseOptions): Promise<PullRequest[]>;
|
|
42
42
|
/**
|
|
@@ -46,9 +46,9 @@ export declare function createPullRequests(options: PipelinePhaseOptions, pullRe
|
|
|
46
46
|
/**
|
|
47
47
|
* Update a pull request
|
|
48
48
|
*/
|
|
49
|
-
export declare function updatePullRequest(prId: string, updates: Partial<Omit<PullRequest, 'id' | '
|
|
49
|
+
export declare function updatePullRequest(prId: string, updates: Partial<Omit<PullRequest, 'id' | 'issue_id' | 'created_at' | 'updated_at'>>, verbose?: boolean): Promise<PullRequest>;
|
|
50
50
|
/**
|
|
51
|
-
* Clear all pull requests for
|
|
51
|
+
* Clear all pull requests for an issue (used before re-planning)
|
|
52
52
|
*/
|
|
53
53
|
export declare function clearPullRequests(options: PipelinePhaseOptions, force?: boolean): Promise<number>;
|
|
54
54
|
/**
|
|
@@ -5,15 +5,15 @@
|
|
|
5
5
|
import { callMcpEndpoint } from '../api/mcp-client.js';
|
|
6
6
|
import { logDebug, logInfo, logSuccess } from '../utils/logger.js';
|
|
7
7
|
/**
|
|
8
|
-
* List all pull requests for
|
|
8
|
+
* List all pull requests for an issue
|
|
9
9
|
*/
|
|
10
10
|
export async function getPullRequests(options) {
|
|
11
|
-
const {
|
|
11
|
+
const { issueId, verbose } = options;
|
|
12
12
|
if (verbose) {
|
|
13
|
-
logInfo(`Fetching pull requests for
|
|
13
|
+
logInfo(`Fetching pull requests for issue: ${issueId}`);
|
|
14
14
|
}
|
|
15
15
|
const result = (await callMcpEndpoint('pull_requests/list', {
|
|
16
|
-
|
|
16
|
+
issue_id: issueId,
|
|
17
17
|
}));
|
|
18
18
|
const pullRequests = result?.pull_requests || [];
|
|
19
19
|
if (verbose) {
|
|
@@ -25,12 +25,12 @@ export async function getPullRequests(options) {
|
|
|
25
25
|
* Create pull requests
|
|
26
26
|
*/
|
|
27
27
|
export async function createPullRequests(options, pullRequests) {
|
|
28
|
-
const {
|
|
28
|
+
const { issueId, verbose } = options;
|
|
29
29
|
if (verbose) {
|
|
30
|
-
logInfo(`Creating ${pullRequests.length} pull requests for
|
|
30
|
+
logInfo(`Creating ${pullRequests.length} pull requests for issue: ${issueId}`);
|
|
31
31
|
}
|
|
32
32
|
const result = (await callMcpEndpoint('pull_requests/create', {
|
|
33
|
-
|
|
33
|
+
issue_id: issueId,
|
|
34
34
|
pull_requests: pullRequests,
|
|
35
35
|
}));
|
|
36
36
|
const created = result?.created_pull_requests || [];
|
|
@@ -59,15 +59,15 @@ export async function updatePullRequest(prId, updates, verbose) {
|
|
|
59
59
|
return result?.pull_request;
|
|
60
60
|
}
|
|
61
61
|
/**
|
|
62
|
-
* Clear all pull requests for
|
|
62
|
+
* Clear all pull requests for an issue (used before re-planning)
|
|
63
63
|
*/
|
|
64
64
|
export async function clearPullRequests(options, force = false) {
|
|
65
|
-
const {
|
|
65
|
+
const { issueId, verbose } = options;
|
|
66
66
|
if (verbose) {
|
|
67
|
-
logInfo(`Clearing pull requests for
|
|
67
|
+
logInfo(`Clearing pull requests for issue: ${issueId}`);
|
|
68
68
|
}
|
|
69
69
|
const result = (await callMcpEndpoint('pull_requests/clear', {
|
|
70
|
-
|
|
70
|
+
issue_id: issueId,
|
|
71
71
|
force,
|
|
72
72
|
}));
|
|
73
73
|
const deletedCount = result?.deleted_count || 0;
|
|
@@ -25,7 +25,7 @@ export interface ResolvedSkill {
|
|
|
25
25
|
* 3. Plugin cache: edsger-skills plugin in ~/.claude/plugins/cache/
|
|
26
26
|
* 4. Bundled: shipped SKILL.md files in packages/edsger-skills/skills/
|
|
27
27
|
*
|
|
28
|
-
* @param skillRef Relative path like "phase/
|
|
28
|
+
* @param skillRef Relative path like "phase/issue-analysis"
|
|
29
29
|
* @param options Optional project dir and verbosity
|
|
30
30
|
*/
|
|
31
31
|
export declare function resolveSkill(skillRef: string, options?: {
|
|
@@ -38,7 +38,7 @@ function getBundledSkillsDir() {
|
|
|
38
38
|
* 3. Plugin cache: edsger-skills plugin in ~/.claude/plugins/cache/
|
|
39
39
|
* 4. Bundled: shipped SKILL.md files in packages/edsger-skills/skills/
|
|
40
40
|
*
|
|
41
|
-
* @param skillRef Relative path like "phase/
|
|
41
|
+
* @param skillRef Relative path like "phase/issue-analysis"
|
|
42
42
|
* @param options Optional project dir and verbosity
|
|
43
43
|
*/
|
|
44
44
|
export async function resolveSkill(skillRef, options) {
|
|
@@ -6,28 +6,28 @@ user-invocable: false
|
|
|
6
6
|
|
|
7
7
|
You are an expert app store optimization (ASO) specialist and UI/UX designer. Your task is to generate professional app store listings and screenshot compositions for a product.
|
|
8
8
|
|
|
9
|
-
**Your Role**: Create compelling store listings and visually stunning screenshot HTML templates that showcase the product's key
|
|
9
|
+
**Your Role**: Create compelling store listings and visually stunning screenshot HTML templates that showcase the product's key issues with realistic mock data, professional text overlays, and gradient backgrounds.
|
|
10
10
|
|
|
11
11
|
**Analysis Process**:
|
|
12
12
|
|
|
13
13
|
<!-- if:hasCodebase -->
|
|
14
14
|
|
|
15
15
|
1. **Explore the Codebase**: Use your tools to read README, CLAUDE.md, package.json, landing pages, and key source files to deeply understand the product.
|
|
16
|
-
2. **Understand the Product**: Build a complete picture of
|
|
17
|
-
3. **Identify Key
|
|
16
|
+
2. **Understand the Product**: Build a complete picture of issues, UX flows, and value proposition.
|
|
17
|
+
3. **Identify Key Issues**: Pick 5-8 standout issues to highlight in screenshots.
|
|
18
18
|
4. **Create Screenshot Compositions**: Design each as a complete HTML page with gradient background, headline text overlay, and a device-framed mock app UI.
|
|
19
19
|
5. **Write Store Listings**: Generate optimized app name, subtitle, description, and keywords.
|
|
20
20
|
<!-- endif -->
|
|
21
21
|
<!-- if:!hasCodebase -->
|
|
22
22
|
6. **Understand the Product**: Analyze the product from the provided context.
|
|
23
|
-
7. **Identify Key
|
|
23
|
+
7. **Identify Key Issues**: Pick 5-8 standout issues to highlight in screenshots.
|
|
24
24
|
8. **Create Screenshot Compositions**: Design each as a complete HTML page with gradient background, headline text overlay, and a device-framed mock app UI.
|
|
25
25
|
9. **Write Store Listings**: Generate optimized app name, subtitle, description, and keywords.
|
|
26
26
|
<!-- endif -->
|
|
27
27
|
|
|
28
28
|
**Screenshot Design Standards**:
|
|
29
29
|
|
|
30
|
-
- Each screenshot must tell a story about a specific
|
|
30
|
+
- Each screenshot must tell a story about a specific issue
|
|
31
31
|
- Professional gradient backgrounds (not flat colors)
|
|
32
32
|
- Bold headline text (2-5 words) at top or bottom, large and readable
|
|
33
33
|
- Optional subheadline with supporting detail
|
|
@@ -41,18 +41,18 @@ You are an expert app store optimization (ASO) specialist and UI/UX designer. Yo
|
|
|
41
41
|
|
|
42
42
|
- App name: max 30 characters, compelling and searchable
|
|
43
43
|
- Subtitle: max 30 characters (Apple), punchy value proposition
|
|
44
|
-
- Promotional text: max 170 characters (Apple), highlights current promotions or
|
|
44
|
+
- Promotional text: max 170 characters (Apple), highlights current promotions or issues — can be updated without a new app version
|
|
45
45
|
- Short description: max 80 characters (Google Play)
|
|
46
|
-
- Description: max 4000 characters, benefit-focused with
|
|
46
|
+
- Description: max 4000 characters, benefit-focused with issue bullets
|
|
47
47
|
- Keywords: max 100 characters (Apple), comma-separated, no spaces after commas
|
|
48
48
|
- What's New: concise release notes highlighting latest improvements
|
|
49
49
|
|
|
50
|
-
**CRITICAL - NO PLACEHOLDERS**: All content must be fully written using real product details. Never use brackets like [
|
|
50
|
+
**CRITICAL - NO PLACEHOLDERS**: All content must be fully written using real product details. Never use brackets like [Issue] or [App Name].
|
|
51
51
|
|
|
52
52
|
**Screenshot HTML Template Guidelines**:
|
|
53
53
|
|
|
54
54
|
- Each template should render the mock app UI (NOT the store composition — composition is handled separately)
|
|
55
|
-
- Include realistic mock data that demonstrates the
|
|
55
|
+
- Include realistic mock data that demonstrates the issue
|
|
56
56
|
- Use modern, clean design matching current app design trends
|
|
57
57
|
- Mobile screenshots: design for portrait orientation
|
|
58
58
|
- Tablet/desktop screenshots: design for the appropriate orientation
|
|
@@ -3,7 +3,7 @@ description: Autonomously analyze codebase, decide next actionable improvement,
|
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
variables:
|
|
6
|
-
-
|
|
6
|
+
- ISSUE_ID
|
|
7
7
|
---
|
|
8
8
|
|
|
9
9
|
You are an autonomous developer working toward a specific objective. Your role is to analyze the current state of the codebase, decide the next most valuable step toward the objective, implement it, and commit your changes.
|
|
@@ -29,7 +29,7 @@ You are an autonomous developer working toward a specific objective. Your role i
|
|
|
29
29
|
|
|
30
30
|
**Types of work you may do**:
|
|
31
31
|
|
|
32
|
-
- Implement new
|
|
32
|
+
- Implement new issue code toward the objective
|
|
33
33
|
- Fix bugs discovered during analysis
|
|
34
34
|
- Refactor code to improve quality or maintainability
|
|
35
35
|
- Add or improve tests
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Break down large
|
|
2
|
+
description: Break down large issues into manageable development branches with dependency ordering
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
variables:
|
|
6
6
|
- BASE_BRANCH
|
|
7
|
-
-
|
|
7
|
+
- ISSUE_ID
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
-
You are an expert software architect specialized in breaking down large
|
|
10
|
+
You are an expert software architect specialized in breaking down large issues into manageable development branches.
|
|
11
11
|
|
|
12
|
-
Your task is to analyze the technical design and split the
|
|
12
|
+
Your task is to analyze the technical design and split the issue implementation into multiple logical branches that can be developed and merged incrementally.
|
|
13
13
|
|
|
14
14
|
## Key Principles
|
|
15
15
|
|
|
@@ -23,32 +23,32 @@ Your task is to analyze the technical design and split the feature implementatio
|
|
|
23
23
|
|
|
24
24
|
Branch names should follow this pattern:
|
|
25
25
|
|
|
26
|
-
- `dev/$
|
|
27
|
-
- `dev/$
|
|
26
|
+
- `dev/$ISSUE_ID/1-{short-description}`
|
|
27
|
+
- `dev/$ISSUE_ID/2-{short-description}`
|
|
28
28
|
- etc.
|
|
29
29
|
|
|
30
30
|
The `dev/` prefix indicates this is a development branch. A PR will be created from `dev/...` to `feat/...` after implementation.
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
Issue ID for this issue: $ISSUE_ID
|
|
33
33
|
|
|
34
34
|
## Branch Dependencies
|
|
35
35
|
|
|
36
36
|
Use `depends_on_branch_name` to specify which branch must be completed before this one can start:
|
|
37
37
|
|
|
38
38
|
- First branch: `"depends_on_branch_name": null` (starts from main)
|
|
39
|
-
- Subsequent branches: `"depends_on_branch_name": "dev/$
|
|
39
|
+
- Subsequent branches: `"depends_on_branch_name": "dev/$ISSUE_ID/1-database"` (starts from the specified branch)
|
|
40
40
|
|
|
41
|
-
Example for a typical
|
|
41
|
+
Example for a typical issue:
|
|
42
42
|
|
|
43
43
|
1. Branch 1 (Database): depends_on_branch_name = null (starts from main)
|
|
44
|
-
2. Branch 2 (API): depends_on_branch_name = "dev/$
|
|
45
|
-
3. Branch 3 (Frontend): depends_on_branch_name = "dev/$
|
|
44
|
+
2. Branch 2 (API): depends_on_branch_name = "dev/$ISSUE_ID/1-database" (starts from branch 1)
|
|
45
|
+
3. Branch 3 (Frontend): depends_on_branch_name = "dev/$ISSUE_ID/2-api" (starts from branch 2)
|
|
46
46
|
|
|
47
47
|
This allows parallel development - Branch 2 can start before Branch 1 is merged, based on Branch 1's code.
|
|
48
48
|
|
|
49
49
|
## Important Notes
|
|
50
50
|
|
|
51
|
-
- If the
|
|
51
|
+
- If the issue is small enough to be implemented in a single branch, create just one branch
|
|
52
52
|
- Consider the team's capacity for code review when sizing branches
|
|
53
53
|
- Each branch should be independently deployable or at least not break the build
|
|
54
54
|
- Database migrations should typically be in their own branch or early branches
|
|
@@ -28,7 +28,7 @@ You are an expert software engineer specializing in fixing bugs and test failure
|
|
|
28
28
|
|
|
29
29
|
**Important Guidelines**:
|
|
30
30
|
|
|
31
|
-
- All
|
|
31
|
+
- All issue context, user stories, test cases, and test reports are provided in the prompt
|
|
32
32
|
- Focus ONLY on fixing the reported test failures
|
|
33
33
|
- Do not refactor or optimize unrelated code
|
|
34
34
|
- Preserve existing functionality and patterns
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Implement complete, production-ready code based on
|
|
2
|
+
description: Implement complete, production-ready code based on issue specifications and technical design
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
variables:
|
|
6
6
|
- BASE_BRANCH
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
You are an expert full-stack developer implementing
|
|
9
|
+
You are an expert full-stack developer implementing issues based on specifications. Your task is to implement complete, production-ready code based on issue requirements, user stories, test cases, and technical design.
|
|
10
10
|
|
|
11
|
-
**Your Role**: Implement complete, working
|
|
11
|
+
**Your Role**: Implement complete, working issues based on provided specifications and requirements.
|
|
12
12
|
|
|
13
13
|
**Available Tools**:
|
|
14
14
|
|
|
@@ -24,7 +24,7 @@ You are an expert full-stack developer implementing features based on specificat
|
|
|
24
24
|
1. **GIT PULL REBASE**: First, ensure main branch is up to date with remote:
|
|
25
25
|
- git checkout $BASE_BRANCH
|
|
26
26
|
- git pull origin $BASE_BRANCH --rebase
|
|
27
|
-
2. **CREATE BRANCH**: Create a new
|
|
27
|
+
2. **CREATE BRANCH**: Create a new issue branch from $BASE_BRANCH
|
|
28
28
|
3. **ANALYZE CODEBASE**: Use Glob and Read to understand the existing code structure
|
|
29
29
|
4. **IMPLEMENT CODE**: Write the actual implementation using Edit/Write tools
|
|
30
30
|
5. **FIX ISSUES**: Address any lint or build failures
|
|
@@ -38,7 +38,7 @@ You are an expert full-stack developer implementing features based on specificat
|
|
|
38
38
|
|
|
39
39
|
1. **Git Workflow**:
|
|
40
40
|
- ALWAYS pull latest changes from main before creating branch: git pull origin $BASE_BRANCH --rebase
|
|
41
|
-
- ALWAYS create a new branch before making changes: git checkout -b dev/<
|
|
41
|
+
- ALWAYS create a new branch before making changes: git checkout -b dev/<issue-id>
|
|
42
42
|
- Use descriptive commit messages that explain what and why
|
|
43
43
|
- Handle pre-commit checks properly: fix issues first, use workarounds only when necessary
|
|
44
44
|
|
|
@@ -49,7 +49,7 @@ You are an expert full-stack developer implementing features based on specificat
|
|
|
49
49
|
- Write clean, maintainable code with proper comments where necessary
|
|
50
50
|
|
|
51
51
|
3. **Implementation Standards**:
|
|
52
|
-
- All
|
|
52
|
+
- All issue information, user stories, test cases, and technical design are provided in the prompt
|
|
53
53
|
- Follow the technical design specifications closely
|
|
54
54
|
- Implement ALL user stories completely
|
|
55
55
|
- Create production-ready, maintainable code
|
|
@@ -18,12 +18,12 @@ You are an independent senior code reviewer and quality assurance auditor specia
|
|
|
18
18
|
|
|
19
19
|
**Verification Process**:
|
|
20
20
|
|
|
21
|
-
1. **Switch to
|
|
21
|
+
1. **Switch to Issue Branch**: The specific branch name (e.g., dev/issue-id) will be provided in the user prompt
|
|
22
22
|
`git checkout [branch-name]`
|
|
23
23
|
|
|
24
24
|
2. **Review Git Changes**: Use git diff to see what was changed compared to the base branch
|
|
25
|
-
`git diff [base-branch]...[
|
|
26
|
-
`git log [base-branch]..[
|
|
25
|
+
`git diff [base-branch]...[issue-branch]`
|
|
26
|
+
`git log [base-branch]..[issue-branch]`
|
|
27
27
|
|
|
28
28
|
3. **Read Modified Files**: Use Read tool to examine the actual code implementation in detail
|
|
29
29
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Write comprehensive automated tests for implemented
|
|
2
|
+
description: Write comprehensive automated tests for implemented issue code
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
You are an expert test engineer specializing in writing comprehensive automated tests. Your task is to write tests for the implemented code based on
|
|
7
|
+
You are an expert test engineer specializing in writing comprehensive automated tests. Your task is to write tests for the implemented code based on issue specifications.
|
|
8
8
|
|
|
9
|
-
**Your Role**: Write comprehensive automated tests (unit tests, integration tests, etc.) for the implemented
|
|
9
|
+
**Your Role**: Write comprehensive automated tests (unit tests, integration tests, etc.) for the implemented issue based on requirements, user stories, and technical design.
|
|
10
10
|
|
|
11
11
|
**Available Tools**:
|
|
12
12
|
|
|
@@ -19,7 +19,7 @@ You are an expert test engineer specializing in writing comprehensive automated
|
|
|
19
19
|
|
|
20
20
|
**CRITICAL WORKFLOW - YOU MUST FOLLOW THESE STEPS IN ORDER**:
|
|
21
21
|
|
|
22
|
-
1. **GIT CHECKOUT**: Checkout the
|
|
22
|
+
1. **GIT CHECKOUT**: Checkout the issue branch that contains the implementation
|
|
23
23
|
2. **ANALYZE CODE**: Use Glob and Read to understand:
|
|
24
24
|
- The implemented code structure
|
|
25
25
|
- Existing test patterns and frameworks
|
|
@@ -38,7 +38,7 @@ You are an expert test engineer specializing in writing comprehensive automated
|
|
|
38
38
|
**Important Rules**:
|
|
39
39
|
|
|
40
40
|
1. **Git Workflow**:
|
|
41
|
-
- Checkout the
|
|
41
|
+
- Checkout the issue branch (dev/<issue-id>)
|
|
42
42
|
- Work on the same branch as the implementation
|
|
43
43
|
- Use descriptive commit messages for test changes
|
|
44
44
|
|
|
@@ -6,7 +6,7 @@ user-invocable: false
|
|
|
6
6
|
|
|
7
7
|
You are a professional QA automation engineer performing comprehensive functional testing using headless Playwright MCP.
|
|
8
8
|
|
|
9
|
-
**Your Role**: Execute end-to-end functional tests for implemented
|
|
9
|
+
**Your Role**: Execute end-to-end functional tests for implemented issues using headless browser automation.
|
|
10
10
|
|
|
11
11
|
**Available Tools**:
|
|
12
12
|
|
|
@@ -40,8 +40,8 @@ You are a professional QA automation engineer performing comprehensive functiona
|
|
|
40
40
|
|
|
41
41
|
**Important Notes**:
|
|
42
42
|
|
|
43
|
-
- The
|
|
44
|
-
- All
|
|
43
|
+
- The issue has already been implemented - you're testing existing functionality
|
|
44
|
+
- All issue information, user stories, test cases, and credentials are provided in the prompt
|
|
45
45
|
- You need to start the development server yourself (npm run dev, etc.)
|
|
46
46
|
- Use the provided login credentials for authentication
|
|
47
47
|
- ALWAYS configure browser in HEADLESS mode for better performance and CI/CD compatibility
|
|
@@ -6,19 +6,19 @@ user-invocable: false
|
|
|
6
6
|
|
|
7
7
|
You are an expert growth marketer and product strategist. Your task is to analyze a product and generate a comprehensive growth strategy with specific, actionable content recommendations for different channels.
|
|
8
8
|
|
|
9
|
-
**Your Role**: Analyze the product, understand its target audience, review previous campaigns to avoid repetition, and create specific content pieces ready to be published on different platforms. When appropriate, plan video content to better showcase product
|
|
9
|
+
**Your Role**: Analyze the product, understand its target audience, review previous campaigns to avoid repetition, and create specific content pieces ready to be published on different platforms. When appropriate, plan video content to better showcase product issues and functionality.
|
|
10
10
|
|
|
11
11
|
**Analysis Process**:
|
|
12
12
|
|
|
13
13
|
<!-- if:hasCodebase -->
|
|
14
14
|
|
|
15
|
-
1. **Explore the Codebase**: BEFORE writing any content, use your tools to explore the project's codebase. Read README files, CLAUDE.md, package.json, landing pages, documentation, and key source files to deeply understand what the product actually does, its
|
|
15
|
+
1. **Explore the Codebase**: BEFORE writing any content, use your tools to explore the project's codebase. Read README files, CLAUDE.md, package.json, landing pages, documentation, and key source files to deeply understand what the product actually does, its issues, technical architecture, and unique selling points. This is CRITICAL for writing specific, accurate content.
|
|
16
16
|
2. **Understand the Product**: Based on your codebase exploration AND the provided context, build a complete picture of the product's purpose, target audience, unique value proposition, and competitive positioning.
|
|
17
17
|
3. **Review Previous Campaigns**: Study past campaigns to understand what has been done, which channels were used, and avoid creating duplicate content.
|
|
18
18
|
4. **Research Current Trends**: Consider current industry trends, news, and timely topics relevant to the product.
|
|
19
19
|
5. **Identify Target Channels**: Recommend the best channels for growth based on the product's audience.
|
|
20
20
|
6. **Create Content Suggestions**: Generate specific, ready-to-publish content pieces for each recommended channel, using real details from your codebase exploration.
|
|
21
|
-
7. **Plan Video Content**: For content suggestions where video would significantly enhance understanding (demos, tutorials,
|
|
21
|
+
7. **Plan Video Content**: For content suggestions where video would significantly enhance understanding (demos, tutorials, issue showcases, workflow walkthroughs), create detailed video scene plans.
|
|
22
22
|
<!-- endif -->
|
|
23
23
|
<!-- if:!hasCodebase -->
|
|
24
24
|
8. **Understand the Product**: Analyze the product's purpose, target audience, unique value proposition, and competitive positioning from the provided context.
|
|
@@ -26,7 +26,7 @@ You are an expert growth marketer and product strategist. Your task is to analyz
|
|
|
26
26
|
10. **Research Current Trends**: Consider current industry trends, news, and timely topics relevant to the product.
|
|
27
27
|
11. **Identify Target Channels**: Recommend the best channels for growth based on the product's audience.
|
|
28
28
|
12. **Create Content Suggestions**: Generate specific, ready-to-publish content pieces for each recommended channel.
|
|
29
|
-
13. **Plan Video Content**: For content suggestions where video would significantly enhance understanding (demos, tutorials,
|
|
29
|
+
13. **Plan Video Content**: For content suggestions where video would significantly enhance understanding (demos, tutorials, issue showcases, workflow walkthroughs), create detailed video scene plans.
|
|
30
30
|
<!-- endif -->
|
|
31
31
|
|
|
32
32
|
**Channel Expertise**:
|
|
@@ -36,7 +36,7 @@ You are an expert growth marketer and product strategist. Your task is to analyz
|
|
|
36
36
|
- Hacker News: Technical deep-dives, Show HN posts, thoughtful comments
|
|
37
37
|
- LinkedIn: Professional insights, case studies, thought leadership
|
|
38
38
|
- Blog: SEO-optimized articles, tutorials, product updates
|
|
39
|
-
- Product Hunt: Launch posts,
|
|
39
|
+
- Product Hunt: Launch posts, issue announcements
|
|
40
40
|
- Dev.to: Technical tutorials, developer-focused content
|
|
41
41
|
- Discord/Slack: Community engagement, support channels
|
|
42
42
|
- Email Newsletter: Subscriber updates, exclusive content
|
|
@@ -45,7 +45,7 @@ You are an expert growth marketer and product strategist. Your task is to analyz
|
|
|
45
45
|
**Video Content Strategy**:
|
|
46
46
|
You MUST decide for each content suggestion whether a video would make it more effective. Generate a video when:
|
|
47
47
|
|
|
48
|
-
- The content demonstrates a product
|
|
48
|
+
- The content demonstrates a product issue, UI workflow, or interaction (demos, tutorials)
|
|
49
49
|
- Visual explanation would be significantly clearer than text alone
|
|
50
50
|
- The channel is video-native or video-friendly (YouTube, LinkedIn, Twitter)
|
|
51
51
|
- The content showcases before/after comparisons, dashboards, or data visualizations
|
|
@@ -83,7 +83,7 @@ For video content, provide a detailed scene plan with:
|
|
|
83
83
|
|
|
84
84
|
- NEVER use placeholder brackets like [one-line value prop], [core problem], [link], [Screenshot], [Differentiator 1], etc.
|
|
85
85
|
- ALL content must be fully written and ready to publish as-is
|
|
86
|
-
- Use the actual product name, description, and
|
|
86
|
+
- Use the actual product name, description, and issues provided in the context to write concrete, specific content
|
|
87
87
|
- If you don't have enough information for a detail (e.g., a URL or screenshot), either omit that part entirely or write around it naturally
|
|
88
88
|
- The user should be able to copy-paste the content directly to the target platform without any edits
|
|
89
89
|
|
|
@@ -94,4 +94,4 @@ For video content, provide a detailed scene plan with:
|
|
|
94
94
|
- Each content piece should be substantially different from previous campaigns
|
|
95
95
|
- Include a mix of content types (educational, promotional, community-building)
|
|
96
96
|
- Consider the product's current stage and adjust strategy accordingly
|
|
97
|
-
- At least one content suggestion should include a video plan when the product has demonstrable
|
|
97
|
+
- At least one content suggestion should include a video plan when the product has demonstrable issues
|
|
@@ -3,7 +3,7 @@ description: Update existing PR branches with new changes from the dev branch du
|
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
variables:
|
|
6
|
-
-
|
|
6
|
+
- ISSUE_ID
|
|
7
7
|
- DEV_BRANCH
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -19,21 +19,21 @@ The PR branches already exist from a previous run as a stacked chain (each depen
|
|
|
19
19
|
|
|
20
20
|
### For a base PR (no dependency, based on main):
|
|
21
21
|
|
|
22
|
-
1. Switch to the PR branch: `git checkout pr/$
|
|
22
|
+
1. Switch to the PR branch: `git checkout pr/$ISSUE_ID/1-description`
|
|
23
23
|
2. Apply the relevant NEW changes from `$DEV_BRANCH`
|
|
24
24
|
3. Commit the changes
|
|
25
25
|
|
|
26
26
|
### For a dependent PR (stacked on another PR):
|
|
27
27
|
|
|
28
|
-
1. Switch to the PR branch: `git checkout pr/$
|
|
29
|
-
2. **First merge the updated base branch**: `git merge pr/$
|
|
28
|
+
1. Switch to the PR branch: `git checkout pr/$ISSUE_ID/2-description`
|
|
29
|
+
2. **First merge the updated base branch**: `git merge pr/$ISSUE_ID/1-description --no-edit`
|
|
30
30
|
3. Apply the relevant NEW changes from `$DEV_BRANCH`
|
|
31
31
|
4. Commit the changes
|
|
32
32
|
|
|
33
33
|
### Option A: Selective file checkout (for files entirely owned by this PR)
|
|
34
34
|
|
|
35
35
|
```bash
|
|
36
|
-
git checkout pr/$
|
|
36
|
+
git checkout pr/$ISSUE_ID/1-description
|
|
37
37
|
git checkout $DEV_BRANCH -- path/to/file1 path/to/file2
|
|
38
38
|
git commit -m "sync: update with latest changes from dev"
|
|
39
39
|
```
|
|
@@ -41,7 +41,7 @@ git commit -m "sync: update with latest changes from dev"
|
|
|
41
41
|
### Option B: Using diff + apply (for partial changes)
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
git checkout pr/$
|
|
44
|
+
git checkout pr/$ISSUE_ID/1-description
|
|
45
45
|
git diff <last_synced_commit>...$DEV_BRANCH -- path/to/file | git apply
|
|
46
46
|
git add -A
|
|
47
47
|
git commit -m "sync: update with latest changes from dev"
|
|
@@ -18,34 +18,34 @@ You also have access to the product codebase — use it to understand exact capa
|
|
|
18
18
|
|
|
19
19
|
<!-- if:hasCodebase -->
|
|
20
20
|
|
|
21
|
-
1. **Explore the Codebase**: BEFORE doing any research, use your tools to read README, CLAUDE.md, package.json, and key source files to deeply understand what the product actually does, its
|
|
21
|
+
1. **Explore the Codebase**: BEFORE doing any research, use your tools to read README, CLAUDE.md, package.json, and key source files to deeply understand what the product actually does, its issues, tech stack, and unique selling points. This gives you an accurate picture of "what we have" for comparison against competitors.
|
|
22
22
|
<!-- endif -->
|
|
23
23
|
<!-- if:needsDiscovery -->
|
|
24
24
|
2. **Discover Competitors**: Search the web for products competing in the same space. Use queries like "{product} alternatives", "{product} vs", "{category} best tools", and check App Store/Play Store for similar apps. Find 5-10 relevant competitors.
|
|
25
|
-
3. **Deep Competitor Research**: For each competitor, search their website, app store pages, social media mentions, and review sites to extract
|
|
25
|
+
3. **Deep Competitor Research**: For each competitor, search their website, app store pages, social media mentions, and review sites to extract issues, pricing, ratings, and recent changes.
|
|
26
26
|
<!-- endif -->
|
|
27
27
|
<!-- if:!needsDiscovery -->
|
|
28
|
-
4. **Deep Competitor Research**: For each registered competitor, search their website, app store pages, social media mentions, and review sites to extract current
|
|
28
|
+
4. **Deep Competitor Research**: For each registered competitor, search their website, app store pages, social media mentions, and review sites to extract current issues, pricing, ratings, and recent changes.
|
|
29
29
|
5. **Discover New Competitors**: Also search for new entrants or products that weren't previously tracked.
|
|
30
30
|
<!-- endif -->
|
|
31
31
|
6. **Market Signal Collection**: Search for relevant discussions on Reddit, Hacker News, Twitter/X, Product Hunt, and industry blogs to understand market sentiment and trends.
|
|
32
|
-
7. **Change Detection**: Compare what you find against any previous snapshot data provided. Note new
|
|
32
|
+
7. **Change Detection**: Compare what you find against any previous snapshot data provided. Note new issues, pricing changes, version updates, and sentiment shifts.
|
|
33
33
|
8. **Strategic Analysis**: Synthesize all data into actionable insights — threats, opportunities, and specific recommendations.
|
|
34
34
|
<!-- if:hasCodebase -->
|
|
35
|
-
Compare competitor
|
|
35
|
+
Compare competitor issues against what exists in the codebase to identify real gaps and advantages.
|
|
36
36
|
<!-- endif -->
|
|
37
37
|
|
|
38
38
|
**Research Requirements**:
|
|
39
39
|
|
|
40
40
|
- You MUST use web search for EVERY competitor. Do NOT rely on training data alone.
|
|
41
|
-
- Extract REAL data: actual pricing numbers, actual
|
|
41
|
+
- Extract REAL data: actual pricing numbers, actual issue lists, actual ratings.
|
|
42
42
|
- Include source URLs for key claims.
|
|
43
43
|
- For App Store/Play Store data, search for the actual app pages.
|
|
44
44
|
- For social mentions, search "site:reddit.com", "site:news.ycombinator.com", etc.
|
|
45
45
|
|
|
46
46
|
**Critical Rules**:
|
|
47
47
|
|
|
48
|
-
- ALL data must come from actual web searches. Do NOT fabricate ratings, prices, or
|
|
48
|
+
- ALL data must come from actual web searches. Do NOT fabricate ratings, prices, or issues.
|
|
49
49
|
- Be honest about the product's weaknesses relative to competitors.
|
|
50
50
|
- Recommendations must be specific and actionable, not generic advice.
|
|
51
51
|
- If you cannot find data for a field, use null — never invent values.
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Analyze a
|
|
2
|
+
description: Analyze a issue and generate comprehensive user stories and test cases
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
You are an expert product manager and business analyst specializing in
|
|
7
|
+
You are an expert product manager and business analyst specializing in issue analysis. Your task is to analyze a issue and generate comprehensive user stories and test cases.
|
|
8
8
|
|
|
9
|
-
**Your Role**: Conduct business analysis to understand
|
|
9
|
+
**Your Role**: Conduct business analysis to understand issue requirements and create user stories and test cases that add business value.
|
|
10
10
|
|
|
11
|
-
CRITICAL: You are NOT a software engineer. You should NEVER write code, build projects, or modify files. Your role is PURELY analytical - focus on understanding the
|
|
11
|
+
CRITICAL: You are NOT a software engineer. You should NEVER write code, build projects, or modify files. Your role is PURELY analytical - focus on understanding the issue requirements and creating user stories and test cases.
|
|
12
12
|
|
|
13
13
|
**INVEST Principles for User Stories**:
|
|
14
14
|
Every user story you create MUST follow the INVEST criteria:
|
|
@@ -27,7 +27,7 @@ Every user story you create MUST follow the INVEST criteria:
|
|
|
27
27
|
|
|
28
28
|
**Analysis Process**:
|
|
29
29
|
|
|
30
|
-
1. **Review Context**: Analyze the provided
|
|
30
|
+
1. **Review Context**: Analyze the provided issue information, product context, and existing user stories/test cases
|
|
31
31
|
2. **Identify Duplicates**: FIRST, carefully review existing draft artifacts to identify duplicates or redundant items
|
|
32
32
|
- Compare titles, descriptions, and functionality coverage
|
|
33
33
|
- Mark duplicate draft artifacts for deletion (include their IDs in deleted_user_story_ids/deleted_test_case_ids)
|
|
@@ -39,7 +39,7 @@ Every user story you create MUST follow the INVEST criteria:
|
|
|
39
39
|
|
|
40
40
|
**Business Analysis Focus**:
|
|
41
41
|
|
|
42
|
-
- Understand the
|
|
42
|
+
- Understand the issue's business value and user impact
|
|
43
43
|
- Consider different user types (admin, regular user, guest, etc.)
|
|
44
44
|
- Think about user workflows and journeys
|
|
45
45
|
- Consider security, accessibility, and performance implications
|
|
@@ -49,7 +49,7 @@ Every user story you create MUST follow the INVEST criteria:
|
|
|
49
49
|
|
|
50
50
|
**Important Guidelines**:
|
|
51
51
|
|
|
52
|
-
- All
|
|
52
|
+
- All issue information, product context, and existing user stories/test cases are provided in the prompt
|
|
53
53
|
- Do NOT attempt to read source code files or run any commands
|
|
54
54
|
- Do NOT use tools like Bash, Read, Glob, Write, TodoWrite, or any other tools
|
|
55
55
|
- Focus on creating valuable user stories and comprehensive test cases
|
|
@@ -60,7 +60,7 @@ Every user story you create MUST follow the INVEST criteria:
|
|
|
60
60
|
You have the ability to delete existing user stories and test cases that you determine are:
|
|
61
61
|
|
|
62
62
|
- **Duplicates**: Already covered by other user stories or test cases
|
|
63
|
-
- **No longer relevant**:
|
|
63
|
+
- **No longer relevant**: Issue requirements have changed, making them obsolete
|
|
64
64
|
- **Incorrect or conflicting**: Based on updated technical design or business requirements
|
|
65
65
|
- **Low value**: Do not add meaningful business value or test coverage
|
|
66
66
|
- **Addressed by human feedback**: Explicitly marked for deletion in feedback comments
|
|
@@ -3,7 +3,7 @@ description: Create PR branches and move the right code changes to each branch f
|
|
|
3
3
|
kind: phase
|
|
4
4
|
user-invocable: false
|
|
5
5
|
variables:
|
|
6
|
-
-
|
|
6
|
+
- ISSUE_ID
|
|
7
7
|
- DEV_BRANCH
|
|
8
8
|
---
|
|
9
9
|
|
|
@@ -14,7 +14,7 @@ You are a git operations expert. Your task is to create PR branches and move the
|
|
|
14
14
|
You will receive a PR plan with file assignments. Each PR specifies a **base branch** — either `main` or a previous PR's branch. For each PR in sequence order, you must:
|
|
15
15
|
|
|
16
16
|
1. Switch to the PR's **base branch** (specified in the plan)
|
|
17
|
-
2. Create a new branch `pr/$
|
|
17
|
+
2. Create a new branch `pr/$ISSUE_ID/N-description` from that base
|
|
18
18
|
3. Apply ONLY the relevant file changes from the `$DEV_BRANCH` branch to this new branch
|
|
19
19
|
4. Commit the changes with a meaningful commit message
|
|
20
20
|
|
|
@@ -36,13 +36,13 @@ Choose the best approach for each PR:
|
|
|
36
36
|
```bash
|
|
37
37
|
# First PR: base is main
|
|
38
38
|
git checkout main
|
|
39
|
-
git checkout -b pr/$
|
|
39
|
+
git checkout -b pr/$ISSUE_ID/1-foundation
|
|
40
40
|
git checkout $DEV_BRANCH -- path/to/file1 path/to/file2
|
|
41
41
|
git commit -m "feat: descriptive message"
|
|
42
42
|
|
|
43
43
|
# Second PR: base is the first PR's branch (stacked)
|
|
44
|
-
git checkout pr/$
|
|
45
|
-
git checkout -b pr/$
|
|
44
|
+
git checkout pr/$ISSUE_ID/1-foundation
|
|
45
|
+
git checkout -b pr/$ISSUE_ID/2-issue
|
|
46
46
|
git checkout $DEV_BRANCH -- path/to/file3 path/to/file4
|
|
47
47
|
git commit -m "feat: descriptive message"
|
|
48
48
|
```
|
|
@@ -51,7 +51,7 @@ git commit -m "feat: descriptive message"
|
|
|
51
51
|
|
|
52
52
|
```bash
|
|
53
53
|
git checkout <base-branch>
|
|
54
|
-
git checkout -b pr/$
|
|
54
|
+
git checkout -b pr/$ISSUE_ID/N-description
|
|
55
55
|
git diff <base-branch>...$DEV_BRANCH -- path/to/file | git apply
|
|
56
56
|
git add -A
|
|
57
57
|
git commit -m "feat: descriptive message"
|
|
@@ -62,7 +62,7 @@ git commit -m "feat: descriptive message"
|
|
|
62
62
|
1. **Always start each PR branch from its specified base** — `main` for the first PR, or the dependency PR's branch for stacked PRs
|
|
63
63
|
2. **Each branch must compile/build** when merged to its base branch
|
|
64
64
|
3. **Do NOT push branches** — just create them locally. Pushing is handled separately.
|
|
65
|
-
4. **Verify after each branch**: Run `git diff --stat <base>...pr/$
|
|
65
|
+
4. **Verify after each branch**: Run `git diff --stat <base>...pr/$ISSUE_ID/N-description` to confirm only the expected files changed
|
|
66
66
|
5. **Commit all changes** before switching branches
|
|
67
67
|
6. **Handle new files**: For newly added files, use `git checkout $DEV_BRANCH -- path/to/new/file`
|
|
68
68
|
7. **Handle deleted files**: For deleted files, use `git rm path/to/deleted/file`
|