close worktree transport and lifecycle contract gaps

This commit is contained in:
kami
2026-07-26 20:44:15 +04:00
parent d32887a91d
commit c3d8271e15
6 changed files with 185 additions and 5 deletions
+15
View File
@@ -92,3 +92,18 @@ func TestLifecycleEventsRequireEvidence(t *testing.T) {
})
}
}
func TestExpectedVersionIsCheckedForEveryWriter(t *testing.T) {
s, err := Open(t.TempDir())
if err != nil {
t.Fatal(err)
}
if err := s.Append(created("create")); err != nil {
t.Fatal(err)
}
p := json.RawMessage(`{"reason":"rotate","expected_version":0}`)
err = s.Append(domain.Event{Type: "TaskReleased", TaskID: "task-1", Version: 2, Payload: p})
if err != domain.ErrConflict {
t.Fatalf("expected CAS conflict, got %v", err)
}
}