cleanup termination fields from workspace agent config
Issue: Remove default_max_hours_before_termination and... (gitlab-org/gitlab#509785 - closed)
What does this MR do ?
This MR cleans up workspaces termination configuration fields that have been deprecated in the Rails side and are not even parsed or saved when a configuration update occurs.
Impact
As the agent configuration validation is strict, i.e unrecognized fields cause a failed parse, removing these fields from the proto definition will cause existing configuration files with these fields to fail parse. e.g:
{"time":"2025-04-24T14:44:25.743216-04:00","level":"WARN","msg":"GetConfiguration.Recv failed","error":"rpc error: code = FailedPrecondition desc = config: failed to parse agent configuration: protojson.Unmarshal: proto: (line 1:90): unknown field \"default_max_hours_before_termination\""}
However, these fields were introduced in Update protobuf definitions for agent configura... (!1581 - merged), which is a descendant of the epic whose work was cut short and did not get officially released: Set workspace timeout in agent configuration (gitlab-org&11631 - closed) , the only potential concern that this might have been exposed is that the doc MR mentioning these fields got merged. This seems to have been reverted as the current doc https://docs.gitlab.com/user/workspace/settings/ does not mention these fields
Review Checklist
-
Be sure to consider the scalability and availability impact of this changes by evaluating the impact of them at scale.