marcstraube / marcstraube/zappzarapp-php-devtoolbar

feat(frontend): cross-tab request history via broadcast module

Open
#33 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

effort:l enhancement
Dominant language
PHP
Stars
0
Forks
0
Avg merge
3m
Merged PRs (30d)
4

Description

Motivation

With one-worktree-per-branch workflows, several app tabs are open at once — and each toolbar only sees its own tab's requests. The broadcast module in @zappzarapp/browser-utils provides the cross-tab transport ready-made.

Scope

  • Publish new history entries on a BroadcastChannel.
  • Merge remote entries into the history panel, visibly marked with their origin (tab / branch label — the branch is already resolved per request).
  • Opt-in setting in the settings dialog, default off.
  • Storage stays per-tab; builds on the migrated StorageManager (#28).

Acceptance criteria

  • Requests from a second tab appear in the first tab's history, marked as remote.
  • Toggling the setting off stops both publishing and receiving.
  • No cross-origin leakage: BroadcastChannel is same-origin by design; channel naming and this boundary documented.
  • Frontend tests cover publish/receive/merge.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the frontend history panel, settings dialog, and StorageManager migration from #28, then trace how the @zappzarapp/browser-utils broadcast module is exposed. Done means the acceptance criteria pass, including remote-entry marking, opt-out behavior, same-origin/channel documentation, and frontend publish/receive/merge tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, php
Domain
devtools, frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.