Skip to content

Kanban planning board - #229

Closed
ZFordDev wants to merge 19 commits into
mainfrom
feature/kanban-board
Closed

ZFordDev wants to merge 19 commits into
mainfrom
feature/kanban-board

Conversation

@ZFordDev

Copy link
Copy Markdown
Owner

Summary

Integrates the Kanban planning board work built on feature/kanban-board into main, per the delivery model in docs/kanban-board-design.md (§16, integrate path). Closes tracker #192 and its sub-issues #202, #203, #204, #205, #225.

What's included

  • Opt-in board stage (backlog / in progress / done) with an "Add to Kanban" option in create/edit dialogs.
  • Kanban board page in the PyQt sidebar: per-column counts, empty states, card search, On board filter, arrow-key navigation, accessible names, and plain/tinted alternating cards.
  • Drag-and-drop card moves between columns saved as an ordinary task edit (Ctrl+Z undo); moving stages never changes completion.
  • Card actions are compact icon buttons (tick = complete, pencil = edit). The board deliberately has no delete action — tasks are only removed in the Tasks/Calendar views.
  • Unscheduled (date-less) tasks for deadline-independent planning, kept out of calendar/Today/Upcoming; "Scheduled only" filter; date-less tasks sort as due now.
  • Fixes: stale card left in the source column after a board move; recurring-task completion no longer duplicates the card on the board (the next occurrence is created off-board).
  • Schema migration 7 (board_stage column) with backup/rollback guarantees; version bumped to 0.10.1 with all derived packaging files synced.

Rollout

Publishing to the Snap edge channel first so the Linux community can surface issues before any promotion to stable (see changelog Info note).

Outstanding (tracked, not in this PR)

Docs: docs/kanban-board-design.md (approved design), README highlights and v0.10.1 changelog entry updated.

Record the approved board model and migration strategy for the
Kanban planning view before any UI work:

- Opt-in board: tasks appear only when deliberately added via an
  'Add to Kanban' control at create/edit time; never auto-derived.
- Task gains board_stage as NOT NULL DEFAULT '' (matching every
  other optional field); '' = off board.
- Fixed stages backlog / in_progress / done for v1.0.
- Stage is planning state, not completion: moving to done does not
  complete a task, and completing a task does not move a card.
- Migration 7 appends the column with an '' default; existing tasks
  are off-board with no relocation or duplication.
- Specifies validation, serialization (backup/export/import), undo
  via existing record_edit, PyQt surface, CLI --board, and tests.
All Kanban sub-issue PRs integrate into the parent feature/kanban-board
branch, never main; maintainers decide integrate-or-cut at the end.
feat: Kanban board view (opt-in board_stage) — #203
Drag and drop cards between Kanban columns (#204)
Board search, On Board filter, keyboard navigation (#205)
Fix board cards lingering in the source column after a move
Support unscheduled tasks for board planning (#225)
@ZFordDev

Copy link
Copy Markdown
Owner Author

Kanban has been rejected at this time, the branch left to preserve the future potential implementation but for now this feature exposes to many issues.

@ZFordDev ZFordDev closed this Sep 22, 2026
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.

1 participant