Skip to content

fix(mobile): keep tracking imports until processing finishes - #2946

Open
AksharP5 wants to merge 2 commits into
CapSoftware:mainfrom
AksharP5:fix/mobile-import-processing-polling
Open

AksharP5 wants to merge 2 commits into
CapSoftware:mainfrom
AksharP5:fix/mobile-import-processing-polling

Conversation

@AksharP5

@AksharP5 AksharP5 commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Mobile imports can stay in processing after the server has finished. The screen makes four status requests and stops, so a slower conversion's completion or failure never reaches the queue.

Keep polling with the existing delays, capped at eight seconds between requests, until a terminal status arrives. Stop when the item is removed, the screen unmounts, or the signed-in client changes. Check again after an in-flight response so it cannot update a removed item or an old session.

Closes #2945.

Before / after

The same controlled API replies were run through the baseline and patched production functions and actual queue reducer. The terminal reply becomes available at 30 seconds.

Scenario Before After
Server completes after the first four checks Stops at 17.5 s; queue stays processing Checks at 25.5 and 33.5 s; queue completes and refreshes
Server reports a late conversion error Queue stays processing, with no Retry Queue shows the error and enables Retry
Server completes on the first check One request, then complete One request, then complete

Times are virtual schedules with zero simulated request latency, not production conversion measurements. This changes status tracking, not conversion speed.

Validation

  • 22 controlled scenarios pass using exact source declarations and the real queue reducer. They cover late completion/failure, early completion, refresh failures, unchanged network-error handling, item removal, unmount, sign-out, client replacement, and old upload closures resuming after a session change.
  • Added screen regressions for late terminal statuses and cancellation before and during requests, using the existing screen test setup.
  • Scoped Biome, TypeScript syntax checks, and git diff --check pass.
  • Full Vitest screen tests and semantic typecheck have not run locally because dependencies are absent. The cached runner stops before collection on a missing @vitest/utils; React Test Renderer is also unavailable. No native-device, real upload, or conversion testing was performed.

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge; no actionable issues were found.

Summary

Keeps mobile imports tracking server progress beyond the first four checks.

  • Mobile uploads keep checking until video processing ends.

No actionable issues found. This review checked source paths; it did not run the screen tests or capture the native UI.

AksharP5 explicitly describes polling until completion or failure as intentional. Continuing while the server reports processing is the requested behavior.

Reviews (1) · Last reviewed commit: "fix(mobile): keep tracking imports until..." · Reviewed by Greptile

@vercel

vercel Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
cap-status Skipped Skipped Oct 22, 2026 7:30pm UTC

@vercel
vercel Bot temporarily deployed to Preview – cap-status October 22, 2026 17:58 Inactive
@vercel
vercel Bot temporarily deployed to Preview – cap-status October 22, 2026 19:30 Inactive

This branch was previously deployed

1 inactive deployment
Preview – cap-status — eec206c4 Deployed Oct 22, 2026 by vercel[bot]
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.

Mobile imports stay processing when conversion outlasts four status checks

1 participant