test: write tests for controllers #24

Merged
devitq merged 11 commits from feat/spring-tests into develop 2026-05-08 20:32:36 +00:00
devitq commented 2026-04-21 18:23:09 +00:00 (Migrated from github.com)

Reopened as previous pull request was targeted on incorrect branch

Reopened as previous pull request was targeted on incorrect branch
coderabbitai[bot] commented 2026-04-21 18:24:36 +00:00 (Migrated from github.com)

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Free

Run ID: 8ef78efc-864e-4dae-93c8-1b41a52a6284

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Tip

💬 Introducing Slack Agent: The best way for teams to turn conversations into code.

Slack Agent is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context.

  • Generate code and open pull requests
  • Plan features and break down work
  • Investigate incidents and troubleshoot customer tickets together
  • Automate recurring tasks and respond to alerts with triggers
  • Summarize progress and report instantly

Built for teams:

  • Shared memory across your entire org—no repeating context
  • Per-thread sandboxes to safely plan and execute work
  • Governance built-in—scoped access, auditability, and budget controls

One agent for your entire SDLC. Right inside Slack.

👉 Get started


Note

🎁 Summarized by CodeRabbit Free

Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

Comment @coderabbitai help to get the list of available commands and usage tips.

<!-- This is an auto-generated comment: summarize by coderabbit.ai --> <!-- This is an auto-generated comment: skip review by coderabbit.ai --> > [!IMPORTANT] > ## Review skipped > > Auto reviews are disabled on base/target branches other than the default branch. > > > > Please check the settings in the CodeRabbit UI or the `.coderabbit.yaml` file in this repository. To trigger a single review, invoke the `@coderabbitai review` command. > > <details> > <summary>⚙️ Run configuration</summary> > > **Configuration used**: Organization UI > > **Review profile**: ASSERTIVE > > **Plan**: Free > > **Run ID**: `8ef78efc-864e-4dae-93c8-1b41a52a6284` > > </details> > > You can disable this status message by setting the `reviews.review_status` to `false` in the CodeRabbit configuration file. > > Use the checkbox below for a quick retry: > - [ ] <!-- {"checkboxId": "e9bb8d72-00e8-4f67-9cb2-caf3b22574fe"} --> 🔍 Trigger review <!-- end of auto-generated comment: skip review by coderabbit.ai --> <!-- announcements_start --> > [!TIP] > <details> > <summary>💬 Introducing Slack Agent: The best way for teams to turn conversations into code.</summary> > > [Slack Agent](https://www.coderabbit.ai/agent) is built on CodeRabbit's deep understanding of your code, so your team can collaborate across the entire SDLC without losing context. > > - Generate code and open pull requests > - Plan features and break down work > - Investigate incidents and troubleshoot customer tickets together > - Automate recurring tasks and respond to alerts with triggers > - Summarize progress and report instantly > > Built for teams: > > - **Shared memory** across your entire org—no repeating context > - **Per-thread sandboxes** to safely plan and execute work > - **Governance built-in**—scoped access, auditability, and budget controls > > One agent for your entire SDLC. Right inside Slack. > > 👉 [Get started](https://agent.coderabbit.ai/) > > </details> <!-- announcements_end --> <!-- tips_start --> --- > [!NOTE] > <details> > <summary>🎁 Summarized by CodeRabbit Free</summary> > > Your organization is on the Free plan. CodeRabbit will generate a high-level summary and a walkthrough for each pull request. For a comprehensive line-by-line review, please upgrade your subscription to CodeRabbit Pro by visiting <https://app.coderabbit.ai/login>. > > </details> <sub>Comment `@coderabbitai help` to get the list of available commands and usage tips.</sub> <!-- tips_end -->
copilot-pull-request-reviewer[bot] (Migrated from github.com) reviewed 2026-04-21 18:32:39 +00:00
copilot-pull-request-reviewer[bot] (Migrated from github.com) left a comment

Pull request overview

Adds Spring Boot integration tests for key REST controllers and extends the film API to support title-based lookup and listing films not currently in a user’s library.

Changes:

  • Added @SpringBootTest + MockMvc integration tests for Users, Films, and Film Library endpoints.
  • Extended Film persistence/service layer with findByTitle and exposed /api/films/search.
  • Added /api/users/{userId}/library/available-films to return films excluding the one currently in the user’s library.

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 19 comments.

Show a summary per file
File Description
src/test/kotlin/com/project/movienight/controllers/UserControllerTest.kt Adds controller integration tests for create/edit/delete user flows.
src/test/kotlin/com/project/movienight/controllers/FilmControllerTest.kt Adds controller integration tests for create/edit/search/delete film flows.
src/test/kotlin/com/project/movienight/controllers/FilmLibraryControllerTest.kt Adds controller integration tests for adding/removing films in a user library.
src/main/kotlin/com/project/movienight/application/services/FilmService.kt Exposes read methods (findByTitle, findAll) used by new controller endpoints.
src/main/kotlin/com/project/movienight/application/ports/output/FilmRepositoryPort.kt Adds findByTitle to the repository port.
src/main/kotlin/com/project/movienight/adapters/web/FilmController.kt Adds /search endpoint backed by FilmService.findByTitle.
src/main/kotlin/com/project/movienight/adapters/web/FilmLibraryController.kt Adds /available-films endpoint backed by FilmService.findAll.
src/main/kotlin/com/project/movienight/adapters/persistence/jdbc/FilmRepository.kt Implements findByTitle using JDBC query.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

## Pull request overview Adds Spring Boot integration tests for key REST controllers and extends the film API to support title-based lookup and listing films not currently in a user’s library. **Changes:** - Added `@SpringBootTest` + `MockMvc` integration tests for Users, Films, and Film Library endpoints. - Extended Film persistence/service layer with `findByTitle` and exposed `/api/films/search`. - Added `/api/users/{userId}/library/available-films` to return films excluding the one currently in the user’s library. ### Reviewed changes Copilot reviewed 8 out of 8 changed files in this pull request and generated 19 comments. <details> <summary>Show a summary per file</summary> | File | Description | | ---- | ----------- | | src/test/kotlin/com/project/movienight/controllers/UserControllerTest.kt | Adds controller integration tests for create/edit/delete user flows. | | src/test/kotlin/com/project/movienight/controllers/FilmControllerTest.kt | Adds controller integration tests for create/edit/search/delete film flows. | | src/test/kotlin/com/project/movienight/controllers/FilmLibraryControllerTest.kt | Adds controller integration tests for adding/removing films in a user library. | | src/main/kotlin/com/project/movienight/application/services/FilmService.kt | Exposes read methods (`findByTitle`, `findAll`) used by new controller endpoints. | | src/main/kotlin/com/project/movienight/application/ports/output/FilmRepositoryPort.kt | Adds `findByTitle` to the repository port. | | src/main/kotlin/com/project/movienight/adapters/web/FilmController.kt | Adds `/search` endpoint backed by `FilmService.findByTitle`. | | src/main/kotlin/com/project/movienight/adapters/web/FilmLibraryController.kt | Adds `/available-films` endpoint backed by `FilmService.findAll`. | | src/main/kotlin/com/project/movienight/adapters/persistence/jdbc/FilmRepository.kt | Implements `findByTitle` using JDBC query. | </details> --- 💡 <a href="/devitq/movienight-backend/new/main?filename=.github/instructions/*.instructions.md" class="Link--inTextBlock" target="_blank" rel="noopener noreferrer">Add Copilot custom instructions</a> for smarter, more guided reviews. <a href="https://docs.github.com/en/copilot/customizing-copilot/adding-repository-custom-instructions-for-github-copilot" class="Link--inTextBlock" target="_blank" rel="noopener noreferrer">Learn how to get started</a>.
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:36 +00:00

findByTitle returns the first matching row without a deterministic order, and titles aren't constrained to be unique in the schema; this can lead to unpredictable results if multiple films share a title. Consider enforcing uniqueness at the DB level or making the query deterministic (e.g., ORDER BY + LIMIT 1) and ensure formatting matches ktlint (trailing comma on the last argument in this multiline call).

        val films =
            jdbc.query(
                "SELECT id, title, description FROM films WHERE title = ? ORDER BY id LIMIT 1",
                filmRowMapper,
                title,
            )
`findByTitle` returns the first matching row without a deterministic order, and titles aren't constrained to be unique in the schema; this can lead to unpredictable results if multiple films share a title. Consider enforcing uniqueness at the DB level or making the query deterministic (e.g., `ORDER BY` + `LIMIT 1`) and ensure formatting matches ktlint (trailing comma on the last argument in this multiline call). ```suggestion val films = jdbc.query( "SELECT id, title, description FROM films WHERE title = ? ORDER BY id LIMIT 1", filmRowMapper, title, ) ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:36 +00:00

There are multiple consecutive blank lines after the package declaration here; ktlint will flag consecutive blank lines. Collapse this to a single blank line before the imports.


There are multiple consecutive blank lines after the `package` declaration here; ktlint will flag consecutive blank lines. Collapse this to a single blank line before the imports. ```suggestion ```
@@ -15,3 +15,4 @@
import org.springframework.http.ResponseEntity
import org.springframework.web.bind.annotation.DeleteMapping
import org.springframework.web.bind.annotation.GetMapping
import org.springframework.web.bind.annotation.PatchMapping
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:36 +00:00

org.springframework.web.bind.annotation.* is a wildcard import and is redundant with the explicit annotation imports above; ktlint (enabled in this repo) will fail on wildcard/redundant imports. Replace the wildcard import with only the specific annotations you use (and remove any duplicates).

`org.springframework.web.bind.annotation.*` is a wildcard import and is redundant with the explicit annotation imports above; ktlint (enabled in this repo) will fail on wildcard/redundant imports. Replace the wildcard import with only the specific annotations you use (and remove any duplicates).
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:33 +00:00

searchByTitle returns null when a film isn't found, which produces a 200 with an empty body. Other not-found scenarios in this API return 404 via EntityNotFoundException/ApiExceptionHandler; consider returning a 404 (or 204) explicitly (e.g., ResponseEntity.notFound()), to keep error semantics consistent for clients.

`searchByTitle` returns `null` when a film isn't found, which produces a 200 with an empty body. Other not-found scenarios in this API return 404 via `EntityNotFoundException`/`ApiExceptionHandler`; consider returning a 404 (or 204) explicitly (e.g., `ResponseEntity.notFound()`), to keep error semantics consistent for clients.
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:37 +00:00

org.springframework.web.bind.annotation.* is a wildcard import and is redundant with the explicit annotation imports above; ktlint (enabled in this repo) will fail on wildcard/redundant imports. Replace the wildcard import with only the specific annotations you use (and remove any duplicates).


`org.springframework.web.bind.annotation.*` is a wildcard import and is redundant with the explicit annotation imports above; ktlint (enabled in this repo) will fail on wildcard/redundant imports. Replace the wildcard import with only the specific annotations you use (and remove any duplicates). ```suggestion ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:35 +00:00

getAvailableFilms assumes the user already has a library row; if not, getFilmLibraryUseCase.getLibrary(...) will throw EntityNotFoundException and this endpoint will return 404, even though listing available films could reasonably work without an existing library. If the intended behavior is to return all films when no library exists (or after a library has been deleted), handle the not-found case explicitly (e.g., fall back to an empty library / no excluded film).

`getAvailableFilms` assumes the user already has a library row; if not, `getFilmLibraryUseCase.getLibrary(...)` will throw `EntityNotFoundException` and this endpoint will return 404, even though listing available films could reasonably work without an existing library. If the intended behavior is to return all films when no library exists (or after a library has been deleted), handle the not-found case explicitly (e.g., fall back to an empty library / no excluded film).
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:35 +00:00

This new endpoint isn't covered by the existing FilmLibraryControllerTest suite. Add controller-level tests for /api/users/{userId}/library/available-films (e.g., user with a film in library vs user with none) to prevent regressions.

This new endpoint isn't covered by the existing `FilmLibraryControllerTest` suite. Add controller-level tests for `/api/users/{userId}/library/available-films` (e.g., user with a film in library vs user with none) to prevent regressions.
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:39 +00:00

The getLibrary(...) call here is formatted inconsistently with the rest of the codebase (missing trailing comma in a multiline call). With ktlint experimental rules enabled, this will likely fail formatting checks; align it with existing call sites by adding the trailing comma and standard indentation.

            GetFilmLibraryQuery(userId = userId),
The `getLibrary(...)` call here is formatted inconsistently with the rest of the codebase (missing trailing comma in a multiline call). With ktlint experimental rules enabled, this will likely fail formatting checks; align it with existing call sites by adding the trailing comma and standard indentation. ```suggestion GetFilmLibraryQuery(userId = userId), ```
@@ -0,0 +1,140 @@
package com.project.movienight.controllers
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:34 +00:00

This multiline EditFilmRequest(...) call is missing a trailing comma after the last argument; with ktlint experimental rules enabled in this repo, that often fails formatting checks. Add the trailing comma to match the style used throughout the codebase.

            description = "New Description",
This multiline `EditFilmRequest(...)` call is missing a trailing comma after the last argument; with ktlint experimental rules enabled in this repo, that often fails formatting checks. Add the trailing comma to match the style used throughout the codebase. ```suggestion description = "New Description", ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:35 +00:00

These wildcard imports (MockMvcRequestBuilders.*, MockMvcResultMatchers.*) will fail ktlint's no-wildcard-imports rule (ktlintCheck is part of check). Replace them with explicit imports for only the methods/matchers used in this test file.

import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.patch
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post
import org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath
import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status
These wildcard imports (`MockMvcRequestBuilders.*`, `MockMvcResultMatchers.*`) will fail ktlint's `no-wildcard-imports` rule (ktlintCheck is part of `check`). Replace them with explicit imports for only the methods/matchers used in this test file. ```suggestion import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.patch import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post import org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:38 +00:00

There are consecutive blank lines between tests (e.g., around here), which will fail ktlint's standard formatting rules. Remove the extra blank line(s) so there's at most one blank line between members.


There are consecutive blank lines between tests (e.g., around here), which will fail ktlint's standard formatting rules. Remove the extra blank line(s) so there's at most one blank line between members. ```suggestion ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:38 +00:00

This multiline CreateFilmRequest(...) call is missing a trailing comma after the last argument; with ktlint experimental rules enabled in this repo, that often fails formatting checks. Add the trailing comma to match the style used throughout the main source files.

            description = "A computer hacker learns about the true nature of reality",
This multiline `CreateFilmRequest(...)` call is missing a trailing comma after the last argument; with ktlint experimental rules enabled in this repo, that often fails formatting checks. Add the trailing comma to match the style used throughout the main source files. ```suggestion description = "A computer hacker learns about the true nature of reality", ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:38 +00:00

This mockMvc.perform(...) is formatted as a multiline call-site but is missing the trailing comma after the argument. The main codebase uses trailing commas for multiline call-sites, and with ktlint experimental rules enabled this can fail formatting checks; update this (and similar call-sites in the file) to include the trailing comma.

This `mockMvc.perform(...)` is formatted as a multiline call-site but is missing the trailing comma after the argument. The main codebase uses trailing commas for multiline call-sites, and with ktlint experimental rules enabled this can fail formatting checks; update this (and similar call-sites in the file) to include the trailing comma.
@@ -0,0 +1,204 @@
package com.project.movienight.controllers
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:34 +00:00

These wildcard imports (MockMvcRequestBuilders.*, MockMvcResultMatchers.*) will fail ktlint's no-wildcard-imports rule (ktlintCheck is part of check). Replace them with explicit imports for only the methods/matchers used in this test file.

import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post
import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status
These wildcard imports (`MockMvcRequestBuilders.*`, `MockMvcResultMatchers.*`) will fail ktlint's `no-wildcard-imports` rule (ktlintCheck is part of `check`). Replace them with explicit imports for only the methods/matchers used in this test file. ```suggestion import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:37 +00:00

There are consecutive blank lines in this file (e.g., here before the first test), which will fail ktlint formatting checks. Remove extra blank lines so there's at most one blank line between members.


There are consecutive blank lines in this file (e.g., here before the first test), which will fail ktlint formatting checks. Remove extra blank lines so there's at most one blank line between members. ```suggestion ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:37 +00:00

This mockMvc.perform(...) call is formatted as a multiline call-site but is missing the trailing comma after the single argument. The main source files consistently use trailing commas in multiline call-sites, and with ktlint experimental rules enabled this can fail formatting checks; update this (and similar call-sites in the file) to include the trailing comma.

This `mockMvc.perform(...)` call is formatted as a multiline call-site but is missing the trailing comma after the single argument. The main source files consistently use trailing commas in multiline call-sites, and with ktlint experimental rules enabled this can fail formatting checks; update this (and similar call-sites in the file) to include the trailing comma.
@@ -0,0 +1,108 @@
package com.project.movienight.controllers
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:35 +00:00

This multiline CreateUserRequest(...) call is missing a trailing comma after the last argument. The main codebase consistently uses trailing commas in multiline argument lists, and with ktlint experimental rules enabled this can fail formatting checks; update this (and other multiline calls in the file) to include trailing commas.

This multiline `CreateUserRequest(...)` call is missing a trailing comma after the last argument. The main codebase consistently uses trailing commas in multiline argument lists, and with ktlint experimental rules enabled this can fail formatting checks; update this (and other multiline calls in the file) to include trailing commas.
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:37 +00:00

These wildcard imports (MockMvcRequestBuilders.*, MockMvcResultMatchers.*) will fail ktlint's no-wildcard-imports rule (ktlintCheck is part of check). Replace them with explicit imports for only the methods/matchers used in this test file.

import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.patch
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post
import org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath
import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status
These wildcard imports (`MockMvcRequestBuilders.*`, `MockMvcResultMatchers.*`) will fail ktlint's `no-wildcard-imports` rule (ktlintCheck is part of `check`). Replace them with explicit imports for only the methods/matchers used in this test file. ```suggestion import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.delete import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.patch import org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post import org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath import org.springframework.test.web.servlet.result.MockMvcResultMatchers.status ```
copilot-pull-request-reviewer[bot] (Migrated from github.com) commented 2026-04-21 18:32:38 +00:00

This file has consecutive blank lines (e.g., between test cases), which will fail ktlint's standard formatting rules. Remove extra blank lines so there's at most one blank line between members.


This file has consecutive blank lines (e.g., between test cases), which will fail ktlint's standard formatting rules. Remove extra blank lines so there's at most one blank line between members. ```suggestion ```
devitq commented 2026-04-23 19:52:09 +00:00 (Migrated from github.com)

@glashark fix copilot review issues

@glashark fix copilot review issues
devitq commented 2026-05-03 11:55:25 +00:00 (Migrated from github.com)

@copilot review again

@copilot review again
Copilot commented 2026-05-03 12:03:33 +00:00 (Migrated from github.com)

@glashark fix copilot review issues

Fixed all copilot review issues in commits b7a246e and 44483d7:

  • Wildcard imports → replaced with explicit imports in all 3 test files
  • Trailing commas → added throughout all multiline calls in test files
  • searchByTitle 404 → endpoint now returns 404 (not 200 with empty body) when film is not found; updated tests accordingly
  • Available-films tests → added two tests in FilmLibraryControllerTest: one verifying a film in the user's library is excluded, and one verifying all films appear when the user has no library
  • getAvailableFilms EntityNotFoundException → already handled (falls back to returning all films)
  • ktlint formatting → ran ktlintFormat to fix chain-method-continuation and multiline-expression-wrapping issues; ktlintCheck passes cleanly
> @glashark fix copilot review issues Fixed all copilot review issues in commits b7a246e and 44483d7: - **Wildcard imports** → replaced with explicit imports in all 3 test files - **Trailing commas** → added throughout all multiline calls in test files - **`searchByTitle` 404** → endpoint now returns 404 (not 200 with empty body) when film is not found; updated tests accordingly - **Available-films tests** → added two tests in `FilmLibraryControllerTest`: one verifying a film in the user's library is excluded, and one verifying all films appear when the user has no library - **`getAvailableFilms` EntityNotFoundException** → already handled (falls back to returning all films) - **ktlint formatting** → ran `ktlintFormat` to fix `chain-method-continuation` and `multiline-expression-wrapping` issues; `ktlintCheck` passes cleanly
devitq commented 2026-05-03 12:09:46 +00:00 (Migrated from github.com)

@coderabbitai summarize

@coderabbitai summarize
coderabbitai[bot] commented 2026-05-03 12:09:50 +00:00 (Migrated from github.com)

The author of this PR is on the CodeRabbit Free Plan. In order to use the Chat feature, please upgrade the PR author to CodeRabbit Pro by visiting https://app.coderabbit.ai/login.

<!-- This is an auto-generated reply by CodeRabbit --> The author of this PR is on the CodeRabbit Free Plan. In order to use the Chat feature, please upgrade the PR author to CodeRabbit Pro by visiting <https://app.coderabbit.ai/login>.
devitq commented 2026-05-03 16:26:45 +00:00 (Migrated from github.com)

@glashark fix CI failing and resolve conflicts in order to merge

@glashark fix CI failing and resolve conflicts in order to merge
copilot-pull-request-reviewer[bot] (Migrated from github.com) reviewed 2026-05-03 17:08:34 +00:00
copilot-pull-request-reviewer[bot] (Migrated from github.com) left a comment

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.
devitq commented 2026-05-08 17:40:44 +00:00 (Migrated from github.com)

@copilot+gpt-5.2-codex review

@copilot+gpt-5.2-codex review
Copilot commented 2026-05-08 17:53:15 +00:00 (Migrated from github.com)

@copilot+gpt-5.2-codex review

Review completed and issues addressed; latest fixes are in 267ecfe (removeFilm stays expression-body with 204), with prior CI/merge fixes in 2202532 and 47ff6d8.

> @copilot+gpt-5.2-codex review Review completed and issues addressed; latest fixes are in 267ecfe (removeFilm stays expression-body with 204), with prior CI/merge fixes in 2202532 and 47ff6d8.
copilot-pull-request-reviewer[bot] (Migrated from github.com) reviewed 2026-05-08 19:36:51 +00:00
copilot-pull-request-reviewer[bot] (Migrated from github.com) left a comment

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.

Copilot was unable to review this pull request because the user who requested the review is ineligible. To be eligible to request a review, you need a paid Copilot license, or your organization must enable Copilot code review.
Sign in to join this conversation.