The one’s not a side effect of the other, though. They’re actually very separate issues. Many of the concerns you raise are extremely valid, but I think you’re lumping together three very different things under the name “Immutable Ledger”. (The lead post in this thread is too, FWIW.)
- The cancellation workflow
- Forward-only stock entry posting
- The actual immutability of the stock and accounting ledgers
For (1), I think we’re going to just have to agree to disagree. If you don’t like the aesthetics of document cancellation, that’s your prerogative of course, but I believe you are incorrect in attributing problems to it. The cancellation workflow is informationally and semantically equivalent to the reversal document workflow you have described, and none of the problems you’re describing would be avoided by the reversal entry workflow. All of the (very real) problems you are describing are cause by a different thing: (2) Forward-only stock entry posting. That’s the real issue here.
This is incorrect. Look for the GL Entry
or Stock Ledger Entry
doctypes. The system prevents you from manually creating new entries here, but they’re readable and otherwise permissionable like anything else.
An immutable ledger is a basic condition of any trustworthy accounting system. Accountants use pens, not pencils. It should have been this way from the start, and it’s not something you want administrators turning on or off with a checkbox.
What still needs serious rethinking, however, is Forward-only stock entry postings. Unlike Immutability, which is central to all accounting standards, stock valuation is complicated. The correct answer here is probably going to involve Stock Accounting Periods, but figuring out how to balance flexibility and system integrity is non-trivial.