TaskNotes

TaskNotes 4.3.38 (Fork)

This release is from the cybersader/tasknotes fork.

Added

  • Per-base property mapping (ADR-011): Bases with custom column names (e.g., deadline instead of due, owner instead of assignee) can now configure tnFieldMapping in their YAML. Tasks created from these views automatically use the correct property names and get per-task tracking props (tnDueDateProp, tnAssigneeProp, etc.) so the system recognizes them.
  • Base identity system: BaseIdentityService lazily generates tnBaseId and tnViewId UUIDs on .base files when TaskNotes features are configured. Enables provenance tracking and future migration tools.
  • "New task" button for native Table/Board views: BasesToolbarInjector now injects a "New task" button alongside "Bulk tasking" on native Obsidian Bases views. Opens TaskCreationModal with the view's field mapping pre-populated.
  • PropertyPicker pre-population from view mapping: When creating a task from a mapped view, Additional Properties shows the mapped fields (e.g., deadline with "Use as: Due date" badge) ready to fill in.
  • Click-to-edit for mapped date properties: Mapped date fields show a read-only display that opens the full DateContextMenu (Today/Tomorrow/Pick date & time) on click, with two-way sync to the action bar calendar icons.
  • Assignee action bar icon: New user icon in the task creation action bar. Clicking it (or clicking a mapped assignee property) expands the details section and scrolls to the PersonGroupPicker with search.
  • Tracking prop schema declarations: Explicit field mappings via PropertyPicker always write tracking props (e.g., tnDueDateProp: deadline) even without values, declaring the task's property schema.

Fixed

  • Tracking props no longer written without values in the backend path (TaskService.applyViewFieldMapping, BulkConvertEngine). Only written when the task has an actual value for the mapped field.
  • Dual value conflict resolved: When a standard field (Due Date picker) and a mapped property (deadline) both have values, the standard field redirects to the mapped property at save time instead of creating duplicates.