Vamsi-klu commented on PR #65992: URL: https://github.com/apache/airflow/pull/65992#issuecomment-4966077517
Dug into `smart_decode_trigger_kwargs` and the root cause checks out. The old `Encoding.TYPE not in d` guard compares against `__type`, but the asset watcher kwargs that went through both BaseSerialization and serde persisted their keys as the stringified enum names `Encoding.TYPE`/`Encoding.VAR`, so the guard fell through and the raw marker dict got handed straight to the trigger constructor. `_normalize_stringified_encoding_keys` remapping those keys back to the enum members before the `Encoding.VAR in d` check, plus the recursion into non-wrapper dicts, lines up with the shape from #65973, and a normally serialized `__type`/`__var` payload still lands on the same `deserialize` path so nothing regresses. One nit, the recursive branch re-normalizes children the top-level call already walked, so the tree gets traversed twice, but it's idempotent and the kwargs are tiny so not worth blocking. Nice that the test drives it through `runner.create_triggers()` rather than poking the dec oder directly. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
