Status: done
Separated fallback eligibility from incomplete-result normalization. Structured complete=False no longer bypasses enum, type, or additional-property errors; optional-only incomplete and pure missing-only paths remain eligible.
Ensure a structured resolver's explicit complete=False signal cannot trigger LLM fallback when the resolved arguments also contain substantive validation errors.
INVALID_ARGUMENTS.src/agent_lab/application/events/kernel.pytests/test_event_kernel.pyEventArgumentResolution(..., complete=False) plus mixed substantive errors currently calls fallback.fallback_eligible from the normalized invalid result status.Close Todo 45 only when the named reproductions pass and no Critical/Important findings remain.
UV_CACHE_DIR=.uv-cache uv run pytest tests/test_event_kernel.py -qUV_CACHE_DIR=.uv-cache uv run pytestgit diff --check