Skip to content

Commit 9a23c2f

Browse files
chore: auto-commit ticket changes before merge
1 parent 3f4b5b3 commit 9a23c2f

File tree

2 files changed

+6
-2
lines changed

2 files changed

+6
-2
lines changed

.tickets/w21-ablv.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ parent: dso-0k2k
3333
← Satisfies: cross-story contract (adversarial review)
3434
- When this story is complete, the reducer's event ordering contract is defined and documented (filename sort with timestamp prefix, deterministic tie-breaking for same-second events)
3535
← Satisfies: cross-story contract (adversarial review)
36+
- When this story is complete, every `ticket` command auto-initializes if `.tickets-tracker/` does not exist — `ticket init` runs silently on first use, making initialization transparent to the user
37+
← Satisfies: "transparent first-use initialization"
38+
- When this story is complete, `ticket init` generates a unique environment ID (UUID) at `.tickets-tracker/.env-id` (gitignored on the tickets branch) that is embedded in every event for cross-environment conflict resolution
39+
← Satisfies: cross-environment identity for Epic 2 conflict resolution
3640
- When this story is complete, unit tests are written and passing for all new logic
3741

3842
## Considerations

.tickets/w21-o72z.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ parent: dso-0k2k
2525

2626
- When this story is complete, `ticket list` compiles all tickets via the reducer and returns their current state
2727
← Satisfies: "ticket list works correctly"
28-
- When this story is complete, `ticket transition` appends a STATUS event and auto-commits
29-
← Satisfies: "ticket transition works correctly"
28+
- When this story is complete, `ticket transition <id> <current_status> <target_status>` requires both current and target status. The command acquires flock, reads actual state, rejects with the actual state if it doesn't match the provided current_status, and only writes the STATUS event if the precondition holds. This ensures agents always prove they know the starting state before changing it.
29+
← Satisfies: "ticket transition works correctly" + optimistic concurrency control
3030
- When this story is complete, `ticket comment` appends a COMMENT event and auto-commits
3131
← Satisfies: "ticket comment works correctly"
3232
- When this story is complete, non-CREATE commands verify the target ticket has a CREATE event and fail fast with a clear error if not

0 commit comments

Comments
 (0)