Gitlab Duo Agent Platform error message through IDE "your request was valid but workflow failed to complete it please try again"

Checklist

Summary

I'm testing a use case for building a java application through AI for the customer Renault. I have company guidelines for building the app that I put in the chat-rules.md file and I used the prompt fixed by the customer to build the app with their requirements.
The prompt is working and had been already tested a couple of weeks ago but since yesterday I have an issue when I try to execute a prompt through the IDE.

Steps to reproduce

1/ create a project from scratch here it is called "Renault_IA" 2/ create .gitlab/duo repo 3/ switch to VS Codium to add a chat-rules.md file with specific instructions (see below for details) 4/ open a DAP chat (no matter LLM) 5/ write a prompt and execute it (see below for details)

Instructions for Chat-rules.md


description: 'Guidelines for building Java base applications' applyTo: '**/*.java'

Java Development

General Instructions

  • First, prompt the user if they want to integrate static analysis tools (SonarQube, PMD, Checkstyle) into their project setup. If yes, provide guidance on tool selection and configuration.
  • If the user declines static analysis tools or wants to proceed without them, continue with implementing the Best practices, bug patterns and code smell prevention guidelines outlined below.
  • Address code smells proactively during development rather than accumulating technical debt.
  • Focus on readability, maintainability, and performance when refactoring identified issues.
  • Use IDE / Code editor reported warnings and suggestions to catch with Context7.

Best practices

  • Records: For classes primarily intended to store data (e.g., DTOs, immutable data structures), Java Records should be used instead of traditional classes.
  • Pattern Matching: Utilize pattern matching for instanceof and switch expression to simplify conditional logic and type casting.
  • Type Inference: Always Use var for local variable declarations to improve readability.
  • Immutability: Favor immutable objects. Make classes and fields final where possible. Use collections from List.of()/Map.of() for fixed data. Use Stream.toList() to create immutable lists.
  • Streams and Lambdas: Use the Streams API and lambda expressions for collection processing. Employ method references (e.g., stream.map(Foo::toBar)).
  • Null Handling: Avoid returning or accepting null. Use Optional<T> for possibly-absent values and Objects utility methods like equals() and requireNonNull().
  • Exposing JPA Entity: Avoid exposing JPA entities directly in APIs. Use DTOs or view models to decouple the database layer from the API layer.
  • Entity to DTO mapping: Use mapstruct library to simplify the mapping process between entities and DTOs. Add the dependency in your pom.xml or build.gradle file if needed. use context7 to generate the mapping code.

Naming Conventions

  • Follow Google's Java style guide:
  • UpperCamelCase for class and interface names.
  • lowerCamelCase for method and variable names.
  • UPPER_SNAKE_CASE for constants.
  • lowercase for package names.
  • Use nouns for classes (UserService) and verbs for methods (getUserById).
  • Avoid abbreviations and Hungarian notation.

Bug Patterns

| Rule ID | Description | Example / Notes | | ------- | ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | | S2095 | Resources should be closed | Use try-with-resources when working with streams, files, sockets, etc. | | S1698 | Objects should be compared with .equals() instead of == | Especially important for Strings and boxed primitives. | | S1905 | Redundant casts should be removed | Clean up unnecessary or unsafe casts. | | S3518 | Conditions should not always evaluate to true or false | Watch for infinite loops or if- conditions that never change. | | S108 | Unreachable code should be removed | Code after return, throw, etc., must be cleaned up. |

Code Smells

| Rule ID | Description | Example / Notes | | ------- | ------------------------------------------------------ | ----------------------------------------------------------------------------- | | S107 | Methods should not have too many parameters | Refactor into helper classes or use builder pattern. | | S121 | Duplicated blocks of code should be removed | Consolidate logic into shared methods. | | S138 | Methods should not be too long | Break complex logic into smaller, testable units. | | S3776 | Cognitive complexity should be reduced | Simplify nested logic, extract methods, avoid deep if trees. | | S1192 | String literals should not be duplicated | Replace with constants or enums. | | S1854 | Unused assignments should be removed | Avoid dead variables—remove or refactor. | | S109 | Magic numbers should be replaced with constants | Improves readability and maintainability. | | S1188 | Catch blocks should not be empty | Always log or handle exceptions meaningfully. |

Build and Verification

  • After adding or modifying code, verify the project continues to build successfully.
  • If the project uses Maven, run mvn clean install.
  • If the project uses Gradle, run ./gradlew build (or gradlew.bat build on Windows).
  • Ensure all tests pass as part of the build.

Prompt used in DAP

Default values if not provided as argument

springBootVersion=3.5.0 artifactName=demo packageName=com.renault.demo

Create Spring Boot Java project

  • Run following command in terminal to download a Spring Boot project template
curl https://start.spring.io/starter.zip \
-d artifactId=${input:artifactName} \
-d bootVersion=${input:springBootVersion} \
-d dependencies=lombok,configuration-processor,web,data-jpa,postgresql,data-redis,validation,cache,
testcontainers,docker-compose \
-d javaVersion=21 \
-d packageName=${input:packageName} \
-d packaging=jar \
-d type=gradle-project \
-o starter.zip

Unzip the downloaded file

  • Run following command in terminal to unzip the downloaded file
unzip starter.zip -d .

Remove the downloaded zip file

  • Run following command in terminal to delete the downloaded zip file
rm -f starter.zip

Add additional dependencies

  • Insert 'org.liquibase:liquibase-core' dependency into build.gradle file

Add SpringDoc configuration

  • Convert the application.properties file to application.yaml file
  • Insert the JPA dialect configuration into application.yaml file
spring:
jpa:
database-platform: org.hibernate.dialect.PostgreSQLDialect

Liquibase changelog

  • Create a db/changelog directory in src/main/resources
  • Create a db.changelog-master.yaml file in the db/changelog directory. The changelog file should contain the following content:
databaseChangeLog:

Test configuration

  • Create a application-test.yaml with the following content:
spring:
liquibase:
enabled: false
jpa:
hibernate:
ddl-auto: create-drop

Run Gradle test command

  • Run maven clean test command to check if the project is working
./gradlew clean test

Run Gradle run command

  • (Optional) With the spring-boot-docker-compose dependency, Docker Compose services will be automatically started when running ./gradlew bootRun and stopped when the application shuts down.

Let's do this step by step

What is the current bug behavior?

I have an error message like this "your request was valid but workflow failed to complete it please try again" or a message saying that DAP is generating an answer or working on it

What is the expected correct behavior?

An interaction with DAP to confirm packages to use and build the Java app

Relevant logs and/or screenshots

2025-12-10T17:07:36:839 [info]: Configuring Language Server - baseUrl: https://gitlab.com 2025-12-10T17:24:14:433 [info]: Configuring Language Server - baseUrl: https://gitlab.com 2025-12-10T17:24:16:657 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:24:18:349 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 956 ms 2025-12-10T17:24:18:597 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 244 ms 2025-12-10T17:24:26:662 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:24:36:666 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:24:46:667 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:24:47:725 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 335 ms 2025-12-10T17:24:47:987 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 258 ms 2025-12-10T17:24:56:672 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:06:673 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:16:677 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:17:718 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 324 ms 2025-12-10T17:25:18:149 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 428 ms 2025-12-10T17:25:26:679 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:36:680 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:46:684 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:25:47:705 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 305 ms 2025-12-10T17:25:47:958 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 249 ms 2025-12-10T17:25:56:686 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:06:691 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:16:696 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:17:859 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 465 ms 2025-12-10T17:26:18:367 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 505 ms 2025-12-10T17:26:26:700 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:36:705 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:46:709 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:26:47:740 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 339 ms 2025-12-10T17:26:47:991 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 247 ms 2025-12-10T17:26:56:714 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:06:714 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:16:719 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:17:732 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 334 ms 2025-12-10T17:27:18:186 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 453 ms 2025-12-10T17:27:26:723 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:36:727 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:46:733 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:27:47:702 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 303 ms 2025-12-10T17:27:47:990 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 286 ms 2025-12-10T17:27:56:737 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:06:743 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:16:744 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:17:728 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 317 ms 2025-12-10T17:28:17:986 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 255 ms 2025-12-10T17:28:26:747 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:36:750 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:46:754 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:28:47:717 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 308 ms 2025-12-10T17:28:47:964 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 246 ms 2025-12-10T17:28:56:759 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:29:06:764 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:29:16:767 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:29:17:761 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/merge_requests?state=opened&source_branch=main returned HTTP 200 after 343 ms 2025-12-10T17:29:18:128 [debug]: fetch: request to https://gitlab.com/api/v4/projects/76980538/pipelines?ref=main returned HTTP 200 after 364 ms 2025-12-10T17:29:26:773 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:29:36:776 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin) 2025-12-10T17:29:46:778 [debug]: [auth] Syncing account credentials to language server (https://gitlab.com|28919302 - lively-penguin)

Possible fixes