Repository navigation
Add complete read-only per-file Version history - #96
Draft
jerelvelarde wants to merge 4 commits into
Draft
jerelvelarde wants to merge 4 commits into
jerelvelarde wants to merge 4 commits into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
This branch has not been deployed
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Problem and behavior
The local task/attachment example needs every retained Version without creating one. The whole-root journal omits some Versions installed through Change Sets, while
version capturecan write and recover state.Add experimental
folderbase.file-history@0.1.0: Rustread_file_history(root, path), CLIversion list ROOT PATH --json, and Node SDKclient.fileHistory(root, path). Return complete Object-stored Version metadata with canonical path and exact recorded timestamps. An untracked existing file returns null IDs and an empty list. Missing files are refused; recorded head is not a claim about current file bytes or blob recoverability.The reader uses retained read-only state and an optional existing nonblocking shared lock. It creates no lock/layout, captures nothing, and never repairs or replays. Bounded records/names/results fail instead of truncate. It preserves path/alias/duplicate/corruption/transfer checks and revalidates observed authority before returning.
Explicit first-version limitation: roots with any migration metadata, including completed migrations, return
file_history_migration_state_unsupported. Existing migration validation can repair staging, so this reader never invokes it. This refusal is not a recovery instruction. Full contract and limits:docs/file-history-0.1.md.Closes #95. Stacked on #93; existing writer behavior and prior capabilities stay unchanged except extracting the same private path-match decision for reuse.
Validation
Independent source review: no blockers at
1430dd280c36c8945465f5ff260da4e84adc4f07.19246f70eb294ff68ddee03929db96fcd2333547f85dd8c7335cd6aedd45c57d.This remains a draft for integration review.
No app binary repin, public release, or deployment is included.