@oneie/sdk 0.10.0 → 0.11.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/billing.d.ts +49 -0
- package/dist/billing.d.ts.map +1 -0
- package/dist/billing.js +49 -0
- package/dist/billing.js.map +1 -0
- package/dist/broadcast.d.ts +37 -0
- package/dist/broadcast.d.ts.map +1 -0
- package/dist/broadcast.js +7 -0
- package/dist/broadcast.js.map +1 -0
- package/dist/client.d.ts +1 -32
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +0 -25
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/market.d.ts +63 -0
- package/dist/market.d.ts.map +1 -0
- package/dist/market.js +92 -0
- package/dist/market.js.map +1 -0
- package/dist/meta.d.ts +1 -1
- package/dist/openapi.d.ts +1 -1
- package/dist/openapi.js +1 -1
- package/dist/receivers.d.ts +834 -80
- package/dist/receivers.d.ts.map +1 -1
- package/dist/receivers.js +890 -75
- package/dist/receivers.js.map +1 -1
- package/dist/schemas.d.ts +52 -0
- package/dist/schemas.d.ts.map +1 -1
- package/dist/schemas.js +40 -0
- package/dist/schemas.js.map +1 -1
- package/dist/types.d.ts +5 -5
- package/dist/types.d.ts.map +1 -1
- package/package.json +9 -1
package/dist/market.js
ADDED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
// ── Stages (locked — rename breaks KV-persisted deals) ──────────────────────
|
|
3
|
+
export const StageSchema = z.enum([
|
|
4
|
+
"OFFER", // terms proposed; counter/accept/reject legal
|
|
5
|
+
"ESCROW", // accepted; payment being locked
|
|
6
|
+
"EXECUTE", // escrow confirmed; work in progress
|
|
7
|
+
"VERIFY", // work delivered; rubric scoring in progress
|
|
8
|
+
"SETTLE", // rubric passed; payment releasing
|
|
9
|
+
"RECEIPT", // terminal — success
|
|
10
|
+
"DISPUTE", // terminal — contested; refund in flight
|
|
11
|
+
"FADE", // terminal — rejected or expired
|
|
12
|
+
]);
|
|
13
|
+
// ── Deal schema ──────────────────────────────────────────────────────────────
|
|
14
|
+
export const RubricSchema = z.object({
|
|
15
|
+
fit: z.number().min(0).max(1),
|
|
16
|
+
form: z.number().min(0).max(1),
|
|
17
|
+
truth: z.number().min(0).max(1),
|
|
18
|
+
taste: z.number().min(0).max(1),
|
|
19
|
+
});
|
|
20
|
+
export const DealSchema = z.object({
|
|
21
|
+
id: z.string().uuid(),
|
|
22
|
+
buyer: z.string().min(1),
|
|
23
|
+
seller: z.string().min(1),
|
|
24
|
+
skill: z.string().min(1),
|
|
25
|
+
price: z.number().nonnegative(),
|
|
26
|
+
currency: z.string().default("credits"),
|
|
27
|
+
deadline: z.string().datetime(), // ISO-8601
|
|
28
|
+
rubric: RubricSchema.optional(), // thresholds (not scores) — set by buyer
|
|
29
|
+
stage: StageSchema,
|
|
30
|
+
version: z.number().int().nonnegative().default(0),
|
|
31
|
+
escrowRef: z.string().optional(), // pay.one.ie quote/claim id
|
|
32
|
+
result: z.record(z.string(), z.unknown()).optional(), // delivered work blob
|
|
33
|
+
scores: RubricSchema.optional(), // actual scores set by market:verify
|
|
34
|
+
});
|
|
35
|
+
// ── VALID — legal verbs per stage ────────────────────────────────────────────
|
|
36
|
+
const TERMINAL = new Set(["RECEIPT", "DISPUTE", "FADE"]);
|
|
37
|
+
export const VALID = {
|
|
38
|
+
OFFER: new Set(["counter", "accept", "reject", "dispute"]),
|
|
39
|
+
ESCROW: new Set(["escrow", "dispute"]),
|
|
40
|
+
EXECUTE: new Set(["deliver", "dispute"]),
|
|
41
|
+
VERIFY: new Set(["verify", "dispute"]),
|
|
42
|
+
SETTLE: new Set(["settle", "dispute"]),
|
|
43
|
+
RECEIPT: new Set(),
|
|
44
|
+
DISPUTE: new Set(),
|
|
45
|
+
FADE: new Set(),
|
|
46
|
+
};
|
|
47
|
+
// ── Errors ───────────────────────────────────────────────────────────────────
|
|
48
|
+
export class InvalidTransition extends Error {
|
|
49
|
+
stage;
|
|
50
|
+
verb;
|
|
51
|
+
constructor(stage, verb) {
|
|
52
|
+
super(`invalid transition: ${verb} is not legal in stage ${stage}`);
|
|
53
|
+
this.stage = stage;
|
|
54
|
+
this.verb = verb;
|
|
55
|
+
this.name = "InvalidTransition";
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
// ── advance() — the only way to mutate stage ─────────────────────────────────
|
|
59
|
+
const RUBRIC_PASS_THRESHOLD = 0.65;
|
|
60
|
+
function composite(scores) {
|
|
61
|
+
return (scores.fit + scores.form + scores.truth + scores.taste) / 4;
|
|
62
|
+
}
|
|
63
|
+
export function advance(deal, verb, scores) {
|
|
64
|
+
if (!VALID[deal.stage].has(verb)) {
|
|
65
|
+
throw new InvalidTransition(deal.stage, verb);
|
|
66
|
+
}
|
|
67
|
+
switch (verb) {
|
|
68
|
+
case "counter":
|
|
69
|
+
return { ...deal, version: deal.version + 1 };
|
|
70
|
+
case "accept":
|
|
71
|
+
return { ...deal, stage: "ESCROW", version: deal.version + 1 };
|
|
72
|
+
case "reject":
|
|
73
|
+
return { ...deal, stage: "FADE", version: deal.version + 1 };
|
|
74
|
+
case "escrow":
|
|
75
|
+
return { ...deal, stage: "EXECUTE", version: deal.version + 1 };
|
|
76
|
+
case "deliver":
|
|
77
|
+
return { ...deal, stage: "VERIFY", version: deal.version + 1 };
|
|
78
|
+
case "verify": {
|
|
79
|
+
if (!scores)
|
|
80
|
+
throw new Error("verify requires scores");
|
|
81
|
+
const next = composite(scores) >= RUBRIC_PASS_THRESHOLD ? "SETTLE" : "DISPUTE";
|
|
82
|
+
return { ...deal, stage: next, scores, version: deal.version + 1 };
|
|
83
|
+
}
|
|
84
|
+
case "settle":
|
|
85
|
+
return { ...deal, stage: "RECEIPT", version: deal.version + 1 };
|
|
86
|
+
case "dispute":
|
|
87
|
+
if (TERMINAL.has(deal.stage))
|
|
88
|
+
throw new InvalidTransition(deal.stage, verb);
|
|
89
|
+
return { ...deal, stage: "DISPUTE", version: deal.version + 1 };
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=market.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"market.js","sourceRoot":"","sources":["../src/market.ts"],"names":[],"mappings":"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"}
|
package/dist/meta.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { type ReceiverName, type RecipeName } from "./receivers.js";
|
|
|
4
4
|
* catalog: an agent reads these to discover what it can call, each capability's
|
|
5
5
|
* cost/reversibility/settlement, and one receiver's exact request schema —
|
|
6
6
|
* before it acts. Handlers in the service bind these to a caller's role; the
|
|
7
|
-
* functions themselves carry no runtime dependency. See `
|
|
7
|
+
* functions themselves carry no runtime dependency. See `text/agent-first-spec-plan.md`.
|
|
8
8
|
*/
|
|
9
9
|
/** One catalog row — the agent-facing slice of a receiver declaration. */
|
|
10
10
|
export interface CatalogEntry {
|
package/dist/openapi.d.ts
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* payload; here we derive a real `oneOf` over every receiver's request schema
|
|
5
5
|
* (via `z.toJSONSchema`), each member tagged with the agent-ergonomic metadata
|
|
6
6
|
* as `x-` extensions. Pure functions — the CLI (`scripts/generate-openapi.ts`)
|
|
7
|
-
* does the file I/O. See `
|
|
7
|
+
* does the file I/O. See `text/agent-first-spec-plan.md`.
|
|
8
8
|
*/
|
|
9
9
|
export declare const RECEIVER_REGION_BEGIN = " # BEGIN generated:receivers \u2014 bun run generate:openapi (do not edit by hand)";
|
|
10
10
|
export declare const RECEIVER_REGION_END = " # END generated:receivers";
|
package/dist/openapi.js
CHANGED
|
@@ -6,7 +6,7 @@ import { RECEIVERS } from "./receivers.js";
|
|
|
6
6
|
* payload; here we derive a real `oneOf` over every receiver's request schema
|
|
7
7
|
* (via `z.toJSONSchema`), each member tagged with the agent-ergonomic metadata
|
|
8
8
|
* as `x-` extensions. Pure functions — the CLI (`scripts/generate-openapi.ts`)
|
|
9
|
-
* does the file I/O. See `
|
|
9
|
+
* does the file I/O. See `text/agent-first-spec-plan.md`.
|
|
10
10
|
*/
|
|
11
11
|
export const RECEIVER_REGION_BEGIN = " # BEGIN generated:receivers — bun run generate:openapi (do not edit by hand)";
|
|
12
12
|
export const RECEIVER_REGION_END = " # END generated:receivers";
|