mir-backend-jvm-quarkuslisted
Install: claude install-skill anantbhandarkar/make-it-right
# /mir-backend-jvm-quarkus · Make It Right (Quarkus)
Bottom tier of the chain: `mir-backend` (generic gates) → `mir-backend-jvm` (JVM runtime model) → **this** (Quarkus library mechanics). Run the gates first; load the JVM runtime tier for threading, GC, and container-heap concerns; reach for *this* at Gate 5 (design mechanics), Gate 6 (implementation), and Gate 7 review. **Runtime-level concerns (virtual-thread pinning, pool sizing, GC tuning, `-XX:MaxRAMPercentage`, ThreadLocal hygiene, JMM visibility) live in `mir-backend-jvm` — not here.**
**Stack assumed:** Quarkus 3.x · CDI (ArC) · Quarkus REST (or the classic imperative stack) · Hibernate ORM with Panache · SmallRye Mutiny · GraalVM CE / Mandrel for native image.
**Version status, verified 13 Aug 2026:**
| Line | Status | Use it when |
|---|---|---|
| **Quarkus 3.33 LTS** | Current LTS, patches to 25 Mar 2027 | Production default |
| **Quarkus 3.27 LTS** | Older LTS, support ends 24 Sep 2026 | Migrate off it now |
| **3.38.x** | Latest non-LTS minor (new minors every 4–6 weeks) | Only if you track releases continuously — a non-LTS minor is supported only until the next one |
| Quarkus 4.0 | Beta 1 targeted Sep 2026 (JPMS modularization, JLink images) | Not yet |
Java baseline is **17**, with 21 and 25 supported. The Leyden AOT cache needs Java 25; `@RunOnVirtualThread` wants Java 24+ (see §2).
**Naming:** the reactive REST stack was renamed **Quarkus REST** (`quarkus-rest`, `quarkus-rest-jackson`). `quarkus-reste