-
-
Notifications
You must be signed in to change notification settings - Fork 1.6k
feat(perps): disk-backed cold-start cache for instant data display #27898
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
Merged
Merged
Changes from all commits
Commits
Show all changes
67 commits
Select commit
Hold shift + click to select a range
81948a4
feat(perps): add disk-backed cold-start cache for instant data display
abretonc7s 6fe0beb
chore(perps): add cold-start cache benchmark instrumentation and meth…
abretonc7s 097ed71
chore(perps): realistic benchmark recipe + Android/iOS results
abretonc7s 9594b2c
feat(perps): add skipTTL cache getters, price stripping, and benchmar…
abretonc7s 38415ad
chore(perps): remove temporary benchmark instrumentation
abretonc7s d73f553
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s 7700407
test(perps): add unit tests for disk-backed cold-start cache
abretonc7s c87935b
docs(perps): remove proposal file, add caching architecture doc
abretonc7s 8a02c0d
fix(perps): disk cache DI consistency, dedup providerNetworkKey, remo…
abretonc7s f5b0d93
fix(perps): move throttle timestamp after validation guards in disk p…
abretonc7s 930efa1
fix(perps): guard disk cache setItem with optional chaining for test …
abretonc7s 8f91501
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s e14a05e
fix(perps): reset disk cache throttle timestamps on context switch
abretonc7s b9b1ece
test(perps): add resetDiskCacheThrottles to stream manager mock
abretonc7s 4c865cb
fix(perps): synchronous disk cache hydration to eliminate cold-start …
abretonc7s f4df5c0
chore(perps): remove cold-start cache recipe from PR (shared as PR co…
abretonc7s 37e45cf
chore(perps): remove benchmark methodology doc (not needed in PR)
abretonc7s 799cc46
fix(perps): remove dead async hydrateCacheFromDisk and redundant sync…
abretonc7s 9485084
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s bd329aa
fix(perps): only persist user data to disk when all channels have del…
abretonc7s 2b88ff4
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s 769434f
fix(perps): persist preload snapshots for reload hydration
abretonc7s 0411dcf
docs(perps): align preload architecture docs
abretonc7s 9dca23b
fix(perps): address cold-start cache review regressions
abretonc7s 75b569d
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 2e36ef2
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 0479544
fix(perps): use MYX-aware cache key for non-aggregated disk persist
abretonc7s e1a6ede
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s ab6ff6a
refactor(perps): address PR review comments
abretonc7s cb9e5cb
fix: add getSnapshot to view test stream mocks
abretonc7s 4e6a408
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s 3068b3b
fix: add getSnapshot to all stream channel test mocks
abretonc7s de0cd34
fix(perps): force user data timestamps TTL-stale on disk hydration
abretonc7s b213d72
refactor(perps): extract disk persistence payload builders to shared …
abretonc7s fdf68ab
refactor(perps): extract controller disk cache helpers + batch hydrat…
abretonc7s 4fad0a4
refactor(perps): pass persist callbacks via StreamChannel constructor
abretonc7s 5dc4394
fix: use buildProviderCacheKey in MarketDataChannel cache invalidatio…
abretonc7s 95d4fd4
fix(perps): add constructor to StreamChannel in CandleStreamChannel t…
abretonc7s ff22c28
fix(perps): restore null getSnapshot in channelWithInitialValue test …
abretonc7s 2676c98
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 4ebd01c
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 02cd7d5
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s a7bdbae
chore: formatting
abretonc7s 7aa94cc
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 86efc52
fix: linting
abretonc7s c242e42
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 69374d8
refactor(perps): extract DISK_HYDRATION_STALENESS_FACTOR constant
abretonc7s c5c2de6
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s f0c1b67
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 01911c2
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 540930e
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 7c02c83
fix: update E2E fixture for new PerpsController cache fields
abretonc7s 6b62db9
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 472d9d2
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s d3a744d
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 2eb6cbb
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s cb7332c
fix: add type guard for clearCache in connection manager test
abretonc7s 209555f
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 0ca58a9
Merge branch 'main' into feat/perps/simplify-cache-mechanism
abretonc7s 6d5dd42
test: address bugbot comments on test mocks
abretonc7s ed61195
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s ccef9a2
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s cb7d00b
fix: remove duplicate JSON keys in default fixture
abretonc7s 0c07b5b
Merge remote-tracking branch 'origin/main' into feat/perps/simplify-c…
abretonc7s 6d72c73
test: fix e2e tests
racitores 4c306d2
merge: resolve conflict with origin/main in default-fixture.json
abretonc7s ed83a41
fix: add perps cached data keys to fixture validation ignore list
abretonc7s File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
Uh oh!
There was an error while loading. Please reload this page.