You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Replace the use-session-hash-scroll source-string snapshot assertion with a behavior test for the hash-scroll contract.
When this is done, Windows advisory CI should no longer fail because of LF/CRLF differences, and the test should verify behavior instead of source-code shape.
Scope
In scope:
Replace the source-code toContain() assertion in use-session-hash-scroll.test.ts with a behavior-focused test.
Cover the hash-scroll contract:
when the URL hash points to an already-rendered message, the code scrolls to that message directly
it does not call onMessageNavigation
it does not emit duplicate navigation for the same already-rendered message path
Out of scope:
Do not only normalize CRLF as the final fix unless a temporary release unblocker is needed.
Do not introduce AST parsing just to keep testing source shape.
Do not change product behavior.
Relevant files or context
Problem:
Windows advisory CI fails in unit-windows-app because use-session-hash-scroll.test.ts reads source code and checks an LF-only string with toContain().
On Windows, source content can include CRLF, so the assertion fails.
Goal
Replace the
use-session-hash-scrollsource-string snapshot assertion with a behavior test for the hash-scroll contract.When this is done, Windows advisory CI should no longer fail because of LF/CRLF differences, and the test should verify behavior instead of source-code shape.
Scope
In scope:
toContain()assertion inuse-session-hash-scroll.test.tswith a behavior-focused test.onMessageNavigationOut of scope:
Relevant files or context
Problem:
unit-windows-appbecauseuse-session-hash-scroll.test.tsreads source code and checks an LF-only string withtoContain().Likely file:
packages/app/src/pages/session/use-session-hash-scroll.test.tsVerification
use-session-hash-scroll.Execution mode
Agent can implement directly.