Test run report — DEMO-T16 FAILED
Freight: password reset through email, in TypeScript
run #427 · 2026-09-25 00:23:08 ·
duration 17s ·
target version 2.1.0 · browser chromium ·
started by: cli-adopted
report generated 2026-09-25 10:51:10 — self-contained file, safe to attach anywhere
What went wrong
1 of 1 test(s) failed: a password reset works through the email -- exactly once -- the reset link worked a SECOND time: any old reset email is still a key to the account (locator('#reset-form'), expected 0, received 1)
Step timings
| at | step | ms |
| +13.72s | a password reset works through the email -- exactly once | 13560.0 |
| +7.65s | wait for the email | 6979.1 |
| +7.99s | choose a new password | 265.1 |
| +8.26s | sign in with the new password | 275.3 |
| +13.51s | follow the same link again | 5175.7 |
| +0.36s | goto freight/login/ | 129.0 |
| +0.49s | click #forgot-link | 118.8 |
| +0.53s | fill #forgot-login | 42.1 |
| +0.62s | click #forgot-btn | 89.1 |
| +0.67s | innerText #forgot-ref | 50.1 |
| +0.74s | goto freight/mailbox/?to=courier@acme-freight.example | 59.0 |
| +7.65s | toBeVisible #mail-list a.mail-subject:has-text('ref 16E935') | 6913.2 |
| +7.7s | click #mail-list a.mail-subject:has-text('ref 16E935') | 44.1 |
| +7.72s | toBeVisible #mail-body a[href*='/login/reset/'] | 22.3 |
| +7.79s | click #mail-body a[href*='/login/reset/'] | 59.5 |
| +7.85s | fill #new-password | 59.6 |
| +7.86s | fill #confirm-password | 12.1 |
| +7.96s | click #reset-btn | 100.4 |
| +7.99s | toBeVisible #login-btn | 26.3 |
| +8.0s | fill #username | 11.6 |
| +8.02s | fill #password | 14.9 |
| +8.16s | click #login-btn | 141.5 |
| +8.26s | toBeVisible #signed-in-user | 101.2 |
| +8.33s | click #sign-out | 65.0 |
| +8.37s | goto http://127.0.0.1:8000/demo/freight/mailbox/4/ | 36.5 |
| +8.47s | click #mail-body a[href*='/login/reset/'] | 103.1 |
| +8.5s | toBeVisible #reset-invalid, #reset-form | 22.6 |
| +13.51s | toHaveCount #reset-form | 5007.6 |
Full technical error
1 of 1 test(s) failed: a password reset works through the email -- exactly once -- the reset link worked a SECOND time: any old reset email is still a key to the account (locator('#reset-form'), expected 0, received 1)
Video and Playwright trace stay on the hub:
results/DEMO-T16/20260925-002310-r427/ — open the run page for the replay.