Task Note Readers¶
Sessions whose transcripts show they read a task through native task/document calls, with legacy Markdown reads retained only as historical evidence.
MCP name: task_note_readers
Category: tasks
Parameters¶
| Name | Type | Required | Description |
|---|---|---|---|
include_saw_id |
bool |
No | When true, also return sessions that merely mention the task id without an explicit read (weak signal). Default false — only explicit-read sessions are returned. |
note_uuid |
str |
No | Optional legacy note UUID used only to include pre-cutover Read-tool evidence. |
task_id |
str |
Yes | Task ID (e.g., 't-xxxxxxxx') |
Details¶
Returns sessions whose transcripts demonstrate they read a task or its current
Co-work knowledge — the inverse of task_provenance's developed_by.
Where developed_by answers "who committed against this task id,"
task_note_readers answers "who read the task or knowledge." That gap is the Rung-3
"forgot to toggle" case: a session reads the note, does the work, but
never references the task id in a commit message — invisible to
developed_by, yet exactly the developer /wb-task-completeness wants to
find.
Each returned session carries:
- awareness —
read_note(an explicit read fired) or, only wheninclude_saw_id=true,saw_id(the id appeared without a demonstrable read). - sources — which explicit-read signals fired, each with first/last
timestamps and a count: native
task_read_mcp,task_assign_mcp, Co-work document access, or historicalread_toolevidence for a frozen legacy path. - first_seen / last_seen — ISO timestamps bounding the reads.
Results are ranked read_note before saw_id, then most-recent first.
Pass note_uuid only when pre-cutover path evidence is relevant.
Bridge-independent — reads session JSONL plus the durable
session_task_note_reads table (when populated, used as an O(1) fast
path), never the Obsidian bridge. A legacy path read is provenance, not current
content authority.