@pinta-ai/pinta-codex 1.2.4 → 1.4.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/.codex-plugin/plugin.json +1 -1
- package/CHANGELOG.md +31 -0
- package/dist/index.js +15 -53
- package/package.json +14 -6
- package/dist/core/config.d.ts +0 -12
- package/dist/core/config.js +0 -125
- package/dist/core/config.js.map +0 -1
- package/dist/core/guard.d.ts +0 -13
- package/dist/core/guard.js +0 -41
- package/dist/core/guard.js.map +0 -1
- package/dist/core/identity.d.ts +0 -1
- package/dist/core/identity.js +0 -3
- package/dist/core/identity.js.map +0 -1
- package/dist/core/otlp.d.ts +0 -59
- package/dist/core/otlp.js +0 -192
- package/dist/core/otlp.js.map +0 -1
- package/dist/core/redact.d.ts +0 -57
- package/dist/core/redact.js +0 -149
- package/dist/core/redact.js.map +0 -1
- package/dist/core/retry-queue.d.ts +0 -26
- package/dist/core/retry-queue.js +0 -127
- package/dist/core/retry-queue.js.map +0 -1
- package/dist/core/trace.d.ts +0 -10
- package/dist/core/trace.js +0 -61
- package/dist/core/trace.js.map +0 -1
- package/dist/core/transport.d.ts +0 -10
- package/dist/core/transport.js +0 -83
- package/dist/core/transport.js.map +0 -1
- package/dist/core/types.d.ts +0 -48
- package/dist/core/types.js +0 -45
- package/dist/core/types.js.map +0 -1
- package/dist/handlers/default.d.ts +0 -6
- package/dist/handlers/default.js +0 -11
- package/dist/handlers/default.js.map +0 -1
- package/dist/handlers/post-tool-use.d.ts +0 -3
- package/dist/handlers/post-tool-use.js +0 -15
- package/dist/handlers/post-tool-use.js.map +0 -1
- package/dist/handlers/pre-tool-use.d.ts +0 -3
- package/dist/handlers/pre-tool-use.js +0 -38
- package/dist/handlers/pre-tool-use.js.map +0 -1
- package/dist/handlers/session.d.ts +0 -3
- package/dist/handlers/session.js +0 -15
- package/dist/handlers/session.js.map +0 -1
- package/dist/handlers/stop.d.ts +0 -3
- package/dist/handlers/stop.js +0 -15
- package/dist/handlers/stop.js.map +0 -1
- package/dist/handlers/user-prompt.d.ts +0 -3
- package/dist/handlers/user-prompt.js +0 -15
- package/dist/handlers/user-prompt.js.map +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +0 -1
package/dist/core/transport.d.ts
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { PintaCodexConfig } from "./config.js";
|
|
2
|
-
import type { OtlpPayload } from "./otlp.js";
|
|
3
|
-
export declare class Transport {
|
|
4
|
-
private config;
|
|
5
|
-
private queue;
|
|
6
|
-
constructor(config: PintaCodexConfig);
|
|
7
|
-
send(payload: OtlpPayload): Promise<void>;
|
|
8
|
-
flush(): Promise<void>;
|
|
9
|
-
private post;
|
|
10
|
-
}
|
package/dist/core/transport.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Transport = void 0;
|
|
4
|
-
const otlp_js_1 = require("./otlp.js");
|
|
5
|
-
const retry_queue_js_1 = require("./retry-queue.js");
|
|
6
|
-
const TIMEOUT_MS = 5000;
|
|
7
|
-
function hintFor(status) {
|
|
8
|
-
if (status === 401 || status === 403)
|
|
9
|
-
return " — check OTEL_EXPORTER_OTLP_HEADERS";
|
|
10
|
-
if (status === 404)
|
|
11
|
-
return " — check OTEL_EXPORTER_OTLP_TRACES_ENDPOINT path";
|
|
12
|
-
if (status >= 500)
|
|
13
|
-
return " — collector may be down";
|
|
14
|
-
return "";
|
|
15
|
-
}
|
|
16
|
-
class Transport {
|
|
17
|
-
config;
|
|
18
|
-
queue;
|
|
19
|
-
constructor(config) {
|
|
20
|
-
this.config = config;
|
|
21
|
-
this.queue = new retry_queue_js_1.RetryQueue(config.pluginData);
|
|
22
|
-
}
|
|
23
|
-
async send(payload) {
|
|
24
|
-
if (!this.config.endpoint)
|
|
25
|
-
return; // Silent disable
|
|
26
|
-
const ok = await this.post(payload);
|
|
27
|
-
if (!ok)
|
|
28
|
-
this.queue.enqueue(payload);
|
|
29
|
-
}
|
|
30
|
-
async flush() {
|
|
31
|
-
if (!this.config.endpoint)
|
|
32
|
-
return;
|
|
33
|
-
if (!this.queue.tryAcquireLock())
|
|
34
|
-
return;
|
|
35
|
-
try {
|
|
36
|
-
const entries = this.queue.readAll();
|
|
37
|
-
if (entries.length === 0)
|
|
38
|
-
return;
|
|
39
|
-
const merged = (0, otlp_js_1.mergeBatch)(entries.map((e) => e.payload));
|
|
40
|
-
const ok = await this.post(merged);
|
|
41
|
-
if (ok)
|
|
42
|
-
this.queue.rewrite([]);
|
|
43
|
-
}
|
|
44
|
-
finally {
|
|
45
|
-
this.queue.release();
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
async post(payload) {
|
|
49
|
-
// Callers (send/flush) already early-return when endpoint is unset, but
|
|
50
|
-
// TS can't narrow across method calls — assert here.
|
|
51
|
-
const endpoint = this.config.endpoint;
|
|
52
|
-
if (!endpoint)
|
|
53
|
-
return false;
|
|
54
|
-
const ctrl = new AbortController();
|
|
55
|
-
const timer = setTimeout(() => ctrl.abort(), TIMEOUT_MS);
|
|
56
|
-
try {
|
|
57
|
-
// config.endpoint is the full traces URL (config.ts handles base→full).
|
|
58
|
-
const res = await fetch(endpoint, {
|
|
59
|
-
method: "POST",
|
|
60
|
-
headers: {
|
|
61
|
-
"Content-Type": "application/json",
|
|
62
|
-
...this.config.headers,
|
|
63
|
-
},
|
|
64
|
-
body: JSON.stringify(payload),
|
|
65
|
-
signal: ctrl.signal,
|
|
66
|
-
});
|
|
67
|
-
if (!res.ok) {
|
|
68
|
-
process.stderr.write(`[pinta-codex] OTLP ${res.status}${hintFor(res.status)}\n`);
|
|
69
|
-
return false;
|
|
70
|
-
}
|
|
71
|
-
return true;
|
|
72
|
-
}
|
|
73
|
-
catch (err) {
|
|
74
|
-
process.stderr.write(`[pinta-codex] OTLP failed: ${err.message ?? String(err)}\n`);
|
|
75
|
-
return false;
|
|
76
|
-
}
|
|
77
|
-
finally {
|
|
78
|
-
clearTimeout(timer);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
exports.Transport = Transport;
|
|
83
|
-
//# sourceMappingURL=transport.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/core/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/core/types.d.ts
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
export interface BaseEvent {
|
|
2
|
-
session_id: string;
|
|
3
|
-
transcript_path: string;
|
|
4
|
-
cwd: string;
|
|
5
|
-
hook_event_name: string;
|
|
6
|
-
turn_id?: string;
|
|
7
|
-
model?: string;
|
|
8
|
-
[key: string]: unknown;
|
|
9
|
-
}
|
|
10
|
-
export interface PreToolUseEvent extends BaseEvent {
|
|
11
|
-
hook_event_name: "PreToolUse";
|
|
12
|
-
tool_name: string;
|
|
13
|
-
tool_input: Record<string, unknown>;
|
|
14
|
-
tool_use_id: string;
|
|
15
|
-
}
|
|
16
|
-
export interface PostToolUseEvent extends BaseEvent {
|
|
17
|
-
hook_event_name: "PostToolUse";
|
|
18
|
-
tool_name: string;
|
|
19
|
-
tool_input: Record<string, unknown>;
|
|
20
|
-
tool_response?: unknown;
|
|
21
|
-
tool_use_id: string;
|
|
22
|
-
}
|
|
23
|
-
export interface UserPromptSubmitEvent extends BaseEvent {
|
|
24
|
-
hook_event_name: "UserPromptSubmit";
|
|
25
|
-
prompt: string;
|
|
26
|
-
}
|
|
27
|
-
export interface SessionEvent extends BaseEvent {
|
|
28
|
-
hook_event_name: "SessionStart";
|
|
29
|
-
source?: "startup" | "resume" | string;
|
|
30
|
-
}
|
|
31
|
-
export interface StopEvent extends BaseEvent {
|
|
32
|
-
hook_event_name: "Stop";
|
|
33
|
-
stop_hook_active?: boolean;
|
|
34
|
-
last_assistant_message?: string;
|
|
35
|
-
}
|
|
36
|
-
export declare function isPreToolUseEvent(event: BaseEvent): event is PreToolUseEvent;
|
|
37
|
-
export declare function isPostToolUseEvent(event: BaseEvent): event is PostToolUseEvent;
|
|
38
|
-
export declare function isUserPromptSubmitEvent(event: BaseEvent): event is UserPromptSubmitEvent;
|
|
39
|
-
export declare function isSessionEvent(event: BaseEvent): event is SessionEvent;
|
|
40
|
-
export declare function isStopEvent(event: BaseEvent): event is StopEvent;
|
|
41
|
-
export declare function isSkippedHook(event: BaseEvent): boolean;
|
|
42
|
-
export interface HookBlockOutput {
|
|
43
|
-
hookSpecificOutput: {
|
|
44
|
-
hookEventName: "PreToolUse";
|
|
45
|
-
permissionDecision: "deny";
|
|
46
|
-
permissionDecisionReason: string;
|
|
47
|
-
};
|
|
48
|
-
}
|
package/dist/core/types.js
DELETED
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// --- Codex hook event types ---
|
|
3
|
-
//
|
|
4
|
-
// Codex fires PascalCase event names identical to Claude Code's hook contract:
|
|
5
|
-
// SessionStart, PreToolUse, PostToolUse, UserPromptSubmit, Stop.
|
|
6
|
-
// PreToolUse / PostToolUse currently fire only for the Bash tool.
|
|
7
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.isPreToolUseEvent = isPreToolUseEvent;
|
|
9
|
-
exports.isPostToolUseEvent = isPostToolUseEvent;
|
|
10
|
-
exports.isUserPromptSubmitEvent = isUserPromptSubmitEvent;
|
|
11
|
-
exports.isSessionEvent = isSessionEvent;
|
|
12
|
-
exports.isStopEvent = isStopEvent;
|
|
13
|
-
exports.isSkippedHook = isSkippedHook;
|
|
14
|
-
// --- Type guards ---
|
|
15
|
-
function isPreToolUseEvent(event) {
|
|
16
|
-
return event.hook_event_name === "PreToolUse";
|
|
17
|
-
}
|
|
18
|
-
function isPostToolUseEvent(event) {
|
|
19
|
-
return event.hook_event_name === "PostToolUse";
|
|
20
|
-
}
|
|
21
|
-
function isUserPromptSubmitEvent(event) {
|
|
22
|
-
return event.hook_event_name === "UserPromptSubmit";
|
|
23
|
-
}
|
|
24
|
-
function isSessionEvent(event) {
|
|
25
|
-
return event.hook_event_name === "SessionStart";
|
|
26
|
-
}
|
|
27
|
-
function isStopEvent(event) {
|
|
28
|
-
return event.hook_event_name === "Stop";
|
|
29
|
-
}
|
|
30
|
-
// --- Skip-list (route to default no-op handler) ---
|
|
31
|
-
//
|
|
32
|
-
// Codex's current hook surface is limited to the five events above. Any other
|
|
33
|
-
// hook name reaches the default handler and exits 0 so unknown/future hooks
|
|
34
|
-
// stay fail-open.
|
|
35
|
-
const KNOWN_HOOKS = new Set([
|
|
36
|
-
"PreToolUse",
|
|
37
|
-
"PostToolUse",
|
|
38
|
-
"SessionStart",
|
|
39
|
-
"UserPromptSubmit",
|
|
40
|
-
"Stop",
|
|
41
|
-
]);
|
|
42
|
-
function isSkippedHook(event) {
|
|
43
|
-
return !KNOWN_HOOKS.has(event.hook_event_name);
|
|
44
|
-
}
|
|
45
|
-
//# sourceMappingURL=types.js.map
|
package/dist/core/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";AAAA,iCAAiC;AACjC,EAAE;AACF,+EAA+E;AAC/E,iEAAiE;AACjE,kEAAkE;;AA8ClE,8CAEC;AAED,gDAEC;AAED,0DAEC;AAED,wCAEC;AAED,kCAEC;AAeD,sCAEC;AArCD,sBAAsB;AAEtB,SAAgB,iBAAiB,CAAC,KAAgB;IAChD,OAAO,KAAK,CAAC,eAAe,KAAK,YAAY,CAAC;AAChD,CAAC;AAED,SAAgB,kBAAkB,CAAC,KAAgB;IACjD,OAAO,KAAK,CAAC,eAAe,KAAK,aAAa,CAAC;AACjD,CAAC;AAED,SAAgB,uBAAuB,CAAC,KAAgB;IACtD,OAAO,KAAK,CAAC,eAAe,KAAK,kBAAkB,CAAC;AACtD,CAAC;AAED,SAAgB,cAAc,CAAC,KAAgB;IAC7C,OAAO,KAAK,CAAC,eAAe,KAAK,cAAc,CAAC;AAClD,CAAC;AAED,SAAgB,WAAW,CAAC,KAAgB;IAC1C,OAAO,KAAK,CAAC,eAAe,KAAK,MAAM,CAAC;AAC1C,CAAC;AAED,qDAAqD;AACrD,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,kBAAkB;AAElB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS;IAClC,YAAY;IACZ,aAAa;IACb,cAAc;IACd,kBAAkB;IAClB,MAAM;CACP,CAAC,CAAC;AACH,SAAgB,aAAa,CAAC,KAAgB;IAC5C,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;AACjD,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import type { BaseEvent } from "../core/types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Catch-all for hooks Codex may add in the future that we do not route yet.
|
|
4
|
-
* Exits 0 silently so unknown hooks stay fail-open.
|
|
5
|
-
*/
|
|
6
|
-
export declare function handleDefault(_event: BaseEvent): Promise<number>;
|
package/dist/handlers/default.js
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handleDefault = handleDefault;
|
|
4
|
-
/**
|
|
5
|
-
* Catch-all for hooks Codex may add in the future that we do not route yet.
|
|
6
|
-
* Exits 0 silently so unknown hooks stay fail-open.
|
|
7
|
-
*/
|
|
8
|
-
async function handleDefault(_event) {
|
|
9
|
-
return 0;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=default.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../src/handlers/default.ts"],"names":[],"mappings":";;AAMA,sCAEC;AAND;;;GAGG;AACI,KAAK,UAAU,aAAa,CAAC,MAAiB;IACnD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handlePostToolUse = handlePostToolUse;
|
|
4
|
-
const transport_js_1 = require("../core/transport.js");
|
|
5
|
-
const trace_js_1 = require("../core/trace.js");
|
|
6
|
-
const otlp_js_1 = require("../core/otlp.js");
|
|
7
|
-
async function handlePostToolUse(event, config) {
|
|
8
|
-
const transport = new transport_js_1.Transport(config);
|
|
9
|
-
await transport.flush();
|
|
10
|
-
const traceId = new trace_js_1.TraceManager(config).currentTrace();
|
|
11
|
-
const payload = (0, otlp_js_1.buildOtlpPayload)({ event, traceId });
|
|
12
|
-
await transport.send(payload);
|
|
13
|
-
return 0;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=post-tool-use.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"post-tool-use.js","sourceRoot":"","sources":["../../src/handlers/post-tool-use.ts"],"names":[],"mappings":";;AAMA,8CAUC;AAdD,uDAAiD;AACjD,+CAAgD;AAChD,6CAAmD;AAE5C,KAAK,UAAU,iBAAiB,CACrC,KAAuB,EACvB,MAAwB;IAExB,MAAM,SAAS,GAAG,IAAI,wBAAS,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handlePreToolUse = handlePreToolUse;
|
|
4
|
-
const transport_js_1 = require("../core/transport.js");
|
|
5
|
-
const trace_js_1 = require("../core/trace.js");
|
|
6
|
-
const otlp_js_1 = require("../core/otlp.js");
|
|
7
|
-
const guard_js_1 = require("../core/guard.js");
|
|
8
|
-
async function handlePreToolUse(event, config) {
|
|
9
|
-
// codex CLI doesn't inject pinta-codex.env into hook env; config.guardEndpoint
|
|
10
|
-
// already merges process.env + envFile fallback (1.2.4).
|
|
11
|
-
const guardEndpoint = config.guardEndpoint;
|
|
12
|
-
const rawToolInput = typeof event.tool_input === 'string'
|
|
13
|
-
? event.tool_input
|
|
14
|
-
: JSON.stringify(event.tool_input);
|
|
15
|
-
const guard = await (0, guard_js_1.evaluateGuard)({
|
|
16
|
-
spanId: event.session_id ?? 'unknown',
|
|
17
|
-
toolName: event.tool_name,
|
|
18
|
-
toolInput: event.tool_input,
|
|
19
|
-
rawTextFields: { toolInput: rawToolInput },
|
|
20
|
-
}, guardEndpoint);
|
|
21
|
-
const transport = new transport_js_1.Transport(config);
|
|
22
|
-
await transport.flush();
|
|
23
|
-
const traceId = new trace_js_1.TraceManager(config).currentTrace();
|
|
24
|
-
const payload = (0, otlp_js_1.buildOtlpPayload)({ event, traceId, guard });
|
|
25
|
-
await transport.send(payload);
|
|
26
|
-
if (guard?.decision === 'DENY') {
|
|
27
|
-
const out = {
|
|
28
|
-
hookSpecificOutput: {
|
|
29
|
-
hookEventName: 'PreToolUse',
|
|
30
|
-
permissionDecision: 'deny',
|
|
31
|
-
permissionDecisionReason: guard.reason ?? 'guard_deny',
|
|
32
|
-
},
|
|
33
|
-
};
|
|
34
|
-
process.stdout.write(JSON.stringify(out) + '\n');
|
|
35
|
-
}
|
|
36
|
-
return 0;
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=pre-tool-use.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pre-tool-use.js","sourceRoot":"","sources":["../../src/handlers/pre-tool-use.ts"],"names":[],"mappings":";;AAOA,4CAqCC;AA1CD,uDAAiD;AACjD,+CAAgD;AAChD,6CAAmD;AACnD,+CAAiD;AAE1C,KAAK,UAAU,gBAAgB,CACpC,KAAsB,EACtB,MAAwB;IAExB,+EAA+E;IAC/E,yDAAyD;IACzD,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;IAC3C,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QACvD,CAAC,CAAC,KAAK,CAAC,UAAU;QAClB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,MAAM,IAAA,wBAAa,EAC/B;QACE,MAAM,EAAE,KAAK,CAAC,UAAU,IAAI,SAAS;QACrC,QAAQ,EAAE,KAAK,CAAC,SAAS;QACzB,SAAS,EAAE,KAAK,CAAC,UAAU;QAC3B,aAAa,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE;KAC3C,EACD,aAAa,CACd,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,wBAAS,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5D,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE9B,IAAI,KAAK,EAAE,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,GAAG,GAAG;YACV,kBAAkB,EAAE;gBAClB,aAAa,EAAE,YAAY;gBAC3B,kBAAkB,EAAE,MAAe;gBACnC,wBAAwB,EAAE,KAAK,CAAC,MAAM,IAAI,YAAY;aACvD;SACF,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/handlers/session.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handleSession = handleSession;
|
|
4
|
-
const transport_js_1 = require("../core/transport.js");
|
|
5
|
-
const trace_js_1 = require("../core/trace.js");
|
|
6
|
-
const otlp_js_1 = require("../core/otlp.js");
|
|
7
|
-
async function handleSession(event, config) {
|
|
8
|
-
const transport = new transport_js_1.Transport(config);
|
|
9
|
-
await transport.flush();
|
|
10
|
-
const traceId = new trace_js_1.TraceManager(config).currentTrace();
|
|
11
|
-
const payload = (0, otlp_js_1.buildOtlpPayload)({ event, traceId });
|
|
12
|
-
await transport.send(payload);
|
|
13
|
-
return 0;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=session.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/handlers/session.ts"],"names":[],"mappings":";;AAMA,sCAUC;AAdD,uDAAiD;AACjD,+CAAgD;AAChD,6CAAmD;AAE5C,KAAK,UAAU,aAAa,CACjC,KAAmB,EACnB,MAAwB;IAExB,MAAM,SAAS,GAAG,IAAI,wBAAS,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/handlers/stop.d.ts
DELETED
package/dist/handlers/stop.js
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handleStop = handleStop;
|
|
4
|
-
const transport_js_1 = require("../core/transport.js");
|
|
5
|
-
const trace_js_1 = require("../core/trace.js");
|
|
6
|
-
const otlp_js_1 = require("../core/otlp.js");
|
|
7
|
-
async function handleStop(event, config) {
|
|
8
|
-
const transport = new transport_js_1.Transport(config);
|
|
9
|
-
await transport.flush();
|
|
10
|
-
const traceId = new trace_js_1.TraceManager(config).currentTrace();
|
|
11
|
-
const payload = (0, otlp_js_1.buildOtlpPayload)({ event, traceId });
|
|
12
|
-
await transport.send(payload);
|
|
13
|
-
return 0;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=stop.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stop.js","sourceRoot":"","sources":["../../src/handlers/stop.ts"],"names":[],"mappings":";;AAMA,gCAUC;AAdD,uDAAiD;AACjD,+CAAgD;AAChD,6CAAmD;AAE5C,KAAK,UAAU,UAAU,CAC9B,KAAgB,EAChB,MAAwB;IAExB,MAAM,SAAS,GAAG,IAAI,wBAAS,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,CAAC;IACxD,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACX,CAAC"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.handleUserPrompt = handleUserPrompt;
|
|
4
|
-
const transport_js_1 = require("../core/transport.js");
|
|
5
|
-
const trace_js_1 = require("../core/trace.js");
|
|
6
|
-
const otlp_js_1 = require("../core/otlp.js");
|
|
7
|
-
async function handleUserPrompt(event, config) {
|
|
8
|
-
const transport = new transport_js_1.Transport(config);
|
|
9
|
-
await transport.flush();
|
|
10
|
-
const traceId = new trace_js_1.TraceManager(config).newTrace(); // NEW trace per user turn
|
|
11
|
-
const payload = (0, otlp_js_1.buildOtlpPayload)({ event, traceId });
|
|
12
|
-
await transport.send(payload);
|
|
13
|
-
return 0;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=user-prompt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user-prompt.js","sourceRoot":"","sources":["../../src/handlers/user-prompt.ts"],"names":[],"mappings":";;AAMA,4CAUC;AAdD,uDAAiD;AACjD,+CAAgD;AAChD,6CAAmD;AAE5C,KAAK,UAAU,gBAAgB,CACpC,KAA4B,EAC5B,MAAwB;IAExB,MAAM,SAAS,GAAG,IAAI,wBAAS,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IACxB,MAAM,OAAO,GAAG,IAAI,uBAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,0BAA0B;IAC/E,MAAM,OAAO,GAAG,IAAA,0BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,CAAC;AACX,CAAC"}
|
package/dist/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,gDAA8C;AAC9C,8CAOyB;AAEzB,gEAA8D;AAC9D,kEAAgE;AAChE,8DAA6D;AAC7D,sDAAsD;AACtD,gDAAgD;AAChD,sDAAsD;AAEtD,KAAK,UAAU,SAAS;IACtB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACjD,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,sBAAU,GAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,MAAM,SAAS,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAc,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEzC,IAAI,IAAA,wBAAa,EAAC,KAAK,CAAC,EAAE,CAAC;YACzB,QAAQ,GAAG,MAAM,IAAA,0BAAa,EAAC,KAAK,CAAC,CAAC;QACxC,CAAC;aAAM,IAAI,IAAA,4BAAiB,EAAC,KAAK,CAAC,EAAE,CAAC;YACpC,QAAQ,GAAG,MAAM,IAAA,kCAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;aAAM,IAAI,IAAA,6BAAkB,EAAC,KAAK,CAAC,EAAE,CAAC;YACrC,QAAQ,GAAG,MAAM,IAAA,oCAAiB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;aAAM,IAAI,IAAA,kCAAuB,EAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,QAAQ,GAAG,MAAM,IAAA,iCAAgB,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnD,CAAC;aAAM,IAAI,IAAA,yBAAc,EAAC,KAAK,CAAC,EAAE,CAAC;YACjC,QAAQ,GAAG,MAAM,IAAA,0BAAa,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;aAAM,IAAI,IAAA,sBAAW,EAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,QAAQ,GAAG,MAAM,IAAA,oBAAU,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,MAAM,IAAA,0BAAa,EAAC,KAAK,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,IAAI,CAAC,CAAC;QACtD,QAAQ,GAAG,CAAC,CAAC,CAAC,kDAAkD;IAClE,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AACzB,CAAC;AAED,IAAI,EAAE,CAAC"}
|