🔀 Merge chore/unify-task-branching into main
This commit is contained in:
commit
62db7de537
2 files changed
+5
-4
No files matched your search
@@ -42,7 +42,9 @@ Never start a long-lived / blocking process such as `npm run watch`. It runs unt
|
|||||||
|
|
||||||
### Working on tasks
|
### Working on tasks
|
||||||
|
|
||||||
- **Task with subtasks** (a task that has indented children): create the branch with `npm run create:branch -- <prefix>/<desc>`, inferring the prefix from the task content (`feature/…` / `fix/…` / `chore/…`) — do not hand-write `git switch -c`, the command enforces the clean-tree / current-`main` / green-baseline precondition. Work on each subtask with commits, then present a concise handover for the user to review. Use this fixed shape:
|
Every task — with or without subtasks — goes through the complete branching model:
|
||||||
|
|
||||||
|
- Create the branch with `npm run create:branch -- <prefix>/<desc>`, inferring the prefix from the task content (`feature/…` / `fix/…` / `chore/…`) — do not hand-write `git switch -c`, the command enforces the clean-tree / current-`main` / green-baseline precondition. Work with commits (each subtask gets one or more), then present a concise handover for the user to review. Use this fixed shape:
|
||||||
|
|
||||||
```md
|
```md
|
||||||
## Handover — <branch>
|
## Handover — <branch>
|
||||||
@@ -54,9 +56,7 @@ Never start a long-lived / blocking process such as `npm run watch`. It runs unt
|
|||||||
|
|
||||||
Once the user has no further objections, merge back: `npm run create:finish` (on the branch — it merges `--no-ff`, runs `npm run verify`, and deletes the branch). The branching model is documented in [CONTRIBUTING.md § Branching model](./CONTRIBUTING.md#branching-model).
|
Once the user has no further objections, merge back: `npm run create:finish` (on the branch — it merges `--no-ff`, runs `npm run verify`, and deletes the branch). The branching model is documented in [CONTRIBUTING.md § Branching model](./CONTRIBUTING.md#branching-model).
|
||||||
|
|
||||||
- **Leaf task** (no indented children): implement on the current branch and commit.
|
Follow [CONTRIBUTING.md § Testing discipline (type-driven)](./CONTRIBUTING.md#testing-discipline-type-driven) throughout.
|
||||||
|
|
||||||
In both cases, follow [CONTRIBUTING.md § Testing discipline (type-driven)](./CONTRIBUTING.md#testing-discipline-type-driven). Each subtask gets one or more commits.
|
|
||||||
|
|
||||||
## Read these
|
## Read these
|
||||||
|
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
- route every backlog task through the full branching model, dropping the leaf-task exception
|
||||||
- move the `_` fallback to a second argument typed `Exclude<T, keyof handlers>`, so it receives only the unhandled keys, and infer handler returns from short, unannotated handlers
|
- move the `_` fallback to a second argument typed `Exclude<T, keyof handlers>`, so it receives only the unhandled keys, and infer handler returns from short, unannotated handlers
|
||||||
|
|
||||||
## [0.3.0] - 2026-09-18
|
## [0.3.0] - 2026-09-18
|
||||||
|
|||||||
Reference in new issue
Block a user