Skip to content

Roadmap

Ideas that haven't earned implementation yet — or that the architect hasn't recovered enough bandwidth to face.

For the emulation boundary — what can cross the bridge and what can't — see Concepts.

Next

Nginx ingress provider

An IngressProvider that produces an Nginx reverse proxy service + nginx.conf instead of Caddy. For users who need Nginx specifically — corporate environments, existing Nginx expertise, or setups where Caddy's automatic TLS isn't wanted. The rewriter already exists (dekube-rewriter-nginx); this would be the provider counterpart. See Writing ingress providers for the contract.

Overrides vs transforms ordering

overrides: currently runs before transforms, so services created by transforms (like fix-permissions) can't be overridden. Either overrides need to run after transforms, or transforms need to check enabled themselves.

Someday

Gateway API

The Kubernetes Gateway API is the eventual successor to Ingress — HTTPRoute, Gateway, GRPCRoute instead of Ingress. A GatewayRewriter extension would handle these kinds the same way IngressRewriter handles Ingress annotations: read the Gateway API resources, produce reverse proxy config. No rush — Gateway API adoption is still ramping up — but the extension system should be ready for it when it comes.

Pipeline hooks

Named pipeline hooks (post_aliases, pre_write, etc.) for extensions. Not needed yet — converters + transforms cover known cases. Revisit if a third pattern shows up. So far, two patterns have shown up. The third is watching.

Promote _-prefixed helpers to public API

Several conversion primitives exported by dekube-engine (_convert_command, _convert_volume_mounts, _build_alias_map, _build_service_port_map, _resolve_named_port) are used by bundled extensions and useful to any third-party provider or indexer. They're currently _-prefixed (historical — they lived in the monolith before the split) but exported in __all__. Drop the underscore, document them in the pacts API, remove _build_vol_map (unused outside _convert_volume_mounts).

Extension compatibility matrix

Extension manifests with core_version_min / core_version_max_tested. Manager warns/errors on mismatch. Today only extension-vs-extension incompatibility is checked — extension-vs-core version compat is not.

helmfile2swarm distribution

A Swarm-oriented distribution with different monks — distributed volumes, deploy.replicas, Traefik in mesh mode. The engine supports it, the contracts are ready, the architecture page has the blueprint. I've never used Swarm, and I hope I never will. But the door is open for anyone who wants to walk through it.

Out of scope

CronJobs, resource limits, HPA, PDB, probes-to-healthcheck. These survived the flattening by virtue of not being worth flattening. See Limitations for the full list and rationale.


Thus spoke the disciple unto the void: "Yog Sa'rath, my hour has come." And the void answered not — for even it knew that some invocations are answered not with knowledge, but with consequences.

De Vermis Mysteriis, On the Hubris of the Disciple (probably³)

For what's already been done, see the cursed journal.