Skip to content

feat(mobile): channel management — create, browse, join/leave, DMs, canvas#331

Merged
wesbillman merged 1 commit intomainfrom
mobile-channel-management
Apr 15, 2026
Merged

feat(mobile): channel management — create, browse, join/leave, DMs, canvas#331
wesbillman merged 1 commit intomainfrom
mobile-channel-management

Conversation

@wesbillman
Copy link
Copy Markdown
Collaborator

@wesbillman wesbillman commented Apr 15, 2026

Summary

  • Adds full mobile channel management: grouped channel list (Channels/Forums/DMs), browse & search channels, create channels/forums, new DM flow with user search, channel detail with members sheet, canvas editing, join/leave actions, forum placeholder, and archived channel handling
  • Extracts SignedEventRelay to DRY up Nostr event signing across send_message and channel_management providers
  • Adds channels:write to mobile token scopes on desktop pairing
  • Fixes lefthook GIT_DIR leak that caused Flutter version detection to fail in git hooks

Test plan

  • All 97 Flutter tests pass (87 existing + 10 new)
  • flutter analyze clean — no issues
  • dart format clean
  • All lefthook pre-commit and pre-push hooks pass
  • Manual: create a channel from mobile, verify it appears in list
  • Manual: browse and join an open channel
  • Manual: open a DM with user search
  • Manual: view and edit channel canvas
  • Manual: verify archived channels show read-only notice
  • Manual: verify forum channels show placeholder

🤖 Generated with Claude Code

…s, and canvas editing

Adds full channel management to the mobile app: grouped channel list
(Channels/Forums/DMs), browse & join channels, create channels/forums,
new DMs with user search, channel detail with members sheet, canvas
editing, join/leave, forum placeholder, and archived channel handling.

Extracts SignedEventRelay to DRY up Nostr event signing across
send_message and channel_management providers. Adds channels:write
to mobile token scopes.

Fixes lefthook mobile recipes to unset GIT_DIR so Flutter's version
detection works correctly when run from git hooks.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@wesbillman
Copy link
Copy Markdown
Collaborator Author

Screenshot 2026-04-15 at 3 22 19 PM Screenshot 2026-04-15 at 3 22 28 PM Screenshot 2026-04-15 at 3 22 34 PM Screenshot 2026-04-15 at 3 22 39 PM

@wesbillman wesbillman enabled auto-merge (squash) April 15, 2026 21:27
@wesbillman wesbillman merged commit affeee6 into main Apr 15, 2026
10 checks passed
@wesbillman wesbillman deleted the mobile-channel-management branch April 15, 2026 21:28
tlongwell-block added a commit that referenced this pull request Apr 16, 2026
* origin/main:
  [codex] Fix authz, scope propagation, and shell-injection bugs (#320)
  feat(mobile): implement Activity tab with personalized feed (#337)
  feat(mobile): upgrade mobile_scanner to v7 (Apple Vision) (#336)
  feat(mobile): app branding — icon, name, launch screen (#335)
  fix: cancel TTS on remote human speech in multi-participant huddles (#332)
  feat(mobile): design refresh — navigation, search, reactions (#334)
  feat(desktop+acp+mcp): deterministic nested thread replies via persisted reply context (#322)
  feat(mobile): channel management — create, browse, join/leave, DMs, canvas (#331)
  fix: derive staging ports from worktree to avoid collisions (#329)
  fix: mentions survive copy/paste from chat into composer (#328)
  feat(home): add activity and agent feed sections with deep-linking (#330)
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