super-productivity/docs/long-term-plans
Johannes Millan 42e6626b76 docs(sync): consolidate sync docs + enforce the contributor model
Collapse the sprawling, partly-stale docs/sync-and-op-log/ tree into a
small authoritative set and make the sync-correctness invariant
partly lint-enforced instead of convention-only.

Docs:
- Delete superseded/duplicate/provably-stale design, plan, and
  background-research docs (quick-reference, the architecture-diagrams
  monolith, the "Hybrid Manifest" docs describing code that does not
  exist, completed long-term plans, LLM-synthesis analyses).
- Salvage load-bearing decision history into the surviving docs before
  deletion: rejected-alternatives rationale -> operation-log-architecture
  ("Why this architecture"); vector-clock pruning incident history ->
  vector-clocks.md; archive-payload optimization -> architecture E.7.
- Add contributor-sync-model.md as the single-invariant entry point
  (one user intent = one op; replayed/remote ops must not re-trigger
  effects), with a decision table mapping to the enforcing linters.
- Repoint external/internal cross-refs; add CONTRIBUTING.md + CLAUDE.md
  pointers; record the migration in a dated docs/plans/ design doc.

Enforcement (new eslint-local-rules):
- no-actions-in-effects (error): effects must inject LOCAL_ACTIONS /
  ALL_ACTIONS, never the raw @ngrx/effects Actions stream.
- no-multi-entity-effect (warn, heuristic): flags a literal returned
  array of >=2 action-creator calls; docstring + valid-case specs pin
  exactly which shapes are and are not detected.
- run-specs.js runner wired into `npm run lint` via test:lint-rules;
  refuses to run under test-framework globals and counts RuleTester.run
  invocations so a spec that asserts nothing fails instead of passing.
- Correct the ALL_ACTIONS JSDoc in local-actions.token.ts to match
  reality (archive-operation-handler uses LOCAL_ACTIONS).

Reviewed via parallel multi-agent review; findings W1/W2/W4 and a
dangling doc anchor addressed.
2026-05-15 16:51:50 +02:00
..
android-background-sync-improvements.md feat(droid): background sync notifications for android 2026-03-20 10:24:02 +01:00
caldav-vevent-expansion-design.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
calendar-two-way-sync-technical-analysis.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
e2e-encryption-architecture-diagrams.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
e2e-encryption-CRITICAL-ISSUES.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
e2e-encryption-device-keys-DRAFT.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
electron-upgrade-to-v40.md feat(tasks): dynamic strikethrough gesture for mobile swipe-right 2026-03-26 17:43:03 +01:00
google-calendar-integration-concept.md feat(calendar): implement Google Calendar plugin with reschedule and delete 2026-03-28 23:10:08 +01:00
google-calendar-provider-design.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
ios-dropbox-sync-reliability.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
jwt-derived-encryption.md refactor(sync-core): extract encryption primitives 2026-05-13 17:26:55 +02:00
location-based-reminders.md refactor(backup): unify backup filename format (#7141) 2026-04-21 14:09:09 +02:00
multi-client-file-sync-reliability.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
plugin-view-adapter-api.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
secure-storage.md refactor(sync-providers): add tiered package exports 2026-05-13 14:11:15 +02:00
server-side-entity-versioning.md docs(sync): consolidate sync docs + enforce the contributor model 2026-05-15 16:51:50 +02:00
supersync-encryption-at-rest.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
sync-core-extraction-plan.md docs(sync): mark extraction plan complete 2026-05-13 14:11:15 +02:00
sync-core-simplification-roadmap.md docs: clean up and organize project documentation 2026-03-10 10:22:56 +01:00
sync-provider-plugins.md refactor(sync): finish package extraction polish 2026-05-13 14:11:15 +02:00