@vibesdotdev/session 1.0.0-rc.5 → 1.0.0-rc.8
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/admission/admit-caller.d.ts.map +1 -1
- package/dist/admission/admit-caller.js +8 -3
- package/dist/admission/admit-caller.js.map +1 -1
- package/dist/cli/chat/session.repair-slugs.descriptor.d.ts +4 -0
- package/dist/cli/chat/session.repair-slugs.descriptor.d.ts.map +1 -0
- package/dist/cli/chat/session.repair-slugs.descriptor.js +16 -0
- package/dist/cli/chat/session.repair-slugs.descriptor.js.map +1 -0
- package/dist/cli/chat/session.repair-slugs.impl.d.ts +6 -0
- package/dist/cli/chat/session.repair-slugs.impl.d.ts.map +1 -0
- package/dist/cli/chat/session.repair-slugs.impl.js +25 -0
- package/dist/cli/chat/session.repair-slugs.impl.js.map +1 -0
- package/dist/cli/command.d.ts +1 -1
- package/dist/cli/command.d.ts.map +1 -1
- package/dist/cli/command.js.map +1 -1
- package/dist/cli/schemas/commands.d.ts +21 -0
- package/dist/cli/schemas/commands.d.ts.map +1 -1
- package/dist/cli/schemas/commands.js +10 -0
- package/dist/cli/schemas/commands.js.map +1 -1
- package/dist/cli/services/session/participants.d.ts +6 -1
- package/dist/cli/services/session/participants.d.ts.map +1 -1
- package/dist/cli/services/session/participants.js +6 -0
- package/dist/cli/services/session/participants.js.map +1 -1
- package/dist/cli/services/session.cli.consumer.d.ts +1 -1
- package/dist/cli/services/session.cli.consumer.d.ts.map +1 -1
- package/dist/cli/services/session.cli.consumer.js +1 -1
- package/dist/cli/services/session.cli.consumer.js.map +1 -1
- package/dist/cli/session-cli.plugin.d.ts.map +1 -1
- package/dist/cli/session-cli.plugin.js +3 -0
- package/dist/cli/session-cli.plugin.js.map +1 -1
- package/dist/daemon/commands/holds.d.ts +12 -0
- package/dist/daemon/commands/holds.d.ts.map +1 -0
- package/dist/daemon/commands/holds.js +27 -0
- package/dist/daemon/commands/holds.js.map +1 -0
- package/dist/docs/session.docs.descriptor.d.ts.map +1 -1
- package/dist/docs/session.docs.descriptor.js +20 -7
- package/dist/docs/session.docs.descriptor.js.map +1 -1
- package/dist/index/session-index.context.descriptor.d.ts +33 -0
- package/dist/index/session-index.context.descriptor.d.ts.map +1 -0
- package/dist/index/session-index.context.descriptor.js +11 -0
- package/dist/index/session-index.context.descriptor.js.map +1 -0
- package/dist/index/session-index.context.impl.consumer.d.ts +8 -0
- package/dist/index/session-index.context.impl.consumer.d.ts.map +1 -0
- package/dist/index/session-index.context.impl.consumer.js +7 -0
- package/dist/index/session-index.context.impl.consumer.js.map +1 -0
- package/dist/index/session-index.d.ts +29 -0
- package/dist/index/session-index.d.ts.map +1 -0
- package/dist/index/session-index.js +68 -0
- package/dist/index/session-index.js.map +1 -0
- package/dist/index/session-index.record.descriptor.d.ts +49 -0
- package/dist/index/session-index.record.descriptor.d.ts.map +1 -0
- package/dist/index/session-index.record.descriptor.js +59 -0
- package/dist/index/session-index.record.descriptor.js.map +1 -0
- package/dist/manager.d.ts +22 -1
- package/dist/manager.d.ts.map +1 -1
- package/dist/manager.js +72 -45
- package/dist/manager.js.map +1 -1
- package/dist/mcp/utils/participant.d.ts +16 -0
- package/dist/mcp/utils/participant.d.ts.map +1 -1
- package/dist/mcp/utils/participant.js +88 -17
- package/dist/mcp/utils/participant.js.map +1 -1
- package/dist/schemas/participant.d.ts +3 -0
- package/dist/schemas/participant.d.ts.map +1 -1
- package/dist/schemas/participant.js +10 -0
- package/dist/schemas/participant.js.map +1 -1
- package/dist/session.consumer.plugin.d.ts.map +1 -1
- package/dist/session.consumer.plugin.js +5 -1
- package/dist/session.consumer.plugin.js.map +1 -1
- package/dist/storage/session-connections.record.descriptor.d.ts +1 -0
- package/dist/storage/session-connections.record.descriptor.d.ts.map +1 -1
- package/dist/storage/write-or-recover.d.ts +21 -0
- package/dist/storage/write-or-recover.d.ts.map +1 -0
- package/dist/storage/write-or-recover.js +46 -0
- package/dist/storage/write-or-recover.js.map +1 -0
- package/dist/tools/lifecycle/init/schemas.d.ts.map +1 -1
- package/dist/tools/lifecycle/init/schemas.js +5 -2
- package/dist/tools/lifecycle/init/schemas.js.map +1 -1
- package/dist/tools/lifecycle/tool/session.tool.descriptor.d.ts.map +1 -1
- package/dist/tools/lifecycle/tool/session.tool.descriptor.js +3 -2
- package/dist/tools/lifecycle/tool/session.tool.descriptor.js.map +1 -1
- package/dist/tools/messages/tool/session-collaborate.descriptor.d.ts.map +1 -1
- package/dist/tools/messages/tool/session-collaborate.descriptor.js +3 -2
- package/dist/tools/messages/tool/session-collaborate.descriptor.js.map +1 -1
- package/dist/tools/schema-descriptions.d.ts +16 -0
- package/dist/tools/schema-descriptions.d.ts.map +1 -0
- package/dist/tools/schema-descriptions.js +94 -0
- package/dist/tools/schema-descriptions.js.map +1 -0
- package/dist/tools/scratchpad/tool/session-scratchpad.descriptor.d.ts.map +1 -1
- package/dist/tools/scratchpad/tool/session-scratchpad.descriptor.js +3 -2
- package/dist/tools/scratchpad/tool/session-scratchpad.descriptor.js.map +1 -1
- package/dist/tools/todos/list/handler.js +1 -1
- package/dist/tools/todos/list/handler.js.map +1 -1
- package/dist/tools/todos/list/schemas.d.ts +1 -0
- package/dist/tools/todos/list/schemas.d.ts.map +1 -1
- package/dist/tools/todos/list/schemas.js +5 -0
- package/dist/tools/todos/list/schemas.js.map +1 -1
- package/dist/tools/todos/tool/schemas/index.d.ts +1 -0
- package/dist/tools/todos/tool/schemas/index.d.ts.map +1 -1
- package/dist/tools/todos/tool/session-todo.descriptor.d.ts.map +1 -1
- package/dist/tools/todos/tool/session-todo.descriptor.js +3 -2
- package/dist/tools/todos/tool/session-todo.descriptor.js.map +1 -1
- package/dist/tools/todos/tool/session-todo.variant.list.impl.d.ts +1 -0
- package/dist/tools/todos/tool/session-todo.variant.list.impl.d.ts.map +1 -1
- package/dist/tools/workspace/tool/schemas/index.d.ts +8 -1
- package/dist/tools/workspace/tool/schemas/index.d.ts.map +1 -1
- package/dist/tools/workspace/tool/schemas/index.js +5 -1
- package/dist/tools/workspace/tool/schemas/index.js.map +1 -1
- package/dist/tools/workspace/tool/session-workspace.descriptor.d.ts.map +1 -1
- package/dist/tools/workspace/tool/session-workspace.descriptor.js +6 -3
- package/dist/tools/workspace/tool/session-workspace.descriptor.js.map +1 -1
- package/dist/tools/workspace/tool/session-workspace.variant.list.impl.d.ts +1 -0
- package/dist/tools/workspace/tool/session-workspace.variant.list.impl.d.ts.map +1 -1
- package/dist/tools/workspace/tool/session-workspace.variant.pair.impl.d.ts +1 -0
- package/dist/tools/workspace/tool/session-workspace.variant.pair.impl.d.ts.map +1 -1
- package/dist/tools/workspace/tool/session-workspace.variant.unpair.impl.d.ts +1 -0
- package/dist/tools/workspace/tool/session-workspace.variant.unpair.impl.d.ts.map +1 -1
- package/package.json +52 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.docs.descriptor.js","sourceRoot":"","sources":["../../src/docs/session.docs.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAIH,+EAA+E;AAE/E,MAAM,uBAAuB,GAAG
|
|
1
|
+
{"version":3,"file":"session.docs.descriptor.js","sourceRoot":"","sources":["../../src/docs/session.docs.descriptor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session index context descriptor (`session/index`, ADR-0020 slice 3).
|
|
3
|
+
*/
|
|
4
|
+
declare const _default: {
|
|
5
|
+
id: string;
|
|
6
|
+
kind: "context";
|
|
7
|
+
name?: string | undefined;
|
|
8
|
+
description?: string | undefined;
|
|
9
|
+
tags?: string[] | undefined;
|
|
10
|
+
hardware?: string[] | undefined;
|
|
11
|
+
enabled?: boolean | undefined;
|
|
12
|
+
priority?: number | undefined;
|
|
13
|
+
capabilityId?: string | undefined;
|
|
14
|
+
requiredContext?: string[] | undefined;
|
|
15
|
+
optionalContext?: string[] | undefined;
|
|
16
|
+
retention?: string | {
|
|
17
|
+
reason: string;
|
|
18
|
+
maxAgeDays?: number | undefined;
|
|
19
|
+
maxEntries?: number | undefined;
|
|
20
|
+
maxBytes?: number | undefined;
|
|
21
|
+
cascadeFrom?: string | undefined;
|
|
22
|
+
ageField?: string | undefined;
|
|
23
|
+
enforcedBy?: string | undefined;
|
|
24
|
+
} | undefined;
|
|
25
|
+
valueKind?: "data" | "service" | undefined;
|
|
26
|
+
valueSchema?: unknown;
|
|
27
|
+
config?: {
|
|
28
|
+
sources: ("literal" | "workspace" | "floor")[];
|
|
29
|
+
subset?: true | undefined;
|
|
30
|
+
} | undefined;
|
|
31
|
+
};
|
|
32
|
+
export default _default;
|
|
33
|
+
//# sourceMappingURL=session-index.context.descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.context.descriptor.d.ts","sourceRoot":"","sources":["../../src/index/session-index.context.descriptor.ts"],"names":[],"mappings":"AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKH,wBAIG"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session index context descriptor (`session/index`, ADR-0020 slice 3).
|
|
3
|
+
*/
|
|
4
|
+
import { createContextDescriptor } from '@vibesdotdev/kernel/factory/context';
|
|
5
|
+
import { SESSION_INDEX_CONTEXT_ID } from "./session-index.js";
|
|
6
|
+
export default createContextDescriptor({
|
|
7
|
+
id: SESSION_INDEX_CONTEXT_ID,
|
|
8
|
+
description: 'Which workspace holds a session, machine-wide: get(sessionId) and put(entry); a put naming another root refuses CONFLICT session-duplicate.',
|
|
9
|
+
hardware: ['consumer']
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=session-index.context.descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.context.descriptor.js","sourceRoot":"","sources":["../../src/index/session-index.context.descriptor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,eAAe,uBAAuB,CAAC;IACtC,EAAE,EAAE,wBAAwB;IAC5B,WAAW,EAAE,6IAA6I;IAC1J,QAAQ,EAAE,CAAC,UAAU,CAAC;CACtB,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { VibesRuntime } from '@vibesdotdev/kernel';
|
|
2
|
+
import { type SessionIndex } from './session-index.ts';
|
|
3
|
+
/** The session index over the resolving runtime's global `session.index` record. */
|
|
4
|
+
declare const defaultExport: {
|
|
5
|
+
provide: (runtime: VibesRuntime) => Promise<SessionIndex>;
|
|
6
|
+
};
|
|
7
|
+
export default defaultExport;
|
|
8
|
+
//# sourceMappingURL=session-index.context.impl.consumer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.context.impl.consumer.d.ts","sourceRoot":"","sources":["../../src/index/session-index.context.impl.consumer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAE3E,oFAAoF;AACpF,QAAA,MAAM,aAAa;uBACO,YAAY,KAAG,OAAO,CAAC,YAAY,CAAC;CAC7D,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createSessionIndex } from "./session-index.js";
|
|
2
|
+
/** The session index over the resolving runtime's global `session.index` record. */
|
|
3
|
+
const defaultExport = {
|
|
4
|
+
provide: async (runtime) => createSessionIndex(runtime)
|
|
5
|
+
};
|
|
6
|
+
export default defaultExport;
|
|
7
|
+
//# sourceMappingURL=session-index.context.impl.consumer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.context.impl.consumer.js","sourceRoot":"","sources":["../../src/index/session-index.context.impl.consumer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAqB,MAAM,oBAAoB,CAAC;AAE3E,oFAAoF;AACpF,MAAM,aAAa,GAAG;IACrB,OAAO,EAAE,KAAK,EAAE,OAAqB,EAAyB,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC;CAC5F,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The session index (`session/index`, ADR-0020 slice 3): which workspace's store
|
|
3
|
+
* holds a session, machine-wide.
|
|
4
|
+
*
|
|
5
|
+
* - `get(sessionId)` answers the entry, or `null` when the index has none.
|
|
6
|
+
* - `put(entry)` records it. A session lives in one workspace: a put naming the
|
|
7
|
+
* indexed root again keeps the entry (its owner and archive stamp may be
|
|
8
|
+
* filled); a put naming another root refuses `CONFLICT session-duplicate`,
|
|
9
|
+
* including when two puts race on the same id.
|
|
10
|
+
*
|
|
11
|
+
* Owner fields are what a transport verified, never what a caller declared (the
|
|
12
|
+
* entry schema has room for nothing else). The main daemon runtime is the only
|
|
13
|
+
* writer; nothing here enforces who calls it.
|
|
14
|
+
*/
|
|
15
|
+
import { type VibesRuntime } from '@vibesdotdev/kernel';
|
|
16
|
+
import { type SessionIndexEntry } from './session-index.record.descriptor.ts';
|
|
17
|
+
export declare const SESSION_INDEX_CONTEXT_ID = "session/index";
|
|
18
|
+
export declare const SESSION_INDEX_RECORD_ID = "session.index";
|
|
19
|
+
/** What `put` takes: the entry, with `createdAt` stamped when omitted. */
|
|
20
|
+
export type SessionIndexPut = Omit<SessionIndexEntry, 'createdAt'> & {
|
|
21
|
+
createdAt?: string;
|
|
22
|
+
};
|
|
23
|
+
export interface SessionIndex {
|
|
24
|
+
get(sessionId: string): Promise<SessionIndexEntry | null>;
|
|
25
|
+
put(entry: SessionIndexPut): Promise<SessionIndexEntry>;
|
|
26
|
+
}
|
|
27
|
+
/** The session index over `runtime`'s `session.index` record. */
|
|
28
|
+
export declare function createSessionIndex(runtime: VibesRuntime): SessionIndex;
|
|
29
|
+
//# sourceMappingURL=session-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.d.ts","sourceRoot":"","sources":["../../src/index/session-index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGzE,OAAO,EAA2B,KAAK,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAGvG,eAAO,MAAM,wBAAwB,kBAAkB,CAAC;AACxD,eAAO,MAAM,uBAAuB,kBAAkB,CAAC;AAEvD,0EAA0E;AAC1E,MAAM,MAAM,eAAe,GAAG,IAAI,CAAC,iBAAiB,EAAE,WAAW,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5F,MAAM,WAAW,YAAY;IAC5B,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC;IAC1D,GAAG,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CACxD;AAWD,iEAAiE;AACjE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,YAAY,CAuCtE"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The session index (`session/index`, ADR-0020 slice 3): which workspace's store
|
|
3
|
+
* holds a session, machine-wide.
|
|
4
|
+
*
|
|
5
|
+
* - `get(sessionId)` answers the entry, or `null` when the index has none.
|
|
6
|
+
* - `put(entry)` records it. A session lives in one workspace: a put naming the
|
|
7
|
+
* indexed root again keeps the entry (its owner and archive stamp may be
|
|
8
|
+
* filled); a put naming another root refuses `CONFLICT session-duplicate`,
|
|
9
|
+
* including when two puts race on the same id.
|
|
10
|
+
*
|
|
11
|
+
* Owner fields are what a transport verified, never what a caller declared (the
|
|
12
|
+
* entry schema has room for nothing else). The main daemon runtime is the only
|
|
13
|
+
* writer; nothing here enforces who calls it.
|
|
14
|
+
*/
|
|
15
|
+
import { CapabilityError } from '@vibesdotdev/kernel';
|
|
16
|
+
import { StorageRecord } from '@vibesdotdev/storage/record';
|
|
17
|
+
import { SessionIndexEntrySchema } from "./session-index.record.descriptor.js";
|
|
18
|
+
import { isUniqueConstraintError, writeOrRecover } from "../storage/write-or-recover.js";
|
|
19
|
+
export const SESSION_INDEX_CONTEXT_ID = 'session/index';
|
|
20
|
+
export const SESSION_INDEX_RECORD_ID = 'session.index';
|
|
21
|
+
function duplicate(sessionId, indexedRoot, namedRoot) {
|
|
22
|
+
return new CapabilityError('This session is already indexed in another workspace.', 'CONFLICT', {
|
|
23
|
+
reason: 'session-duplicate',
|
|
24
|
+
retryable: false,
|
|
25
|
+
details: { sessionId, indexedRoot, namedRoot },
|
|
26
|
+
recoveryHint: 'A session lives in one workspace; address it there.'
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
/** The session index over `runtime`'s `session.index` record. */
|
|
30
|
+
export function createSessionIndex(runtime) {
|
|
31
|
+
const descriptor = runtime.query('storage/record').withId(SESSION_INDEX_RECORD_ID).firstDescriptor();
|
|
32
|
+
if (!descriptor) {
|
|
33
|
+
throw new CapabilityError(`Storage record ${SESSION_INDEX_RECORD_ID} is not registered.`, 'NOT_FOUND', {
|
|
34
|
+
reason: 'not-registered',
|
|
35
|
+
details: { kind: 'storage/record', id: SESSION_INDEX_RECORD_ID }
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
const record = new StorageRecord(descriptor, { runtime });
|
|
39
|
+
/** Keep `existing` when it names `entry`'s root, filling what it lacks; refuse otherwise. */
|
|
40
|
+
const settle = async (existing, entry) => {
|
|
41
|
+
if (existing.workspaceRoot !== entry.workspaceRoot)
|
|
42
|
+
throw duplicate(entry.sessionId, existing.workspaceRoot, entry.workspaceRoot);
|
|
43
|
+
const fill = {};
|
|
44
|
+
if (!existing.owner && entry.owner)
|
|
45
|
+
fill.owner = entry.owner;
|
|
46
|
+
if (!existing.archivedAt && entry.archivedAt)
|
|
47
|
+
fill.archivedAt = entry.archivedAt;
|
|
48
|
+
return Object.keys(fill).length ? record.update(entry.sessionId, fill) : existing;
|
|
49
|
+
};
|
|
50
|
+
return {
|
|
51
|
+
get: (sessionId) => record.get(sessionId),
|
|
52
|
+
async put(input) {
|
|
53
|
+
const entry = SessionIndexEntrySchema.parse({
|
|
54
|
+
...input,
|
|
55
|
+
createdAt: input.createdAt ?? new Date().toISOString()
|
|
56
|
+
});
|
|
57
|
+
const existing = await record.get(entry.sessionId);
|
|
58
|
+
if (existing)
|
|
59
|
+
return settle(existing, entry);
|
|
60
|
+
// Another put created the row between the read and this write: settle against it.
|
|
61
|
+
return writeOrRecover(() => record.create(entry), async () => {
|
|
62
|
+
const raced = await record.get(entry.sessionId);
|
|
63
|
+
return raced ? settle(raced, entry) : null;
|
|
64
|
+
}, isUniqueConstraintError);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=session-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.js","sourceRoot":"","sources":["../../src/index/session-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Index Storage Record Descriptor (`session.index`, ADR-0020 slice 3)
|
|
3
|
+
*
|
|
4
|
+
* One machine-wide row per session: which workspace's store holds it. Global
|
|
5
|
+
* scope, `{vibesHome}/sessions-index.db`. The main daemon runtime is its only
|
|
6
|
+
* writer (through `session/index`); a workspace's own `sessions.db` stays the
|
|
7
|
+
* truth about the session itself.
|
|
8
|
+
*/
|
|
9
|
+
import * as z from 'zod/v4';
|
|
10
|
+
import type { StorageRecordDescriptorInput } from '@vibesdotdev/storage/schemas/record';
|
|
11
|
+
/**
|
|
12
|
+
* Who owns an indexed session: what a transport verified (`source`) and only the
|
|
13
|
+
* identity fields it verified. Seat data and declared fields have no place here.
|
|
14
|
+
*/
|
|
15
|
+
export declare const SessionIndexOwnerSchema: z.ZodObject<{
|
|
16
|
+
source: z.ZodString;
|
|
17
|
+
caller: z.ZodObject<{
|
|
18
|
+
agentId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
19
|
+
harness: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
20
|
+
agentSystemId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
21
|
+
harnessSessionId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
22
|
+
userId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
23
|
+
orgId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
24
|
+
projectId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
25
|
+
}, z.core.$strict>;
|
|
26
|
+
}, z.core.$strict>;
|
|
27
|
+
export declare const SessionIndexEntrySchema: z.ZodObject<{
|
|
28
|
+
sessionId: z.ZodString;
|
|
29
|
+
workspaceRoot: z.ZodString;
|
|
30
|
+
owner: z.ZodOptional<z.ZodObject<{
|
|
31
|
+
source: z.ZodString;
|
|
32
|
+
caller: z.ZodObject<{
|
|
33
|
+
agentId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
34
|
+
harness: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
35
|
+
agentSystemId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
36
|
+
harnessSessionId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
37
|
+
userId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
38
|
+
orgId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
39
|
+
projectId: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>, z.ZodString>>;
|
|
40
|
+
}, z.core.$strict>;
|
|
41
|
+
}, z.core.$strict>>;
|
|
42
|
+
createdAt: z.ZodString;
|
|
43
|
+
archivedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
44
|
+
}, z.core.$strict>;
|
|
45
|
+
export type SessionIndexOwner = z.infer<typeof SessionIndexOwnerSchema>;
|
|
46
|
+
export type SessionIndexEntry = z.infer<typeof SessionIndexEntrySchema>;
|
|
47
|
+
export declare const sessionIndexRecordDescriptor: StorageRecordDescriptorInput;
|
|
48
|
+
export default sessionIndexRecordDescriptor;
|
|
49
|
+
//# sourceMappingURL=session-index.record.descriptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.record.descriptor.d.ts","sourceRoot":"","sources":["../../src/index/session-index.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAE5B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAOxF;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;kBAGzB,CAAC;AAEZ,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;kBAOzB,CAAC;AAEZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,4BAA4B,EAAE,4BAiC1C,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Index Storage Record Descriptor (`session.index`, ADR-0020 slice 3)
|
|
3
|
+
*
|
|
4
|
+
* One machine-wide row per session: which workspace's store holds it. Global
|
|
5
|
+
* scope, `{vibesHome}/sessions-index.db`. The main daemon runtime is its only
|
|
6
|
+
* writer (through `session/index`); a workspace's own `sessions.db` stays the
|
|
7
|
+
* truth about the session itself.
|
|
8
|
+
*/
|
|
9
|
+
import * as z from 'zod/v4';
|
|
10
|
+
import { INVOKE_CALLER_IDENTITY_FIELDS, RuntimeInvokeCallerSchema } from '@vibesdotdev/kernel/schemas/invoke-caller';
|
|
11
|
+
// SAFETY: fromEntries maps every INVOKE_CALLER_IDENTITY_FIELDS entry to `true`, so each key of the mapped type is present.
|
|
12
|
+
const IDENTITY_MASK = Object.fromEntries(INVOKE_CALLER_IDENTITY_FIELDS.map((field) => [field, true]));
|
|
13
|
+
/**
|
|
14
|
+
* Who owns an indexed session: what a transport verified (`source`) and only the
|
|
15
|
+
* identity fields it verified. Seat data and declared fields have no place here.
|
|
16
|
+
*/
|
|
17
|
+
export const SessionIndexOwnerSchema = z.object({
|
|
18
|
+
source: z.string().min(1),
|
|
19
|
+
caller: RuntimeInvokeCallerSchema.pick(IDENTITY_MASK).strict()
|
|
20
|
+
}).strict();
|
|
21
|
+
export const SessionIndexEntrySchema = z.object({
|
|
22
|
+
sessionId: z.string().min(1),
|
|
23
|
+
/** The admitted workspace root whose store holds the session. */
|
|
24
|
+
workspaceRoot: z.string().min(1),
|
|
25
|
+
owner: SessionIndexOwnerSchema.optional(),
|
|
26
|
+
createdAt: z.string().datetime(),
|
|
27
|
+
archivedAt: z.string().datetime().nullable().optional()
|
|
28
|
+
}).strict();
|
|
29
|
+
export const sessionIndexRecordDescriptor = {
|
|
30
|
+
kind: 'storage/record',
|
|
31
|
+
id: 'session.index',
|
|
32
|
+
name: 'Session Index',
|
|
33
|
+
description: 'Machine-wide map from a session id to the workspace whose store holds it (ADR-0020)',
|
|
34
|
+
schema: SessionIndexEntrySchema,
|
|
35
|
+
tableName: 'session_index',
|
|
36
|
+
primaryKey: 'sessionId',
|
|
37
|
+
relations: {},
|
|
38
|
+
indexes: [{ name: 'idx_session_index_root', fields: ['workspaceRoot'], unique: false }],
|
|
39
|
+
version: 1,
|
|
40
|
+
timestamps: false,
|
|
41
|
+
autoId: false,
|
|
42
|
+
allowedAdapters: ['storage.localdb'],
|
|
43
|
+
defaultAdapter: 'storage.localdb',
|
|
44
|
+
adapterConfig: {
|
|
45
|
+
'storage.localdb': { dbName: 'sessions-index.db', scope: 'global' }
|
|
46
|
+
},
|
|
47
|
+
scope: 'global',
|
|
48
|
+
validateOnWrite: true,
|
|
49
|
+
validateOnRead: false,
|
|
50
|
+
versioning: false,
|
|
51
|
+
audit: false,
|
|
52
|
+
changeTracking: false,
|
|
53
|
+
internal: false,
|
|
54
|
+
softDelete: false,
|
|
55
|
+
namespace: 'session.index',
|
|
56
|
+
tags: ['session', 'index', 'workspace']
|
|
57
|
+
};
|
|
58
|
+
export default sessionIndexRecordDescriptor;
|
|
59
|
+
//# sourceMappingURL=session-index.record.descriptor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-index.record.descriptor.js","sourceRoot":"","sources":["../../src/index/session-index.record.descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,6BAA6B,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AAGrH,2HAA2H;AAC3H,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,IAAa,CAAC,CAAC,CAE5G,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,MAAM,EAAE,yBAAyB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE;CAC9D,CAAC,CAAC,MAAM,EAAE,CAAC;AAEZ,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,iEAAiE;IACjE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChC,KAAK,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC,MAAM,EAAE,CAAC;AAKZ,MAAM,CAAC,MAAM,4BAA4B,GAAiC;IACzE,IAAI,EAAE,gBAAgB;IACtB,EAAE,EAAE,eAAe;IACnB,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,qFAAqF;IAClG,MAAM,EAAE,uBAAuB;IAC/B,SAAS,EAAE,eAAe;IAC1B,UAAU,EAAE,WAAW;IAEvB,SAAS,EAAE,EAAE;IAEb,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,EAAE,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAEvF,OAAO,EAAE,CAAC;IACV,UAAU,EAAE,KAAK;IACjB,MAAM,EAAE,KAAK;IAEb,eAAe,EAAE,CAAC,iBAAiB,CAAC;IACpC,cAAc,EAAE,iBAAiB;IACjC,aAAa,EAAE;QACd,iBAAiB,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE;KACnE;IACD,KAAK,EAAE,QAAQ;IAEf,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,KAAK;IACrB,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,cAAc,EAAE,KAAK;IACrB,QAAQ,EAAE,KAAK;IACf,UAAU,EAAE,KAAK;IACjB,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,WAAW,CAAC;CACvC,CAAC;AAEF,eAAe,4BAA4B,CAAC"}
|
package/dist/manager.d.ts
CHANGED
|
@@ -433,7 +433,28 @@ export declare class SessionManager {
|
|
|
433
433
|
* refused (chosen).
|
|
434
434
|
*/
|
|
435
435
|
registerInstance(input: RegisterInstanceInput): Promise<ParticipantConnection>;
|
|
436
|
-
/**
|
|
436
|
+
/** The handle `input`'s own conversation holds under another instance key it succeeds, if any. */
|
|
437
|
+
private conversationHandle;
|
|
438
|
+
/**
|
|
439
|
+
* Whether a new key of the same conversation succeeds `row`: the row has
|
|
440
|
+
* lapsed, or it is on the same transport (a restart). A conversation live
|
|
441
|
+
* on two transports at once (an MCP connection and an in-process host) is
|
|
442
|
+
* two instances, and neither takes the other's handle or closes it.
|
|
443
|
+
*/
|
|
444
|
+
private static succeeds;
|
|
445
|
+
/**
|
|
446
|
+
* The preferred handle an instance may take: sanitized, and not another
|
|
447
|
+
* participant's name (a live handle resolves ahead of slugs, so it would
|
|
448
|
+
* capture that participant's messages). Undefined when there is none.
|
|
449
|
+
*/
|
|
450
|
+
private usablePreferredHandle;
|
|
451
|
+
/**
|
|
452
|
+
* Free `handle` for `claimant` when its holder is no longer live, or when the
|
|
453
|
+
* holder is the claimant's own conversation under another instance key the
|
|
454
|
+
* claimant succeeds (same participant, same harness conversation; lapsed or on
|
|
455
|
+
* the same transport): one conversation is one seat, so the stale key is
|
|
456
|
+
* closed and the handle moves with it.
|
|
457
|
+
*/
|
|
437
458
|
private releaseExpiredHandle;
|
|
438
459
|
/** The live instance holding `handle`, if any. */
|
|
439
460
|
liveInstanceByHandle(handle: string): Promise<ParticipantConnection | null>;
|
package/dist/manager.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAMN,KAAK,YAAY,EACjB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAWrF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAKN,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAC5B,MAAM,2BAA2B,CAAC;AAEnC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,0DAA0D,CAAC;AAWvG,OAAO,KAAK,EACX,OAAO,EACP,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,IAAI,EACJ,UAAU,EACV,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,eAAe,EACf,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,EACN,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,UAAU,EACV,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,MAAM,oBAAoB,CAAC;AAiL5B;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,GAAG,MAAM,CAEzD;AAUD;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;CAAE,EAC3F,IAAI,EAAE,CAAC,EACP,OAAO,GAAE;IAAE,eAAe,CAAC,EAAE,OAAO,CAAA;CAAO,GACzC,CAAC,CAiBH;AAED,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAA;CAAE,EACxF,IAAI,EAAE,CAAC,EACP,SAAS,CAAC,EAAE,MAAM,GAChB,CAAC,CAkDH;AAuDD,MAAM,WAAW,wBAAwB;IACxC,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,2BAA2B;IAC3C,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,kFAAkF;AAClF,MAAM,WAAW,+BAA+B;IAC/C,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,MAAM,CAAC,EAAE,mBAAmB,CAAC;CAC7B;AAED,0EAA0E;AAC1E,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;CAC5B;AACD;;;;;;GAMG;AACH,qBAAa,cAAc;IAC1B,OAAO,CAAC,WAAW,CAAe;IAClC,OAAO,CAAC,MAAM,CAAuB;IACrC,gFAAgF;IAChF,OAAO,KAAK,OAAO,GAA+D;IAClF,sGAAsG;IACtG,IAAI,cAAc,IAAI,YAAY,CAAyB;IAE3D,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAIxC,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,eAAe,CAAC,CAAkC;IAC1D,OAAO,CAAC,YAAY,CAAC,CAA+B;IACpD,OAAO,CAAC,iBAAiB,CAAC,CAA0C;IACpE,OAAO,CAAC,WAAW,CAAC,CAAiC;IACrD,OAAO,CAAC,eAAe,CAAC,CAA6C;IACrE,OAAO,CAAC,mBAAmB,CAAC,CAA6C;IACzE,OAAO,CAAC,eAAe,CAAC,CAA0C;IAClE,OAAO,CAAC,oBAAoB,CAAC,CAAuC;IACpE,OAAO,CAAC,kBAAkB,CAAC,CAAgD;IAC3E,OAAO,CAAC,uBAAuB,CAAC,CAAiD;IAGjF,OAAO,CAAC,mBAAmB,CAA6B;IACxD,OAAO,CAAC,WAAW,CAA6B;IAChD,OAAO,CAAC,gBAAgB,CAAuB;IAC/C,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,mBAAmB,CAAoC;gBAEnD,OAAO,EAAE,YAAY;IAKjC;;;OAGG;IACG,cAAc,CACnB,SAAS,CAAC,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,EACtB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,OAAO,GAAE,+BAAoC,GAC3C,OAAO,CAAC,sBAAsB,CAAC;IAWlC,wFAAwF;IAClF,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAO7D,2EAA2E;IACrE,qBAAqB,CAC1B,OAAO,GAAE;QAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAAC,aAAa,CAAC,EAAE,MAAM,CAAA;KAAO,EACzE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,EAC5B,MAAM,CAAC,EAAE,mBAAmB,GAC1B,OAAO,CAAC,MAAM,CAAC;IAIlB,4EAA4E;IACtE,aAAa,CAClB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC;IAShB;;;;OAIG;IACH,IAAI,eAAe,IAAI,MAAM,GAAG,SAAS,CAExC;IAED;;;;;;OAMG;YACW,oBAAoB;YAqBpB,aAAa;IAuC3B;;;;;OAKG;YACW,oBAAoB;IAWlC,8EAA8E;IAC9E,OAAO,CAAC,YAAY;YAIN,mBAAmB;IA8CjC,OAAO,CAAC,gBAAgB;YAKV,kBAAkB;IAoB1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAU3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA0B5B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAerC;;;;;OAKG;IACG,aAAa,CAClB,OAAO,EAAE,aAAa,EACtB,OAAO,GAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAO,GACrD,OAAO,CAAC,OAAO,CAAC;IAwCb,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAK/C,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtE;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA0BxF;;;;;;;OAOG;YACW,oBAAoB;IAgB5B,YAAY,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAiBvE;;;;;;OAMG;IACG,aAAa,CAClB,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,kBAAkB,CAAC,GAC3D,OAAO,CAAC,MAAM,CAAC;IASZ,gBAAgB,IAAI,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAYjD;;;;;OAKG;IACG,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7C;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAOzC;;OAEG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBjD;;;OAGG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAe7D,wDAAwD;IAClD,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YASrD,0BAA0B;IA2BlC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAazC,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASxC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAKxF;;;;OAIG;IACG,mBAAmB,CACxB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,cAAc,GACtB,OAAO,CAAC;QAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IA6BxD;;OAEG;IACG,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAWnE;;OAEG;IACG,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IASvE;;OAEG;IACG,kBAAkB,CACvB,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,iBAAiB,CAAC,GAC7C,OAAO,CAAC,OAAO,CAAC;IAQb,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBpE,gFAAgF;IAC1E,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBjI;;OAEG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAKzC,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BhE;;OAEG;IACG,YAAY,CACjB,EAAE,EAAE,MAAM,EACV,OAAO,GAAE,IAAI,CAAC,UAAU,EAAE,eAAe,GAAG,UAAU,GAAG,MAAM,CAAM,GACnE,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;OAIG;IACH,OAAO,CAAC,cAAc;IAahB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAMrE,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAU1E,6FAA6F;YAC/E,YAAY;IAK1B,wEAAwE;YAC1D,SAAS;IASvB;;;;OAIG;YACW,qBAAqB;IAYnC;;;;OAIG;YACW,sBAAsB;IAWpC;;;OAGG;IACG,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAuBzD,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAMjE,qBAAqB,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAM9B;;;;;OAKG;YACW,WAAW;IAsBnB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKrC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IASzD;;;;OAIG;IACG,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMjD;;;;;OAKG;IACG,yBAAyB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM7D;;OAEG;IACG,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAQ7E;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAa9C,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC;IA0BhG;;;;;;;OAOG;YACW,sBAAsB;IAgB9B,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAS/E,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAK/D,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtF,OAAO,CAAC,oBAAoB;IAStB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAKhF,cAAc,CACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAezB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC;IAiB3C,gBAAgB,CACrB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,iBAAiB,GACzB,OAAO,CAAC;QAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAqBnD,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAUhE,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAK7C,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IASvD,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpE,OAAO,CAAC,aAAa;IAOf,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAKtE,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IA6B1E,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOvC,WAAW,CAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,wBAAwB,GAC/B,OAAO,CAAC,kBAAkB,CAAC;IAkB9B;;;OAGG;YACW,wBAAwB;IAYtC;;;;;OAKG;YACW,YAAY;IA4B1B;;;;;;;;;;;;;;;;OAgBG;IACG,qBAAqB,CAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,wBAAwB,GAAG;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,GAChD,OAAO,CAAC;QAAE,OAAO,EAAE,kBAAkB,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IA+BtD,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAKhE,OAAO,CAAC,iBAAiB;IAQnB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAK3E,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAgBvF,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1C,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA+B9E,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAQzE,mBAAmB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAYnF,cAAc,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAKzE,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAWpF,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhG;;;OAGG;IACG,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAI5E;;;;;OAKG;IACG,iBAAiB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAsD9E,yBAAyB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D,gBAAgB,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAuC7E,iBAAiB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKvD,yBAAyB,IAAI,OAAO,CAAC,wBAAwB,CAAC;IAkC9D,gCAAgC,IAAI,OAAO,CAAC,2BAA2B,CAAC;IAoFxE,gBAAgB,CACrB,UAAU,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,GAAG,gBAAgB,CAAC,GACvE,OAAO,CAAC,qBAAqB,CAAC;IAgC3B,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAkB;IACzD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAa;IAC1D,uFAAuF;IACvF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAa;IAC1D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAK;IAErD,mFAAmF;IACnF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAuB;IAC/C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAqB;IACrD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAC/D,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAqB;IACzD,OAAO,CAAC,iBAAiB,CAAC,CAAa;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAa;IACzD,iFAAiF;IACjF,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA2B;IAC3D,OAAO,CAAC,gBAAgB,CAAC,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,MAAM,CAAC,cAAc;IAK7B,OAAO,CAAC,MAAM,CAAC,YAAY;IAO3B;;;;;;;;OAQG;IACG,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyEpF,sFAAsF;YACxE,oBAAoB;IAWlC,kDAAkD;IAC5C,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAUjF;;;OAGG;IACG,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAuB5F;;;OAGG;IACG,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAQhF;;;;OAIG;IACG,wBAAwB,CAAC,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAatH;;;OAGG;IACG,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAyB9F,mCAAmC;IAC7B,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAK5E,mFAAmF;IAC7E,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9E,+EAA+E;IACzE,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAQtE,wFAAwF;IAClF,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBtD,4EAA4E;IACtE,iBAAiB,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAkB3D,OAAO,CAAC,cAAc;YAQR,kBAAkB;IAWhC;;;;OAIG;IACH,OAAO,CAAC,YAAY;IAsBpB,OAAO,CAAC,qBAAqB;IAS7B;;;;;OAKG;IACG,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IA6C1C,oBAAoB,CACzB,aAAa,CAAC,EAAE,MAAM,EACtB,KAAK,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAiB7B,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IASlF,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;IAKzD,gBAAgB,CACrB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,OAAO,CAAC,YAAY,EAAE,CAAC;IAgBpB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK7C,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB9D,2BAA2B,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBpF,2BAA2B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAMhF;;;;;;;;OAQG;IACG,wCAAwC,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgB7F;;;;;OAKG;YACW,sBAAsB;IAsB9B,6BAA6B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcnE,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAgExE,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAehE,uBAAuB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAKvD,sFAAsF;IAChF,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatF,yFAAyF;IACnF,uBAAuB,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAY7F;;OAEG;IACG,wBAAwB,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAevF;;;;;;;OAOG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmF/D;;;;OAIG;YACW,qBAAqB;IAWnC;;;;;OAKG;YACW,8BAA8B;IAO5C,OAAO,CAAC,iBAAiB;YAMX,mBAAmB;IAmFjC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAM5B,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,gBAAgB;YAMV,uBAAuB;IAyBrC,OAAO,CAAC,iBAAiB;YAOX,oBAAoB;IAO5B,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc9D;;;;;;;;OAQG;IACG,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBjF;;;;;OAKG;IACG,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAe/E;;;;;;OAMG;IACG,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3D;;;;;;OAMG;IACG,+BAA+B,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB5E;;OAEG;IACG,cAAc,CAAC,KAAK,EAAE;QAC3B,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;KACvC,GAAG,OAAO,CAAC,eAAe,CAAC;IAwC5B;;OAEG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B1D;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAetE;;OAEG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAuB5E;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQ5D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAkB;IAEjE,OAAO,CAAC,sBAAsB;IAK9B;;;OAGG;IACG,sBAAsB,CAAC,KAAK,EAAE;QACnC,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;QAC1B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,QAAQ,CAAC,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkE7B,sBAAsB,CAAC,KAAK,EAAE;QACnC,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KAC9B,GAAG,OAAO,CAAC,OAAO,CAAC;IAoBpB,0EAA0E;IACpE,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IA4BtF;;OAEG;IACG,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBzD;;OAEG;IACG,oBAAoB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0BjE;;;OAGG;IACG,wBAAwB,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;CAa/E"}
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../src/manager.ts"],"names":[],"mappings":"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"}
|
package/dist/manager.js
CHANGED
|
@@ -18,7 +18,7 @@ import { getVibesClient } from '@vibesdotdev/kernel/client';
|
|
|
18
18
|
import { JsonValueSchema as JsonSchema } from '@vibesdotdev/kernel/schemas/json';
|
|
19
19
|
import { getLogger } from '@vibesdotdev/logging';
|
|
20
20
|
import { StorageRecord } from '@vibesdotdev/storage/record';
|
|
21
|
-
import {
|
|
21
|
+
import { isUniqueConstraintError, writeOrRecover } from "./storage/write-or-recover.js";
|
|
22
22
|
import { ScratchpadContentTypeSchema } from "./schemas/index.js";
|
|
23
23
|
import { HarnessSeatRegistrationSchema, HarnessSeatSchema, harnessSeatParticipantId, harnessSeatSlug } from "./schemas/harness-seat.js";
|
|
24
24
|
import { ensureSessionContextWithManager, getOrCreateMCPParticipant, resolveParticipantReference, participantSlugOf, sanitizeSlugCandidate, scanParticipantsBySlug } from "./mcp/utils/participant.js";
|
|
@@ -31,44 +31,6 @@ const SESSION_STATE_MCP_PREFIX = 'mcp:';
|
|
|
31
31
|
const PARTICIPANT_ACTIVE_WINDOW_MS = 5 * 60 * 1000;
|
|
32
32
|
/** The runtime client id notifications register their delivery client under. */
|
|
33
33
|
const NOTIFICATIONS_CLIENT_ID = 'notifications.delivery';
|
|
34
|
-
/**
|
|
35
|
-
* Whether a storage write lost a unique-index race. LocalDB's driver classifies
|
|
36
|
-
* the collision on its typed refusal (`unique-constraint`); the adapter's text
|
|
37
|
-
* is never read. A conflict another adapter reports untyped is not recognised
|
|
38
|
-
* here and propagates (cross-lane: storage has no adapter-neutral conflict code).
|
|
39
|
-
*/
|
|
40
|
-
function isUniqueConstraintError(failure) {
|
|
41
|
-
return storageFailureCondition(failure) === 'unique-constraint';
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Run `write`; when it fails with a failure `recoverable` admits, run
|
|
45
|
-
* `recover` instead. Any other failure of `write`, and a recovery that finds
|
|
46
|
-
* nothing (`null`), rethrows the write's own failure; a recovery that throws
|
|
47
|
-
* carries its own failure. The write's failure is never dropped.
|
|
48
|
-
*/
|
|
49
|
-
async function writeOrRecover(write, recover, recoverable) {
|
|
50
|
-
let lost;
|
|
51
|
-
const steps = [
|
|
52
|
-
write,
|
|
53
|
-
async () => {
|
|
54
|
-
if (!recoverable(CaughtFailureSchema.parse(lost)))
|
|
55
|
-
throw lost;
|
|
56
|
-
const recovered = await recover();
|
|
57
|
-
if (recovered === null)
|
|
58
|
-
throw lost;
|
|
59
|
-
return recovered;
|
|
60
|
-
}
|
|
61
|
-
];
|
|
62
|
-
for (const step of steps) {
|
|
63
|
-
try {
|
|
64
|
-
return await step();
|
|
65
|
-
}
|
|
66
|
-
catch (error) {
|
|
67
|
-
lost = error;
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
throw lost;
|
|
71
|
-
}
|
|
72
34
|
/** Any write failure admits a recovery read (the recovery itself confirms the race). */
|
|
73
35
|
function anyFailure() {
|
|
74
36
|
return true;
|
|
@@ -1870,8 +1832,14 @@ export class SessionManager {
|
|
|
1870
1832
|
});
|
|
1871
1833
|
}
|
|
1872
1834
|
}
|
|
1873
|
-
|
|
1835
|
+
// The handle this key's own row still holds, live or lapsed: handles are
|
|
1836
|
+
// unique, so a lapsed row that still holds one holds it for no one else.
|
|
1837
|
+
const kept = existing && !existing.disconnectedAt ? existing.activeHandle ?? undefined : undefined;
|
|
1874
1838
|
const base = input.agentId ?? input.harness ?? input.clientName;
|
|
1839
|
+
const preferred = chosen ? undefined : await this.usablePreferredHandle(input, existing);
|
|
1840
|
+
// A conversation arriving under a new key (its id changed) keeps the handle
|
|
1841
|
+
// it holds under the old one: one conversation is one seat.
|
|
1842
|
+
const inherited = chosen || kept ? undefined : await this.conversationHandle(input, nowIso);
|
|
1875
1843
|
const fields = {
|
|
1876
1844
|
participantId: input.participantId ?? existing?.participantId,
|
|
1877
1845
|
clientName: input.clientName,
|
|
@@ -1883,14 +1851,23 @@ export class SessionManager {
|
|
|
1883
1851
|
agentId: input.agentId,
|
|
1884
1852
|
harness: input.harness,
|
|
1885
1853
|
harnessSessionId: input.harnessSessionId,
|
|
1854
|
+
homeWorkspace: input.homeWorkspace ?? existing?.homeWorkspace ?? null,
|
|
1886
1855
|
lastHeartbeatAt: nowAt,
|
|
1887
1856
|
expiresAt,
|
|
1888
1857
|
disconnectedAt: null
|
|
1889
1858
|
};
|
|
1859
|
+
// The handle to try, in order: the one demanded; else the one preferred (the
|
|
1860
|
+
// seat's home handle), then the one already held, then a random one.
|
|
1861
|
+
const candidates = chosen ? [] : [preferred, kept ?? inherited].filter((handle) => !!handle);
|
|
1890
1862
|
for (let attempt = 0; attempt < SessionManager.INSTANCE_HANDLE_ATTEMPTS; attempt++) {
|
|
1891
|
-
const handle = chosen ??
|
|
1892
|
-
if (handle !== existing?.activeHandle)
|
|
1893
|
-
await this.releaseExpiredHandle(handle, input.instanceId, nowIso
|
|
1863
|
+
const handle = chosen ?? candidates[attempt] ?? SessionManager.randomHandle(base);
|
|
1864
|
+
if (handle !== existing?.activeHandle) {
|
|
1865
|
+
await this.releaseExpiredHandle(handle, input.instanceId, nowIso, {
|
|
1866
|
+
participantId: fields.participantId,
|
|
1867
|
+
harnessSessionId: input.harnessSessionId,
|
|
1868
|
+
transport: input.transport
|
|
1869
|
+
});
|
|
1870
|
+
}
|
|
1894
1871
|
const row = { ...fields, handle, activeHandle: handle };
|
|
1895
1872
|
const written = await settle(() => existing
|
|
1896
1873
|
? storage.update(input.instanceId, row)
|
|
@@ -1919,8 +1896,50 @@ export class SessionManager {
|
|
|
1919
1896
|
reason: 'instance-handle-exhausted'
|
|
1920
1897
|
});
|
|
1921
1898
|
}
|
|
1922
|
-
/**
|
|
1923
|
-
async
|
|
1899
|
+
/** The handle `input`'s own conversation holds under another instance key it succeeds, if any. */
|
|
1900
|
+
async conversationHandle(input, nowIso) {
|
|
1901
|
+
if (!input.harnessSessionId || !input.participantId)
|
|
1902
|
+
return undefined;
|
|
1903
|
+
const rows = await this.connectionsStorage.list({
|
|
1904
|
+
where: { harnessSessionId: input.harnessSessionId, participantId: input.participantId },
|
|
1905
|
+
limit: 10
|
|
1906
|
+
});
|
|
1907
|
+
const sibling = rows.items.find((row) => row.connectionId !== input.instanceId &&
|
|
1908
|
+
!!row.activeHandle &&
|
|
1909
|
+
!row.disconnectedAt &&
|
|
1910
|
+
SessionManager.succeeds(row, input.transport, nowIso));
|
|
1911
|
+
return sibling?.activeHandle ?? undefined;
|
|
1912
|
+
}
|
|
1913
|
+
/**
|
|
1914
|
+
* Whether a new key of the same conversation succeeds `row`: the row has
|
|
1915
|
+
* lapsed, or it is on the same transport (a restart). A conversation live
|
|
1916
|
+
* on two transports at once (an MCP connection and an in-process host) is
|
|
1917
|
+
* two instances, and neither takes the other's handle or closes it.
|
|
1918
|
+
*/
|
|
1919
|
+
static succeeds(row, transport, nowIso) {
|
|
1920
|
+
return !SessionManager.isLiveInstance(row, nowIso) || (!!transport && row.transport === transport);
|
|
1921
|
+
}
|
|
1922
|
+
/**
|
|
1923
|
+
* The preferred handle an instance may take: sanitized, and not another
|
|
1924
|
+
* participant's name (a live handle resolves ahead of slugs, so it would
|
|
1925
|
+
* capture that participant's messages). Undefined when there is none.
|
|
1926
|
+
*/
|
|
1927
|
+
async usablePreferredHandle(input, existing) {
|
|
1928
|
+
const preferred = input.preferredHandle?.trim() ? sanitizeSlugCandidate(input.preferredHandle) : undefined;
|
|
1929
|
+
if (!preferred)
|
|
1930
|
+
return undefined;
|
|
1931
|
+
const named = (await scanParticipantsBySlug(this, preferred)).match;
|
|
1932
|
+
const actsAs = input.participantId ?? existing?.participantId;
|
|
1933
|
+
return named && named.participantId !== actsAs ? undefined : preferred;
|
|
1934
|
+
}
|
|
1935
|
+
/**
|
|
1936
|
+
* Free `handle` for `claimant` when its holder is no longer live, or when the
|
|
1937
|
+
* holder is the claimant's own conversation under another instance key the
|
|
1938
|
+
* claimant succeeds (same participant, same harness conversation; lapsed or on
|
|
1939
|
+
* the same transport): one conversation is one seat, so the stale key is
|
|
1940
|
+
* closed and the handle moves with it.
|
|
1941
|
+
*/
|
|
1942
|
+
async releaseExpiredHandle(handle, claimant, nowIso, seat = {}) {
|
|
1924
1943
|
const held = await this.connectionsStorage.list({
|
|
1925
1944
|
where: { activeHandle: handle },
|
|
1926
1945
|
limit: 1
|
|
@@ -1928,6 +1947,14 @@ export class SessionManager {
|
|
|
1928
1947
|
const holder = held.items[0];
|
|
1929
1948
|
if (!holder || holder.connectionId === claimant)
|
|
1930
1949
|
return;
|
|
1950
|
+
const sameConversation = !!seat.harnessSessionId &&
|
|
1951
|
+
holder.harnessSessionId === seat.harnessSessionId &&
|
|
1952
|
+
!!seat.participantId &&
|
|
1953
|
+
holder.participantId === seat.participantId;
|
|
1954
|
+
if (sameConversation && SessionManager.succeeds(holder, seat.transport, nowIso)) {
|
|
1955
|
+
await this.closeInstance(holder.connectionId);
|
|
1956
|
+
return;
|
|
1957
|
+
}
|
|
1931
1958
|
if (SessionManager.isLiveInstance(holder, nowIso))
|
|
1932
1959
|
return;
|
|
1933
1960
|
await this.connectionsStorage.update(holder.connectionId, { activeHandle: null });
|