Skip to content

Mobile cloud navigation: remaining platform and recovery acceptance #2186

Open

Description

@DoodleBears

Purpose

Track acceptance that is intentionally not claimed by the authorized integration of #2169 → #2170, with #2172/#2175 folded into #2170. Source CI and prior iOS Simulator evidence do not qualify every platform or the final main integration at runtime.

Parent product scope: #2161. Completed UI slices: #2171 and #2174. UAT only; no production deployment.

First runnable follow-up: modal-to-cloud navigation

  • On the assigned Simulator lane, open Pair as a native modal, navigate to Cloud services, then open Workspaces. Reproduce whether the root drawer is hidden behind the modal; determine regression origin and fix only the owning navigation seam.
  • Verify the same path from a normal cold launch, then Cloud → existing paired Computer → local Chats. Preserve current sessions, pairing and draft state. Batch28 at merged main da9ee46aa: authorized retained Host fixture, local draft round trip and cold-restart persistence, unchanged signed-out Cloud configuration; not latest-main Host qualification.
  • Capture failing/passing evidence at exact source and integrated heads; do not replace this check with a source-only assertion.

Remaining device acceptance

  • Android native and physical iOS: tabs/contextual Add, fixed footer, name/address rows, invitation/pair entry and close/back/swipe.
  • Pair → Cloud services → Workspaces at intermediate (accessibility-large) and maximum (accessibility-extra-extra-extra-large) iOS text in both themes, plus live default → maximum → default resizing. Batch28 exercised all six size/theme combinations, tab/Manage taps, maximum-size middle-list scroll and Notifications navigation. Notification delivery is not qualified.
  • Signed-out Pair, invitation review/cancel and Cloud public-configuration review/cancel keyboard reachability at default/intermediate/maximum iOS text in both themes. Batch31 tested actual visible scrolling/taps at main da9ee46aa; malformed local inputs only, no login/redemption/config import. This does not cover every generic Sheet.
  • Generic Host-backed group RenameSheet Save/Cancel with real keyboard open: default/intermediate/maximum iOS text × light/dark. Batch33 at mobile907885c3/native494a, retained Host2202bef; actual taps, canonical cancel/save readback and fixture restoration. This covers RenameSheet only, not every generic Sheet or latest-main Host.
  • Recipient-email owner form on iOS 26 Simulator: default/intermediate/maximum text × light/dark, actual focus/edit and keyboard-open read-only Reload/Back, matched default-light before/after. Batch37 at merged main 92c253254; Invite geometry/state only, never sent. Canonical invitations unchanged, independent test session and original app state cleaned/restored. Not Hosted AuthKit/PKCE or delivery proof.
  • VoiceOver/TalkBack live testing (deferred by the Human), long translated names, and other generic Sheet secondary actions. Follow up compact invitation input touch area and Pair error announcement semantics; do not infer full accessibility qualification from Batch31/33.
  • Actual Reduce Transparency for workspace drawer tabs at PR fix(mobile): improve invitation touch targets and pairing feedback #2212 source 2bc5aa4ed: Settings off → on → original off, native readback false → true → false, opaque fallback and Cloud → Computers taps in Batch35. This does not qualify every generic header.
  • Older iOS and generic shared-header Reduce Transparency acceptance; only iOS 26 workspace tabs were checked in Batch35.
  • Named Computer pairing: actual UI optional-name field + real link + Pair completed in Batch29 at merged main da9ee46aa; app cold restart retained the drawer alias, HostId/server HostName/routes/deviceId and live authenticated connection. Existing Perf Writer DM opened without another pairing. Simulator/retained-Host proof only; physical QR and Host restart are not claimed.
  • Complete signed-in owner/member/channel-only guest directory matrix on the final compact layout; pagination/error/retry/cancelled-response ordering and remaining revoked-grant variants. The bounded account-switch paths are qualified separately below; this checkbox remains for the wider matrix.
  • Bounded default-font iOS26 role directory and controlled error recovery: Batch48 at main adcdcf98d / CI39171963917 SUCCESS, Merged #2272. Existing owner2/member6 channels matched native/API lists, guest row exposes only1invited channel without org membership or sibling access. Server status, role and cleanup statements are operator-recorded assertions; raw HTTP and driver evidence are not published with the screenshots, which show native states only. Scoped GET failure injection shows native error/Retry and live recovery after transport restoration; this is not an actual network outage/401/timeout/pagination/cancellation test. Exact new guest grant and2sessions cleaned; prior roles/active sessions and original app/shared state restored. 11screenshots and proof limits. The wider compound directory checkbox remains open.
  • Restart-based account replacement and actual UI logout: Batch45 at PR fix(mobile): clear old workspace state when cloud accounts change #2254 source 36d7a8f4b / CI39167884851 SUCCESS. A directory/channel content disappears after actual logout and Back; B verified identity/directory excludes A organization ID, old organization/two channels are server-denied, old native routes/retry/Back do not expose A content/composer. Screenshots and limits. Both task sessions revoked, prior sessions preserved and app/cache/settings restored. Verified credentials installed by fixture + restart, not warm native login/Hosted PKCE; warm state and late-response regressions are component tests. Extra B-channel API-to-AX helper assertion remains unconfirmed.
  • Channel invitation sender Copy and native Share open/cancel (light/dark), recipient actual Review/Join and target-only access, then exact grant revocation while recipient session remains valid. Batch39 at main 132b33e3c; screenshots and proof. No external share delivery; auth fixture setup is not browser-login proof. Original clipboard content restored to empty with an empty-item metadata limitation documented.
  • Organization invitation: actual owner UI issuance, exact clipboard copy, native Share open/cancel light/dark, recipient link Review/Join → automatically selected organization with both existing channels visible/openable. Batch42 at main 132b33e3c; screenshots and proof. New member role verified, only new membership removed, recipient still authenticated with organization/two channels403; all prior memberships/sessions restored. Existing trusted service/session fixture, not browser-login or external delivery proof.
  • On ORGANIZATION_ACCESS_DENIED, clear previously loaded channel rows/selection and verify the UI no longer offers stale entries. Fixed in merged PR fix(mobile): clear stale channels after access denial #2250 (01504bd14), source 5412cbd17; Batch44 actual UAT Reload/repeated Reload removes rows, both previously visited native channel URLs and Open retry remain denied, Back does not restore protected content. Recipient /api/me200 while organization/two channels403. Screenshots and bounded proof. Source CI39164287814 and final PR CI39166585115 passed; CodeRabbit full review found no actionable comments. Post-merge main CI39167142693 passed; native evidence remains bound to the Batch44 source.
  • Same-process native A logout → B Hosted AuthKit/PKCE login: Batch47 at merged main da1112c34 / CI39169947847 SUCCESS. Genuine password forms and organization picker, no Human login/session injection/restart; native PID and observational JS marker unchanged through B refresh/logout. B identity verified, A-only organization absent; operator-run authenticated API assertions reported403 for the old organization/two channels, with no raw request/response evidence published in the screenshot snapshot. Actual Back/deep-link/retry refused protected A content; screenshots establish this local refusal only. All seven B-owned channel names matched authenticated API data across native scrolling. Both new sessions revoked/latest refresh rejected, original active sessions and membership identity/status/roles preserved, app/cache/settings/queue restored. PR #2266 evidence and limits. Default iOS26 only; arbitrary delayed-response races, populated history and invitation preservation through login are not newly qualified. This fresh status-aware B list check supersedes the earlier inconclusive Batch45 helper without relabeling that earlier run.
  • Revoked-organization flow beyond Batch44: exact-base matched native recapture, intermediate/maximum text and Android/physical-iOS qualification remain unverified. Batch44 covers default-text iOS light/dark; do not treat earlier form-layout checks as this flow’s complete matrix.
  • Physical QR scanning and external share delivery. New-instance trust → interactive Hosted AuthKit/PKCE return must retain the exact invitation; wrong-account and expiry paths remain. Batch39/42 qualify channel/organization invitation UI and exact access cleanup on an existing trusted service; synthetic sessions do not qualify the browser journey.

Deferred product work (stays in #2161)

QR rendering/save, post-create organization/channel sharing, canonical desktop cloud-origin treatment, and the remainder of the broad collaboration goal are not closed by these UI PRs. Settings SheetStack adoption of the generic header remains a later slice after its existing dismissal policy is requalified; do not expand this acceptance fix into that work.

TOB service companions #25/#26 were observed open and deployed only to UAT at integration review. Their merge/release is outside this DeepSeekBot-only merge authorization.

Evidence rules

Follow the shared device queue; no parallel Simulator/build or reuse of another runner's Host. Keep existing credentials/data; use scoped test fixtures, restore local names and display settings, and release own driver/Metro. Record source/CI/native/Human gates separately. Prior screenshots and recordings are in #2169/#2170/#2172/#2175.

Navigation slice result — PR #2189

Batch27 reproduced the native modal covering the root drawer on main9e739 and verified the minimal fix at127ccaa4. Normal cold launch and both existing-target/first-entry paths pass. Batch27 had no assigned paired fixture; Batch28 subsequently verified paired Computer → local Chats, unsent draft preservation and cold restart at merged main da9ee46aa. Light/dark before/after screenshots and exact source/native identities are in #2189. The Human merged PR #2189 as da9ee46aaca938924a2a3057c9b46ff18bb06977 on 2026-10-18. CodeRabbit was rate-limited before merge and is not claimed as completed. Other unchecked gates remain open; post-merge CI and native continuation are tracked below.

Post-merge continuation — Batch28

Full main CI39131793797 succeeded at da9ee46aaca938924a2a3057c9b46ff18bb06977. Assigned iOS Simulator reused native494a after compatibility verification. No product changes were needed for the two completed checks above. Screenshots, exact identities, restoration proof and limitations are linked in the Batch28 evidence comment.

Visual follow-up stays open: enlarged Computers labels wrap inside the word; at maximum text the address requires middle-list scrolling. Functional navigation passing does not qualify polished typography, long translations or screen-reader acceptance. Fixture pairing used the production pairing seam for test setup, not the user optional-name/QR flow.

Only the newly created QA device was revoked/unpaired. Original devices, cloud configuration, local files/preferences and shared checkout were restored/read back. No TOB authentication, model sends, deployment or Prod changes. All other unchecked items remain open.

Named Computer pairing — Batch29

The real native UI pairing and app cold-restart check above passed. Screenshots and safe assertions are in the Batch29 comment and #2189. Only one temporary device was created, identified against the UI redemption, then revoked; original device statuses and Simulator local state were restored. No product change or Prod activity.

Known display-consistency follow-up: existing Chats source-filter chips still use server HostName while the drawer uses the local alias. This is coordinated with #2194, which owns Header/environment paging. The completed check proves local naming/persistence/connection, not consistency across every UI surface. All other unchecked acceptance remains open.

Large text and keyboard — Batch31

The bounded three-form matrix above passed without a product code change. Evidence manifest records native/source identities, driver limitations and restoration. Full main CI39131793797 and 59 focused source tests passed independently. Generic Host-backed RenameSheet, optional Statistics Sheet and live screen-reader tests are not qualified. Original app data/preferences and shared lane restored; no Prod activity. Other unchecked gates remain open.

Generic RenameSheet — Batch33

The six keyboard-open size/theme combinations above passed without a product change. 18 screenshots and proof manifest distinguish actual Save/Cancel behavior from driver AX/text-selection limitations. Full CI39146810969 and 11 focused tests passed independently. One disposable empty group and one pairing cleaned up; original channel/device state and App files restored, lane released. Other unchecked gates remain open.

Signed-out input and transparency follow-up — Batch35 / PR #2212

Native evidence and exact matrix, source 2bc5aa4ed229c8ed46ee762ae8d8cd0e2f6d5790 / native494a. Source CI39150908461 passed; evidence-only head 15e89926e9f7059ec90f5610a0180e93a3f6cf9f passed fresh CI39154757342. The invitation input and Pair feedback fixes were subsequently merged as 92c253254; Batch35 evidence remains tied to its original source.

Default/light invitation Review/Cancel and Pair refusal/Retry passed with real keyboard-open taps. Maximum/dark invitation Review/Cancel passed after visible content scrolling. Matched base/candidate screenshots show the input target and disabled Pair button. Real Reduce Transparency result is checked separately above. No complete platform/font/theme matrix is claimed; email input requires an independent owner-session lease and was not accessed. Driver label/scroll/readiness/switch-hit failures and system glyph limitations are documented in the manifest.

Original app runtime and files/preferences/display restored; one new empty draft removed after verification, own Metro/driver closed, shared checkout restored and lane released. No authentication/Host resource writes or Prod changes. The separate Batch34 prior-session uncertainty was not audited by this signed-out run. Remaining gates and #2186 stay open; VoiceOver is still deferred.

Recipient-email follow-up — Batch37

PR #2212 merged as 92c253254fe9d24fb7243fb978f1defb9bc5c14e after CodeRabbit full review with no actionable comments and all applicable PR CI passing. Post-merge full main CI39156654455 passed. Batch37 screenshots, corrected driver results and restoration complete only the recipient-email UI check above. Initial maximum-text AX clipping false positive is explicitly invalidated; complete-button reruns passed. All other unchecked items stay open; no Prod action.

Activity

  1. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Integration baseline is now main 9e73993308cf01e5d89f1be9a504ca657166aefa via #2170. Before merge, candidate 4c4e4f079a4f457ca122694427b1bf5c48346575 passed 690 mobile tests (8 skipped), typecheck/format/diff and all applicable CI jobs.

    Main #2109 was integrated by retaining both HostDrawer and AppDialogHost at the root. Include the combined Android dialog/drawer interaction in the next assigned native acceptance window. No checkbox here is newly marked passed; historical screenshots remain source-bound. #2171/#2174 close their implemented scopes; #2161 remains the parent for product gaps. UAT only, no Prod.

  2. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim — modal-to-cloud drawer navigation

  3. added
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
  4. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Read-only preflight: main 9e73993308cf01e5d89f1be9a504ca657166aefa full CI39125979190 completed SUCCESS, including all three test shards and Android native module tests. #2170 CodeRabbit still reports review in progress, with no review or inline findings returned; it is not counted as approval.

    Independent worktree/branch codex/2186-modal-cloud-navigation prepared at that main. Existing #2185 task still owns the Simulator/8091; #2186 is pending in the shared queue, not assigned. No reproduction, runtime change, screenshot, device action or deployment has been performed by this task yet. Awaiting permission to coordinate across tasks and then the coordinator-assigned lane. Task codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3.

  5. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Navigation fix: Draft #2189, head b6b2330b509b4fc4f74a8ba818cdb6744c04dfc5 (runtime127ccaa4; later commit only evidence/docs). The PR embeds matched light/dark native before/after images; GitHub raw image response verified200image/png.

    Baseline main9e739 full CI39125979190 passed. New PR CI39129720924 is running. CodeRabbit on #2170 remains pending; on this Draft it explicitly skipped review, so neither is claimed as approval.

    Batch27 passed normal cold entry, Pair modal → Cloud services with/without an existing target, visible/operable drawer, swipe close and Back. Source:690 mobile tests pass/8skip, typecheck, focused format, feature map and release ledger pass. No native rebuild.

    Remaining: paired Computer return; unfinished pairing/in-flight cancellation; Android/physical iOS/accessibility; the other recovery and sharing gates listed in this issue. No TOB/CloudClient/Host/account/Prod mutation or merge. Original data/preferences/checkout restored and Simulator lane released to coordinator.

    Agent-Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3

  6. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Navigation slice handoff: Draft PR #2189 final head c6d81418188beac43a8cd60b234a906f773627b5. CI39129973922 completed SUCCESS for all applicable jobs, including lint/format/typecheck/build, affected tests, mobile iOS/Android bundles and isolated Host smoke. The first CI caught a disallowed JSX comment; it was removed, with no change to the executable navigation verified in Batch27.

    The PR includes matched before/after light/dark screenshots. Native source remains127ccaa4; the final source differs only by removing that comment. CodeRabbit skipped the Draft and is not a passed review. Simulator lane and original state have been restored/released. This slice is ready for review, not merged. Remaining #2186 platform, paired Computer, in-flight pairing and other recovery checks stay open; no Prod or TOB mutations.

    Agent-Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3

  7. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Review update: head 142fb706bdf7424c9b0ca2cd490ad4938193bd5f has all applicable CI passing. Independent Standards and Spec reviews have zero remaining/blocking findings; the sole evidence-documentation gap was fixed and re-reviewed.

    CodeRabbit full review was explicitly triggered but returned “Review limit reached”, with the next included review around2026-10-18 22:45 JST. Its green status is not an actual review. PR #2189 is therefore not merged; do not enable auto-merge based on that status. Once quota is available, re-trigger review at the unchanged head, resolve any valid findings, recheck CI/head and use the existing Human conditional merge authorization.

    #2186 remains open with paired-Computer, enlarged/live-text, platform/accessibility and recovery acceptance unchecked. TOB task informed; no Simulator, TOB service or Prod operations in this review turn.

    Agent-Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3
    State: handed-off pending external review quota.

  8. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim — post-merge paired return and text matrix

    • Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3
    • Branch: codex/2186-paired-return
    • State: active; waiting for coordinator-assigned Simulator and Host fixture.
    • Baseline: Human merged fix(mobile): dismiss pairing modal before opening cloud services #2189 at da9ee46aaca938924a2a3057c9b46ff18bb06977; post-merge CI39131793797 pending.
    • Scope: verify Cloud services → paired Computer → local Chats with original source/draft preserved, plus intermediate/maximum text in both themes and live resize. No assumed paired fixture; coordinate before any Host/device mutation.
    • No redesign of Header/search/tabs, no TOB service/auth change, no message sends, no Prod or native build. Preserve other tasks’ checkouts/fixtures and all unchecked Mobile cloud navigation: remaining platform and recovery acceptance #2186 acceptance.
  9. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Post-merge native acceptance — Batch28 (#2186)

    Passed at merged main da9ee46aaca938924a2a3057c9b46ff18bb06977:

    • Actual Pair native modal → Cloud services → Workspaces → visible and operable tabs/Manage action, in default/intermediate/maximum text × light/dark; live default → maximum → default also passed.
    • Cloud → existing paired QA Computer → local Chats/Perf Writer DM preserves the unsent local draft. Cold restart reconnects the same saved Computer and retains the draft; canonical allowed-DM readback has no marker. The original Cloud configuration remains signed out and unchanged.
    • Maximum-text middle-list scrolling and Notifications destination are reachable. This build cannot deliver notifications; delivery is not claimed.

    Full main CI passed. Native client 494a20f1eb4f0666a2c90bc3c758af4e7ff5f46b was reused after checking native inputs. The Computer is a coordinator-authorized retained QA Host, not latest-main Host qualification. Fixture setup used the real pairing/redeem/save seam; user QR and optional-name pairing acceptance remain open.

    Native screenshots — 402×874

    Default text

    Batch28 modal-default-light

    Batch28 modal-default-dark

    Intermediate text

    Batch28 modal-intermediate-light

    Batch28 modal-intermediate-dark

    Maximum text

    Batch28 modal-maximum-light

    Batch28 modal-maximum-dark

    Unsent draft after cold restart (light) / Cloud round trip (dark)

    Batch28 cold-draft-light

    Batch28 draft-return-dark

    Limits and restoration

    Large text wraps Computers within the word; maximum-size addresses need middle-list scrolling. This is functional navigation evidence, not complete visual/accessibility acceptance. The development gear initially obstructed one tap; it was moved before retesting and its original position restored afterward.

    Only the newly created task device was revoked/unpaired; both original Host devices were preserved. The original no-Host/signed-out-Cloud state was read back, Documents/preferences restored byte-for-byte, and shared checkout/display settings restored. Task driver/Metro closed; coordinator and TOB task notified. No product code change, Bot send, TOB auth, deployment or Prod activity.

    #2186 remains open: Android/physical iOS, VoiceOver/TalkBack and long translations, older iOS/Reduce Transparency, actual named pairing, signed-in permissions/directory and invitation/QR/native-share cases are still owed. CodeRabbit was quota-limited before the Human merge and is not claimed as completed.

    Evidence manifest.

  10. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim — named Computer pairing and cold restart

    • Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3
    • Branch: codex/2186-named-pairing
    • Scope: use the actual Pair screen's optional local name and pairing link, verify the named Computer after cold restart and a real connection to the assigned QA Host. Check unchanged Host identity/route and original Cloud state, revoke only the new test device, and publish screenshots to fix(mobile): dismiss pairing modal before opening cloud services #2189.
    • Baseline: main da9ee46aaca938924a2a3057c9b46ff18bb06977; full CI39131793797 succeeded.
    • State: active; waiting for the shared-device coordinator's next bounded window and fixture authorization. Coordinated with the TOB N1: Mobile Chats Header and source environment paging #2194 task; no Header/pagination implementation, TOB account change or production activity.
    • Previous Batch28 claim completed for its bounded runtime checks, as recorded in the evidence comment. The other Mobile cloud navigation: remaining platform and recovery acceptance #2186 acceptance gates remain open.
  11. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Named Computer pairing and app restart — Batch29

    Passed on merged main da9ee46aaca938924a2a3057c9b46ff18bb06977: actual Pair screen → enter QA Named Computer → enter one real pairing link → tap Pair → named/online Computer → cold app restart → same name and authenticated connection → existing Perf Writer DM opens.

    Read-only checks confirm unchanged server HostName, HostId, routes and device ID across restart, with a live roster. The original Cloud configuration remains signed out and unchanged. Exactly one new device ID matched the UI redemption; the local Computer alias is separate from the server's device name. No pairing-state injection or rewritten offer was used.

    Full main CI passed at that source. Reused native client 494a20f1eb4f0666a2c90bc3c758af4e7ff5f46b; no product code changes were needed.

    Actual iOS Simulator screenshots — 402×874

    1. Optional local name entered; pairing link still empty

    1. Optional local name entered; pairing link still empty

    2. Named Computer online after UI pairing — light

    2. Named Computer online after UI pairing — light

    3. Named Computer online after UI pairing — dark

    3. Named Computer online after UI pairing — dark

    4. Same name and online connection after cold restart

    4. Same name and online connection after cold restart

    5. Existing allowed DM opens after restart; no message sent

    5. Existing allowed DM opens after restart; no message sent

    Scope and follow-up

    This qualifies optional local naming and an app cold restart on the assigned Simulator with the retained QA Host. Host restart/latest-main Host, physical QR scanning, physical iOS and Android remain outside this proof. The existing Chats source-filter chip still displays the server name while the drawer displays the local alias; this consistency item was explicitly handed to the concurrent #2194 Header/environment paging owner. No overlapping UI edits were made.

    The single new test device was revoked/unpaired; all three original device records/statuses remained unchanged. Original pairing/Cloud state matched, local Documents/preferences restored byte-for-byte, task Simulator clipboard cleared, shared checkout/settings restored, driver/Metro stopped, and the window released to the coordinator. No sends, TOB auth, deployment, Prod or merge.

    #2186 stays open for its other unchecked gates. Driver-only failed attempts and sensitive snapshots stay private; published screenshots contain no pairing link or credential.

    Evidence manifest and safe assertions.

    Task codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3: named-pairing slice completed; claim.

  12. 56 remaining items

  13. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Batch48 — bounded role directory and error recovery verified

    Draft #2272, evidence head 1062d2dac3e22d52bcc65083bd01ff77cd047b19, contains11inspected native screenshots and a reproducible evidence manifest. Exact-head CI39173862089 passed all applicable jobs. Product source is green main adcdcf98d, native494a; no product change or deployment.

    • Existing owner2/member6 authorized channels matched native controls/API across scrolling. Owner Create form present; member form absent. Roles matched accessibility labels and actual server membership.
    • B's own organizations and a separate channel-only Guest organization appeared together; guest saw exactly1invited channel, without sibling/Create or added organization membership. Independent server checks target200, sibling/org403.
    • Two exact allowlisted GET requests were made to fail by a temporary app-local throw-only wrapper. Native channel error retained authorized rows; drawer showed Retry. Original transport restored before actual Reload/Retry, both recovered from the live UAT service. This is controlled fault-injection UI proof, not physical network outage/timeout/401/pagination/cancellation proof.
    • API fixture authentication and one new internal guest invitation were setup, not browser/invitation UI proof. Only the new grant was revoked while B remained authenticated; target403 and original guest list restored. Exact two sessions cleaned with refresh rejection; original active-session sets and stable membership roles unchanged. Normal login metadata updated.
    • Original app/files/cache/display/clipboard, shared checkout and dependency inventory restored; own driver/Metro stopped and queue explicitly released to coordinator/TOB. No Host/Prod/VoiceOver/physical device/build activity.

    Only the bounded role/recovery item is checked. #2186 remains open for the wider matrix and all other pending gates. #2272 stays Draft/unmerged. Image tags were read back with full immutable commit URLs; a PNG returned200 image/png. Local PNGs were visually inspected; full rendered GitHub page was not re-qualified here.

    Agent-Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3; branch qa/2186-directory-recovery. State: handed-off for this acceptance slice. Separate authorized #2266 review/merge remains active pending CodeRabbit.

  14. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent outcome — #2266 merged; next slice in Draft #2272

    • Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3; state: completed for review/merge, handed-off for the next acceptance slice.
    • #2266 merged as 3d6c44689e540f9e1fae97476dcf7269663a48af after exact head 9b740839f59a6ea43b93007dd4be74cae00833ff passed CI39174422303. Standards and Spec reviews: zero outstanding findings. CodeRabbit full review raised one minor evidence-qualification finding; fixed, independently rechecked and resolved, final status SUCCESS.
    • Evidence clarification also applies to the earlier Batch47 outcome above: reported HTTP403 values are operator-run authenticated API assertions, with no raw request/response artifact included in the public screenshot snapshot. Native images prove visible local refusal. Native evidence remains tied to Batch47 product source, not the merge commit.
    • Draft #2272 has 11 inspected screenshots for the bounded owner/member/channel-only guest directory and controlled GET-error Retry recovery. Exact-head CI39173862089 passed. No product fix was needed. Wider network/401/timeout/paging/cancellation cases are not claimed.
    • Mobile cloud navigation: remaining platform and recovery acceptance #2186 remains OPEN with all six compound unchecked acceptance groups retained. VoiceOver/TalkBack live tests remain deferred. Shared simulator restored/released; temporary sessions/grant cleaned, original state preserved, TOB and coordinator notified. No Prod change or deployment.
    • Post-merge main CI is a separate new run; it is not claimed passed by this outcome.
  15. removed
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
  16. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent review claim — #2272

  17. added
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
  18. DoodleBears commented on Oct 18, 2026

    @DoodleBears
    ContributorAuthor

    Agent outcome — #2272 merged; #2186 remains open

    • Task: codex/local/01a14eca-891c-7d30-84fa-8e4dd7b060b3; state: completed for this review/merge slice.
    • #2272 merged as b8aea334584b7d801cb2c5f851158590d5f90770. Main 3d6c44689 CI39174773783 and exact final PR head 1dfe3f39c1c6fe4f2fee4cc11458c47c2347552f CI39176070034 passed before merge.
    • Standards: 0 outstanding hard violations or heuristic findings. Spec: 0 outstanding findings for this bounded slice. Private operator API/role/cleanup assertions are now explicitly separated from screenshot proof.
    • CodeRabbit full review at a4110385b raised one minor index-link issue. Fixed in 1dfe3f39c, all eleven PNG targets verified, focused formatting/diff checks passed, review thread resolved and final status SUCCESS. The amendment was independently rechecked; this is not a claim of a second full CodeRabbit review after that amendment.
    • Eleven native images remain tied to Batch48 product source adcdcf98d, not the merge commit. Prior owner/member/channel-only guest and controlled GET-error recovery results retain their limits. No fresh device/authentication/resource operation was needed for this documentation review; TOB/queue coordinated and existing released lane left untouched.
    • All six compound unchecked Mobile cloud navigation: remaining platform and recovery acceptance #2186 acceptance groups remain open; VoiceOver/TalkBack deferred. No Prod change or deployment. Post-merge main CI is a separate new run, not claimed passed here.
  19. added
    feature:channelChannel chat, timeline, composer, and navigation
    and removed
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 18, 2026
  20. added this to the v2.0 milestone on Oct 24, 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

    feature:channelChannel chat, timeline, composer, and navigationready-for-agentFully specified, ready for an AFK agent

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions