Skip to content

fix(e2e): stop timing report iframe resize feedback (AROSLSRE-2698) - #7897

Merged
openshift-merge-bot[bot] merged 1 commit into
Azure:mainfrom
raelga:fix/e2e-timing-iframe-resize
Nov 3, 2026
Merged

openshift-merge-bot[bot] merged 1 commit into
Azure:mainfrom
raelga:fix/e2e-timing-iframe-resize

Conversation

@raelga

Copy link
Copy Markdown
Collaborator

AROSLSRE-2698

What

Sizes the timing overview from the accessible outer browser viewport rather than a content-sized iframe. Uses a fixed 320px overview when cross-origin restrictions prevent access to that viewport. Responds to host viewport resizes while preserving row and time zoom.

Adds an auto-height iframe regression and documents the embedding behavior.

Why

Prow sizes HTML artifact iframes from their content height. Using that iframe's window.innerHeight to determine chart height creates a resize feedback loop: the report's 30px footer exceeds its 16px reserved space, adding 14px per cycle. The bars grow continuously and make the page unusable.

The failure is reproducible in Stage run 2117146449132130304.

Testing

  • go test ./test/cmd/aro-hcp-tests/visualize -count=1 -v passes with Node v26.13.0 available.
  • The new regression fails against the original generated script with 14px growth on each resize; the fixed script remains stable across 20 simulated iframe resize cycles. Coverage includes host resizing, denied cross-origin access, zoom preservation and restoring the overview.
  • The CLI generates a complete report from 75 synthetic tests.
  • Controlled Chrome verification injects only the generated viewport-sizing blocks into the affected Prow HTML lens, preserving its real 100-test data and resizing bridge. No published artifact is modified.
Browser scenario Test count Browser viewport height Observed chart height
Original Prow embedding, 12 observations 100 1000px 320px to 768px, growing
Fixed Prow embedding 100 1000px Stable at 549px
Fixed Prow embedding after host resize 100 800px Stable at 349px
Fixed standalone HTML 75 1000px Stable at 549px
Fixed cross-origin auto-height iframe 75 1000px Stable at 320px

In the fixed Prow embedding, selecting 20–40% of tests expands the chart to 676px; restoring the full range settles at 549px. The cross-origin browser check confirms that top-level viewport access is actually denied.

Special notes for your reviewer

The fix applies to newly generated reports. Existing Prow artifacts contain their own embedded JavaScript and require regeneration to receive it. Opening an existing report directly avoids the auto-height iframe feedback loop.

Before: the same 100-test Prow report grows beyond the viewport without interaction.

Growing timing report in the Prow iframe

After: the generated viewport-sizing fix keeps the overview stable.

Stable timing report in the Prow iframe

PR Checklist

  • PR is scoped to a single task (no mixed concerns)
  • Title follows Conventional Commits format
  • Summary explains the "Why" behind the change
  • Linked to relevant ticket/issue
  • Screenshots included (if dashboards or other UI changes)
  • Self-reviewed the diff
  • CI/CD checks are passing (ignore Tide)
  • Draft PR used for WIP (if applicable)
  • Commit history is clean (rebased/squashed)
  • Tricky code blocks are commented
  • Specific reviewers tagged
  • All comment threads resolved before merge

If E2E tests are included:

  • E2E tests follow Principles of Good E2E Test Case Design
  • If new E2E use case is covered (via a new test or new check/verifier), demonstrate that the test is able to detect a defect/error and fail with proper error message and logs which communicates nature of the problem.

Copilot AI balanced review requested due to automatic review settings November 2, 2026 10:37
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification

This PR uses the pipeline controller for second-stage tests. Selection and triggering follow the repository configuration.

Use /test ? to list jobs and /pipeline help for commands.

@openshift-ci openshift-ci Bot added approved area/ci Automatically applied by owners-label for area/ci area/test Automatically applied by owners-label for area/test labels Nov 2, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟢 Approval recommended

No active review issues were identified for the viewport-based sizing change addressing embedded timing report growth.

No open issues 🎉

What changed in this PR

Fixes continuous growth of embedded E2E timing reports by sizing the overview independently of the iframe’s content height.

Changes:

  • Uses the accessible outer browser viewport, with a fixed 320px fallback when cross-origin restrictions prevent access.
  • Handles host viewport resizing while preserving row and time zoom.
  • Adds auto-height iframe regression coverage and documents embedding behavior.
File Description
test/​e2e/​README.md Documents viewport-based sizing and the cross-origin fallback.
test/​cmd/​aro-hcp-tests/​visualize/​options.go Updates overview sizing and host resize handling.
test/​cmd/​aro-hcp-tests/​visualize/​options_test.go Tests iframe stability, host resizing, zoom preservation, and overview restoration.

Review effort: Balanced

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-parallel

@raelga

Copy link
Copy Markdown
Collaborator Author

/override ci/prow/e2e-parallel

This PR only fixes a bug in the Test Timming Analysis display, does not affects the E2E code and the last E2E failed in a totally unrelated issue.

@openshift-ci

openshift-ci Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

Rael Garcia (@raelga): Overrode contexts on behalf of raelga: ci/prow/e2e-parallel

Details

In response to this:

/override ci/prow/e2e-parallel

This PR only fixes a bug in the Test Timming Analysis display, does not affects the E2E code and the last E2E failed in a totally unrelated issue.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@venkateshsredhat

Copy link
Copy Markdown
Collaborator

/lgtm
/approve

@openshift-ci

openshift-ci Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: raelga, venkateshsredhat

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-merge-bot
openshift-merge-bot Bot merged commit dbcbecf into Azure:main Nov 3, 2026
23 checks passed
@raelga
Rael Garcia (raelga) deleted the fix/e2e-timing-iframe-resize branch November 3, 2026 09:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved area/ci Automatically applied by owners-label for area/ci area/test Automatically applied by owners-label for area/test lgtm

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants