Skip to content

PINW-40: safe bidirectional Obsidian vault compatibility - #722

Closed
simonislee wants to merge 3 commits into
nashsu:mainfrom
simonislee:agent/hermes/4f69b27a7b7b
Closed

simonislee wants to merge 3 commits into
nashsu:mainfrom
simonislee:agent/hermes/4f69b27a7b7b

Conversation

@simonislee

Copy link
Copy Markdown

Summary

  • adopt existing Obsidian vaults non-destructively while preserving Markdown, YAML frontmatter, wikilinks, nested folders, .obsidian, plugin state, and attachments
  • add revision-checked, cross-platform atomic text writes plus conflict-safe rename/delete commands and conflict-aware editor save queues
  • enable recoverable file history by default, harden history backup/restore, and document the compatibility and ownership contract
  • add bidirectional smoke coverage for external Obsidian edits and LLM Wiki writes, including stale-write, symlink, rename, delete, and attachment cases

Validation

  • npm run check:frontend (132 files, 1,879 tests; typecheck and production build passed)
  • npm run mcp:test (22 tests passed)
  • cargo +1.91.0 fmt --manifest-path src-tauri/Cargo.toml -- --check (passed)
  • cargo +1.91.0 test --locked --manifest-path src-tauri/Cargo.toml (406 passed, 2 ignored)
  • git diff --check (passed)

Risk and scope

  • existing user-owned vault content remains opaque and is not normalized or rewritten during adoption
  • checked mutations fail on stale revisions, symlinks, out-of-project paths, non-regular files, and rename destination collisions
  • hostile processes running as the same OS user are outside the desktop app's security boundary; ordinary concurrent Obsidian edits are detected through revision checks

PINW-40

simonislee and others added 3 commits September 4, 2026 11:35
Co-authored-by: multica-agent <github@multica.ai>
PINW-42: establish reproducible build and release baseline
Co-authored-by: multica-agent <github@multica.ai>
@simonislee

Copy link
Copy Markdown
Author

Opened against the upstream repository by mistake; superseded by the fork-targeted PINW-40 PR.

@simonislee simonislee closed this Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant