CryoThrust commented on issue #11616:
URL: https://github.com/apache/seatunnel/issues/11616#issuecomment-5539075906

   Building on the agreed validation-result model, I suggest freezing the first 
contract around semantics rather than transport:
   
   - `schemaVersion`, `valid`, and `phase` are required; `phase` should 
describe config validation (`parse`, `options`, `plugin`) and must not imply 
runtime execution.
   - Keep `errors` and `warnings` as arrays, even if the first adapter reports 
one failure. This avoids changing the wire shape when validation becomes 
multi-error.
   - Each diagnostic should carry a stable `category` and optional `location`, 
`plugin`, and `optionPath`; `message` remains human-readable and sanitized. 
Clients should not branch on message text.
   - Serialization should be deterministic (field names, null handling, and 
ordering) and tested independently from the CLI formatter. The existing 
human-readable `--check` path and exit codes should remain unchanged.
   - Include a contract/version test fixture so future CLI, MCP, and REST 
adapters can verify compatibility without depending on an LLM provider.
   
   This keeps the first implementation small while making the model useful for 
the later AI repair loop. I would be happy to take a focused implementation 
after the field names and category vocabulary are confirmed by maintainers.
   


-- 
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]

Reply via email to