Ignore rules (.nectendaignore) #54

Closed
opened 2026-09-21 18:04:32 +01:00 by cruelacid · 1 comment
Owner

Part of #37.

What Relay does

Not shipped. .relayignore is their open PR #104, unmerged as of
21 Sep 2026 — a marker file, context-menu stop/resume, a cloud-off explorer
indicator and a remote-metadata cleanup prompt.

So this is a chance to be ahead rather than behind.

What we do today

No user-configurable ignore rules at all. blob-policy.ts:28 is hard-coded
policy: dot-directories are ignored, .md is text, everything else is a blob.

The hazard — this is where the effort goes

A file excluded locally must not be announced as deleted to other vaults.
That is precisely the bug class recorded in docs/sync-limitations.md under
"Renaming a shared folder emptied it for everyone else": a local view of a
listing propagating as an authoritative deletion.

Budget the time for the tests, not for the settings row. Under CLAUDE.md's
central principle, an ignore rule that deletes someone else's file is worse than
no ignore rule.

Risk

risk:none to the server, but the highest data-safety risk in Phase 18.

Verification

Vault A ignores a file that Vault B still syncs. B's copy must be untouched —
asserted, and the assertion must fail when the rule is inverted.

Part of #37. ## What Relay does **Not shipped.** `.relayignore` is their open **PR #104**, unmerged as of 21 Sep 2026 — a marker file, context-menu stop/resume, a `cloud-off` explorer indicator and a remote-metadata cleanup prompt. So this is a chance to be **ahead** rather than behind. ## What we do today No user-configurable ignore rules at all. `blob-policy.ts:28` is hard-coded policy: dot-directories are ignored, `.md` is text, everything else is a blob. ## The hazard — this is where the effort goes A file excluded locally **must not be announced as deleted** to other vaults. That is precisely the bug class recorded in `docs/sync-limitations.md` under *"Renaming a shared folder emptied it for everyone else"*: a local view of a listing propagating as an authoritative deletion. Budget the time for the tests, not for the settings row. Under `CLAUDE.md`'s central principle, an ignore rule that deletes someone else's file is worse than no ignore rule. ## Risk `risk:none` to the server, but the highest data-safety risk in Phase 18. ## Verification Vault A ignores a file that Vault B still syncs. B's copy must be untouched — asserted, and the assertion must fail when the rule is inverted.
Author
Owner

Moved to the Vikunja board as NEC-31: https://projectron.nerchure.com/tasks/31

Moved to the Vikunja board as **NEC-31**: https://projectron.nerchure.com/tasks/31
Sign in to join this conversation.
No assignees
1 participant
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
Nectenda/nectenda#54
No description provided.