feat: add reset method to Ask262Debug and use it in evaluateInEngine262 tool to clear captured marks and internal state.

This commit is contained in:
2026-04-14 13:24:38 +05:30
parent 60582fc6ae
commit 61823dcb23
2 changed files with 14 additions and 3 deletions
+11
View File
@@ -113,6 +113,17 @@ class Ask262Debug {
stopImportant() { stopImportant() {
this._important = false; this._important = false;
} }
/**
* Resets all captured marks and internal state.
* Clears marks array, mark index map, and resets flags.
*/
reset() {
this.marks = [];
this._markIndex.clear();
this._important = false;
this._captureEnabled = false;
}
} }
export const ask262Debug = new Ask262Debug(); export const ask262Debug = new Ask262Debug();
+3 -3
View File
@@ -142,6 +142,7 @@ export function createEvaluateInEngine262Tool() {
stopTrace: () => void; stopTrace: () => void;
startImportant: () => void; startImportant: () => void;
stopImportant: () => void; stopImportant: () => void;
reset: () => void;
}; };
const Agent = engine.Agent; const Agent = engine.Agent;
const ManagedRealm = engine.ManagedRealm; const ManagedRealm = engine.ManagedRealm;
@@ -152,9 +153,8 @@ export function createEvaluateInEngine262Tool() {
const Value = engine.Value; const Value = engine.Value;
const skipDebugger = engine.skipDebugger; const skipDebugger = engine.skipDebugger;
// TODO: Add reset method, allow making instances and use that. // Reset state from previous runs
// Reset marks from previous runs ask262Debug.reset();
ask262Debug.marks = [];
// Array to capture console output // Array to capture console output
const consoleOutput: ConsoleEntry[] = []; const consoleOutput: ConsoleEntry[] = [];