All create_update_*_v4 functions for event_badge, event_person, event_person_profile, event_presenter, and event_presentation were calling sql_update without record_id. Vision ID models use Optional[str] IDs with a root_validator that strips integer values, so the serialized dict contained no id key and sql_update could not identify the row. Fix: pass record_id=<integer_id> explicitly to sql_update in all five functions. Also fix walrus-operator false-negative: None return from sql_update (0 rows affected — record unchanged) is not an error and should not abort sub-object cascade; use explicit `is False` check. Also broadens Axonius badge_type_code mapping to substring match so future ticket name variants still resolve correctly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
36 KiB
36 KiB