Skip to content

fix(remote-provider): preserve edits made during configuration - #4570

Merged
gabsprogrammer merged 1 commit into
Osmantic:public-betafrom
0xacee:fix/remote-provider-preserve-pending-drafts
Sep 13, 2026
Merged

gabsprogrammer merged 1 commit into
Osmantic:public-betafrom
0xacee:fix/remote-provider-preserve-pending-drafts

Conversation

@0xacee

@0xacee 0xacee commented Sep 12, 2026 •

Copy link
Copy Markdown
Contributor

Why this matters: Editing the Remote GPU connection while a previous Configure request is pending loses the newer URL and API key when that request completes. The completion unconditionally marks the form clean, clears its key, and rehydrates it from server status.

Track the revision actually submitted. Clear a submitted draft only if it has not been edited since. Hydrate clean forms in the status response update itself, so displaying the form does not leave a later passive effect queued to overwrite input.

Validation:

  • Deferred-HTTP regression: baseline 1 failed, 13 passed. Final RemoteProvider suite 14 passed, covering edits during apply and post-apply refresh, compact view navigation, successful secret clearing, lifecycle actions and peer models.
  • Real Chromium component smoke: type a second URL/key while a synthetic configure response is held, release it, refresh status, navigate compact views, then inspect desktop/mobile. New draft survives; exactly one submitted request contains the original URL; no page errors.
  • Dashboard lint exits 0 (existing warnings remain); production build and git diff --check pass.
  • CI on unrelated Token Spy changes exposed the compact-view draft symptom on Ubuntu (run 34708563223) and Windows (run 34709252447). The new deferred-apply regression establishes the production overwrite independently; those old CI heads are not claimed green.

Overlap check: searched all-state titles and changed files for RemoteProvider/draft preservation. #3039 adds peer-download polling; #3275/#3208 add helper/summary tests; #4207 introduced the compact views. None handles submitted form revision ownership.

AI assistance: implemented and tested with Codex. Review required before merge: independent review of provider lifecycle UI. Browser requests were synthetic; no live provider was configured.

Combined validation: c08b6695ff14 on public-beta base 9fc9f61. Dashboard: 906 passed; lint exits 0; production build passes. The initial default-worker run timed out in Settings; Settings alone passed all 11 tests, followed by all 906 with four workers.

Backlog compatibility: candidate includes #3039 and passes the 15-test RemoteProvider suite within 63 affected UI tests. Retain peer-download polling without restoring the removed passive form-hydration effect; hydrate clean forms in loadStatus.

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.

2 participants