Repository navigation
/ndd should rule what it can articulate and report only when the human must act #307
Description
Ask
/human-fsm:ndd should produce a report only when the human has to do something. Otherwise it should rule and say so in a line.
What happens now
/ndd ends with "This command does not rule — it is the read that precedes the human's word", so every one of its three findings produces the same full presentation: row, issue intent, diff read, option space, recommendation, drafted work order.
That is right for one of the three. It is waste for the other two.
- Genuine question — the human must choose. Full report earned.
- Already answered — the command's own text says the pointer IS the finding and "do not re-derive it as if it were open". A full read of a settled question is the re-derivation it forbids.
- Misroute — the finding is that no human decision was needed. Producing a decision document for it is self-contradictory.
Measured on today's run: four /ndd invocations, one genuine question. The other three were already-answered or misrouted and each got several hundred words. rain.tofu.erc20-decimals#31 was "you ruled this an hour ago on #28, here is the work order" delivered as a full read.
Why this is the same fix #297 already made
#297 changed /nr from "does not merge and does not rule" to if you can articulate it, send it back — not forward, and #298 carried it to /nm and /ncc. /ndd was not touched and still carries the old wording.
Under that rule, two of /ndd's three findings are send-backs the command should take itself: an already-answered question exits with the existing answer as the work order, and a misroute exits with the correction. Only the genuine question reaches the human.
Shape
- Apply /nr sends back anything it can articulate, instead of presenting it #297's rule:
/nddrules what it can articulate rather than presenting it. Grant ithuman_ruleas/nmwas granted it in /nm and /ncc send back what they can articulate #298. - Report length follows the finding, and the command should say so:
- genuine question → the full presentation, unchanged
- already answered → the pointer, the ruling taken, the work order. A line or three.
- misroute → what the correct state was, the ruling taken. Same.
- Keep the row's
urlin every case (/ndd reports omit the PR url, so the reader has to reconstruct the link #304), so even the one-line form is clickable.
The judgement this must not lose
"Only report if the human must act" is not licence to skip the checking. The finding is only reachable BY doing the read — deriving intent from the issue, reading the diff against it, testing the question's premise. What shrinks is the write-up of a check whose answer was "nothing for you here", not the check.
A command that stopped reading and started guessing which questions are real would fail exactly where this one has been useful: three of four questions today did not survive a second read, and that is only knowable after the read.
Activity