Commit Graph

1 Commits

Author SHA1 Message Date
7940134381 docs: settle the storage and sync direction
Replaces the "Posture B = bundle OpenTasks under org.dmfs.tasks" working
notes (never committed) with the decided direction: Agendula gets its own
identity all the way down — its own bundled provider under its own
authority, its own sync adapter, and a user-chosen storage mode.

Squatting org.dmfs.tasks is out. The decisive reason is structural rather
than aesthetic: content-provider authorities are what a sync engine
resolves, but Android account visibility is keyed by package name, so a
bundled provider masquerading as OpenTasks could see zero accounts — and
the dmfs provider prunes task lists whose account has gone away. That is a
silent data-loss bug invisible to both sides. Owning the namespace makes it
impossible by construction. Play adds a second veto: a duplicate authority
or permission name is a failed install for anyone with OpenTasks.

Also records: vendoring the Apache-2.0 provider in-tree (JitPack and Maven
Central both verified dead ends), the three storage modes, staged
permissions split by runtime vs install-time, what belongs in floret-kit
rather than here, and the F-Droid + Play constraints to build for from day
one.

ARCHITECTURE.md §7 and the ProviderResolver KDoc still describe the old
Posture B and need a follow-up edit; ROADMAP.md and PLAN.md remain stale
pending their own pass.
2026-08-02 17:54:51 +02:00