diff --git a/src/db.test.ts b/src/db.test.ts index e46694a..123eb88 100644 --- a/src/db.test.ts +++ b/src/db.test.ts @@ -732,9 +732,7 @@ describe('paired task state', () => { _initTestDatabaseFromFile(dbPath); - expect(getPairedTaskById('paired-in-review')?.plan_status).toBe( - 'approved', - ); + expect(getPairedTaskById('paired-in-review')?.plan_status).toBe('approved'); expect(getPairedTaskById('paired-merge-ready')?.plan_status).toBe( 'approved', ); diff --git a/src/db.ts b/src/db.ts index 3f77cfc..6704451 100644 --- a/src/db.ts +++ b/src/db.ts @@ -761,8 +761,7 @@ function createSchema(database: Database.Database): void { .get() as { sql?: string } | undefined; const pairedArtifactsSql = pairedArtifactsSqlRow?.sql || ''; const pairedArtifactsNeedsMigration = - pairedArtifactsSql && - !pairedArtifactsSql.includes("'plan_brief'"); + pairedArtifactsSql && !pairedArtifactsSql.includes("'plan_brief'"); if (pairedArtifactsNeedsMigration) { database.exec(` CREATE TABLE paired_artifacts_new ( diff --git a/src/message-runtime.test.ts b/src/message-runtime.test.ts index d44f8f9..71bcc0c 100644 --- a/src/message-runtime.test.ts +++ b/src/message-runtime.test.ts @@ -246,10 +246,9 @@ describe('createMessageRuntime', () => { is_from_me: true, }, ]); - const actualSessionCommands = - await vi.importActual( - './session-commands.js', - ); + const actualSessionCommands = await vi.importActual< + typeof import('./session-commands.js') + >('./session-commands.js'); vi.mocked(sessionCommands.handleSessionCommand).mockImplementation((opts) => actualSessionCommands.handleSessionCommand(opts), ); diff --git a/src/paired-execution-context.test.ts b/src/paired-execution-context.test.ts index 1da4a33..4f8f02a 100644 --- a/src/paired-execution-context.test.ts +++ b/src/paired-execution-context.test.ts @@ -343,8 +343,10 @@ describe('paired execution context', () => { pairedWorkspaceManager.markPairedTaskReviewReady, ).toHaveBeenCalledWith('task-1'); expect(result?.status).toBe('ready'); + if (!result || result.status !== 'ready') { + throw new Error('expected ready review result'); + } expect(result.task.status).toBe('review_ready'); - expect(result?.task.status).toBe('review_ready'); }); it('keeps review_pending and returns a pending result when owner workspace is not ready', () => { diff --git a/src/paired-execution-context.ts b/src/paired-execution-context.ts index 49cc6c6..cd919bc 100644 --- a/src/paired-execution-context.ts +++ b/src/paired-execution-context.ts @@ -1,10 +1,7 @@ import { execFileSync } from 'child_process'; import crypto from 'crypto'; -import { - SERVICE_ID, - normalizeServiceId, -} from './config.js'; +import { SERVICE_ID, normalizeServiceId } from './config.js'; import { createPairedExecution, createPairedTask, diff --git a/src/paired-review-command.test.ts b/src/paired-review-command.test.ts index 03cc820..2d6053a 100644 --- a/src/paired-review-command.test.ts +++ b/src/paired-review-command.test.ts @@ -100,7 +100,10 @@ describe('paired /review command path', () => { expect(ownerResult?.workspace?.workspace_dir).toBeTruthy(); const ownerWorkspaceDir = ownerResult!.workspace!.workspace_dir; - fs.writeFileSync(path.join(ownerWorkspaceDir, 'README.md'), 'owner change\n'); + fs.writeFileSync( + path.join(ownerWorkspaceDir, 'README.md'), + 'owner change\n', + ); process.env.EJCLAW_DATA_DIR = path.join(tempRoot, 'data-review'); process.env.SERVICE_ID = 'codex-review'; diff --git a/src/paired-workspace-manager.test.ts b/src/paired-workspace-manager.test.ts index 7d28cce..0720023 100644 --- a/src/paired-workspace-manager.test.ts +++ b/src/paired-workspace-manager.test.ts @@ -125,7 +125,9 @@ describe('paired workspace manager', () => { runGit(['status', '--short'], reviewerWorkspace.workspace_dir), ).toContain('M README.md'); expect(db.getPairedTaskById('paired-task-1')?.status).toBe('review_ready'); - expect(db.getPairedTaskById('paired-task-1')?.review_requested_at).toBeTruthy(); + expect( + db.getPairedTaskById('paired-task-1')?.review_requested_at, + ).toBeTruthy(); expect( db.getPairedWorkspace('paired-task-1', 'reviewer')?.snapshot_refreshed_at, ).toBeTruthy(); @@ -165,6 +167,9 @@ describe('paired workspace manager', () => { reviewer_service_id: 'codex-review', title: null, source_ref: 'HEAD', + task_policy: 'autonomous', + risk_level: 'low', + plan_status: 'not_requested', review_requested_at: null, status: 'draft', created_at: now, @@ -226,8 +231,9 @@ describe('paired workspace manager', () => { updated_at: now, }); - const ownerWorkspace = - manager.provisionOwnerWorkspaceForPairedTask('paired-task-cross-service'); + const ownerWorkspace = manager.provisionOwnerWorkspaceForPairedTask( + 'paired-task-cross-service', + ); fs.writeFileSync( path.join(ownerWorkspace.workspace_dir, 'README.md'), 'owner modified\n', @@ -700,6 +706,9 @@ describe('paired workspace manager', () => { reviewer_service_id: 'codex-review', title: null, source_ref: 'HEAD', + task_policy: 'autonomous', + risk_level: 'low', + plan_status: 'not_requested', review_requested_at: null, status: 'draft', created_at: now, @@ -798,8 +807,12 @@ describe('paired workspace manager', () => { expect(blocked.blockMessage).toBe( 'Review snapshot is stale after owner changes. Retry the review once to refresh against the latest owner workspace.', ); - expect(db.getPairedTaskById('paired-task-6')?.status).toBe('review_pending'); - expect(db.getPairedTaskById('paired-task-6')?.review_requested_at).toBeTruthy(); + expect(db.getPairedTaskById('paired-task-6')?.status).toBe( + 'review_pending', + ); + expect( + db.getPairedTaskById('paired-task-6')?.review_requested_at, + ).toBeTruthy(); expect(db.getPairedWorkspace('paired-task-6', 'reviewer')?.status).toBe( 'stale', ); @@ -816,6 +829,8 @@ describe('paired workspace manager', () => { 'utf-8', ), ).toBe('owner changed again\n'); - expect(db.getPairedTaskById('paired-task-6')?.review_requested_at).toBeTruthy(); + expect( + db.getPairedTaskById('paired-task-6')?.review_requested_at, + ).toBeTruthy(); }); }); diff --git a/src/paired-workspace-manager.ts b/src/paired-workspace-manager.ts index ca0c1fb..91c330b 100644 --- a/src/paired-workspace-manager.ts +++ b/src/paired-workspace-manager.ts @@ -504,10 +504,7 @@ export function prepareReviewerWorkspaceForExecution( const now = new Date().toISOString(); if (snapshotMissing || snapshotStale) { - if ( - task.status === 'review_pending' || - task.status === 'review_ready' - ) { + if (task.status === 'review_pending' || task.status === 'review_ready') { const refreshedWorkspace = refreshReviewerSnapshotForPairedTask(task.id); updatePairedTask(task.id, { status: 'review_ready', diff --git a/src/session-commands.test.ts b/src/session-commands.test.ts index 23fb53d..f320581 100644 --- a/src/session-commands.test.ts +++ b/src/session-commands.test.ts @@ -93,7 +93,9 @@ describe('isSessionCommandControlMessage', () => { it('matches multiline review snapshot output', () => { expect( - isSessionCommandControlMessage('Review snapshot updated.\n- Task: task-1'), + isSessionCommandControlMessage( + 'Review snapshot updated.\n- Task: task-1', + ), ).toBe(true); });