Skip to content

Move langchain4j-agent-ql4j integration test to native mode support #8690

Description

@JiriOndrusek

The integration-tests-jvm/langchain4j-agent-ql4j module currently only runs in JVM mode. This ticket
enables native mode support by adding required build steps and moving it to integration-tests/.

Background

During native mode investigation (see comment on quarkiverse/quarkus-langchain4j#2345), additional build
configuration was needed for camel-quarkus-langchain4j + quarkus-langchain4j coexistence in native
mode.

POC: main...JiriOndrusek:ql4j-native-03

Suggested Tasks

  1. Create SupportQuarkusLangchain4jProcessor (extensions-support/langchain4j/deployment)

    • Activate only when QL4J detected: @buildsteps(onlyIf = QuarkusLangchain4jPresent.class)
    • Enforce JAX-RS HTTP client via system property
    • Register guardrails as synthetic beans at STATIC_INIT
    • Register QuarkusJsonCodecFactory classes for reflection
  2. Move test module
    - From: integration-tests-jvm/langchain4j-agent-ql4j/

    • To: integration-tests/langchain4j-agent-ql4j/
    • Reuse sources from integration-tests/langchain4j-agent (exclude **/api_chat)
    • Add @QuarkusIntegrationTest class for native mode
  3. Update test categorization

    • Add to tooling/scripts/test-categories.yaml
  4. Add README.adoc

    • Document HTTP client (JAX-RS) requirement
    • Explain bean scoping with @Identifier to prevent conflicts
    • Show JVM and native test commands

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions