Skip to content

Fix flaky logpoints-07 + retry example uploads#10654

Merged
Domiii merged 1 commit into
mainfrom
dominik/fix-logpoints-07-and-retry-example-uploads
Jul 16, 2026
Merged

Fix flaky logpoints-07 + retry example uploads#10654
Domiii merged 1 commit into
mainfrom
dominik/fix-logpoints-07-and-retry-example-uploads

Conversation

@Domiii

@Domiii Domiii commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Fix flaky logpoints-07 + retry example uploads

G1: logpoints-07 — resolve pretty-printed hit line dynamically

  • logpoints-07 hardcoded generated pp line 20 for hit counts after toggleMappedSources("off").
    • pp = pretty-printed generated source from the backend source worker.
  • The same bundle pretty-prints with different blank-line placement, shifting the hit body between line 20 and 21.
    • Divergence stems from prettyPrintSource engine choice.
      • V8 (PrettyPrintNode): no blank before the function; body on line 20.
      • js-beautify fallback: blank before the function; body on line 21.
    • Test failed whenever the layout put the function signature (no hits) on line 20.
  • Fix
    • New findLineWithHits helper waits for and returns whichever candidate line actually has hits.
    • Test now passes [20, 21] instead of hardcoding 20.

G2: buildkite_run_fe_tests — retry example uploads

  • save-examples upload failed intermittently under burst activity.
    • Cause: transient connectivity during bursts.
  • Fix
    • Wrap the save-examples invocation in new withExponentialBackoff helper.
      • 3 attempts, 1s base, jittered.

G3: Incidental tooling

  • package.json
    • typecheck uses tsc --no-emit.
    • Pin packageManager to yarn 4.9.1.
  • .gitignore
    • Ignore dist, tmp.*, tmp/.

## G1: logpoints-07 — resolve pretty-printed hit line dynamically

* `logpoints-07` hardcoded generated **pp** line `20` for hit counts after `toggleMappedSources("off")`.
  * **pp** = pretty-printed generated source from the backend source worker.
* The same bundle pretty-prints with different blank-line placement, shifting the hit body between line 20 and 21.
  * Divergence stems from `prettyPrintSource` engine choice.
    * V8 (`PrettyPrintNode`): no blank before the function; body on line 20.
    * js-beautify fallback: blank before the function; body on line 21.
  * Test failed whenever the layout put the function signature (no hits) on line 20.
* Fix
  * New `findLineWithHits` helper waits for and returns whichever candidate line actually has hits.
  * Test now passes `[20, 21]` instead of hardcoding `20`.

## G2: buildkite_run_fe_tests — retry example uploads

* `save-examples` upload failed intermittently under burst activity.
  * Cause: transient connectivity during bursts.
* Fix
  * Wrap the `save-examples` invocation in new `withExponentialBackoff` helper.
    * 3 attempts, 1s base, jittered.

## G3: Incidental tooling

* `package.json`
  * `typecheck` uses `tsc --no-emit`.
  * Pin `packageManager` to yarn 4.9.1.
* `.gitignore`
  * Ignore `dist`, `tmp.*`, `tmp/`.

Co-authored-by: Cursor <cursoragent@cursor.com>
@Domiii Domiii self-assigned this Jul 16, 2026
@Domiii
Domiii requested a review from Andarist July 16, 2026 19:29
@vercel

vercel Bot commented Jul 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
devtools Ready Ready Preview, Comment Jul 16, 2026 7:32pm

Request Review

@replay-io

replay-io Bot commented Jul 16, 2026

Copy link
Copy Markdown

E2E Tests

Status Complete ↗︎
Commit 1eeafac
Results
4 Failed
  • inspector-computed-02: Complex computed styles can be viewed (Replay 1, Replay 2, Replay 3, Replay 4)
  • jump-to-code-01: Test basic jumping functionality (Replay 1, Replay 2, Replay 3, Replay 4)
  • object_preview-04: Test scope mapping and switching between generated/original sources (Replay 1, Replay 2, Replay 3, Replay 4)
  • stepping-06: Test stepping in async frames and async call stacks (Replay 1, Replay 2, Replay 3, Replay 4)
  • ⚠️ 2 Flaky
  • authenticated/logpoints-01: Shared logpoints functionality (Replay 1, Replay 2, Replay 3, Replay 4, Replay 5, Replay 6, Replay 7, Replay 8)
  • cypress-04: Test Step buttons and menu item (Replay 1, Replay 2)
  • 95 Passed
  • async-stack: should detect async stacks outside the focus window
  • authenticated/comments-01: Test add, edit, and delete comment functionality
  • authenticated/comments-02: Test shared comments and replies (Replay 1, Replay 2)
  • authenticated/comments-03: Comment previews
  • authenticated/passport-01: Time travel
  • authenticated/passport-02: Infrared inspection
  • authenticated/passport-03: Swiss army knife
  • authenticated/passport-04: Multiplayer
  • console_async: support console evaluations in async frames
  • console_dock: Should show the correct docking behavior for recordings with video
  • console_errors: Test that errors and warnings from various sources are shown in the console
  • console_eval: support console evaluations
  • console_warp-01: should support warping to console messages
  • console_warp-02: support pausing, warping, stepping and evaluating console messages
  • console-expressions-01: should cache input eager eval and terminal expressions per instance
  • cypress-01: Basic Test Suites panel functionality
  • cypress-02: Test Step timeline behavior
  • cypress-03: Test Step interactions
  • cypress-05: Test DOM node preview on user action step hover
  • deleted-recording: Show error message for deleted recording
  • elements-search: Element panel should support basic and advanced search modes
  • fe-1875 :: verify that steps go to the right point in time
  • file-search-01: should search files
  • focus_mode-01: should filter messages as regions based on the active focus mode
  • highlighter: element highlighter works everywhere
  • inspector-computed-01: Basic computed styles can be viewed
  • inspector-elements-01: Basic DOM tree node display
  • inspector-elements-02_node-picker: element picker and iframe behavior
  • inspector-elements-03: Nested node picker and selection behavior
  • inspector-elements-04: Keyboard shortcuts should select the right DOM nodes
  • inspector-elements-05_search: element picker and iframe behavior
  • inspector-rules-01: Basic CSS rules should be viewed
  • inspector-rules-03: Shorthand CSS rules should be viewed
  • jump-to-code-02: Redux J2C functionality
  • logpoints-01: log-points appear in the correct order and allow time warping
  • logpoints-02: conditional log-points
  • logpoints-03: should display event properties in the console
  • logpoints-04: should display exceptions in the console
  • logpoints-05: should auto-complete based on log point location
  • logpoints-06: should be temporarily disabled
  • logpoints-07: should use the correct scope in auto-complete
  • logpoints-08: should support jumping directly to a hit point via the capsule input
  • logpoints-09: should support pending edits
  • logpoints-10: too-many-points-to-find UX
  • logpoints-11: too-many-points-to-run-analysis UX
  • logpoints-12: should auto save when removing conditions
  • logpoints-13: Test log point in a sourcemapped file
  • network-01: should filter requests by type and text
  • network-02: should show details for the selected request
  • network-03: should sync and display the current time in relation to the network requests
  • node_console_dock: Should show the correct docking behavior for recordings without video
  • node_console-01: Basic node console behavior
  • node_console-02: uncaught exceptions should show up
  • node_control_flow: catch, finally, generators, and async/await
  • node_logpoint-01: Basic node logpoints
  • node_object_preview: Showing console objects in node
  • node_quick_open_modal-01: Test basic searching functionality
  • node_spawn: Basic subprocess spawning
  • node_stepping-01: Test stepping in async frames and async call stacks
  • node_worker-01: make sure node workers don't cause crashes
  • object_preview-01: expressions in the console after time warping
  • object_preview-02: should allow objects in scope to be inspected
  • object_preview-03: Test previews when switching between frames and stepping
  • object_preview-05: Should support logging objects as values
  • object_preview-06: HTML elements
  • object_preview-07: inspect objects in the console while paused somewhere else
  • object_preview-08: should render ellipsis for collapsed objects with truncated properties
  • playwright-01: Basic Test Suites panel functionality
  • playwright-02: Test Step timeline behavior
  • playwright-03: Test Step interactions
  • playwright-04: Test Step buttons and menu item
  • playwright-05: Test DOM node previews on user action step hover
  • react_devtools-01: Basic RDT behavior
  • react_devtools-02: RDT integrations (Chromium)
  • react_devtools-03: process and display multiple React versions in page
  • react_devtools-04: Component selection is maintained when seeking to a new point
  • redux_devtools: Test Redux DevTools.
  • repaint-01: repaints the screen screen when stepping over code that modifies the DOM
  • repaint-02: repaints on hover
  • repaint-03: repaints on seek
  • repaint-04: prefers nearest (<=) paint when seeking between paints
  • repaint-05: prefers current time if pause creation failed outside of the focus window
  • repaint-06: repaints the screen screen when stepping over code that modifies the DOM
  • resizable-panels-01: Left side Toolbar and Video should be collapsible
  • restart-session: restart debugging session
  • scopes_rerender: Test that scopes are rerendered
  • session-destroyed: errors caused by session failure should bubble to the root
  • source-line-highlights: Test source line highlighting
  • sourcemap_stacktrace: Test that stacktraces are sourcemapped
  • stacking: Element highlighter selects the correct element when they overlap
  • stepping-01: Test basic step-over/back functionality
  • stepping-02: Test fixes for some simple stepping bugs
  • stepping-04: Test stepping in a frame other than the top frame
  • stepping-05: Test stepping in pretty-printed code
  • stepping-07: Test quick stepping using the keyboard
  • @Domiii
    Domiii merged commit 8daf2ce into main Jul 16, 2026
    16 of 23 checks passed
    @Domiii
    Domiii deleted the dominik/fix-logpoints-07-and-retry-example-uploads branch July 16, 2026 20:26
    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.

    2 participants