Skip to content

fix: scope presenter bridge sessions - #158

Merged
Brad-Edwards merged 1 commit into
devfrom
151-presenter-session-scope
May 24, 2026
Merged

fix: scope presenter bridge sessions#158
Brad-Edwards merged 1 commit into
devfrom
151-presenter-session-scope

Conversation

@Brad-Edwards

@Brad-Edwards Brad-Edwards commented May 24, 2026

Copy link
Copy Markdown
Contributor

Summary

Scope presenter BroadcastChannel traffic to one ephemeral workbench session so independent same-origin presentations do not drive each other. Prompter popout URLs now carry the same session scope through the existing URL bootstrap path.

Requirement UIDs

  • (none - bug/refactor/maintenance run; see Traceability section below)

Related Issues

Closes #151

ADR Impact

  • None

Changes

  • Add presenter session id helpers and derive scoped presenter channel names in src/system/presenter/bridge.ts.
  • Pass the resolved presenter session id from src/main.ts into the bridge bootstrap.
  • Carry the presenter session scope into prompter popout URLs through URLSearchParams while preserving same-origin and opener isolation.
  • Keep raw presenter command payloads and isPresenterCommand() validation in place.
  • Add regression tests for same-session delivery, cross-session isolation, scoped-channel command validation, popout scope propagation, and session edge branches.
  • Add a fixed changelog fragment.

Test Plan

  • pnpm vitest run tests/system/presenter-bridge.test.ts tests/system/prompter-window-url.test.ts
  • pnpm vitest run tests/runtime/screenshot-determinism-source.test.ts
  • pnpm test:coverage -- tests/system/presenter-bridge.test.ts tests/system/prompter-window-url.test.ts
  • pnpm lint
  • pnpm typecheck
  • pnpm test
  • pre-commit run --all-files
  • CI passed on PR fix: scope presenter bridge sessions #158
  • SonarCloud checks passed on PR fix: scope presenter bridge sessions #158

Codex pre-push review was clean. Test-quality pre-push review was clean.

Ground Control Checks

  • Implementation plan posted
  • Completion gate passed
  • Codex review clean
  • Test-quality review clean
  • CI green
  • SonarCloud quality gate OK

Traceability

Checklist

@Brad-Edwards
Brad-Edwards force-pushed the 151-presenter-session-scope branch from 1580f47 to 8d28c60 Compare May 24, 2026 03:50
@sonarqubecloud

Copy link
Copy Markdown

@Brad-Edwards
Brad-Edwards merged commit 608d51d into dev May 24, 2026
9 checks passed
@Brad-Edwards
Brad-Edwards deleted the 151-presenter-session-scope branch May 24, 2026 04:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant