Package addition/tweaking system

Imagine there was a package A, which was incomplete for all use cases, but then, you want to add tweaks to it for your use, so you might add some methods to the package function for some compatibility with package B, but you might not be the package developer, or maybe it’s an additive tweak which should not be turned on by default, or some other reasons, so not an extension, but a custom tweak.

For example, if package A adds a method “print_to_custom_file” and wants you to add custom methods for all the types you’d want…
Now, under normal circumstances, doing so would be considered type piracy. How would you signal “taking over ownership of package A” to it? Now, the problem gets more complicated if the package has more than one tweak. How’d you handle the package ownership system? Would we have to do some serious borrow/fine-grained burrow system? How would it end?