mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-04 22:49:41 +02:00
fix: improve memory safety and regex pattern handling
- Add withTimeout utility for async operation protection - Move Promise callback cleanup earlier in stop() to prevent orphaned refs - Fix regex lastIndex resets in inner-loop-tracker (reset BEFORE test) - Add DEFAULT_ASYNC_TIMEOUT_MS and INTERACTIVE_START_TIMEOUT_MS constants Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -461,21 +461,21 @@ export class InnerLoopTracker extends EventEmitter {
|
||||
}
|
||||
|
||||
// Todo checkboxes: "- [ ] Task" or "- [x] Task"
|
||||
// Reset lastIndex BEFORE test to ensure consistent matching with /g flag patterns
|
||||
TODO_CHECKBOX_PATTERN.lastIndex = 0;
|
||||
if (TODO_CHECKBOX_PATTERN.test(data)) {
|
||||
// Reset lastIndex since we're reusing the global regex
|
||||
TODO_CHECKBOX_PATTERN.lastIndex = 0;
|
||||
return true;
|
||||
}
|
||||
|
||||
// Todo indicator icons: "Todo: ☐", "Todo: ◐", etc.
|
||||
TODO_INDICATOR_PATTERN.lastIndex = 0;
|
||||
if (TODO_INDICATOR_PATTERN.test(data)) {
|
||||
TODO_INDICATOR_PATTERN.lastIndex = 0;
|
||||
return true;
|
||||
}
|
||||
|
||||
// Claude Code native todo format: "☐ Task", "☒ Task"
|
||||
TODO_NATIVE_PATTERN.lastIndex = 0;
|
||||
if (TODO_NATIVE_PATTERN.test(data)) {
|
||||
TODO_NATIVE_PATTERN.lastIndex = 0;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user