Commit graph

16 commits

Author SHA1 Message Date
callumalpass
19af99278d add release checks and default base automation 2026-06-04 22:50:56 +10:00
callumalpass
b288fdc70e Fix modal markdown editor sizing 2026-05-16 10:32:19 +10:00
callumalpass
6c3c7ba4bb Update Bases calendar width controls and editor scheduling 2026-03-29 21:02:49 +11:00
ac8318740
937e5557e4 feat(kanban): add within-column drag-to-reorder with sort_order
Implement card-level drag-and-drop reordering within kanban columns.
Dragging a card above or below another card computes a new sort_order
using a midpoint insertion algorithm and writes it to frontmatter.

New capabilities:
- Card-level dragover/drop handlers with top/bottom half detection
- Visual drop indicators (accent-colored bar above or below target)
- Midpoint insertion: new_value = floor((neighbor_above + neighbor_below) / 2)
- Vault-wide neighbor lookup so filtered/hidden tasks are still
  considered when computing midpoints (prevents order collisions)
- Proportional gap computation based on median spacing in the column
- Collision handling: when neighbors share identical sort_order values,
  renumber all column tasks evenly across the existing value range
- Deferred re-render during drag to prevent DOM destruction mid-drop
- Same-column detection to skip unnecessary group property writes

Supporting changes:
- Add sortOrder field to TaskInfo interface and FieldMapping
- Add sort_order to FieldMapper read/write and default field mapping
- Add columnTasksCache for render-time group data
- Add sort_order to e2e vault kanban view config
- Add CSS for drop-above/drop-below position indicators
2026-03-29 07:32:29 +11:00
callumalpass
c3863baacc chore: checkpoint current tasknotes state 2026-03-25 08:08:28 +11:00
callumalpass
291184cd56 docs: restructure task management guides and refresh screenshots
Split recurring tasks and reminders content into dedicated pages,
condense existing guides for clarity, and update all documentation
screenshots. Refactor e2e screenshot tests with shared openView()
helper and retry support. Refine MdbaseSpec field types (enum,
datetime, link) and replace MCPService @ts-expect-error workarounds
with bound tool pattern.
2026-02-15 12:10:28 +11:00
callumalpass
d12978aee1 test(#1261): add failing tests for double scrollbar in embedded task list
Add Playwright tests to reproduce the double scrollbar issue when a task
list base view is embedded in a note and the note is placed in a sidebar.

Tests are marked as .fixme() to document the expected behavior:
- Embedded task list should not create independent scrollable region
- When in sidebar, only one scrollbar should be active

Also adds test fixture file with embedded base view for testing.
2026-01-06 22:40:28 +11:00
callumalpass
3861d6f48b fix: Wrap blockedBy with list() in Blocking view filter (#1304)
The Blocking view filter in the Relationships base threw "Cannot find
function map on type Link" when blockedBy contained a single entry.
Bases returns single values as Link objects without a map() method.

Wrap with list() to ensure array operations work regardless of whether
blockedBy contains one or many dependencies, consistent with the
existing Blocked By view implementation.
2026-01-01 17:49:10 +11:00
callumalpass
a585653158 feat(TaskService): support {{currentNotePath}} for inline task command (#1334)
- Add 'manual-creation' context to use inlineTaskConvertFolder setting
- Update issue tracking for #1334, #1342, #1398, #1408
- Add failing test for issue #1302 (task not found in agenda view)
- Update .gitignore to exclude workspace.json and e2e config
2026-01-01 16:04:30 +11:00
callumalpass
884b163bea test(e2e): add failing tests for issue #1350 - Reading View inline task refresh
Add tests documenting the bug where inline TaskNote widgets in Reading View
don't refresh after property updates. The markdown file updates correctly,
but the widget display remains stale until the file is closed and reopened.

Tests cover:
- Property updates (scheduled date) not refreshing inline widget display
- Status toggle changes not reflected visually
- Multiple instances of same task not refreshing together
- Contrast with Live Preview which does refresh correctly

Root cause: ReadingModeTaskLinkProcessor is a one-time post-processor with
no EVENT_TASK_UPDATED listeners, unlike TaskLinkOverlay.ts (Live Preview).
2026-01-01 09:23:23 +11:00
callumalpass
4fd8e9dcfe fix(e2e): update kanban-default.base with proper status grouping and formulas
The kanban view now uses status grouping instead of numeric priorityWeight,
showing proper column labels (Done, In progress, None, Open) instead of
confusing numeric values (1, 2, 3, 999).

Also adds useful formulas for task filtering and a swimlane configuration.
2025-12-31 15:12:38 +11:00
callumalpass
420294729e fix(e2e): use --user-data-dir to run separate Obsidian instance
Prevents the test Obsidian from merging with an already-running
personal instance by forcing a separate Electron user data directory.
2025-12-31 13:02:52 +11:00
callumalpass
6907dea27a test(tags): add failing tests for #1347 hierarchical tag coloring
Add test cases verifying tag element structure for compatibility with
external plugins like Colored Tags. Tests check that hierarchical tags
(e.g., #project/frontend) have correct href attributes and are
observable by MutationObserver.

Also adds test task with hierarchical tags to the e2e vault.
2025-12-31 12:14:25 +11:00
callumalpass
27e1bc9a2f chore(e2e): update test vault state from test runs
Update plugin state with pomodoro session data and workspace layout
changes from e2e test execution.
2025-12-31 11:46:57 +11:00
callumalpass
3b44858f1c chore(e2e): add test tasks for blocked and time-tracked scenarios
Add task notes with dependencies and time entries for testing:
- Deploy authentication update: blocked by another task
- Write documentation: has time tracking entries
2025-12-31 11:46:50 +11:00
callumalpass
6b2bf64038 chore: add e2e test vault to version control
Track the test vault to detect unexpected file modifications during
E2E tests. Updated .gitignore to exclude only plugin symlinks while
tracking data.json for reproducible test settings.
2025-12-31 09:58:27 +11:00