Skip to content

[Follow-up] Simplify chat preference initialization - #470

Draft
Sheng Chen (jdneo) with Copilot wants to merge 2 commits into
jdneo-preferences-01-nonblocking-loadingfrom
copilot/jdneo-preferences-01-nonblocking-loading-again
Draft

Sheng Chen (jdneo) with Copilot wants to merge 2 commits into
jdneo-preferences-01-nonblocking-loadingfrom
copilot/jdneo-preferences-01-nonblocking-loading-again

Conversation

Copilot AI commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Summary

This follow-up stacks on PR #452 by targeting jdneo-preferences-01-nonblocking-loading.

  • Preference restoration remains asynchronous. A normal restore and a genuine first-run missing file use saved/default preferences without a notification.
  • Restore errors are logged with the original exception, then initialization falls back once to local in-memory defaults. Fallback readiness is independent of notification dismissal.
  • Recovered defaults are never persisted over unreadable, malformed, or temporarily inaccessible preference data, including during preference-service disposal or model updates.
  • Preference loading/manual retry UI is replaced by a dismissible final result. Failed fallback keeps dependent controls unavailable. Mode discovery retains its independent retry and does not reset preference restoration.
  • Tests cover fallback, missing files, persistence protection, coalescing, timeouts/stale results, account lifecycle, readiness, dismissal, and mode discovery.

Validation

  • ./mvnw -pl com.microsoft.copilot.eclipse.ui,com.microsoft.copilot.eclipse.ui.test checkstyle:check — passed; 0 Checkstyle violations.
  • git diff --check — passed.
  • Secret scan — no secrets detected.
  • Parallel validation — CodeQL found 0 alerts. No code-review findings; the review executable was unavailable in the environment.
  • ./mvnw -pl com.microsoft.copilot.eclipse.ui.test -am test — blocked before compilation/tests while resolving base.target; https://download.eclipse.org/wildwebdeveloper/releases/1.3.2/ failed with UnresolvedAddressException.
  • ./mvnw clean verify — Checkstyle passed, then the same target-platform resolution failure stopped the build.

Co-authored-by: jdneo <6193897+jdneo@users.noreply.github.com>
@jdneo Sheng Chen (jdneo) changed the title [WIP] Implement chat preference initialization simplification [Follow-up] Simplify chat preference initialization Sep 30, 2026
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