You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Failing test: Discover drag and drop - should support dragging and dropping a field onto the grid (with keyboard) #284178
Error: SAML callback failed: expected 302, got 401
at finishSAMLHandshake (src/platform/packages/shared/kbn-test-saml-auth/src/saml_auth.ts:287:11)
at kbnUsername (src/platform/packages/shared/kbn-test-saml-auth/src/saml_auth.ts:342:35)
at SamlSessionManager.supportedRoles (src/platform/packages/shared/kbn-test-saml-auth/src/session_manager.ts:79:10)
at SamlSessionManager.forceNewSession (src/platform/packages/shared/kbn-test-saml-auth/src/session_manager.ts:223:14)
at SamlSessionManager.getInteractiveUserSessionCookieWithRoleScope (src/platform/packages/shared/kbn-test-saml-auth/src/session_manager.ts:240:24)
at discoverScoutSpace (src/platform/packages/shared/kbn-scout/src/playwright/fixtures/scope/test/browser_auth/index.ts:75:27)
at src/platform/plugins/shared/discover/test/scout/core/ui/parallel_tests/drag_drop.spec.ts:15:32
Closing: transient cloud-serverless auth-service disruption failed SAML session setup across ~74 unrelated tests in this job. Nothing test- or product-related to fix; it will reopen automatically if the test fails again.
Test needs an update — navigation gates on the browser load event
pageObjects.discover.goto() in beforeEach burned Scout's full 20s navigationTimeout inside page.goto(..., waitUntil: "load") while Kibana's bootstrap was still downloading — the failure screenshot is the plain "Loading Elastic" splash, no error, no toast.
await this.page.gotoApp(
'discover',
- options.savedSearchId ? { hash: `/view/${options.savedSearchId}` } : undefined+ options.savedSearchId ? { hash: `/view/${options.savedSearchId}` } : undefined,+ // Resolve once the document commits; `waitForDiscoverPage()` below is the readiness gate.+ { waitUntil: 'commit' }
);
await this.waitForDiscoverPage();
This follows Wait for complex UI to finish rendering — the load event is a global, resource-completion indicator, while waitForDiscoverPage() already waits 30s on the component-specific dscPage signal. No timeout bump is needed; the 20s gate is simply redundant with, and narrower than, the correct one. 'domcontentloaded' is the conservative alternative if 'commit' proves too eager.
Note the blast radius: DiscoverNavigation.goto is shared by every Discover Scout spec, so validate across the Discover configs, not just this one.
Root cause & evidence
The failure screenshot (job Artifacts → HTML report) shows Kibana's "Loading Elastic" splash with the progress bar barely advanced — DOMContentLoaded had already fired, the app shell was rendering, and no error, banner, or toast is present. Nothing was broken; the bootstrap bundles were just still arriving at the 20s mark.
The call log pins the gate exactly: navigating to ".../s/test-space-2/app/discover", waiting until "load". gotoApp forwards no options, so Playwright's default waitUntil: 'load' applies under Scout's navigationTimeout: 20000. Test duration was 20.17s — the navigation consumed the entire test.
Why it is slow here and not locally: each Playwright test gets a fresh browser context, so every navigation re-downloads Kibana's bootstrap bundles cold from the QA Cloud deployment, with workers: 2 competing for it. 40 of 41 tests in the config passed and the sibling drag_drop case passed minutes earlier, so the deployment was healthy — this is tail latency crossing a gate set 10s below the one that matters.
Additional context
Ruled out: a Discover or product defect (the test body never ran, and the splash shows no app error); state leakage — the test-space-2 teardown logged 1.2s before the failure report is Playwright restarting the worker after the timeout, not a cause; and the earlier ci-environment verdict on this issue, which was a mass SAML 401 incident with a different signature.
Verification:node scripts/scout.js run-tests --location cloud --arch stateful --domain classic --config src/platform/plugins/shared/discover/test/scout/core2/ui/parallel.playwright.config.ts. A green flaky-test-runner result would not settle it — the runner cannot reproduce a Cloud deployment's asset latency.
Note
Marked "AI-fixable": fix PR incoming within ~20-30 min.
DiscoverNavigation.goto now navigates with waitUntil: 'commit' so the existing waitForDiscoverPage() wait is the only readiness gate, instead of Scout's 20s load-event gate timing out while Kibana's bootstrap assets were still downloading.
Generated by Flaky Test Fixer for #284178 · claude · opus · 179.3 AIC · ⌖ 56.4 AIC · ⊞ 15.2K · ◷
Activity
infra-vault-gh-plugin-prod commentedon Aug 10, 2026
Pinging @elastic/kibana-data-discovery (Team:DataDiscovery)
github-actions commentedon Aug 10, 2026
github-actions commentedon Aug 10, 2026
Closing: transient cloud-serverless auth-service disruption failed SAML session setup across ~74 unrelated tests in this job. Nothing test- or product-related to fix; it will reopen automatically if the test fails again.
kibanamachine commentedon Oct 25, 2026
New failure for "cloud-stateful-classic" target: appex-qa-stateful-kibana-scout-tests - main
Test history: passes and failures over time
New error message:
github-actions commentedon Oct 25, 2026
Test needs an update — navigation gates on the browser
loadeventpageObjects.discover.goto()inbeforeEachburned Scout's full 20snavigationTimeoutinsidepage.goto(..., waitUntil: "load")while Kibana's bootstrap was still downloading — the failure screenshot is the plain "Loading Elastic" splash, no error, no toast.Details
Proposed fix
In
page_objects/discover/navigation.ts:23-26, stop gating navigation on the documentloadevent and let the readiness wait that already follows it be the gate:await this.page.gotoApp( 'discover', - options.savedSearchId ? { hash: `/view/${options.savedSearchId}` } : undefined + options.savedSearchId ? { hash: `/view/${options.savedSearchId}` } : undefined, + // Resolve once the document commits; `waitForDiscoverPage()` below is the readiness gate. + { waitUntil: 'commit' } ); await this.waitForDiscoverPage();This follows Wait for complex UI to finish rendering — the
loadevent is a global, resource-completion indicator, whilewaitForDiscoverPage()already waits 30s on the component-specificdscPagesignal. No timeout bump is needed; the 20s gate is simply redundant with, and narrower than, the correct one.'domcontentloaded'is the conservative alternative if'commit'proves too eager.Note the blast radius:
DiscoverNavigation.gotois shared by every Discover Scout spec, so validate across the Discover configs, not just this one.Root cause & evidence
DOMContentLoadedhad already fired, the app shell was rendering, and no error, banner, or toast is present. Nothing was broken; the bootstrap bundles were just still arriving at the 20s mark.navigating to ".../s/test-space-2/app/discover", waiting until "load".gotoAppforwards no options, so Playwright's defaultwaitUntil: 'load'applies under Scout'snavigationTimeout: 20000. Test duration was 20.17s — the navigation consumed the entire test.workers: 2competing for it. 40 of 41 tests in the config passed and the siblingdrag_dropcase passed minutes earlier, so the deployment was healthy — this is tail latency crossing a gate set 10s below the one that matters.Additional context
test-space-2teardown logged 1.2s before the failure report is Playwright restarting the worker after the timeout, not a cause; and the earlierci-environmentverdict on this issue, which was a mass SAML401incident with a different signature.node scripts/scout.js run-tests --location cloud --arch stateful --domain classic --config src/platform/plugins/shared/discover/test/scout/core2/ui/parallel.playwright.config.ts. A green flaky-test-runner result would not settle it — the runner cannot reproduce a Cloud deployment's asset latency.Note
Marked "AI-fixable": fix PR incoming within ~20-30 min.
github-actions commentedon Oct 25, 2026
✅ Flaky Test Fixer completed successfully!
github-actions commentedon Oct 25, 2026
➡️ A fix PR is ready for review: #300351
DiscoverNavigation.gotonow navigates withwaitUntil: 'commit'so the existingwaitForDiscoverPage()wait is the only readiness gate, instead of Scout's 20sload-event gate timing out while Kibana's bootstrap assets were still downloading.