Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Dev manifest bridge keeps stale CSS after an edit

Aperta
#415 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@everton-dgn ci sta già lavorando.

Dal 14/10/2026.

  • #416 di @everton-dgn — aperta
  • #417 di @everton-dgn — aperta

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
34/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript

Direzione di ricerca

Start with the HTTP bridge resolver generated by virtual:solid-manifest and find where it caches CSS for the isolated SSR runner. Reproduce with a lazy component importing page.css: fetch, edit the rule from 18px to 36px, then fetch again without restarting. Done when the second response contains the new rule and no stale one, and in-flight requests cannot restore old CSS.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

The HTTP bridge resolver generated by virtual:solid-manifest caches CSS in the isolated SSR runner. After a CSS edit, the resolver in the Vite process clears its cache, but the bridge consumer keeps the old result.

I reproduced this with a real Nitro dev worker using @solidjs/[email protected], [email protected], @solidjs/[email protected], [email protected], and [email protected]. The same cache implementation is still present in 3.0.0-next.50.

Steps:

  1. Render a lazy component that imports page.css, with .bridge_probe { font-size: 18px; }.
  2. Fetch the page and confirm the raw SSR response contains that rule.
  3. Change the rule to font-size: 36px and wait for Vite to process the file change.
  4. Fetch the page again without restarting the dev server.

The second response still contains 18px and does not contain 36px. Both responses are HTTP 200 and contain the page content. This reproduces even when the separate early-startup bridge URL problem is avoided by delaying manifest loading until the server is listening.

The browser eventually replaces the old styles during hydration. That leaves a visible layout change on a document reload.

The bridge cache needs invalidation when its styles change. Cached lookups must still return synchronously: returning a new Promise on every lookup prevents suspended lazy SSR renders from converging. Pending requests also need to be accounted for so a response started before invalidation cannot restore stale CSS.

Lingua principale
TypeScript
Stelle
522
Fork
73
Merge medio
1g 4h
PR unite (30g)
35

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di solidjs/solid-vite-plugin

Tutte le issue di solidjs/solid-vite-plugin

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.