Blazor Server's default change-event binding races with Playwright fills,
causing input values to revert before the form submits. Switch Title,
JoinLink and MaxPlayers to @bind-Value:event=oninput so the model stays
in sync while the test types.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Wrap the group notification in UpdateSessionAsync with try/catch so a
missing/unreachable chat does not roll back a Web dashboard edit.
- Update E2E dashboard test to use production schema (public.*), 1920x1080
viewport, direct edit navigation, and mobile-card delete locator.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Issue #150 follow-up: clicking the session title only expands participants, so click the explicit 'Изменить' edit link. Cleanup now only deletes the player row when the test was the sole owner, avoiding accidental removal of the real Toutsu account from production.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Add DeleteSessionAsync to ISessionStore/SessionService (unpublish portfolio card,
remove bot-created empty forum topic, update batch message).
- Add DeleteSessionForCurrentUserAsync to AuthorizedSessionService with audit log.
- Add delete button + confirmation dialog to GroupDetails.razor.
- Extend dashboard Playwright tests with edit persistence and delete verification.
- Update AuthorizedSessionServiceTests with delete authorization coverage.
- Mark issue #150 as done in tests/e2e/README.md.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- Add Playwright-based E2E tests in tests/e2e/dashboard/
- Authenticate via /auth/telegram-webapp using helpers/telegram_init_data.py
- Cover dashboard load and session edit flow
- Add requirements.txt and package dashboard folder
- Update README with setup and test descriptions
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>