The bpo i referenced can explain it better. An example;
def foo(): pass
assert foo.__code__.co_filename = os.path.abspath(foo.__code__.co_filename)
Do realize there's a reason that issue has been open for well over five years: changing this will probably break code. And so you need to justify why you think that's acceptable since Python has existed with these semantics on code objects for decades as this point.