@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.
Files changed (3) hide show
  1. package/README.md +23 -2
  2. package/dist/main.js +1275 -33
  3. 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 mounts the current working
160
- directory as the VM workspace root.
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