End-to-end behaviour tests, driven against the public
site in a real browser by the integration service. self-tests passing (last 24h)
Each cell is a scheduled run; times are wall-clock in the service's timezone. Expand a scenario for its exact steps; the square is its latest result. The table is generated from the running test code and cannot drift from what executes.
| sun | mon | tue | wed | thu | fri | sat | |
|---|---|---|---|---|---|---|---|
setup
| 00:00 | ||||||
morning
| 09:00 | 09:00 | 09:00 | 09:00 | 09:00 | 09:00 | 09:00 |
afternoon
| 15:00 | 15:00 | 15:00 | 15:00 | 15:00 | 15:00 | 15:00 |
midweek
| 16:00 |
setup is chained right after the weekly test-user rotation.
One row per day, one column per scenario, newest first. A release note marks each revision of the suite: the columns above it are the current tests, the columns below are what ran before. Select a day for its runs, a scenario for its steps. Runs are retained for one year.
| setup | morning | afternoon | midweek | |
|---|---|---|---|---|
|
setup · Sundays at 00:00, chained right after the weekly test-user rotation
| ||||
|
morning · daily at 09:00
| ||||
|
afternoon · daily at 15:00
| ||||
|
midweek · Wednesdays at 16:00
| ||||
| 2026-08-13 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-12 | · | |||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps 19:00 UTC · midweek · pass · 6 steps | ||||
| 2026-08-11 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-10 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-09 | · | |||
03:00 UTC · setup · pass · 6 steps 12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-08 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-07 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-06 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-05 | · | |||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps 19:00 UTC · midweek · pass · 6 steps | ||||
| 2026-08-04 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-03 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-02 | · | |||
03:00 UTC · setup · pass · 6 steps 12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-08-01 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-31 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-30 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-29 | · | |||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps 19:00 UTC · midweek · pass · 6 steps | ||||
| 2026-07-28 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-27 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-26 | · | |||
03:00 UTC · setup · pass · 6 steps 12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-25 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-24 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-23 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-22 | · | |||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps 19:00 UTC · midweek · pass · 6 steps | ||||
| 2026-07-21 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-20 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-19 | · | |||
03:00 UTC · setup · pass · 6 steps 12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-18 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-17 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-16 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-15 | · | |||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps 19:00 UTC · midweek · pass · 6 steps | ||||
| 2026-07-14 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-13 | · | · | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-12 | · | |||
03:00 UTC · setup · pass · 6 steps 12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||||
| 2026-07-11 | · | · | ||
23:45 UTC · setup · pass · 6 steps 23:46 UTC · morning · pass · 6 steps | ||||
Users now create their own daily habits, so the tests follow a whole week of one user's life: Sunday's fresh test user creates two habits through the editor, every morning presses each pending button, every afternoon confirms they stayed done, and Wednesday swaps one habit mid-week. Every scenario logs in through the real Auth0 page and cross-checks the UI against the API.
| morning | afternoon | |
|---|---|---|
|
morning · daily at 09:00
| ||
|
afternoon · daily at 15:00
| ||
| 2026-07-11 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-10 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-09 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-08 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-07 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-06 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-05 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-04 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-03 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-02 | ||
12:00 UTC · morning · pass · 6 steps 18:00 UTC · afternoon · pass · 5 steps | ||
| 2026-07-01 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-30 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-29 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-28 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-27 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-26 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-25 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-24 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-23 | ||
12:00 UTC · morning · fail ✗ bit is on in api 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-22 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-21 | ||
12:00 UTC · morning · fail ✗ bit is on in api 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-20 | ||
12:00 UTC · morning · fail ✗ bit is on in api 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-19 | ||
12:00 UTC · morning · fail ✗ bit is on in api 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-18 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-17 | ||
12:00 UTC · morning · pass · 5 steps 18:00 UTC · afternoon · pass · 4 steps | ||
| 2026-06-16 | ||
12:00 UTC · morning · fail ✗ bit is on in api 18:00 UTC · afternoon · pass · 4 steps | ||
Each user had a single on/off habit bit and the home showed one button. Two daily scenarios: morning observed the bit on (the midnight job reset it), pressed the button and saw the bit turn off; afternoon confirmed it stayed off. Same real-Auth0 login and UI-vs-API cross-checks as today.