@intx/inference 0.1.2 → 0.2.2
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/LICENSE +176 -0
- package/dist/actions.d.ts +16 -0
- package/dist/actions.js +200 -0
- package/dist/adapter.d.ts +38 -0
- package/dist/adapter.js +31 -0
- package/dist/assembly.d.ts +68 -0
- package/dist/assembly.js +132 -0
- package/dist/audit-collector.d.ts +10 -0
- package/dist/audit-collector.js +139 -0
- package/dist/auth.d.ts +24 -0
- package/{src/auth.ts → dist/auth.js} +13 -19
- package/dist/authz-extension.d.ts +32 -0
- package/dist/authz-extension.js +100 -0
- package/dist/correlation.d.ts +25 -0
- package/dist/correlation.js +32 -0
- package/dist/default-director.d.ts +111 -0
- package/dist/default-director.js +199 -0
- package/dist/director.d.ts +6 -0
- package/dist/director.js +56 -0
- package/dist/errors.d.ts +18 -0
- package/dist/errors.js +83 -0
- package/dist/gates.d.ts +27 -0
- package/dist/gates.js +80 -0
- package/dist/harness.d.ts +147 -0
- package/dist/harness.js +1319 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.js +21 -0
- package/dist/manifest.d.ts +31 -0
- package/dist/manifest.js +44 -0
- package/dist/providers/anthropic.d.ts +33 -0
- package/dist/providers/anthropic.js +670 -0
- package/dist/providers/google-genai-files.d.ts +48 -0
- package/dist/providers/google-genai-files.js +205 -0
- package/dist/providers/google-genai.d.ts +3 -0
- package/dist/providers/google-genai.js +1196 -0
- package/dist/providers/index.d.ts +38 -0
- package/dist/providers/index.js +56 -0
- package/dist/providers/openai.d.ts +3 -0
- package/dist/providers/openai.js +609 -0
- package/dist/reactor.d.ts +50 -0
- package/dist/reactor.js +920 -0
- package/dist/retry-policy.d.ts +31 -0
- package/{src/retry-policy.ts → dist/retry-policy.js} +41 -53
- package/dist/sse.d.ts +1 -0
- package/dist/sse.js +63 -0
- package/dist/state.d.ts +23 -0
- package/dist/state.js +100 -0
- package/dist/tool-name.d.ts +6 -0
- package/dist/tool-name.js +110 -0
- package/dist/transform.d.ts +11 -0
- package/dist/transform.js +117 -0
- package/dist/transforms/index.d.ts +2 -0
- package/dist/transforms/index.js +1 -0
- package/dist/transforms/size-cap.d.ts +12 -0
- package/dist/transforms/size-cap.js +80 -0
- package/dist/turns.d.ts +21 -0
- package/dist/turns.js +135 -0
- package/package.json +21 -6
- package/src/actions.ts +0 -245
- package/src/adapter.ts +0 -57
- package/src/assembly.test.ts +0 -728
- package/src/assembly.ts +0 -250
- package/src/audit-collector.test.ts +0 -332
- package/src/audit-collector.ts +0 -172
- package/src/auth.test.ts +0 -117
- package/src/authz-extension.test.ts +0 -269
- package/src/authz-extension.ts +0 -145
- package/src/correlation.ts +0 -61
- package/src/default-director.test.ts +0 -314
- package/src/default-director.ts +0 -344
- package/src/director.ts +0 -87
- package/src/errors.test.ts +0 -133
- package/src/errors.ts +0 -115
- package/src/gates.ts +0 -128
- package/src/harness.test.ts +0 -655
- package/src/harness.ts +0 -1571
- package/src/index.ts +0 -76
- package/src/providers/anthropic.test.ts +0 -771
- package/src/providers/anthropic.ts +0 -810
- package/src/providers/google-genai-files.ts +0 -289
- package/src/providers/google-genai.ts +0 -1518
- package/src/providers/openai.ts +0 -719
- package/src/providers/registry.ts +0 -33
- package/src/reactor.test.ts +0 -3660
- package/src/reactor.ts +0 -1058
- package/src/scheduler.test.ts +0 -41
- package/src/sse.test.ts +0 -133
- package/src/sse.ts +0 -76
- package/src/state.ts +0 -135
- package/src/transform.test.ts +0 -207
- package/src/transform.ts +0 -159
- package/src/transforms/index.ts +0 -2
- package/src/transforms/size-cap.test.ts +0 -172
- package/src/transforms/size-cap.ts +0 -110
- package/src/turns.ts +0 -54
- package/tsconfig.json +0 -4
- package/tsconfig.tsbuildinfo +0 -1
package/src/gates.ts
DELETED
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
// Gate management for the agent reactor.
|
|
2
|
-
//
|
|
3
|
-
// Gates block the reactor until an external condition resolves. Each gate has
|
|
4
|
-
// a type, an ID, and a mandatory timeout. The gate manager owns all active
|
|
5
|
-
// gates and exposes methods to register, clear, and time out gates.
|
|
6
|
-
//
|
|
7
|
-
// (INFERENCE.md § Gates, Gate Timeouts, Gate Behavior During Suspension)
|
|
8
|
-
|
|
9
|
-
import type { GateType } from "@intx/types/runtime";
|
|
10
|
-
|
|
11
|
-
export type GateRecord = {
|
|
12
|
-
gateId: string;
|
|
13
|
-
type: GateType;
|
|
14
|
-
timeoutAt: number;
|
|
15
|
-
correlationId: string | undefined;
|
|
16
|
-
resolve: (reason: "resolved" | "timeout" | "shutdown") => void;
|
|
17
|
-
onCleared: (
|
|
18
|
-
gateId: string,
|
|
19
|
-
reason: "resolved" | "timeout" | "shutdown",
|
|
20
|
-
) => void;
|
|
21
|
-
timer: ReturnType<typeof setTimeout>;
|
|
22
|
-
};
|
|
23
|
-
|
|
24
|
-
export type GateSnapshot = {
|
|
25
|
-
gateId: string;
|
|
26
|
-
type: GateType;
|
|
27
|
-
timeoutAt: number;
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Manages active gates. All gates must have a positive timeout.
|
|
32
|
-
*/
|
|
33
|
-
export function createGateManager() {
|
|
34
|
-
const gates = new Map<string, GateRecord>();
|
|
35
|
-
|
|
36
|
-
function register(
|
|
37
|
-
gateId: string,
|
|
38
|
-
type: GateType,
|
|
39
|
-
timeoutMs: number,
|
|
40
|
-
correlationId: string | undefined,
|
|
41
|
-
onCleared: (
|
|
42
|
-
gateId: string,
|
|
43
|
-
reason: "resolved" | "timeout" | "shutdown",
|
|
44
|
-
) => void,
|
|
45
|
-
): Promise<"resolved" | "timeout" | "shutdown"> {
|
|
46
|
-
if (timeoutMs <= 0) {
|
|
47
|
-
throw new Error(
|
|
48
|
-
`Gate "${gateId}" must have a positive timeout (got ${timeoutMs})`,
|
|
49
|
-
);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
if (gates.has(gateId)) {
|
|
53
|
-
throw new Error(`Gate "${gateId}" is already registered`);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
const timeoutAt = Date.now() + timeoutMs;
|
|
57
|
-
let resolveGate!: (reason: "resolved" | "timeout" | "shutdown") => void;
|
|
58
|
-
|
|
59
|
-
const promise = new Promise<"resolved" | "timeout" | "shutdown">(
|
|
60
|
-
(resolve) => {
|
|
61
|
-
resolveGate = resolve;
|
|
62
|
-
},
|
|
63
|
-
);
|
|
64
|
-
|
|
65
|
-
const timer = setTimeout(() => {
|
|
66
|
-
if (gates.has(gateId)) {
|
|
67
|
-
gates.delete(gateId);
|
|
68
|
-
resolveGate("timeout");
|
|
69
|
-
onCleared(gateId, "timeout");
|
|
70
|
-
}
|
|
71
|
-
}, timeoutMs);
|
|
72
|
-
|
|
73
|
-
gates.set(gateId, {
|
|
74
|
-
gateId,
|
|
75
|
-
type,
|
|
76
|
-
timeoutAt,
|
|
77
|
-
correlationId,
|
|
78
|
-
resolve: resolveGate,
|
|
79
|
-
onCleared,
|
|
80
|
-
timer,
|
|
81
|
-
});
|
|
82
|
-
|
|
83
|
-
return promise;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
function clear(gateId: string): boolean {
|
|
87
|
-
const gate = gates.get(gateId);
|
|
88
|
-
if (gate === undefined) return false;
|
|
89
|
-
clearTimeout(gate.timer);
|
|
90
|
-
gates.delete(gateId);
|
|
91
|
-
gate.resolve("resolved");
|
|
92
|
-
gate.onCleared(gateId, "resolved");
|
|
93
|
-
return true;
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
function shutdown(): void {
|
|
97
|
-
const entries = Array.from(gates.values());
|
|
98
|
-
gates.clear();
|
|
99
|
-
for (const gate of entries) {
|
|
100
|
-
clearTimeout(gate.timer);
|
|
101
|
-
gate.resolve("shutdown");
|
|
102
|
-
gate.onCleared(gate.gateId, "shutdown");
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
function findByCorrelationId(correlationId: string): GateRecord | undefined {
|
|
107
|
-
for (const gate of gates.values()) {
|
|
108
|
-
if (gate.correlationId === correlationId) return gate;
|
|
109
|
-
}
|
|
110
|
-
return undefined;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
function snapshot(): GateSnapshot[] {
|
|
114
|
-
return Array.from(gates.values()).map((g) => ({
|
|
115
|
-
gateId: g.gateId,
|
|
116
|
-
type: g.type,
|
|
117
|
-
timeoutAt: g.timeoutAt,
|
|
118
|
-
}));
|
|
119
|
-
}
|
|
120
|
-
|
|
121
|
-
function has(gateId: string): boolean {
|
|
122
|
-
return gates.has(gateId);
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
return { register, clear, shutdown, findByCorrelationId, snapshot, has };
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
export type GateManager = ReturnType<typeof createGateManager>;
|