Skip to content

fix(ci): repair javadoc generation for release builds#301

Merged
alexk-dev merged 1 commit intomainfrom
fix/javadoc-release
Apr 17, 2026
Merged

fix(ci): repair javadoc generation for release builds#301
alexk-dev merged 1 commit intomainfrom
fix/javadoc-release

Conversation

@alexk-dev
Copy link
Copy Markdown
Owner

Summary

  • Root cause: maven-javadoc-plugin:jar in the central-publish profile fails because javadoc does not execute Lombok's annotation processor, so Lombok-generated inner types such as DashboardFileContent.DashboardFileContentBuilder (referenced in DashboardFileService) cannot be resolved. The last three Release runs (feat(llm): add tier fallback routing settings #294, fix(prompts): coerce null description from YAML to empty string #297, fix(dashboard): add staged update force install #299) failed at exactly this step and never produced a tag.
  • Fix: add lombok-maven-plugin (pinned to the project ${lombok.version}) to the central-publish profile, delombok src/main/java into target/delombok in generate-sources, and point maven-javadoc-plugin at the delombok output + the protobuf-generated sources so the javadoc jar can always be built.
  • Guardrail: new javadoc.yml workflow runs the same mvn -P central-publish package path on every PR and push to main, so a javadoc regression is now caught before it can reach a release tag.

Verified locally: ./mvnw -B -ntp -DskipTests -DskipGitHooks=true -P central-publish package succeeds and emits target/bot-*-javadoc.jar.

🤖 Generated with Claude Code

Release pipeline was failing at maven-javadoc-plugin:jar because the
plugin cannot resolve Lombok-generated inner types (e.g.
DashboardFileContent.DashboardFileContentBuilder) when the standard
javadoc tool does not run the annotation processor.

Wire lombok-maven-plugin into the central-publish profile to delombok
sources during generate-sources, and point maven-javadoc-plugin at the
delombok output plus the protobuf-generated sources so the release JAR
can always be documented.

Add a dedicated Javadoc GitHub workflow that runs the same
central-publish package target on every PR and push to main, preventing
future javadoc breakage from silently reaching a release tag.
@sonarqubecloud
Copy link
Copy Markdown

@alexk-dev alexk-dev merged commit 81df682 into main Apr 17, 2026
20 checks passed
@alexk-dev alexk-dev deleted the fix/javadoc-release branch April 17, 2026 01:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant