diff --git a/.ai/lessons.md b/.ai/lessons.md index e78d70720c..1617468912 100644 --- a/.ai/lessons.md +++ b/.ai/lessons.md @@ -5,6 +5,7 @@ - When a symptom matches an earlier fix, inspect that fix and prove why it no longer works before adding another workaround. - Test old reports against the current branch because later changes can make the report obsolete. - Use the same regression test before and after the production change so the result shows the behavior difference. +- Redirect browser test output to a file (`> /tmp/x.log 2>&1`); piping it (`| tail`) hangs because the Playwright server keeps the pipe open. - Call `visit()` directly in each `tests/v4/Browser` test body; Pest does not mark a test that only uses helper-wrapped `visit()` as a browser test, so it fails with `sendText() on null`. ## Verify the complete user flow @@ -68,6 +69,7 @@ - Deployment shell commands run in the Alpine/BusyBox helper image and pass through the non-root sudo parser. Verify new flags and shell syntax in that image and with `parseCommandsByLineForSudo()`; faked command output hides both failures. - Put multi-step remote shell logic in one `sh -c '