Summary
All CRUD tool responses currently return the full Kubernetes object, including internal metadata fields that are meaningless to agents and waste context tokens.
Current behavior
Responses include fields like:
metadata.managedFields (large, internal controller bookkeeping)
metadata.resourceVersion (internal version tag)
metadata.uid (internal UUID)
metadata.generation, metadata.creationTimestamp, etc.
These fields bloat every response and add noise that agents must filter mentally.
Proposed behavior
Before returning any resource, pass it through a shared cleanResource() utility that strips internal-only fields:
func cleanResource(obj map[string]any) map[string]any {
// remove managedFields, resourceVersion, uid, generation, etc.
}
Agents receive only the fields relevant to understanding and managing the resource (metadata.name, metadata.namespace, spec, status).
Acceptance criteria
Ratings
| Dimension |
Score (1–5) |
| LOE |
2 |
| Impact |
3 |
| Agent XP |
4 |
Summary
All CRUD tool responses currently return the full Kubernetes object, including internal metadata fields that are meaningless to agents and waste context tokens.
Current behavior
Responses include fields like:
metadata.managedFields(large, internal controller bookkeeping)metadata.resourceVersion(internal version tag)metadata.uid(internal UUID)metadata.generation,metadata.creationTimestamp, etc.These fields bloat every response and add noise that agents must filter mentally.
Proposed behavior
Before returning any resource, pass it through a shared
cleanResource()utility that strips internal-only fields:Agents receive only the fields relevant to understanding and managing the resource (
metadata.name,metadata.namespace,spec,status).Acceptance criteria
cleanResource()utility implementedmanagedFields,resourceVersion,uid,generation,creationTimestampremovedspecandstatuspreserved in fullRatings