SIGN IN SIGN UP

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