diff --git a/Auto Run Docs/PR-Triage/PR-Triage-08.md b/Auto Run Docs/PR-Triage/PR-Triage-08.md index 29be57fe..50b3555d 100644 --- a/Auto Run Docs/PR-Triage/PR-Triage-08.md +++ b/Auto Run Docs/PR-Triage/PR-Triage-08.md @@ -21,7 +21,8 @@ These PRs fix various session lifecycle issues — orphaned messages, provider r - [x] Review PR #899 (`fix: resolve message processing failures in multi-session scenarios` by @hahaschool). Files: 7 files including SessionStore, SDKAgent, ResponseProcessor, SessionRoutes. Steps: (1) `gh pr checkout 899` (2) This is a broader fix — review carefully for scope creep (3) Check that multi-session message routing is correct (messages go to the right session) (4) Run `npm run build` (5) If focused and correct: `gh pr merge 899 --rebase --delete-branch`. If too broad, request scope reduction. - **CLOSED** (2026-02-06): Too broad — conflicts in 3 files (`worker-service.ts`, `worker-types.ts`, `SDKAgent.ts`) due to overlap with recently merged PRs #693, #937, and #940. Crash recovery logic already addressed by #693 (restart limits with exponential backoff) and #937 (orphaned message fallback + session termination detection). Requested author re-submit as focused PRs for the genuinely valuable parts: (1) AbortController stale-check at generator start (~10 lines, real bug), (2) FK constraint protection in SDKAgent/ResponseProcessor (prevents FK violation when SDK generates new session ID after restart), (3) queueDepth logging fix using `pendingStore.getPendingCount()` instead of deprecated `session.pendingMessages.length`. -- [ ] Review PR #627 (`fix: Reset AbortController before starting generator` by @TranslateMe). File: `src/services/worker/http/routes/SessionRoutes.ts`. Steps: (1) `gh pr checkout 627` (2) Old PR (Dec 27) — check if still applicable after v8.5.2 memory leak fix (3) If the abort controller reset is still needed: rebase and merge. If already handled: close. +- [x] Review PR #627 (`fix: Reset AbortController before starting generator` by @TranslateMe). File: `src/services/worker/http/routes/SessionRoutes.ts`. Steps: (1) `gh pr checkout 627` (2) Old PR (Dec 27) — check if still applicable after v8.5.2 memory leak fix (3) If the abort controller reset is still needed: rebase and merge. If already handled: close. + - **MERGED** (2026-02-06): Clean +10 line fix still applicable. Adds stale-AbortController check at the start of `startGeneratorWithProvider()` — if `signal.aborted` is already true, creates a fresh AbortController before proceeding. This prevents infinite "Generator aborted" loops where: (1) session aborts, setting `signal.aborted=true`, (2) `generatorPromise` is set to null, (3) new observations trigger `ensureGeneratorRunning`, (4) new generator immediately sees stale abort signal and exits, creating an infinite loop. The crash recovery path (merged in PR #693) already resets the controller for non-abort exits, but this fix covers the abort case. Rebased cleanly onto main, build passes. - [ ] Review PR #741 (`fix: Provider-aware recovery and stale session cleanup` by @licutis). File: `src/services/worker-service.ts`. Steps: (1) `gh pr checkout 741` (2) Review provider-aware recovery logic — should handle Gemini/OpenRouter differently from Claude SDK (3) Run `npm run build` (4) If clean: `gh pr merge 741 --rebase --delete-branch`