@senpi/runtime 3.0.135 → 3.0.138
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/actions/action-events.d.ts +7 -21
- package/dist/actions/action-events.d.ts.map +1 -1
- package/dist/actions/action-events.js +26 -54
- package/dist/actions/action-events.js.map +1 -1
- package/dist/actions/action-runtime-module.d.ts.map +1 -1
- package/dist/actions/action-runtime-module.js +7 -38
- package/dist/actions/action-runtime-module.js.map +1 -1
- package/dist/actions/close-position/close-position.action.d.ts.map +1 -1
- package/dist/actions/close-position/close-position.action.js +15 -122
- package/dist/actions/close-position/close-position.action.js.map +1 -1
- package/dist/actions/decision-engine.d.ts.map +1 -1
- package/dist/actions/decision-engine.js +2 -15
- package/dist/actions/decision-engine.js.map +1 -1
- package/dist/actions/event-derivation.d.ts +2 -71
- package/dist/actions/event-derivation.d.ts.map +1 -1
- package/dist/actions/event-derivation.js +8 -251
- package/dist/actions/event-derivation.js.map +1 -1
- package/dist/actions/open-position/open-position.action.d.ts +2 -12
- package/dist/actions/open-position/open-position.action.d.ts.map +1 -1
- package/dist/actions/open-position/open-position.action.js +41 -141
- package/dist/actions/open-position/open-position.action.js.map +1 -1
- package/dist/actions/position-tracker/position-tracker.action.d.ts +1 -2
- package/dist/actions/position-tracker/position-tracker.action.d.ts.map +1 -1
- package/dist/actions/position-tracker/position-tracker.action.js +17 -62
- package/dist/actions/position-tracker/position-tracker.action.js.map +1 -1
- package/dist/actions/store/types.d.ts +2 -9
- package/dist/actions/store/types.d.ts.map +1 -1
- package/dist/actions/store/types.js.map +1 -1
- package/dist/actions/types.d.ts +0 -13
- package/dist/actions/types.d.ts.map +1 -1
- package/dist/actions/types.js +0 -13
- package/dist/actions/types.js.map +1 -1
- 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/constants/dsl/index.d.ts +0 -6
- package/dist/constants/dsl/index.d.ts.map +1 -1
- package/dist/constants/dsl/index.js +0 -6
- package/dist/constants/dsl/index.js.map +1 -1
- package/dist/dsl/engine-client/event-mapping.d.ts.map +1 -1
- package/dist/dsl/engine-client/event-mapping.js +0 -14
- package/dist/dsl/engine-client/event-mapping.js.map +1 -1
- package/dist/dsl/events/build-closed-event.d.ts +1 -16
- package/dist/dsl/events/build-closed-event.d.ts.map +1 -1
- package/dist/dsl/events/build-closed-event.js +0 -6
- package/dist/dsl/events/build-closed-event.js.map +1 -1
- package/dist/dsl/events/handlers.d.ts +0 -7
- package/dist/dsl/events/handlers.d.ts.map +1 -1
- package/dist/dsl/events/handlers.js +7 -37
- package/dist/dsl/events/handlers.js.map +1 -1
- package/dist/dsl/monitor/create-monitor.d.ts +2 -6
- package/dist/dsl/monitor/create-monitor.d.ts.map +1 -1
- package/dist/dsl/monitor/create-monitor.js +9 -82
- package/dist/dsl/monitor/create-monitor.js.map +1 -1
- package/dist/dsl/monitor/dsl-failure-events.d.ts +2 -45
- package/dist/dsl/monitor/dsl-failure-events.d.ts.map +1 -1
- package/dist/dsl/monitor/dsl-failure-events.js +3 -52
- package/dist/dsl/monitor/dsl-failure-events.js.map +1 -1
- package/dist/dsl/monitor/process-one-position.d.ts +0 -1
- package/dist/dsl/monitor/process-one-position.d.ts.map +1 -1
- package/dist/dsl/monitor/process-one-position.js +36 -159
- package/dist/dsl/monitor/process-one-position.js.map +1 -1
- package/dist/dsl/plugin/index.d.ts +2 -8
- package/dist/dsl/plugin/index.d.ts.map +1 -1
- package/dist/dsl/plugin/index.js +6 -8
- package/dist/dsl/plugin/index.js.map +1 -1
- package/dist/health/types.d.ts +0 -13
- package/dist/health/types.d.ts.map +1 -1
- package/dist/health/types.js +0 -12
- package/dist/health/types.js.map +1 -1
- package/dist/index.d.ts +4 -27
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +41 -271
- package/dist/index.js.map +1 -1
- package/dist/runtime/action-registry.d.ts.map +1 -1
- package/dist/runtime/action-registry.js +3 -4
- package/dist/runtime/action-registry.js.map +1 -1
- package/dist/runtime/domain-events.d.ts.map +1 -1
- package/dist/runtime/domain-events.js +0 -7
- package/dist/runtime/domain-events.js.map +1 -1
- package/dist/runtime/lifecycle-events.d.ts +3 -15
- package/dist/runtime/lifecycle-events.d.ts.map +1 -1
- package/dist/runtime/lifecycle-events.js +3 -17
- package/dist/runtime/lifecycle-events.js.map +1 -1
- package/dist/runtime/lifecycle-reaper.d.ts +6 -4
- package/dist/runtime/lifecycle-reaper.d.ts.map +1 -1
- package/dist/runtime/lifecycle-reaper.js +6 -4
- package/dist/runtime/lifecycle-reaper.js.map +1 -1
- package/dist/runtime/reconcile-run.d.ts +3 -13
- package/dist/runtime/reconcile-run.d.ts.map +1 -1
- package/dist/runtime/reconcile-run.js +3 -4
- package/dist/runtime/reconcile-run.js.map +1 -1
- package/dist/runtime/reconcile-state.d.ts +0 -8
- package/dist/runtime/reconcile-state.d.ts.map +1 -1
- package/dist/runtime/reconcile-state.js +1 -4
- package/dist/runtime/reconcile-state.js.map +1 -1
- package/dist/runtime/risk-guard.d.ts +20 -1
- package/dist/runtime/risk-guard.d.ts.map +1 -1
- package/dist/runtime/risk-guard.js +47 -6
- package/dist/runtime/risk-guard.js.map +1 -1
- package/dist/runtime/run.d.ts +0 -1
- package/dist/runtime/run.d.ts.map +1 -1
- package/dist/runtime/run.js.map +1 -1
- package/dist/runtime/runtime-schema.js +3 -3
- package/dist/runtime/runtime-schema.js.map +1 -1
- package/dist/runtime/runtime.d.ts +3 -2
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +30 -37
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/strategy-lifecycle.d.ts +108 -2
- package/dist/runtime/strategy-lifecycle.d.ts.map +1 -1
- package/dist/runtime/strategy-lifecycle.js +325 -4
- package/dist/runtime/strategy-lifecycle.js.map +1 -1
- package/dist/runtime/supervisor/long-running-supervisor.d.ts +0 -13
- package/dist/runtime/supervisor/long-running-supervisor.d.ts.map +1 -1
- package/dist/runtime/supervisor/long-running-supervisor.js +0 -1
- package/dist/runtime/supervisor/long-running-supervisor.js.map +1 -1
- package/dist/runtime/validate-dsl-position-tracking.d.ts.map +1 -1
- package/dist/runtime/validate-dsl-position-tracking.js +1 -2
- package/dist/runtime/validate-dsl-position-tracking.js.map +1 -1
- package/dist/runtime-api/handlers/ingest-signals.d.ts.map +1 -1
- package/dist/runtime-api/handlers/ingest-signals.js +0 -1
- package/dist/runtime-api/handlers/ingest-signals.js.map +1 -1
- package/dist/runtime-api/handlers/types.d.ts +0 -5
- package/dist/runtime-api/handlers/types.d.ts.map +1 -1
- package/dist/runtime-api/intake/intake-events.d.ts +1 -1
- package/dist/runtime-api/intake/intake-events.d.ts.map +1 -1
- package/dist/runtime-api/intake/intake-events.js +3 -9
- package/dist/runtime-api/intake/intake-events.js.map +1 -1
- package/dist/runtime-api/intake/intake-mount.d.ts.map +1 -1
- package/dist/runtime-api/intake/intake-mount.js +19 -4
- package/dist/runtime-api/intake/intake-mount.js.map +1 -1
- package/dist/runtime-api/intake/process-error-post.d.ts +1 -6
- package/dist/runtime-api/intake/process-error-post.d.ts.map +1 -1
- package/dist/runtime-api/intake/process-error-post.js +1 -5
- package/dist/runtime-api/intake/process-error-post.js.map +1 -1
- package/dist/runtime-api/intake/process-signal-post.d.ts +1 -7
- package/dist/runtime-api/intake/process-signal-post.d.ts.map +1 -1
- package/dist/runtime-api/intake/process-signal-post.js +0 -5
- package/dist/runtime-api/intake/process-signal-post.js.map +1 -1
- package/dist/runtime-api/intake/scaffold-error-router.js.map +1 -1
- package/dist/runtime-api/intake/scanner-launcher.d.ts.map +1 -1
- package/dist/runtime-api/intake/scanner-launcher.js +0 -15
- package/dist/runtime-api/intake/scanner-launcher.js.map +1 -1
- package/dist/runtime-api/intake/types.d.ts +0 -55
- package/dist/runtime-api/intake/types.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.d.ts +0 -2
- package/dist/runtime-api/routes/signals.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.js +1 -5
- package/dist/runtime-api/routes/signals.js.map +1 -1
- package/dist/runtime-api/routes/signals.schema.d.ts +0 -43
- package/dist/runtime-api/routes/signals.schema.d.ts.map +1 -1
- package/dist/runtime-api/routes/signals.schema.js +0 -43
- package/dist/runtime-api/routes/signals.schema.js.map +1 -1
- package/dist/runtime-api/server.d.ts +1 -7
- package/dist/runtime-api/server.d.ts.map +1 -1
- package/dist/runtime-api/server.js +0 -1
- package/dist/runtime-api/server.js.map +1 -1
- package/dist/scanners/engine/engine.d.ts +1 -22
- package/dist/scanners/engine/engine.d.ts.map +1 -1
- package/dist/scanners/engine/engine.js +11 -78
- package/dist/scanners/engine/engine.js.map +1 -1
- package/dist/scanners/engine/lifecycle.d.ts +1 -7
- package/dist/scanners/engine/lifecycle.d.ts.map +1 -1
- package/dist/scanners/events.d.ts +0 -4
- package/dist/scanners/events.d.ts.map +1 -1
- package/dist/scanners/events.js +0 -2
- package/dist/scanners/events.js.map +1 -1
- package/dist/scanners/external/scaffold/delivery.py +25 -194
- package/dist/scanners/external/scaffold/scaffold.py +31 -172
- package/dist/scanners/external/scaffold/senpi_mcp.py +8 -150
- package/dist/scanners/external-scanner-receiver.d.ts +0 -17
- package/dist/scanners/external-scanner-receiver.d.ts.map +1 -1
- package/dist/scanners/external-scanner-receiver.js +0 -8
- package/dist/scanners/external-scanner-receiver.js.map +1 -1
- package/dist/scanners/runtime-module.d.ts +0 -1
- package/dist/scanners/runtime-module.d.ts.map +1 -1
- package/dist/scanners/runtime-module.js +9 -66
- package/dist/scanners/runtime-module.js.map +1 -1
- package/dist/telemetry/attributes.d.ts +0 -20
- package/dist/telemetry/attributes.d.ts.map +1 -1
- package/dist/telemetry/attributes.js +0 -24
- package/dist/telemetry/attributes.js.map +1 -1
- package/dist/telemetry/event-builders.d.ts +6 -81
- package/dist/telemetry/event-builders.d.ts.map +1 -1
- package/dist/telemetry/event-builders.js +17 -141
- package/dist/telemetry/event-builders.js.map +1 -1
- package/dist/telemetry/event-store.d.ts +0 -6
- package/dist/telemetry/event-store.d.ts.map +1 -1
- package/dist/telemetry/event-store.js +8 -12
- package/dist/telemetry/event-store.js.map +1 -1
- package/dist/telemetry/metrics.d.ts +2 -14
- package/dist/telemetry/metrics.d.ts.map +1 -1
- package/dist/telemetry/metrics.js +4 -19
- package/dist/telemetry/metrics.js.map +1 -1
- package/dist/telemetry/spans/redact-pii.d.ts.map +1 -1
- package/dist/telemetry/spans/redact-pii.js +2 -18
- package/dist/telemetry/spans/redact-pii.js.map +1 -1
- package/dist/telemetry/tracing.d.ts +0 -9
- package/dist/telemetry/tracing.d.ts.map +1 -1
- package/dist/telemetry/tracing.js +0 -36
- package/dist/telemetry/tracing.js.map +1 -1
- package/dist/types/dsl/index.d.ts +0 -48
- package/dist/types/dsl/index.d.ts.map +1 -1
- package/dist/types/scanner.d.ts +0 -15
- package/dist/types/scanner.d.ts.map +1 -1
- package/dist/utils/event-catalog.d.ts +0 -202
- package/dist/utils/event-catalog.d.ts.map +1 -1
- package/dist/utils/event-catalog.js +0 -26
- package/dist/utils/event-catalog.js.map +1 -1
- package/dist/utils/logger.d.ts +1 -4
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/validate/recipe-checks.d.ts.map +1 -1
- package/dist/validate/recipe-checks.js +2 -2
- package/dist/validate/recipe-checks.js.map +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
- package/dist/actions/skipped-signal-results.d.ts +0 -25
- package/dist/actions/skipped-signal-results.d.ts.map +0 -1
- package/dist/actions/skipped-signal-results.js +0 -71
- package/dist/actions/skipped-signal-results.js.map +0 -1
- package/dist/runtime-api/intake/ingest-request.d.ts +0 -17
- package/dist/runtime-api/intake/ingest-request.d.ts.map +0 -1
- package/dist/runtime-api/intake/ingest-request.js +0 -34
- package/dist/runtime-api/intake/ingest-request.js.map +0 -1
- package/dist/runtime-api/intake/scaffold-tick-router.d.ts +0 -39
- package/dist/runtime-api/intake/scaffold-tick-router.d.ts.map +0 -1
- package/dist/runtime-api/intake/scaffold-tick-router.js +0 -122
- package/dist/runtime-api/intake/scaffold-tick-router.js.map +0 -1
- package/dist/scanners/external/scaffold/tick_facts.py +0 -130
- package/dist/scanners/external/scaffold/ulid.py +0 -58
- package/dist/telemetry/dsl-positions.d.ts +0 -111
- package/dist/telemetry/dsl-positions.d.ts.map +0 -1
- package/dist/telemetry/dsl-positions.js +0 -118
- package/dist/telemetry/dsl-positions.js.map +0 -1
- package/dist/telemetry/live-telemetry.d.ts +0 -257
- package/dist/telemetry/live-telemetry.d.ts.map +0 -1
- package/dist/telemetry/live-telemetry.js +0 -959
- package/dist/telemetry/live-telemetry.js.map +0 -1
- package/dist/telemetry/scanner-stats.d.ts +0 -143
- package/dist/telemetry/scanner-stats.d.ts.map +0 -1
- package/dist/telemetry/scanner-stats.js +0 -426
- package/dist/telemetry/scanner-stats.js.map +0 -1
- package/dist/telemetry/scanner-tick-feed.d.ts +0 -87
- package/dist/telemetry/scanner-tick-feed.d.ts.map +0 -1
- package/dist/telemetry/scanner-tick-feed.js +0 -48
- package/dist/telemetry/scanner-tick-feed.js.map +0 -1
- package/dist/telemetry/strategy-topology.d.ts +0 -99
- package/dist/telemetry/strategy-topology.d.ts.map +0 -1
- package/dist/telemetry/strategy-topology.js +0 -93
- package/dist/telemetry/strategy-topology.js.map +0 -1
- package/dist/telemetry/telemetry-publisher.d.ts +0 -83
- package/dist/telemetry/telemetry-publisher.d.ts.map +0 -1
- package/dist/telemetry/telemetry-publisher.js +0 -256
- package/dist/telemetry/telemetry-publisher.js.map +0 -1
- package/dist/telemetry/tick-frame.d.ts +0 -212
- package/dist/telemetry/tick-frame.d.ts.map +0 -1
- package/dist/telemetry/tick-frame.js +0 -421
- package/dist/telemetry/tick-frame.js.map +0 -1
- package/dist/telemetry/timeline-buffer.d.ts +0 -95
- package/dist/telemetry/timeline-buffer.d.ts.map +0 -1
- package/dist/telemetry/timeline-buffer.js +0 -237
- package/dist/telemetry/timeline-buffer.js.map +0 -1
- package/dist/utils/telemetry-required-log.d.ts +0 -60
- package/dist/utils/telemetry-required-log.d.ts.map +0 -1
- package/dist/utils/telemetry-required-log.js +0 -105
- package/dist/utils/telemetry-required-log.js.map +0 -1
- package/dist/utils/ulid.d.ts +0 -9
- package/dist/utils/ulid.d.ts.map +0 -1
- package/dist/utils/ulid.js +0 -43
- package/dist/utils/ulid.js.map +0 -1
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* The scanner-summary funnel selection is reused from {@link buildScannerSummary}
|
|
7
7
|
* — no reimplementation of the drop classification.
|
|
8
8
|
*/
|
|
9
|
-
import {
|
|
9
|
+
import { buildScannerSummary } from "../telemetry/event-builders.js";
|
|
10
10
|
import { computeConfigHash } from "../telemetry/identity.js";
|
|
11
11
|
import { EVENT_NAME, eventAttrs, } from "../utils/event-catalog.js";
|
|
12
12
|
/** Distinct dropped-reason attribute keys kept on a scanner.summary; the rest fold into `…dropped.other`. */
|
|
@@ -16,31 +16,21 @@ const MAX_DROP_REASON_KEYS = 12;
|
|
|
16
16
|
* `null` when the scan considered no candidates (the anti-spam grain).
|
|
17
17
|
* Dropped candidates are market data → safe count attributes (`dropped_count` + by-reason), never
|
|
18
18
|
* `redact`.
|
|
19
|
-
*
|
|
20
|
-
* `address` is the strategy wallet. It fires from the scanner-run interval, outside the per-signal
|
|
21
|
-
* identity context, so the wallet must be stamped here or the per-strategy event store has nothing
|
|
22
|
-
* to route on and drops the record. Omitted when the caller has no wallet — never a placeholder.
|
|
23
19
|
*/
|
|
24
|
-
export function buildScannerSummaryEvent(payload, nowMs
|
|
20
|
+
export function buildScannerSummaryEvent(payload, nowMs) {
|
|
25
21
|
const rec = buildScannerSummary(payload, nowMs);
|
|
26
22
|
if (rec === null)
|
|
27
23
|
return null;
|
|
28
|
-
// The run's ids ride the same `data` the record is derived from; the record itself is a
|
|
29
|
-
// telemetry-owned shape, so they are read here rather than widened there.
|
|
30
|
-
const data = asObject(asObject(payload)?.data);
|
|
31
24
|
// The record always populates these counts (its optional typing notwithstanding); fall back so the
|
|
32
25
|
// counts — required attributes — are always defined, and reuse the same values in the body.
|
|
33
26
|
const passed = rec.passedCount ?? 0;
|
|
34
27
|
const dropped = rec.droppedCount ?? 0;
|
|
35
28
|
const total = rec.scannedCount ?? passed + dropped;
|
|
36
29
|
const attributes = eventAttrs({
|
|
37
|
-
"senpi.strategy.address": address,
|
|
38
30
|
"senpi.scanner.id": rec.scannerId,
|
|
39
31
|
"senpi.scanner.scanned_count": total,
|
|
40
32
|
"senpi.scanner.passed_count": passed,
|
|
41
33
|
"senpi.scanner.dropped_count": dropped,
|
|
42
|
-
"senpi.tick.id": str(data?.tickId),
|
|
43
|
-
"senpi.signal.correlation_id": str(data?.correlationId),
|
|
44
34
|
});
|
|
45
35
|
// By-reason drop counts → queryable attributes. A scanner's reason vocabulary is normally a small
|
|
46
36
|
// fixed set, but it is an open producer-controlled string, so the distinct keys are capped: a
|
|
@@ -300,13 +290,11 @@ export function buildQueueBackpressureEvent(input) {
|
|
|
300
290
|
"senpi.scanner.id": input.scannerId,
|
|
301
291
|
// Addresses are case-insensitive; lowercase to match the identity join key.
|
|
302
292
|
"senpi.strategy.address": input.address ? input.address.toLowerCase() : undefined,
|
|
303
|
-
"senpi.tick.id": input.tickId,
|
|
304
|
-
"senpi.signal.correlation_id": input.correlationId,
|
|
305
293
|
}),
|
|
306
294
|
};
|
|
307
295
|
}
|
|
308
296
|
/** `runtime.error` — an uncaught signal-processing error. ERROR; the message rides `redact`. */
|
|
309
|
-
export function buildRuntimeErrorEvent(phase, scannerId, message
|
|
297
|
+
export function buildRuntimeErrorEvent(phase, scannerId, message) {
|
|
310
298
|
return {
|
|
311
299
|
name: EVENT_NAME.runtimeError,
|
|
312
300
|
level: "error",
|
|
@@ -314,8 +302,6 @@ export function buildRuntimeErrorEvent(phase, scannerId, message, ids) {
|
|
|
314
302
|
attributes: eventAttrs({
|
|
315
303
|
"senpi.runtime.phase": phase,
|
|
316
304
|
"senpi.scanner.id": scannerId,
|
|
317
|
-
"senpi.tick.id": ids?.tickId,
|
|
318
|
-
"senpi.signal.correlation_id": ids?.correlationId,
|
|
319
305
|
}),
|
|
320
306
|
redact: { error: message },
|
|
321
307
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-events.js","sourceRoot":"","sources":["../../src/runtime/lifecycle-events.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"lifecycle-events.js","sourceRoot":"","sources":["../../src/runtime/lifecycle-events.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,11 +82,13 @@ export declare function decideReap(entry: {
|
|
|
82
82
|
*/
|
|
83
83
|
export declare function lifecycleForStatus(status: string | undefined): RuntimeLifecycle;
|
|
84
84
|
/**
|
|
85
|
-
* Release default for deleting candidates. `
|
|
86
|
-
*
|
|
87
|
-
*
|
|
85
|
+
* Release default for deleting candidates. `true` = enforce: a `closed_status` candidate is deleted
|
|
86
|
+
* through the ordinary delete path (state archived, `runtime.deleted` with
|
|
87
|
+
* `senpi.runtime.delete_reason`). Flipped after the observe-only fleet validation of 3.0.121 (plan
|
|
88
|
+
* Task 8: 38 wallets / 23 users, every candidate CLOSED on the backend, no skipped reads).
|
|
89
|
+
* `SENPI_REAPER_ENFORCE=false` returns a box to observe-only, where candidates are only reported.
|
|
88
90
|
*/
|
|
89
|
-
export declare const REAPER_ENFORCEMENT_DEFAULT =
|
|
91
|
+
export declare const REAPER_ENFORCEMENT_DEFAULT = true;
|
|
90
92
|
/** Delay between `start()` completing and the post-boot pass — lets MCP and the gateway settle. */
|
|
91
93
|
export declare const REAPER_BOOT_DELAY_MS = 120000;
|
|
92
94
|
/** Sweep cadence. Bounds how long a closed strategy that never trades keeps its runtime. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-reaper.d.ts","sourceRoot":"","sources":["../../src/runtime/lifecycle-reaper.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAErE,OAAO,KAAK,EAAc,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAQxB;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;AAElG,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChD;AAED,wCAAwC;AACxC,MAAM,MAAM,YAAY;AACtB,0DAA0D;AACxD;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GACvB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;AAC7D,iEAAiE;GAC/D;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE;AAC7C,mGAAmG;GACjG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAKlE;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,MAAM,EAAE,YAAY,GAAG,YAAY,CAarG;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,gBAAgB,CAK/E;AAID
|
|
1
|
+
{"version":3,"file":"lifecycle-reaper.d.ts","sourceRoot":"","sources":["../../src/runtime/lifecycle-reaper.ts"],"names":[],"mappings":"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"}
|
|
@@ -65,11 +65,13 @@ export function lifecycleForStatus(status) {
|
|
|
65
65
|
}
|
|
66
66
|
// ── Controller ──────────────────────────────────────────────────────────────────────────────────
|
|
67
67
|
/**
|
|
68
|
-
* Release default for deleting candidates. `
|
|
69
|
-
*
|
|
70
|
-
*
|
|
68
|
+
* Release default for deleting candidates. `true` = enforce: a `closed_status` candidate is deleted
|
|
69
|
+
* through the ordinary delete path (state archived, `runtime.deleted` with
|
|
70
|
+
* `senpi.runtime.delete_reason`). Flipped after the observe-only fleet validation of 3.0.121 (plan
|
|
71
|
+
* Task 8: 38 wallets / 23 users, every candidate CLOSED on the backend, no skipped reads).
|
|
72
|
+
* `SENPI_REAPER_ENFORCE=false` returns a box to observe-only, where candidates are only reported.
|
|
71
73
|
*/
|
|
72
|
-
export const REAPER_ENFORCEMENT_DEFAULT =
|
|
74
|
+
export const REAPER_ENFORCEMENT_DEFAULT = true;
|
|
73
75
|
/** Delay between `start()` completing and the post-boot pass — lets MCP and the gateway settle. */
|
|
74
76
|
export const REAPER_BOOT_DELAY_MS = 120_000;
|
|
75
77
|
/** Sweep cadence. Bounds how long a closed strategy that never trades keeps its runtime. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-reaper.js","sourceRoot":"","sources":["../../src/runtime/lifecycle-reaper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lifecycle-reaper.js","sourceRoot":"","sources":["../../src/runtime/lifecycle-reaper.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,22 +22,12 @@ export interface RunReconcileDeps {
|
|
|
22
22
|
strategyState: StrategyState;
|
|
23
23
|
senpi: SenpiClient;
|
|
24
24
|
stateManager: StateManager;
|
|
25
|
-
/**
|
|
26
|
-
* adoptPosition + resizePosition — satisfied by DslPlugin or a compatible adopter.
|
|
27
|
-
* The opts shape is stated inline (not imported from the DSL handlers) so the port stays
|
|
28
|
-
* the narrow thing reconcile actually needs: the tick that caused the adopt, when there is one.
|
|
29
|
-
*/
|
|
25
|
+
/** adoptPosition + resizePosition — satisfied by DslPlugin or a compatible adopter. */
|
|
30
26
|
adopter: {
|
|
31
|
-
adoptPosition(p: PositionOpenedEvent
|
|
32
|
-
|
|
33
|
-
}): Promise<void>;
|
|
34
|
-
resizePosition(p: PositionOpenedEvent, opts?: {
|
|
35
|
-
tickId?: string;
|
|
36
|
-
}): Promise<void>;
|
|
27
|
+
adoptPosition(p: PositionOpenedEvent): Promise<void>;
|
|
28
|
+
resizePosition(p: PositionOpenedEvent): Promise<void>;
|
|
37
29
|
};
|
|
38
30
|
bus?: SenpiEventBus;
|
|
39
|
-
/** The monitor tick driving this reconcile, when one is; absent on the boot reconcile. */
|
|
40
|
-
tickId?: string;
|
|
41
31
|
/**
|
|
42
32
|
* Serializes the whole fetch+decide+execute pass against the trade loop / other reconciles.
|
|
43
33
|
* Default: run directly (T5 will pass a reconcileMutex-backed serializer).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-run.d.ts","sourceRoot":"","sources":["../../src/runtime/reconcile-run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B
|
|
1
|
+
{"version":3,"file":"reconcile-run.d.ts","sourceRoot":"","sources":["../../src/runtime/reconcile-run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAStD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,aAAa,CAAC;IAC7B,KAAK,EAAE,WAAW,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;IAC3B,uFAAuF;IACvF,OAAO,EAAE;QACP,aAAa,CAAC,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,cAAc,CAAC,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;KACvD,CAAC;IACF,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,YAAY,EACjB,OAAO,EAAE,MAAM,GACd,mBAAmB,CAWrB;AAID,wBAAsB,YAAY,CAChC,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,eAAe,CAAA;CAAE,CAAC,CA2IxD"}
|
|
@@ -45,7 +45,7 @@ export function openPositionToPayload(pos, address) {
|
|
|
45
45
|
}
|
|
46
46
|
// ─── Executor ─────────────────────────────────────────────────────────────────
|
|
47
47
|
export async function runReconcile(deps) {
|
|
48
|
-
const { address, strategyState, senpi, stateManager, adopter, bus,
|
|
48
|
+
const { address, strategyState, senpi, stateManager, adopter, bus, serialize = (fn) => fn(), } = deps;
|
|
49
49
|
const zeroCounts = { adopted: 0, resized: 0, archived: 0 };
|
|
50
50
|
// Fetch the exchange snapshot + list DSL state + decide + execute, ALL inside the
|
|
51
51
|
// serialize lock, so the exchange view and the DSL view are captured atomically vs
|
|
@@ -101,7 +101,6 @@ export async function runReconcile(deps) {
|
|
|
101
101
|
const outcome = await archiveGoneState(stateManager, senpi, action.state, {
|
|
102
102
|
bus,
|
|
103
103
|
strategyState,
|
|
104
|
-
tickId,
|
|
105
104
|
});
|
|
106
105
|
if (outcome === "archived")
|
|
107
106
|
c.archived++;
|
|
@@ -125,7 +124,7 @@ export async function runReconcile(deps) {
|
|
|
125
124
|
if (action.kind !== "adopt")
|
|
126
125
|
continue;
|
|
127
126
|
try {
|
|
128
|
-
await adopter.adoptPosition(openPositionToPayload(action.position, address)
|
|
127
|
+
await adopter.adoptPosition(openPositionToPayload(action.position, address));
|
|
129
128
|
c.adopted++;
|
|
130
129
|
}
|
|
131
130
|
catch (err) {
|
|
@@ -143,7 +142,7 @@ export async function runReconcile(deps) {
|
|
|
143
142
|
if (action.kind !== "resize")
|
|
144
143
|
continue;
|
|
145
144
|
try {
|
|
146
|
-
await adopter.resizePosition(openPositionToPayload(action.position, address)
|
|
145
|
+
await adopter.resizePosition(openPositionToPayload(action.position, address));
|
|
147
146
|
c.resized++;
|
|
148
147
|
}
|
|
149
148
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-run.js","sourceRoot":"","sources":["../../src/runtime/reconcile-run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,6BAA6B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"reconcile-run.js","sourceRoot":"","sources":["../../src/runtime/reconcile-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,12 +21,6 @@ export interface ReconcileOptions {
|
|
|
21
21
|
* or getOrderStatus fallbacks. Addresses without a map entry are skipped (no archive for that wallet).
|
|
22
22
|
*/
|
|
23
23
|
strategyStateOnly?: boolean;
|
|
24
|
-
/**
|
|
25
|
-
* The monitor tick driving this reconcile, when one is. Stamped on the archive's POSITION_CLOSED
|
|
26
|
-
* so the event names the tick that observed the position was gone. Absent on the boot reconcile,
|
|
27
|
-
* which runs outside any tick.
|
|
28
|
-
*/
|
|
29
|
-
tickId?: string;
|
|
30
24
|
}
|
|
31
25
|
/**
|
|
32
26
|
* Archive DSL states for positions that are no longer live (not in livePositionKeys).
|
|
@@ -63,13 +57,11 @@ export declare function archiveGoneState(stateManager: StateManager, senpi: Senp
|
|
|
63
57
|
bus?: SenpiEventBus;
|
|
64
58
|
strategyState?: StrategyState;
|
|
65
59
|
strategyStateOnly?: boolean;
|
|
66
|
-
tickId?: string;
|
|
67
60
|
}): Promise<ArchiveGoneOutcome>;
|
|
68
61
|
export declare function archiveGonePositions(stateManager: StateManager, senpi: SenpiClient, address: string, livePositionKeys: Set<string>, opts?: {
|
|
69
62
|
bus?: SenpiEventBus;
|
|
70
63
|
strategyState?: StrategyState;
|
|
71
64
|
strategyStateOnly?: boolean;
|
|
72
|
-
tickId?: string;
|
|
73
65
|
}): Promise<{
|
|
74
66
|
gonesArchived: number;
|
|
75
67
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-state.d.ts","sourceRoot":"","sources":["../../src/runtime/reconcile-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"reconcile-state.d.ts","sourceRoot":"","sources":["../../src/runtime/reconcile-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAuDtD,MAAM,WAAW,gBAAgB;IAC/B,6FAA6F;IAC7F,GAAG,CAAC,EAAE,aAAa,CAAC;IACpB;;;;OAIG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC5C;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;;;;;;;;GAaG;AACH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEnE,wBAAsB,gBAAgB,CACpC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,QAAQ,EACf,IAAI,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,aAAa,CAAC;IAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GACzF,OAAO,CAAC,kBAAkB,CAAC,CA6D7B;AAED,wBAAsB,oBAAoB,CACxC,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,WAAW,EAClB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,EAC7B,IAAI,CAAC,EAAE;IAAE,GAAG,CAAC,EAAE,aAAa,CAAC;IAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GACzF,OAAO,CAAC;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC,CAgBpC;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAC7C,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,WAAW,EAClB,wBAAwB,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,EAChE,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,IAAI,CAAC,CAmFf"}
|
|
@@ -7,7 +7,6 @@ import { EVENTS } from "../constants/dsl/index.js";
|
|
|
7
7
|
import { stateKey } from "../state/index.js";
|
|
8
8
|
import { createLogger } from "../utils/logger.js";
|
|
9
9
|
import { withRetry } from "../utils/retry.js";
|
|
10
|
-
import { PAYLOAD_KEY } from "../utils/event-catalog.js";
|
|
11
10
|
const logger = createLogger("[senpi-core][reconcile]");
|
|
12
11
|
function positionKey(address, asset, dex) {
|
|
13
12
|
return `${address}:${asset}:${dex ?? ""}`;
|
|
@@ -94,7 +93,6 @@ export async function archiveGoneState(stateManager, senpi, state, opts) {
|
|
|
94
93
|
wallet: state.wallet,
|
|
95
94
|
reason: archivedCloseReason,
|
|
96
95
|
closeReason: archivedCloseReason,
|
|
97
|
-
[PAYLOAD_KEY.tickId]: opts.tickId,
|
|
98
96
|
timestamp: tsEmit,
|
|
99
97
|
});
|
|
100
98
|
}
|
|
@@ -136,7 +134,7 @@ export async function archiveGonePositions(stateManager, senpi, address, livePos
|
|
|
136
134
|
* @param options - optional bus to emit POSITION_CLOSED when archiving (e.g. from monitor)
|
|
137
135
|
*/
|
|
138
136
|
export async function reconcileStateWithBackend(stateManager, senpi, addressesOrStrategiesMap, options) {
|
|
139
|
-
const { bus, strategyStateOnly = false
|
|
137
|
+
const { bus, strategyStateOnly = false } = options ?? {};
|
|
140
138
|
const addresses = addressesOrStrategiesMap instanceof Map
|
|
141
139
|
? Array.from(addressesOrStrategiesMap.keys())
|
|
142
140
|
: addressesOrStrategiesMap;
|
|
@@ -211,7 +209,6 @@ export async function reconcileStateWithBackend(stateManager, senpi, addressesOr
|
|
|
211
209
|
bus,
|
|
212
210
|
strategyState: options?.strategyStates?.get(address),
|
|
213
211
|
strategyStateOnly,
|
|
214
|
-
tickId,
|
|
215
212
|
});
|
|
216
213
|
}
|
|
217
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconcile-state.js","sourceRoot":"","sources":["../../src/runtime/reconcile-state.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC5G,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"reconcile-state.js","sourceRoot":"","sources":["../../src/runtime/reconcile-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,11 @@
|
|
|
9
9
|
* Every checkGate call logs the decision to the audit log (write-only).
|
|
10
10
|
* If any risk API call fails, the gate is CLOSED (fail-closed).
|
|
11
11
|
*
|
|
12
|
+
* Evaluation is stateless, but enforcement of the halt-class gates (daily loss, drawdown) is
|
|
13
|
+
* not: each of their evaluations passes through the lifecycle tracker's `applyLatch`, which
|
|
14
|
+
* keeps a genuinely-breached halt CLOSED until its release rule (UTC day rollover) fires, so a
|
|
15
|
+
* mark-to-market bounce back under the limit cannot reopen entries mid-day.
|
|
16
|
+
*
|
|
12
17
|
* Supports two modes:
|
|
13
18
|
* - Default (short-circuit): returns on first non-OPEN gate.
|
|
14
19
|
* - evaluateAll: evaluates every configured gate, returns per-gate details.
|
|
@@ -16,9 +21,16 @@
|
|
|
16
21
|
import type { RiskGuard as IRiskGuard } from "../types/action.js";
|
|
17
22
|
import type { NotificationService } from "../types/notification.js";
|
|
18
23
|
import type { StrategyConfig } from "../types/strategy.js";
|
|
24
|
+
import type { GuardRailConfig } from "../risk/guardrail.types.js";
|
|
19
25
|
import type { SenpiClient } from "../senpi/client.js";
|
|
20
|
-
import type { RiskGateEvaluation, RiskSource } from "../health/types.js";
|
|
26
|
+
import type { RiskGateEvaluation, RiskGateId, RiskSource } from "../health/types.js";
|
|
21
27
|
import type { RiskAuditLog } from "../risk/risk-audit-log.js";
|
|
28
|
+
/**
|
|
29
|
+
* The latched halt gates `checkGate` evaluates for these guard rails (undefined = no `risk`
|
|
30
|
+
* block). The runtime passes this to the lifecycle on every recipe rebuild so a latch whose
|
|
31
|
+
* rail was removed is dropped rather than resurfacing if the rail comes back.
|
|
32
|
+
*/
|
|
33
|
+
export declare function configuredHaltGates(guardRails: GuardRailConfig | undefined): Set<RiskGateId>;
|
|
22
34
|
export declare function createRiskGuardStub(): IRiskGuard;
|
|
23
35
|
export interface RiskGuardConfig {
|
|
24
36
|
senpi: SenpiClient;
|
|
@@ -34,6 +46,13 @@ export interface RiskGuardConfig {
|
|
|
34
46
|
*/
|
|
35
47
|
lifecycleTracker?: {
|
|
36
48
|
observe(address: string, label: string, evaluations: RiskGateEvaluation[], source: RiskSource): void;
|
|
49
|
+
/**
|
|
50
|
+
* Halt latch (see StrategyLifecycle.applyLatch). Optional so observe-only trackers still type.
|
|
51
|
+
* Async because the lifecycle loads and writes the persisted latch; it never rejects.
|
|
52
|
+
*/
|
|
53
|
+
applyLatch?(address: string, evaluation: RiskGateEvaluation, opts: {
|
|
54
|
+
releaseOnDayRollover: boolean;
|
|
55
|
+
}): Promise<RiskGateEvaluation>;
|
|
37
56
|
};
|
|
38
57
|
}
|
|
39
58
|
export declare function createRiskGuard(config: RiskGuardConfig): IRiskGuard;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risk-guard.d.ts","sourceRoot":"","sources":["../../src/runtime/risk-guard.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"risk-guard.d.ts","sourceRoot":"","sources":["../../src/runtime/risk-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAuD,SAAS,IAAI,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACvH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,4BAA4B,CAAC;AACjF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAe9D;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,eAAe,GAAG,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,CAM5F;AAED,wBAAgB,mBAAmB,IAAI,UAAU,CAchD;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,WAAW,CAAC;IACnB,aAAa,EAAE,mBAAmB,CAAC;IACnC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB;;;;;OAKG;IACH,gBAAgB,CAAC,EAAE;QACjB,OAAO,CACL,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,kBAAkB,EAAE,EACjC,MAAM,EAAE,UAAU,GACjB,IAAI,CAAC;QACR;;;WAGG;QACH,UAAU,CAAC,CACT,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,kBAAkB,EAC9B,IAAI,EAAE;YAAE,oBAAoB,EAAE,OAAO,CAAA;SAAE,GACtC,OAAO,CAAC,kBAAkB,CAAC,CAAC;KAChC,CAAC;CACH;AAkDD,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,UAAU,CAoiBnE"}
|
|
@@ -9,6 +9,11 @@
|
|
|
9
9
|
* Every checkGate call logs the decision to the audit log (write-only).
|
|
10
10
|
* If any risk API call fails, the gate is CLOSED (fail-closed).
|
|
11
11
|
*
|
|
12
|
+
* Evaluation is stateless, but enforcement of the halt-class gates (daily loss, drawdown) is
|
|
13
|
+
* not: each of their evaluations passes through the lifecycle tracker's `applyLatch`, which
|
|
14
|
+
* keeps a genuinely-breached halt CLOSED until its release rule (UTC day rollover) fires, so a
|
|
15
|
+
* mark-to-market bounce back under the limit cannot reopen entries mid-day.
|
|
16
|
+
*
|
|
12
17
|
* Supports two modes:
|
|
13
18
|
* - Default (short-circuit): returns on first non-OPEN gate.
|
|
14
19
|
* - evaluateAll: evaluates every configured gate, returns per-gate details.
|
|
@@ -17,6 +22,30 @@ import { RISK_GATE_NAMES } from "../health/types.js";
|
|
|
17
22
|
import { isRecord } from "../utils/response.js";
|
|
18
23
|
import { createLogger } from "../utils/logger.js";
|
|
19
24
|
const logger = createLogger("[runtime][risk-guard]");
|
|
25
|
+
/** Gate 1 (daily loss halt) is configured: a USD or percent limit above zero. */
|
|
26
|
+
function hasDailyLossLimit(guardRails) {
|
|
27
|
+
return (guardRails.dailyLossLimit != null && guardRails.dailyLossLimit > 0)
|
|
28
|
+
|| (guardRails.dailyLossLimitPct != null && guardRails.dailyLossLimitPct > 0);
|
|
29
|
+
}
|
|
30
|
+
/** Gate 2 (drawdown halt) is configured: a drawdown percent above zero. */
|
|
31
|
+
function hasDrawdownHalt(guardRails) {
|
|
32
|
+
return guardRails.drawdownHaltPct != null && guardRails.drawdownHaltPct > 0;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The latched halt gates `checkGate` evaluates for these guard rails (undefined = no `risk`
|
|
36
|
+
* block). The runtime passes this to the lifecycle on every recipe rebuild so a latch whose
|
|
37
|
+
* rail was removed is dropped rather than resurfacing if the rail comes back.
|
|
38
|
+
*/
|
|
39
|
+
export function configuredHaltGates(guardRails) {
|
|
40
|
+
const gates = new Set();
|
|
41
|
+
if (!guardRails)
|
|
42
|
+
return gates;
|
|
43
|
+
if (hasDailyLossLimit(guardRails))
|
|
44
|
+
gates.add("daily_loss_halt");
|
|
45
|
+
if (hasDrawdownHalt(guardRails))
|
|
46
|
+
gates.add("drawdown_halt");
|
|
47
|
+
return gates;
|
|
48
|
+
}
|
|
20
49
|
export function createRiskGuardStub() {
|
|
21
50
|
return {
|
|
22
51
|
async checkGate(_address, opts) {
|
|
@@ -103,7 +132,8 @@ export function createRiskGuard(config) {
|
|
|
103
132
|
// P2: self-pause is owned by the stateful strategy-lifecycle component, not RiskGuard.
|
|
104
133
|
// RiskGuard only reports the per-gate evaluations; the lifecycle tracker remembers
|
|
105
134
|
// which gates are paused and fires the hook + notification on a running→paused
|
|
106
|
-
// transition (deduped by address+gateId, re-armed only on an explicit OPEN
|
|
135
|
+
// transition (deduped by address+gateId, re-armed only on an explicit OPEN — which, for the
|
|
136
|
+
// latched halt gates, can only arrive after the latch released on a UTC day rollover).
|
|
107
137
|
config.lifecycleTracker?.observe(address, sk, evaluations ?? [], source);
|
|
108
138
|
if (config.auditLog) {
|
|
109
139
|
await config.auditLog.append({
|
|
@@ -151,6 +181,8 @@ export function createRiskGuard(config) {
|
|
|
151
181
|
dailyLossLimitUsd: guardRails.dailyLossLimit ?? null,
|
|
152
182
|
dailyLossLimitPct: guardRails.dailyLossLimitPct ?? null,
|
|
153
183
|
accountValueAtOpen: avAtOpen,
|
|
184
|
+
// Day the snapshot belongs to — the halt latch releases on its rollover, not the box clock's.
|
|
185
|
+
utcDayStart: snap.meta?.utc_day_start_iso ?? null,
|
|
154
186
|
};
|
|
155
187
|
if (usdBreached || pctBreached) {
|
|
156
188
|
return makeEval("daily_loss_halt", source, {
|
|
@@ -175,6 +207,7 @@ export function createRiskGuard(config) {
|
|
|
175
207
|
const metrics = {
|
|
176
208
|
drawdownFromPeakPct: ddPct,
|
|
177
209
|
drawdownHaltPct: guardRails.drawdownHaltPct ?? null,
|
|
210
|
+
utcDayStart: snap.meta?.utc_day_start_iso ?? null,
|
|
178
211
|
};
|
|
179
212
|
if ((guardRails.drawdownHaltPct ?? 0) > 0 && ddPct >= guardRails.drawdownHaltPct) {
|
|
180
213
|
return makeEval("drawdown_halt", source, {
|
|
@@ -442,6 +475,15 @@ export function createRiskGuard(config) {
|
|
|
442
475
|
});
|
|
443
476
|
}
|
|
444
477
|
}
|
|
478
|
+
/**
|
|
479
|
+
* Route a halt-class evaluation through the lifecycle latch (no tracker = no latch). Awaited on
|
|
480
|
+
* both the short-circuit and the evaluateAll path, so the verdict returned always reflects the
|
|
481
|
+
* latch, including one restored from disk after a restart.
|
|
482
|
+
*/
|
|
483
|
+
async function latched(address, ev, releaseOnDayRollover) {
|
|
484
|
+
const apply = config.lifecycleTracker?.applyLatch;
|
|
485
|
+
return apply ? apply.call(config.lifecycleTracker, address, ev, { releaseOnDayRollover }) : ev;
|
|
486
|
+
}
|
|
445
487
|
// ── Main checkGate ───────────────────────────────────────────────
|
|
446
488
|
async function checkGate(address, opts) {
|
|
447
489
|
const guardRails = config.strategies.get(address)?.guardRails;
|
|
@@ -455,9 +497,8 @@ export function createRiskGuard(config) {
|
|
|
455
497
|
const evaluateAll = opts?.evaluateAll === true;
|
|
456
498
|
const gates = [];
|
|
457
499
|
// Gates 1a + 1b share one API call
|
|
458
|
-
const hasLossLimit = (guardRails
|
|
459
|
-
|
|
460
|
-
const hasDrawdown = guardRails.drawdownHaltPct != null && guardRails.drawdownHaltPct > 0;
|
|
500
|
+
const hasLossLimit = hasDailyLossLimit(guardRails);
|
|
501
|
+
const hasDrawdown = hasDrawdownHalt(guardRails);
|
|
461
502
|
let snap = null;
|
|
462
503
|
let snapFailed = false;
|
|
463
504
|
const snapAttempted = hasLossLimit || hasDrawdown;
|
|
@@ -476,7 +517,7 @@ export function createRiskGuard(config) {
|
|
|
476
517
|
}
|
|
477
518
|
}
|
|
478
519
|
if (hasLossLimit) {
|
|
479
|
-
const ev = await evalDailyLossHalt(guardRails, snap, source, snapFailed);
|
|
520
|
+
const ev = await latched(address, await evalDailyLossHalt(guardRails, snap, source, snapFailed), true);
|
|
480
521
|
gates.push(ev);
|
|
481
522
|
if (!evaluateAll && ev.status !== "OPEN" && ev.status !== "N_A") {
|
|
482
523
|
const result = { gate: ev.status, reason: ev.reason };
|
|
@@ -485,7 +526,7 @@ export function createRiskGuard(config) {
|
|
|
485
526
|
}
|
|
486
527
|
}
|
|
487
528
|
if (hasDrawdown) {
|
|
488
|
-
const ev = await evalDrawdownHalt(guardRails, snap, source, snapFailed);
|
|
529
|
+
const ev = await latched(address, await evalDrawdownHalt(guardRails, snap, source, snapFailed), guardRails.drawdownResetOnDayRollover === true);
|
|
489
530
|
gates.push(ev);
|
|
490
531
|
if (!evaluateAll && ev.status !== "OPEN" && ev.status !== "N_A") {
|
|
491
532
|
const result = { gate: ev.status, reason: ev.reason };
|