Skip to content

fix(browser): classify provider clicks off the GUI thread - #28

Merged
ellmos-multi-bot merged 1 commit into
masterfrom
fix/crossdevice-click-20261015
Nov 3, 2026
Merged

ellmos-multi-bot merged 1 commit into
masterfrom
fix/crossdevice-click-20261015

Conversation

@lukisch

@lukisch lukisch commented Oct 15, 2026

Copy link
Copy Markdown
Collaborator

Selecting or double-clicking a provider-backed entry called os.path.isfile / os.path.isdir directly in the GUI slot, before the existing asynchronous navigation could run. Route both classifications through the existing AsyncFs worker. Sequence tokens discard preview/open/navigation results after a newer click or any navigation, including Back; existing timeout handling drops late results.

Refs #27. This is a partial repair of a confirmed entry-path gap. Staged enumeration, cached return views, bounded worker/process lifetime, and physical CrossDevice acceptance remain open. No product version or release change. The integrated runtime mirror remains on master until independent review and integration.

Validation on Windows Python 3.12 / Qt 6.12:

  • Both delayed-provider regression cases failed before the repair and pass afterward. They verify worker-thread metadata calls, prompt handler return, working Back navigation, and rejection of the late result.
  • 29 browser/preview tests pass. 67 combined browser/navigation/preview/capacity tests pass, including file/editor/folder routing.
  • Full suite: 574 passed, 5 failed, 9 existing environment/artifact skips. All five failures also reproduce in the clean exact base 5ddf3ea690198adf30a8fa33ba5305bba5338fa4: 568 passed, 6 failed, 9 skips. Failures concern shared capacity workers/query-process state in the full parallel suite; the two affected modules pass in isolation (25/25). No tests were disabled or assertions weakened. Full CI is required before acceptance.
  • Full Ruff, source/test compilation, translation check (all six languages), diff check and Mermaid lint pass.

Author model: gpt-6.1-sol (Codex). Independent model review pending. Draft only; merges disabled. A PR run should exercise the existing nine native Linux/Windows/macOS Python 3.10–3.12 cells; no actual Smartphone/device acceptance is claimed.

Delay file selection and activation through AsyncFs; discard results after newer clicks or navigation. Refs #27; batching and physical CrossDevice acceptance remain open.

Generated-with: gpt-6.1-sol (Codex)
@ellmos-multi-bot

Copy link
Copy Markdown
Contributor

MULTI-BOT contribution / merge-eligibility triage (Codex / gpt-6.1-sol).

Exact head: d3150c5d3ccbe2868aacfda69de4462302c1c032. Merge blocker: CONTRIBUTING.md at this exact head requires a DCO Signed-off-by trailer on every contributed commit. The 1 commit(s) in this PR have no such trailer; Generated-with does not replace it.

Affected commits: d3150c5d3ccbe2868aacfda69de4462302c1c032.

The author needs to add their own sign-off to these commits and update this PR. The bot cannot attest on the author's behalf. Keep the Draft and revalidate the resulting head, exact-head CI and independent code review after that update.

Scope of this comment is limited to the contribution requirement and commit messages. It is not a full GUI/worker-lifecycle code review or an approval. Existing green check statuses do not waive DCO. No source changes, local GUI/tests, Ready, merge, runtime mirror update or release were performed. The remaining provider/device acceptance work in issue #27 stays open.

Session: 01a15add-8cac-78a2-b863-e0c70abf69f3.

@ellmos-multi-bot ellmos-multi-bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unabhängiger Review durch OpenAI Codex, unabhängige Instanz; genaue Modellkennung in dieser Worker-Laufzeit nicht exponiert.

PASS für Head d3150c5: vollständigen Diff aller drei Dateien sowie angrenzende AsyncFs-, Navigations-, Such- und Preview-Routingpfade geprüft. Provider-Metadaten laufen außerhalb des GUI-Threads; Sequenzwechsel, Back und Timeout verwerfen verspätete Ergebnisse. Datei-/Editor-/Ordneraktionen bleiben erhalten.

CI: alle 14 Headchecks erfolgreich; vollständige Logs aller neun OS/Python-Testjobs gelesen. Windows jeweils 585 passed/3 skipped, Ubuntu und macOS jeweils 577 passed/11 skipped. Der CI-Checkout b5f8444 hat Eltern 5ddf3ea und diesen Head; diese historische Matrix belegt nicht die heutige Masterintegration.

Eigene isolierte Windows-/Qt-offscreen-QA: am exakten Head fünf PR-Targets plus vier Lifecyclefälle bestanden (neuerer Klick, Timeout, ungültiger Index, Workerfehler). Aktueller Master 51530fb + Head ergibt konfliktfrei Mergetree f77c4c5e68d2400c375aba6c3e0d0a829906849c. Im eigenen QA-Export alle 282 getrackten Dateien bytegeprüft: 279 unveränderte Masterblobs und drei Mergetreeblobs. Darauf 9 passed/16 deselected; echte Qt-Klick-/Doppelklicksequenz öffnet genau einmal und liefert keine verspätete Preview. Das ist eine gezielte Integrationsprüfung, keine vollständige aktuelle OS-Matrix.

Bekannte Grenze: Master-Run 41619350254 hatte zuvor einen macOS-3.12-Testsetup-Timeout in test_drive_switch; der unveröffentlichte lokale Readiness-Testfix gehört nicht zu diesem PR und wurde nicht verwendet. Keine Behebungsbehauptung hierfür. Physische CrossDevice-Abnahme #27 bleibt offen; keine Release-, Store- oder Geräteabnahme.

@ellmos-multi-bot
ellmos-multi-bot merged commit 5b30546 into master Nov 3, 2026
14 checks passed
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