()
| 836 | } |
| 837 | |
| 838 | reset() { |
| 839 | this.clearReasoning() |
| 840 | this.clearStatusTimer() |
| 841 | this.idle() |
| 842 | this.bufRef = '' |
| 843 | this.interrupted = false |
| 844 | this.lastStatusNote = '' |
| 845 | this.activeReasoningText = '' |
| 846 | this.pendingSegmentTools = [] |
| 847 | this.protocolWarned = false |
| 848 | this.reasoningSegmentIndex = null |
| 849 | this.segmentMessages = [] |
| 850 | this.turnTools = [] |
| 851 | this.toolTokenAcc = 0 |
| 852 | this.persistedToolLabels.clear() |
| 853 | // Session boundary: drop notice state so session A's sticky can't bleed |
| 854 | // into session B (R3-H5). reset()/fullReset() CLEAR — they never flush. |
| 855 | this.clearNoticeState() |
| 856 | patchTurnState({ activity: [], outcome: '' }) |
| 857 | } |
| 858 | |
| 859 | fullReset() { |
| 860 | this.reset() |
no test coverage detected