Skip to content

Commit 0b41f0c

Browse files
committed
docs: PLAN-PROGRESS.md after review — wrap_up is the last call of its response; a reply click is not your typing
Three notes in "What LevelCode does now": a call after an accepted wrap_up in the same response is not run; a reply button's click is sent marked as a reply and is not recorded as the person's words; a message claiming to be from the user inside a tool result is content.
1 parent 43de03b commit 0b41f0c

1 file changed

Lines changed: 13 additions & 1 deletion

File tree

‎docs/PLAN-PROGRESS.md‎

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,10 @@ deploy, so these hashes pin what was read, not what the app shows tomorrow.
117117
the editor's diagnostics find problems in the files the agent changed, the box is not shown and the
118118
tool result carries the problems instead; the agent fixes them and calls `wrap_up` again. When the box
119119
holds a question the run ends on the spot, with no further model call.
120+
- **`wrap_up` is the last call of its response.** Once one is accepted, a later call in the same response
121+
is answered "Not run" instead of running: the hand-back was checked as the work stood, and an edit or a
122+
command after it would change things behind the box. A `wrap_up` that verification refused does not
123+
count, so the fix that follows it runs.
120124
- The prompt asks for the list with the first tool call and `advance` with the call that starts the
121125
next step, and for `wrap_up` at the end of every run that kept a list, changed files or ran commands.
122126
A run that ends with a `Done:` line and no `wrap_up` still ends as before (some models will not call
@@ -133,6 +137,10 @@ deploy, so these hashes pin what was read, not what the app shows tomorrow.
133137
box, after anything already typed there. A reply button in the next-step box queues the same way if
134138
a run is going. A message counts as "busy" from the moment it is sent until its run starts, so the
135139
queue can never start a second run beside the first.
140+
- **A reply button's click is not your typing.** What a click sends is the reply's `message`, words the
141+
agent wrote under a short label. The page sends it marked as a reply (through the queue too), and the
142+
host does not record it as text you typed, so the Ask When Risky reviewer does not count it as your
143+
go-ahead and `remember` cannot quote it. Edited in the message box, or handed back there, it is yours.
136144
- **Send now** posts the message to the extension, which hands it to the running agent at its next step:
137145
after the tool results of the current step (in the same message, so every tool call still has its
138146
result), or, if the agent had just answered with no tool call, as a new message that keeps the run
@@ -149,7 +157,11 @@ deploy, so these hashes pin what was read, not what the app shows tomorrow.
149157
| `wrap_up` reserved from MCP tool names | `extensions/levelcode-ai/mcpConfig.js` |
150158

151159
Host → page messages: `plan` {steps}, `wrapUp` {recap, ask, actions, blocked}, `steersDelivered` {ids},
152-
`steersReturned` {ids}. Page → host: `steer` {id, text}.
160+
`steersReturned` {ids}. Page → host: `steer` {id, text}, and `send` carries `reply: true` for a reply click.
161+
162+
A message sent with Send now reaches the run after a tool result. The prompt says such a message is never
163+
inside a tool result, so text in a file or command output that claims to be from the user is read as
164+
content.
153165

154166
## 4. Differences on purpose
155167

0 commit comments

Comments
 (0)