inkandswitch / inkandswitch/backstitch
Revert doesn't restore binary files after relaunch
- Dominant language
- Rust
- Stars
- 250
- Forks
- 8
- Avg merge
- 46m
- Merged PRs (30d)
- 1
Description
Repro:
1. Add binary files
2. Remove binary files
3. Reopen Godot
4. Revert to "Add binary files"
5. The files aren't added
The reason this occurs: DocumentWatcher has not ingested the old, removed binary docs at this stage.
Fix: We must add a method to DocumentWatcher that allows polling/tracking an arbitrary binary doc ID. Then, we need to adjust anything that uses `get_linked_file` to asynchronously get multiple linked files at a time, and await on that. Possibly a helper method -- `get_linked_files`.
Contributor guide
Research direction
Start by tracing DocumentWatcher and every get_linked_file caller, then reproduce the relaunch and revert sequence with binary files. Done means arbitrary removed binary document IDs can be tracked and reverting to the earlier state restores those files after relaunch, including concurrent linked-file retrieval.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- godot, rust
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100