Skip to content

feat: allow disabling provider update checks#3130

Open
repparw wants to merge 2 commits into
pingdotgg:mainfrom
repparw:disable-provider-update-notifications
Open

feat: allow disabling provider update checks#3130
repparw wants to merge 2 commits into
pingdotgg:mainfrom
repparw:disable-provider-update-notifications

Conversation

@repparw

@repparw repparw commented Jun 17, 2026

Copy link
Copy Markdown

Summary

Adds a persisted server setting, enableProviderUpdateChecks, to control provider CLI update checks. When disabled, provider snapshot enrichment skips latest-version resolution entirely instead of letting the checker run and hiding the resulting UI notification.

Changes

  • packages/contracts/src/settings.ts — Adds enableProviderUpdateChecks to server settings and settings patches, defaulting to true.
  • apps/web/src/components/settings/SettingsPanels.tsx — Adds a General Settings switch for provider update checks.
  • apps/server/src/provider/providerUpdateSettings.ts — Shares provider snapshot settings derived from provider config plus server settings.
  • Provider drivers — Codex, Claude, Cursor, Grok, and OpenCode now observe the setting and pass it into version advisory enrichment.
  • apps/server/src/provider/providerMaintenance.ts — Skips latest-version resolution when update checks are disabled, returning an unknown advisory without contacting the registry.
  • Removes the prior environment descriptor capability / web toast suppression path.

Motivation

Some users install providers through external package managers such as Nix/nixpkgs, where npm latest is not the source of truth. In that case T3 Code should not run the provider update checker at all, rather than only suppressing the launch notification.

Test plan

  • vp run typecheck
  • vp check
  • vp test run apps/server/src/provider/providerMaintenance.test.ts

Note: in this local shell, normal pnpm install failed because node-pty needed Python for node-gyp; dependencies were linked with pnpm install --ignore-scripts so the validation commands could run.

Note

Add enableProviderUpdateChecks setting to disable provider version advisory checks

  • Adds enableProviderUpdateChecks boolean (default true) to ServerSettings and ServerSettingsPatch in settings.ts, and exposes a toggle in the General settings panel.
  • Updates enrichProviderSnapshotWithVersionAdvisory in providerMaintenance.ts to skip network version lookups when the flag is false, preserving checkedAt without making requests.
  • All provider drivers (Claude, Codex, Cursor, Grok, OpenCode) now inject ServerSettingsService and propagate enableProviderUpdateChecks through their snapshot enrichment pipelines via the new providerUpdateSettings.ts module.
  • Behavioral Change: drivers now require ServerSettingsService at runtime; tests must include ServerSettingsService.layerTest() in their test layers.

Macroscope summarized 8e49a0d.

@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 485926df-4691-4087-84ae-3ef3094be7b6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added size:XS 0-9 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list. labels Jun 17, 2026
Comment thread apps/web/src/components/ProviderUpdateLaunchNotification.tsx Outdated
@macroscopeapp

macroscopeapp Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Approvability

Verdict: Needs human review

This PR introduces a new user-facing feature (toggle to disable provider update checks) with changes spanning 5 provider drivers, a new abstraction layer, schema additions, and UI controls. The cross-cutting nature of the changes and the author being new to the codebase warrant human review.

You can customize Macroscope's approvability policy. Learn more.

@repparw repparw force-pushed the disable-provider-update-notifications branch from 9007429 to 920b058 Compare June 17, 2026 18:18
@github-actions github-actions Bot added size:S 10-29 changed lines (additions + deletions). and removed size:XS 0-9 changed lines (additions + deletions). labels Jun 17, 2026
macroscopeapp[bot]
macroscopeapp Bot previously approved these changes Jun 17, 2026
@repparw repparw force-pushed the disable-provider-update-notifications branch from 920b058 to b801730 Compare June 17, 2026 18:20
@macroscopeapp macroscopeapp Bot dismissed their stale review June 17, 2026 18:20

Dismissing prior approval to re-evaluate b801730

@github-actions github-actions Bot added size:XS 0-9 changed lines (additions + deletions). and removed size:S 10-29 changed lines (additions + deletions). labels Jun 17, 2026
macroscopeapp[bot]
macroscopeapp Bot previously approved these changes Jun 17, 2026
@repparw repparw force-pushed the disable-provider-update-notifications branch from b801730 to e7f9677 Compare June 17, 2026 18:37
@macroscopeapp macroscopeapp Bot dismissed their stale review June 17, 2026 18:37

Dismissing prior approval to re-evaluate e7f9677

@github-actions github-actions Bot added size:S 10-29 changed lines (additions + deletions). and removed size:XS 0-9 changed lines (additions + deletions). labels Jun 17, 2026
macroscopeapp[bot]
macroscopeapp Bot previously approved these changes Jun 17, 2026
@juliusmarminge

Copy link
Copy Markdown
Member

this feels like the wrong approach. should jsut be a setting like everythign else and it shouldn't be a UI level thing, it should block the update checker to run in the first place, not just suppress the toast

@macroscopeapp macroscopeapp Bot dismissed their stale review June 18, 2026 03:17

Dismissing prior approval to re-evaluate 8e49a0d

@github-actions github-actions Bot added size:L 100-499 changed lines (additions + deletions). and removed size:S 10-29 changed lines (additions + deletions). labels Jun 18, 2026
@repparw repparw changed the title feat: allow disabling provider update notifications feat: allow disabling provider update checks Jun 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 changed lines (additions + deletions). vouch:unvouched PR author is not yet trusted in the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants