Skip to content

fix(craft): Add missing mainDocsUrl for @sentry/effect SDK#19860

Open
bc-sentry wants to merge 1 commit intodevelopfrom
fix/effect-sdk-docs-url
Open

fix(craft): Add missing mainDocsUrl for @sentry/effect SDK#19860
bc-sentry wants to merge 1 commit intodevelopfrom
fix/effect-sdk-docs-url

Conversation

@bc-sentry
Copy link

Problem

The @sentry/effect SDK was added to the release registry without the required mainDocsUrl field in the craft configuration. This causes a KeyError in the Sentry backend when trying to access SDK documentation URLs.

Sentry Issue: SENTRY-5M6R

  • Error: KeyError: 'main_docs_url'
  • Impact: 238,811 occurrences affecting 3,994 users
  • First seen: March 17, 2026 at 16:50 UTC (shortly after Effect SDK was released at 16:44 UTC)

Solution

This PR adds the missing mainDocsUrl field to the Effect SDK configuration in .craft.yml, following the same pattern as other JavaScript SDKs.

Changes

  • Added mainDocsUrl: 'https://docs.sentry.io/platforms/javascript/guides/effect/' to the Effect SDK registry configuration

Testing

  • Verified the URL format matches other JavaScript SDK documentation URLs
  • Confirmed the field name matches the registry specification

Impact

  • Future releases of @sentry/effect will include the proper documentation URL in the release registry
  • This prevents the KeyError from occurring in the Sentry backend

Fixes SENTRY-5M6R

The Effect SDK was missing the mainDocsUrl field in the craft configuration,
causing KeyError: 'main_docs_url' in Sentry backend (SENTRY-5M6R).

This adds the documentation URL following the same pattern as other
JavaScript SDKs in the registry.

Fixes SENTRY-5M6R
Copy link
Member

@Lms24 Lms24 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for opening this PR Since when is this required? None of the other packages define this property.

@Lms24
Copy link
Member

Lms24 commented Mar 17, 2026

We might need to fix this in the release registry directly since we already made the first release.

@bc-sentry
Copy link
Author

We might need to fix this in the release registry directly since we already made the first release.

I was thinking we would do a re-release, but maybe that's not the right thing to do because this release is broken. Do you know how to fix it directlyi?

@github-actions
Copy link
Contributor

github-actions bot commented Mar 17, 2026

size-limit report 📦

Path Size % Change Change
@sentry/browser 25.64 kB - -
@sentry/browser - with treeshaking flags 24.14 kB - -
@sentry/browser (incl. Tracing) 42.62 kB - -
@sentry/browser (incl. Tracing, Profiling) 47.28 kB - -
@sentry/browser (incl. Tracing, Replay) 81.42 kB - -
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 71 kB - -
@sentry/browser (incl. Tracing, Replay with Canvas) 86.12 kB - -
@sentry/browser (incl. Tracing, Replay, Feedback) 98.37 kB - -
@sentry/browser (incl. Feedback) 42.45 kB - -
@sentry/browser (incl. sendFeedback) 30.31 kB - -
@sentry/browser (incl. FeedbackAsync) 35.36 kB - -
@sentry/browser (incl. Metrics) 26.92 kB - -
@sentry/browser (incl. Logs) 27.07 kB - -
@sentry/browser (incl. Metrics & Logs) 27.74 kB - -
@sentry/react 27.39 kB - -
@sentry/react (incl. Tracing) 44.95 kB - -
@sentry/vue 30.08 kB - -
@sentry/vue (incl. Tracing) 44.48 kB - -
@sentry/svelte 25.66 kB - -
CDN Bundle 28.28 kB - -
CDN Bundle (incl. Tracing) 43.51 kB - -
CDN Bundle (incl. Logs, Metrics) 29.14 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) 44.36 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) 68.21 kB - -
CDN Bundle (incl. Tracing, Replay) 80.33 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 81.23 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) 85.87 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 86.77 kB - -
CDN Bundle - uncompressed 82.62 kB - -
CDN Bundle (incl. Tracing) - uncompressed 128.56 kB - -
CDN Bundle (incl. Logs, Metrics) - uncompressed 85.49 kB - -
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 131.43 kB - -
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 209.12 kB - -
CDN Bundle (incl. Tracing, Replay) - uncompressed 245.41 kB - -
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 248.26 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 258.32 kB - -
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 261.17 kB - -
@sentry/nextjs (client) 47.37 kB - -
@sentry/sveltekit (client) 43.07 kB - -
@sentry/node-core 56.35 kB +0.02% +10 B 🔺
@sentry/node 173.17 kB +0.01% +11 B 🔺
@sentry/node - without tracing 96.35 kB +0.01% +6 B 🔺
@sentry/aws-serverless 113.35 kB +0.01% +9 B 🔺

View base workflow run

@bc-sentry
Copy link
Author

Thanks for opening this PR Since when is this required? None of the other packages define this property.

Claude says: The problem is that @sentry/effect explicitly defined custom fields (name, sdkName, packageUrl) but didn't include mainDocsUrl. This likely prevented Craft from using its default URL generation logic.

When an SDK entry has custom fields, it seems Craft expects you to provide ALL the necessary fields, including
mainDocsUrl.

So mainDocsUrl is required when:

  1. You're explicitly customizing the SDK entry with fields like name, sdkName, or packageUrl
  2. Craft can't automatically derive it from the package name

@JPeer264
Copy link
Member

Would a new release of 10.44.1 with this addition fix the issue?

Also I feel like craft should have caught this before, I think this needs to be improved - I could follow up on this

@Lms24
Copy link
Member

Lms24 commented Mar 17, 2026

let's not merge this please

@bc-sentry
Copy link
Author

Would a new release of 10.44.1 with this addition fix the issue?

Also I feel like craft should have caught this before, I think this needs to be improved - I could follow up on this

Yes, it would be good for it to verify the required properties. cc'ing Mr. Craft @BYK

@JPeer264
Copy link
Member

I'll close this in favor of getsentry/sentry-release-registry#229

@JPeer264 JPeer264 closed this Mar 17, 2026
@JPeer264 JPeer264 reopened this Mar 17, 2026
@JPeer264
Copy link
Member

After thinking over it. Reopening since we still have to have it actually

@Lms24
Copy link
Member

Lms24 commented Mar 17, 2026

Yeah let's wait with closing this until we properly investigate things tomorrow. If the outcome is that this needs to be set by SDKs now, it would be a fairly drastic change. So I'd prefer it if we can somehow infer this in craft.

@BYK
Copy link
Member

BYK commented Mar 17, 2026

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants