According to the hierarchy diagram, if I copy clients/base/layouts/drawer layout to custom/modules/Calls/clients/base/drawer and modify anything (like add a console.log message in the initialise function), Sugar must load my custom layout instead of the core one and I should be able to see the change (the log message, in this case).
I even added a console.log message to the original drawer view while overriding it and I can see that after repairing and reloading Sugar only keeps showing that the original view is being initialised rather than the override.
How can I override the drawer layout in this case? My goal is to significantly modify the layout, so extending it would be impractical (and that does not work either - it's a layout, not a view. even though the JS file is like a view controller... I am confused).