@once-agent/sdk 0.1.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/LICENSE +21 -0
- package/README.md +43 -0
- package/dist/apply.d.ts +9 -0
- package/dist/apply.d.ts.map +1 -0
- package/dist/apply.js +265 -0
- package/dist/apply.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +191 -0
- package/dist/cli.js.map +1 -0
- package/dist/index.d.ts +76 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +240 -0
- package/dist/index.js.map +1 -0
- package/dist/protect.d.ts +8 -0
- package/dist/protect.d.ts.map +1 -0
- package/dist/protect.js +563 -0
- package/dist/protect.js.map +1 -0
- package/dist/scan.d.ts +18 -0
- package/dist/scan.d.ts.map +1 -0
- package/dist/scan.js +632 -0
- package/dist/scan.js.map +1 -0
- package/dist/setup.d.ts +8 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +558 -0
- package/dist/setup.js.map +1 -0
- package/dist/transformers/http-patch-plan-v1.d.ts +23 -0
- package/dist/transformers/http-patch-plan-v1.d.ts.map +1 -0
- package/dist/transformers/http-patch-plan-v1.js +149 -0
- package/dist/transformers/http-patch-plan-v1.js.map +1 -0
- package/dist/transformers/http-write-v1.d.ts +23 -0
- package/dist/transformers/http-write-v1.d.ts.map +1 -0
- package/dist/transformers/http-write-v1.js +134 -0
- package/dist/transformers/http-write-v1.js.map +1 -0
- package/dist/transformers/once-binding-v1.d.ts +17 -0
- package/dist/transformers/once-binding-v1.d.ts.map +1 -0
- package/dist/transformers/once-binding-v1.js +134 -0
- package/dist/transformers/once-binding-v1.js.map +1 -0
- package/package.json +56 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,240 @@
|
|
|
1
|
+
import { Buffer } from "node:buffer";
|
|
2
|
+
import { createHash } from "node:crypto";
|
|
3
|
+
const DEFAULT_BASE_URL = "https://once-q18-cloud.pennywatch.workers.dev";
|
|
4
|
+
export class OnceError extends Error {
|
|
5
|
+
status;
|
|
6
|
+
code;
|
|
7
|
+
body;
|
|
8
|
+
retryAfter;
|
|
9
|
+
constructor(message, options = {}) {
|
|
10
|
+
super(message, {
|
|
11
|
+
cause: options.cause
|
|
12
|
+
});
|
|
13
|
+
this.name = "OnceError";
|
|
14
|
+
this.status = options.status;
|
|
15
|
+
this.code = options.code;
|
|
16
|
+
this.body = options.body;
|
|
17
|
+
this.retryAfter = options.retryAfter;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export class OnceTimeoutError extends OnceError {
|
|
21
|
+
constructor(message = "Once request timed out", cause) {
|
|
22
|
+
super(message, {
|
|
23
|
+
code: "timeout",
|
|
24
|
+
cause
|
|
25
|
+
});
|
|
26
|
+
this.name = "OnceTimeoutError";
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
export class OnceNetworkError extends OnceError {
|
|
30
|
+
constructor(message = "Could not reach Once", cause) {
|
|
31
|
+
super(message, {
|
|
32
|
+
code: "network_error",
|
|
33
|
+
cause
|
|
34
|
+
});
|
|
35
|
+
this.name = "OnceNetworkError";
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class Once {
|
|
39
|
+
apiKey;
|
|
40
|
+
baseUrl;
|
|
41
|
+
timeoutMs;
|
|
42
|
+
networkRetries;
|
|
43
|
+
constructor(options = {}) {
|
|
44
|
+
const apiKey = options.apiKey ??
|
|
45
|
+
process.env.ONCE_API_KEY;
|
|
46
|
+
if (!apiKey) {
|
|
47
|
+
throw new OnceError("Missing Once API key. Set ONCE_API_KEY or pass { apiKey }.", {
|
|
48
|
+
code: "missing_api_key"
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
this.apiKey = apiKey;
|
|
52
|
+
this.baseUrl = (options.baseUrl ??
|
|
53
|
+
process.env.ONCE_BASE_URL ??
|
|
54
|
+
DEFAULT_BASE_URL).replace(/\/+$/, "");
|
|
55
|
+
this.timeoutMs =
|
|
56
|
+
options.timeoutMs ?? 10_000;
|
|
57
|
+
this.networkRetries =
|
|
58
|
+
options.networkRetries ?? 2;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Generate a deterministic Once operation ID.
|
|
62
|
+
*
|
|
63
|
+
* Same inputs => same ID.
|
|
64
|
+
*
|
|
65
|
+
* Example:
|
|
66
|
+
* Once.id("refund", "order_123")
|
|
67
|
+
*/
|
|
68
|
+
static id(...parts) {
|
|
69
|
+
if (parts.length === 0) {
|
|
70
|
+
throw new OnceError("Once.id() requires at least one value.", {
|
|
71
|
+
code: "invalid_operation_id"
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
const values = parts.map(part => {
|
|
75
|
+
if (typeof part === "string") {
|
|
76
|
+
return part;
|
|
77
|
+
}
|
|
78
|
+
if (typeof part === "number" &&
|
|
79
|
+
Number.isSafeInteger(part)) {
|
|
80
|
+
return String(part);
|
|
81
|
+
}
|
|
82
|
+
throw new OnceError("Once.id() parts must be strings or safe integers.", {
|
|
83
|
+
code: "invalid_operation_id"
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
/*
|
|
87
|
+
* Once operation-ID semantic encoding v1.
|
|
88
|
+
*
|
|
89
|
+
* Hash input:
|
|
90
|
+
* "once-id-v1\\0"
|
|
91
|
+
* uint32be(part count)
|
|
92
|
+
* repeated:
|
|
93
|
+
* uint32be(UTF-8 byte length)
|
|
94
|
+
* UTF-8 bytes
|
|
95
|
+
*
|
|
96
|
+
* Length-prefixing prevents different part
|
|
97
|
+
* boundaries from producing identical hash input.
|
|
98
|
+
*/
|
|
99
|
+
const hashState = createHash("sha256");
|
|
100
|
+
hashState.update("once-id-v1\u0000", "utf8");
|
|
101
|
+
const partCount = Buffer.allocUnsafe(4);
|
|
102
|
+
partCount.writeUInt32BE(values.length, 0);
|
|
103
|
+
hashState.update(partCount);
|
|
104
|
+
for (const value of values) {
|
|
105
|
+
const bytes = Buffer.from(value, "utf8");
|
|
106
|
+
if (bytes.length >
|
|
107
|
+
0xffffffff) {
|
|
108
|
+
throw new OnceError("Once.id() part is too large.", {
|
|
109
|
+
code: "invalid_operation_id"
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
const length = Buffer.allocUnsafe(4);
|
|
113
|
+
length.writeUInt32BE(bytes.length, 0);
|
|
114
|
+
hashState.update(length);
|
|
115
|
+
hashState.update(bytes);
|
|
116
|
+
}
|
|
117
|
+
const hash = hashState
|
|
118
|
+
.digest("hex")
|
|
119
|
+
.slice(0, 32);
|
|
120
|
+
const prefix = values[0]
|
|
121
|
+
.replace(/[A-Z]/g, character => character.toLowerCase())
|
|
122
|
+
.replace(/[^a-z0-9._:-]+/g, "-")
|
|
123
|
+
.replace(/^[^a-z0-9]+/, "")
|
|
124
|
+
.replace(/-+$/g, "")
|
|
125
|
+
.slice(0, 48) || "operation";
|
|
126
|
+
return `${prefix}:${hash}`;
|
|
127
|
+
}
|
|
128
|
+
id(...parts) {
|
|
129
|
+
return Once.id(...parts);
|
|
130
|
+
}
|
|
131
|
+
async execute(input) {
|
|
132
|
+
if (!input.operationId) {
|
|
133
|
+
throw new OnceError("operationId is required.", {
|
|
134
|
+
code: "invalid_operation_id"
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
if (!input.provider) {
|
|
138
|
+
throw new OnceError("provider is required.", {
|
|
139
|
+
code: "invalid_provider"
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
return this.request("/v1/execute", {
|
|
143
|
+
method: "POST",
|
|
144
|
+
body: JSON.stringify({
|
|
145
|
+
operation_id: input.operationId,
|
|
146
|
+
provider: input.provider,
|
|
147
|
+
action: input.action
|
|
148
|
+
})
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
async truth(operationId) {
|
|
152
|
+
if (!operationId) {
|
|
153
|
+
throw new OnceError("operationId is required.", {
|
|
154
|
+
code: "invalid_operation_id"
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
return this.request(`/v1/truth/${encodeURIComponent(operationId)}`, {
|
|
158
|
+
method: "GET"
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
async request(path, init) {
|
|
162
|
+
let lastError;
|
|
163
|
+
for (let attempt = 0; attempt <= this.networkRetries; attempt++) {
|
|
164
|
+
const controller = new AbortController();
|
|
165
|
+
const timeout = setTimeout(() => controller.abort(), this.timeoutMs);
|
|
166
|
+
try {
|
|
167
|
+
const response = await fetch(`${this.baseUrl}${path}`, {
|
|
168
|
+
...init,
|
|
169
|
+
signal: controller.signal,
|
|
170
|
+
headers: {
|
|
171
|
+
authorization: `Bearer ${this.apiKey}`,
|
|
172
|
+
"content-type": "application/json",
|
|
173
|
+
...init.headers
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
clearTimeout(timeout);
|
|
177
|
+
const raw = await response.text();
|
|
178
|
+
let body = null;
|
|
179
|
+
if (raw) {
|
|
180
|
+
try {
|
|
181
|
+
body = JSON.parse(raw);
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
body = {
|
|
185
|
+
message: raw
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (!response.ok) {
|
|
190
|
+
const retryAfterHeader = response.headers.get("retry-after");
|
|
191
|
+
const retryAfter = retryAfterHeader !== null
|
|
192
|
+
? Number(retryAfterHeader)
|
|
193
|
+
: undefined;
|
|
194
|
+
const code = body?.error ??
|
|
195
|
+
body?.result ??
|
|
196
|
+
`http_${response.status}`;
|
|
197
|
+
const message = body?.message ??
|
|
198
|
+
body?.error ??
|
|
199
|
+
body?.result ??
|
|
200
|
+
`Once returned HTTP ${response.status}`;
|
|
201
|
+
throw new OnceError(String(message), {
|
|
202
|
+
status: response.status,
|
|
203
|
+
code: String(code),
|
|
204
|
+
body,
|
|
205
|
+
retryAfter: Number.isFinite(retryAfter)
|
|
206
|
+
? retryAfter
|
|
207
|
+
: undefined
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
return body;
|
|
211
|
+
}
|
|
212
|
+
catch (error) {
|
|
213
|
+
clearTimeout(timeout);
|
|
214
|
+
// Once returned a real HTTP response.
|
|
215
|
+
// Do not hide or automatically transform it.
|
|
216
|
+
if (error instanceof OnceError) {
|
|
217
|
+
throw error;
|
|
218
|
+
}
|
|
219
|
+
lastError = error;
|
|
220
|
+
const aborted = error instanceof Error &&
|
|
221
|
+
error.name === "AbortError";
|
|
222
|
+
if (attempt <
|
|
223
|
+
this.networkRetries) {
|
|
224
|
+
await sleep(150 * Math.pow(2, attempt));
|
|
225
|
+
continue;
|
|
226
|
+
}
|
|
227
|
+
if (aborted) {
|
|
228
|
+
throw new OnceTimeoutError(`Once request timed out after ${this.timeoutMs}ms`, error);
|
|
229
|
+
}
|
|
230
|
+
throw new OnceNetworkError("Could not reach Once after safe network retries", error);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
throw new OnceNetworkError("Could not reach Once", lastError);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
function sleep(ms) {
|
|
237
|
+
return new Promise(resolve => setTimeout(resolve, ms));
|
|
238
|
+
}
|
|
239
|
+
export default Once;
|
|
240
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type ProtectOptions = {
|
|
2
|
+
includeAll?: boolean;
|
|
3
|
+
writePlan?: boolean;
|
|
4
|
+
writePatch?: boolean;
|
|
5
|
+
writeSnippets?: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare function runProtect(requestedPath: string, options?: ProtectOptions): Promise<void>;
|
|
8
|
+
//# sourceMappingURL=protect.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protect.d.ts","sourceRoot":"","sources":["../src/protect.ts"],"names":[],"mappings":"AAwBA,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAu5BF,wBAAsB,UAAU,CAC9B,aAAa,EAAE,MAAM,EACrB,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAybf"}
|