Skip to content

refactor(async): add scoped resource lifecycle - #562

Open
beruro wants to merge 5 commits into
developfrom
junyu/async-resource-lifecycle
Open

refactor(async): add scoped resource lifecycle#562
beruro wants to merge 5 commits into
developfrom
junyu/async-resource-lifecycle

Conversation

@beruro

@beruro beruro commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Problem

The legacy async-data helper does not make scope changes, stale completions, unmount cancellation, or hidden-window polling ownership explicit, allowing old requests and duplicate timers to outlive their consumer.

Solution

Potential risks

Verification

Validated locally after merging current develop (017fb9afa) into head 8618af370 without conflicts:

  • pnpm install --frozen-lockfilePASS. The optional legacy node-sass native postinstall could not build under the local Node/Python combination, but installation completed and repository checks ran normally.
  • pnpm exec vitest run src/hooks/async/useAsyncResource.test.ts src/hooks/async/useVisibilityPolledData.test.ts src/util/core/__tests__/latestScopedTask.test.ts src/util/core/__tests__/visibilityAwarePoll.test.tsPASS, 4 files / 18 tests.
  • pnpm typecheckPASS.
  • git diff --cached --check before the merge commit — PASS.

Published GitHub CI on head 8618af370 is fully green: Frontend typecheck/lint/test, Rust clippy, and AI attribution all passed.

beruro added 2 commits August 10, 2026 13:24
Pre-commit hook ran. Total eslint: 10, total circular: 0
Pre-commit hook ran. Total eslint: 10, total circular: 0
@beruro
beruro force-pushed the junyu/async-resource-lifecycle branch from fb403e6 to 5f991c2 Compare August 10, 2026 05:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants