Problem
When creating a new feature that depends on another in-progress feature (e.g., feature B depends on feature A), the current workflow allows starting implementation of the dependent feature (B) before the prerequisite feature (A) has finished implementation and been merged.
This can lead to:
- Merge conflicts when both features touch overlapping code
- Building on top of unstable/incomplete APIs from the prerequisite feature
- Wasted effort if the prerequisite feature's implementation changes significantly
Expected Behavior
Before starting implementation of a dependent feature, the workflow should:
- Detect feature dependencies — recognize when a feature spec declares a dependency on another feature
- Block implementation start — prevent
/shep-kit:implement on the dependent feature until the prerequisite feature has completed implementation
- Auto-rebase — once the prerequisite feature is merged, automatically rebase the dependent feature's branch on top of it before proceeding with implementation
Proposed Solution
- Add a
depends_on field to the feature spec YAML (e.g., depends_on: [042-feature-a])
- During
/shep-kit:implement, check if all dependencies have been merged to main
- If not, warn the user and suggest waiting or explicitly opting to proceed
- When dependencies are merged, prompt to rebase the dependent feature branch before continuing
Acceptance Criteria
Problem
When creating a new feature that depends on another in-progress feature (e.g., feature B depends on feature A), the current workflow allows starting implementation of the dependent feature (B) before the prerequisite feature (A) has finished implementation and been merged.
This can lead to:
Expected Behavior
Before starting implementation of a dependent feature, the workflow should:
/shep-kit:implementon the dependent feature until the prerequisite feature has completed implementationProposed Solution
depends_onfield to the feature spec YAML (e.g.,depends_on: [042-feature-a])/shep-kit:implement, check if all dependencies have been merged to mainAcceptance Criteria
depends_onfield referencing other spec IDs/shep-kit:implementchecks dependency status before proceeding