Skip to content

fix(settings): hide cloud sync from packaged builds - #1440

Merged
vastsa merged 2 commits into
mainfrom
fix/hide-cloud-sync-packaged
Oct 6, 2026
Merged

vastsa merged 2 commits into
mainfrom
fix/hide-cloud-sync-packaged

Conversation

@vastsa

@vastsa vastsa commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

What changed

The encrypted WebDAV configuration backup (Settings → Cloud sync) is not ready to be offered to packaged-build users yet. The destination entry in apps/desktop/src/lib/settings-search.ts carries developmentOnly: true again, so:

  • a packaged build omits its rail row, its page, and its settings-search hits, and a saved sync tab falls back to General;
  • a development build keeps the destination, so the work stays reachable;
  • developer mode plays no part, the destination keeps no Experimental badge, and its availability does not change when developer mode is toggled.

Host sync behavior, the configSync.* RPC contracts, the host schema, and persisted data are all unchanged, so dropping that one flag reopens the destination for packaged builds.

Specs and their zh-CN mirrors record the gate (04-ux/06-settings-ia.md, 03-runtime/22-config-sync.md, 03-runtime/01-ipc-protocol.md, the config-sync E2E entries), and decisions-log D649 records the decision as amending D642/D643.

CI unblock (second commit)

main at d403c9603 fails Docs checks, JS build, and Trusted extensions Electron E2E because docs/zh-CN/spec/07-plugins/07-plugin-marketplace.md links ../../adr/0276-official-plugin-channel-and-backup-channels.md, which resolves to docs/zh-CN/adr where no ADR copy exists. VitePress fails the documentation build on that dead link, and both other jobs run the docs build. This PR repairs that one link with the /adr/... form the other zh-CN pages use, so the landing gates can actually run; it touches nothing else in the marketplace docs.

Verification

  • node --test test/*.test.mjs in apps/desktop: 3580 pass / 0 fail
  • tsc -p tsconfig.json --noEmit: clean
  • node scripts/e2e-settings-scroll.mjs (real Electron, includes the Cloud sync visibility probe, compiled with import.meta.env.DEV true): ok:true
  • vitepress build . in docs: complete, no dead links
  • scripts/check-style-tokens.mjs, docs/scripts/check-locales.mjs (85 pairs), docs/scripts/check-docs.mjs (559 pages), git diff --check: clean

No packaged build was launched; the packaged-only omission is covered by the visibleSettingsNav(developerMode, false) assertions plus import.meta.env.DEV being false under electron-vite build, which is the same mechanism the Remote Hosts destination already uses.

Known follow-up

Only the UI entry point is hidden. A user who already configured a vault keeps running background syncs, and the sync errors that the page used to surface are no longer visible in a packaged build. Disabling the background sync path itself would be a separate, host-side change.

The encrypted WebDAV configuration backup is not ready to be offered to
packaged-build users yet. Reuse the existing development-only destination
gate so shipped builds omit its rail row, page, and settings-search hits and
fall back to General, while development builds keep the destination for
continued work.

Host sync behavior, IPC contracts, and persisted data are unchanged, so
dropping the destination's developmentOnly flag reopens it. The specs and
their zh-CN mirrors describe the gate, and decisions-log D649 records it as
amending D642/D643.
Copilot AI balanced review requested due to automatic review settings October 6, 2026 16:31

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

The zh-CN plugin-marketplace page that the plugin-center move added linked
`../../adr/0276-official-plugin-channel-and-backup-channels.md`, which resolves
to `docs/zh-CN/adr`, where no ADR copy exists. VitePress failed the whole
documentation build on that dead link, and the JS and Electron E2E jobs run the
docs build too, so all three checks failed on `main`.

Use the `/adr/...` form the other zh-CN pages already use for English ADRs.
@vastsa
vastsa merged commit e864a45 into main Oct 6, 2026
5 checks passed
@vastsa
vastsa deleted the fix/hide-cloud-sync-packaged branch October 6, 2026 16:46
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