Given a schema like this
schema do
field :name, :string, required: true
field :type, :atom, required: true, enum: [:genserver, :context, :coordination_context, :schema, :repository, :task, :registry, :other]
field :module_name, :string, required: true
field :description, :string, required: false
end
Hermes furnishes an input schema like this:
{
"name": "create_dependency",
"description": "Creates a dependency relationship between components",
"inputSchema": {
"type": "object",
"properties": {
"source_component_id": {
"type": "integer"
},
"target_component_id": {
"type": "integer"
},
"type": {}
},
"required": [
"0": "type",
"1": "target_component_id",
"2": "source_component_id"
]
}
}
It has no indication to the model what are valid types, so the model creates invalid inputs, and the validation fails silently.