fix: /stop leaves stale paired task, sawOutput guard, progress text overwrite

- /stop now resets the active paired task to completed so the next
  user message routes to the owner instead of the stuck reviewer
- Owner completion with sawOutput=false (e.g. interrupted by /stop)
  no longer auto-triggers the reviewer — treated as interrupted
- Clear pendingProgressText when intermediate updates arrive on an
  existing progress message, preventing flushPendingProgress from
  overwriting latestProgressText with stale buffered content
This commit is contained in:
Eyejoker
2026-03-31 02:54:04 +09:00
parent 33575c84f1
commit dddf18428e
6 changed files with 38 additions and 11 deletions

View File

@@ -41,7 +41,7 @@ describe('runClaudeRotationLoop', () => {
{ runId: 'rotate-org-access' },
);
expect(outcome).toEqual({ type: 'success' });
expect(outcome).toEqual({ type: 'success', sawOutput: true });
expect(rotateToken).toHaveBeenCalledTimes(1);
expect(markTokenHealthy).toHaveBeenCalledTimes(1);
});