[One Workflow] Unskip Workflow editor: validation performance tests#268149
Conversation
Flaky Test Runner Stats🟠 Some tests failed. - kibana-flaky-test-suite-runner#12159[❌] src/platform/plugins/shared/workflows_management/test/scout_workflows_ui/ui/parallel.playwright.config.ts (--arch stateful --domain classic): 47/50 tests passed. |
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Re-enables the Workflow editor validation performance tests and optimizes YAML marker formatting by avoiding repeated YAML parses during marker update bursts.
Changes:
- Unskips the workflow editor validation performance test suite (fix for #261213).
- Caches parsed YAML documents per Monaco model version to reduce repeated
parseDocument()calls during marker updates.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
src/platform/plugins/shared/workflows_management/test/scout_workflows_ui/ui/parallel_tests/workflow_editor_perf.spec.ts |
Unskips the previously skipped validation performance test suite. |
src/platform/plugins/shared/workflows_management/public/features/validate_workflow_yaml/lib/use_monaco_markers_changed_interceptor.ts |
Adds a version-based cache to reuse a single YAML parse across multiple marker callbacks. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| // yamlDocumentRef lags the model by the 500ms Redux compute debounce, so formatMonacoYamlMarker | ||
| // needs a parse matching the current model. Cache by versionId so multiple setModelMarkers | ||
| // bursts within the same version share one parse instead of reparsing per marker callback. | ||
| const freshYamlDocCacheRef = useRef<{ versionId: number; doc: YAML.Document } | null>(null); |
| const versionId = editorModel.getVersionId(); | ||
| const cached = freshYamlDocCacheRef.current; | ||
| const freshYamlDocument = | ||
| cached && cached.versionId === versionId | ||
| ? cached.doc | ||
| : parseDocument(editorModel.getValue()); | ||
| if (cached?.versionId !== versionId) { | ||
| freshYamlDocCacheRef.current = { versionId, doc: freshYamlDocument }; | ||
| } |
h88
left a comment
There was a problem hiding this comment.
1 non-blocking comment + worth reviewing the flaky pipeline to see if it's related to the enabled spec
💛 Build succeeded, but was flaky
Failed CI Steps
Test Failures
Metrics [docs]Async chunks
History
|
Flaky Test Runner Stats🎉 All tests passed! - kibana-flaky-test-suite-runner#12201 |
|
Starting backport for target branches: 9.4 https://github.com/elastic/kibana/actions/runs/25563121152 |
💔 All backports failed
Manual backportTo create the backport manually run: Questions ?Please refer to the Backport tool documentation |
…lastic#268149) ## Summary Fixes elastic#261213 ### Checklist - [x] [Unit or functional tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html) were updated or added to match the most common scenarios
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
1 similar comment
|
Friendly reminder: Looks like this PR hasn’t been backported yet. |
Summary
Fixes #261213
Checklist