Summary
Add GraalVM native-image compatibility annotations, reflection metadata, and build configuration so that applications using the Deepgram Java SDK can be compiled to native executables with near-instant startup times — critical for serverless (AWS Lambda, Azure Functions, Google Cloud Functions) and containerized deployments.
Problem it solves
Java developers deploying voice transcription in serverless environments face cold-start penalties of 3-10 seconds with standard JVM startup. GraalVM native-image compilation eliminates this by ahead-of-time compiling to native executables with <100ms startup. However, SDKs that use reflection, dynamic proxies, or runtime class loading (common in HTTP/WebSocket clients and JSON serialization) fail at native-image compile time without proper metadata hints. Developers currently cannot use the Deepgram Java SDK in GraalVM native-image builds without manually providing reflection configuration, which is fragile and undocumented.
Proposed API
// No API changes needed — compatibility is transparent
// Works as a standard dependency in native-image builds
// pom.xml or build.gradle (no extra config needed)
// <dependency>
// <groupId>io.deepgram</groupId>
// <artifactId>deepgram-java-sdk</artifactId>
// </dependency>
// Application code works identically
var client = new DeepgramClient(apiKey);
var response = client.listen().prerecorded()
.transcribeUrl(audioUrl, options);
// Compiles with: native-image -jar myapp.jar
// Or with Quarkus/Micronaut/Spring Native build plugins
Acceptance criteria
Raised by the DX intelligence system.
Summary
Add GraalVM native-image compatibility annotations, reflection metadata, and build configuration so that applications using the Deepgram Java SDK can be compiled to native executables with near-instant startup times — critical for serverless (AWS Lambda, Azure Functions, Google Cloud Functions) and containerized deployments.
Problem it solves
Java developers deploying voice transcription in serverless environments face cold-start penalties of 3-10 seconds with standard JVM startup. GraalVM native-image compilation eliminates this by ahead-of-time compiling to native executables with <100ms startup. However, SDKs that use reflection, dynamic proxies, or runtime class loading (common in HTTP/WebSocket clients and JSON serialization) fail at native-image compile time without proper metadata hints. Developers currently cannot use the Deepgram Java SDK in GraalVM native-image builds without manually providing reflection configuration, which is fragile and undocumented.
Proposed API
Acceptance criteria
reflect-config.jsonandresource-config.jsonincluded for all SDK model classes--initialize-at-build-timeor reflection overridesRaised by the DX intelligence system.