Skip to content

feature: plugin migration to Java 21 / Spring Boot 3.3.5 (planted gaps — do not fix here) - #96

Open
devin-ai-integration[bot] wants to merge 1 commit into
devin/1790322206-modernization-demo-fixturefrom
plugin/migration
Open

devin-ai-integration[bot] wants to merge 1 commit into
devin/1790322206-modernization-demo-fixturefrom
plugin/migration

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

Summary

Stacked on #95. Simulates the output of a code-only transform plugin: Java 11/Boot 2.7.18 → Java 21/Boot 3.3.5. ./mvnw test passes (9/9) but nothing under infra/, Dockerfile or demo/ was touched, so make verify fails deterministically — those failures are the demo (Assess/Verify acts). Do not fix them on this branch; Devin fixes them on the infra PR.

Plugin-style changes (4 files):

 pom.xml / build.gradle        2.7.18 → 3.3.5, java 11 → 21 (toolchain)
 Topic.java                    javax.persistence → jakarta.persistence
-  @Column(nullable=false) subjectDescription
+  @Column(name="description", nullable=false) subjectDescription
 application.properties
-  ${DB_URL}/${DB_USER}/${DB_PASSWORD}          →  ${TOPICS_DB_URL}/${TOPICS_DB_USER}/${TOPICS_DB_PASSWORD}
-  hikari.maximum-pool-size=20, minimum-idle=5  →  spring.datasource.type=DriverManagerDataSource (no pool)
-  ddl-auto=validate, open-in-view=false        →  ddl-auto=update, (open-in-view default true), show-sql=true, bind TRACE
-  management base-path=/manage on :8080        →  management.server.port=8081, base path /actuator (Boot 3 default)

Each change lands on one of the six planted gaps (runtime pin, health path/port, secret key rename, DB schema contract, firewall/DNS for :8081, load-only NFR regression). demo/PLANTED-GAPS.md (new) holds the mapping, the tools/discover/diff.py impact matrix against the live AWS graph (6 DRIFT / 2 OK; legacy branch: 0 DRIFT), and the reproduced failure cascade with exact output — UnsupportedClassVersionError → password authentication failed → nginx /health 404 + :8081 dropped by firewall + column t1_0.description does not exist / cannot alter type of a column used by a view → compare_nfr.py: p95 1.7 → 32.5 ms, rps 2139 → 745, REGRESSION.

Devin-Org: engineering

Link to Devin session: https://app.devin.ai/sessions/352726bfd41244cca160f073ac24632e
Open in Devin Desktop: https://app.devin.ai/desktop/session/352726bfd41244cca160f073ac24632e?variant=devin


Devin Review

Status Commit
⚪ Not started —

Run Devin Review

Devin Review (Staging)

@devin-ai-integration

Copy link
Copy Markdown
Author

I'll fix CI failures and address comments from users with write access. I'll skip comments containing "(aside)".

  • Disable automatic comment, CI, and merge conflict monitoring

…ot 3 defaults) with documented planted gaps

Co-Authored-By: Ian Moritz <ian.moritz@cognition.ai>
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.

0 participants