Skip to content

refactor(compute): remove legacy host_users platform configuration #2861

Description

@drew

Description

Remove the temporary DriverSandboxTemplate.platform_config["host_users"] compatibility encoding at the coordinated 0.1.0 API stability boundary. The public compute-driver contract should carry portable user-namespace intent only through the typed optional DriverSandboxTemplate.user_namespaces field.

Context

PR #2823 moves Kubernetes-specific hostUsers translation into the Kubernetes compute driver and adds the typed user_namespaces field to compute_driver.proto. During the transition, the gateway continues emitting the inverse legacy platform_config.host_users value for older external Kubernetes driver binaries, and the Kubernetes driver continues accepting that value from older gateways.

This compatibility shim deliberately preserves mixed-version operation, but the opaque field is Kubernetes-specific and should not remain part of the stabilized compute-driver contract. This work is tracked under #2565 as part of the final coordinated breaking-API pass for 0.1.0.

Definition of Done

  • Remove gateway emission of DriverSandboxTemplate.platform_config["host_users"].
  • Remove the Kubernetes driver's fallback parsing of platform_config.host_users.
  • Keep DriverSandboxTemplate.user_namespaces as the sole compute-driver representation of portable user-namespace intent.
  • Update compatibility tests to enforce the post-transition typed-only contract.
  • Document the removal in the 0.1.0 migration notes and compute-driver compatibility matrix.
  • Confirm all first-party and supported external compute drivers consume the typed field before removal.

Dependency

Do not remove the shim until the project deliberately enters the 0.1.0 breaking-change window and the supported external-driver compatibility policy from #2565 permits it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    Todo

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions