feat(core): Add url.full attribute to core fetch instrumentation - #22415
Merged
Conversation
Lms24
force-pushed
the
lms/ref-core-url.full
branch
from
July 21, 2026 11:52
0726f56 to
50f2d36
Compare
Member
Author
|
bugbot review |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 9861918. Configure here.
Contributor
size-limit report 📦
|
Lms24
marked this pull request as ready for review
July 21, 2026 14:34
Lms24
requested review from
JPeer264,
chargome,
isaacs,
logaretm,
msonnb and
nicohrubec
and removed request for
a team
July 21, 2026 14:34
nicohrubec
approved these changes
Jul 21, 2026
Lms24
added a commit
that referenced
this pull request
Jul 21, 2026
mydea
added a commit
that referenced
this pull request
Aug 12, 2026
Rebased continuation of #19229 (original author @aklkv) onto current `develop`, with merge conflicts resolved and the failing tests fixed. Migrates `@sentry/ember` from the legacy v1 addon format to the [Ember v2 addon format](https://rfcs.emberjs.com/id/0507-embroider-addons), so the package works with both classic Ember builds and Embroider-optimized builds and no longer depends on `@embroider/macros` at runtime. See #19229 for the full description of the migration. ## Why a new branch The original PR was ~1900 commits behind `develop` and conflicting. Rather than resolve the same conflicts twice across its two commits, I squashed them into one and rebased against the final state once. The subtle part: the migration renamed `packages/ember/addon/` → `src/`. Git therefore saw develop's later behavioral changes to those files as edits to *deleted* files and did **not** surface them as conflicts. Several develop-side changes had to be ported into the new `src/` files by hand: - **Span ops** (#22669, #23086) — route hooks now emit `op: 'function'` with a `code.function.name` attribute; the runloop uses `ui.task`; the transition span uses `router`. `instrumentRoutePerformance.ts` still carried the old `ui.ember.route.*` ops and had to be updated. - **URL attributes** (#22095, #22415) — `url.path` / `url.full` / `url.template` on router spans, reconciled onto the PR's restructured `instrumentEmberAppInstanceForPerformance.ts`. ## Build/tooling reconciliation - Re-added the nested `typescript: ~5.8.0` devDependency pin. `develop` upgraded to TypeScript 7 (the native compiler, which drops `typescript/lib/tsc`), and glint's declaration build needs the classic JS compiler — the same stop-gap `develop` already applies to ember (see #19435). Without the pin the declaration build fails with `ERR_PACKAGE_PATH_NOT_EXPORTED`. - Bumped `@sentry/browser` / `@sentry/core` from the PR's stale `10.53.1` to `10.67.0` and added `@sentry/conventions` (now imported by the ported instrumentation). - Removed the PR's `import/no-unresolved` oxlint rule (doesn't exist in this repo's oxlint 1.75) and wrapped `URL_FULL` in `filterCollectedUrl()` for the `sdk/no-unfiltered-url-attributes` rule, which now applies since the code lives under `src/**`. ## Test fixes The originally-failing tests came down to three things: - **Span-op port** above — fixed the `captures correct spans for navigation` assertions. - **Missing `traceLifecycle: 'static'`** in the two new e2e apps (`ember-strict-resolver`, `ember-vite`). `develop` made span-streaming the default and disables it in the ember test apps (#22588); the new apps predated that, so their performance tests hung waiting for transaction events that never arrived under streaming. - **Stale assertions** in `ember-strict-resolver`'s `sentry-performance.test.ts`, updated from the old `ui.ember.*` op schema to the new `router` / `function` / `ui.task` ops. All four ember e2e apps pass (`ember-classic` 6/6, `ember-embroider` 6/6, `ember-strict-resolver` 10/10, `ember-vite` 5/5), along with the ember unit tests, lint, and build. Supersedes #19229. --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
JPeer264
pushed a commit
that referenced
this pull request
Aug 12, 2026
Rebased continuation of #19229 (original author @aklkv) onto current `develop`, with merge conflicts resolved and the failing tests fixed. Migrates `@sentry/ember` from the legacy v1 addon format to the [Ember v2 addon format](https://rfcs.emberjs.com/id/0507-embroider-addons), so the package works with both classic Ember builds and Embroider-optimized builds and no longer depends on `@embroider/macros` at runtime. See #19229 for the full description of the migration. ## Why a new branch The original PR was ~1900 commits behind `develop` and conflicting. Rather than resolve the same conflicts twice across its two commits, I squashed them into one and rebased against the final state once. The subtle part: the migration renamed `packages/ember/addon/` → `src/`. Git therefore saw develop's later behavioral changes to those files as edits to *deleted* files and did **not** surface them as conflicts. Several develop-side changes had to be ported into the new `src/` files by hand: - **Span ops** (#22669, #23086) — route hooks now emit `op: 'function'` with a `code.function.name` attribute; the runloop uses `ui.task`; the transition span uses `router`. `instrumentRoutePerformance.ts` still carried the old `ui.ember.route.*` ops and had to be updated. - **URL attributes** (#22095, #22415) — `url.path` / `url.full` / `url.template` on router spans, reconciled onto the PR's restructured `instrumentEmberAppInstanceForPerformance.ts`. ## Build/tooling reconciliation - Re-added the nested `typescript: ~5.8.0` devDependency pin. `develop` upgraded to TypeScript 7 (the native compiler, which drops `typescript/lib/tsc`), and glint's declaration build needs the classic JS compiler — the same stop-gap `develop` already applies to ember (see #19435). Without the pin the declaration build fails with `ERR_PACKAGE_PATH_NOT_EXPORTED`. - Bumped `@sentry/browser` / `@sentry/core` from the PR's stale `10.53.1` to `10.67.0` and added `@sentry/conventions` (now imported by the ported instrumentation). - Removed the PR's `import/no-unresolved` oxlint rule (doesn't exist in this repo's oxlint 1.75) and wrapped `URL_FULL` in `filterCollectedUrl()` for the `sdk/no-unfiltered-url-attributes` rule, which now applies since the code lives under `src/**`. ## Test fixes The originally-failing tests came down to three things: - **Span-op port** above — fixed the `captures correct spans for navigation` assertions. - **Missing `traceLifecycle: 'static'`** in the two new e2e apps (`ember-strict-resolver`, `ember-vite`). `develop` made span-streaming the default and disables it in the ember test apps (#22588); the new apps predated that, so their performance tests hung waiting for transaction events that never arrived under streaming. - **Stale assertions** in `ember-strict-resolver`'s `sentry-performance.test.ts`, updated from the old `ui.ember.*` op schema to the new `router` / `function` / `ui.task` ops. All four ember e2e apps pass (`ember-classic` 6/6, `ember-embroider` 6/6, `ember-strict-resolver` 10/10, `ember-vite` 5/5), along with the ember unit tests, lint, and build. Supersedes #19229. --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The attribute was missing in the core fetch instrumentation, causing vercel-edge and cloudflare fetch spans to not include it. For browser, it was already added on top of the core instrumentation.
Further changes:
url.fullattributes for constant from conventionsSEMANTIC_ATTRIBUTE_URL_FULLwith conventions constantcloses #22416