-
Notifications
You must be signed in to change notification settings - Fork 61
Refactor Mirabuf Loading System [AARD-2060]
#1273
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
base: dev
Are you sure you want to change the base?
Conversation
Chorus detected one or more security issues with this pull request. See the Checks tab for more details. As a reminder, please follow the secure code review process as part of the Secure Coding Non-Negotiable requirement. |
edf84e2
to
91d228d
Compare
fix: try to make unit tests work fix: actually make unit tests work feat: add unit tests for default assets fix: tsconfig issues again
91d228d
to
edee81d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2998126
to
e7bb1e1
Compare
Co-authored-by: Julian Wright <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
one more thing 🍎
Co-authored-by: Julian Wright <[email protected]>
|
Task
AARD-2060 - Refactor mirabuf caching service
AARD-2069 - Make uploading local mirabuf files enforce correct miratype (with gamepieces we can't just infer miratype completely)
Symptom
The current MirabufCachingService made a few decisions that made it hard to understand and had some key limitations:
id
field was unique but not consistent (it was based on the time that you first downloaded the file to your cache). This was the impetus for changing this, as we needed consistent IDs for multiplayer.cacheKey
field was either the name of the APS project, the remote download URL, or the hash of the locally uploaded fileMirabufCacheInfo
type was used both to store information about the OPFS files and to store in-memory references to the ArrayBuffersSolution
id
field has been replaced with ahash
field, that is the SHA-1 hash of the assembly (consistent and unique)name
), and there is a single source of truth for asset metadataVerification
Note
Your mirabuf cache will be cleared every time you switch between Synthesis on this branch and Synthesis not on this branch
Before merging, ensure the following criteria are met: