Skip to content

Commit 9e25f84

Browse files
committed
chore(task): align persistence checks with cleanup rebase
1 parent 5e7cc47 commit 9e25f84

2 files changed

Lines changed: 7 additions & 7 deletions

File tree

‎docs/architecture/task-lifecycle-model.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pnpm lifecycle:model-check
88

99
The check runs in the `compile` CI job after type checking. It fails if it finds an invariant violation, a modeled action becomes unreachable, a named semantic landmark disappears, or exploration exceeds its declared state budget. A violation includes the shortest breadth-first event trace, every intermediate state, and the active bounds so the sequence can be replayed as a focused regression test. The command generates no checked-in artifacts; its reports and counterexamples are written to standard output.
1010

11-
`pnpm lifecycle:model-check` preserves the task lifecycle and shared-store checkers with their original state spaces, actions, invariants, landmarks, and reports, then appends the completion persistence explorer to the same command and output stream.
11+
`pnpm lifecycle:model-check` preserves the task lifecycle, shared-store, and cleanup-protocol checkers with their original state spaces, actions, invariants, landmarks, and reports, then appends the completion persistence explorer to the same command and output stream.
1212

1313
## Why an executable TypeScript model
1414

‎src/core/task/__tests__/Task.persistence.spec.ts‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,7 @@ describe("Task persistence", () => {
431431
await getTaskPersistenceAccess(task).addToApiConversationHistory({ role: "assistant", content: "done" })
432432

433433
await expect(task.waitForCurrentAssistantMessagePersistence()).resolves.toBe(true)
434-
task.dispose()
434+
void task.dispose()
435435
await expect(task.waitForCurrentAssistantMessagePersistence()).resolves.toBe(false)
436436
})
437437

@@ -717,7 +717,7 @@ describe("Task persistence", () => {
717717
})
718718

719719
const waiting = task.waitForCurrentAssistantMessagePersistence()
720-
task.dispose()
720+
void task.dispose()
721721

722722
await expect(waiting).resolves.toBe(false)
723723
})
@@ -740,7 +740,7 @@ describe("Task persistence", () => {
740740
const waiting = task.waitForCurrentAssistantMessagePersistence()
741741

742742
await vi.advanceTimersByTimeAsync(50)
743-
task.dispose()
743+
void task.dispose()
744744

745745
await expect(waiting).resolves.toBe(false)
746746
await Promise.resolve()
@@ -764,7 +764,7 @@ describe("Task persistence", () => {
764764
getTaskPersistenceAccess(task).resetAssistantMessagePersistence()
765765

766766
await expect(waiting).resolves.toBe(false)
767-
task.dispose()
767+
void task.dispose()
768768
})
769769

770770
it("does not retry when cancelled after the delay resolves but before persistence starts", async () => {
@@ -788,7 +788,7 @@ describe("Task persistence", () => {
788788
// Resolve the delay without flushing its promise continuation, then cancel at the save boundary.
789789
await Promise.resolve()
790790
vi.advanceTimersByTime(100)
791-
task.dispose()
791+
void task.dispose()
792792

793793
await expect(waiting).resolves.toBe(false)
794794
expect(task.assistantMessageSavedToHistory).toBe(false)
@@ -822,7 +822,7 @@ describe("Task persistence", () => {
822822

823823
await vi.advanceTimersByTimeAsync(100)
824824
expect(mockSaveApiMessages).toHaveBeenCalledTimes(2)
825-
task.dispose()
825+
void task.dispose()
826826
retrySave.resolve(undefined)
827827

828828
await expect(waiting).resolves.toBe(false)

0 commit comments

Comments
 (0)