Files
orca/docs/audits/plugin-worker-output-retention/fix.patch
T
d04b05b5c8 Detach retained CI and terminal tails from oversized strings (#20960)
* fix(memory): detach retained CI and terminal tails from oversized strings

* fix(terminal): detach retained error and reattach string slices

* fix(terminal): release oversized recent-output backing strings

* fix(terminal): release backing strings held by PTY detectors

* fix(memory): own bounded Claude background task labels

* fix: detach retained terminal mode scan tails

* fix: own retained plugin worker output strings

* fix: own incomplete OSC 133 carry strings

---------

Co-authored-by: m4air <m4air@Mac.localdomain>
Co-authored-by: m4air <m4air@m4airs-MacBook-Air.local>
2026-09-17 20:34:19 -07:00

19 lines
942 B
Diff

diff --git a/src/main/plugins/plugin-worker-output-buffer.ts b/src/main/plugins/plugin-worker-output-buffer.ts
index 836330c879..6a0cb2a078 100644
--- a/src/main/plugins/plugin-worker-output-buffer.ts
+++ b/src/main/plugins/plugin-worker-output-buffer.ts
@@ -1,0 +2 @@ import type { Readable } from 'node:stream'
+import { ownRetainedString } from '../../shared/own-retained-string'
@@ -24,3 +25,5 @@ export function pipePluginWorkerOutput(
- truncated
- ? `${line.slice(0, PLUGIN_WORKER_OUTPUT_LINE_LIMIT - TRUNCATION_SUFFIX.length)}${TRUNCATION_SUFFIX}`
- : line
+ ownRetainedString(
+ truncated
+ ? `${line.slice(0, PLUGIN_WORKER_OUTPUT_LINE_LIMIT - TRUNCATION_SUFFIX.length)}${TRUNCATION_SUFFIX}`
+ : line
+ )
@@ -52 +55 @@ export function pipePluginWorkerOutput(
- buffered += segment
+ buffered += newline === -1 ? ownRetainedString(segment) : segment