super-productivity/docs
Johannes Millan 56fda20fa0 fix(sync): clear example tasks from local state on adoption (#7996)
#7995 rejects a never-synced client's onboarding example-task UPLOAD ops
when it adopts a populated remote, but on the SuperSync (op-based) path
adoption MERGES remote ops into the store rather than replacing it, so the
example *entities* lingered in local NgRx state. Left there, a later
full-state snapshot upload (forceUploadLocalState / enable-encryption) would
re-snapshot and re-upload them, re-polluting the remote — `isExampleTask`
lives only on the op, never the Task entity, so the snapshot cannot tell
them apart.

In the same gated #7995 cleanup block, after rejecting the create ops, also
dispatch the shared bulk `deleteTasks` (scrubbing project.taskIds / backlog /
tag ordering refs in one meta-reducer pass) with `meta.isRemote: true`. That
makes the capture meta-reducer skip op-capture — so NO Delete op is created
and nothing uploads a delete for a task the server never had — and keeps the
LOCAL_ACTIONS effects (plugin TASK_DELETE, reminder cascade) from firing for
throwaway scaffolding. Same primitive ValidateStateService and the op-replay
path use; the state reducers still run. Ids derive only from the local
pending example-create ops, never remote ops.

Tests: +3 unit cases (operation-log-sync.service.spec) asserting the
isRemote dispatch fires only on the gated condition and rejects only the
create ops; a docker-only e2e asserting clean local state + no cross-device
propagation.
2026-06-03 21:16:07 +02:00
..
long-term-plans docs(caldav): mark VEVENT two-way as shipped via the bundled plugin (#7879) 2026-06-01 14:31:45 +02:00
plans fix(sync): clear example tasks from local state on adoption (#7996) 2026-06-03 21:16:07 +02:00
promotion build: better organize stuff 2025-06-27 09:03:16 +02:00
research docs(task-repeat-cfg): revise RRULE migration plan and consolidate to one doc 2026-06-02 16:09:35 +02:00
screens docs/wiki content v0.8 (#7068) 2026-04-01 12:40:28 +02:00
sync-and-op-log feat(op-log): validate SQLite backend + IDB→SQLite migration + backend-aware init (#7931) (#7954) 2026-06-02 17:26:23 +02:00
wiki Feat/task creation due date (#7966) 2026-06-03 14:46:43 +02:00
add-new-integration.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
apple-release-automation.md ci: auto-submit iOS and macOS App Store builds for review (#7857) 2026-06-01 11:42:16 +02:00
build-and-publish-notes.md fix(ci): prevent duplicate unsigned exe files in GitHub Releases 2026-03-19 18:58:52 +01:00
documentation-guide.md Housekeeping for various docs, templates, and actions (#7451) 2026-05-02 13:58:25 +02:00
ENV_SETUP.md build: final approach 2025-07-14 20:52:51 +02:00
github-access-token-instructions.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
gitlab-access-token-instructions.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
how-to-rate.md feat(rate-dialog): action-aware prompt with feedback split 2026-05-04 17:27:11 +02:00
howto-refresh-snap-credentials.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
i18n-script-usage.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
legacy-webview-analysis.md 16.2.1 2025-11-01 13:22:58 +01:00
mac-app-store-code-signing-guide.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
performance-project-tag-report.md docs: add performance report 2025-11-13 18:23:50 +01:00
plugin-development.md Android soft-keyboard: fix dark-theme white flash on resize (#7839) 2026-05-28 16:56:21 +02:00
styling-guide.md fix(onboarding): harden sync setup dismissal 2026-06-03 19:54:14 +02:00
theming-contract.md feat(theme): primitive token layer + theme contract validator 2026-05-08 22:31:00 +02:00
TRANSLATING.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
unused-translations-analysis.md chore(i18n): remove additional 86 orphan translation keys 2026-01-09 14:59:05 +01:00
update-android-app.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
update-mac-certificates.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00