Skip to content

chore: align ARCP wire protocol version with v1.1 #3

chore: align ARCP wire protocol version with v1.1

chore: align ARCP wire protocol version with v1.1 #3

Workflow file for this run

name: ci
on:
push:
branches: [main]
paths-ignore:
- "**.md"
- "LICENSE"
- ".gitignore"
- ".editorconfig"
- "docs/diagrams/**" # diagrams workflow owns these
pull_request:
branches: [main]
paths-ignore:
- "**.md"
- "LICENSE"
- ".gitignore"
- ".editorconfig"
- "docs/diagrams/**"
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
permissions:
contents: read
jobs:
build:
name: build (JDK ${{ matrix.jdk }})
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
# 21 is the LTS floor (`--release 21`); 25 is the September 2025 LTS
# and matches the toolchain the local developer setup uses. Both must
# produce green tests on every PR.
jdk: ["21", "25"]
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Set up JDK ${{ matrix.jdk }}
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ matrix.jdk }}
cache: gradle
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Build
run: ./gradlew build --no-daemon --stacktrace
- name: Run all 10 examples
run: |
./gradlew --no-daemon --stacktrace \
:examples:submit-and-stream:run \
:examples:cancel:run \
:examples:heartbeat:run \
:examples:cost-budget:run \
:examples:result-chunk:run \
:examples:agent-versions:run \
:examples:list-jobs:run \
:examples:lease-expires-at:run \
:examples:idempotent-retry:run \
:examples:custom-auth:run
- name: Upload test reports
if: always()
uses: actions/upload-artifact@v4
with:
name: test-reports-jdk${{ matrix.jdk }}
path: |
**/build/reports/tests/
**/build/test-results/
if-no-files-found: ignore
retention-days: 7
javadoc:
name: javadoc
runs-on: ubuntu-24.04
needs: build
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: "21"
cache: gradle
- name: Build javadoc for all published modules
run: |
./gradlew --no-daemon \
:arcp-core:javadoc \
:arcp-client:javadoc \
:arcp-runtime:javadoc \
:arcp:javadoc \
:arcp-otel:javadoc \
:arcp-runtime-jetty:javadoc \
:arcp-middleware-jakarta:javadoc \
:arcp-middleware-spring-boot:javadoc \
:arcp-middleware-vertx:javadoc \
:arcp-tck:javadoc