diff --git a/src/services/acp/bridge.ts b/src/services/acp/bridge.ts index edf9102d3..c6cdd612e 100644 --- a/src/services/acp/bridge.ts +++ b/src/services/acp/bridge.ts @@ -587,6 +587,8 @@ export async function forwardSessionUpdates( if (nextResult.done || abortSignal.aborted) break const msg = nextResult.value + if (msg == null) continue + const type = msg.type as string switch (type) { diff --git a/src/services/api/__tests__/bedrockClient.test.ts b/src/services/api/__tests__/bedrockClient.test.ts index f6668bdc9..3ab1471fe 100644 --- a/src/services/api/__tests__/bedrockClient.test.ts +++ b/src/services/api/__tests__/bedrockClient.test.ts @@ -111,7 +111,12 @@ describe('BedrockClient.buildRequest body.anthropic_beta cleanup', () => { const c = get() expect(c).not.toBeNull() expect(c!.headers.authorization).toBeDefined() - expect(c!.headers.authorization.startsWith('AWS4-HMAC-SHA256')).toBe(true) + // SDK >= 0.80 uses Bearer auth; older versions used AWS4-HMAC-SHA256 SigV4. + // Either way the header must be present (i.e. signing was not broken). + expect( + c!.headers.authorization!.startsWith('AWS4-HMAC-SHA256') || + c!.headers.authorization!.startsWith('Bearer '), + ).toBe(true) }) test('FIX does not disturb requests that never had anthropic_beta', async () => { diff --git a/src/services/skillLearning/__tests__/projectContext.test.ts b/src/services/skillLearning/__tests__/projectContext.test.ts index 7b36b9ca3..0dfeba471 100644 --- a/src/services/skillLearning/__tests__/projectContext.test.ts +++ b/src/services/skillLearning/__tests__/projectContext.test.ts @@ -1,5 +1,5 @@ import { afterAll, beforeEach, describe, expect, test } from 'bun:test' -import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync } from 'fs' +import { existsSync, mkdirSync, mkdtempSync, readFileSync, realpathSync, rmSync } from 'fs' import { tmpdir } from 'os' import { join } from 'path' import { execFileSync } from 'child_process' @@ -56,7 +56,7 @@ describe('resolveProjectContext', () => { expect(context.source).toBe('claude_project_dir') expect(context.scope).toBe('project') - expect(context.projectRoot).toBe(projectDir) + expect(context.projectRoot).toBe(realpathSync(projectDir)) expect(context.projectName).toBe(lastPathSegment(projectDir)) expect(context.storageDir).toContain(context.projectId) @@ -99,7 +99,7 @@ describe('resolveProjectContext', () => { expect(context.source).toBe('git_root') expect(context.scope).toBe('project') - expect(context.projectRoot).toBe(repo) + expect(context.projectRoot).toBe(realpathSync(repo)) expect(context.projectName).toBe(lastPathSegment(repo)) })