Hijo de #23.
Contexto
src/components/chat-sim/capture/__tests__/session-lifecycle.test.ts › "N ephemeral captures leave the session count exactly where it started" fotografía el set global de sesiones de agent-browser al arrancar y lo compara al terminar.
element/__tests__/frame-height-real-browser.test.ts (651b245 + 7b4d5ec) mantiene una sesión abierta en un worker paralelo. Cuando ese archivo termina y la cierra, el set global cambia legítimamente a mitad de la corrida del otro.
AssertionError: expected [ …(4) ] to deeply equal [ …(5) ]
- "chat-sim-t031-height-96347-…"
No es flakiness ni contención del daemon — así quedó mal anotado primero en este ciclo. Es determinista: falla siempre que ambos archivos corran en la misma invocación. Aislado pasa 2/2. Control a 651b245 (sin el 2º commit): falla idéntico. Diagnóstico original de la lane skin10, verificado por el lead.
Fix propuesto
Que la aserción sea sobre las sesiones que este archivo abrió, no sobre el set global: filtrar por el prefijo de id propio, o aislar el archivo en su pool (fileParallelism acotado).
Criterios de aceptación
npx vitest run src/__tests__/chat-sim/ src/components/chat-sim/ sale 0 con ambos archivos presentes
- El test sigue detectando un leak real de su propio código
Verificación (runnable)
npx vitest run src/__tests__/chat-sim/ src/components/chat-sim/; echo "exit=$?" # espera 0
Gemelo obligatorio — si no, el "fix" puede ser aflojar la aserción: comentá el closeCaptureSession del propio archivo, confirmá que sigue rojo, restaurá.
Guardrails
- No arreglarlo desactivando el test ni subiendo un timeout
- No tocar
frame-height-real-browser.test.ts: su sesión abierta es correcta y es lo que prueba el alto fijo en browser real
Scope
src/components/chat-sim/capture/__tests__/session-lifecycle.test.ts, quizá vitest.config.ts.
Hijo de #23.
Contexto
src/components/chat-sim/capture/__tests__/session-lifecycle.test.ts› "N ephemeral captures leave the session count exactly where it started" fotografía el set global de sesiones deagent-browseral arrancar y lo compara al terminar.element/__tests__/frame-height-real-browser.test.ts(651b245+7b4d5ec) mantiene una sesión abierta en un worker paralelo. Cuando ese archivo termina y la cierra, el set global cambia legítimamente a mitad de la corrida del otro.No es flakiness ni contención del daemon — así quedó mal anotado primero en este ciclo. Es determinista: falla siempre que ambos archivos corran en la misma invocación. Aislado pasa 2/2. Control a
651b245(sin el 2º commit): falla idéntico. Diagnóstico original de la laneskin10, verificado por el lead.Fix propuesto
Que la aserción sea sobre las sesiones que este archivo abrió, no sobre el set global: filtrar por el prefijo de id propio, o aislar el archivo en su pool (
fileParallelismacotado).Criterios de aceptación
npx vitest run src/__tests__/chat-sim/ src/components/chat-sim/sale 0 con ambos archivos presentesVerificación (runnable)
Gemelo obligatorio — si no, el "fix" puede ser aflojar la aserción: comentá el
closeCaptureSessiondel propio archivo, confirmá que sigue rojo, restaurá.Guardrails
frame-height-real-browser.test.ts: su sesión abierta es correcta y es lo que prueba el alto fijo en browser realScope
src/components/chat-sim/capture/__tests__/session-lifecycle.test.ts, quizávitest.config.ts.