build: add a binary write path to the plugin — an attach handler built on Vault.createBinary/modifyBinary that NEVER routes thr #12

Merged
Joel merged 1 commit from build/e7c53b13 into main 2026-09-10 18:44:43 +00:00
Owner

add a binary write path to the plugin — an attach handler built on Vault.createBinary/modifyBinary that NEVER routes through the markdown write lane, refuses paths outside the granted folders, and refuses to clobber an existing binary unless explicitly told to. This is also the fix for bug 59, where a write aimed at a .pdf replaces the binary file with markdown and destroys it. Include tests covering the .pdf-clobber case.

This task is one step of my plan: build the missing binary-attach path so files like the SRD 2.0 PDF can live in the vault


Built by Connor's backend backburner (dispatch e7c53b13) in an isolated clone; shipped deterministically by ship.py. The full build notes were spoken in conversation and stored in memory (agent-dispatch:e7c53b13). Review is the gate. Gate: npm run gate.

add a binary write path to the plugin — an attach handler built on Vault.createBinary/modifyBinary that NEVER routes through the markdown write lane, refuses paths outside the granted folders, and refuses to clobber an existing binary unless explicitly told to. This is also the fix for bug 59, where a write aimed at a .pdf replaces the binary file with markdown and destroys it. Include tests covering the .pdf-clobber case. This task is one step of my plan: build the missing binary-attach path so files like the SRD 2.0 PDF can live in the vault --- Built by Connor's backend backburner (dispatch `e7c53b13`) in an isolated clone; shipped deterministically by `ship.py`. The full build notes were spoken in conversation and stored in memory (`agent-dispatch:e7c53b13`). Review is the gate. Gate: `npm run gate`.
build: add a binary write path to the plugin — an attach handler built on Vault
All checks were successful
gate / gate (pull_request) Successful in 8s
dde8f8bf64
add a binary write path to the plugin — an attach handler built on Vault.createBinary/modifyBinary that NEVER routes through the markdown write lane, refuses paths outside the granted folders, and refuses to clobber an existing binary unless explicitly told to. This is also the fix for bug 59, where a write aimed at a .pdf replaces the binary file with markdown and destroys it. Include tests covering the .pdf-clobber case.

This task is one step of my plan: build the missing binary-attach path so files like the SRD 2.0 PDF can live in the vault

Built by my backend backburner (dispatch e7c53b13), diff verified by git; shipped by ship.py. Nothing merges without review.
Joel approved these changes 2026-09-10 18:44:39 +00:00
Joel merged commit cc66568818 into main 2026-09-10 18:44:43 +00:00
Joel deleted branch build/e7c53b13 2026-09-10 18:44:43 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ZSDev/obsidian-connor!12
No description provided.