Stored Transformation

Stored transformation detail

Inspect version history, edit inputs, and save a new version without overwriting prior records.

Transformation Name segittur-trail-route-pid-object-from-ngsi-point-of-interes-lasrozas
Selected Version v2
Versions 2
Updated 2026-05-19T06:54:05.390966+00:00
Version 2 Version 1
Target Stored target schema Switch between manual editing, a persisted schema, and an internal schema, then validate or translate with the selected target schema.
Result Generated jq filter
{ "id": .id, "type": .type, "name": .name, "alternateName": .alternateName, "shortDescription": .shortDescription, "description": .description, "extraInfo": .extraInfo, "category": .category, "location": .location, "source": {"operationName":"createTrail","query":"mutation { createTrail(input: { externalId: \"\(.id)\", name: { value: \"\(.name.value)\", lang: \"es\" }, shortDescription: { value: \"\(.shortDescription.value)\", lang: \"es\" }, longDescription: { value: \"\(.description.value)\", lang: \"es\" }, keyword: \"\(.extraInfo.value)\", hasDescription: { externalId: \"\(.alternateName.value)\" }, location: { lat: \(.location.value.coordinates[1]), long: \(.location.value.coordinates[0]), postalCode: \"28270\", municipality: \"Colmenarejo\", province: \"Madrid\", autonomousCommunity: \"Comunidad de Madrid\", country: \"España\" } }) { id } }"}, "dataProvider": .dataProvider }
Output Transformed output
{
  "alternateName": {
    "metadata": {},
    "type": "string",
    "value": "LR-01"
  },
  "category": {
    "metadata": {},
    "type": "string",
    "value": "TrailRoute"
  },
  "dataProvider": {
    "metadata": {},
    "type": "string",
    "value": "nec-ccoc"
  },
  "description": {
    "metadata": {},
    "type": "string",
    "value": "Comenzamos"
  },
  "extraInfo": {
    "metadata": {},
    "type": "string",
    "value": "Encinar"
  },
  "id": "trailroute_lr-01",
  "location": {
    "metadata": {},
    "type": "geo:json",
    "value": {
      "coordinates": [
        -3.8565638,
        40.4845294
      ],
      "type": "Point"
    }
  },
  "name": {
    "metadata": {},
    "type": "string",
    "value": "Majalacabra"
  },
  "shortDescription": {
    "metadata": {},
    "type": "string",
    "value": "Dificultad: baja"
  },
  "source": {
    "operationName": "createTrail",
    "query": "mutation { createTrail(input: { externalId: \"trailroute_lr-01\", name: { value: \"Majalacabra\", lang: \"es\" }, shortDescription: { value: \"Dificultad: baja\", lang: \"es\" }, longDescription: { value: \"Comenzamos\", lang: \"es\" }, keyword: \"Encinar\", hasDescription: { externalId: \"LR-01\" }, location: { lat: 40.4845294, long: -3.8565638, postalCode: \"28270\", municipality: \"Colmenarejo\", province: \"Madrid\", autonomousCommunity: \"Comunidad de Madrid\", country: \"Espa\u00f1a\" } }) { id } }"
  },
  "type": "PointOfInterest"
}
Trace Details
{
  "attempts": [
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".id",
      "schema_valid": true,
      "stage": "field",
      "target_field": "id",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".type",
      "schema_valid": true,
      "stage": "field",
      "target_field": "type",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".name",
      "schema_valid": true,
      "stage": "field",
      "target_field": "name",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".alternateName",
      "schema_valid": true,
      "stage": "field",
      "target_field": "alternateName",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".shortDescription",
      "schema_valid": true,
      "stage": "field",
      "target_field": "shortDescription",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".description",
      "schema_valid": true,
      "stage": "field",
      "target_field": "description",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".extraInfo",
      "schema_valid": true,
      "stage": "field",
      "target_field": "extraInfo",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".category",
      "schema_valid": true,
      "stage": "field",
      "target_field": "category",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".location",
      "schema_valid": true,
      "stage": "field",
      "target_field": "location",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": "{\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}",
      "schema_valid": true,
      "stage": "field",
      "target_field": "source",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": ".dataProvider",
      "schema_valid": true,
      "stage": "field",
      "target_field": "dataProvider",
      "used_hints": true
    },
    {
      "attempt_number": 1,
      "compile_ok": true,
      "error_message": null,
      "execution_ok": true,
      "jq_expression": "{ \"id\": .id, \"type\": .type, \"name\": .name, \"alternateName\": .alternateName, \"shortDescription\": .shortDescription, \"description\": .description, \"extraInfo\": .extraInfo, \"category\": .category, \"location\": .location, \"source\": {\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}, \"dataProvider\": .dataProvider }",
      "schema_valid": true,
      "stage": "global",
      "target_field": null,
      "used_hints": true
    }
  ],
  "events": [
    {
      "payload": {
        "field_name": "id",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "id",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and type."
        },
        "prompt_payload": {
          "field_name": "id",
          "field_schema": {
            "type": "string"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": true,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"id\",\"reasoning\":\"Direct match of field name and type.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:35.946971+00:00"
    },
    {
      "payload": {
        "field_name": "type",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "type",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and type"
        },
        "prompt_payload": {
          "field_name": "type",
          "field_schema": {
            "type": "string"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": true,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"type\",\"reasoning\":\"Direct match of field name and type\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:37.880581+00:00"
    },
    {
      "payload": {
        "field_name": "name",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "name",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name with same structure."
        },
        "prompt_payload": {
          "field_name": "name",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"name\",\"reasoning\":\"Direct match of field name with same structure.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:40.290540+00:00"
    },
    {
      "payload": {
        "field_name": "alternateName",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "alternateName",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and structure."
        },
        "prompt_payload": {
          "field_name": "alternateName",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"alternateName\",\"reasoning\":\"Direct match of field name and structure.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:42.689451+00:00"
    },
    {
      "payload": {
        "field_name": "shortDescription",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "shortDescription",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and schema."
        },
        "prompt_payload": {
          "field_name": "shortDescription",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"shortDescription\",\"reasoning\":\"Direct match of field name and schema.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:45.308291+00:00"
    },
    {
      "payload": {
        "field_name": "description",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "description",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and schema."
        },
        "prompt_payload": {
          "field_name": "description",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"description\",\"reasoning\":\"Direct match of field name and schema.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:47.800060+00:00"
    },
    {
      "payload": {
        "field_name": "extraInfo",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "extraInfo",
          "confidence": 0.95,
          "identified": true,
          "reasoning": "Source path matches target field name and structure."
        },
        "prompt_payload": {
          "field_name": "extraInfo",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"extraInfo\",\"reasoning\":\"Source path matches target field name and structure.\",\"confidence\":0.95}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:50.995011+00:00"
    },
    {
      "payload": {
        "field_name": "category",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "category",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and structure."
        },
        "prompt_payload": {
          "field_name": "category",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"category\",\"reasoning\":\"Direct match of field name and structure.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:53.427435+00:00"
    },
    {
      "payload": {
        "field_name": "location",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "location",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and structure"
        },
        "prompt_payload": {
          "field_name": "location",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "properties": {
                  "coordinates": {
                    "items": {
                      "type": "number"
                    },
                    "type": "array"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"location\",\"reasoning\":\"Direct match of field name and structure\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:56.008886+00:00"
    },
    {
      "payload": {
        "field_name": "source",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "source",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and schema"
        },
        "prompt_payload": {
          "field_name": "source",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"source\",\"reasoning\":\"Direct match of field name and schema\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:50:58.663482+00:00"
    },
    {
      "payload": {
        "field_name": "dataProvider",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "match_result": {
          "candidate_source_path": "dataProvider",
          "confidence": 0.99,
          "identified": true,
          "reasoning": "Direct match of field name and structure."
        },
        "prompt_payload": {
          "field_name": "dataProvider",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "input_summary": {
            "path_count": 42,
            "paths": [
              "alternateName",
              "alternateName.metadata",
              "alternateName.type",
              "alternateName.value",
              "category",
              "category.metadata",
              "category.type",
              "category.value",
              "dataProvider",
              "dataProvider.metadata",
              "dataProvider.type",
              "dataProvider.value",
              "description",
              "description.metadata",
              "description.type",
              "description.value",
              "extraInfo",
              "extraInfo.metadata",
              "extraInfo.type",
              "extraInfo.value",
              "id",
              "location",
              "location.metadata",
              "location.type",
              "location.value",
              "location.value.coordinates",
              "location.value.coordinates[0]",
              "location.value.coordinates[1]",
              "location.value.type",
              "name",
              "name.metadata",
              "name.type",
              "name.value",
              "shortDescription",
              "shortDescription.metadata",
              "shortDescription.type",
              "shortDescription.value",
              "source",
              "source.metadata",
              "source.type",
              "source.value",
              "type"
            ],
            "root_type": "dict"
          },
          "output_schema": {
            "properties": {
              "alternateName": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "category": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "dataProvider": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "description": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "extraInfo": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "id": {
                "type": "string"
              },
              "location": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "properties": {
                      "coordinates": {
                        "items": {
                          "type": "number"
                        },
                        "type": "array"
                      },
                      "type": {
                        "type": "string"
                      }
                    },
                    "type": "object"
                  }
                },
                "type": "object"
              },
              "name": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "shortDescription": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "source": {
                "properties": {
                  "metadata": {
                    "type": "object"
                  },
                  "type": {
                    "type": "string"
                  },
                  "value": {
                    "type": [
                      "string",
                      "null"
                    ]
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "id",
              "type"
            ],
            "type": "object"
          },
          "required": false,
          "task": "match"
        },
        "response": "{\"identified\":true,\"candidate_source_path\":\"dataProvider\",\"reasoning\":\"Direct match of field name and structure.\",\"confidence\":0.99}",
        "system_prompt": "You perform semantic field matching between a target schema field and source JSON paths. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like match, result, mapping, output, or data. Use exactly these keys: \"identified\", \"candidate_source_path\", \"reasoning\", \"confidence\". \"identified\" must be a JSON boolean. \"candidate_source_path\" must be a string path or null. \"reasoning\" must be a short string. \"confidence\" must be a JSON number between 0.0 and 1.0. If no reliable match exists, return identified=false, candidate_source_path=null, a brief reasoning string, and confidence=0.0. Example valid output: {\"identified\":true,\"candidate_source_path\":\"datetime\",\"reasoning\":\"The source field semantically matches the target date.\",\"confidence\":0.92}",
        "used_hints": true
      },
      "stage": "semantic_match",
      "timestamp": "2026-05-19T06:51:01.314936+00:00"
    },
    {
      "payload": {
        "field_name": "id",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".id",
        "prompt_payload": {
          "candidate_source_path": "id",
          "field_name": "id",
          "field_schema": {
            "type": "string"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": "trailroute_lr-01",
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".id\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:04.316937+00:00"
    },
    {
      "payload": {
        "field_name": "type",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".type",
        "prompt_payload": {
          "candidate_source_path": "type",
          "field_name": "type",
          "field_schema": {
            "type": "string"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": "PointOfInterest",
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".type\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:07.817228+00:00"
    },
    {
      "payload": {
        "field_name": "name",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".name",
        "prompt_payload": {
          "candidate_source_path": "name",
          "field_name": "name",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "Majalacabra"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".name\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:11.091327+00:00"
    },
    {
      "payload": {
        "field_name": "alternateName",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".alternateName",
        "prompt_payload": {
          "candidate_source_path": "alternateName",
          "field_name": "alternateName",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "LR-01"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".alternateName\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:14.324192+00:00"
    },
    {
      "payload": {
        "field_name": "shortDescription",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".shortDescription",
        "prompt_payload": {
          "candidate_source_path": "shortDescription",
          "field_name": "shortDescription",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "Dificultad: baja"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".shortDescription\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:18.701591+00:00"
    },
    {
      "payload": {
        "field_name": "description",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".description",
        "prompt_payload": {
          "candidate_source_path": "description",
          "field_name": "description",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "Comenzamos"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".description\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:23.959391+00:00"
    },
    {
      "payload": {
        "field_name": "extraInfo",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".extraInfo",
        "prompt_payload": {
          "candidate_source_path": "extraInfo",
          "field_name": "extraInfo",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "Encinar"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".extraInfo\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:28.373119+00:00"
    },
    {
      "payload": {
        "field_name": "category",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".category",
        "prompt_payload": {
          "candidate_source_path": "category",
          "field_name": "category",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "TrailRoute"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".category\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:31.869381+00:00"
    },
    {
      "payload": {
        "field_name": "location",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".location",
        "prompt_payload": {
          "candidate_source_path": "location",
          "field_name": "location",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "properties": {
                  "coordinates": {
                    "items": {
                      "type": "number"
                    },
                    "type": "array"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "type": "object"
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "geo:json",
            "value": {
              "coordinates": [
                -3.8565638,
                40.4845294
              ],
              "type": "Point"
            }
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".location\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:51:37.837980+00:00"
    },
    {
      "payload": {
        "field_name": "source",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": "{\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}",
        "prompt_payload": {
          "candidate_source_path": "source",
          "field_name": "source",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "portal-randev6"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\"{\\\"operationName\\\":\\\"createTrail\\\",\\\"query\\\":\\\"mutation { createTrail(input: { externalId: \\\\\\\"\\\\(.id)\\\\\\\", name: { value: \\\\\\\"\\\\(.name.value)\\\\\\\", lang: \\\\\\\"es\\\\\\\" }, shortDescription: { value: \\\\\\\"\\\\(.shortDescription.value)\\\\\\\", lang: \\\\\\\"es\\\\\\\" }, longDescription: { value: \\\\\\\"\\\\(.description.value)\\\\\\\", lang: \\\\\\\"es\\\\\\\" }, keyword: \\\\\\\"\\\\(.extraInfo.value)\\\\\\\", hasDescription: { externalId: \\\\\\\"\\\\(.alternateName.value)\\\\\\\" }, location: { lat: \\\\(.location.value.coordinates[1]), long: \\\\(.location.value.coordinates[0]), postalCode: \\\\\\\"28270\\\\\\\", municipality: \\\\\\\"Colmenarejo\\\\\\\", province: \\\\\\\"Madrid\\\\\\\", autonomousCommunity: \\\\\\\"Comunidad de Madrid\\\\\\\", country: \\\\\\\"Espa\u00f1a\\\\\\\" } }) { id } }\\\"}\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:52:26.860061+00:00"
    },
    {
      "payload": {
        "field_name": "dataProvider",
        "hint_hash": "ee23360c040fa8c3222c3137e38e7bf1057d6353fb6411454078417ec6ec3310",
        "jq_expression": ".dataProvider",
        "prompt_payload": {
          "candidate_source_path": "dataProvider",
          "field_name": "dataProvider",
          "field_schema": {
            "properties": {
              "metadata": {
                "type": "object"
              },
              "type": {
                "type": "string"
              },
              "value": {
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "type": "object"
          },
          "hints": "Transform an NGSI PointOfInterest trail entity into a GraphQL createTrail mutation payload. Build a JSON object with operationName and query. Use id as externalId. Use name.value as trail name with lang \"es\". Use shortDescription.value as shortDescription with lang \"es\". Use description.value as longDescription with lang \"es\". Use extraInfo.value as keyword. Use alternateName.value as hasDescription externalId. Map location.value.coordinates[0] to long and coordinates[1] to lat. Fallback location: postalCode \"28270\", municipality \"Colmenarejo\", province \"Madrid\", autonomousCommunity \"Comunidad de Madrid\", country \"Espa\u00f1a\".",
          "source_fragment": {
            "metadata": {},
            "type": "string",
            "value": "nec-ccoc"
          },
          "source_json": {
            "alternateName": {
              "metadata": {},
              "type": "string",
              "value": "LR-01"
            },
            "category": {
              "metadata": {},
              "type": "string",
              "value": "TrailRoute"
            },
            "dataProvider": {
              "metadata": {},
              "type": "string",
              "value": "nec-ccoc"
            },
            "description": {
              "metadata": {},
              "type": "string",
              "value": "Comenzamos"
            },
            "extraInfo": {
              "metadata": {},
              "type": "string",
              "value": "Encinar"
            },
            "id": "trailroute_lr-01",
            "location": {
              "metadata": {},
              "type": "geo:json",
              "value": {
                "coordinates": [
                  -3.8565638,
                  40.4845294
                ],
                "type": "Point"
              }
            },
            "name": {
              "metadata": {},
              "type": "string",
              "value": "Majalacabra"
            },
            "shortDescription": {
              "metadata": {},
              "type": "string",
              "value": "Dificultad: baja"
            },
            "source": {
              "metadata": {},
              "type": "string",
              "value": "portal-randev6"
            },
            "type": "PointOfInterest"
          },
          "task": "synthesize"
        },
        "response": "{\"jq_expression\":\".dataProvider\"}",
        "system_prompt": "You generate a jq expression for one target field. Return exactly one flat JSON object and nothing else. Do not wrap the result in markdown. Do not nest the result under keys like result, output, data, or expression. Use exactly this output schema: {\"jq_expression\": string}. \"jq_expression\" must be a JSON string containing only the jq expression for the target field. Use candidate_source_path as the primary source location, verify it against source_json, and use source_fragment as the focused local value. Do not return explanations or extra keys. Example valid output: {\"jq_expression\":\".datetime\"}",
        "used_hints": true
      },
      "stage": "jq_synthesis",
      "timestamp": "2026-05-19T06:52:30.385482+00:00"
    },
    {
      "payload": {
        "field_expressions": {
          "alternateName": ".alternateName",
          "category": ".category",
          "dataProvider": ".dataProvider",
          "description": ".description",
          "extraInfo": ".extraInfo",
          "id": ".id",
          "location": ".location",
          "name": ".name",
          "shortDescription": ".shortDescription",
          "source": "{\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}",
          "type": ".type"
        },
        "jq_filter": "{ \"id\": .id, \"type\": .type, \"name\": .name, \"alternateName\": .alternateName, \"shortDescription\": .shortDescription, \"description\": .description, \"extraInfo\": .extraInfo, \"category\": .category, \"location\": .location, \"source\": {\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}, \"dataProvider\": .dataProvider }",
        "validation_passed": true
      },
      "stage": "generation_complete",
      "timestamp": "2026-05-19T06:52:30.399544+00:00"
    },
    {
      "payload": {
        "jq_filter": "{ \"id\": .id, \"type\": .type, \"name\": .name, \"alternateName\": .alternateName, \"shortDescription\": .shortDescription, \"description\": .description, \"extraInfo\": .extraInfo, \"category\": .category, \"location\": .location, \"source\": {\"operationName\":\"createTrail\",\"query\":\"mutation { createTrail(input: { externalId: \\\"\\(.id)\\\", name: { value: \\\"\\(.name.value)\\\", lang: \\\"es\\\" }, shortDescription: { value: \\\"\\(.shortDescription.value)\\\", lang: \\\"es\\\" }, longDescription: { value: \\\"\\(.description.value)\\\", lang: \\\"es\\\" }, keyword: \\\"\\(.extraInfo.value)\\\", hasDescription: { externalId: \\\"\\(.alternateName.value)\\\" }, location: { lat: \\(.location.value.coordinates[1]), long: \\(.location.value.coordinates[0]), postalCode: \\\"28270\\\", municipality: \\\"Colmenarejo\\\", province: \\\"Madrid\\\", autonomousCommunity: \\\"Comunidad de Madrid\\\", country: \\\"Espa\u00f1a\\\" } }) { id } }\"}, \"dataProvider\": .dataProvider }",
        "output_json": {
          "alternateName": {
            "metadata": {},
            "type": "string",
            "value": "LR-01"
          },
          "category": {
            "metadata": {},
            "type": "string",
            "value": "TrailRoute"
          },
          "dataProvider": {
            "metadata": {},
            "type": "string",
            "value": "nec-ccoc"
          },
          "description": {
            "metadata": {},
            "type": "string",
            "value": "Comenzamos"
          },
          "extraInfo": {
            "metadata": {},
            "type": "string",
            "value": "Encinar"
          },
          "id": "trailroute_lr-01",
          "location": {
            "metadata": {},
            "type": "geo:json",
            "value": {
              "coordinates": [
                -3.8565638,
                40.4845294
              ],
              "type": "Point"
            }
          },
          "name": {
            "metadata": {},
            "type": "string",
            "value": "Majalacabra"
          },
          "shortDescription": {
            "metadata": {},
            "type": "string",
            "value": "Dificultad: baja"
          },
          "source": {
            "operationName": "createTrail",
            "query": "mutation { createTrail(input: { externalId: \"trailroute_lr-01\", name: { value: \"Majalacabra\", lang: \"es\" }, shortDescription: { value: \"Dificultad: baja\", lang: \"es\" }, longDescription: { value: \"Comenzamos\", lang: \"es\" }, keyword: \"Encinar\", hasDescription: { externalId: \"LR-01\" }, location: { lat: 40.4845294, long: -3.8565638, postalCode: \"28270\", municipality: \"Colmenarejo\", province: \"Madrid\", autonomousCommunity: \"Comunidad de Madrid\", country: \"Espa\u00f1a\" } }) { id } }"
          },
          "type": "PointOfInterest"
        },
        "schema_valid": true,
        "validation_errors": []
      },
      "stage": "transform_complete",
      "timestamp": "2026-05-19T06:52:30.406149+00:00"
    }
  ],
  "run_id": "c3f62010-efde-453c-b101-bd74f5db1f35"
}