forked from cleveragents/cleveragents-core
fix(resource): add defensive copies for capabilities/auto_discovery/equivalence in as_cli_dict
Complete F24 fix: capabilities, auto_discovery, and equivalence dicts were returned as direct references. Now wrapped with dict() to prevent callers from mutating internal state.
This commit is contained in:
@@ -482,12 +482,12 @@ class ResourceTypeSpec(BaseModel):
|
||||
if self.child_types:
|
||||
result["child_types"] = list(self.child_types)
|
||||
|
||||
result["capabilities"] = self.capabilities
|
||||
result["capabilities"] = dict(self.capabilities)
|
||||
|
||||
if self.auto_discovery is not None:
|
||||
result["auto_discovery"] = self.auto_discovery
|
||||
result["auto_discovery"] = dict(self.auto_discovery)
|
||||
if self.equivalence is not None:
|
||||
result["equivalence"] = self.equivalence
|
||||
result["equivalence"] = dict(self.equivalence)
|
||||
if self.handler is not None:
|
||||
result["handler"] = self.handler
|
||||
|
||||
|
||||
Reference in New Issue
Block a user