Skip to content

Onboarding service#4858

Merged
d13 merged 2 commits intomainfrom
feature/onboarding-service
Apr 9, 2026
Merged

Onboarding service#4858
d13 merged 2 commits intomainfrom
feature/onboarding-service

Conversation

@eamodio
Copy link
Copy Markdown
Member

@eamodio eamodio commented Jan 8, 2026

No description provided.

 - Centralizes dismissible UI and onboarding logic into a new, versioned service
 - Replaces disjointed storage keys with a type-safe registry that supports automatic schema migrations and item re-showing
 - Simplifies onboarding state management across core logic and webview components
 - Removes legacy per-item storage flags in favor of a unified `onboarding:state` storage structure
@eamodio eamodio force-pushed the feature/onboarding-service branch from d0428b3 to 1fb369a Compare April 8, 2026 00:03
@eamodio eamodio marked this pull request as ready for review April 8, 2026 00:03
@eamodio eamodio requested a review from d13 April 8, 2026 00:03
@augmentcode
Copy link
Copy Markdown

augmentcode Bot commented Apr 8, 2026

🤖 Augment PR Summary

Summary: This PR introduces a centralized onboarding/dismissible-state service to replace scattered “dismissed” storage keys and command-based storage writes.

Changes:

  • Adds OnboardingService with versioned dismissal, typed item state, schema migrations, and reset APIs
  • Creates a central registry of onboarding/dismissible keys in src/constants.onboarding.ts
  • Adds per-item migration definitions in src/onboarding/onboardingMigrations.ts and migrates legacy storage keys
  • Moves UsageTracker and WalkthroughStateProvider into src/onboarding/ and updates imports
  • Updates MCP banner and SCM grouped welcome flows to use onboarding state instead of direct storage flags
  • Wires Home and Graph webviews to a new shared OnboardingRpcService and onboarding change events
  • Removes the gitlens.storage.store command and the associated allowlist-based storage write path
  • Extends global/workspace storage schemas with a unified onboarding:state entry

Technical Notes: Adds a small fromVersion() helper in utils to normalize version strings and uses semver-based reshowAfter logic to re-display onboarding when appropriate.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode Bot left a comment

Choose a reason for hiding this comment

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

Review completed. 5 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

Comment thread src/onboarding/onboardingService.ts
Comment thread src/onboarding/onboardingService.ts Outdated
Comment thread src/onboarding/onboardingService.ts
Comment thread src/onboarding/onboardingService.ts
Comment thread packages/utils/src/version.ts
- Removes `await` on synchronous `isDismissed()` call
- Fixes import ordering for `constants.onboarding.js`
- Deletes `home:sections:collapsed` after migration
- Fallback to legacy keys in `isDismissed()` while migrating
- Fixes `resetAll()` to read storage before clearing
- Handles `migrateLegacyState()` rejections
@d13 d13 merged commit 2ffd9c6 into main Apr 9, 2026
5 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