@consiliency/omnigent-transport 0.2.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/dist/capability-probe.d.ts +9 -0
- package/dist/capability-probe.d.ts.map +1 -0
- package/dist/capability-probe.js +40 -0
- package/dist/capability-probe.js.map +1 -0
- package/dist/capability-store.d.ts +13 -0
- package/dist/capability-store.d.ts.map +1 -0
- package/dist/capability-store.js +10 -0
- package/dist/capability-store.js.map +1 -0
- package/dist/cli-client.d.ts +22 -0
- package/dist/cli-client.d.ts.map +1 -0
- package/dist/cli-client.js +281 -0
- package/dist/cli-client.js.map +1 -0
- package/dist/contract-fixtures.d.ts +111 -0
- package/dist/contract-fixtures.d.ts.map +1 -0
- package/dist/contract-fixtures.js +36 -0
- package/dist/contract-fixtures.js.map +1 -0
- package/dist/event-mapper.d.ts +21 -0
- package/dist/event-mapper.d.ts.map +1 -0
- package/dist/event-mapper.js +213 -0
- package/dist/event-mapper.js.map +1 -0
- package/dist/failure-mapper.d.ts +13 -0
- package/dist/failure-mapper.d.ts.map +1 -0
- package/dist/failure-mapper.js +261 -0
- package/dist/failure-mapper.js.map +1 -0
- package/dist/fake-omnigent-server.d.ts +25 -0
- package/dist/fake-omnigent-server.d.ts.map +1 -0
- package/dist/fake-omnigent-server.js +425 -0
- package/dist/fake-omnigent-server.js.map +1 -0
- package/dist/fixtures/discovery/capability-probes.json +142 -0
- package/dist/fixtures/discovery/cli-surface.json +76 -0
- package/dist/fixtures/discovery/http-surface.json +207 -0
- package/dist/fixtures/discovery/source-metadata.json +108 -0
- package/dist/fixtures/errors/child-session-blocked.json +29 -0
- package/dist/fixtures/errors/close-session-gap.json +24 -0
- package/dist/fixtures/errors/harness-override-blocked.json +18 -0
- package/dist/fixtures/errors/invalid-event-400.json +21 -0
- package/dist/fixtures/events/cancel-interrupt.json +44 -0
- package/dist/fixtures/events/dual-terminal-markers.json +28 -0
- package/dist/fixtures/events/malformed-sse-skip.json +31 -0
- package/dist/fixtures/events/normal-terminal.json +54 -0
- package/dist/fixtures/events/reconnect-snapshot-dedupe.json +27 -0
- package/dist/fixtures/events/v0-4-noop-events.json +54 -0
- package/dist/fixtures/events/v0-5-noop-events.json +40 -0
- package/dist/fixtures/fake-server/README.md +38 -0
- package/dist/fixtures/fake-server/scenarios.json +112 -0
- package/dist/history-mapper.d.ts +13 -0
- package/dist/history-mapper.d.ts.map +1 -0
- package/dist/history-mapper.js +19 -0
- package/dist/history-mapper.js.map +1 -0
- package/dist/http-client.d.ts +39 -0
- package/dist/http-client.d.ts.map +1 -0
- package/dist/http-client.js +128 -0
- package/dist/http-client.js.map +1 -0
- package/dist/http-provider.d.ts +18 -0
- package/dist/http-provider.d.ts.map +1 -0
- package/dist/http-provider.js +195 -0
- package/dist/http-provider.js.map +1 -0
- package/dist/hybrid-provider.d.ts +26 -0
- package/dist/hybrid-provider.d.ts.map +1 -0
- package/dist/hybrid-provider.js +72 -0
- package/dist/hybrid-provider.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/process-manager.d.ts +39 -0
- package/dist/process-manager.d.ts.map +1 -0
- package/dist/process-manager.js +83 -0
- package/dist/process-manager.js.map +1 -0
- package/dist/sse-stream.d.ts +8 -0
- package/dist/sse-stream.d.ts.map +1 -0
- package/dist/sse-stream.js +80 -0
- package/dist/sse-stream.js.map +1 -0
- package/dist/types.d.ts +144 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +80 -0
- package/dist/types.js.map +1 -0
- package/package.json +23 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AgentRuntimeProvider, HarnessId, OmnigentCapabilitySnapshot, ProviderHealth } from "@consiliency/runtime-provider";
|
|
2
|
+
export interface OmnigentCapabilityProbeOptions {
|
|
3
|
+
readonly capturedAt?: string;
|
|
4
|
+
readonly endpoint?: string;
|
|
5
|
+
readonly supportedHarnesses?: HarnessId[];
|
|
6
|
+
}
|
|
7
|
+
export declare function probeOmnigentCapabilities(provider: Pick<AgentRuntimeProvider, "health">, options?: OmnigentCapabilityProbeOptions): Promise<OmnigentCapabilitySnapshot>;
|
|
8
|
+
export declare function snapshotFromHealth(health: ProviderHealth, options?: OmnigentCapabilityProbeOptions): OmnigentCapabilitySnapshot;
|
|
9
|
+
//# sourceMappingURL=capability-probe.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-probe.d.ts","sourceRoot":"","sources":["../src/capability-probe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,SAAS,EACT,0BAA0B,EAC1B,cAAc,EACf,MAAM,+BAA+B,CAAC;AAOvC,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,EAAE,CAAC;CAC3C;AA4CD,wBAAsB,yBAAyB,CAC7C,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,EAC9C,OAAO,GAAE,8BAAmC,GAC3C,OAAO,CAAC,0BAA0B,CAAC,CAErC;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,cAAc,EACtB,OAAO,GAAE,8BAAmC,GAC3C,0BAA0B,CAE5B"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { loadOmnigentCapabilityMatrix, loadOmnigentSourceMetadata, } from "./contract-fixtures.js";
|
|
2
|
+
function mapCapabilities() {
|
|
3
|
+
const matrix = loadOmnigentCapabilityMatrix();
|
|
4
|
+
const statuses = new Map(matrix.capabilities.map((capability) => [capability.name, capability.status]));
|
|
5
|
+
const enabled = (name) => {
|
|
6
|
+
const status = statuses.get(name);
|
|
7
|
+
return status === "supported" || status === "emulated";
|
|
8
|
+
};
|
|
9
|
+
return {
|
|
10
|
+
canCancel: enabled("cancel_turn"),
|
|
11
|
+
canClose: enabled("close_session"),
|
|
12
|
+
canCreateSession: enabled("create_session"),
|
|
13
|
+
canListSessions: enabled("list_sessions"),
|
|
14
|
+
canReadHistory: enabled("read_history"),
|
|
15
|
+
canSendTurn: enabled("send_turn"),
|
|
16
|
+
canSpawnChildSessions: enabled("child_session"),
|
|
17
|
+
canStreamEvents: enabled("stream_events"),
|
|
18
|
+
canUseHarnessOverride: enabled("harness_override"),
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
function buildSnapshot(health, options = {}) {
|
|
22
|
+
const sourceMetadata = loadOmnigentSourceMetadata();
|
|
23
|
+
return {
|
|
24
|
+
capabilities: mapCapabilities(),
|
|
25
|
+
capturedAt: options.capturedAt ?? new Date().toISOString(),
|
|
26
|
+
endpoint: options.endpoint,
|
|
27
|
+
gitSha: sourceMetadata.freeze_target.commit,
|
|
28
|
+
runtime: health.runtime,
|
|
29
|
+
schema: "omnigent_capability_snapshot.v0.1",
|
|
30
|
+
supportedHarnesses: options.supportedHarnesses ?? ["claude-code", "codex", "opencode", "pi"],
|
|
31
|
+
version: sourceMetadata.freeze_target.package_version,
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
export async function probeOmnigentCapabilities(provider, options = {}) {
|
|
35
|
+
return buildSnapshot(await provider.health(), options);
|
|
36
|
+
}
|
|
37
|
+
export function snapshotFromHealth(health, options = {}) {
|
|
38
|
+
return buildSnapshot(health, options);
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=capability-probe.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-probe.js","sourceRoot":"","sources":["../src/capability-probe.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAQhC,SAAS,eAAe;IACtB,MAAM,MAAM,GAAG,4BAA4B,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,GAAG,CACtB,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAC9E,CAAC;IAEF,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,EAAE;QAC/B,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,UAAU,CAAC;IACzD,CAAC,CAAC;IAEF,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC;QACjC,QAAQ,EAAE,OAAO,CAAC,eAAe,CAAC;QAClC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC;QAC3C,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC;QACzC,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC;QACvC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC;QACjC,qBAAqB,EAAE,OAAO,CAAC,eAAe,CAAC;QAC/C,eAAe,EAAE,OAAO,CAAC,eAAe,CAAC;QACzC,qBAAqB,EAAE,OAAO,CAAC,kBAAkB,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CACpB,MAAsB,EACtB,UAA0C,EAAE;IAE5C,MAAM,cAAc,GAAG,0BAA0B,EAAE,CAAC;IACpD,OAAO;QACL,YAAY,EAAE,eAAe,EAAE;QAC/B,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QAC1D,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,MAAM,EAAE,cAAc,CAAC,aAAa,CAAC,MAAM;QAC3C,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,mCAAmC;QAC3C,kBAAkB,EAChB,OAAO,CAAC,kBAAkB,IAAI,CAAC,aAAa,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC;QAC1E,OAAO,EAAE,cAAc,CAAC,aAAa,CAAC,eAAe;KACtD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,QAA8C,EAC9C,UAA0C,EAAE;IAE5C,OAAO,aAAa,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAsB,EACtB,UAA0C,EAAE;IAE5C,OAAO,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACxC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { OmnigentCapabilitySnapshot, StateLedgerEntry } from "@consiliency/runtime-provider";
|
|
2
|
+
export type OmnigentCapabilityRecord = Extract<StateLedgerEntry, {
|
|
3
|
+
kind: "capability_snapshot";
|
|
4
|
+
}>;
|
|
5
|
+
export interface OmnigentCapabilityLedger {
|
|
6
|
+
appendCapabilitySnapshot(snapshot: OmnigentCapabilitySnapshot): Promise<OmnigentCapabilityRecord>;
|
|
7
|
+
}
|
|
8
|
+
export declare class OmnigentCapabilityStore {
|
|
9
|
+
private readonly ledger;
|
|
10
|
+
constructor(ledger: OmnigentCapabilityLedger);
|
|
11
|
+
append(snapshot: OmnigentCapabilitySnapshot): Promise<OmnigentCapabilityRecord>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=capability-store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-store.d.ts","sourceRoot":"","sources":["../src/capability-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,0BAA0B,EAC1B,gBAAgB,EACjB,MAAM,+BAA+B,CAAC;AAEvC,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAC5C,gBAAgB,EAChB;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,CAChC,CAAC;AAEF,MAAM,WAAW,wBAAwB;IACvC,wBAAwB,CACtB,QAAQ,EAAE,0BAA0B,GACnC,OAAO,CAAC,wBAAwB,CAAC,CAAC;CACtC;AAED,qBAAa,uBAAuB;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,wBAAwB;IAEvD,MAAM,CACV,QAAQ,EAAE,0BAA0B,GACnC,OAAO,CAAC,wBAAwB,CAAC;CAGrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capability-store.js","sourceRoot":"","sources":["../src/capability-store.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,uBAAuB;IACL;IAA7B,YAA6B,MAAgC;QAAhC,WAAM,GAAN,MAAM,CAA0B;IAAG,CAAC;IAEjE,KAAK,CAAC,MAAM,CACV,QAAoC;QAEpC,OAAO,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IACxD,CAAC;CACF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { type AgentRuntimeProvider, type AgentSession, type AgentSessionInfo, type CancellationReason, type CreateSessionRequest, type HistoryOptions, type ProviderHealth, type RuntimeEvent, type SendTurnRequest, type SessionHistory, type StreamOptions, type TurnHandle } from "@consiliency/runtime-provider";
|
|
2
|
+
import type { OmnigentCliCommandRunner, OmnigentCliSessionTransport } from "./types.js";
|
|
3
|
+
export interface OmnigentCliProviderOptions {
|
|
4
|
+
readonly commandRunner?: OmnigentCliCommandRunner;
|
|
5
|
+
readonly transport?: OmnigentCliSessionTransport;
|
|
6
|
+
}
|
|
7
|
+
export declare function createCommandBackedCliTransport(commandRunner: OmnigentCliCommandRunner): OmnigentCliSessionTransport;
|
|
8
|
+
export declare class OmnigentCliProvider implements AgentRuntimeProvider {
|
|
9
|
+
private readonly transport;
|
|
10
|
+
private readonly sessions;
|
|
11
|
+
constructor(transport: OmnigentCliSessionTransport);
|
|
12
|
+
createSession(request: CreateSessionRequest): Promise<AgentSession>;
|
|
13
|
+
sendTurn(request: SendTurnRequest): Promise<TurnHandle>;
|
|
14
|
+
readHistory(sessionId: string, options?: HistoryOptions): Promise<SessionHistory>;
|
|
15
|
+
streamEvents(sessionId: string, options?: StreamOptions): AsyncIterable<RuntimeEvent>;
|
|
16
|
+
cancelTurn(handle: TurnHandle, _reason?: CancellationReason): Promise<TurnHandle>;
|
|
17
|
+
closeSession(sessionId: string): Promise<void>;
|
|
18
|
+
getSessionInfo(sessionId: string): Promise<AgentSessionInfo>;
|
|
19
|
+
health(): Promise<ProviderHealth>;
|
|
20
|
+
}
|
|
21
|
+
export declare function createCliProvider(options: OmnigentCliProviderOptions): AgentRuntimeProvider;
|
|
22
|
+
//# sourceMappingURL=cli-client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-client.d.ts","sourceRoot":"","sources":["../src/cli-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EAErB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,+BAA+B,CAAC;AAIvC,OAAO,KAAK,EAEV,wBAAwB,EACxB,2BAA2B,EAK5B,MAAM,YAAY,CAAC;AAWpB,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,aAAa,CAAC,EAAE,wBAAwB,CAAC;IAClD,QAAQ,CAAC,SAAS,CAAC,EAAE,2BAA2B,CAAC;CAClD;AA0ED,wBAAgB,+BAA+B,CAC7C,aAAa,EAAE,wBAAwB,GACtC,2BAA2B,CA4G7B;AAED,qBAAa,mBAAoB,YAAW,oBAAoB;IAGlD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAFtC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;gBAEnC,SAAS,EAAE,2BAA2B;IAE7D,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC;IAOnE,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IAgCvD,WAAW,CACf,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,cAAc,CAAC;IAenB,YAAY,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,aAAa,GACtB,aAAa,CAAC,YAAY,CAAC;IAiBxB,UAAU,CACd,MAAM,EAAE,UAAU,EAClB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,UAAU,CAAC;IAIhB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa9C,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAwB5D,MAAM,IAAI,OAAO,CAAC,cAAc,CAAC;CAGxC;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,0BAA0B,GAClC,oBAAoB,CAYtB"}
|
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import { createRuntimeFailure, } from "@consiliency/runtime-provider";
|
|
2
|
+
import { OmnigentEventMapper } from "./event-mapper.js";
|
|
3
|
+
import { mapOmnigentHistory } from "./history-mapper.js";
|
|
4
|
+
function commandFailure(result) {
|
|
5
|
+
throw createRuntimeFailure({
|
|
6
|
+
actor: "omnigent",
|
|
7
|
+
category: "backend_unavailable",
|
|
8
|
+
message: result.stderr || `Command ${result.command.join(" ")} failed.`,
|
|
9
|
+
retryable: false,
|
|
10
|
+
safeDiagnostics: {
|
|
11
|
+
command: result.command.join(" "),
|
|
12
|
+
exitCode: result.exitCode,
|
|
13
|
+
},
|
|
14
|
+
scope: "system",
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
function parseJsonResult(result) {
|
|
18
|
+
if (result.exitCode !== 0) {
|
|
19
|
+
commandFailure(result);
|
|
20
|
+
}
|
|
21
|
+
return JSON.parse(result.stdout);
|
|
22
|
+
}
|
|
23
|
+
function mapSessionState(status) {
|
|
24
|
+
switch (status) {
|
|
25
|
+
case "running":
|
|
26
|
+
case "waiting":
|
|
27
|
+
return "turn_active";
|
|
28
|
+
case "failed":
|
|
29
|
+
return "failed";
|
|
30
|
+
case "idle":
|
|
31
|
+
default:
|
|
32
|
+
return "idle";
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
function toSessionInfo(request, snapshot, previous) {
|
|
36
|
+
return {
|
|
37
|
+
activeTurnId: snapshot.activeTurnId,
|
|
38
|
+
correlationId: request.correlationId,
|
|
39
|
+
createdAt: snapshot.createdAt,
|
|
40
|
+
eventCursor: previous?.eventCursor ?? 0,
|
|
41
|
+
handoffPacket: request.handoffPacket,
|
|
42
|
+
id: snapshot.id,
|
|
43
|
+
identityProfileId: request.identityProfileId,
|
|
44
|
+
lastError: previous?.lastError,
|
|
45
|
+
metadata: snapshot.metadata,
|
|
46
|
+
repoRoot: request.repoRoot,
|
|
47
|
+
rootSessionId: snapshot.id,
|
|
48
|
+
runtime: "omnigent",
|
|
49
|
+
state: mapSessionState(snapshot.status),
|
|
50
|
+
targetHarness: request.targetHarness,
|
|
51
|
+
targetProvider: request.targetProvider,
|
|
52
|
+
title: snapshot.title,
|
|
53
|
+
updatedAt: snapshot.updatedAt,
|
|
54
|
+
worktree: request.worktree,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export function createCommandBackedCliTransport(commandRunner) {
|
|
58
|
+
return {
|
|
59
|
+
async createSession(request) {
|
|
60
|
+
const agentArg = request.agentSpec?.kind === "named_agent"
|
|
61
|
+
? request.agentSpec.value
|
|
62
|
+
: "default-agent";
|
|
63
|
+
const result = await commandRunner(["omnigent", "run", agentArg], {
|
|
64
|
+
input: JSON.stringify(request),
|
|
65
|
+
});
|
|
66
|
+
const envelope = parseJsonResult(result);
|
|
67
|
+
if (!envelope.session) {
|
|
68
|
+
throw createRuntimeFailure({
|
|
69
|
+
actor: "provider",
|
|
70
|
+
category: "malformed_response",
|
|
71
|
+
message: "CLI run output did not include a session snapshot.",
|
|
72
|
+
retryable: false,
|
|
73
|
+
scope: "session",
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
return envelope.session;
|
|
77
|
+
},
|
|
78
|
+
async sendTurn(request, _session) {
|
|
79
|
+
const result = await commandRunner(["omnigent", "attach", request.sessionId], { input: request.message });
|
|
80
|
+
const envelope = parseJsonResult(result);
|
|
81
|
+
if (!envelope.handle) {
|
|
82
|
+
throw createRuntimeFailure({
|
|
83
|
+
actor: "provider",
|
|
84
|
+
category: "malformed_response",
|
|
85
|
+
message: "CLI attach output did not include a turn handle.",
|
|
86
|
+
retryable: false,
|
|
87
|
+
scope: "turn",
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return {
|
|
91
|
+
handle: envelope.handle,
|
|
92
|
+
rawEvents: envelope.rawEvents,
|
|
93
|
+
};
|
|
94
|
+
},
|
|
95
|
+
async readHistory(sessionId) {
|
|
96
|
+
const result = await commandRunner(["omnigent", "resume", sessionId]);
|
|
97
|
+
return parseJsonResult(result).history ?? [];
|
|
98
|
+
},
|
|
99
|
+
async streamEvents(sessionId) {
|
|
100
|
+
const result = await commandRunner(["omnigent", "attach", sessionId]);
|
|
101
|
+
return parseJsonResult(result).rawEvents ?? [];
|
|
102
|
+
},
|
|
103
|
+
async cancelTurn(handle) {
|
|
104
|
+
throw createRuntimeFailure({
|
|
105
|
+
actor: "omnigent",
|
|
106
|
+
category: "backend_capability_missing",
|
|
107
|
+
message: `CLI fallback does not publish a stable cancel command for ${handle.turnId}.`,
|
|
108
|
+
retryable: false,
|
|
109
|
+
scope: "turn",
|
|
110
|
+
});
|
|
111
|
+
},
|
|
112
|
+
async closeSession(_sessionId) {
|
|
113
|
+
return;
|
|
114
|
+
},
|
|
115
|
+
async getSessionInfo(sessionId) {
|
|
116
|
+
const result = await commandRunner(["omnigent", "resume", sessionId]);
|
|
117
|
+
const envelope = parseJsonResult(result);
|
|
118
|
+
if (!envelope.session) {
|
|
119
|
+
throw createRuntimeFailure({
|
|
120
|
+
actor: "provider",
|
|
121
|
+
category: "malformed_response",
|
|
122
|
+
message: "CLI resume output did not include a session snapshot.",
|
|
123
|
+
retryable: false,
|
|
124
|
+
scope: "session",
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return {
|
|
128
|
+
session: envelope.session,
|
|
129
|
+
state: envelope.state ?? mapSessionState(envelope.session.status),
|
|
130
|
+
};
|
|
131
|
+
},
|
|
132
|
+
async health() {
|
|
133
|
+
const result = await commandRunner(["omnigent", "server", "status"]);
|
|
134
|
+
const envelope = parseJsonResult(result);
|
|
135
|
+
const running = envelope.server?.running ?? false;
|
|
136
|
+
return {
|
|
137
|
+
activeSessions: 0,
|
|
138
|
+
available: running,
|
|
139
|
+
backend: "omnigent-cli",
|
|
140
|
+
notes: envelope.server?.notes,
|
|
141
|
+
runtime: "omnigent",
|
|
142
|
+
sessionStateDrift: [],
|
|
143
|
+
};
|
|
144
|
+
},
|
|
145
|
+
async serverStatus() {
|
|
146
|
+
const result = await commandRunner(["omnigent", "server", "status"]);
|
|
147
|
+
return parseJsonResult(result).server ?? {
|
|
148
|
+
running: false,
|
|
149
|
+
};
|
|
150
|
+
},
|
|
151
|
+
async serverStart() {
|
|
152
|
+
const result = await commandRunner(["omnigent", "server", "start"]);
|
|
153
|
+
return parseJsonResult(result).server ?? {
|
|
154
|
+
running: true,
|
|
155
|
+
};
|
|
156
|
+
},
|
|
157
|
+
async serverStop() {
|
|
158
|
+
await commandRunner(["omnigent", "server", "stop"]);
|
|
159
|
+
},
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
export class OmnigentCliProvider {
|
|
163
|
+
transport;
|
|
164
|
+
sessions = new Map();
|
|
165
|
+
constructor(transport) {
|
|
166
|
+
this.transport = transport;
|
|
167
|
+
}
|
|
168
|
+
async createSession(request) {
|
|
169
|
+
const snapshot = await this.transport.createSession(request);
|
|
170
|
+
const session = toSessionInfo(request, snapshot);
|
|
171
|
+
this.sessions.set(session.id, session);
|
|
172
|
+
return session;
|
|
173
|
+
}
|
|
174
|
+
async sendTurn(request) {
|
|
175
|
+
const session = this.sessions.get(request.sessionId);
|
|
176
|
+
if (!session) {
|
|
177
|
+
throw createRuntimeFailure({
|
|
178
|
+
actor: "provider",
|
|
179
|
+
category: "validation",
|
|
180
|
+
message: `Session ${request.sessionId} is not tracked locally.`,
|
|
181
|
+
retryable: false,
|
|
182
|
+
scope: "session",
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
const result = await this.transport.sendTurn(request, {
|
|
186
|
+
activeTurnId: session.activeTurnId,
|
|
187
|
+
backend: "omnigent-cli",
|
|
188
|
+
createdAt: session.createdAt,
|
|
189
|
+
id: session.id,
|
|
190
|
+
items: [],
|
|
191
|
+
metadata: session.metadata,
|
|
192
|
+
status: "idle",
|
|
193
|
+
title: session.title,
|
|
194
|
+
updatedAt: session.updatedAt,
|
|
195
|
+
});
|
|
196
|
+
this.sessions.set(request.sessionId, {
|
|
197
|
+
...session,
|
|
198
|
+
activeTurnId: result.handle.turnId,
|
|
199
|
+
state: "turn_active",
|
|
200
|
+
updatedAt: result.handle.updatedAt,
|
|
201
|
+
});
|
|
202
|
+
return result.handle;
|
|
203
|
+
}
|
|
204
|
+
async readHistory(sessionId, options) {
|
|
205
|
+
const items = await this.transport.readHistory(sessionId);
|
|
206
|
+
const mapped = mapOmnigentHistory(sessionId, items, {
|
|
207
|
+
afterSequence: options?.afterSequence,
|
|
208
|
+
});
|
|
209
|
+
return {
|
|
210
|
+
events: options?.limit === undefined
|
|
211
|
+
? mapped.history.events
|
|
212
|
+
: mapped.history.events.slice(0, options.limit),
|
|
213
|
+
nextCursor: mapped.history.nextCursor,
|
|
214
|
+
sessionId,
|
|
215
|
+
};
|
|
216
|
+
}
|
|
217
|
+
async *streamEvents(sessionId, options) {
|
|
218
|
+
const rawEvents = await this.transport.streamEvents(sessionId);
|
|
219
|
+
const mapper = new OmnigentEventMapper(sessionId, {
|
|
220
|
+
startingSequence: (options?.afterSequence ?? 0) + 1,
|
|
221
|
+
});
|
|
222
|
+
for (const rawEvent of rawEvents) {
|
|
223
|
+
for (const event of mapper.map(rawEvent)) {
|
|
224
|
+
if (options?.afterSequence === undefined ||
|
|
225
|
+
event.sequence > options.afterSequence) {
|
|
226
|
+
yield event;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
async cancelTurn(handle, _reason) {
|
|
232
|
+
return this.transport.cancelTurn(handle);
|
|
233
|
+
}
|
|
234
|
+
async closeSession(sessionId) {
|
|
235
|
+
await this.transport.closeSession(sessionId);
|
|
236
|
+
const session = this.sessions.get(sessionId);
|
|
237
|
+
if (session) {
|
|
238
|
+
this.sessions.set(sessionId, {
|
|
239
|
+
...session,
|
|
240
|
+
activeTurnId: undefined,
|
|
241
|
+
state: "closed",
|
|
242
|
+
updatedAt: new Date().toISOString(),
|
|
243
|
+
});
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
async getSessionInfo(sessionId) {
|
|
247
|
+
const session = this.sessions.get(sessionId);
|
|
248
|
+
if (!session) {
|
|
249
|
+
throw createRuntimeFailure({
|
|
250
|
+
actor: "provider",
|
|
251
|
+
category: "validation",
|
|
252
|
+
message: `Session ${sessionId} is not tracked locally.`,
|
|
253
|
+
retryable: false,
|
|
254
|
+
scope: "session",
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
const resolved = await this.transport.getSessionInfo(sessionId);
|
|
258
|
+
const next = {
|
|
259
|
+
...session,
|
|
260
|
+
activeTurnId: resolved.session.activeTurnId,
|
|
261
|
+
metadata: resolved.session.metadata,
|
|
262
|
+
state: session.state === "closed" ? "closed" : resolved.state,
|
|
263
|
+
updatedAt: resolved.session.updatedAt,
|
|
264
|
+
};
|
|
265
|
+
this.sessions.set(sessionId, next);
|
|
266
|
+
return next;
|
|
267
|
+
}
|
|
268
|
+
async health() {
|
|
269
|
+
return this.transport.health();
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
export function createCliProvider(options) {
|
|
273
|
+
if (options.transport) {
|
|
274
|
+
return new OmnigentCliProvider(options.transport);
|
|
275
|
+
}
|
|
276
|
+
if (options.commandRunner) {
|
|
277
|
+
return new OmnigentCliProvider(createCommandBackedCliTransport(options.commandRunner));
|
|
278
|
+
}
|
|
279
|
+
throw new Error("CLI provider requires either a transport or commandRunner.");
|
|
280
|
+
}
|
|
281
|
+
//# sourceMappingURL=cli-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-client.js","sourceRoot":"","sources":["../src/cli-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import type { OmnigentCapabilityStatus, OmnigentMcpServerStartup, OmnigentRawEvent } from "./types.js";
|
|
2
|
+
export interface OmnigentSourceMetadataFixture {
|
|
3
|
+
readonly freeze_target: {
|
|
4
|
+
readonly commit: string;
|
|
5
|
+
readonly package_version: string;
|
|
6
|
+
readonly published_at: string;
|
|
7
|
+
readonly requires_python: string;
|
|
8
|
+
readonly tag: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export interface OmnigentHttpSurfaceFixture {
|
|
12
|
+
readonly harness_endpoints?: Array<{
|
|
13
|
+
readonly method: string;
|
|
14
|
+
readonly path: string;
|
|
15
|
+
readonly purpose: string;
|
|
16
|
+
}>;
|
|
17
|
+
readonly session_endpoints: Array<{
|
|
18
|
+
readonly method: string;
|
|
19
|
+
readonly path: string;
|
|
20
|
+
readonly purpose: string;
|
|
21
|
+
}>;
|
|
22
|
+
readonly session_list_item_fields?: Readonly<Record<string, string>>;
|
|
23
|
+
readonly session_snapshot_fields?: Readonly<Record<string, string>>;
|
|
24
|
+
readonly optional_release_surfaces?: Array<{
|
|
25
|
+
readonly field?: string;
|
|
26
|
+
readonly method?: string;
|
|
27
|
+
readonly methods?: string[];
|
|
28
|
+
readonly path?: string;
|
|
29
|
+
readonly reason: string;
|
|
30
|
+
readonly status: string;
|
|
31
|
+
}>;
|
|
32
|
+
readonly fork_request?: {
|
|
33
|
+
readonly allowed_fields: string[];
|
|
34
|
+
readonly removed_fields: string[];
|
|
35
|
+
readonly provider_sends_removed_fields: boolean;
|
|
36
|
+
};
|
|
37
|
+
readonly stream_contract: {
|
|
38
|
+
readonly done_sentinel: string;
|
|
39
|
+
readonly mode: string;
|
|
40
|
+
readonly reconnect_steps: string[];
|
|
41
|
+
readonly replay: boolean;
|
|
42
|
+
readonly event_families?: string[];
|
|
43
|
+
readonly official_release_event_count?: number;
|
|
44
|
+
readonly release_event_types?: string[];
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export interface OmnigentCliSurfaceFixture {
|
|
48
|
+
readonly documented_commands: string[];
|
|
49
|
+
readonly non_provider_required_commands?: string[];
|
|
50
|
+
readonly entrypoints: Array<{
|
|
51
|
+
readonly name: string;
|
|
52
|
+
readonly target: string;
|
|
53
|
+
}>;
|
|
54
|
+
readonly exit_code_contract: {
|
|
55
|
+
readonly nonzero_codes_are_stable_abi: boolean;
|
|
56
|
+
readonly success_code: number;
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
export interface OmnigentCapabilityProbeFixture {
|
|
60
|
+
readonly capabilities: Array<{
|
|
61
|
+
readonly name: string;
|
|
62
|
+
readonly status: OmnigentCapabilityStatus;
|
|
63
|
+
readonly evidence: string[];
|
|
64
|
+
}>;
|
|
65
|
+
}
|
|
66
|
+
export interface OmnigentEventFixture {
|
|
67
|
+
readonly ack?: {
|
|
68
|
+
readonly queued: boolean;
|
|
69
|
+
};
|
|
70
|
+
readonly events?: Array<{
|
|
71
|
+
readonly phase?: string;
|
|
72
|
+
readonly reason?: string;
|
|
73
|
+
readonly servers?: Readonly<Record<string, OmnigentMcpServerStartup>>;
|
|
74
|
+
readonly semantic_terminal?: boolean;
|
|
75
|
+
readonly status?: string;
|
|
76
|
+
readonly terminal?: boolean;
|
|
77
|
+
readonly type: OmnigentRawEvent["type"];
|
|
78
|
+
}>;
|
|
79
|
+
readonly expected_provider_behavior?: string;
|
|
80
|
+
readonly fixture: string;
|
|
81
|
+
readonly frames?: Array<{
|
|
82
|
+
readonly client_action: string;
|
|
83
|
+
readonly shape?: string;
|
|
84
|
+
readonly type?: string;
|
|
85
|
+
}>;
|
|
86
|
+
}
|
|
87
|
+
export interface OmnigentErrorFixture {
|
|
88
|
+
readonly fixture: string;
|
|
89
|
+
readonly note?: string;
|
|
90
|
+
readonly provider_status?: OmnigentCapabilityStatus;
|
|
91
|
+
readonly response?: {
|
|
92
|
+
readonly class: string;
|
|
93
|
+
readonly status_code: number;
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export interface OmnigentFakeServerScenarioCatalog {
|
|
97
|
+
readonly scenarios: Array<{
|
|
98
|
+
readonly capabilities: string[];
|
|
99
|
+
readonly fixtures: string[];
|
|
100
|
+
readonly name: string;
|
|
101
|
+
}>;
|
|
102
|
+
}
|
|
103
|
+
export declare function readOmnigentFixture<T>(relativePath: string): T;
|
|
104
|
+
export declare function loadOmnigentSourceMetadata(): OmnigentSourceMetadataFixture;
|
|
105
|
+
export declare function loadOmnigentHttpSurface(): OmnigentHttpSurfaceFixture;
|
|
106
|
+
export declare function loadOmnigentCliSurface(): OmnigentCliSurfaceFixture;
|
|
107
|
+
export declare function loadOmnigentCapabilityMatrix(): OmnigentCapabilityProbeFixture;
|
|
108
|
+
export declare function loadOmnigentEventFixture(name: string): OmnigentEventFixture;
|
|
109
|
+
export declare function loadOmnigentErrorFixture(name: string): OmnigentErrorFixture;
|
|
110
|
+
export declare function loadOmnigentFakeServerScenarios(): OmnigentFakeServerScenarioCatalog;
|
|
111
|
+
//# sourceMappingURL=contract-fixtures.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-fixtures.d.ts","sourceRoot":"","sources":["../src/contract-fixtures.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,wBAAwB,EACxB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,aAAa,EAAE;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;QAC9B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;QACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC;QACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,CAAC,CAAC;IACH,QAAQ,CAAC,iBAAiB,EAAE,KAAK,CAAC;QAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;KAC1B,CAAC,CAAC;IACH,QAAQ,CAAC,wBAAwB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACrE,QAAQ,CAAC,uBAAuB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACpE,QAAQ,CAAC,yBAAyB,CAAC,EAAE,KAAK,CAAC;QACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE;QACtB,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,6BAA6B,EAAE,OAAO,CAAC;KACjD,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE;QACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;QACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACzB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QACnC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,MAAM,CAAC;QAC/C,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;KACzC,CAAC;CACH;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,8BAA8B,CAAC,EAAE,MAAM,EAAE,CAAC;IACnD,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;QAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,CAAC,CAAC;IACH,QAAQ,CAAC,kBAAkB,EAAE;QAC3B,QAAQ,CAAC,4BAA4B,EAAE,OAAO,CAAC;QAC/C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;KAC/B,CAAC;CACH;AAED,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC;QAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QACtB,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;QAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;KAC7B,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,GAAG,CAAC,EAAE;QACb,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;KAC1B,CAAC;IACF,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;QACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC,CAAC;QACtE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;QACrC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAC5B,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;KACzC,CAAC,CAAC;IACH,QAAQ,CAAC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;QACtB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;QAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B,CAAC;CACH;AAED,MAAM,WAAW,iCAAiC;IAChD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;QACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;QAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;CACJ;AAOD,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,CAQ9D;AAED,wBAAgB,0BAA0B,IAAI,6BAA6B,CAI1E;AAED,wBAAgB,uBAAuB,IAAI,0BAA0B,CAIpE;AAED,wBAAgB,sBAAsB,IAAI,yBAAyB,CAIlE;AAED,wBAAgB,4BAA4B,IAAI,8BAA8B,CAI7E;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAE3E;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAE3E;AAED,wBAAgB,+BAA+B,IAAI,iCAAiC,CAInF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
2
|
+
const omnigentFixtureRoots = [
|
|
3
|
+
new URL("./fixtures/", import.meta.url),
|
|
4
|
+
new URL("../../../fixtures/omnigent/", import.meta.url),
|
|
5
|
+
];
|
|
6
|
+
export function readOmnigentFixture(relativePath) {
|
|
7
|
+
const fixtureUrl = omnigentFixtureRoots
|
|
8
|
+
.map((root) => new URL(relativePath, root))
|
|
9
|
+
.find((candidate) => existsSync(candidate));
|
|
10
|
+
if (fixtureUrl === undefined) {
|
|
11
|
+
throw new Error(`Omnigent fixture not found: ${relativePath}`);
|
|
12
|
+
}
|
|
13
|
+
return JSON.parse(readFileSync(fixtureUrl, "utf8"));
|
|
14
|
+
}
|
|
15
|
+
export function loadOmnigentSourceMetadata() {
|
|
16
|
+
return readOmnigentFixture("discovery/source-metadata.json");
|
|
17
|
+
}
|
|
18
|
+
export function loadOmnigentHttpSurface() {
|
|
19
|
+
return readOmnigentFixture("discovery/http-surface.json");
|
|
20
|
+
}
|
|
21
|
+
export function loadOmnigentCliSurface() {
|
|
22
|
+
return readOmnigentFixture("discovery/cli-surface.json");
|
|
23
|
+
}
|
|
24
|
+
export function loadOmnigentCapabilityMatrix() {
|
|
25
|
+
return readOmnigentFixture("discovery/capability-probes.json");
|
|
26
|
+
}
|
|
27
|
+
export function loadOmnigentEventFixture(name) {
|
|
28
|
+
return readOmnigentFixture(`events/${name}.json`);
|
|
29
|
+
}
|
|
30
|
+
export function loadOmnigentErrorFixture(name) {
|
|
31
|
+
return readOmnigentFixture(`errors/${name}.json`);
|
|
32
|
+
}
|
|
33
|
+
export function loadOmnigentFakeServerScenarios() {
|
|
34
|
+
return readOmnigentFixture("fake-server/scenarios.json");
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=contract-fixtures.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contract-fixtures.js","sourceRoot":"","sources":["../src/contract-fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAoHnD,MAAM,oBAAoB,GAAG;IAC3B,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;IACvC,IAAI,GAAG,CAAC,6BAA6B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;CACxD,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAI,YAAoB;IACzD,MAAM,UAAU,GAAG,oBAAoB;SACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;SAC1C,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC;IAC9C,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAM,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,mBAAmB,CACxB,gCAAgC,CACjC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,mBAAmB,CACxB,6BAA6B,CAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,mBAAmB,CACxB,4BAA4B,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B;IAC1C,OAAO,mBAAmB,CACxB,kCAAkC,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,mBAAmB,CAAuB,UAAU,IAAI,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,IAAY;IACnD,OAAO,mBAAmB,CAAuB,UAAU,IAAI,OAAO,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,+BAA+B;IAC7C,OAAO,mBAAmB,CACxB,4BAA4B,CAC7B,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type RuntimeEvent } from "@consiliency/runtime-provider";
|
|
2
|
+
import type { OmnigentRawEvent } from "./types.js";
|
|
3
|
+
export interface OmnigentEventMapperOptions {
|
|
4
|
+
readonly seenItemIds?: Iterable<string>;
|
|
5
|
+
readonly startingSequence?: number;
|
|
6
|
+
}
|
|
7
|
+
export declare class OmnigentEventMapper {
|
|
8
|
+
private readonly sessionId;
|
|
9
|
+
readonly seenItemIds: Set<string>;
|
|
10
|
+
private emittedSessionCreated;
|
|
11
|
+
private readonly emittedStartedTurnIds;
|
|
12
|
+
private readonly emittedTerminalTurnIds;
|
|
13
|
+
private nextSequence;
|
|
14
|
+
constructor(sessionId: string, options?: OmnigentEventMapperOptions);
|
|
15
|
+
map(rawEvent: OmnigentRawEvent): RuntimeEvent[];
|
|
16
|
+
private mapFailedEvent;
|
|
17
|
+
private mapTerminalEvent;
|
|
18
|
+
private createEvent;
|
|
19
|
+
}
|
|
20
|
+
export declare function mapOmnigentEventSequence(sessionId: string, rawEvents: readonly OmnigentRawEvent[], options?: OmnigentEventMapperOptions): RuntimeEvent[];
|
|
21
|
+
//# sourceMappingURL=event-mapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"event-mapper.d.ts","sourceRoot":"","sources":["../src/event-mapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAsBnD,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,qBAAa,mBAAmB;IAS5B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAR5B,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAElC,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAqB;IAC3D,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAqB;IAC5D,OAAO,CAAC,YAAY,CAAS;gBAGV,SAAS,EAAE,MAAM,EAClC,OAAO,GAAE,0BAA+B;IAM1C,GAAG,CAAC,QAAQ,EAAE,gBAAgB,GAAG,YAAY,EAAE;IA0F/C,OAAO,CAAC,cAAc;IAsCtB,OAAO,CAAC,gBAAgB;IA0DxB,OAAO,CAAC,WAAW;CAuBpB;AAED,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,gBAAgB,EAAE,EACtC,OAAO,GAAE,0BAA+B,GACvC,YAAY,EAAE,CAGhB"}
|