Skip to content

Commit bc15dac

Browse files
committed
docs(conductor): Update workflow to use per-phase commits instead of per-task commits
1 parent 2476313 commit bc15dac

1 file changed

Lines changed: 23 additions & 29 deletions

File tree

conductor/workflow.md

Lines changed: 23 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -44,21 +44,14 @@ All tasks follow a strict lifecycle:
4444
- Add dated note explaining the change
4545
- Resume implementation
4646

47-
8. **Commit Code Changes:**
47+
8. **Stage Code Changes:**
4848
- Stage all code changes related to the task.
49-
- Propose a clear, concise commit message e.g, `feat(ui): Create basic HTML structure for calculator`.
50-
- Perform the commit.
49+
- Do NOT commit yet; changes will be committed at the end of the phase.
5150

52-
9. **Include Task Summary in Commit Message:**
53-
- Ensure the commit message body (from Step 8) contains a detailed summary for the completed task. This should include the task name, a summary of changes, a list of all created/modified files, and the core "why" for the change.
54-
55-
10. **Get and Record Task Commit SHA:**
56-
- **Step 10.1: Update Plan:** Read `plan.md`, find the line for the completed task, update its status from `[~]` to `[x]`, and append the first 7 characters of the *just-completed commit's* commit hash.
57-
- **Step 10.2: Write Plan:** Write the updated content back to `plan.md`.
58-
59-
11. **Commit Plan Update:**
60-
- **Action:** Stage the modified `plan.md` file.
61-
- **Action:** Commit this change with a descriptive message (e.g., `conductor(plan): Mark task 'Create user model' as complete`).
51+
9. **Record Task Progress:**
52+
- Read `plan.md`, find the line for the completed task, and update its status from `[~]` to `[x]`.
53+
- Write the updated content back to `plan.md`.
54+
- Stage the modified `plan.md` file.
6255

6356
### Phase Completion Verification and Checkpointing Protocol
6457

@@ -98,22 +91,23 @@ All tasks follow a strict lifecycle:
9891
- After presenting the detailed plan, ask the user for confirmation: "**Does this meet your expectations? Please confirm with yes or provide feedback on what needs to be changed.**"
9992
- **PAUSE** and await the user's response. Do not proceed without an explicit yes or confirmation.
10093
101-
6. **Create Checkpoint Commit:**
102-
- Stage all changes. If no changes occurred in this step, proceed with an empty commit.
103-
- Perform the commit with a clear and concise message (e.g., `conductor(checkpoint): Checkpoint end of Phase X`).
104-
105-
7. **Attach Auditable Verification Report using Git Notes:**
106-
- **Step 7.1: Draft Note Content:** Create a detailed verification report including the automated test command, the manual verification steps, and the user's confirmation.
107-
- **Step 7.2: Attach Note:** Use the `git notes` command and the full commit hash from the previous step to attach the full report to the checkpoint commit.
108-
109-
8. **Get and Record Phase Checkpoint SHA:**
110-
- **Step 8.1: Get Commit Hash:** Obtain the hash of the *just-created checkpoint commit* (`git log -1 --format="%H"`).
111-
- **Step 8.2: Update Plan:** Read `plan.md`, find the heading for the completed phase, and append the first 7 characters of the commit hash in the format `[checkpoint: <sha>]`.
112-
- **Step 8.3: Write Plan:** Write the updated content back to `plan.md`.
113-
114-
9. **Commit Plan Update:**
115-
- **Action:** Stage the modified `plan.md` file.
116-
- **Action:** Commit this change with a descriptive message following the format `conductor(plan): Mark phase '<PHASE NAME>' as complete`.
94+
6. **Create Phase Commit:**
95+
- Stage all remaining changes.
96+
- Perform a single commit for the entire phase.
97+
- The commit message MUST include a detailed summary of all tasks completed in this phase, following the format:
98+
```
99+
feat/fix(<scope>): Checkpoint end of Phase <Phase Name>
100+
101+
Tasks completed:
102+
- Task 1: Summary of changes...
103+
- Task 2: Summary of changes...
104+
```
105+
106+
7. **Record Phase Checkpoint SHA:**
107+
- **Step 7.1: Get Commit Hash:** Obtain the hash of the *just-created phase commit* (`git log -1 --format="%H"`).
108+
- **Step 7.2: Update Plan:** Read `plan.md`, find the heading for the completed phase, and append the first 7 characters of the commit hash in the format `[checkpoint: <sha>]`.
109+
- **Step 7.3: Write Plan:** Write the updated content back to `plan.md`.
110+
- **Step 7.4: Commit Plan Update:** Stage and commit the updated `plan.md` with the message `conductor(plan): Mark phase '<PHASE NAME>' as complete`.
117111
118112
10. **Announce Completion:** Inform the user that the phase is complete and the checkpoint has been created, with the detailed verification report attached as a git note.
119113

0 commit comments

Comments
 (0)