Releases
Changelog
All notable changes to this project will be documented in this file.
[0.1.0-alpha.19] - 2026-07-15
Added
- Synthesize ingress allows for external routing backends via explicit selector
Fixed
- Distinct resource names for multi-endpoint endpoint-ingress policies
- Resolve #227 backendRef retargeting across dependency/tier bundles
- Only register components that own a Service as backendRef targets
[0.1.0-alpha.18] - 2026-07-14
Added
- Implement EndpointProvider on webservice
- Postgresql pooler EndpointProvider + per-endpoint NP naming
- Derive ingress-synthesis target from expose backendRefs
Changed
- Tighten builtin rbac and flux patch schemas
- Adopt shared check-forbidden-terms action for scan parity
Fixed
- Scrub downstream references from generated notes
- Scan full tree for downstream refs on PRs (PR/merge-queue parity)
- Fail fast on invalid egress peers
- Preflight downstream-reference guard before every CI push
Release
- V0.1.0-alpha.18
[0.1.0-alpha.17] - 2026-07-13
Added
- Target the platform component label in synthesized NetworkPolicies
- Parametrize the platform label/annotation domain (default gokure.dev)
- Guard against launcher leading kure on shared direct deps
- Add EndpointProvider and endpoint-ingress NetworkPolicy synthesis
CI
- Enforce no-downstream-references guard and document the rule
Changed
- Genericize downstream references in comments, READMEs, fixtures
Dependencies
- Bump go-kure/kure to v0.2.0-beta.7 and align shared deps
Documentation
- Genericize downstream references in design docs
Fixed
- Run tag-collision checks in preview + guard next dev version
- Publish external-secret shorthand design doc and fix traits link
- Harden kure-dep-sync guard per PR review
- Always refresh remote-tracking base ref in kure-dep-sync guard
Release
- V0.1.0-alpha.17
[0.1.0-alpha.16] - 2026-07-11
Added
- Accept storageClassName + volumeSnapshotClassName via capability rendering
- Synthesize per-component egress NetworkPolicy from a non-authorable input
Release
- V0.1.0-alpha.16
[0.1.0-alpha.15] - 2026-07-10
Changed
- Unify schema vocabulary on PropertySchema
- Preserve YAML aliases and validate schema keys
Fixed
- Make unsupported-field error name the correct allow-set
Testing
- Cover param aliases and document merge-key rejection
Release
- V0.1.0-alpha.15
[0.1.0-alpha.14] - 2026-07-09
Added
- Authored secretName override on ingress TLS
Release
- V0.1.0-alpha.14
[0.1.0-alpha.13] - 2026-07-09
Added
- External-auth (oauth2-proxy) ingress annotations
- Expose ComponentName() accessor on sub-app configs
- External-secret data[] shorthand (derive remoteRef.key + property)
Documentation
- External-secret data[] shorthand design spike
Fixed
- Accept security-context in validTraitTypes
Release
- V0.1.0-alpha.13
[0.1.0-alpha.12] - 2026-07-08
Added
- Add Description to PropertySchema + populate builtin handler descriptions
- Hostnames shorthand + platform-default ssl-redirect
Release
- V0.1.0-alpha.12
[0.1.0-alpha.11] - 2026-07-07
Added
- Support privateKey (algorithm/size/rotationPolicy/encoding) in certificate trait
- Consume EnvironmentPolicy storage/scaler defaults in scaler/pvc/postgresql
Documentation
- Document Policy defaults & enforcement in pkg/oam README
Release
- V0.1.0-alpha.11
[0.1.0-alpha.10] - 2026-07-04
Documentation
- Note capability-injected fields are not user-required in trait schemas
Fixed
- Don’t mark capability-injected fields as user-required in schemas
Release
- V0.1.0-alpha.10
[0.1.0-alpha.9] - 2026-07-03
Added
- Add PropertySchema() to rc.1 public built-in handlers
Changed
- Give resources requests/limits independent sub-maps
Documentation
- Refresh github-workflows.md Last Updated date
- Note shared handler registration and property schemas
Release
- V0.1.0-alpha.9
[0.1.0-alpha.8] - 2026-07-02
Added
- Property-schema vocabulary + handler-schema interface
- Platform-managed TLS + hostname validation
- Synthesise parentRefs from capability
- Add prerelease bump scope
Dependencies
- Bump external-secrets/apis to latest pseudo-version
- Bump github.com/cilium/cilium from 1.19.4 to 1.19.5
- Bump github.com/google/go-containerregistry
- Bump github.com/cert-manager/cert-manager
- Bump sigs.k8s.io/gateway-api from 1.5.1 to 1.6.0
- Bump github.com/cloudnative-pg/cloudnative-pg
- Adopt Flux 2.9 API set + kure v0.2.0-beta.6
Documentation
- Note k8s.io/api constant convention
Fixed
- Use k8s.io/api constants for well-known K8s values
Performance
- Source-aware Go build cache, split by job purpose
Release
- V0.1.0-alpha.8
[0.1.0-alpha.7] - 2026-06-19
Dependencies
- Bump the k8s-ecosystem group across 1 directory with 3 updates
[0.1.0-alpha.6] - 2026-06-19
Added
- Add security-context OAM trait handler
Dependencies
- Bump github.com/cloudnative-pg/plugin-barman-cloud
- Bump github.com/backube/volsync from 0.15.0 to 0.16.0
Documentation
- Reference security-context trait in build command README
Fixed
- Reject non-integral float values in toInt64
[0.1.0-alpha.5] - 2026-06-05
Added
- Add oci component handler
- ScopeOverrides for cluster-scoped CRs without in-source CRD
- Single-source docs map + enforcement tooling; mount existing docs
CI
- Enforce docs sync (check-doc-sync, link-check, doc-gate)
Documentation
- State mandatory documentation-sync rule (Part C cascade)
- Correct backend to claude-max-proxy:3456
- Add per-package READMEs (errors, kurel CLI ref, oam overviews)
- Add section intros, api-reference index, and generator markers
- Refresh AGENTS structure + mark doc-sync enforced
- Publish OAM model + component/trait handler references
- Getting-started narrative + mount capability schema
- Use absolute pkg.go.dev links for cross-package refs
Testing
- Cover oci auto health-check GVK + flux namespace
Release
- V0.1.0-alpha.5
[0.1.0-alpha.4] - 2026-06-03
Added
- Add crd and manifests component handlers
Build
- Tidy go.mod (promote apiextensions-apiserver to direct)
- Bump Go to 1.26.4 (fixes 3 stdlib vulns) and fold in govulncheck tweaks
CI
- Add merge_group trigger and harden change detection for merge queue
- Cap govulncheck memory (GOMEMLIMIT + -scan package) to avoid runner OOM
Dependencies
- Bump the k8s-ecosystem group across 1 directory with 2 updates
- Bump github.com/go-kure/kure
Fixed
- Build linux-only release artifacts
Release
- V0.1.0-alpha.4
[0.1.0-alpha.3] - 2026-06-02
Fixed
- Emit the flux namespace for helmchart auto health checks (#234)
Release
- V0.1.0-alpha.3
[0.1.0-alpha.2] - 2026-05-30
Added
- Restore app parameter on cilium-networkpolicy parseProperties
- Rename daemonset Service port name from tcp to http
- Revert volsync sub-app name to {sourcePVC}-backup
- Accept inline secretStoreRef/provider in external-secret trait
- Add FluxNamespace forwarding for configmap+helmchart combos
Release
- V0.1.0-alpha.2
[0.1.0-alpha.1] - 2026-05-29
Added
- Certificate trait uses nested issuerRef {name,kind}
- Support scope property for ingress/httproute sub-app naming
- Synthesize per-component allow-ingress NetworkPolicy at cluster post-build
- Parse networkPolicy.trafficSources on ingress/httproute traits
- Add passthrough component for arbitrary objects
- Register passthrough component type
CI
- Redesign release workflows — Create/Promote/Bump/Publish
Dependencies
- Bump kure to v0.2.0-beta.0 and align flux/containerregistry deps
- Bump kure to v0.2.0-beta.3 and align k8s deps
Documentation
- Add README with index, profile guide, and custom-capability explanation
- Document launcher’s intentional kure package boundary
- Document and example the passthrough component
Fixed
- Correct cluster profile issuerRef fields and custom-capability app; support custom traits in parser
- Change default HelmRelease interval from 10m to 60m
- Deep-copy passthrough object so source properties are never mutated
- Upgrade golang.org/x/net to v0.55.0 to address GO-2026-5026
Release
- V0.1.0-alpha.1
[0.1.0-alpha.0] - 2026-05-22
Added
- Add docs site and versioned release workflow
- Migrate pkg/launcher, pkg/patch, cmd/kurel, pkg/cmd/kurel from kure
- Pkg/errors — ValidationError, ParseError, and error helpers
- Pkg/oam — handler interfaces
- Pkg/oam — ClusterProfile and CapabilityBinding types
- Pkg/oam — Policy interface, Enforceable, NoopPolicy
- Runtime skeleton — Transformer registry and pipeline types (#47)
- Transform pipeline — Transform, TransformWithPolicy, and pipeline stages (#53)
- Built-in webservice, expose, and ingress handlers (partial #48, #49, #50)
- Add build command — OAM vertical slice (#55)
- Add worker, cronjob, daemonset handlers with fixture parity (#48, #54)
- Add statefulset handler and certificate/scaler/pvc traits (#48, #49, #54)
- Add external-secret, configmap, networkpolicy, cilium-networkpolicy, volsync traits (#49, #50)
- Add postgresql component handler (#48)
- Add httproute trait handler and expose gateway dispatch
- Add port field, Service generation, and servicePortProvider to daemonset (#86)
- Rename helmrelease→helmchart, add gitopsEngine to ClusterProfile, implement helmchart handler (#82, #84)
- Add kurel.yaml package descriptor and parameter substitution (#51)
- Implement helmchart delivery: template (#83)
- Allow routing traits on helmchart components via explicit servicePort (#89)
- Add CapabilityDefinition schema for custom trait rendering (#66)
- Port rbac, fluxcd-patches, fluxcd-postbuild, prune-protection traits from the downstream operator (#97 #98 #99 #100)
Build
- Bump kure to v0.2.0-alpha.8; add helmchart template e2e test
CI
- Add AI PR review and Claude Code workflows
- Replace shared workflows with callers to go-kure/.github
- Optimize pipeline — parallel jobs, single test run, Hugo cache, path filtering
- Cancel in-progress runs when new push arrives on same branch
- Drop go build cache, bump timeouts for slow S3 upload
- Force legacy cache API to route through in-cluster cache server
- Rename runner label autops-kube -> autops-kube-kure
- Explicitly set ACTIONS_CACHE_URL in workflow env to override job dispatch
- Switch to ACTIONS_RESULTS_URL for cache routing, fix artifact steps
- Expand workflow path filter and fix coverage comment threshold
Changed
- Rename oam.Policy struct to ApplicationPolicy
Dependencies
- Bump k8s.io/apimachinery from 0.35.3 to 0.36.0
- Bump github.com/go-kure/kure
- Align dependencies with kure main
Documentation
- Add initial design document
- Update module path references from kure to launcher in READMEs
- Add Organization Resources section referencing go-kure/.github
- Add GitHub Actions workflow reference
- Phase 0 design documents for OAM runtime
- Second iteration of Phase 0 OAM design documents
- Record Phase 0 design decisions and close open questions
- Finalize Phase 0 design — trim options docs, complete kurel-package §6, add changelogs
- Add examples covering all Phase 1 component and trait types
- Update design.md to v1.3 — OAM-native architecture
- Design capability schema for built-in and custom handlers
- Fix cluster-profile terminology, narrow universal-scope claim, update deferred ref
Fixed
- Correct import ordering in pkg/cmd/kurel/cmd.go
- Correct import ordering in pkg/launcher test files
- Split kure/launcher import groups for goimports compliance
- Add test to build gate needs to catch skipped cascade on failure
- Guard against empty Hugo version parse from mise.toml
- Add validate to build gate needs so lint failure blocks merge
- Add CHANGELOG.md to check-mounts verification
- Bump Go to 1.26.3 and x/net to v0.53.0
- Remove phantom pkg/errors and pkg/logger from repo tree
- Correct stale GVK references in design-kurel-package.md
- Address final review findings before PR #58 merge
- Enforce Policy capability constraints in pipeline
- Use pkg/errors instead of fmt.Errorf in builtin handlers
- Replace remaining fmt.Errorf in decode.go and expose.go
- Evaluate ClusterProfile capabilities before Transform
- Parse ClusterProfile strictly; reject unknown fields
- Add semantic validation to ParseClusterProfile
- Guard cronjob history limits against int32 overflow
- Promote cert-manager to direct dep; validate PVC access modes
- Reject explicitly empty accessModes list in pvc trait
- Address external-secret shorthand, volsync naming, and coverage
- Preserve decodingStrategy in external-secret remoteRef shorthand
- Align postgresql customQueries validation and bootstrap recovery tests with the downstream operator
- Remove wrong deprecation from ingress/httproute; fix default backend port
- Validate implicit backends; extend ingress with per-path backend override
- Tighten implicit-backend port guards for ingress and httproute
- Tighten parameter coercion validation
- Validate parameter defaults at parse time and coerce plain-string defaults
- Reject map and slice defaults for string parameters at parse time
- Reject invalid interval string in helmchart ToApplicationConfig
- Add actions: read permission to release-create workflow
Testing
- Expand builtin handler coverage to meet 80% threshold
- Document prune-protection narrow scope; strict target validation in fluxcd-patches
Release
- V0.1.0-alpha.0