diff --git a/changelog.d/3449.md b/changelog.d/3449.md new file mode 100644 index 000000000..fea4c9e97 --- /dev/null +++ b/changelog.d/3449.md @@ -0,0 +1,2 @@ + +- **fix(session): self_resume_pending を送る source の注記を antigravity と claude に合わせる** (#3449): releaseStopClaims のコメントと capabilities テストの題名が「antigravity だけ」と読めたのを直した(振る舞いは不変) diff --git a/src/lib/session/agent-event-dedup.ts b/src/lib/session/agent-event-dedup.ts index 53d137b1a..6f0498f2d 100644 --- a/src/lib/session/agent-event-dedup.ts +++ b/src/lib/session/agent-event-dedup.ts @@ -380,8 +380,8 @@ export function shortSessionTag(sessionId: string): string { /** * Forget every `stop` one session of one instance has claimed (Issue #3289). * - * Every subtype: antigravity posts `stop` / `self_resume_pending` (#2614) - * beside the plain one. + * Every subtype: antigravity (#2614) and claude (#3430) post `stop` / + * `self_resume_pending` beside the plain one. */ function releaseStopClaims(composite: string, sessionId: string): void { releaseClaims(composite, ['stop'], sessionId); diff --git a/tests/unit/hooks/sources/capabilities.test.ts b/tests/unit/hooks/sources/capabilities.test.ts index 65c58668b..fe2a6239a 100644 --- a/tests/unit/hooks/sources/capabilities.test.ts +++ b/tests/unit/hooks/sources/capabilities.test.ts @@ -331,11 +331,11 @@ describe('[#1924] AgentSourceCapabilities — the table of §4 D3', () => { expect(scraperOnly).toEqual(['gemini', 'copilot']); }); - it('names exactly one source whose stop can say it will resume by itself (#2614)', () => { + it('names the sources whose stop can say it will resume by itself: antigravity (#2614) and claude (#3430)', () => { // agy is the one tool whose `Stop` payload is known to state it (`fullyIdle`) // and whose hook passes it on. Issue #3430 added claude, which reads it off // its transcript rather than the payload (only an empty `background_tasks` - // has been captured) — so the title's "one" now reads "one per mechanism". + // has been captured) — so the list is one source per mechanism. const selfResuming = Object.keys(TABLE).filter((id) => TABLE[id].stopReportsSelfResume); expect(selfResuming).toEqual(['claude', 'antigravity']); });