Repository navigation
fix(trash): never sweep a note Obsidian trashed under a name the server recorded #665
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
38 commits
Select commit
Hold shift + click to select a range
f6f3f3c
fix(trash): never sweep a note Obsidian trashed under a recorded name
aliasunder 098823a
fix(review): list the sweep's identity gate in SECURITY.md and word i…
aliasunder b75f7e9
docs(trash): state why the identity leaves out the device number
aliasunder d0f012d
fix(trash): create the trash folder under the trash-domain lock
aliasunder 60a6442
style: clarify trash sweep and trash move names, comments, and docs
aliasunder d21cd45
fix(trash): also match the inode change time before sweeping a file
aliasunder 7bd21af
test(trash): cover the sweep's remaining missing-file paths and pin e…
aliasunder 1ecdad8
fix(trash): bound the change time by the trash moment instead of stor…
aliasunder 643dd3f
fix(trash): compare the whole row in the orphan purge's re-read
aliasunder 0e08d86
docs(trash): note the case-variant sibling a stale trash row can belo…
aliasunder b5f9fd9
docs(trash): state the change-time limit in the sweep's docstring
aliasunder f9895e0
style: clarify the trash sweep's change-time names and comments
aliasunder f9d45f2
test(trash): tighten the change-time limit tests
aliasunder 16e431e
fix(trash): keep a failed folder prune from ending the retention sweep
aliasunder 9f7603e
docs(trash): state that pruneEmptyParents throws on an unsafe path
aliasunder c75b5ab
docs(trash): state that a re-trash is caught only where renames move …
aliasunder 84e7c9d
docs(contributing): drop the unfinished template sync sentence
aliasunder a4f3c07
refactor(trash): name the sweep's file check for the verdict it returns
aliasunder 814600a
docs(trash): state that a case-only sibling loses its row on a case-s…
aliasunder 7d60ac0
fix(trash): keep a failed row drop from ending the retention sweep
aliasunder 20c40d7
fix(trash): keep a failed row drop from ending the orphan purge
aliasunder 69bca46
test(trash): prove the unlink ran when a vanished file's row drop fails
aliasunder 958427a
docs(trash): say how the next sweep drops a row an unlink left behind
aliasunder c9e4b8e
style(trash): name the row-drop helper for its success result and giv…
aliasunder 71a7331
test(trash): require exactly one warning when a folder prune fails
aliasunder 1dd4616
test(trash): require exactly one warning in each sweep and purge warn…
aliasunder 450b848
fix(trash): keep a failed row re-read from ending the sweep or the purge
aliasunder 9287f2d
test(search): assert the whole trash entry survives a vault rebuild
aliasunder 5f47b7b
test(trash): assert whole kept rows, and rebuild a day after recording
aliasunder 89bf9dd
docs(trash): say why the orphan purge treats a row it cannot re-read …
aliasunder 6b3e154
docs(trash): state the window between the identity read and the unlink
aliasunder 9d1adc8
docs(trash): say which gate drops a row whose parent folder is now a …
aliasunder 413b538
docs(trash): say in place why every delete passes the stale-row clear
aliasunder a6318b2
docs(trash): trim the trash sections of ARCHITECTURE.md and SECURITY.…
aliasunder 25c13c6
docs(security): describe the trash sweep's guards without code-level …
aliasunder 18b9679
docs(trash): restore why the delete log carries trashOption
aliasunder 14a6459
docs(trash): shorten ARCHITECTURE.md's trash handling to the safeguar…
aliasunder c958ff5
docs(trash): stop ARCHITECTURE.md promising every trash move is recorded
aliasunder File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.