Inline Consume Modes¶
Post-execution note mutation behaviors — strip, annotate, replace, leave
Details¶
Consume modes¶
Implemented in work_buddy/inline/consume.py. Invoked by the dispatcher after the handler returns (for one-shot commands) via apply(mode, ctx, result).
| Mode | Before | After |
|---|---|---|
strip |
- [ ] task #wb/cmd/task/new |
- [ ] task |
annotate |
- [ ] task #wb/cmd/task/new |
unchanged, plus below: > [!work-buddy] Processed at <ts>\n> Result: <summary> |
replace |
#wb/cmd/task/new |
#wb/cmd/task/new/done |
leave |
(unchanged) | (unchanged) |
Override precedence¶
- User preference (
features.inline.consume_mode_overrideif set) - Handler's declared
consume_mode - Default:
annotate
Safety¶
Note mutations go through work_buddy.obsidian.bridge.write_file to preserve Obsidian's dirty-buffer handling — never direct filesystem writes. Destructive modes (strip, replace) should gate on work_buddy.consent for high-stakes operations.