2026-09-28 16:22:55.132 [main] [INFO] BaseTest - Initializing test with Playwright Docker: testContributorCannotEditOnProtectedBranchLegacy
2026-09-28 16:22:55.141 [main] [INFO] BaseTest - [user.mode] -> [multi]
2026-09-28 16:22:55.141 [main] [INFO] BaseTest - [security.administrators] -> [admin]
2026-09-28 16:22:55.141 [main] [INFO] BaseTest - [repository.design.protected-branches] -> [release-**]
2026-09-28 16:22:55.141 [main] [INFO] BaseTest - [JAVA_OPTS] -> [-Xms32m -XX:MaxRAMPercentage=50.0]
2026-09-28 16:22:55.142 [main] [INFO] BaseTest - [security.allow-bypass-protected-branches] -> [true]
2026-09-28 16:22:55.172 [main] [INFO] AppContainerFactory - Starting app container: appcontainer-127871 (startup timeout: PT10M)
2026-09-28 16:23:12.389 [main] [INFO] AppContainerFactory - App Localhost accessible url for appcontainer-127871: http://localhost:32776
2026-09-28 16:23:12.390 [main] [INFO] AppContainerFactory - App Url accessible from the Browser container: http://appcontainer-127871:8080
2026-09-28 16:23:12.391 [main] [INFO] WaitUtil - Sleeping for 3000ms: Wait 3 seconds for DNS propagation in Docker's embedded DNS server
2026-09-28 16:23:15.392 [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 16:23:15.396 [main] [INFO] WaitUtil - Condition met after 4ms: Waiting for the app container to be running before Playwright container starts
2026-09-28 16:23:15.396 [main] [INFO] WaitUtil - Sleeping for 1000ms: Letting Docker DNS propagate the app container hostname across the network
2026-09-28 16:23:16.397 [main] [INFO] DockerDriverPool - Initializing Playwright Docker container with browser: chrome
2026-09-28 16:23:16.401 [main] [INFO] DockerDriverPool - npm cache of the Playwright Server container is shared from /home/runner/work/_temp/playwright-npm-cache
2026-09-28 16:23:16.401 [main] [INFO] DockerDriverPool - Creating Playwright Server Docker container with image: mcr.microsoft.com/playwright:v1.52.0-noble
2026-09-28 16:23:16.401 [main] [INFO] DockerDriverPool - Volume mapping configured: src/test/resources (host) -> /test_resources (container)
2026-09-28 16:23:16.401 [main] [INFO] DockerDriverPool - Starting container and waiting for Playwright Server (startup timeout 300 s)...
2026-09-28 16:23:17.845 [main] [INFO] DockerDriverPool - Playwright Server container started in 1444 ms
2026-09-28 16:23:17.845 [main] [INFO] DockerDriverPool - Container started - ID: fb3b4315d0ff17f2e473c90ae3330256979ad15c72f8da324b71f1182259f3c6
2026-09-28 16:23:17.845 [main] [INFO] DockerDriverPool - Mapped Playwright Server port: localhost:32777 -> 3000
2026-09-28 16:23:17.846 [main] [INFO] DockerDriverPool - Container is attached to network for service discovery
2026-09-28 16:23:17.858 [main] [INFO] DockerDriverPool - Container startup logs:
Listening on ws://0.0.0.0:3000/
2026-09-28 16:23:17.858 [main] [INFO] DockerDriverPool - Playwright Server ready: http://localhost:32777
2026-09-28 16:23:19.346 [main] [INFO] DockerDriverPool - Created Playwright instance for server connection
2026-09-28 16:23:19.524 [main] [INFO] DockerDriverPool - Connected to Playwright Server via WebSocket on attempt 1: ws://localhost:32777/
2026-09-28 16:23:19.525 [main] [INFO] DockerDriverPool - Video recording enabled for Docker container with temp directory: /tmp/playwright-videos
2026-09-28 16:23:19.561 [main] [INFO] PlaywrightTracing - Playwright tracing started (DOM snapshots, network, console, sources)
2026-09-28 16:23:19.624 [main] [INFO] DockerDriverPool - Browser container initialized successfully for thread: main
2026-09-28 16:23:19.625 [main] [INFO] DriverPool - Playwright initialized in PLAYWRIGHT_DOCKER mode
2026-09-28 16:23:20.485 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
GET http://localhost:32776/web/public/info/openl.json
Header: Accept : */*
2026-09-28 16:23:20.486 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
200 HTTP/1.1 200 OKHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 16:23:20 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 16:23:20.524 [main] [INFO] BaseTest - Application info unavailable: Failed to parse the JSON document
2026-09-28 16:23:23.546 [main] [INFO] DriverPool - App URL (DOCKER): http://appcontainer-127871:8080
2026-09-28 16:23:23.546 [main] [INFO] LoginService - Logging in with user: contributor_15960_legacy
2026-09-28 16:23:23.546 [main] [INFO] WaitUtil - Sleeping for 500ms: Waiting for possible redirects to finish
2026-09-28 16:23:24.426 [main] [INFO] LoginService - Navigated to login page: http://appcontainer-127871:8080
2026-09-28 16:23:24.437 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.LoginPage was opened.
2026-09-28 16:23:24.443 [main] [INFO] WebElement - Waiting for usernameField to be visible (timeout: 15000ms)
2026-09-28 16:23:24.643 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:24.655 [main] [INFO] WaitUtil - Condition met after 11ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:24.655 [main] [INFO] WebElement - Waiting for usernameField to be visible (timeout: 250ms)
2026-09-28 16:23:24.669 [main] [INFO] WebElement - Filling usernameField with text: 'contributor_15960_legacy'
2026-09-28 16:23:24.750 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:24.754 [main] [INFO] WaitUtil - Condition met after 4ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:24.754 [main] [INFO] WebElement - Waiting for passwordField to be visible (timeout: 250ms)
2026-09-28 16:23:24.778 [main] [INFO] WebElement - Filling passwordField with text: 'contributor_15960_legacy'
2026-09-28 16:23:24.825 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:24.834 [main] [INFO] WaitUtil - Condition met after 9ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:24.834 [main] [INFO] WebElement - Waiting for loginButton to be visible (timeout: 250ms)
2026-09-28 16:23:24.875 [main] [INFO] WebElement - Clicking loginButton
2026-09-28 16:23:25.773 [main] [INFO] WebElement - Waiting for completeProfileModal to be visible (timeout: 20000ms)
2026-09-28 16:23:45.782 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.EditorPage was opened.
2026-09-28 16:23:45.796 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 500ms): Going to 'Projects'
2026-09-28 16:23:45.796 [main] [INFO] WebElement - Waiting for projectsList to be visible (timeout: 1500ms)
2026-09-28 16:23:47.305 [main] [INFO] WebElement - Waiting for selectedTabLabel to be visible (timeout: 1500ms)
2026-09-28 16:23:47.313 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:47.315 [main] [INFO] WaitUtil - Condition met after 2ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:47.315 [main] [INFO] WebElement - Waiting for selectedTabLabel to be visible (timeout: 3000ms)
2026-09-28 16:23:47.322 [main] [INFO] WebElement - Clicking with increased timeout selectedTabLabel
2026-09-28 16:23:47.385 [main] [INFO] WebElement - Waiting for projectsList to be visible (timeout: 1500ms)
2026-09-28 16:23:47.889 [main] [INFO] WaitUtil - Condition met after 2093ms: Going to 'Projects'
2026-09-28 16:23:47.890 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 16:23:47.945 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:47.954 [main] [INFO] WaitUtil - Condition met after 7ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:47.955 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.RepositoryPage was opened.
2026-09-28 16:23:47.964 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for project row actions
2026-09-28 16:23:47.971 [main] [INFO] WaitUtil - Condition met after 6ms: Waiting for project row actions
2026-09-28 16:23:48.053 [main] [INFO] WebElement - Waiting for projectRowMoreBtn to be visible (timeout: 4000ms)
2026-09-28 16:23:48.063 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:48.066 [main] [INFO] WaitUtil - Condition met after 1ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:48.066 [main] [INFO] WebElement - Waiting for projectRowMoreBtn to be visible (timeout: 250ms)
2026-09-28 16:23:48.079 [main] [INFO] WebElement - Clicking projectRowMoreBtn
2026-09-28 16:23:48.163 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for the row overflow menu
2026-09-28 16:23:48.176 [main] [INFO] WaitUtil - Condition met after 12ms: Waiting for the row overflow menu
2026-09-28 16:23:48.238 [main] [INFO] WebElement - Waiting for projectRowAction to be visible (timeout: 4000ms)
2026-09-28 16:23:48.258 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:48.261 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:48.261 [main] [INFO] WebElement - Waiting for projectRowAction to be visible (timeout: 10000ms)
2026-09-28 16:23:48.301 [main] [INFO] WebElement - Clicking with increased timeout projectRowAction
2026-09-28 16:23:48.709 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for project BypassLegacyUiProject to finish opening
2026-09-28 16:23:48.714 [main] [INFO] WaitUtil - Condition met after 5ms: Waiting for project BypassLegacyUiProject to finish opening
2026-09-28 16:23:48.714 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 16:23:48.748 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:48.752 [main] [INFO] WaitUtil - Condition met after 3ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:48.943 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 16:23:48.982 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:48.988 [main] [INFO] WaitUtil - Condition met after 6ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:48.988 [main] [INFO] WaitUtil - Waiting for condition (timeout: 20000ms, polling: 250ms): Waiting for the list of projects to be drawn
2026-09-28 16:23:48.993 [main] [INFO] WaitUtil - Condition met after 4ms: Waiting for the list of projects to be drawn
2026-09-28 16:23:48.993 [main] [INFO] WebElement - Waiting for projectNameInRow to be visible (timeout: 90000ms)
2026-09-28 16:23:49.767 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:49.773 [main] [INFO] WaitUtil - Condition met after 5ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:49.773 [main] [INFO] WebElement - Waiting for projectNameInRow to be visible (timeout: 250ms)
2026-09-28 16:23:49.795 [main] [INFO] WebElement - Clicking projectNameInRow
2026-09-28 16:23:49.947 [main] [INFO] CorePage - domain.ui.webstudio.pages.mainpages.ProjectDetailPage was opened.
2026-09-28 16:23:49.950 [main] [INFO] WebElement - Waiting for detailRoot to be visible (timeout: 20000ms)
2026-09-28 16:23:50.833 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:50.842 [main] [INFO] WaitUtil - Condition met after 8ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:50.842 [main] [INFO] WebElement - Waiting for filesTab to be visible (timeout: 250ms)
2026-09-28 16:23:50.868 [main] [INFO] WebElement - Clicking filesTab
2026-09-28 16:23:50.990 [main] [INFO] WebElement - Waiting for contentLoadingSpinner to be hidden
2026-09-28 16:23:51.037 [main] [INFO] WaitUtil - Waiting for condition (timeout: 60000ms, polling: 150ms): Waiting for the loading overlay to disappear
2026-09-28 16:23:51.047 [main] [INFO] WaitUtil - Condition met after 10ms: Waiting for the loading overlay to disappear
2026-09-28 16:23:51.047 [main] [INFO] WebElement - Waiting for filesSearchField to be visible (timeout: 10000ms)
2026-09-28 16:23:51.500 [main] [INFO] WebElement - Waiting for filesAddBtn to be visible (timeout: 20000ms)
2026-09-28 16:24:11.550 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
DELETE http://localhost:32776/rest/users/manager_15960_legacy
Header: Accept : application/json
2026-09-28 16:24:11.552 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
403 HTTP/1.1 403 ForbiddenHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 16:24:11 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 16:24:11.570 [main] [WARN] RestAssuredFilter -
-=HTTP REQUEST=-
DELETE http://localhost:32776/rest/users/contributor_15960_legacy
Header: Accept : application/json
2026-09-28 16:24:11.570 [main] [WARN] RestAssuredFilter -
-=HTTP RESPONSE=-
403 HTTP/1.1 403 ForbiddenHeader: Server : Jetty(12.1.13)
Header: Date : Mon, 28 Sep 2026 16:24:11 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 16:24:11.577 [main] [INFO] DockerDriverPool - Closing Playwright Docker for thread: main
2026-09-28 16:24:14.124 [main] [INFO] WaitUtil - Sleeping for 2000ms: Waiting for Docker daemon to complete resource cleanup