Backlog plan v2: pivot to Planka CE on OVH after anywhere-visual-board requirement

- Requirement change: mobile/anywhere visual board is primary, not push
- Planka Pro paywall gaps (recurrence, cross-board view, notifications)
  covered by composing around the REST API (tick/CLI/digest layer)
- Vault demoted to knowledge layer; CLI over MCP; phone test is day-1 gate
- Second-pass research: Planka health, TaskView, Donetick, Vikunja, Flux
- Hermes: phase-2, guardrails-first (capability tokens + approval broker)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Jared Swanson 2026-07-06 14:20:04 -04:00
parent c905bd3258
commit f900d07d6f
1 changed files with 28 additions and 3 deletions

View File

@ -57,8 +57,33 @@ Structural cost of any hosted tool: backlog items live outside markdown — no w
- **TaskNotes / obsidian-pm** — same note-per-task + frontmatter pattern with their own view layers; alternatives if Bases board plugins disappoint but a plugin dependency remains either way. - **TaskNotes / obsidian-pm** — same note-per-task + frontmatter pattern with their own view layers; alternatives if Bases board plugins disappoint but a plugin dependency remains either way.
- **Tasks + Dataview** — good read-only reporting layer, weak for agent-driven mutation; not a primary store. - **Tasks + Dataview** — good read-only reporting layer, weak for agent-driven mutation; not a primary store.
## Comparative verdict ## Comparative verdict (v1, superseded same day)
Vault-native (task-type notes + Bases board views + thin deterministic CLI) wins on every axis except maturity-of-dashboard: one system instead of a fifth backlog, matches the proven Notion property pattern verbatim, items become graph nodes wikilinked to how-tos, AI CRUD is nearly free via existing os-vault plugin machinery, self-hosted/synced by construction. **Fallback #1: Backlog.md** (if the Bases board spike fails). **Fallback #2: Planka + community MCP** (if markdown-native fails altogether or a standalone web/mobile dashboard becomes a hard requirement). Forgejo issues remain the code-execution tracker underneath, referenced from vault tasks. Vault-native (task-type notes + Bases board views + thin deterministic CLI) won on every axis except maturity-of-dashboard: one system instead of a fifth backlog, matches the proven Notion property pattern verbatim, items become graph nodes wikilinked to how-tos, AI CRUD nearly free via existing os-vault plugin machinery, self-hosted/synced by construction. Fallbacks: Backlog.md, then Planka.
The perspectives panel (devils-advocate, simplifier, implementer, premortem) materially reordered the build — push/surfacing layer first, board second, CLI minimal — see [[vault-backlog-pilot-plan]] for the verdict and the plan. **This verdict was overturned the same day** when the user clarified that an anywhere-visual board (view + interact from a phone, any time) is the *primary* requirement, not secondary to push — "when I want to jump into a project I have no visual interface to see what's on the docket" is the founding pain point, and conversational access doesn't satisfy it. That made vault-native's dashboard/mobile weakness disqualifying and made Planka's data-outside-markdown weakness a solvable development problem. See [[vault-backlog-pilot-plan]] (v2) for the standing decision.
## Second pass (2026-07-06, same day): Planka deep-dive + modern-alternatives sweep
Two more sonnet research agents after the requirement change.
### Planka health + Pro paywall
- v2 GA Feb 2025 (major rewrite); tagged releases slowed sharply after (last ~Apr 2025) while commit activity continues — reads as **mature/stabilizing with a commercial turn**, not dead. 12K+ stars, active governance, 426 open issues.
- **Pro tier paywalls three features we need:** recurring cards, cross-board global view/search, notification providers (100+). Also Pro: calendar view, card inbox. CE keeps the full board (cards, lists, due dates, labels, checklists, comments, markdown, attachments, time tracking). Free UI carries a "Pro discovery" banner (community disliked it; cosmetic).
- **Workaround pattern (the v2 plan's core move): compose around the REST API, never modify Planka.** Our own `tick` script does recurrence (idempotent elapsed-time catch-up — better than Pro's, and portable); CLI/digest/SessionStart brief aggregate cross-board via API; digest is script-sent so Planka's notifiers are irrelevant.
- **Mobile:** official app + third-party Planka Pal + responsive web exist, but drag-and-drop quality on phones is *unverified by anyone* — hence the phone test as the day-1 gate.
- API: REST CRUD is real (SDKs: plankapy for Python); **no official CLI** — we build a thin Ruby one. Token *scoping* story unverified (historically user/password auth; API keys were a feature request) — verify at deploy; matters for per-profile agent credentials.
- Ops: compose + Postgres, ~512MB class; AGPL fine for personal use.
### Alternatives sweep (20252026)
- **TaskView** (taskview.tech) — the only on-paper Planka-beater for this spec: native iOS/Android apps talking directly to self-hosted instance, first-party MCP, **scoped API tokens** (best guardrails fit). But source-available (~Jan 2026), ~400 users, thin sourcing — *modern-and-unproven*; claims need hands-on verification before it even makes a shortlist. Fallback #1 if Planka fails the phone gate.
- **Donetick** — mobile-first recurring-chore tracker (natural-language recurrence, native apps, single Docker+SQLite, REST). Nails the property-maintenance lane specifically but is a *second system* (fifth-backlog trap) — noted as a lane-specific fallback if tick-driven recurrence annoys, not adopted.
- **Vikunja** — v2 era, strong API, kanban view, but mobile app explicitly alpha; no MCP. Revisit 2027.
- **Flux** (sirsjg/flux) — MCP-first agent task graph, CLI/git-native, no mobile board; different paradigm, not a fit.
- WeKan / Focalboard / Tasks.md / Kanboard / Nullboard / Tracks — none prioritize mobile; eliminated.
### Hosting note
Deployment target chosen: the **OVH prod server** (`~/servers/ovh-prod/`, Traefik + auto-SSL + auto-backup pattern) rather than the home Proxmox box — always-on independent of home ISP, phone-reachable without Tailscale. The SecondBrain vault does **not** sync to OVH and doesn't need to: Planka state is Postgres; all integration is REST + git; cards reference vault notes by name/URL.