feat(FN-4371): complete Step 1 — schema and persistence

Fusion-Task-Id: FN-4371
Fusion-Task-Lineage: 4175ba4c-b7cb-4f3a-87c5-75e51f06c0ff
This commit is contained in:
Fusion
2026-05-14 09:17:53 -07:00
committed by gsxdsm
parent 4bafbafe73
commit bf6d3544da
6 changed files with 65 additions and 9 deletions

View File

@@ -767,6 +767,39 @@ describe("TaskStore", () => {
});
describe("noCommitsExpected persistence", () => {
it("round-trips noCommitsExpected=true through create and reload", async () => {
const created = await store.createTask({
description: "Decision-only task",
noCommitsExpected: true,
});
expect(created.noCommitsExpected).toBe(true);
const reloaded = await store.getTask(created.id);
expect(reloaded.noCommitsExpected).toBe(true);
});
it("keeps noCommitsExpected undefined when omitted", async () => {
const created = await store.createTask({ description: "Regular task" });
expect(created.noCommitsExpected).toBeUndefined();
const reloaded = await store.getTask(created.id);
expect(reloaded.noCommitsExpected).toBeUndefined();
});
it("updates noCommitsExpected via updateTask", async () => {
const created = await store.createTask({ description: "Toggle decision-only" });
const updated = await store.updateTask(created.id, { noCommitsExpected: true });
expect(updated.noCommitsExpected).toBe(true);
const reloaded = await store.getTask(created.id);
expect(reloaded.noCommitsExpected).toBe(true);
});
});
describe("executionMode persistence", () => {
it("sets executionMode to 'fast' via createTask and persists", async () => {
const created = await store.createTask({