githubnext/chopinPublic

Let's compose rich plans together

Give the agent accepted comments to act on

read_plan lists accepted threads only, with whether each has been actioned. An
open one is a conversation the room is still having, and acting on feedback
nobody accepted would make the button decorative; a dismissed one was decided
against. Listing the actioned flag is what lets the agent handle several
outstanding threads in one pass, which is what the queue's spent-turn check
then makes worth doing.

anchor_plan takes a thread as an alternative to widget/question/relation, so
one tool and one anchors_pending list cover both kinds of decision. Only
'blocks' stays required, matching how edit_plan's operations already work;
relate names what is missing.

edit_plan refuses to author Decision or Note, and refuses to delete or replace
a Decision block. detach_question exists because removing a questionnaire had
to be a deliberate act — a decision is less removable than a question, not
more, and the record it projects has no way to hear that it is gone.
KCKrzysztof Cieslak authored committed by Krzysztof Cieślak
baadbcePatch
Parentffcdba3
4 files changed+159-29
StackedSplit
apps/server/src/agent/planner.ts+14 −4
apps/server/src/agent/tools.ts+70 −21
apps/server/src/plan/edit.test.ts+38 −0
apps/server/src/plan/edit.ts+37 −4