bamaer commented on PR #8514: URL: https://github.com/apache/hop/pull/8514#issuecomment-5813753039
Thanks for the review. All six points are addressed in the latest commit. 1. **supportedCapabilities()**: the Ollama and OpenAI chat models now declare `RESPONSE_FORMAT_JSON_SCHEMA`, and OpenAI sets `strictJsonSchema(true)`. Captured requests confirm Ollama receives the schema as `format`, and OpenAI receives `response_format` with `json_schema`, `strict: true`, all properties in `required` and `additionalProperties: false`. Gemini, Grok and custom OpenAI compatible providers are not sent a schema, because they differ in which schema keywords they accept; they keep the prompt-only path. A test builds each provider's model through the factory and checks the response format on the request. 2. **Schema name**: characters outside `[A-Za-z0-9_-]` are replaced, the name is truncated to 64 characters, and `extraction` is used when nothing is left. "Structured extract" is sent as `Structured_extract`. 3. **Timestamp**: Timestamp fields return `java.sql.Timestamp`. Parsing uses `java.time`, so the whole value must match: `2026-03-01 oops` and `2026-02-30` are rejected. A date-time is tried before a date, so a returned time is kept. Timestamp fields are asked for as `yyyy-MM-ddTHH:mm:ss`, with an example. 4. **Trimmed names**: the answer is read by `trimmedName()`, and the dialog stores names trimmed. 5. **Allowed values**: an answer outside the list throws a `HopException` naming the field, the value and the list. An empty answer counts as outside the list for a required field. 6. **Duplicates**: `check` and `ExtractionSchema.build` compare names case-insensitively. The integration test now also runs against the schema path. It timed out on a 16 CPU Docker host because Ollama used all 16 threads. The test model is now a derived `qwen2.5-hop-it` with `num_thread 4`, and 0001 and 0002 pass. The user manual page is updated to match. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
