docs: Phase 3 cacheTime single-runtime design#126
Merged
Conversation
mahyarmlk
added a commit
that referenced
this pull request
Jun 27, 2026
mahyarmlk
added a commit
that referenced
this pull request
Jun 27, 2026
#127) * feat(core): resource cache phase 3 — cacheTime single-runtime eviction * fix(core): two resource cache runtime edge cases Fix 1 — in-flight promise after inactive eviction must not mutate detached entries. Add ownership check (entries.get(key) !== entry) before applying success/failure results, calling staleNotify(), or starting staleTime/cacheTime timers. Fix 2 — switching active key to an already in-flight entry must sync public state (syncFromEntry) before dedupe early return. Previously the dedupe path returned the in-flight promise without updating currentStatus/currentValue/currentError, leaving public getters showing the previous key's state. Add tests: - detached promise resolution does not notify subscribers - detached promise resolution does not start timers - switching to in-flight key syncs state before dedupe return * docs: fix Phase 3 implementation PR reference (PR #126 → PR #127)
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.
Summary
Refines the resource cache design for Phase 3: single-runtime
cacheTime.Changes
cacheTimeproposed design section with new semantics (defaultundefined, single-runtime only, no cross-navigation)Key Semantics
cacheTimeis optional (ms), defaultundefined(no time-based eviction)dispose()clears all timers and entriesValidation
pnpm lint✓pnpm typecheck✓pnpm build✓pnpm pack:check✓pnpm changeset status✓ (no packages to bump)This is a docs-only change. No runtime code, no examples, no changesets.