Skip to content

Refactor mobile streaming, drawers, and diff rendering#11

Open
ronak-guliani wants to merge 3 commits into
devfrom
codex/mobile-architecture-consistency
Open

Refactor mobile streaming, drawers, and diff rendering#11
ronak-guliani wants to merge 3 commits into
devfrom
codex/mobile-architecture-consistency

Conversation

@ronak-guliani
Copy link
Copy Markdown
Owner

Summary

  • Refactors mobile chat streaming to reduce render churn and simplify active assistant rendering.
  • Reworks the main mobile layout to support a second right-side diff drawer and improved gesture ownership.
  • Updates chat, markdown, sidebar, and diff components to use the new architecture and shared rendering paths.
  • Adds connection/bootstrap cleanup, error-message normalization, telemetry, and targeted tests for the new flow.

Testing

  • Not run
  • Added unit coverage for connectAndBootstrap behavior.
  • Added unit coverage for toErrorMessage normalization.
  • Existing mobile UI and streaming paths were updated, but no local test run was performed in this turn.

… fix error handling, remove dead code

Priority 1 (Blocking):
- Document why app/_layout.tsx uses bootstrap() directly (app startup vs user-driven connection)
- Restore comment in connect.tsx explaining connect-stage error handling via store side-effect
- Remove dead requireRefreshSuccess flag and related logic (refresh is always best-effort)

Priority 2 (Recommended):
- Export BootstrapResultError and BootstrapResultSuccess discriminant types for better type reusability
- Update tests to remove requireRefreshSuccess dead code test case

All fixes maintain backward compatibility while improving code clarity and maintainability.
- Split sidebar and diff into separate drawers
- Add telemetry and session diff panel plumbing
- Prepare mobile chat rendering for smoother streaming
@github-actions
Copy link
Copy Markdown

Hey! Your PR title Refactor mobile streaming, drawers, and diff rendering doesn't follow conventional commit format.

Please update it to start with one of:

  • feat: or feat(scope): new feature
  • fix: or fix(scope): bug fix
  • docs: or docs(scope): documentation changes
  • chore: or chore(scope): maintenance tasks
  • refactor: or refactor(scope): code refactoring
  • test: or test(scope): adding or updating tests

Where scope is the package name (e.g., app, desktop, opencode).

See CONTRIBUTING.md for details.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant