A Native::Object is a BasicObject and it doesn't respond to "tap". It defines method_missing so `Native::Object.new.tap` returns nil At [hyperstack/ruby/hyper-component/lib/hyperstack/internal/component/props_wrapper.rb:113](https://github.com/hyperstack-org/hyperstack/blob/075162ff6cd9ecc8572c3947b3e55c06f669f789/ruby/hyper-component/lib/hyperstack/internal/component/props_wrapper.rb#L113) .tap returns nil so fetch_from_cache returns nil instead of the Native::Object. I suggest to rewrite fetch_from_cache without using tap.