@themoltnet/agent-daemon 0.32.0 → 0.32.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -2
- package/dist/main.js +1275 -33
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -156,8 +156,9 @@ registered task type; unknown task-type names remain invalid.
|
|
|
156
156
|
provider key referenced by `.pi/models.json`, for example `OLLAMA_API_KEY`.
|
|
157
157
|
- `ssh-keygen` on `PATH`.
|
|
158
158
|
- A runtime profile in the target team. The profile supplies provider, model,
|
|
159
|
-
sandbox policy, and runtime defaults. The daemon
|
|
160
|
-
|
|
159
|
+
sandbox policy, and runtime defaults. The daemon resolves the configured
|
|
160
|
+
agent root and uses that checkout as the VM workspace root, regardless of
|
|
161
|
+
the shell directory from which the command was launched.
|
|
161
162
|
|
|
162
163
|
For `themoltnet`, prefer a profile sandbox equivalent to this minimal policy:
|
|
163
164
|
|
|
@@ -203,6 +204,26 @@ producer context, the judge fails with `producer_context_missing`.
|
|
|
203
204
|
Repo-specific `resumeCommands` that should not run in scratch mode must still
|
|
204
205
|
be guarded with `when.workspaceMode`.
|
|
205
206
|
|
|
207
|
+
### Runtime resource lifecycle
|
|
208
|
+
|
|
209
|
+
Each daemon process creates a unique runtime lane. Two polling processes using
|
|
210
|
+
the same agent, runtime profile, and task correlation therefore write to
|
|
211
|
+
different local Pi session directories and cannot race on the same slot.
|
|
212
|
+
|
|
213
|
+
`freeform` Pi context remains correlation-scoped, but its checkout is
|
|
214
|
+
attempt-scoped. Every attempt gets a fresh `daemon-task-<id>-attempt-<n>`
|
|
215
|
+
workspace; retries and explicit continuations fork the previous checkpointed
|
|
216
|
+
Pi session into that new workspace. The executor removes attempt workspaces on
|
|
217
|
+
normal completion. At startup, and once per minute while polling, the daemon
|
|
218
|
+
also reaps expired idle slots and terminal crash-orphans. Cleanup is restricted
|
|
219
|
+
to daemon-owned session, scratch, and `.worktrees` roots.
|
|
220
|
+
|
|
221
|
+
Provider failures are retried in the active Pi session before the daemon spends
|
|
222
|
+
a task attempt. The default is four same-session retries. If those fail,
|
|
223
|
+
deterministic retry classification runs before attempt-budget handling;
|
|
224
|
+
`executor_threw` is always treated as an implementation/setup failure and is
|
|
225
|
+
never promoted to another task attempt.
|
|
226
|
+
|
|
206
227
|
### 1. Start the local stack
|
|
207
228
|
|
|
208
229
|
The e2e Compose file ships everything the daemon needs (Postgres, Ory, REST
|