@sema-agent/server 7.138.0 → 7.140.0
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/MIGRATION.md +457 -7
- package/README.md +7 -4
- package/README.zh-CN.md +6 -4
- package/USAGE.md +91 -41
- package/deploy/sema-up/README.md +1 -1
- package/deploy/sema-up/lib/lanes.json +3 -2
- package/dist/adoption/runner.js +1 -1
- package/dist/adoption/sql.js +1 -1
- package/dist/adoption/wire.d.ts +3 -3
- package/dist/approval-card.d.ts +26 -26
- package/dist/bench/s1/arms.d.ts +1 -1
- package/dist/bench/s1/arms.js +1 -3
- package/dist/bench/s1/live-deps.js +3 -2
- package/dist/bench/s1/row.d.ts +5 -2
- package/dist/bench/s1/row.js +2 -22
- package/dist/bench/s1/run-firm.js +2 -2
- package/dist/boot/adoption.js +1 -1
- package/dist/boot/device-lane.d.ts +8 -3
- package/dist/boot/device-lane.js +7 -2
- package/dist/boot/execution-env.d.ts +4 -2
- package/dist/boot/execution-env.js +28 -34
- package/dist/boot/execution-lane.d.ts +9 -1
- package/dist/boot/execution-lane.js +6 -1
- package/dist/boot/governance-seams.d.ts +3 -2
- package/dist/boot/governance-seams.js +9 -11
- package/dist/boot/memory-boundary.d.ts +14 -51
- package/dist/boot/memory-boundary.js +10 -20
- package/dist/boot/memory-consolidation.d.ts +15 -11
- package/dist/boot/memory-consolidation.js +25 -14
- package/dist/boot/resolve-spec.d.ts +4 -6
- package/dist/boot/resolve-spec.js +10 -13
- package/dist/boot/retention-lane.d.ts +5 -5
- package/dist/boot/retention-lane.js +0 -6
- package/dist/boot/runner-deps.d.ts +6 -4
- package/dist/boot/runner-deps.js +3 -1
- package/dist/boot/session-faces.d.ts +0 -3
- package/dist/boot/session-faces.js +15 -8
- package/dist/boot/stage-02-web-admin-pull.js +2 -2
- package/dist/boot/stage-03-store-backend.d.ts +2 -6
- package/dist/boot/stage-03-store-backend.js +2 -3
- package/dist/boot/stage-04-stores.d.ts +2 -6
- package/dist/boot/stage-04-stores.js +5 -5
- package/dist/boot/stage-05-execution-env.d.ts +2 -6
- package/dist/boot/stage-05-execution-env.js +2 -2
- package/dist/boot/stage-06-runners.d.ts +2 -6
- package/dist/boot/stage-06-runners.js +2 -3
- package/dist/boot/stage-07-capability-layer.d.ts +2 -6
- package/dist/boot/stage-08-reapers.d.ts +2 -6
- package/dist/boot/stage-09-leader.d.ts +2 -6
- package/dist/boot/stage-09-leader.js +1 -2
- package/dist/boot/stage-10-http-server.d.ts +2 -6
- package/dist/boot/stage-10-http-server.js +7 -6
- package/dist/boot/stores.d.ts +3 -6
- package/dist/boot/stores.js +27 -40
- package/dist/boot/task-list-lane.d.ts +1 -1
- package/dist/boot/task-list-lane.js +1 -1
- package/dist/boot/web-admin.js +37 -11
- package/dist/capabilities/execution-lane.d.ts +2 -2
- package/dist/capabilities/mcp-probe.js +1 -1
- package/dist/capabilities/scenarios.d.ts +1 -1
- package/dist/capability-facts.d.ts +15 -7
- package/dist/capability-facts.js +8 -3
- package/dist/config-catalog.js +9 -8
- package/dist/config-invariants.d.ts +23 -3
- package/dist/config-invariants.js +42 -0
- package/dist/config-provider.d.ts +33 -37
- package/dist/config-provider.js +51 -30
- package/dist/config-types.d.ts +21 -7
- package/dist/config.d.ts +33 -0
- package/dist/config.js +46 -16
- package/dist/delegated-session-owner.d.ts +4 -3
- package/dist/delegated-session-owner.js +1 -1
- package/dist/deployment-shape.d.ts +10 -9
- package/dist/deployment-shape.js +4 -4
- package/dist/device-enrollment.d.ts +41 -2
- package/dist/device-enrollment.js +27 -12
- package/dist/device-store.d.ts +58 -85
- package/dist/device-store.js +19 -49
- package/dist/device-ws-hub.js +2 -1
- package/dist/env-name-allowlist-knobs.d.ts +5 -4
- package/dist/exec-cut.d.ts +60 -0
- package/dist/exec-cut.js +36 -0
- package/dist/execution-lane-caps.d.ts +115 -105
- package/dist/execution-lane-caps.js +76 -82
- package/dist/execution-placement.d.ts +259 -0
- package/dist/execution-placement.js +199 -0
- package/dist/field-conflict.d.ts +3 -2
- package/dist/field-conflict.js +1 -0
- package/dist/hosted-posture.d.ts +2 -2
- package/dist/http/admission.js +8 -19
- package/dist/http/checkpoint-ctx.d.ts +21 -12
- package/dist/http/checkpoint-ctx.js +4 -2
- package/dist/http/claimed-run.d.ts +1 -1
- package/dist/http/durable-run-leg.js +9 -5
- package/dist/http/execution-context.d.ts +218 -0
- package/dist/http/execution-context.js +330 -0
- package/dist/http/memory-compliance-failure-reply.d.ts +3 -1
- package/dist/http/memory-compliance-failure-reply.js +5 -0
- package/dist/http/memory-layer-reply.d.ts +30 -0
- package/dist/http/memory-layer-reply.js +24 -0
- package/dist/http/resume-legs.js +63 -36
- package/dist/http/retired-service-deps.d.ts +1 -1
- package/dist/http/retired-service-deps.js +1 -1
- package/dist/http/route-ctx.d.ts +14 -8
- package/dist/http/routes/adoption.js +1 -1
- package/dist/http/routes/background.d.ts +29 -1
- package/dist/http/routes/background.js +29 -2
- package/dist/http/routes/devices.d.ts +13 -19
- package/dist/http/routes/devices.js +21 -26
- package/dist/http/routes/memory-bundle.js +3 -0
- package/dist/http/routes/memory-compliance.js +8 -1
- package/dist/http/routes/memory-consolidation.js +12 -1
- package/dist/http/routes/memory-origin.js +14 -2
- package/dist/http/routes/memory-policy.js +5 -0
- package/dist/http/routes/session-sync.js +110 -15
- package/dist/http/routes/sessions.d.ts +6 -0
- package/dist/http/routes/sessions.js +143 -22
- package/dist/http/routes/side-query.d.ts +12 -4
- package/dist/http/routes/side-query.js +4 -5
- package/dist/http/routes/tasks.js +41 -33
- package/dist/http/server.d.ts +40 -44
- package/dist/http/server.js +13 -2
- package/dist/http/session-inherit-env.d.ts +3 -4
- package/dist/http/session-inherit-env.js +1 -1
- package/dist/http/wire-types.d.ts +8 -12
- package/dist/identity-source.d.ts +1 -1
- package/dist/identity-source.js +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/lane-home-probe.d.ts +68 -42
- package/dist/lane-home-probe.js +53 -30
- package/dist/leader/wire.js +5 -4
- package/dist/memory-bundle-engine.d.ts +16 -9
- package/dist/memory-bundle-engine.js +29 -6
- package/dist/memory-operator-faces.d.ts +85 -30
- package/dist/memory-operator-faces.js +136 -30
- package/dist/memory-project-layer.d.ts +3 -21
- package/dist/memory-project-layer.js +11 -8
- package/dist/memory-scope-stores.d.ts +73 -0
- package/dist/memory-scope-stores.js +86 -0
- package/dist/memory-scope.d.ts +29 -5
- package/dist/memory-scope.js +16 -4
- package/dist/memory-sync-client.d.ts +70 -18
- package/dist/memory-sync-client.js +215 -117
- package/dist/memory-sync.d.ts +1 -1
- package/dist/memory-sync.js +3 -2
- package/dist/observability/cost-taxonomy.d.ts +2 -2
- package/dist/observability/fail-open.d.ts +12 -0
- package/dist/observability/fail-open.js +12 -0
- package/dist/observability/run-terminal.js +0 -1
- package/dist/orchestration/workflow-notify-journal.js +4 -4
- package/dist/org-memory-admission.d.ts +4 -3
- package/dist/org-memory-admission.js +6 -6
- package/dist/parked-decide.d.ts +34 -9
- package/dist/parked-decide.js +12 -19
- package/dist/parked-revive-surface.d.ts +12 -15
- package/dist/parked-revive-surface.js +3 -6
- package/dist/peer-seat.d.ts +13 -7
- package/dist/peer-seat.js +37 -3
- package/dist/plugins/adoption-log-sql.js +4 -4
- package/dist/plugins/approval-ask-store-file.d.ts +7 -0
- package/dist/plugins/approval-ask-store-file.js +11 -0
- package/dist/plugins/approval-ask-store-memory.d.ts +6 -0
- package/dist/plugins/approval-ask-store-memory.js +12 -0
- package/dist/plugins/approval-ask-store-sql.d.ts +22 -5
- package/dist/plugins/approval-ask-store-sql.js +44 -26
- package/dist/plugins/approval-nonce-store.js +4 -4
- package/dist/plugins/blob-backend.d.ts +4 -4
- package/dist/plugins/blob-backend.js +7 -7
- package/dist/plugins/breaker-state-sql.js +2 -2
- package/dist/plugins/caching-session-store.d.ts +6 -2
- package/dist/plugins/caching-session-store.js +9 -3
- package/dist/plugins/checkpoint-index-columns.js +2 -2
- package/dist/plugins/checkpoint-store-sql.d.ts +6 -5
- package/dist/plugins/checkpoint-store-sql.js +21 -23
- package/dist/plugins/device-store-sql.d.ts +25 -51
- package/dist/plugins/device-store-sql.js +68 -122
- package/dist/plugins/ensure-index.d.ts +1 -2
- package/dist/plugins/execution-placement-sql.d.ts +151 -0
- package/dist/plugins/execution-placement-sql.js +223 -0
- package/dist/plugins/file-history-store-sql.d.ts +9 -8
- package/dist/plugins/file-history-store-sql.js +9 -9
- package/dist/plugins/file-run-store.d.ts +6 -1
- package/dist/plugins/file-run-store.js +4 -0
- package/dist/plugins/fork-routing-session-store.d.ts +6 -0
- package/dist/plugins/fork-routing-session-store.js +16 -0
- package/dist/plugins/image-bake-store-sql.js +9 -9
- package/dist/plugins/image-index-sql.js +11 -11
- package/dist/plugins/leader-run-store-sql.js +4 -4
- package/dist/plugins/local-session-store.d.ts +149 -50
- package/dist/plugins/local-session-store.js +382 -107
- package/dist/plugins/mailbox-store-sql.d.ts +2 -1
- package/dist/plugins/mailbox-store-sql.js +4 -4
- package/dist/plugins/memory-engine-tidb.js +5 -5
- package/dist/plugins/memory-key-guards.d.ts +4 -0
- package/dist/plugins/memory-key-guards.js +1 -0
- package/dist/plugins/memory-optout-grant-store-sql.js +1 -1
- package/dist/plugins/memory-run-store.d.ts +1 -1
- package/dist/plugins/memory-sync-store-tidb.js +3 -3
- package/dist/plugins/one-time-migrations.d.ts +117 -8
- package/dist/plugins/one-time-migrations.js +408 -38
- package/dist/plugins/org-delivery-quota-store.js +2 -2
- package/dist/plugins/outcome-ledger-sql.d.ts +2 -2
- package/dist/plugins/outcome-ledger-sql.js +2 -2
- package/dist/plugins/permission-rule-store-sql.d.ts +17 -19
- package/dist/plugins/permission-rule-store-sql.js +29 -32
- package/dist/plugins/pg-pool.d.ts +7 -3
- package/dist/plugins/pg-session-storage.d.ts +31 -20
- package/dist/plugins/pg-session-storage.js +120 -52
- package/dist/plugins/remote-env-adb.d.ts +18 -19
- package/dist/plugins/remote-env-adb.js +91 -66
- package/dist/plugins/remote-env-device.d.ts +23 -31
- package/dist/plugins/remote-env-device.js +19 -17
- package/dist/plugins/remote-env-e2b.d.ts +27 -21
- package/dist/plugins/remote-env-e2b.js +91 -45
- package/dist/plugins/remote-env-file-error.d.ts +3 -1
- package/dist/plugins/remote-env-file-error.js +9 -3
- package/dist/plugins/remote-env-host.d.ts +31 -34
- package/dist/plugins/remote-env-host.js +91 -72
- package/dist/plugins/remote-env-k8s.d.ts +13 -29
- package/dist/plugins/remote-env-k8s.js +63 -55
- package/dist/plugins/remote-env-local-docker.d.ts +24 -12
- package/dist/plugins/remote-env-local-docker.js +49 -61
- package/dist/plugins/remote-env-ssh.d.ts +11 -19
- package/dist/plugins/remote-env-ssh.js +74 -57
- package/dist/plugins/remote-shell.d.ts +100 -3
- package/dist/plugins/remote-shell.js +166 -2
- package/dist/plugins/resume-anchor-store-sql.js +2 -2
- package/dist/plugins/retention-lane-store-sql.d.ts +1 -1
- package/dist/plugins/retention-lane-store-sql.js +2 -2
- package/dist/plugins/retention-store-sql.d.ts +10 -7
- package/dist/plugins/retention-store-sql.js +13 -7
- package/dist/plugins/run-store-sql.d.ts +13 -3
- package/dist/plugins/run-store-sql.js +20 -15
- package/dist/plugins/schema-consistency.d.ts +21 -11
- package/dist/plugins/schema-consistency.js +15 -9
- package/dist/plugins/schema-drift-sentence.d.ts +27 -0
- package/dist/plugins/schema-drift-sentence.js +38 -0
- package/dist/plugins/schema-ensure-legs.d.ts +2 -3
- package/dist/plugins/schema-ensure-legs.js +2 -2
- package/dist/plugins/schema-live-columns.d.ts +1 -1
- package/dist/plugins/session-capture-record-store-sql.js +1 -1
- package/dist/plugins/session-fork.d.ts +54 -0
- package/dist/plugins/session-fork.js +38 -1
- package/dist/plugins/session-row-sql.d.ts +22 -0
- package/dist/plugins/session-row-sql.js +81 -0
- package/dist/plugins/session-rules-column.d.ts +1 -1
- package/dist/plugins/session-rules-column.js +1 -1
- package/dist/plugins/session-store.d.ts +1 -1
- package/dist/plugins/session-workspace-cell.d.ts +1 -1
- package/dist/plugins/session-workspace-cell.js +1 -1
- package/dist/plugins/shared-memory-store-sql.js +2 -2
- package/dist/plugins/sql-driver.d.ts +10 -5
- package/dist/plugins/sql-driver.js +6 -6
- package/dist/plugins/sql-errors.js +1 -1
- package/dist/plugins/store-backend.d.ts +5 -7
- package/dist/plugins/store-backend.js +23 -11
- package/dist/plugins/store-contracts.d.ts +25 -5
- package/dist/plugins/task-list-store-sql.js +11 -11
- package/dist/plugins/tidb-pool.d.ts +12 -7
- package/dist/plugins/tidb-pool.js +13 -7
- package/dist/plugins/tidb-session-storage.js +4 -4
- package/dist/plugins/tidb-session-store.d.ts +57 -26
- package/dist/plugins/tidb-session-store.js +127 -59
- package/dist/plugins/tool-result-store-sql.d.ts +5 -4
- package/dist/plugins/tool-result-store-sql.js +21 -13
- package/dist/plugins/user-input-ledger-sql.js +2 -2
- package/dist/plugins/workflow-journal-store-sql.js +5 -5
- package/dist/plugins/workflow-run-store-sql.js +19 -19
- package/dist/plugins/write-behind-counter.d.ts +2 -3
- package/dist/plugins/write-behind-counter.js +5 -5
- package/dist/project-memory.d.ts +9 -15
- package/dist/project-memory.js +5 -4
- package/dist/request-key-closure.js +1 -1
- package/dist/request-value-closure.d.ts +6 -7
- package/dist/request-value-closure.js +1 -3
- package/dist/resource-suspend.d.ts +14 -12
- package/dist/resource-suspend.js +1 -1
- package/dist/resource-window.d.ts +4 -3
- package/dist/run-local.d.ts +6 -0
- package/dist/run-local.js +34 -35
- package/dist/runs.d.ts +10 -5
- package/dist/runs.js +52 -66
- package/dist/security.d.ts +38 -12
- package/dist/security.js +8 -2
- package/dist/server-secret-env.d.ts +9 -5
- package/dist/session-children-retire.d.ts +27 -9
- package/dist/session-children-retire.js +9 -5
- package/dist/session-incarnation.d.ts +20 -10
- package/dist/session-incarnation.js +5 -3
- package/dist/session-policy-wire.d.ts +1 -1
- package/dist/session-row.d.ts +114 -5
- package/dist/session-row.js +55 -5
- package/dist/session-titler.d.ts +2 -2
- package/dist/sql-engine-posture.d.ts +1 -1
- package/dist/sql-engine-posture.js +1 -1
- package/dist/{plugins → stores-sql}/background-agent-store-sql.d.ts +2 -2
- package/dist/{plugins → stores-sql}/background-agent-store-sql.js +8 -8
- package/dist/{plugins → stores-sql}/session-policy-store-sql.d.ts +7 -5
- package/dist/{plugins → stores-sql}/session-policy-store-sql.js +12 -12
- package/dist/{plugins → stores-sql}/usage-window-store-sql.d.ts +1 -1
- package/dist/{plugins → stores-sql}/usage-window-store-sql.js +3 -3
- package/dist/task-a2a.d.ts +1 -1
- package/dist/task-a2a.js +5 -6
- package/dist/task-cwd.d.ts +6 -1
- package/dist/task-mcp.d.ts +22 -9
- package/dist/task-mcp.js +17 -9
- package/dist/terminal.d.ts +27 -0
- package/dist/terminal.js +6 -0
- package/dist/tool-approval.d.ts +6 -0
- package/dist/tool-approval.js +8 -1
- package/dist/trace/project.d.ts +1 -0
- package/dist/trace/project.js +1 -0
- package/dist/trace/redact.d.ts +3 -1
- package/dist/trace/redact.js +80 -28
- package/dist/trace/self-minted-wire.d.ts +169 -2
- package/dist/trace/self-minted-wire.js +54 -1
- package/dist/url-refusal.d.ts +1 -1
- package/dist/web-admin-client/apply-effective.d.ts +17 -3
- package/dist/web-admin-client/apply-effective.js +20 -10
- package/dist/web-admin-client/candidate-gate.d.ts +11 -7
- package/dist/web-admin-client/candidate-gate.js +1 -1
- package/dist/web-admin-client/http-client.d.ts +5 -4
- package/dist/web-admin-client/http-client.js +2 -2
- package/dist/web-admin-client/read-warnings.d.ts +7 -17
- package/dist/web-admin-client/read-warnings.js +5 -9
- package/dist/web-admin-client/skills-mcp.js +3 -2
- package/dist/web-admin-client/types.d.ts +6 -0
- package/package.json +3 -3
- package/wire-changes/server@7.139.0.json +348 -0
- package/wire-changes/server@7.140.0.json +184 -0
- package/dist/http/device-placement.d.ts +0 -175
- package/dist/http/device-placement.js +0 -145
|
@@ -6,11 +6,12 @@ import { setLeafAdvanceListener } from "../session-leaf-bus.js";
|
|
|
6
6
|
import { SessionWatchRegistry, posIntEnv } from "../session-watch.js";
|
|
7
7
|
import { defaultTaskRegistry, peerSessionBoxHandle } from "@sema-agent/core";
|
|
8
8
|
import { reapSessionBackgroundHard } from "../background-session-reap.js";
|
|
9
|
-
import { probeSessionChildren, retireSessionChildren, SessionChildrenStopIncompleteError } from "../session-children-retire.js";
|
|
9
|
+
import { probeSessionChildren, retireSessionChildren, sessionChildrenScope, SessionChildrenStopIncompleteError } from "../session-children-retire.js";
|
|
10
|
+
import { SessionActiveRunError } from "../execution-placement.js";
|
|
10
11
|
import { headReadOf, redactIncarnations } from "../session-incarnation.js";
|
|
11
12
|
import { recordFailOpen } from "../observability/fail-open.js";
|
|
12
13
|
export function createSessionFaces(ctx) {
|
|
13
|
-
const { config, logger, metrics, localRoot, backend, sessionStore, runStore, checkpointStore, toolResultStore, resumeAnchorStore, approvalExemptionStore, sessionPolicyStore, taskAttachmentStore, fileHistoryErasure, workflowCompletionInbox, taskListLane,
|
|
14
|
+
const { config, logger, metrics, localRoot, backend, sessionStore, runStore, checkpointStore, toolResultStore, resumeAnchorStore, approvalExemptionStore, sessionPolicyStore, taskAttachmentStore, fileHistoryErasure, workflowCompletionInbox, taskListLane, dropSessionScoped, mailboxStore, mailboxRecipientLifecycle, backgroundAgentStore, userInputLedgerStore, spaceReclaimer, } = ctx;
|
|
14
15
|
const mysqlPool = backend?.mysqlPool();
|
|
15
16
|
const auditPgPool = backend?.pgPool();
|
|
16
17
|
const auditLocalRoot = backend?.kind === "local" ? (config.localDataRoot ?? localRoot) : undefined;
|
|
@@ -49,7 +50,7 @@ export function createSessionFaces(ctx) {
|
|
|
49
50
|
return { deleted: false };
|
|
50
51
|
spaceKey = spaceReclaimer !== undefined ? head.incarnation : undefined;
|
|
51
52
|
}
|
|
52
|
-
const childScope = owner
|
|
53
|
+
const childScope = sessionChildrenScope(owner);
|
|
53
54
|
const reach = await probeSessionChildren({ agentStore: backgroundAgentStore, checkpointStore, registry: defaultTaskRegistry }, sessionId, childScope);
|
|
54
55
|
if (!reach.reachable) {
|
|
55
56
|
logger.warn("session_delete_children_still_alive", { sessionId, remaining: reach.unreachableHandles.length, handles: reach.unreachableHandles });
|
|
@@ -60,8 +61,8 @@ export function createSessionFaces(ctx) {
|
|
|
60
61
|
return { active: runs.active };
|
|
61
62
|
{
|
|
62
63
|
const children = await retireSessionChildren({ agentStore: backgroundAgentStore, checkpointStore, registry: defaultTaskRegistry }, sessionId, childScope);
|
|
63
|
-
if (children.
|
|
64
|
-
logger.info("session_children_retired", { sessionId, found: children.
|
|
64
|
+
if (children.observed.length > 0)
|
|
65
|
+
logger.info("session_children_retired", { sessionId, found: children.observed.length, stopped: children.stopped, rounds: children.rounds });
|
|
65
66
|
if (children.stopped === "incomplete") {
|
|
66
67
|
logger.warn("session_delete_children_stop_incomplete", { sessionId, remaining: children.remainingHandles.length, handles: children.remainingHandles });
|
|
67
68
|
throw new SessionChildrenStopIncompleteError(sessionId, children.remainingHandles.length);
|
|
@@ -91,8 +92,6 @@ export function createSessionFaces(ctx) {
|
|
|
91
92
|
await userInputLedgerStore.deleteBySession(sessionId);
|
|
92
93
|
if (taskListLane)
|
|
93
94
|
await taskListLane.deleteBySession(sessionId);
|
|
94
|
-
if (deviceStore)
|
|
95
|
-
await deviceStore.deleteByRootSession(sessionId);
|
|
96
95
|
dropSessionScoped?.(sessionId);
|
|
97
96
|
if (fileHistoryErasure) {
|
|
98
97
|
if (typeof fileHistoryErasure.deleteBySession === "function")
|
|
@@ -122,7 +121,15 @@ export function createSessionFaces(ctx) {
|
|
|
122
121
|
}
|
|
123
122
|
if (peerBox !== undefined)
|
|
124
123
|
await peerBox.store.drop(peerBox.scope, peerBox.handle);
|
|
125
|
-
|
|
124
|
+
let historyDeleted;
|
|
125
|
+
try {
|
|
126
|
+
historyDeleted = await ownerAware.deleteSession(sessionId, owner);
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
if (err instanceof SessionActiveRunError)
|
|
130
|
+
return { active: err.activeTaskId };
|
|
131
|
+
throw err;
|
|
132
|
+
}
|
|
126
133
|
sessionWatchRegistry?.dropSession(sessionId);
|
|
127
134
|
if (historyDeleted && spaceReclaimer !== undefined && spaceKey !== undefined) {
|
|
128
135
|
void spaceReclaimer.reclaim([{ sessionId, spaceKey }]).catch((err) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createUnpricedCeilingVerdict } from "./unpriced-ceiling-verdict.js";
|
|
2
2
|
import { createWebAdminRuntime } from "./web-admin.js";
|
|
3
3
|
import { composeExecutionLane, FILE_SOURCED_LANES } from "./execution-lane.js";
|
|
4
|
-
import {
|
|
4
|
+
import { configSourceKind } from "../config-provider.js";
|
|
5
5
|
import { logConfigDirMigration, migrateLocalConfigDirectory } from "../config-d-migration.js";
|
|
6
6
|
import { assertLocalConfigDirTrusted } from "../config-dir-trust.js";
|
|
7
7
|
import { defaultModelRefusal, refusedNameMintedRefusal } from "../model-entry-refusal.js";
|
|
@@ -10,7 +10,7 @@ import { judgeServedModelRoute } from "../model-route-endpoint.js";
|
|
|
10
10
|
import { servedModelTableLeg } from "../model-select.js";
|
|
11
11
|
export async function runStage02(ctx) {
|
|
12
12
|
const { config, localRoot, logger, metrics } = ctx;
|
|
13
|
-
const configSource =
|
|
13
|
+
const configSource = configSourceKind(config);
|
|
14
14
|
if (configSource === "local") {
|
|
15
15
|
await assertLocalConfigDirTrusted({ root: localRoot, declaredOwnerUid: config.configLocalOwnerUid });
|
|
16
16
|
logConfigDirMigration(logger, await migrateLocalConfigDirectory(localRoot));
|
|
@@ -7,16 +7,12 @@ export declare function runStage03(ctx: Awaited<ReturnType<typeof runStage02>>):
|
|
|
7
7
|
instanceId: string;
|
|
8
8
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
9
9
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
10
|
-
memoryEngine:
|
|
11
|
-
|
|
12
|
-
root: string;
|
|
13
|
-
} | undefined;
|
|
14
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
10
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
11
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
15
12
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
16
13
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
17
14
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
18
15
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
19
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
20
16
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
21
17
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
22
18
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -2,10 +2,9 @@ import { uuidv7 } from "@sema-agent/core";
|
|
|
2
2
|
import { openStores } from "./stores.js";
|
|
3
3
|
export async function runStage03(ctx) {
|
|
4
4
|
const { config, localRoot, logger, metrics } = ctx;
|
|
5
|
-
const { backend, storePosture, memoryEngine, engineDataRoot, memorySyncCursors, rosterStore, backgroundAgentStore, taskAttachmentStore, mailboxStore, mailboxRecipientLifecycle,
|
|
5
|
+
const { backend, storePosture, memoryEngine, engineDataRoot, memorySyncCursors, rosterStore, backgroundAgentStore, taskAttachmentStore, mailboxStore, mailboxRecipientLifecycle, memoryExportStores, memorySyncRunner, sessionStore, breakerState, usageWindowStore, memoryPosture, taskListLane, sqlEngine, } = await openStores({ config, logger, metrics, localRoot });
|
|
6
6
|
const instanceId = uuidv7();
|
|
7
7
|
const sessionCaptureRecords = backend?.sessionCaptureRecords();
|
|
8
|
-
|
|
9
|
-
return { ...ctx, backend, backgroundAgentStore, breakerState, engineDataRoot, instanceId, mailboxRecipientLifecycle, mailboxStore, memoryEngine, memoryExportBackend, memoryPosture, memorySyncCursors, memorySyncRunner, rosterStore, sessionCaptureRecordStore, sessionCaptureRecords, sessionStore, sqlEngine, storePosture, taskAttachmentStore, taskListLane, usageWindowStore };
|
|
8
|
+
return { ...ctx, backend, backgroundAgentStore, breakerState, engineDataRoot, instanceId, mailboxRecipientLifecycle, mailboxStore, memoryEngine, memoryExportStores, memoryPosture, memorySyncCursors, memorySyncRunner, rosterStore, sessionCaptureRecords, sessionStore, sqlEngine, storePosture, taskAttachmentStore, taskListLane, usageWindowStore };
|
|
10
9
|
}
|
|
11
10
|
//# sourceMappingURL=stage-03-store-backend.js.map
|
|
@@ -37,16 +37,12 @@ export declare function runStage04(ctx: Awaited<ReturnType<typeof runStage03>>):
|
|
|
37
37
|
instanceId: string;
|
|
38
38
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
39
39
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
40
|
-
memoryEngine:
|
|
41
|
-
|
|
42
|
-
root: string;
|
|
43
|
-
} | undefined;
|
|
44
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
40
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
41
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
45
42
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
46
43
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
47
44
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
48
45
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
49
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
50
46
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
51
47
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
52
48
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -7,22 +7,22 @@ import { createBudgetAndTracing } from "./budget-tracing.js";
|
|
|
7
7
|
import { createRuleConsentLane } from "../rules-consent.js";
|
|
8
8
|
import { createConsolidationValve } from "./memory-consolidation.js";
|
|
9
9
|
export async function runStage04(ctx) {
|
|
10
|
-
const { backend, breakerState, config, logger, memoryEngine, metrics,
|
|
11
|
-
const memoryBundleFaces = memoryEngine ? createMemoryBundleFaces(memoryEngine, { ...(
|
|
10
|
+
const { backend, breakerState, config, logger, memoryEngine, metrics, sessionCaptureRecords } = ctx;
|
|
11
|
+
const memoryBundleFaces = memoryEngine ? createMemoryBundleFaces(memoryEngine, { ...(sessionCaptureRecords !== undefined ? { captureRecords: sessionCaptureRecords } : {}) }) : undefined;
|
|
12
12
|
const memoryComplianceFaces = memoryEngine
|
|
13
13
|
? createMemoryComplianceFaces(memoryEngine, {
|
|
14
14
|
onIncident: (err) => logger.warn("memory_compliance_incident", { code: err.code ?? null, detail: err.message }),
|
|
15
|
-
...(
|
|
15
|
+
...(sessionCaptureRecords !== undefined ? { captureRecords: sessionCaptureRecords } : {}),
|
|
16
16
|
})
|
|
17
17
|
: undefined;
|
|
18
18
|
const memoryOriginFaces = memoryEngine
|
|
19
19
|
? createMemoryOriginFaces(memoryEngine, {
|
|
20
20
|
onIncident: (err) => logger.warn("memory_origin_incident", { code: err.code ?? null, detail: err.message }),
|
|
21
|
-
...(
|
|
21
|
+
...(sessionCaptureRecords !== undefined ? { captureRecords: sessionCaptureRecords } : {}),
|
|
22
22
|
})
|
|
23
23
|
: undefined;
|
|
24
24
|
const sessionMemoryStatusFace = memoryEngine
|
|
25
|
-
? createSessionMemoryStatusFace(memoryEngine, { ...(
|
|
25
|
+
? createSessionMemoryStatusFace(memoryEngine, { ...(sessionCaptureRecords !== undefined ? { captureRecords: sessionCaptureRecords } : {}) })
|
|
26
26
|
: undefined;
|
|
27
27
|
const { valve: consolidationValve, watch: consolidationSeatWatch } = createConsolidationValve({ config, memoryEngine, logger });
|
|
28
28
|
const adoptionBoot = await runAdoptionBootScan({ backend, logger });
|
|
@@ -56,16 +56,12 @@ export declare function runStage05(ctx: Awaited<ReturnType<typeof runStage04>>):
|
|
|
56
56
|
instanceId: string;
|
|
57
57
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
58
58
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
59
|
-
memoryEngine:
|
|
60
|
-
|
|
61
|
-
root: string;
|
|
62
|
-
} | undefined;
|
|
63
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
59
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
60
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
64
61
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
65
62
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
66
63
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
67
64
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
68
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
69
65
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
70
66
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
71
67
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -10,7 +10,7 @@ import { SANDBOX_GIT_PLANE_OFF_TEXT } from "../sandbox-git-plane.js";
|
|
|
10
10
|
import { createPeerDesk } from "../peer-seat.js";
|
|
11
11
|
export async function runStage05(ctx) {
|
|
12
12
|
const { backend, config, instanceId, logger, metrics, sessionStore, taskAttachmentStore } = ctx;
|
|
13
|
-
const deviceLane = config.remoteExec?.provider === "device" ? createDeviceLane({ config, logger, metrics, backend, replicaId: instanceId }) : undefined;
|
|
13
|
+
const deviceLane = config.remoteExec?.provider === "device" ? createDeviceLane({ config, logger, metrics, backend, seat: sessionStore.executionPlacement, replicaId: instanceId }) : undefined;
|
|
14
14
|
const headOf = headReadOf(sessionStore);
|
|
15
15
|
const spaceCommits = backend !== undefined ? () => runStore : undefined;
|
|
16
16
|
const { perTaskImage, sessionEnvSelection, perSessionCwd, setSessionCwd, setSessionShellEnv, setSessionInheritEnv, fenceSessionOwner, dropSessionScoped, executionEnvFactory, worktreeReap, sendUserFileTaskEnvs, lspManager, spaceReclaimer, sandboxSecretSeatGate, sandboxPodReaper, readSandboxGitPlane, } = createExecutionEnv({ config, logger, metrics, taskAttachmentStore, ...(deviceLane ? { deviceLane } : {}), ...(spaceCommits !== undefined ? { spaceCommits } : {}), ...(headOf !== undefined ? { headOf } : {}), ...(backend !== undefined ? { runRows: () => runStore } : {}) });
|
|
@@ -29,7 +29,7 @@ export async function runStage05(ctx) {
|
|
|
29
29
|
const { registrations: deploymentMods, loaded: deploymentModsLoaded } = await assembleDeploymentMods({ metrics, ...(config.toolTrace ? { traceLogger: logger } : {}), brandIdentity: isBrandedDeployment(config), declaration: config.modsDeclaration, logger });
|
|
30
30
|
const peerDesk = createPeerDesk({ log: logger });
|
|
31
31
|
metrics.dynamicGauge("peer_registry_entries", "Peer desk entries (declared peer credentials registered for in-flight legs and the roster)", () => peerDesk.size().entries);
|
|
32
|
-
metrics.dynamicGauge("peer_registry_holders", "Peer desk host leases
|
|
32
|
+
metrics.dynamicGauge("peer_registry_holders", "Peer desk holders of entries (host leases and engine holds), summed across entries", () => peerDesk.size().holders);
|
|
33
33
|
return { ...ctx, deploymentMods, deploymentModsLoaded, deviceLane, peerDesk, dropSessionScoped, executionEnvFactory, fenceSessionOwner, lspManager, spaceReclaimer, sandboxPodReaper, sandboxGitPlane, perSessionCwd, perTaskImage, sendUserFileTaskEnvs, sessionEnvSelection, setSessionCwd, setSessionInheritEnv, setSessionShellEnv, worktreeReap };
|
|
34
34
|
}
|
|
35
35
|
//# sourceMappingURL=stage-05-execution-env.js.map
|
|
@@ -119,16 +119,12 @@ export declare function runStage06(ctx: Awaited<ReturnType<typeof runStage05>>):
|
|
|
119
119
|
instanceId: string;
|
|
120
120
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
121
121
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
122
|
-
memoryEngine:
|
|
123
|
-
|
|
124
|
-
root: string;
|
|
125
|
-
} | undefined;
|
|
126
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
122
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
123
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
127
124
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
128
125
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
129
126
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
130
127
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
131
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
132
128
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
133
129
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
134
130
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -30,7 +30,7 @@ import { parkedAskRedeem, runStore } from "./late-binds.js";
|
|
|
30
30
|
import { withInternalRunEnvs } from "../internal-run-env.js";
|
|
31
31
|
import { retentionSweepRuns } from "../plugins/retention-store-sql.js";
|
|
32
32
|
export async function runStage06(ctx) {
|
|
33
|
-
const { backend, backgroundAgentStore, brain, engineDataRoot, peerDesk, config, webAdmin, consolidationValve, deploymentMods, executionEnvFactory, fileHistoryStore, localRoot, logger, lspManager, mailboxRecipientLifecycle, mailboxStore, memoryEngine, memorySyncRunner, metrics, perSessionCwd, permissionRuleProvider, pricing, rosterStore, ruleConsent, sendUserFileTaskEnvs,
|
|
33
|
+
const { backend, backgroundAgentStore, brain, engineDataRoot, peerDesk, config, webAdmin, consolidationValve, deploymentMods, executionEnvFactory, fileHistoryStore, localRoot, logger, lspManager, mailboxRecipientLifecycle, mailboxStore, memoryEngine, memorySyncRunner, metrics, perSessionCwd, permissionRuleProvider, pricing, rosterStore, ruleConsent, sendUserFileTaskEnvs, sessionCaptureRecords, sessionPolicyStore, sessionStore, taskAttachmentStore, taskListLane, toolResultStore, tracer, usageWindowStore } = ctx;
|
|
34
34
|
const { sqlWorkflowRunStore, workflowNotifyJournal, workflowCompletionInbox, deliverWorkflowCompletion, workflowNotifyGate, fleetBus, workflowRunStore, workflowJournalStore, outcomeSink, workflowRecoverOpts, workflowAgentRegistry, subagentSteerRegistry, workflowAgentSessionIndex, workflowParkDecisions, } = createWorkflowOrchestration({ config, logger, metrics, localRoot, backend, getRunStore: () => runStore });
|
|
35
35
|
const parkCommitted = backend?.checkpoint && config.durableApproval ? createParkCommitWatch(backend.checkpoint(logger)) : undefined;
|
|
36
36
|
const checkpointStore = parkCommitted?.store;
|
|
@@ -70,7 +70,6 @@ export async function runStage06(ctx) {
|
|
|
70
70
|
const retentionLaneStore = backend?.retentionLane?.();
|
|
71
71
|
assertRetentionLaneWirable({
|
|
72
72
|
intervalSec: config.retentionSweep.intervalSec,
|
|
73
|
-
policy: config.retentionPolicy,
|
|
74
73
|
executor: retentionExecutor,
|
|
75
74
|
stores: [
|
|
76
75
|
{ name: "sessionStore", store: sessionStore },
|
|
@@ -95,7 +94,7 @@ export async function runStage06(ctx) {
|
|
|
95
94
|
...(config.memoryProvenance !== undefined ? { provenance: config.memoryProvenance } : {}),
|
|
96
95
|
onIncident: (err) => logger.warn("memory_consolidation_incident", { code: err.code ?? null, detail: err.message }),
|
|
97
96
|
onStopDetail: (audit) => logger.warn("memory_consolidation_stop_detail", audit),
|
|
98
|
-
...(
|
|
97
|
+
...(sessionCaptureRecords !== undefined ? { captureRecords: sessionCaptureRecords } : {}),
|
|
99
98
|
writeJudge: createOperatorValveWriteJudge({ ruleStoreProvider: permissionRuleProvider, config }),
|
|
100
99
|
onNotice: createEngineNoticeForwarder(logger, defaultEngineNoticeRouter, metrics),
|
|
101
100
|
})
|
|
@@ -135,16 +135,12 @@ export declare function runStage07(ctx: Awaited<ReturnType<typeof runStage06>>):
|
|
|
135
135
|
instanceId: string;
|
|
136
136
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
137
137
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
138
|
-
memoryEngine:
|
|
139
|
-
|
|
140
|
-
root: string;
|
|
141
|
-
} | undefined;
|
|
142
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
138
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
139
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
143
140
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
144
141
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
145
142
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
146
143
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
147
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
148
144
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
149
145
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
150
146
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -148,16 +148,12 @@ export declare function runStage08(ctx: Awaited<ReturnType<typeof runStage07>>):
|
|
|
148
148
|
instanceId: string;
|
|
149
149
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
150
150
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
151
|
-
memoryEngine:
|
|
152
|
-
|
|
153
|
-
root: string;
|
|
154
|
-
} | undefined;
|
|
155
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
151
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
152
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
156
153
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
157
154
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
158
155
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
159
156
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
160
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
161
157
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
162
158
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
163
159
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -172,16 +172,12 @@ export declare function runStage09(ctx: Awaited<ReturnType<typeof runStage08>>):
|
|
|
172
172
|
instanceId: string;
|
|
173
173
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
174
174
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
175
|
-
memoryEngine:
|
|
176
|
-
|
|
177
|
-
root: string;
|
|
178
|
-
} | undefined;
|
|
179
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
175
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
176
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
180
177
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
181
178
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
182
179
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
183
180
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
184
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
185
181
|
sessionCaptureRecords: import("../index.js").SessionCaptureRecordSource | undefined;
|
|
186
182
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
187
183
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -6,9 +6,8 @@ import { createLeaderFace } from "./leader.js";
|
|
|
6
6
|
import { assertStaticWiringConsistent } from "../http/routes/diagnostics.js";
|
|
7
7
|
import { buildDisplaySafeUrl } from "../trace/redact.js";
|
|
8
8
|
export function runStage09(ctx) {
|
|
9
|
-
const { approvalExemptionStore, backend, backgroundAgentStore, brain, checkpointStore, checkpointCtxSealing, config, webAdmin, deploymentMods,
|
|
9
|
+
const { approvalExemptionStore, backend, backgroundAgentStore, brain, checkpointStore, checkpointCtxSealing, config, webAdmin, deploymentMods, dropSessionScoped, durableEnabled, executionEnvFactory, fileHistoryErasure, governanceSeams, localRoot, logger, mailboxRecipientLifecycle, mailboxStore, metrics, pricing, resumeAnchorStore, runStore, runnerDeps, sessionPolicyStore, sessionStore, streamApprovalGate, taskAttachmentStore, spaceReclaimer, taskListLane, toolResultStore, tracer, usageWindowStore, userInputLedgerStore, workflowCompletionInbox } = ctx;
|
|
10
10
|
const { ownerAware, sessionAudit, sessionWatchRegistry, purgeSession, instrumentDegenerate, planCacheProbe } = createSessionFaces({
|
|
11
|
-
deviceStore: deviceLane?.store,
|
|
12
11
|
dropSessionScoped,
|
|
13
12
|
config, logger, metrics, localRoot, backend, sessionStore, runStore, checkpointStore, toolResultStore,
|
|
14
13
|
resumeAnchorStore, approvalExemptionStore, sessionPolicyStore, taskAttachmentStore, fileHistoryErasure,
|
|
@@ -171,16 +171,12 @@ export declare function runStage10(ctx: Awaited<ReturnType<typeof runStage09>>):
|
|
|
171
171
|
instanceId: string;
|
|
172
172
|
mailboxRecipientLifecycle: import("../plugins/mailbox-recipient-lifecycle.js").MailboxRecipientLifecycle | undefined;
|
|
173
173
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
174
|
-
memoryEngine:
|
|
175
|
-
|
|
176
|
-
root: string;
|
|
177
|
-
} | undefined;
|
|
178
|
-
memoryExportBackend: import("@sema-agent/core").MemoryBackend | undefined;
|
|
174
|
+
memoryEngine: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
175
|
+
memoryExportStores: import("../memory-scope-stores.js").MemoryScopeStores | undefined;
|
|
179
176
|
memoryPosture: import("../memory-posture.js").MemoryPosture;
|
|
180
177
|
memorySyncCursors: import("../plugins/memory-sync-store-pg.js").MemorySyncStore | undefined;
|
|
181
178
|
memorySyncRunner: import("../memory-sync-client.js").MemorySyncRunner | undefined;
|
|
182
179
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
183
|
-
sessionCaptureRecordStore: import("@sema-agent/core").SessionCaptureRecordStore | undefined;
|
|
184
180
|
sessionCaptureRecords: import("../plugins/store-backend.js").SessionCaptureRecordSource | undefined;
|
|
185
181
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
186
182
|
sqlEngine: import("../plugins/sql-driver.js").SqlEngineReading | undefined;
|
|
@@ -7,6 +7,7 @@ import { isPricingConfigured } from "../budget.js";
|
|
|
7
7
|
import { createHandsRunnerSelector } from "../capabilities/hands-lane.js";
|
|
8
8
|
import { createHttpServer } from "../http/server.js";
|
|
9
9
|
import { exportMemoryScope } from "../memory-export.js";
|
|
10
|
+
import { memoryStoreForRequest } from "../memory-scope-stores.js";
|
|
10
11
|
import { performMemorySync } from "../memory-sync.js";
|
|
11
12
|
import { backgroundAgentOutput, taskHandleOutput, taskHandleStop } from "../runs.js";
|
|
12
13
|
import { createStoreLiveProbe } from "../store-live-probe.js";
|
|
@@ -29,7 +30,7 @@ import { bindServerLateSeats } from "./late-binds.js";
|
|
|
29
30
|
import { serviceVersion } from "../service-version.js";
|
|
30
31
|
import { buildDisplaySafeUrl } from "../trace/redact.js";
|
|
31
32
|
export async function runStage10(ctx) {
|
|
32
|
-
const { peerDesk, approvalAskAudit, approvalExemptionStore, approvalNonceStore, authorize, backend, backgroundAgentStore, brain, breakerState, centerRuntimeCapsResolver, checkpointStore, checkpointCtxSealing, parkCommits, config, webAdmin, consolidationValve, costQuota, deploymentModsLoaded, deviceLane, drainState, durableEnabled, elicitation, fenceSessionOwner, fileHistoryStore, fleetBus, fleetLease, fleetUsage, governanceSeams, handslessRunner, hookAgent, hookLlm, hookWakeBus, imageBakes, imageIndex, instanceId, instrumentDegenerate, leaderEndpoint, loadedSkills, localRoot, logger, lspManager, mcpRevocations, memoryBundleFaces, memoryComplianceFaces, memoryConsolidationFaces, memoryEngine,
|
|
33
|
+
const { peerDesk, approvalAskAudit, approvalExemptionStore, approvalNonceStore, authorize, backend, backgroundAgentStore, brain, breakerState, centerRuntimeCapsResolver, checkpointStore, checkpointCtxSealing, parkCommits, config, webAdmin, consolidationValve, costQuota, deploymentModsLoaded, deviceLane, drainState, durableEnabled, elicitation, fenceSessionOwner, fileHistoryStore, fleetBus, fleetLease, fleetUsage, governanceSeams, handslessRunner, hookAgent, hookLlm, hookWakeBus, imageBakes, imageIndex, instanceId, instrumentDegenerate, leaderEndpoint, loadedSkills, localRoot, logger, lspManager, mcpRevocations, memoryBundleFaces, memoryComplianceFaces, memoryConsolidationFaces, memoryEngine, memoryExportStores, memoryOptOutGrantStore, memoryOriginFaces, memoryPosture, memorySyncCursors, memorySyncRunner, metrics, modelUsageTracker, orgMemoryAdmission, otelExporter, outcomeSink, ownerAware, parkedReviveInheritedGate, parkedReviveSurface, perSessionCwd, perTaskImage, planCacheProbe, pricing, principalCaps, promptManifestTracker, purgeSession, question, rateLimiter, reaper, webAdminJwtVerifier, resumeAnchorStore, retentionLaneStarted, retentionLaneStore, ruleConsent, runStore, runner, runnerDeps, runtimeCapsPeekResolver, sandboxGitPlane, scenarioDetails, scenarios, selectEnvTool, sendFileLedger, sendUserFileEmitter, sendUserFileToolSpec, sessionAudit, sessionEnvSelection, sessionMemoryStatusFace, sessionPolicyStore, sessionTitler, sessionWatchRegistry, setSessionCwd, setSessionInheritEnv, setSessionShellEnv, sharedMemoryStore, sideQueryAccounting, sqlEngine, sqlWorkflowRunStore, staticWiring, storePosture, subRunner, subagentSteerRegistry, taskAttachmentStore, taskLimitCaps, taskTimeoutSec, toolApproval, toolResultStore, usageWindowStore, userInputLedger, webSearchProvider, workflowAgentRegistry, workflowAgentSessionIndex, workflowParkDecisions, workflowCompletionInbox, workflowJournalStore, workflowModelAllowlistSnapshot, workflowNotifyGate, workflowNotifyJournal, workflowRecoverOpts, workflowRunStore, workflowsCapable, orgDeliveryGate } = ctx;
|
|
33
34
|
const stores = {
|
|
34
35
|
runStore,
|
|
35
36
|
resumeAnchorStore: resumeAnchorStore ? resumeAnchorStore : undefined,
|
|
@@ -86,9 +87,9 @@ export async function runStage10(ctx) {
|
|
|
86
87
|
subagentTaskOutput: (handle, access) => backgroundAgentOutput(defaultTaskRegistry, handle, access, backgroundAgentStore),
|
|
87
88
|
taskHandleOutput: (handle, access) => taskHandleOutput(defaultTaskRegistry, handle, access, backgroundAgentStore),
|
|
88
89
|
taskHandleStop: (handle, access) => taskHandleStop(defaultTaskRegistry, handle, access, backgroundAgentStore),
|
|
89
|
-
memoryExport:
|
|
90
|
-
memorySync:
|
|
91
|
-
? (scope, syncReq) => performMemorySync(
|
|
90
|
+
memoryExport: memoryExportStores ? (scope) => exportMemoryScope(memoryStoreForRequest(memoryExportStores, [scope]), scope) : undefined,
|
|
91
|
+
memorySync: memoryExportStores && memorySyncCursors
|
|
92
|
+
? (scope, syncReq) => performMemorySync(memoryStoreForRequest(memoryExportStores, [scope]), memorySyncCursors, scope, syncReq)
|
|
92
93
|
: undefined,
|
|
93
94
|
memoryBundleExport: memoryBundleFaces ? memoryBundleFaces.exportScopes : undefined,
|
|
94
95
|
memoryBundleImport: memoryBundleFaces ? memoryBundleFaces.importBundle : undefined,
|
|
@@ -105,6 +106,7 @@ export async function runStage10(ctx) {
|
|
|
105
106
|
sessionMirrorRuling: principalCaps
|
|
106
107
|
? async (p) => (await principalCaps.executionRuling(p))?.sessionMirror
|
|
107
108
|
: undefined,
|
|
109
|
+
executionRuling: principalCaps ? (p) => principalCaps.executionRuling(p) : undefined,
|
|
108
110
|
instrumentDegenerate,
|
|
109
111
|
sideQueryAccounting,
|
|
110
112
|
parkedReviveSurface: parkedReviveSurface ? parkedReviveSurface : undefined,
|
|
@@ -118,7 +120,6 @@ export async function runStage10(ctx) {
|
|
|
118
120
|
planCacheProbe,
|
|
119
121
|
};
|
|
120
122
|
const governance = {
|
|
121
|
-
authorize,
|
|
122
123
|
webAdminJwtVerifier: webAdminJwtVerifier ? webAdminJwtVerifier : undefined,
|
|
123
124
|
rateLimiter,
|
|
124
125
|
costQuota,
|
|
@@ -214,7 +215,7 @@ export async function runStage10(ctx) {
|
|
|
214
215
|
const runnerFor = createHandsRunnerSelector({ full: runner, handsless: handslessRunner });
|
|
215
216
|
const sideQuery = createSideQueryLane({ brain, config, getKeyResolver: () => webAdmin.getKeyResolver() });
|
|
216
217
|
const scenarioGate = createScenarioGate({ config, scenarios, principalCaps, logger }, "peek");
|
|
217
|
-
const server = createHttpServer({ runner, runnerFor, sideQuery, scenarioGate, peerDesk, config, resolveSpec, stores, coordinators, seams, observability, governance, deployment, knobs });
|
|
218
|
+
const server = createHttpServer({ runner, runnerFor, sideQuery, scenarioGate, peerDesk, config, authorize, resolveSpec, stores, coordinators, seams, observability, governance, deployment, knobs });
|
|
218
219
|
bindServerLateSeats({ config, logger, server });
|
|
219
220
|
const fleetReconcile = startFleetReconciler({
|
|
220
221
|
bus: fleetBus,
|
package/dist/boot/stores.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type MemoryBackend } from "@sema-agent/core";
|
|
2
1
|
import type { ServiceConfig } from "../config.js";
|
|
3
2
|
import { type MemorySyncRunner } from "../memory-sync-client.js";
|
|
4
3
|
import type { Logger } from "../observability/logger.js";
|
|
@@ -7,6 +6,7 @@ import { type MemorySyncStore } from "../plugins/memory-sync-store-pg.js";
|
|
|
7
6
|
import { type MailboxRecipientLifecycle } from "../plugins/mailbox-recipient-lifecycle.js";
|
|
8
7
|
import { type TaskAttachmentStore } from "../plugins/task-attachment-store.js";
|
|
9
8
|
import { type StoreBackend } from "../plugins/store-backend.js";
|
|
9
|
+
import { type MemoryScopeStores } from "../memory-scope-stores.js";
|
|
10
10
|
export interface OpenStoresCtx {
|
|
11
11
|
config: ServiceConfig;
|
|
12
12
|
logger: Logger;
|
|
@@ -24,10 +24,7 @@ export declare function assertApprovalAskRuleMaterialOnBackend(backend: StoreBac
|
|
|
24
24
|
export declare function openStores(ctx: OpenStoresCtx): Promise<{
|
|
25
25
|
backend: StoreBackend | undefined;
|
|
26
26
|
storePosture: import("../store-posture.js").StorePosture;
|
|
27
|
-
memoryEngine:
|
|
28
|
-
backend: MemoryBackend;
|
|
29
|
-
root: string;
|
|
30
|
-
} | undefined;
|
|
27
|
+
memoryEngine: MemoryScopeStores | undefined;
|
|
31
28
|
engineDataRoot: string;
|
|
32
29
|
memorySyncCursors: MemorySyncStore | undefined;
|
|
33
30
|
rosterStore: import("@sema-agent/core").RosterStore | undefined;
|
|
@@ -35,7 +32,7 @@ export declare function openStores(ctx: OpenStoresCtx): Promise<{
|
|
|
35
32
|
mailboxRecipientLifecycle: MailboxRecipientLifecycle | undefined;
|
|
36
33
|
taskAttachmentStore: TaskAttachmentStore | undefined;
|
|
37
34
|
mailboxStore: import("@sema-agent/core").MailboxStore | undefined;
|
|
38
|
-
|
|
35
|
+
memoryExportStores: MemoryScopeStores | undefined;
|
|
39
36
|
memorySyncRunner: MemorySyncRunner | undefined;
|
|
40
37
|
sessionStore: import("@sema-agent/core").SessionStore<import("@sema-agent/core").SessionStoreSummary, import("@sema-agent/core").SessionListQuery>;
|
|
41
38
|
breakerState: import("../plugins/breaker-state-sql.js").TiDBBreakerState | import("../plugins/breaker-state-sql.js").PgBreakerState | undefined;
|