If we want to keep the endpoint filling the gaps in the timeline, we will need to fill them with an object that looks like an actual entry for this to work according to an OpenAPI specification.
This means that the engine would need to recognize these entries and handle them differently and this means that we would need to hard-code this on both sides.
The alternative would be to change the API and provide both types of entries (actual timeslots and a gap filling entries) in two separate lists.
I understand, but the filling of gaps feature with virtual timeslots is not yet complete, that we can use it anyway. This concept should not only applied to the /playout endpoint but also to the endpoints which Dashboard is using (to display the gaps), plus the endpoints which are used on the website.
Otherwise it does not utilize its purpose to its full extend: Generate the virtual timeslots once (Steering) - use them everywhere.
But I guess that you are referring to the fact, that the /playout endpoint is currently returning virtual timeslots with a limited schema/properties:
Engine actually needs all the details like a Show and Note details, that it can provide proper playlogs. This should be derived from a so-called "Station Fallback Show" in Steering. Actually in the early days of AURA there was such a property in Steering added by Ingo. At this point it was only a stub, with no logic yet. But we where not thinking far enough and thought it might be more simple to remove this setting at first.
So what is missing, that we add a way to configure such "Station Fallback Show" in Steering.
As soon you have such information in Steering, you can populate virtual timeslots the same way as ordinary timeslots. And also the schema can be validated easily.