feat(3ds): run guest updates alongside offload - #391
Draft
doodlewind wants to merge 1 commit into
Draft
Conversation
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.
Pocket Map's offload build compiled out the 3DS development server and SD guest recovery. Restoring the old loop directly would put package reads, hashing, writes and fsync on the UI thread. This change runs development IO on a native worker and enables guest updates, the L+R+SELECT menu and screenshots alongside offload and SD resource packs.
Stacked on #381 (
feat/local-resource-packs); the offload/image and local-pack work remains in its existing PRs.dev_transport.c, keeping the desktop protocol compatible.devserver.cexposes bounded release/acquire mailboxes: four input/output records, one snapshot, one candidate transaction and one borrowed screenshot pair. Sockets, pairing reads, package admission and durable commits stay off the UI thread.--rotatereplaces it. Capture builds keep the worker disabled. Legacy svc support remains separate.Validation:
Reproduce the live-runtime checks with
tests/e2e/3ds-hot-update.ts --host … --key … --package … --out …. Pocket Map adopts this runtime and documents its guest-only update command in pocket-stack/pocket-map#3.