inkandswitch / inkandswitch/backstitch

Revert doesn't restore binary files after relaunch

Open
#262 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.