chore(release): bump EDDI version 6.2.0 -> 6.3.0 - #671
Conversation
Bumps the release number across every artefact that carries it, using the file set from the previous two bumps (c0835c9, 036faa3) rather than a grep, so nothing they touched is skipped. Build/runtime: pom.xml, application.properties (projectVersion, smallrye-openapi.info-version, container-image.additional-tags), OpenApiConfig @Info, Dockerfile EDDI_VERSION build arg. Deployment: helm Chart.yaml appVersion + values.yaml image tag, k8s deployment and quickstart (version labels, pinned image tag, cosign/crane comment examples), redhat-certify workflow input default. Bundled agent: Agent+Father-6.2.0.zip -> Agent+Father-6.3.0.zip with the matching available_agents.txt entry that RestImportService reads; verified in target/classes that the manifest still names an existing file. Docs: only build-reproducibility.md and redhat-openshift.md, which use the current tag in copy-pasteable commands. The per-page version headers are already dynamic release badges. Left at 6.2.0 deliberately: @SInCE Javadoc, pre-6.2.0 compatibility comments, and "Since 6.2.0" in httpcalls.md - historical minimum-version facts, not claims about the current release.
The chart's own version is not the app version (appVersion is), but Helm requires it to change whenever anything under helm/ changes, and chart repositories key on it: two different chart contents published under 1.0.0 are indistinguishable to any cache or mirror. It had sat at 1.0.0 since the chart was created, through the 6.1.0 and 6.2.0 bumps, because nothing enforces it and nothing packages the chart today - which is the only reason the drift was harmless rather than a stale-chart bug waiting for the first helm package. A comment on the field now states the rule so it stops depending on someone remembering.
Dependency ReviewThe following issues were found:
License Issuespom.xml
OpenSSF ScorecardScorecard details
Scanned Files
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughThe release updates EDDI references from 6.2.0 to 6.3.0 across build metadata, runtime configuration, Helm and Kubernetes deployments, workflows, and documentation. Release guidance now uses bare numeric tags and stable Docker aliases. README files document Platform Operator and SSE capabilities. ChangesEDDI 6.3.0 Release
Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This PR updates the 6.3.0 release identifiers, deployment references, bundled-agent filename, Helm chart metadata, and release documentation; no actionable merge-blocking risk remains beyond normal checks. Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/changelog.md`:
- Around line 63-67: Update all tag examples and instructions in
docs/release-versioning.md to use digit-prefixed versions such as 6.3.0 instead
of v-prefixed forms, preserving the existing release workflow and matching the
[0-9]* trigger configured in ci.yml.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 2240af58-369e-4f60-b23c-8a7f1a4f9fa0
⛔ Files ignored due to path filters (1)
src/main/resources/initial-agents/Agent+Father-6.3.0.zipis excluded by!**/*.zip
📒 Files selected for processing (13)
.github/workflows/redhat-certify.ymldocs/build-reproducibility.mddocs/changelog.mddocs/redhat-openshift.mdhelm/eddi/Chart.yamlhelm/eddi/values.yamlk8s/base/eddi-deployment.yamlk8s/quickstart.yamlpom.xmlsrc/main/docker/Dockerfilesrc/main/java/ai/labs/eddi/configs/OpenApiConfig.javasrc/main/resources/application.propertiessrc/main/resources/initial-agents/available_agents.txt
ci.yml triggers on tags: ["[0-9]*"], so a release tag must start with a
digit. release-versioning.md instructed `git tag v6.0.0` in eight places
and release-signing.md in three more. A v-prefixed tag matches that filter
nowhere, and GitHub reports no error for a tag matching no workflow: the
push succeeds and nothing runs - no build, no image, no latest, no cosign
signature, no SLSA attestation, no GitHub release. Following the guide
verbatim produced a silent non-release.
AGENTS.md already documented the digit-prefixed rule, so these two pages
were disagreeing with both the workflow and the rest of the docs. Fixed in
favour of the workflow.
Three further claims corrected against ci.yml while in there:
- The tag->image table mapped "Git tag v6.0.0" to labsai/eddi:6.0.0, but
CI uses the tag name verbatim (PRIMARY_TAG="${GITHUB_REF#refs/tags/}"),
so the v would not be stripped even if it fired.
- The 6.3 and 6 moving aliases were undocumented. CI publishes them for
stable releases only, gated on ^([0-9]+)\.([0-9]+)\.([0-9]+)$ so an RC
never claims them. Added with pin-the-patch-version guidance.
- The job table said docker runs on tag `v*`; now [0-9]*, and it records
that [skip docker] is ignored on tags.
Also: the canonical-version line quoted <version>6.0.0</version> three
releases stale, so it now names the element and the grep CI uses rather
than a number that rots. Running example moved to 6.3.0 and the lifecycle
diagram realigned (its columns were already off by four).
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/release-versioning.md`:
- Line 65: Remove the blank line between the two release-tag paragraphs in
docs/release-versioning.md at lines 65-65, and remove the empty blockquote
separator in the release-tag warning in docs/release-signing.md at lines 146-150
so both warnings use contiguous blockquote lines and satisfy markdownlint MD028.
- Line 76: Add the text language identifier to the plain-text code fence in the
release versioning documentation, changing the opening fence to use text while
preserving the diagram contents and closing fence.
🪄 Autofix
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro Plus
Run ID: 9532a092-fcd6-442f-81bd-0b2bf0c93daf
📒 Files selected for processing (3)
docs/changelog.mddocs/release-signing.mddocs/release-versioning.md
CodeRabbit on #671. The Major finding ("release guide still contains a v-prefixed tag") was raised against the first push and the bot closed it itself once 6653b05 landed; no action. The two real findings are markdownlint regressions introduced by the new warning blocks: - MD028 in both files: the added blockquote sat directly beside an existing one separated by a blank line. Fixed with a ">" continuation so each pair renders as one quote with two paragraphs. - MD040 on a fence inside the edited region. Fixed along with the other five plain-text fences in release-versioning.md - tagging one and leaving five would trade a lint warning for an inconsistency in the same file. Closing fences left bare; fences balanced after the change. release-signing.md's two bare fences (lines 30, 93) are deliberately left: pre-existing, outside this change, and not worth churning a file touched by two lines.
# Conflicts: # docs/changelog.md # src/main/resources/initial-agents/Agent+Father-6.3.0.zip # src/main/resources/initial-agents/available_agents.txt
Audited README.md and docs/README.md against origin/main after merging 589 files of it into the release branch. Main had already swapped Agent Father for the Platform Operator in the root README. Verified no surviving Agent Father reference in either README, SUMMARY.md or AGENTS.md, that the agent-father doc pages are gone, that install.sh no longer claims to deploy a starter agent, and that every relative doc link in both files still resolves. Two gaps remained, both features main shipped that neither README named: - docs/README.md never got the Platform Operator at all. Added to Multi-Agent Orchestration with the two real entry points (/manage/operator, /manage/agents/wizard) taken from getting-started.md rather than invented. - Streaming was undersold in both. Main shipped ToolLoopStreamingChatModel (tool-enabled turns stream token-by-token instead of going silent until the tool loop finishes) and a live tool_call SSE event. Verified in code first - ToolLoopStreamingChatModel.java, RestAgentEngineStreaming emitting event: tool_call, and the onToolCall hook - not from the changelog alone. Counts re-checked, none needed changing: 84 MCP_TOOLS entries against the "80+" floor, 14,645 test annotations against "14,000+", 7 named DiscussionStyle values. They are floors, which is why they survived.
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
There was a problem hiding this comment.
Pull request overview
Bumps EDDI to 6.3.0 across build, runtime, deployment, and release assets while correcting release-tag guidance and refreshing feature documentation.
Changes:
- Synchronizes application and container versions to 6.3.0; bumps the Helm chart to 1.0.1.
- Corrects release instructions to use digit-prefixed tags and documents moving image aliases.
- Updates README coverage for Platform Operator and SSE streaming.
Reviewed changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
pom.xml |
Bumps the Maven project version. |
src/main/resources/application.properties |
Updates runtime, OpenAPI, and image versions. |
src/main/java/ai/labs/eddi/configs/OpenApiConfig.java |
Updates annotated API version. |
src/main/docker/Dockerfile |
Updates the default certification label version. |
k8s/quickstart.yaml |
Updates quickstart labels and image tag. |
k8s/base/eddi-deployment.yaml |
Updates deployment labels, image, and verification examples. |
helm/eddi/values.yaml |
Updates the default EDDI image tag. |
helm/eddi/Chart.yaml |
Bumps chart and application versions. |
.github/workflows/redhat-certify.yml |
Updates certification workflow defaults. |
docs/build-reproducibility.md |
Updates verification commands and artifact examples. |
docs/redhat-openshift.md |
Updates certification and deployment examples. |
docs/release-versioning.md |
Corrects tag syntax and image-alias documentation. |
docs/release-signing.md |
Corrects signed release-tag commands. |
README.md |
Expands SSE capability documentation. |
docs/README.md |
Adds Platform Operator and SSE summaries. |
docs/changelog.md |
Records the release and documentation changes. |
Suppressed comments (1)
docs/changelog.md:1935
- The final tree contains neither
available_agents.txtnor the referenced archive, so this verification claim cannot describe the submitted PR. Remove the stale check and retain only the validations that can be reproduced from the current files.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| - **Bundled agent:** `Agent+Father-6.2.0.zip` → `Agent+Father-6.3.0.zip` with the matching line in | ||
| `available_agents.txt`, which `RestImportService` reads to seed initial agents. Verified in | ||
| `target/classes` that the manifest still names a file that exists — a rename that desynchronises | ||
| those two fails at first startup, not at compile time. |
| Verified no `v`-prefixed tag command survives anywhere in tracked files; the only remaining `v6.x` | ||
| strings in these two pages are the warnings about the prefix itself. |
Quarkus platform 3.38.2 -> 3.38.3, plus the patch and minor updates versions:display-dependency-updates reported for artefacts we pin ourselves. The report is dominated by transitives the Quarkus BOM manages (dozens of wildfly-elytron entries offering 3.0.0.Alpha1); those are the platform's to move, not ours, and were filtered out. Taken: jackson-core/databind 2.22.1 -> 2.22.2, classgraph 4.8.184 -> 4.8.192, jinjava 2.8.3 -> 2.8.4, jnats 2.26.0 -> 2.26.2, swagger-annotations 2.2.52 -> 2.2.54, swagger-parser 2.1.45 -> 2.1.47, bcprov-lts8on 2.73.12 -> 2.73.12.1. langchain4j-community 1.18.0-beta28 -> 1.19.0-beta29 is a judgement call: a minor bump on a beta artefact, but it removes a real version skew, as core, langchain4j-libs and langchain4j-beta all sit at 1.19.0. Not taken, to keep this a stable release state: jsonschema-generator 5.0.0, json-path 3.0.0, json-schema-validator 3.0.6, bson4jackson 3.2.0, testcontainers 2.0.5, wiremock 4.0.0-beta, quarkus-mcp-server 2.0.0.CR2, Quarkus 3.39.0.CR1. All are major jumps or pre-releases. Verified: clean compile green. Targeted run over the affected areas is 6,943 tests, 0 failures, 10 errors, all loopback-socket errors in LanguageModelBuildersTest streaming cases. Since langchain4j-community feeds the model builders, causation was checked rather than assumed: the same class re-run with the pre-bump pom stashed produced the identical 10 errors on the same methods. Environmental, and CI is the gate.
IRestGroupTemplates and IRestGroupWorkspace both carried @tag(name = "13. Agent Groups", ...) - the 13 is the internal I13 (standing teams) work-item number from planning, never cleaned up to the project's actual "Category / Subcategory" tag convention. It surfaced as a literal "13. AGENT GROUPS" heading in the Swagger UI. Renamed both to "Agents / Groups", matching the sibling IRestAgentGroupStore (same /groupstore/ path prefix, same tag already), so all three merge into the one existing section instead of a stray fourth one. Descriptions left as-is; only the tag name was wrong. Swept the rest of src/main/java for other numeric-prefixed @tag values and found none.
Checked every open review thread against current source rather than assuming they were stale. All four were real. README.md and docs/README.md both stated, unqualified, that tool-enabled turns stream token-by-token. LlmTask's own Javadoc lists the single-chunk fallback conditions it still uses: kill-switch off, no event sink, output-suppressed tasks, providers with no streaming builder, and the whole cascade-agent path. Both lines now say "most tool-enabled turns" and name the fallback cases. The version-bump changelog entry's "Bundled agent" bullet described renaming Agent+Father-6.2.0.zip to Agent+Father-6.3.0.zip - accurate when written, but a later merge brought in the Agent Father's removal, and neither file exists in the final tree. Corrected in place with a note on why the original text was not simply wrong. The tag-fix changelog entry claimed the only remaining v6.x strings in the release docs were the new prefix warnings. release-signing.md still says "Starting with v6.0.0" in two places - historical feature-enablement facts, deliberately left alone, but a second kind of remaining v6.x string the earlier sentence did not account for.
Bumps the release number across every artefact that carries it, plus the Helm chart's own version.
The file set was taken from the previous two bumps (
c0835c98d,036faa32a) rather than from a grep, so nothing they touched is silently skipped.What changed
Build/runtime —
pom.xml<version>;application.properties(systemRuntime.projectVersion, whichBaseRuntimeand theHttpClientWrapperUser-Agent read at runtime, plussmallrye-openapi.info-versionandcontainer-image.additional-tags);OpenApiConfig@Info(version); theEDDI_VERSIONbuild arg backing the Red Hat certificationversionlabel in the Dockerfile.Deployment — Helm
Chart.yamlappVersionandvalues.yamleddi.image.tag;k8s/base/eddi-deployment.yamlandk8s/quickstart.yaml(both theapp.kubernetes.io/versionlabels and the pinnedlabsai/eddi:tag, including the cosign/crane comment examples); theredhat-certify.ymlworkflow input default.Docs — only
build-reproducibility.mdandredhat-openshift.md, which use the current tag in copy-pasteable commands. The per-page version headers needed no touching: the recent docs refresh replaced all twelve with a dynamic shields.io release badge precisely so a bump would stop having to sweep them.Helm chart version 1.0.0 -> 1.0.1 (second commit) — not the app version, but Helm requires it to change whenever anything under
helm/changes, and chart repos key on it. It had sat at 1.0.0 since the chart was created, through the 6.1.0 and 6.2.0 bumps. Nothing packages the chart today, which is the only reason that was harmless rather than a stale-chart bug waiting for the firsthelm package. A comment on the field now states the rule.Deliberately left at 6.2.0
@since 6.2.0Javadoc, thepre-6.2.0/before 6.2.0compatibility comments inAgentOrchestrator/VertexGeminiLanguageModelBuilder/ConversationMemorySnapshot, and*Since 6.2.0.*inhttpcalls.md. Those are historical minimum-version facts, not statements about the current release — rewriting them would assert that features shipped in 6.3.0 when they did not. Same reasoning the docs refresh used to keep**Version: >=6.0.0**insecurity.mdout of the dynamic-badge conversion.Verification
grep -m1 '<version>' pom.xml | sed ...) returns6.3.0;<modelVersion>does not collide with it.quickstart.yamlis 7 documents).target/classesconfirmsavailable_agents.txtstill names a zip that exists — the one way the rename could break startup without breaking the build../mvnw compilegreen, no formatter drift.Cross-check that 6.3.0 was already the assumed next version:
@since 6.3.0already existed inMcpDocToolsandTaskToolApprovalsResolver,pre-6.3.0inhitl.mdandapplication.properties, and the Manager JS bundle fallback already readEDDI Demo 6.3.0. The code was annotating APIs as 6.3.0 whilepom.xmlsaid 6.2.0; this closes that gap.Note for whoever tags the release
The release job triggers on
tags: ["[0-9]*"], so the tag must be6.3.0and notv6.3.0or nothing fires.Separately:
docs/release-versioning.mdinstructsgit tag v6.0.0in eight places, which matches nothing and would silently produce no build, image, signature or release. Not fixed here — a release-process fix does not belong in a version bump — but it should be fixed before the next release.Summary by CodeRabbit
tool_callstatus events.Added: release-tag fix (commit
6653b05a4)ci.ymltriggers ontags: ["[0-9]*"], butdocs/release-versioning.mdinstructedgit tag v6.0.0in eight places anddocs/release-signing.mdin three more. Av-prefixed tag matches that filter nowhere, and GitHub reports no error for a tag matching no workflow -- the push succeeds and nothing runs: no build, no image, nolatest, no cosign signature, no SLSA attestation, no GitHub release. Following the release guide verbatim produced a silent non-release.AGENTS.md already documented the digit-prefixed rule, so those two pages were disagreeing with both the workflow and the rest of the docs. Fixed in favour of the workflow.
Three further claims corrected against
ci.ymlrather than assumed:v6.0.0" tolabsai/eddi:6.0.0, but CI uses the tag name verbatim (PRIMARY_TAG="${GITHUB_REF#refs/tags/}"), so thevwould not be stripped even if it fired.6.3and6moving aliases were undocumented -- CI publishes them for stable releases only, gated on^([0-9]+)\.([0-9]+)\.([0-9]+)$so an RC never claims them. They are user-facing (values.yamlwarns against deploying from the mutable major tag) yet appeared in no table. Added, with the pin-the-patch-version guidance the manifests already follow.v*-- same defect in a second spelling; now[0-9]*, and it records that[skip docker]is ignored on tags.Also: the canonical-version line quoted
<version>6.0.0</version>and had sat three releases stale, so it now names the<version>element and thegrepCI actually uses instead of a number that rots. Verified nov-prefixed tag command survives in any tracked file.