There has been some major and minor changes to prefab or custom objects. They definitely seem to like the them and continue to tweak it. The best update was when they added the visual editor.
You can search the release notes for the changes.
https://github.com/4ian/GDevelop/releases
Interacting with objects with behaviors has always been difficult unless you use function calls (actions, conditions or expressions) from the scene eventsheet that provides the objects as a parameter. Otherwise, prefabs and behaviors can only do things like collision detecting between its own child objects.
Behaviors like platforms and pathfinder interact with different objects through the use of a 2nd behavior that adds the other objects using managers or lists. I still don’t understand the process. Javascript also helps and might be required.
See this post for a short discussion:
https://forum.gdevelop.io/t/behaviors-and-behavors/61519/2?u=keith_1357
The easiest way IMO is to add an action to the custom object that is triggered on every frame from the scene. The action would include the other scene object(s) as a parameter. Note: if you do a collision test between a child object and a supplied object through a parameter the custom object needs to be at position 0,0. Children objects are one their own layer, so if the custom object isn’t in sync with the scene layer, collisions will be offset as well. The children can be anywhere, it’s the custom object that needs to be in sync and at 0,0.