Skip to content

🤖 fix: keep analytics sidebar controllable on mobile#3740

Merged
ammario merged 3 commits into
mainfrom
fix/analytics-sidebar-mobile-control
Jul 20, 2026
Merged

🤖 fix: keep analytics sidebar controllable on mobile#3740
ammario merged 3 commits into
mainfrom
fix/analytics-sidebar-mobile-control

Conversation

@ammar-agent

@ammar-agent ammar-agent commented Jul 20, 2026

Copy link
Copy Markdown
Collaborator

Summary

Keeps the left sidebar controllable from the Analytics route at narrow widths. Analytics previously hid its sidebar opener below the md breakpoint even though the collapsed sidebar is fully off-canvas there, leaving no pointer-accessible way to reopen it.

Implementation

  • Opt the Analytics sidebar opener into the shared mobile-menu-btn responsive behavior used by other main-pane routes.
  • Add a full-app UI regression test that collapses and reopens the sidebar from Analytics.
  • Add a phone-viewport Storybook story with a pinned Pixel viewport that exercises the control at the responsive breakpoint.
  • Make the existing review auto-refresh integration test deterministic by emitting the same WorkspaceStore file-tool completion event directly instead of relying on a live model to choose and call bash.

Validation

  • TEST_INTEGRATION=1 bun x jest tests/ui/layout/analyticsHeader.test.ts --runInBand --silent
  • make static-check
  • 3 consecutive targeted runs of the review auto-refresh integration test
  • make storybook-build
  • STORYBOOK_PORT=6108 make storybook-run CMD='bun x test-storybook --url http://127.0.0.1:6108 --testTimeout 30000 --maxWorkers 1 src/browser/stories/App.phoneViewports.stories.tsx'

Risks

Low. The production change only adds the existing responsive utility class to one route-specific button. Desktop behavior is unchanged. The test-only flake fix preserves the same WorkspaceStore event path while removing live-provider tool-selection variance.


Generated with mux • Model: openai:gpt-5.6-sol • Thinking: high • Cost: $23.02

@ammar-agent

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 95ca1f1267

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/browser/stories/App.phoneViewports.stories.tsx Outdated
@ammar-agent

Copy link
Copy Markdown
Collaborator Author

Addressed Codex's persisted-state finding: the phone story now seeds the sidebar state through updatePersistedState instead of calling localStorage directly.

@ammar-agent

Copy link
Copy Markdown
Collaborator Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Another round soon, please!

Reviewed commit: 1f400f38de

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ammar-agent

Copy link
Copy Markdown
Collaborator Author

Resolved the repeated Test / Integration flake in ReviewPanel auto refresh.

The test previously depended on a live model choosing and completing a bash tool call before it could exercise the refresh behavior. Both CI attempts timed out before receiving that tool event. It now emits the same WorkspaceStore.simulateFileModifyingToolEnd() event used by the application path, preserving the behavioral assertion while removing provider tool-choice variance.

Validated with three consecutive targeted passes plus make static-check.

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep it up!

Reviewed commit: 2433fc054f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ammario
ammario merged commit b4cec0a into main Jul 20, 2026
36 of 39 checks passed
@ammario
ammario deleted the fix/analytics-sidebar-mobile-control branch July 20, 2026 18:02
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.

2 participants