lobstah 0.6.8 → 0.6.9
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/dist/main.js +468 -412
- package/dist/runner.js +7 -8
- package/docs/configuration.md +1 -0
- package/package.json +1 -1
package/dist/runner.js
CHANGED
|
@@ -922,6 +922,7 @@ function parseAttentionKinds(raw) {
|
|
|
922
922
|
}
|
|
923
923
|
var DEFAULT_SOAK = {
|
|
924
924
|
deferSecs: 90,
|
|
925
|
+
claimIdleNoticeSecs: 180,
|
|
925
926
|
ttlSecs: 1800,
|
|
926
927
|
beat: true,
|
|
927
928
|
pausedTtlSecs: 86400,
|
|
@@ -1062,14 +1063,6 @@ function readWatch(key) {
|
|
|
1062
1063
|
}
|
|
1063
1064
|
}
|
|
1064
1065
|
|
|
1065
|
-
// packages/core/dist/inbox.js
|
|
1066
|
-
import * as fs12 from "node:fs";
|
|
1067
|
-
import * as path10 from "node:path";
|
|
1068
|
-
|
|
1069
|
-
// packages/core/dist/soak.js
|
|
1070
|
-
import * as fs11 from "node:fs";
|
|
1071
|
-
import * as path9 from "node:path";
|
|
1072
|
-
|
|
1073
1066
|
// packages/core/dist/queue.js
|
|
1074
1067
|
import * as fs7 from "node:fs";
|
|
1075
1068
|
import * as path6 from "node:path";
|
|
@@ -1396,6 +1389,10 @@ function cancelRequested(id, lane) {
|
|
|
1396
1389
|
return fs7.existsSync(path6.join(laneDirs(lane).active, id, "cancel"));
|
|
1397
1390
|
}
|
|
1398
1391
|
|
|
1392
|
+
// packages/core/dist/soak.js
|
|
1393
|
+
import * as fs11 from "node:fs";
|
|
1394
|
+
import * as path9 from "node:path";
|
|
1395
|
+
|
|
1399
1396
|
// packages/core/dist/evidence.js
|
|
1400
1397
|
import * as fs8 from "node:fs";
|
|
1401
1398
|
function readEvidence(id, lane) {
|
|
@@ -1687,6 +1684,8 @@ function readSessionClaim(id, lane) {
|
|
|
1687
1684
|
}
|
|
1688
1685
|
|
|
1689
1686
|
// packages/core/dist/inbox.js
|
|
1687
|
+
import * as fs12 from "node:fs";
|
|
1688
|
+
import * as path10 from "node:path";
|
|
1690
1689
|
var metaName = (file) => file.replace(/\.msg$/, ".meta.json");
|
|
1691
1690
|
function inboxDir(id, lane) {
|
|
1692
1691
|
return path10.join(laneDirs(lane).inbox, id);
|
package/docs/configuration.md
CHANGED
|
@@ -105,6 +105,7 @@ send a continuation.
|
|
|
105
105
|
| Key | Default | Meaning |
|
|
106
106
|
|---|---|---|
|
|
107
107
|
| `deferSecs` | `90` | A soaking session whose park heartbeat is this fresh holds unaddressed matching bait — the daemon waits instead of spawning. Addressed bait (`--for session:<id>`) waits regardless, until the registration is gone. |
|
|
108
|
+
| `claimIdleNoticeSecs` | `180` | Grace period after a trap claims a dispatch before the daemon raises a `trap-claim-idle` notice if the worker has not reported. Fresh park or tool heartbeats do not acknowledge delivery. The notice does not release the claim; the original brief is re-delivered at the trap's next park, including after it resumes under a new session id. |
|
|
108
109
|
| `ttlSecs` | `1800` | Heartbeat age past which a registration is a ghost trap: the sweep removes it and requeues an unfinished catch, finalizes done/failed in `done/`, or finalizes a cancelled catch as failed. A fresh `lobstah report` or beat counts as liveness. If the daemon's own tick gap exceeds this TTL, it grants a full TTL after resume before sweeping any traps. |
|
|
109
110
|
| `beat` | `true` | The post-tool hook (`lobstah soak beat`) refreshes a soaking session's liveness and writes its catch's activity, at most once per 30 seconds per trap. With `false` the hook does nothing, and a trap's liveness comes from its reports and its park only. |
|
|
110
111
|
| `signOffGraceSecs` | `600` | After a trap signs off, its address is held this long: messages to it wait for a re-soak of the same worktree instead of bouncing, `send` to it queues with a warning, and work addressed to it raises no `bait-orphaned` notice. After the grace the daemon bounces the held messages. `0` bounces at sign-off. |
|