2026-09-28 17:08:46.992 [main] [INFO] BaseTest - Initializing test with Playwright Docker: testContributorCannotEditOnProtectedBranchLegacy
2026-09-28 17:08:47.000 [main] [INFO] BaseTest - [user.mode] -> [multi]
2026-09-28 17:08:47.000 [main] [INFO] BaseTest - [security.administrators] -> [admin]
2026-09-28 17:08:47.000 [main] [INFO] BaseTest - [repository.design.protected-branches] -> [release-**]
2026-09-28 17:08:47.000 [main] [INFO] BaseTest - [JAVA_OPTS] -> [-Xms32m -XX:MaxRAMPercentage=50.0]
2026-09-28 17:08:47.000 [main] [INFO] BaseTest - [security.allow-bypass-protected-branches] -> [true]
2026-09-28 17:08:47.021 [main] [INFO] AppContainerFactory - Starting app container: appcontainer-845701 (startup timeout: PT10M)
2026-09-28 17:09:01.658 [main] [INFO] AppContainerFactory - App Localhost accessible url for appcontainer-845701: http://localhost:32772
2026-09-28 17:09:01.660 [main] [INFO] AppContainerFactory - App Url accessible from the Browser container: http://appcontainer-845701:8080
2026-09-28 17:09:01.661 [main] [INFO] WaitUtil - Sleeping for 3000ms: Wait 3 seconds for DNS propagation in Docker's embedded DNS server
2026-09-28 17:09:04.662 [main] [INFO] WaitUtil - Waiting for condition (timeout: 10000ms, polling: 250ms): Waiting for the app container to be running before Playwright container starts
2026-09-28 17:09:04.665 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the app container to be running before Playwright container starts
2026-09-28 17:09:04.665 [main] [INFO] WaitUtil - Sleeping for 1000ms: Letting Docker DNS propagate the app container hostname across the network
2026-09-28 17:09:05.667 [main] [INFO] DockerDriverPool - Initializing Playwright Docker container with browser: chrome
2026-09-28 17:09:05.670 [main] [INFO] DockerDriverPool - npm cache of the Playwright Server container is shared from /home/runner/work/_temp/playwright-npm-cache
2026-09-28 17:09:05.670 [main] [INFO] DockerDriverPool - Creating Playwright Server Docker container with image: mcr.microsoft.com/playwright:v1.52.0-noble
2026-09-28 17:09:05.670 [main] [INFO] DockerDriverPool - Volume mapping configured: src/test/resources (host) -> /test_resources (container)
2026-09-28 17:09:05.670 [main] [INFO] DockerDriverPool - Starting container and waiting for Playwright Server (startup timeout 300 s)...
2026-09-28 17:09:06.984 [main] [INFO] DockerDriverPool - Playwright Server container started in 1314 ms
2026-09-28 17:09:06.984 [main] [INFO] DockerDriverPool - Container started - ID: ad7acef5575a498e469be37f87b05d6b8a9f13acef9cbab79b2eea506bf5a3b5
2026-09-28 17:09:06.984 [main] [INFO] DockerDriverPool - Mapped Playwright Server port: localhost:32773 -> 3000
2026-09-28 17:09:06.984 [main] [INFO] DockerDriverPool - Container is attached to network for service discovery
2026-09-28 17:09:06.996 [main] [INFO] DockerDriverPool - Container startup logs:
Listening on ws://0.0.0.0:3000/
2026-09-28 17:09:06.997 [main] [INFO] DockerDriverPool - Playwright Server ready: http://localhost:32773
2026-09-28 17:09:08.249 [main] [INFO] DockerDriverPool - Created Playwright instance for server connection
2026-09-28 17:09:08.388 [main] [INFO] DockerDriverPool - Connected to Playwright Server via WebSocket on attempt 1: ws://localhost:32773/
2026-09-28 17:09:08.389 [main] [INFO] DockerDriverPool - Video recording enabled for Docker container with temp directory: /tmp/playwright-videos
2026-09-28 17:09:08.418 [main] [INFO] PlaywrightTracing - Playwright tracing started (DOM snapshots, network, console, sources)
2026-09-28 17:09:08.473 [main] [INFO] DockerDriverPool - Browser container initialized successfully for thread: main
2026-09-28 17:09:08.473 [main] [INFO] DriverPool - Playwright initialized in PLAYWRIGHT_DOCKER mode
2026-09-28 17:09:09.180 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
GET http://localhost:32772/web/public/info/openl.json
Header: Accept : */*
2026-09-28 17:09:09.180 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
200 HTTP/1.1 200 OKHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 17:09:09 GMT
Header: Content-Type : text/html;charset=utf-8
Header: Cache-Control : no-store
Header: X-Content-Type-Options : nosniff
Header: X-XSS-Protection : 0
Header: X-Frame-Options : DENY
Header: Content-Length : 1870
Body:
OpenL Studio
2026-09-28 17:09:09.209 [main] [INFO] BaseTest - Application info unavailable: Failed to parse the JSON document
2026-09-28 17:09:11.858 [main] [INFO] DriverPool - App URL (DOCKER): http://appcontainer-845701:8080
2026-09-28 17:09:11.858 [main] [INFO] LoginService - Logging in with user: contributor_15960_legacy
2026-09-28 17:09:11.859 [main] [INFO] WaitUtil - Sleeping for 500ms: Waiting for possible redirects to finish
2026-09-28 17:09:12.661 [main] [INFO] LoginService - Navigated to login page: http://appcontainer-845701:8080
2026-09-28 17:09:12.680 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.LoginPage was opened.
2026-09-28 17:09:12.689 [main] [INFO] WebElement - Waiting for usernameField to be visible (timeout: 15000ms)
2026-09-28 17:09:12.854 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:12.859 [main] [INFO] WaitUtil - Condition met after 4ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:12.859 [main] [INFO] WebElement - Waiting for usernameField to be visible (timeout: 250ms)
2026-09-28 17:09:12.869 [main] [INFO] WebElement - Filling usernameField with text: 'contributor_15960_legacy'
2026-09-28 17:09:12.907 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:12.910 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:12.911 [main] [INFO] WebElement - Waiting for passwordField to be visible (timeout: 250ms)
2026-09-28 17:09:12.920 [main] [INFO] WebElement - Filling passwordField with text: 'contributor_15960_legacy'
2026-09-28 17:09:12.948 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:12.952 [main] [INFO] WaitUtil - Condition met after 4ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:12.952 [main] [INFO] WebElement - Waiting for loginButton to be visible (timeout: 250ms)
2026-09-28 17:09:12.962 [main] [INFO] WebElement - Clicking loginButton
2026-09-28 17:09:13.690 [main] [INFO] WebElement - Waiting for completeProfileModal to be visible (timeout: 20000ms)
2026-09-28 17:09:33.696 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.EditorPage was opened.
2026-09-28 17:09:33.712 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 500ms): Going to 'Projects'
2026-09-28 17:09:33.712 [main] [INFO] WebElement - Waiting for projectsList to be visible (timeout: 1500ms)
2026-09-28 17:09:35.220 [main] [INFO] WebElement - Waiting for selectedTabLabel to be visible (timeout: 1500ms)
2026-09-28 17:09:35.226 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:35.228 [main] [INFO] WaitUtil - Condition met after 1ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:35.229 [main] [INFO] WebElement - Waiting for selectedTabLabel to be visible (timeout: 3000ms)
2026-09-28 17:09:35.234 [main] [INFO] WebElement - Clicking with increased timeout selectedTabLabel
2026-09-28 17:09:35.294 [main] [INFO] WebElement - Waiting for projectsList to be visible (timeout: 1500ms)
2026-09-28 17:09:35.682 [main] [INFO] WaitUtil - Condition met after 1970ms: Going to 'Projects'
2026-09-28 17:09:35.682 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 17:09:35.693 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:35.700 [main] [INFO] WaitUtil - Condition met after 6ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:35.701 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.RepositoryPage was opened.
2026-09-28 17:09:35.708 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for project row actions
2026-09-28 17:09:35.711 [main] [INFO] WaitUtil - Condition met after 2ms: Waiting for project row actions
2026-09-28 17:09:35.750 [main] [INFO] WebElement - Waiting for projectRowMoreBtn to be visible (timeout: 4000ms)
2026-09-28 17:09:35.760 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:35.763 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:35.763 [main] [INFO] WebElement - Waiting for projectRowMoreBtn to be visible (timeout: 250ms)
2026-09-28 17:09:35.772 [main] [INFO] WebElement - Clicking projectRowMoreBtn
2026-09-28 17:09:35.862 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for the row overflow menu
2026-09-28 17:09:35.867 [main] [INFO] WaitUtil - Condition met after 5ms: Waiting for the row overflow menu
2026-09-28 17:09:35.910 [main] [INFO] WebElement - Waiting for projectRowAction to be visible (timeout: 4000ms)
2026-09-28 17:09:35.937 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:35.942 [main] [INFO] WaitUtil - Condition met after 5ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:35.942 [main] [INFO] WebElement - Waiting for projectRowAction to be visible (timeout: 10000ms)
2026-09-28 17:09:35.967 [main] [INFO] WebElement - Clicking with increased timeout projectRowAction
2026-09-28 17:09:36.186 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for project BypassLegacyUiProject to finish opening
2026-09-28 17:09:36.268 [main] [INFO] WaitUtil - Condition met after 82ms: Waiting for project BypassLegacyUiProject to finish opening
2026-09-28 17:09:36.269 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 17:09:36.288 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:36.291 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:36.448 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 17:09:36.465 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:36.466 [main] [INFO] WaitUtil - Condition met after 1ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:36.467 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for the list of projects to be drawn
2026-09-28 17:09:36.469 [main] [INFO] WaitUtil - Condition met after 1ms: Waiting for the list of projects to be drawn
2026-09-28 17:09:36.469 [main] [INFO] WebElement - Waiting for projectNameInRow to be visible (timeout: 90000ms)
2026-09-28 17:09:37.011 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:37.019 [main] [INFO] WaitUtil - Condition met after 7ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:37.019 [main] [INFO] WebElement - Waiting for projectNameInRow to be visible (timeout: 250ms)
2026-09-28 17:09:37.031 [main] [INFO] WebElement - Clicking projectNameInRow
2026-09-28 17:09:37.108 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.ProjectDetailPage was opened.
2026-09-28 17:09:37.116 [main] [INFO] WebElement - Waiting for detailRoot to be visible (timeout: 20000ms)
2026-09-28 17:09:37.968 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:37.971 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:37.971 [main] [INFO] WebElement - Waiting for filesTab to be visible (timeout: 250ms)
2026-09-28 17:09:37.989 [main] [INFO] WebElement - Clicking filesTab
2026-09-28 17:09:38.061 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 17:09:38.103 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 17:09:38.109 [main] [INFO] WaitUtil - Condition met after 6ms: Waiting for the loading overlay to disappear
2026-09-28 17:09:38.109 [main] [INFO] WebElement - Waiting for filesSearchField to be visible (timeout: 10000ms)
2026-09-28 17:09:38.472 [main] [INFO] WebElement - Waiting for filesAddBtn to be visible (timeout: 20000ms)
2026-09-28 17:09:58.508 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
DELETE http://localhost:32772/rest/users/manager_15960_legacy
Header: Accept : application/json
2026-09-28 17:09:58.508 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
403 HTTP/1.1 403 ForbiddenHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 17:09:58 GMT
Header: Content-Type : application/json
Header: X-Content-Type-Options : nosniff
Header: X-XSS-Protection : 0
Header: Cache-Control : no-cache, no-store, max-age=0, must-revalidate
Header: Pragma : no-cache
Header: Expires : 0
Header: X-Frame-Options : DENY
Header: Transfer-Encoding : chunked
Body:
{"message": "Access Denied"}
2026-09-28 17:09:58.520 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
DELETE http://localhost:32772/rest/users/contributor_15960_legacy
Header: Accept : application/json
2026-09-28 17:09:58.520 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
403 HTTP/1.1 403 ForbiddenHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 17:09:58 GMT
Header: Content-Type : application/json
Header: X-Content-Type-Options : nosniff
Header: X-XSS-Protection : 0
Header: Cache-Control : no-cache, no-store, max-age=0, must-revalidate
Header: Pragma : no-cache
Header: Expires : 0
Header: X-Frame-Options : DENY
Header: Transfer-Encoding : chunked
Body:
{"message": "Access Denied"}
2026-09-28 17:09:58.526 [main] [INFO] DockerDriverPool - Closing Playwright Docker for thread: main
2026-09-28 17:10:00.705 [main] [INFO] WaitUtil - Sleeping for 2000ms: Waiting for Docker daemon to complete resource cleanup