getsentry / getsentry/sentry-javascript
Reconnect pageload and serving request under `cacheComponents`
- Langage dominant
- TypeScript
- Étoiles
- 8.7k
- Forks
- 1.8k
- Merge moyen
- 1 j 17 h
- PR mergées (30 j)
- 523
Description
*Example:* any `cacheComponents` page. The browser records pageload trace X, the server records request trace Y, and they never meet. The SDK currently disables the `sentry-trace` meta tags. because the shell HTML is cached and baked-in context would replay one stale trace to every visitor. Result: two orphan traces per visit. A slow pageload cannot be followed into its server work.
*Solves:* the incomplete-traces complaint. This is the gap users notice first.
*Fix idea:* carry trace context only in the part of the response that is never cached. For example, a small component rendered inside a dynamic hole streams the meta tag or script with trace Y's context, and the browser SDK picks it up. The prerendered shell stays context-free. This sketch has no prototype behind it yet - research this first.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
No files or tests are named. Start by locating the cacheComponents handling and the browser/server trace-context entry points, then inspect how cached shell HTML and dynamic holes are rendered. Done means pageload trace X and server trace Y reconnect without replaying stale context from the cached shell, with coverage for a cacheComponents page.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- observability, web-dev
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 35/100