Skip to content

fix(core): broadcast wellknown updates globally and bound HTTP timeouts - #53821

Merged
kitlangton merged 1 commit into
v2from
wellknown-config-cache
Oct 9, 2026
Merged

kitlangton merged 1 commit into
v2from
wellknown-config-cache

Conversation

@kitlangton

@kitlangton kitlangton commented Oct 7, 2026 •

Copy link
Copy Markdown
Contributor

Why

WellKnown is a global service shared across all project Locations, and #53667 (f108fa4928) now persists its manifest and remote config in KV across transient refresh failures. Two gaps remain:

  1. WellKnown.refresh, WellKnown.add, and WellKnown.remove publish WellKnown.Event.Updated without { global: true }, so only the Location that triggered the update reloads while other open Locations remain on the previous manifest.
  2. WellKnown.inspect and WellKnown.resolveEntry have no request deadline, so a hung socket during a VPN/WARP cutover holds WellKnown's lock and Config's reload lock until the OS socket timeout (up to 6 minutes) before falling back to the cached KV snapshot.

What Changes

  • Publish WellKnown.Event.Updated with { global: true } in refresh, add, and remove so every open Location reloads when a well-known source changes.
  • Add a 15-second timeout (Effect.timeout("15 seconds")) to WellKnown.inspect and WellKnown.resolveEntry so hung connections fall back promptly to the cached KV config.

Verification

cd packages/core
bun run test test/wellknown.test.ts
bun typecheck

@kitlangton
kitlangton force-pushed the wellknown-config-cache branch from e9f5efe to c25bbc0 Compare October 9, 2026 22:03
@kitlangton kitlangton changed the title fix(core): retain validated wellknown remote config across refresh failures fix(core): broadcast wellknown updates globally and bound HTTP timeouts Oct 9, 2026
@kitlangton
kitlangton merged commit a13c73b into v2 Oct 9, 2026
10 of 11 checks passed
@kitlangton
kitlangton deleted the wellknown-config-cache branch October 9, 2026 22:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant