Name the router's reactive primitives so attribution diagnostics say which query is waiting (liveQuery status, query versions, router memos)
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 48/100
- Type d'issue
- Fonctionnalité
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- typescript
- Domaine
- developer-experience, observability
Piste de recherche
Start with the named primitives in src/data/liveQuery.ts, src/data/query.ts, routing.ts, routers/factory.tsx, routers/components.tsx, pending.ts, and data/action.ts. Check how @solidjs/signals accepts name, then trace the router primitives and their existing tests. Done means router-created primitives have descriptive names and a test with attribution.enable() confirms diagnostics do not report generic signal or computed sources.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
What happens
With Solid's attribution engine on (attribution.enable(), rc.16), every diagnostic that involves the router's data layer names its sources "signal" or "computed". A SILENT_HOLD on a Studio page in our app reads:
[SILENT_HOLD] writes to "signal" ("idle" → "connecting"), "signal" ("idle" → "connecting"), "signal" ("idle" → "connecting"), …
Those are liveQuery status signals. Neither a person reading the console nor an agent reading /__solid/diagnostics can tell which live query was connecting, so the diagnostic cannot be acted on without bisecting by hand. The query version signals and the router's own memos have the same gap.
Where (next, 24eee074; also v2.0.0-next.40/41)
The key is already in hand at each of these sites, so the name is free:
src/data/liveQuery.ts:62:createSignal<LiveQueryStatus>("idle", { ownedWrite: true })→name: \liveQuery.status:${key}``src/data/query.ts:322and:437: the entry's versioncreateSignal(stamp, { ownedWrite: true })→name: \query:${key}``- Router internals with no name, which appear in tear/waterfall diagnostics:
routing.ts(url,pathname,search,hash,queryFn,matches, thelazyTreeVersionsignal, the linkstate/active/current/pendingmemos),routers/factory.tsx:364(location signal),routers/components.tsx(data,routeStates,matchesAtLevel),pending.ts:24,data/action.ts:313.
@solidjs/signals already accepts name on all of these (SignalOptions.name, MemoOptions.name), and it is dropped in production builds.
Proposal
Name every primitive the router creates. Data-layer ones should carry the user's key (query:<name><hash>, liveQuery.status:<name><hash>), and internal ones should use a router. prefix (router.location, router.matches, …). A test that runs a page with attribution.enable() and asserts that no reported source is named "signal"/"computed" would keep it that way.
Happy to send a PR if that direction sounds right.
- Langage dominant
- TypeScript
- Étoiles
- 1.3k
- Forks
- 184
- Merge moyen
- 15 h 47 min
- PR mergées (30 j)
- 47
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de solidjs/solid-router
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
solidjs/solid-router#696 ·
Les mainteneurs répondent en général sous 1 jour
-
1.x
Difficulté 4/5 1-2 jours Accessibilité débutants 57/100
solidjs/solid-router#694 ·
Les mainteneurs répondent en général sous 1 jour
-
Forward pressed while a Back navigation is still loading is dropped; the URL and the rendered route get out of syncPeut-être pris @sean0407 l’a pris il y a 8 jours. Ouverte1.x
Difficulté 4/5 1-2 jours Accessibilité débutants 54/100
solidjs/solid-router#687 ·
Les mainteneurs répondent en général sous 1 jour
-
<A> costs ~6us of server CPU per instance during SSR (20x a plain <a>), mostly mergeProps/splitPropsPeut-être pris @birkskyum l’a pris il y a 79 jours. Ouverte1.x
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
solidjs/solid-router#583 ·
Les mainteneurs répondent en général sous 1 jour
-
1.x enhancement
Difficulté 3/5 1-2 jours Accessibilité débutants 38/100
solidjs/solid-router#518 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de solidjs/solid-router
Issues similaires
-
comp/desktop desktop/shell os/windows P3 tool/file type/bug
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
NousResearch/hermes-agent#145928 ·
Les mainteneurs répondent en général sous 1 jour
-
compiler-dom: stringifyStatic renders :disabled="0" as a present attributePeut-être pris @DaZuiZui l’a pris aujourd’hui. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
vuejs/core#16051 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 74/100
-
integration:coding-agents
Difficulté 1/5 Moins d'une heure Accessibilité débutants 83/100
vectorize-io/hindsight#6151 ·
Les mainteneurs répondent en général sous 1 jour
-
DogFooding
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
OpenAEV-Platform/openaev#8768 ·
Les mainteneurs répondent en général sous 1 jour