@senpi/runtime 3.0.90 → 3.0.91
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/cli/guide-commands.d.ts.map +1 -1
- package/dist/cli/guide-commands.js +7 -4
- package/dist/cli/guide-commands.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/runtime/runtime.d.ts +19 -0
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +85 -22
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/update-apply-deps.d.ts +27 -0
- package/dist/runtime/update-apply-deps.d.ts.map +1 -1
- package/dist/runtime/update-apply-deps.js +46 -0
- package/dist/runtime/update-apply-deps.js.map +1 -1
- package/dist/runtime/update-handler.d.ts +18 -2
- package/dist/runtime/update-handler.d.ts.map +1 -1
- package/dist/runtime/update-handler.js +23 -1
- package/dist/runtime/update-handler.js.map +1 -1
- package/dist/runtime/update-plan.d.ts.map +1 -1
- package/dist/runtime/update-plan.js +42 -15
- package/dist/runtime/update-plan.js.map +1 -1
- package/dist/runtime/update-register.d.ts +10 -17
- package/dist/runtime/update-register.d.ts.map +1 -1
- package/dist/runtime/update-register.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
|
@@ -46,6 +46,20 @@ function refusal(code, parts) {
|
|
|
46
46
|
function scannerNames(config) {
|
|
47
47
|
return (config.scanners ?? []).map((s) => String(s.name));
|
|
48
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* External scanners only, in declaration order.
|
|
51
|
+
*
|
|
52
|
+
* The index half of the state key counts external scanners alone — the launcher walks
|
|
53
|
+
* `ExternalScannerSpec[]`, not the whole `scanners` block — so an internal scanner added, removed
|
|
54
|
+
* or moved above them changes the recipe's array positions without changing any state directory.
|
|
55
|
+
* Comparing the full block would refuse edits that are entirely safe, and, worse, would report the
|
|
56
|
+
* wrong names for the ones that are not.
|
|
57
|
+
*/
|
|
58
|
+
function externalScannerNames(config) {
|
|
59
|
+
return (config.scanners ?? [])
|
|
60
|
+
.filter((s) => String(s.type) === "external_scanner")
|
|
61
|
+
.map((s) => String(s.name));
|
|
62
|
+
}
|
|
49
63
|
/**
|
|
50
64
|
* Structural changes: the ones that orphan state the runtime keys on, rather than merely changing
|
|
51
65
|
* behaviour. Each names what would be orphaned, because "refused" without that is a dead end.
|
|
@@ -86,21 +100,34 @@ function structuralRefusals(current, next) {
|
|
|
86
100
|
`directory first.`,
|
|
87
101
|
}));
|
|
88
102
|
}
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
103
|
+
// The index half of the key, checked on the only thing that decides it: where each surviving
|
|
104
|
+
// external scanner sits now versus where it sat before.
|
|
105
|
+
//
|
|
106
|
+
// Comparing the survivors' RELATIVE order instead — which is what this did — cannot see an insert
|
|
107
|
+
// or a remove, because both leave the survivors in the same order as each other while moving
|
|
108
|
+
// every one of them. Inserting a scanner at the top of the block shifts all of them down a slot,
|
|
109
|
+
// silently repointing each at the previous occupant's state directory: cached cohorts, first-seen
|
|
110
|
+
// ledgers and dedup rings all read as another scanner's, with no error anywhere. An absolute
|
|
111
|
+
// comparison catches that, still catches a plain reorder, and still permits an append, which
|
|
112
|
+
// moves nobody.
|
|
113
|
+
const beforeExternal = externalScannerNames(current);
|
|
114
|
+
const afterExternal = externalScannerNames(next);
|
|
115
|
+
const moved = beforeExternal
|
|
116
|
+
.map((name, from) => ({ name, from, to: afterExternal.indexOf(name) }))
|
|
117
|
+
.filter((s) => s.to !== -1 && s.to !== s.from);
|
|
118
|
+
if (moved.length > 0) {
|
|
119
|
+
out.push(refusal(UPDATE_CODE.scannerReordered, {
|
|
120
|
+
yamlPath: "scanners",
|
|
121
|
+
what: `These external scanners change position in the block: ` +
|
|
122
|
+
moved.map((m) => `${m.name} (${m.from} → ${m.to})`).join(", "),
|
|
123
|
+
why: "External scanner state is keyed on the array index as well as the name, so a scanner " +
|
|
124
|
+
"that moves is repointed at another's state directory or at an empty one — losing cached " +
|
|
125
|
+
"cohorts, first-seen ledgers and dedup rings silently. Inserting or removing a scanner " +
|
|
126
|
+
"moves every external scanner below it, not only the one that was edited. It also " +
|
|
127
|
+
"changes the staggered start order.",
|
|
128
|
+
fix: "Keep each existing external scanner at its current position. Adding one at the END of " +
|
|
129
|
+
"the block moves nothing and is safe.",
|
|
130
|
+
}));
|
|
104
131
|
}
|
|
105
132
|
// Action state lives at `strategies/{address}/actions/{name}/`, so a type change under a stable
|
|
106
133
|
// name hands a different action class the previous one's persisted state.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-plan.js","sourceRoot":"","sources":["../../src/runtime/update-plan.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"update-plan.js","sourceRoot":"","sources":["../../src/runtime/update-plan.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,24 +13,17 @@
|
|
|
13
13
|
* The module owns no logic beyond adapting a gateway context into the handler's dependencies, so
|
|
14
14
|
* everything worth testing lives in `update-handler.ts` and tests never drive a gateway.
|
|
15
15
|
*/
|
|
16
|
-
import type { Finding } from "../validate/types.js";
|
|
17
|
-
import type { DslState } from "../types/dsl/index.js";
|
|
18
16
|
import type { RuntimeConfig } from "./runtime-schema.js";
|
|
19
|
-
import { type RecipeSource, type
|
|
20
|
-
/**
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
}>;
|
|
30
|
-
verifyProof(packageDir: string): Promise<{
|
|
31
|
-
ok: boolean;
|
|
32
|
-
finding?: Finding;
|
|
33
|
-
}>;
|
|
17
|
+
import { type RecipeSource, type UpdateHandlerDeps } from "./update-handler.js";
|
|
18
|
+
/**
|
|
19
|
+
* The plugin surface this needs. Explicit, so the module never reaches into the boot closure.
|
|
20
|
+
*
|
|
21
|
+
* Extends {@link UpdateHandlerDeps} rather than restating it. Restating it is what let the two
|
|
22
|
+
* drift: a gateway context that still declared the old one-argument `verifyProof` type-checked
|
|
23
|
+
* against a handler that had grown a second parameter, so the stricter check silently went unused
|
|
24
|
+
* on the only path a user can actually reach.
|
|
25
|
+
*/
|
|
26
|
+
export interface UpdateGatewayContext extends UpdateHandlerDeps {
|
|
34
27
|
/**
|
|
35
28
|
* Swap a running runtime onto the new recipe, and record it.
|
|
36
29
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-register.d.ts","sourceRoot":"","sources":["../../src/runtime/update-register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;
|
|
1
|
+
{"version":3,"file":"update-register.d.ts","sourceRoot":"","sources":["../../src/runtime/update-register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAGL,KAAK,YAAY,EAEjB,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAG7B;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAqB,SAAQ,iBAAiB;IAC7D;;;;;;;OAOG;IACH,cAAc,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7F,aAAa,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE;;;;;;;OAOG;IACH,SAAS,CAAC,CAAC,IAAI,EAAE;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,YAAY,CAAC;QACrB,cAAc,EAAE,YAAY,CAAC;QAC7B,iBAAiB,EAAE,OAAO,CAAC;QAC3B,aAAa,EAAE,MAAM,CAAC;QACtB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,IAAI,CAAC;CACV;AAED,UAAU,UAAU;IAClB,qBAAqB,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;KACpE,KAAK,OAAO,CAAC,IAAI,CAAC,EACnB,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GACxB,IAAI,CAAC;CACT;AAsDD,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,oBAAoB,GAAG,IAAI,CA8HhG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-register.js","sourceRoot":"","sources":["../../src/runtime/update-register.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,EACL,cAAc,EACd,eAAe,
|
|
1
|
+
{"version":3,"file":"update-register.js","sourceRoot":"","sources":["../../src/runtime/update-register.ts"],"names":[],"mappings":"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"}
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"id": "runtime",
|
|
3
3
|
"name": "Senpi Runtime",
|
|
4
4
|
"description": "Senpi runtime plugin for OpenClaw. Orchestrates scanners, LLM-based trade decisions, and a DSL trailing stop-loss exit engine.",
|
|
5
|
-
"version": "3.0.
|
|
5
|
+
"version": "3.0.91",
|
|
6
6
|
"commandAliases": [
|
|
7
7
|
{
|
|
8
8
|
"name": "senpi"
|