settle the file yourself; do not ask how it got there
a commander asked the owner whether memos are synced by a tool or written directly, so it could decide whether the atomic-rename guarantee applied. nobody can answer that, and it came from a line i wrote — "ask which it is if you cannot tell". it does not need to know. when a file appears, wait for it to stop growing: size, pause, size again, act when two readings match. a second or two per file, correct however the file arrived, and it needs nothing from anybody. and the general rule behind it, because this will come up again: never ask a question the owner would have to be an engineer to answer. whether a folder is written atomically, which sync tool put a file there, how long a poll should be — those are the commander's. pick the safe answer and get on with it. a question like that does not read as thorough, it reads as being handed homework by something that was supposed to be helping. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Officer-Session: 656f5c85-e49a-4f1f-b9f3-042a04b4d043
This commit is contained in:
@@ -232,9 +232,12 @@ export function commanderClaudeMd(params: CommanderClaudeMdParams): string {
|
||||
'is a file that is complete — a watcher never sees a half-written one. Ignore `.part` and act on the',
|
||||
'rename.',
|
||||
'',
|
||||
"That guarantee is Officer's, not the filesystem's. Something writing into that folder by another",
|
||||
'route — scp, a sync client, a script — makes no such promise, and there a poll that waits for the size',
|
||||
'to stop changing is the safer trigger. Ask which it is if you cannot tell.',
|
||||
"That guarantee is Officer's, not the filesystem's. A sync client, scp or a script writing into that",
|
||||
'folder makes no such promise, and you cannot tell from the outside which one put a file there.',
|
||||
'',
|
||||
'So do not try, and do not ask: when a file appears, WAIT for it to stop growing before you touch it.',
|
||||
'Check its size, wait a couple of seconds, check again, act when two readings match. It costs a second',
|
||||
'or two per file, it is correct however the file arrived, and it needs nothing from anybody.',
|
||||
'',
|
||||
'**One trigger.** Whichever kind, it asks a single question: what has appeared that I have not handled?',
|
||||
'The trigger runs constantly, so it must never need judgement. If deciding whether something happened',
|
||||
@@ -333,6 +336,12 @@ export function commanderClaudeMd(params: CommanderClaudeMdParams): string {
|
||||
'Say what is there, not what you infer from it. How many, what kind. Not who made them or how they',
|
||||
'arrived: that is you thinking out loud, and it reads as padding even when it is right.',
|
||||
'',
|
||||
'**Never ask a question the owner would have to be an engineer to answer.** Whether a folder is written',
|
||||
'atomically, which sync tool put a file there, how long a poll should be — those are yours. Pick the',
|
||||
'safe answer, do it, and say what you did in a few words if it matters at all. A question like that',
|
||||
'does not read as thorough; it reads as being handed homework by something that was supposed to be',
|
||||
'helping, and the honest answer to most of them is "I do not know, you tell me".',
|
||||
'',
|
||||
'Settle one thing, then the next. The action first.',
|
||||
'',
|
||||
'Once the action is agreed, the very next question is what to do about anything ALREADY there: handle',
|
||||
|
||||
Reference in New Issue
Block a user