Suggestion: leverage pydantic for data schema of results
Recently, I've been doing some work with fastapi. One of the features I've really appreciated from it has been the ease of which you can define an input or output model, and validate that data is in the expected format. For this, fastapi uses pydantic (https://pydantic-docs.helpmanual.io/). In thinking about how salt/idem states should always output a known format {"name": name, "changes": {}, "result": True, "comment": ""}
this could be defined as a pydantic model to ensure state consistency. Furthermore, execution modules could define their own outputs, from which automatic schemas/docs could be generated. (This is probably a pop issue rather than idem)
Edited by Christian McHugh