Add failing tests for routing vault writes through the Vault API
Vault.adapter.write puts bytes on disk behind Obsidian's back: the change is only noticed later, by the file watcher. Until it is, metadataCache still describes the previous revision, and since getFileMetadataObject serves frontmatter and tags from that cache, a client that writes and immediately reads back can be handed pre-write metadata. This is observable today. With @modelcontextprotocol/sdk bumped to 1.30.0 the MCP integration test that sets a frontmatter list and reads it back fails in roughly a third of runs. The SDK is not at fault; it is simply quick enough to land the read inside the stale window far more often than 1.24.3 did. These tests pin each write path to Vault.modify/Vault.create, which keep Obsidian's own bookkeeping in step with the write rather than racing it, and pin binary uploads to the adapter, since Vault.modify is text-only. Five of the six fail until the next commit. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A
Adam Coddington committed
c7ed972b6ad964f1b1c4273783ca367beff2fb29
Parent: b8dfb11