Is this a typical definition of idempotency? One where you have to be idempotent even when another system is in play? I wouldn't expect anything to be idempotent if something else can come along and change arbitrary state.
In simple mathematical terms idempotency is A such that AA=A.<p>Let X be the action "all your servers crashed and were deleted". The piece is saying that AXA is not necessarily A.<p>Indeed.
Faux idempotency exists, but this blog post does not illustrate it.<p>The post-condition of "touch file.txt" is to "make sure that file.txt exists and is writeable by user". As long as the command succeeds, that post-condition will be true. This makes command idempotent.
Note that a bad permission, FS errors, or even running out of disk space will cause the command to fail. This is fine, idempotency talks about what happens if operation was applied. If it could not be applied, no promises are made.<p>Yes, ">>" is generally not idempotent except some circumstances. You can make an idempotent system out of it, but you have to be careful. Nothing "faux" there.<p>The same rules deal with limited resources -- there are no guarantees your tests may run, only that if they do run, they run in identical way.
Google cache, as the site is having trouble for me at the moment:<p><a href="http://webcache.googleusercontent.com/search?q=cache:_QnG_r4UWOsJ:https://paperless.blog/faux-idempotency&client=ubuntu&hl=en&gl=us&strip=1&vwsrc=0" rel="nofollow">http://webcache.googleusercontent.com/search?q=cache:_QnG_r4...</a>