Repository navigation
fix(web): crashes on Automation settings, /alerts and repeated Connect clicks - #2086
Conversation
…nd automation pages #2022 removed the hazel-oauth destination type, but rows of it were still stored, and the dashboard's strict type decode crashed /alerts and the Automation settings tab. Destinations of a type this build does not know are now left out of the list instead, and a migration retires the hazel-oauth rows and every reference to them, as the slack-bot cleanup did. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rovider no longer crashes window.open reuses the named popup; once it is on the provider's page it is cross-origin and writing the placeholder document threw a SecurityError. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 3 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
This comment has been minimized.
This comment has been minimized.
…oo, and pin the migration Each thresholds_json tier names its own destinations, and a rule's destination_ids_json is their union, so a tier still naming a deleted destination would refill it in the editor and fail every save. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Maple review🟢 Confidence 8/10 · likely safe to merge. Held at 8 because a fix has not been re-checked against the whole diff yet. The head strips
Before merge
Fixed since the last review
|
|
Merged with 2 steps from "Before merge" still open. If they are done, tick them on the review comment; if not, now is the time.
|
Fixes the dashboard crashes production recorded over the last 30 days (
foldkit.crashspans onmaple-web) that the code still allows.Automation settings and /alerts:
Expected @maple/AlertDestinationType#2022 removed the
hazel-oauthdestination type, but at least one org still had a destination of that type. The dashboard decoded each destination's type strictly, so loading/settings?tab=automation(Nov 1) and/alerts(Oct 31) crashed.rowToAlertDestinationDocumentnow returns anOption. A row of a type this build does not know is left out of the list (rowsToAlertDestinationDocuments) instead of crashing, so retiring a type cannot take these pages down again.drop_hazel_oauth_destinationsretires the stored rows the waydrop_legacy_slackdid forslack-bot. It removes the ids from alert rules (and disables a rule left with none, uptime monitors included), from the error notification policy and from issue escalation severities (dropping a severity left with none). It deletes their delivery rows, then the destinations. Malformed jsonb rows are left untouched. Checked against PGlite with mixed, hazel-only, disabled and corrupt fixtures.Connect popup:
SecurityErroron a second clickwindow.open("", name)reuses a popup that is still open. Once that popup is on github.com it is cross-origin, so writing the placeholder page threw (3 times on Oct 21,/sources/new?integration=github). The placeholder write is now best-effort, and the popup is still sent to the new authorize URL.Already fixed, no change here
/quick-startsetup tabsremoveChild: fixed by fix(web): switching the onboarding setup tabs no longer crashes #1800.Schema validation failed: thatlistTracespath was rewritten.Schema validation failed: unnamed rows are left out since feat(status-pages): one-screen builder, live screen and the page as its own editor #1950 merged.toLowerCase: fixed by fix(web): shortcuts survive the key-less autofill keydown; extension errors stay out of error tracking #1971.Verification
packages/web-dataalerts tests, including a new test for ahazel-oauthrow.apps/websettings and alerts tests (179).packages/dbparity andeffect-orm check.web-datatypecheck is clean.webtypecheck shows only errors from aneffect-sdklib that isn't built in this checkout.🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need.