R2: harness payload fixes found by the smoke pass

- display-name marker: letters-only 'Zzloadtest' (the editable-name validator
  forbids digits/colons), so profile.update resends the seeded name successfully.
- draft.save: rack_order is a string in the backend draft DTO (was sent as []),
  fixing the bad_request.
Both confirmed ok against the contour. chat_not_your_turn / nudge_own_turn are
by-design turn gates (backend/internal/social/chat.go), correctly exercised.
This commit is contained in:
Ilia Denisov
2026-06-10 00:11:33 +02:00
parent 0c55574ddd
commit 422bd14b53
3 changed files with 12 additions and 6 deletions
+2 -2
View File
@@ -11,7 +11,7 @@ and prints a trip-report summary. It stays in the repo for repeats.
(each with a confirmed email identity) + `--guest` guest accounts and an active
`sessions` row per account, then hands the plaintext bearer tokens to the driver.
Token hashes match `backend/internal/session` (`hex(sha256(token))`), so the seeded
sessions resolve. Every row is tagged with the `lt:` marker for cleanup.
sessions resolve. Every row carries a distinctive display-name marker for cleanup.
2. **Drive** (edge protocol over h2c): assembles real 24 player games via the
invitation flow (`invitation.create``invitation.accept`, no robots), then runs
each player's turn loop — poll `game.state`, replay `game.history`, generate a legal
@@ -52,7 +52,7 @@ resource baseline from the Grafana **Scrabble — Resources** dashboard
```
loadtest run [flags] seed, drive the ramp + hammer, print the report
loadtest cleanup [flags] delete everything the harness seeded (matched by the lt: marker)
loadtest cleanup [flags] delete everything the harness seeded (matched by the display-name marker)
```
Key `run` flags (env in parentheses):