Status: done
Closed negation and malformed numeric side-effect gaps, canonicalized integral floats, preserved fallback provenance, restored standard RFC3339 behavior, and kept positional definition constructors compatible.
Close the remaining quality-gate findings without expanding plugin behavior or generic orchestration scope.
不静音, 不用静音, 无需静音, no mute, and equivalent negations as substantive invalid input with no LLM fallback or port call.40.5, 10.5, and 1,000 without truncating them into valid integers.2.0, 40.0) to Python int for volume, search, and schedule numeric fields before ports/cache keys.used_fallback=True when a post-fallback normalizer fails.jsonschema RFC3339 date-time checker; keep only the custom iana-timezone checker.EventDefinition and ToolDefinition construction keeps its historical meaning.src/agent_lab/application/events/models.pysrc/agent_lab/application/events/kernel.pysrc/agent_lab/application/events/registry.pysrc/agent_lab/application/events/builtin_plugins.pysrc/agent_lab/application/tools.pytests/test_event_kernel.pytests/test_builtin_event_plugins.pyt/z RFC3339 acceptance while retaining invalid-calendar rejection.Close Todo 47 only when no Critical/Important findings remain and all external side effects are protected by canonical validated arguments.
UV_CACHE_DIR=.uv-cache uv run pytest tests/test_event_kernel.py tests/test_builtin_event_plugins.py -qUV_CACHE_DIR=.uv-cache uv run pytestgit diff --check