The public API of the library modules must be made 1.0-stable before 1.0, because these changes are breaking and can't be made after the semver commitment. From the pre-1.0 deep review.
Blockers
High
Medium / Low
Full review context in the 1.0.0 plan. Decisions: plugins disabled-by-default and opt-in REST auth are tracked in 0.6.0.
The public API of the library modules must be made 1.0-stable before 1.0, because these changes are breaking and can't be made after the semver commitment. From the pre-1.0 deep review.
Blockers
throws Exceptionacross the public surface with theJhelmExceptionhierarchy (KubeService.java:10-43, everycore/action/*method). Narrowing this after 1.0 breaks all callers.ApiClientbean (JhelmKubeAutoConfiguration.java:58) andApiExceptionon publicHelmKubeService/AsyncHelmKubeServicemethods. Internalize/wrap so the client major version isn't pinned into jhelm's API.PGPSecretKey/PGPPublicKeyRingCollection) fromSignatureServicepublic methods (SignatureService.java:64,106,158,186). Introduce jhelm-owned key wrappers.High
Releaseandmodel/*are@Data @NoArgsConstructorwith public setters used as API value types). Builder + getters, or document as mutable DTOs.ReleaseContextto replace the magicMap<String,Object> releaseInfo("Name"/"Namespace"/"IsInstall"/…) inEngine.render/TemplateAction.render(Engine.java:182).Optionalfor single lookups, emptyListfor queries, consistentRelease/voidfor mutations; one not-found convention).RepoManager(@SetterhttpClient/registryManager;HashMapindexCache). Constructor-inject,ConcurrentHashMap, document threading.Medium / Low
internalpackage convention (no JPMS, so everypublicis API today) and document the supported surface; demote static-factory/decorator internals.statusString → enum onRelease;LifecycleListenerphase String → enum + typed event.TemplateAction.rendershould injectChartLoaderinstead ofnew ChartLoader()per call.RepositoryConfig.Repositorysnake_case fields → camelCase +@JsonProperty.Full review context in the 1.0.0 plan. Decisions: plugins disabled-by-default and opt-in REST auth are tracked in 0.6.0.