Skip to content

N2: Mobile bottom navigation island and contextual creation #2195

Closed

Description

@DoodleBears

Parent

#2193

What to build

From the selected Chats environment or inherited Activity scope, expand the bottom island and complete a real authorized creation or join operation. Preserve actual navigation and platform behavior while moving creation out of the Header.

Acceptance criteria

  • At default text size, bottom navigation island and separate equal-height circular + follow iOS glass/Android OCAT styles; + expands the island into the small action panel and becomes close.
  • Creation and target choices are always a vertical menu with leading icons and left-aligned wrapping labels, never a grid. Outside/close/back dismissal closes only the menu and cannot activate background navigation; narrow/large-text layouts keep actions reachable. At accessibility sizes the navigation may grow, while icon-only plus/close keeps a normal touch size.
  • Computer offers new Channel/new Bot; Organization offers new Channel/invite according to actual grants; All offers new Channel/new Bot/join by link or QR and asks for a valid target when required.
  • Create a Computer Channel and authorized Cloud Channel, then open each result in the correct scope; independently inspect canonical records via the existing APIs/CLI. Denied roles cannot write.
  • Bot creation resolves to an authorized Computer; invite/join retains existing Organization versus channel-only access. Existing pairing and Organization administration stay in drawer/settings.
  • Chats environment tabs stay single-line with bounded width, tail-ellipsized labels and nonshrinking source icons; no second-line service URL. Full source identity stays in accessibility labels and the drawer, and stable keys/scope do not change.
  • Preserve inherited scope and Activity badge meaning through menu open/close. Search destination is not exposed as an empty placeholder; N3 adds it with a working path.
  • Validate the native adjacent-action geometry against the installed stack before choosing implementation; do not invent a second navigation stack or silently migrate the SDK.
  • Native evidence includes actual menu selection/dismissal, keyboard/safe area, both themes and required text sizes; focused regressions protect target choice and permission failure.

Blocked by

Delivery and testing boundary

Implementation authorized by the Human after #2199 review/merge; delivery continues in Draft PR #2211. User-approved follow-ups replace the grid with menu rows and keep source tabs single-line. Milestone v2.0; Open Cloud Groups Project. One issue = one implementation PR. UAT only; no Prod/merge authorization. Use existing source owners/public API and CLI readback for business facts, focused behavioral regressions and exact-head native evidence. Reserve the shared device lane; report iOS/Android/physical/Human and large-text/keyboard/accessibility results separately. Preserve unrelated work. Do not infer native success from source tests.

Activity

  1. added this to the v2.0 milestone on Oct 18, 2026
  2. added
    area:ui-uxInteraction and visual experience; may accompany a code-layer area
    scope:tracerHuman-testable implementation slice
    on Oct 18, 2026
  3. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim

  4. added
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
  5. 1 remaining item

  6. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Batch38 UAT Simulator follow-up is published in PR #2211 with matched screenshots and a list/chooser/cancel recording. Source before edf7c31 / after917b6e3d, compatible installed native494a; source917b CI39156982988 passed.

    Passed: bounded one-line source tabs with retained icon; left-aligned creation rows; native Chats/Activity and plus/close taps; All target chooser and Back; maximum-font labels wrap rather than elide. At maximum size Chats wraps within the word; native AX still exposes nested nodes, so VoiceOver is unqualified.

    Found and retained: switching light→dark leaves a bright glass backdrop and poor inactive-label contrast; app restart restores dark material. Repair c276044 remounts only the decorative glass backdrop on appearance change. Focused 10 tests, TypeScript, style and release-ledger checks pass; new CI/native queue recheck pending. Full theme/font interaction matrix is NOT passed.

    Shared lane restored/released: exact new Host device revoked; original channel/device states preserved; original runtime/files/preferences and light/large/unchanged transparency restored. No Cloud authentication/resource/message writes, phone, Prod or merge. Existing authenticated Cloud/create-open evidence remains tied to Batch36, not requalified here.

    PR remains Draft and issue remains open.

  7. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    PR #2211 now includes the requested native iOS 26 glass creation panel and target chooser. Batch43 tested runtime 06b8faded after source CI passed; default/max text, live themes, row→chooser→Back→Close, tabs and navigation verified in the assigned UAT Simulator window. Before/after screenshots and recording: #2211 (comment)

    Evidence/docs-only follow-up 917c43e66 has no runtime changes; CI tracked on the PR. Shared lane restored/released. Reduce Transparency on-state, VoiceOver, Android, physical device and Human acceptance remain explicit limits. No Prod, no merge; issue remains open for review.

    Agent-Task: codex/local/01a148ae-ec7f-74b2-8157-961411ce54c9
    Agent-Claim: #2195 (comment)

  8. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent work outcome

  9. removed
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:ui-uxInteraction and visual experience; may accompany a code-layer areaready-for-humanRequires human implementationscope:tracerHuman-testable implementation slice

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions