Repository navigation
Gate LIVE_SHOW_JUMP_TO_PAGE on show EXECUTE access - #1454
Conversation
…1430) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Client Test Results98 tests 98 ✅ 0s ⏱️ Results for commit 9593c28. ♻️ This comment has been updated with latest results. |
Client V3 Test Results216 tests 216 ✅ 0s ⏱️ Results for commit 9593c28. ♻️ This comment has been updated with latest results. |
Python Test Results 1 files 1 suites 1m 4s ⏱️ Results for commit 9593c28. ♻️ This comment has been updated with latest results. |
Tim020
left a comment
There was a problem hiding this comment.
Review round 1
Head SHA reviewed: eddf4bb36cc33fe254d9704079d0f3fd304fe70d
Verdict: changes needed (one Important issue, otherwise solid).
Previous round follow-up: none (first round, no existing threads).
SonarQube: Quality Gate passed (SonarCloud check run + sonarqubecloud[bot] PR comment); no failing conditions. Detailed issue list not pulled; the gate result came from the check run / PR comment.
New findings: 0 Critical, 1 Important, 1 Suggestion (both inline).
Other observations (not anchored):
- Refused jumps are logged at
debugand the sender gets no feedback. That matches other refused ops, but a viewer clicking the jump control will see nothing happen. Consider hiding the control in both clients for users without EXECUTE (not part of this diff). - Per CLAUDE.md, a behaviour change (jump now needs EXECUTE) should be reflected in
docs/; I didn't see a docs change in this PR. - Test gap: no case for jump with no live session, and none for a numeric-string page (see Important finding).
Strengths: gate placed before any state change; admin and EXECUTE paths both covered; bool/float/negative/None rejected explicitly (bool is correctly excluded despite being an int subclass); unauthenticated adopter socket covered; test uses DigiScriptTestCase helpers.
🤖 Generated with Claude Code
Playwright E2E Results (firefox)225 tests 225 ✅ 2m 16s ⏱️ Results for commit 9593c28. ♻️ This comment has been updated with latest results. |
Playwright E2E Results (chromium)225 tests 225 ✅ 2m 24s ⏱️ Results for commit 9593c28. ♻️ This comment has been updated with latest results. |
…n test Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
Round 1 addressed in the latest push: legacy client sends a numeric page, docstring wrapped, new Jumping to a Page section in |
Tim020
left a comment
There was a problem hiding this comment.
Review round 2
Head SHA reviewed: 6e167b25234ac9c2507fef13428b7969434cbb55 (incremental diff since eddf4bb)
Verdict: ready to merge, once the still-running CI jobs (E2E chromium/firefox, Python tests, build, migrations check) finish green.
Previous round follow-up: 2 verified fixed (legacy-client string page; docstring wrap), 0 still open, 0 incomplete, 0 needing a human decision. Both threads were replied to and resolved.
- Round 1 'no docs' note: addressed by the new Jumping to a Page section in
docs/pages/live_show.md; the described menu path matches bothApp.vuefiles. - Round 1 'hide control' note: confirmed already handled, since the Live Config dropdown is gated on
IS_SHOW_EXECUTOR || IS_ADMIN_USER(legacy) /isShowExecutor || isAdminUser(v3). - Round 1 'no live session test' note: addressed by
test_jump_to_page_without_live_session_is_ignored.
SonarQube: Quality Gate passed on the latest analysis (sonarqubecloud[bot] PR comment); no failing conditions.
New findings: none (0 Critical, 0 Important, 0 Suggestion).
Strengths: minimal, targeted fixes; docs and tests added alongside the behaviour change; the v2/v3 UI gating already matched the new server rule.
🤖 Generated with Claude Code
|



Fixes #1430.
LIVE_SHOW_JUMP_TO_PAGEnow requires an authenticated user who is admin or holds EXECUTE on the loaded show (not leadership, per discussion). Unauthenticated sockets and users without the role are ignored.pagemust be a positive integer; anything else is ignored.IsShowExecutor || IsAdmin, so no UI change.🤖 Generated with Claude Code