toolDescriptorPayload detaches registry-owned descriptor data from transport DTOs.
(d toolspkg.Descriptor)
| 311 | |
| 312 | // toolDescriptorPayload detaches registry-owned descriptor data from transport DTOs. |
| 313 | func toolDescriptorPayload(d toolspkg.Descriptor) contract.ToolDescriptorPayload { |
| 314 | return contract.ToolDescriptorPayload{ |
| 315 | ToolID: d.ID, |
| 316 | Backend: toolBackendPayload(d.Backend), |
| 317 | DisplayTitle: d.DisplayTitle, |
| 318 | Description: d.Description, |
| 319 | InputSchema: cloneRawMessage(d.InputSchema), |
| 320 | OutputSchema: cloneRawMessage(d.OutputSchema), |
| 321 | InputSchemaDigest: d.InputSchemaDigest, |
| 322 | OutputSchemaDigest: d.OutputSchemaDigest, |
| 323 | Source: toolSourcePayload(d.Source), |
| 324 | Visibility: d.Visibility, |
| 325 | Risk: d.Risk, |
| 326 | ReadOnly: d.ReadOnly, |
| 327 | Destructive: d.Destructive, |
| 328 | OpenWorld: d.OpenWorld, |
| 329 | RequiresInteraction: d.RequiresInteraction, |
| 330 | ConcurrencySafe: d.ConcurrencySafe, |
| 331 | MaxResultBytes: d.MaxResultBytes, |
| 332 | Toolsets: append([]toolspkg.ToolsetID(nil), d.Toolsets...), |
| 333 | Tags: append([]string(nil), d.Tags...), |
| 334 | SearchHints: append([]string(nil), d.SearchHints...), |
| 335 | } |
| 336 | } |
| 337 | |
| 338 | // toolBackendPayload preserves backend routing metadata without exposing registry internals. |
| 339 | func toolBackendPayload(backend toolspkg.BackendRef) contract.ToolBackendRefPayload { |
no test coverage detected