The theory is the program
Peter Naur · Programming as Theory Building, 1985
A program is not its text. The program is a theory held by the people who built it — a grasp of how the code maps onto the world, why it is shaped this way, and which changes are in keeping with it. The text is a residue. When the people holding the theory leave, it dies, and no amount of reading the code revives it.
So the reasoning is written down on purpose, and the parts that cannot be inferred from the code are stated explicitly. When the theory changes the document changes — not when the code changes, but when the reasoning does. That matters more than ever now that half the contributors arrive cold every session and can read every file without knowing which decisions were weighed and turned down.