pinecall 0.8.2 → 0.8.4
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/README.md +1 -1
- package/dist/cli/agent.d.ts.map +1 -1
- package/dist/cli/agent.js +19 -4
- package/dist/cli/agent.js.map +1 -1
- package/dist/cli/docs-attach.d.ts.map +1 -1
- package/dist/cli/docs-attach.js +3 -2
- package/dist/cli/docs-attach.js.map +1 -1
- package/dist/cli/home.d.ts +5 -2
- package/dist/cli/home.d.ts.map +1 -1
- package/dist/cli/home.js +2 -3
- package/dist/cli/home.js.map +1 -1
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/load.d.ts +5 -0
- package/dist/cli/load.d.ts.map +1 -1
- package/dist/cli/load.js +8 -2
- package/dist/cli/load.js.map +1 -1
- package/dist/cli/personas.d.ts +8 -2
- package/dist/cli/personas.d.ts.map +1 -1
- package/dist/cli/personas.js +240 -67
- package/dist/cli/personas.js.map +1 -1
- package/dist/cli/simulate.d.ts +1 -1
- package/dist/cli/simulate.d.ts.map +1 -1
- package/dist/cli/simulate.js +11 -70
- package/dist/cli/simulate.js.map +1 -1
- package/dist/cli/testing/caller.d.ts +6 -12
- package/dist/cli/testing/caller.d.ts.map +1 -1
- package/dist/cli/testing/caller.js +6 -12
- package/dist/cli/testing/caller.js.map +1 -1
- package/dist/cli/testing/heard.d.ts +21 -0
- package/dist/cli/testing/heard.d.ts.map +1 -0
- package/dist/cli/testing/heard.js +64 -0
- package/dist/cli/testing/heard.js.map +1 -0
- package/dist/cli/testing/models.d.ts +9 -0
- package/dist/cli/testing/models.d.ts.map +1 -1
- package/dist/cli/testing/models.js +16 -1
- package/dist/cli/testing/models.js.map +1 -1
- package/dist/cli/testing/personas.d.ts +37 -0
- package/dist/cli/testing/personas.d.ts.map +1 -0
- package/dist/cli/testing/personas.js +26 -0
- package/dist/cli/testing/personas.js.map +1 -0
- package/dist/cli/testing/voice.d.ts +2 -2
- package/dist/cli/testing/voice.js +2 -2
- package/dist/cli/ui/console/assets/{index-no-LQaTe.js → index-CQ0f4Qi4.js} +20 -16
- package/dist/cli/ui/console/assets/index-CXPFJbSz.css +1 -0
- package/dist/cli/ui/console/index.html +2 -2
- package/dist/cli/ui/doors.d.ts.map +1 -1
- package/dist/cli/ui/doors.js +0 -1
- package/dist/cli/ui/doors.js.map +1 -1
- package/dist/cli/ui/simulating.d.ts +4 -18
- package/dist/cli/ui/simulating.d.ts.map +1 -1
- package/dist/cli/ui/simulating.js +10 -18
- package/dist/cli/ui/simulating.js.map +1 -1
- package/package.json +1 -1
- package/dist/cli/ui/console/assets/index-CBStFn5_.css +0 -1
package/dist/cli/personas.js
CHANGED
|
@@ -1,105 +1,278 @@
|
|
|
1
|
-
/** `pinecall personas
|
|
1
|
+
/** `pinecall personas`: the synthetic callers of an agent — listed, written, tried, and dropped. */
|
|
2
2
|
import { parseArgs } from "node:util";
|
|
3
|
+
import { theDoor } from "./env.js";
|
|
4
|
+
import { AGENT_FLAG, homeOf, oneHome } from "./home.js";
|
|
5
|
+
import { agentFilesOfTheProject, slugOfAgentFile } from "./load.js";
|
|
3
6
|
import { aSimulation, TURNS } from "./simulate.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
const USAGE = "usage: pinecall personas list | show <name> | try <name
|
|
7
|
+
import { personasIn as personasInFiles } from "./testing/caller.js";
|
|
8
|
+
import { dropPersona, NOBODY, personaNamed, personasOf, writePersona } from "./testing/personas.js";
|
|
9
|
+
const USAGE = "usage: pinecall personas [list] | show <name> | try <name>\n" +
|
|
10
|
+
" pinecall personas add <name> --goal '…' --style '…' [--about '…'] [--fact 'what=said']…\n" +
|
|
11
|
+
" pinecall personas edit <name> [--goal '…'] [--style '…'] [--about '…'] [--fact 'what=said']… [--rename <name>]\n" +
|
|
12
|
+
" pinecall personas rm <name> · pinecall personas push [--from test/<agent>/personas]\n" +
|
|
13
|
+
" … any of them with --agent <name|slug>, --file agent.tsx, --json, and --prod for production's\n";
|
|
7
14
|
export const group = {
|
|
8
|
-
purpose: "list
|
|
15
|
+
purpose: "the agent's synthetic callers: list, show, add, edit, rm, try — kept by the gateway",
|
|
9
16
|
usage: `${USAGE}
|
|
10
|
-
A persona is a caller a model plays: a goal, a style, the facts they may state about
|
|
11
|
-
themselves
|
|
12
|
-
|
|
17
|
+
A persona is a caller a model plays: a goal, a style, and the facts they may state about
|
|
18
|
+
themselves. There is no script — every turn is improvised from those three. They are the
|
|
19
|
+
agent's, kept by the gateway beside its settings, so the console shows the same ones and a
|
|
20
|
+
change needs no deploy.
|
|
13
21
|
|
|
14
|
-
list
|
|
15
|
-
show <name>
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
22
|
+
list every caller of this agent, with the goal each one pursues
|
|
23
|
+
show <name> that caller whole, facts and all
|
|
24
|
+
add <name> write one: --goal and --style are needed, --fact repeated for what they know
|
|
25
|
+
edit <name> change what is named and leave the rest; --rename moves it to another name
|
|
26
|
+
rm <name> the caller dropped
|
|
27
|
+
try <name> one call against the class in this directory — simulate, without the judge
|
|
28
|
+
push the personas still in files, sent to the gateway once: the migration
|
|
29
|
+
|
|
30
|
+
--agent <name|slug> whose callers: an agent of this project by its name, or a slug of the org
|
|
31
|
+
--file agent.tsx which class names the agent, when the directory holds more than one
|
|
32
|
+
--json what the gateway answered — the caller for show, the roster for the rest.
|
|
33
|
+
try prints a call as it happens and refuses the flag`,
|
|
19
34
|
run,
|
|
20
35
|
};
|
|
36
|
+
/** Every verb of the group, so a word nobody wrote is answered before anything is loaded. */
|
|
37
|
+
const VERBS = ["list", "show", "add", "edit", "rm", "try", "push"];
|
|
21
38
|
// A caller with no facts of their own is not broken — they are somebody who will invent nothing,
|
|
22
39
|
// which is what the model playing them is told. `show` says so rather than printing an empty block.
|
|
23
40
|
const NO_FACTS = "(no facts: this caller may state nothing about themselves)";
|
|
24
|
-
|
|
41
|
+
const NONE_YET = (agent) => `${agent} has no personas yet: \`pinecall personas add <name> --goal '…' --style '…'\`, or the console's Personas`;
|
|
42
|
+
const FACT_SHAPE = "a fact is what=said: --fact 'their phone=305 555 0101'";
|
|
43
|
+
// The gateway's own rule for a caller's name, read here too, because a name it will refuse is
|
|
44
|
+
// worth a sentence and not a JSON body: `--persona` takes the same word afterwards.
|
|
45
|
+
const A_NAME = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
46
|
+
const NAME_SHAPE = (name) => `${name} is no name for a caller: lower-case letters and digits joined by hyphens — apurado, price-shopper`;
|
|
47
|
+
// `try` holds a live call and prints its turns as they land: there is no answer to print instead,
|
|
48
|
+
// so the flag is refused rather than quietly ignored.
|
|
49
|
+
const NOT_JSON = "try prints a call as it happens, not an answer the gateway gave: drop --json";
|
|
50
|
+
export async function run(argv, how = {}) {
|
|
51
|
+
const out = how.out ?? process.stdout;
|
|
52
|
+
const err = how.err ?? process.stderr;
|
|
25
53
|
const { values, positionals } = parseArgs({
|
|
26
54
|
args: argv,
|
|
27
55
|
allowPositionals: true,
|
|
28
|
-
options: {
|
|
56
|
+
options: {
|
|
57
|
+
goal: { type: "string" },
|
|
58
|
+
style: { type: "string" },
|
|
59
|
+
about: { type: "string" },
|
|
60
|
+
fact: { type: "string", multiple: true },
|
|
61
|
+
rename: { type: "string" },
|
|
62
|
+
from: { type: "string" },
|
|
63
|
+
file: { type: "string" },
|
|
64
|
+
json: { type: "boolean", default: false },
|
|
65
|
+
...AGENT_FLAG,
|
|
66
|
+
},
|
|
29
67
|
});
|
|
30
|
-
const [verb, name] = positionals;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
out.write(`── ${home.name} ──\n`);
|
|
37
|
-
worst = Math.max(worst, await listed(values.json === true, out, home.personas));
|
|
38
|
-
}
|
|
39
|
-
return worst;
|
|
68
|
+
const [verb = "list", name] = positionals;
|
|
69
|
+
// Before the class: a word this group does not answer to is a usage line, not a project loaded
|
|
70
|
+
// and a gateway knocked at to find out it was never going to be run.
|
|
71
|
+
if (!VERBS.includes(verb)) {
|
|
72
|
+
err.write(USAGE);
|
|
73
|
+
return 2;
|
|
40
74
|
}
|
|
41
|
-
|
|
42
|
-
|
|
75
|
+
const asJson = values.json === true;
|
|
76
|
+
if (asJson && verb === "try") {
|
|
77
|
+
err.write(`${NOT_JSON}\n`);
|
|
78
|
+
return 2;
|
|
43
79
|
}
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
80
|
+
const door = theDoor(how.env ?? process.env, err);
|
|
81
|
+
if (door === undefined)
|
|
82
|
+
return 2;
|
|
83
|
+
let home;
|
|
84
|
+
const here = async () => (home ??= await oneHome("personas", values.file, values.agent));
|
|
85
|
+
const agent = await theSlug(values.agent, here);
|
|
86
|
+
if (verb === "list")
|
|
87
|
+
return await listed(door, agent, asJson, out);
|
|
88
|
+
if (verb === "push")
|
|
89
|
+
return await pushed(door, agent, values.from ?? (await here()).personas, asJson, out, err);
|
|
90
|
+
if (name === undefined) {
|
|
91
|
+
err.write(USAGE);
|
|
92
|
+
return 2;
|
|
49
93
|
}
|
|
50
|
-
|
|
51
|
-
|
|
94
|
+
if (verb === "show")
|
|
95
|
+
return await shown(door, agent, name, asJson, out, err);
|
|
96
|
+
if (verb === "rm")
|
|
97
|
+
return await dropped(door, agent, name, asJson, out, err);
|
|
98
|
+
if (verb === "try")
|
|
99
|
+
return await tried(door, agent, name, await here(), out, err);
|
|
100
|
+
return await written(door, agent, name, verb === "add" ? "add" : "edit", values, asJson, out, err);
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Whose callers, as the gateway files them: under the agent's SLUG, which is the class's own.
|
|
104
|
+
*
|
|
105
|
+
* `--agent` is the project's name for an agent (`sales`) or a slug of the org (`bidfire-sales`),
|
|
106
|
+
* and the verbs that load a class already read it both ways. A name that is a folder under
|
|
107
|
+
* `agents/` here is resolved through its class — `personas --agent sales` asked for the callers of
|
|
108
|
+
* "sales", which is nobody, while the console showed them under the slug. Anything else is a slug
|
|
109
|
+
* already and travels as typed, so a terminal outside a project still reaches its org's agents.
|
|
110
|
+
*/
|
|
111
|
+
async function theSlug(named, here) {
|
|
112
|
+
if (named !== undefined && !agentFilesOfTheProject().some((file) => homeOf(file).name === named))
|
|
113
|
+
return named;
|
|
114
|
+
return await slugOfAgentFile((await here()).file);
|
|
52
115
|
}
|
|
53
|
-
/** One line per caller: the name a verb takes, and the goal
|
|
54
|
-
async function listed(asJson, out
|
|
55
|
-
const personas = await
|
|
116
|
+
/** One line per caller: the name a verb takes, how they talk, and the goal they pursue. */
|
|
117
|
+
async function listed(door, agent, asJson, out) {
|
|
118
|
+
const personas = await personasOf(door, agent);
|
|
119
|
+
if (asJson) {
|
|
120
|
+
out.write(`${JSON.stringify({ personas })}\n`);
|
|
121
|
+
return 0;
|
|
122
|
+
}
|
|
56
123
|
if (personas.length === 0) {
|
|
57
|
-
|
|
58
|
-
return
|
|
124
|
+
out.write(`${NONE_YET(agent)}\n`);
|
|
125
|
+
return 0;
|
|
59
126
|
}
|
|
60
|
-
|
|
61
|
-
out.write(`${JSON.stringify({ personas })}\n`);
|
|
62
|
-
else
|
|
63
|
-
out.write(`${personas.map(oneLine).join("\n")}\n`);
|
|
127
|
+
out.write(`${personas.map(oneLine).join("\n")}\n`);
|
|
64
128
|
return 0;
|
|
65
129
|
}
|
|
66
130
|
/** One caller whole: how they talk, and every fact about themselves they are allowed to state. */
|
|
67
|
-
async function shown(name, asJson, out,
|
|
68
|
-
const persona = await personaNamed(
|
|
131
|
+
async function shown(door, agent, name, asJson, out, err) {
|
|
132
|
+
const persona = await personaNamed(door, agent, name);
|
|
133
|
+
if (persona === undefined) {
|
|
134
|
+
err.write(`${NOBODY(name, agent)}\n`);
|
|
135
|
+
return 2;
|
|
136
|
+
}
|
|
137
|
+
out.write(asJson ? `${JSON.stringify(persona)}\n` : `${linesOf(persona).join("\n")}\n`);
|
|
138
|
+
return 0;
|
|
139
|
+
}
|
|
140
|
+
// `add` writes a whole caller and `edit` writes the one there with what was named changed: both
|
|
141
|
+
// are one PUT, because the gateway keeps a caller whole and merging belongs on this side.
|
|
142
|
+
async function written(door, agent, name, verb, values, asJson, out, err) {
|
|
143
|
+
const before = await personaNamed(door, agent, name);
|
|
144
|
+
if (verb === "edit" && before === undefined) {
|
|
145
|
+
err.write(`${NOBODY(name, agent)}\n`);
|
|
146
|
+
return 2;
|
|
147
|
+
}
|
|
148
|
+
if (verb === "add" && before !== undefined) {
|
|
149
|
+
err.write(`${agent} has a persona called ${name} already: \`pinecall personas edit ${name}\`\n`);
|
|
150
|
+
return 2;
|
|
151
|
+
}
|
|
152
|
+
const writing = values.rename ?? name;
|
|
153
|
+
if (!A_NAME.test(writing)) {
|
|
154
|
+
err.write(`${NAME_SHAPE(writing)}\n`);
|
|
155
|
+
return 2;
|
|
156
|
+
}
|
|
157
|
+
const goal = values.goal ?? before?.goal;
|
|
158
|
+
const style = values.style ?? before?.style;
|
|
159
|
+
if (goal === undefined || style === undefined) {
|
|
160
|
+
err.write("a persona needs --goal and --style: what they want, and how they talk\n");
|
|
161
|
+
return 2;
|
|
162
|
+
}
|
|
163
|
+
let facts;
|
|
164
|
+
try {
|
|
165
|
+
facts = values.fact === undefined ? (before?.facts ?? {}) : theFacts(values.fact);
|
|
166
|
+
}
|
|
167
|
+
catch (refused) {
|
|
168
|
+
err.write(`${refused instanceof Error ? refused.message : String(refused)}\n`);
|
|
169
|
+
return 2;
|
|
170
|
+
}
|
|
171
|
+
const kept = await writePersona(door, agent, writing, {
|
|
172
|
+
goal,
|
|
173
|
+
style,
|
|
174
|
+
about: values.about ?? before?.about ?? "",
|
|
175
|
+
facts,
|
|
176
|
+
state: before?.state ?? {},
|
|
177
|
+
...(writing === name ? {} : { was: name }),
|
|
178
|
+
});
|
|
179
|
+
if (asJson) {
|
|
180
|
+
out.write(`${JSON.stringify({ personas: kept })}\n`);
|
|
181
|
+
return 0;
|
|
182
|
+
}
|
|
183
|
+
const now = kept.find((one) => one.name === writing);
|
|
184
|
+
out.write(`${agent} · ${now?.name ?? name} ${verb === "add" ? "written" : "changed"} · ${kept.length} persona(s)\n`);
|
|
185
|
+
return 0;
|
|
186
|
+
}
|
|
187
|
+
// A caller nobody wrote is the same sentence here as everywhere else: the gateway answers a
|
|
188
|
+
// DELETE of a name it does not hold with its own JSON, which is no answer for a person.
|
|
189
|
+
async function dropped(door, agent, name, asJson, out, err) {
|
|
190
|
+
if ((await personaNamed(door, agent, name)) === undefined) {
|
|
191
|
+
err.write(`${NOBODY(name, agent)}\n`);
|
|
192
|
+
return 2;
|
|
193
|
+
}
|
|
194
|
+
const kept = await dropPersona(door, agent, name);
|
|
195
|
+
out.write(asJson ? `${JSON.stringify({ personas: kept })}\n` : `${agent} · ${name} dropped · ${kept.length} persona(s)\n`);
|
|
196
|
+
return 0;
|
|
197
|
+
}
|
|
198
|
+
// `try` runs the caller against the class, because reading a persona tells you who they are and
|
|
199
|
+
// only a call tells you how they land. It is `simulate` without the judge — one implementation.
|
|
200
|
+
async function tried(door, agent, name, home, out, err) {
|
|
201
|
+
const persona = await personaNamed(door, agent, name);
|
|
69
202
|
if (persona === undefined) {
|
|
70
|
-
|
|
203
|
+
err.write(`${NOBODY(name, agent)}\n`);
|
|
204
|
+
return 2;
|
|
205
|
+
}
|
|
206
|
+
const said = await aSimulation(persona, { door, agentFile: home.file, judge: false, voice: false, turns: TURNS, out });
|
|
207
|
+
return said === undefined ? 2 : 0;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* The migration, run once per project: the personas still written as files are sent to the
|
|
211
|
+
* gateway, where the console and every terminal read the same ones. A file that computes its
|
|
212
|
+
* state — a client out of `lib/` — is evaluated here, so what lands is the value it produced.
|
|
213
|
+
* The files are yours to delete afterwards; this verb never touches them.
|
|
214
|
+
*/
|
|
215
|
+
async function pushed(door, agent, folder, asJson, out, err) {
|
|
216
|
+
const inFiles = await personasInFiles(folder);
|
|
217
|
+
if (inFiles.length === 0) {
|
|
218
|
+
err.write(`no personas in ${folder}\n`);
|
|
71
219
|
return 2;
|
|
72
220
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
221
|
+
const landed = [];
|
|
222
|
+
let kept = [];
|
|
223
|
+
for (const persona of inFiles) {
|
|
224
|
+
try {
|
|
225
|
+
kept = await writePersona(door, agent, persona.name, {
|
|
226
|
+
goal: persona.goal,
|
|
227
|
+
style: persona.style,
|
|
228
|
+
about: "",
|
|
229
|
+
facts: Object.fromEntries(Object.entries(persona.facts ?? {}).map(([what, said]) => [what, String(said)])),
|
|
230
|
+
state: persona.state ?? {},
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
catch (refused) {
|
|
234
|
+
// Half a migration is the one thing this verb must never leave in silence: a second run has
|
|
235
|
+
// to know which callers are already the gateway's and which are still only files.
|
|
236
|
+
err.write(`${halfWay(agent, landed, inFiles.map((one) => one.name).slice(landed.length), refused)}\n`);
|
|
237
|
+
return 2;
|
|
238
|
+
}
|
|
239
|
+
landed.push(persona.name);
|
|
240
|
+
if (!asJson)
|
|
241
|
+
out.write(` ${persona.name}\n`);
|
|
242
|
+
}
|
|
243
|
+
out.write(asJson ? `${JSON.stringify({ personas: kept })}\n` : `${agent} · ${landed.length} persona(s) pushed from ${folder}\n`);
|
|
77
244
|
return 0;
|
|
78
245
|
}
|
|
246
|
+
/** What a push that stopped says: what the gateway now holds, what it does not, and why it stopped. */
|
|
247
|
+
function halfWay(agent, landed, left, refused) {
|
|
248
|
+
return [
|
|
249
|
+
`${agent} · ${left[0]} was refused: ${refused instanceof Error ? refused.message : String(refused)}`,
|
|
250
|
+
` pushed: ${landed.length === 0 ? "nothing" : landed.join(", ")}`,
|
|
251
|
+
` still only files: ${left.join(", ")}`,
|
|
252
|
+
" nothing was undone and no file was touched: push again once it is fixed",
|
|
253
|
+
].join("\n");
|
|
254
|
+
}
|
|
255
|
+
/** `--fact 'their phone=305 555 0101'`, repeated: what this caller knows about themselves. */
|
|
256
|
+
function theFacts(said) {
|
|
257
|
+
const facts = {};
|
|
258
|
+
for (const one of said) {
|
|
259
|
+
const at = one.indexOf("=");
|
|
260
|
+
if (at <= 0)
|
|
261
|
+
throw new Error(FACT_SHAPE);
|
|
262
|
+
facts[one.slice(0, at).trim()] = one.slice(at + 1).trim();
|
|
263
|
+
}
|
|
264
|
+
return facts;
|
|
265
|
+
}
|
|
79
266
|
/** The lines `show` prints: the caller, the goal, the style, and every fact they may state. */
|
|
80
267
|
function linesOf(persona) {
|
|
81
|
-
const facts = Object.entries(persona.facts
|
|
268
|
+
const facts = Object.entries(persona.facts);
|
|
82
269
|
return [
|
|
83
270
|
`${persona.name} · ${persona.goal}`,
|
|
271
|
+
...(persona.about === "" ? [] : [` ${persona.about}`]),
|
|
84
272
|
` ${persona.style}`,
|
|
85
|
-
...(facts.length === 0 ? [` ${NO_FACTS}`] : facts.map(([
|
|
273
|
+
...(facts.length === 0 ? [` ${NO_FACTS}`] : facts.map(([what, said]) => ` ${what}: ${said}`)),
|
|
86
274
|
];
|
|
87
275
|
}
|
|
88
|
-
async function tried(name, agentFile, out, folder) {
|
|
89
|
-
const persona = await personaNamed(name, folder);
|
|
90
|
-
if (persona === undefined) {
|
|
91
|
-
process.stderr.write(`no persona called ${name}: ${NO_PERSONAS}\n`);
|
|
92
|
-
return 2;
|
|
93
|
-
}
|
|
94
|
-
const said = await aSimulation(persona, {
|
|
95
|
-
agentFile,
|
|
96
|
-
judge: false,
|
|
97
|
-
voice: false,
|
|
98
|
-
turns: TURNS,
|
|
99
|
-
out,
|
|
100
|
-
});
|
|
101
|
-
return said === undefined ? 2 : 0;
|
|
102
|
-
}
|
|
103
276
|
function oneLine(persona) {
|
|
104
277
|
return `${persona.name.padEnd(12)} ${persona.style.padEnd(46)} ${persona.goal}`;
|
|
105
278
|
}
|
package/dist/cli/personas.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"personas.js","sourceRoot":"","sources":["../../src/cli/personas.ts"],"names":[],"mappings":"AAAA,oGAAoG;AAEpG,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAgB,MAAM,qBAAqB,CAAC;AAC1F,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1D,MAAM,KAAK,GAAG,gGAAgG,CAAC;AAE/G,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,OAAO,EAAE,0DAA0D;IACnE,KAAK,EAAE,GAAG,KAAK;;;;;;;;;uFASsE;IACrF,GAAG;CACJ,CAAC;AAEF,iGAAiG;AACjG,oGAAoG;AACpG,MAAM,QAAQ,GAAG,4DAA4D,CAAC;AAE9E,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc,EAAE,GAAG,GAA0B,OAAO,CAAC,MAAM;IACnF,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,EAAE,IAAI;QACV,gBAAgB,EAAE,IAAI;QACtB,OAAO,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,GAAG,UAAU,EAAE;KAChG,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC;IACjC,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACxD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC;YACxD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC5H,CAAC;IACD,gGAAgG;IAChG,gGAAgG;IAChG,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;QACtE,OAAO,MAAM,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,wFAAwF;AACxF,KAAK,UAAU,MAAM,CAAC,MAAe,EAAE,GAA0B,EAAE,MAAe;IAChF,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,IAAI,CAAC,CAAC;QACzC,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM;QAAE,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;;QACtD,GAAG,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,kGAAkG;AAClG,KAAK,UAAU,KAAK,CAAC,IAAY,EAAE,MAAe,EAAE,GAA0B,EAAE,MAAe;IAC7F,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM;QAAE,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;QACjD,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+FAA+F;AAC/F,SAAS,OAAO,CAAC,OAAgB;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;IAClD,OAAO;QACL,GAAG,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,EAAE;QACnC,KAAK,OAAO,CAAC,KAAK,EAAE;QACpB,GAAG,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,IAAI,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;KAC1G,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,KAAK,CAClB,IAAY,EACZ,SAA6B,EAC7B,GAA0B,EAC1B,MAAe;IAEf,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC;QACpE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE;QACtC,SAAS;QACT,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;QACZ,KAAK,EAAE,KAAK;QACZ,GAAG;KACJ,CAAC,CAAC;IACH,OAAO,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,OAAO,CAAC,OAAgB;IAC/B,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;AACpF,CAAC"}
|
|
1
|
+
{"version":3,"file":"personas.js","sourceRoot":"","sources":["../../src/cli/personas.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/simulate.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/** `pinecall simulate --persona x`: a model plays the caller, and the call is judged at hang-up. */
|
|
2
2
|
import type { CallScore } from "@pinecall/protocol";
|
|
3
3
|
import type { Group } from "./groups.js";
|
|
4
|
-
import { type Persona } from "./testing/
|
|
4
|
+
import { type Persona } from "./testing/personas.js";
|
|
5
5
|
import { type Door } from "./testing/gateway.js";
|
|
6
6
|
import { type Degraded } from "./testing/voice.js";
|
|
7
7
|
export declare const group: Group;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/cli/simulate.ts"],"names":[],"mappings":"AAAA,oGAAoG;AAIpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AASpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,
|
|
1
|
+
{"version":3,"file":"simulate.d.ts","sourceRoot":"","sources":["../../src/cli/simulate.ts"],"names":[],"mappings":"AAAA,oGAAoG;AAIpG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AASpD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAwB,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,KAAK,IAAI,EAA4E,MAAM,sBAAsB,CAAC;AAG3H,OAAO,EAAiC,KAAK,QAAQ,EAAY,MAAM,oBAAoB,CAAC;AAO5F,eAAO,MAAM,KAAK,EAAE,KAgBnB,CAAC;AAQF,eAAO,MAAM,cAAc,sEAAsE,CAAC;AAElG;;;GAGG;AACH,eAAO,MAAM,KAAK,IAAI,CAAC;AAavB,6FAA6F;AAC7F,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,SAAS,GAAG,SAAS,CAAC;CAC/B;AAED,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,GAAE,MAAM,CAAC,cAA+B,GAAG,OAAO,CAAC,MAAM,CAAC,CA+CtG;AAED,6FAA6F;AAC7F,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAMpG;AAMD,wBAAgB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,CAI9D;AAED,kGAAkG;AAClG,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,OAAO,CAAC;IACf,uFAAuF;IACvF,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC,cAAc,CAAC;IAC3B,qFAAqF;IACrF,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IACxB,8FAA8F;IAC9F,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CAC/C;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,CAyBnG"}
|
package/dist/cli/simulate.js
CHANGED
|
@@ -7,14 +7,14 @@ import { chatUrl } from "./chat.js";
|
|
|
7
7
|
import { pinecallFor } from "./client-for.js";
|
|
8
8
|
import { theDoor } from "./env.js";
|
|
9
9
|
import { anEarIn } from "./listening.js";
|
|
10
|
-
import { load, mountOptions } from "./load.js";
|
|
10
|
+
import { load, mountOptions, slugOfAgentFile } from "./load.js";
|
|
11
11
|
import { AGENT_FLAG, oneHome } from "./home.js";
|
|
12
|
-
import {
|
|
12
|
+
import { NOBODY, personaNamed } from "./testing/personas.js";
|
|
13
13
|
import { entriesOf, theNextLine } from "./testing/gateway.js";
|
|
14
14
|
import { latencyLine, mediansOf } from "./testing/latency.js";
|
|
15
15
|
import { linesOfScore } from "./testing/score.js";
|
|
16
16
|
import { aCallId, aVoiceCall, DEGRADED, watching } from "./testing/voice.js";
|
|
17
|
-
import {
|
|
17
|
+
import { after, Heard, SETTLE_MS } from "./testing/heard.js";
|
|
18
18
|
const USAGE = "usage: pinecall simulate --persona <name> [--judge] [--turns n] [--voice] [--listen]\n" +
|
|
19
19
|
" [--background-noise <dB under the caller>] [--packet-loss <percent>] [--agent <name>] [--file agent.tsx]\n";
|
|
20
20
|
export const group = {
|
|
@@ -24,7 +24,7 @@ export const group = {
|
|
|
24
24
|
style and its own facts — there is no script. This terminal holds the class and the transcript;
|
|
25
25
|
the gateway holds the provider keys. The call lands in the log like any other.
|
|
26
26
|
|
|
27
|
-
--persona <name>
|
|
27
|
+
--persona <name> one of the agent's personas, by name: pinecall personas lists them
|
|
28
28
|
--judge read back the call.score the log seals on, and print every judge
|
|
29
29
|
--turns n how many turns the caller improvises before hanging up (default 6)
|
|
30
30
|
--voice a real line: a room, and the caller in a person's voice, not the agent's
|
|
@@ -45,13 +45,6 @@ export const ONLY_ON_A_LINE = "--background-noise and --packet-loss are about au
|
|
|
45
45
|
* examples are written against, and long enough for a booking to reach its confirmation.
|
|
46
46
|
*/
|
|
47
47
|
export const TURNS = 6;
|
|
48
|
-
// How long a written call is left quiet before the caller says the next thing. The app answers
|
|
49
|
-
// `call.started` with a render and a tool may run after the reply, so a turn is over when nothing
|
|
50
|
-
// has been written for a moment — the same silence the gateway's own runner waits for.
|
|
51
|
-
const SETTLE_MS = 400;
|
|
52
|
-
// And how long one turn may take before the simulation gives up on it. A tenant's tool that awaits
|
|
53
|
-
// something for ever must not leave a person watching a prompt that never returns.
|
|
54
|
-
const A_TURN_MAY_TAKE_MS = 30_000;
|
|
55
48
|
// The log seals on `call.score`, which is written after the caller has gone — so it is read back
|
|
56
49
|
// rather than heard, and this is how long the judges are given before the terminal gives up.
|
|
57
50
|
const JUDGING_MAY_TAKE_MS = 60_000;
|
|
@@ -89,12 +82,17 @@ export async function run(argv, out = process.stdout) {
|
|
|
89
82
|
return 2;
|
|
90
83
|
}
|
|
91
84
|
const home = await oneHome("simulate", values.file, values.agent);
|
|
92
|
-
const
|
|
85
|
+
const door = theDoor();
|
|
86
|
+
if (door === undefined)
|
|
87
|
+
return 2;
|
|
88
|
+
const agent = await slugOfAgentFile(home.file);
|
|
89
|
+
const persona = await personaNamed(door, agent, values.persona);
|
|
93
90
|
if (persona === undefined) {
|
|
94
|
-
process.stderr.write(
|
|
91
|
+
process.stderr.write(`${NOBODY(values.persona, agent)}\n`);
|
|
95
92
|
return 2;
|
|
96
93
|
}
|
|
97
94
|
const said = await aSimulation(persona, {
|
|
95
|
+
door,
|
|
98
96
|
agentFile: home.file,
|
|
99
97
|
judge: values.judge === true,
|
|
100
98
|
voice,
|
|
@@ -267,63 +265,6 @@ async function sealing(door, call) {
|
|
|
267
265
|
const sealed = (await entriesOf(door, call)).find((entry) => entry.type === TERMINAL_ENTRY);
|
|
268
266
|
return sealed === undefined ? undefined : sealed.data;
|
|
269
267
|
}
|
|
270
|
-
// The call's log as this terminal hears it: printed as it lands, and quiet when the app has
|
|
271
|
-
// finished reacting. Everything the simulation knows about where the call is, it knows from here —
|
|
272
|
-
// including the transcript the caller model is handed, which is the log's own turns and not a
|
|
273
|
-
// second copy this process kept.
|
|
274
|
-
class Heard {
|
|
275
|
-
out;
|
|
276
|
-
opened;
|
|
277
|
-
call;
|
|
278
|
-
agentTurns = 0;
|
|
279
|
-
said = [];
|
|
280
|
-
last = Date.now();
|
|
281
|
-
constructor(out, opened) {
|
|
282
|
-
this.out = out;
|
|
283
|
-
this.opened = opened;
|
|
284
|
-
}
|
|
285
|
-
/** One entry: remembered, and printed when it is a line of the conversation rather than wiring. */
|
|
286
|
-
absorb(entry) {
|
|
287
|
-
this.last = Date.now();
|
|
288
|
-
if (typeof entry.call === "string" && this.call === undefined) {
|
|
289
|
-
this.call = entry.call;
|
|
290
|
-
this.opened?.(entry.call);
|
|
291
|
-
}
|
|
292
|
-
if (entry.type === "turn.agent")
|
|
293
|
-
this.agentTurns += 1;
|
|
294
|
-
if (entry.type === "turn.user" || entry.type === "turn.agent") {
|
|
295
|
-
this.said.push({
|
|
296
|
-
who: entry.type === "turn.agent" ? "agent" : "caller",
|
|
297
|
-
said: String(entry.data["text"] ?? ""),
|
|
298
|
-
});
|
|
299
|
-
}
|
|
300
|
-
// Both sides are printed off the log and never off what this process sent: on a spoken call
|
|
301
|
-
// the caller's own turn is what the STT heard, which is the line that matters.
|
|
302
|
-
const line = lineFor(entry);
|
|
303
|
-
if (line === null)
|
|
304
|
-
return;
|
|
305
|
-
const metrics = entry.type === "turn.agent"
|
|
306
|
-
? ` ${metricsLine(entry.data["metrics"])}`
|
|
307
|
-
: "";
|
|
308
|
-
this.out.write(`${line.mark} ${line.text}${metrics}\n`);
|
|
309
|
-
}
|
|
310
|
-
/** Waits until the agent has spoken again, and then until the app has finished reacting. */
|
|
311
|
-
async answered(said) {
|
|
312
|
-
const deadline = Date.now() + A_TURN_MAY_TAKE_MS;
|
|
313
|
-
while (this.agentTurns === said && Date.now() < deadline)
|
|
314
|
-
await after(SETTLE_MS / 4);
|
|
315
|
-
await this.quiet();
|
|
316
|
-
}
|
|
317
|
-
/** Waits until nothing has been written for a moment: the app has answered and re-rendered. */
|
|
318
|
-
async quiet() {
|
|
319
|
-
const deadline = Date.now() + A_TURN_MAY_TAKE_MS;
|
|
320
|
-
while (Date.now() - this.last < SETTLE_MS && Date.now() < deadline)
|
|
321
|
-
await after(SETTLE_MS / 4);
|
|
322
|
-
}
|
|
323
|
-
}
|
|
324
|
-
function after(ms) {
|
|
325
|
-
return new Promise((wake) => setTimeout(wake, ms));
|
|
326
|
-
}
|
|
327
268
|
function once(socket, event) {
|
|
328
269
|
return new Promise((done, failed) => {
|
|
329
270
|
socket.on(event, () => done());
|
package/dist/cli/simulate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/cli/simulate.ts"],"names":[],"mappings":"AAAA,oGAAoG;AAEpG,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,SAAS,MAAM,IAAI,CAAC;AAE3B,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEnC,OAAO,EAAE,OAAO,EAAY,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAgB,MAAM,qBAAqB,CAAC;AAC9E,OAAO,EAAa,SAAS,EAAoD,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC3H,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAiB,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAEjD,MAAM,KAAK,GACT,wFAAwF;IACxF,mHAAmH,CAAC;AAEtH,MAAM,CAAC,MAAM,KAAK,GAAU;IAC1B,OAAO,EAAE,sFAAsF;IAC/F,KAAK,EAAE,GAAG,KAAK;;;;;;;;;;;;mFAYkE;IACjF,GAAG;CACJ,CAAC;AAEF,mGAAmG;AACnG,gGAAgG;AAChG,MAAM,gBAAgB,GAAG,oDAAoD,CAAC;AAE9E,iGAAiG;AACjG,+EAA+E;AAC/E,MAAM,CAAC,MAAM,cAAc,GAAG,mEAAmE,CAAC;AAElG;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC;AAEvB,+FAA+F;AAC/F,kGAAkG;AAClG,uFAAuF;AACvF,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB,mGAAmG;AACnG,mFAAmF;AACnF,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAElC,iGAAiG;AACjG,6FAA6F;AAC7F,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,cAAc,GAAG,YAAY,CAAC;AAEpC,8FAA8F;AAC9F,oFAAoF;AACpF,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CACzC,MAAM,cAAc,WAAW,mBAAmB,GAAG,IAAI,wBAAwB;IACjF,uBAAuB,IAAI,+BAA+B,CAAC;AAQ7D,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,IAAc,EAAE,GAAG,GAA0B,OAAO,CAAC,MAAM;IACnF,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QAC3B,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YAC3B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;YAC1C,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;YAC3C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE;YAC1C,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACtC,aAAa,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;YACxB,GAAG,UAAU;SACd;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,KAAK,IAAI,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,KAAK,IAAI,IAAI,MAAM,CAAC;IAC9C,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;QAAE,GAAG,CAAC,KAAK,CAAC,GAAG,gBAAgB,IAAI,CAAC,CAAC;IACxE,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/E,IAAI,CAAC,KAAK,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,MAAM,CAAC,OAAO,OAAO,IAAI,CAAC,QAAQ,KAAK,WAAW,IAAI,CAAC,CAAC;QAClG,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,EAAE;QACtC,SAAS,EAAE,IAAI,CAAC,IAAI;QACpB,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,IAAI;QAC5B,KAAK;QACL,MAAM;QACN,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;QAC/C,KAAK,EAAE,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;QAChE,GAAG;KACJ,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,UAAU,CAAC,KAAyB,EAAE,IAAwB;IAC5E,IAAI,KAAK,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAChE,OAAO;QACL,aAAa,EAAE,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QAC3F,WAAW,EAAE,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG;KAC3F,CAAC;AACJ,CAAC;AAED,mGAAmG;AACnG,8FAA8F;AAC9F,iGAAiG;AACjG,mGAAmG;AACnG,MAAM,UAAU,UAAU,CAAC,IAA2B;IACpD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACjC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAkBD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAgB,EAAE,GAAe;IACjE,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACnC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7B,gGAAgG;IAChG,gGAAgG;IAChG,+FAA+F;IAC/F,+EAA+E;IAC/E,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QACjC,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,cAAc,EAAE,GAAG,CAAC,KAAK;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK;KAC7B,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK;YACpB,CAAC,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC;YACjD,CAAC,CAAC,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACvF,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;IACzD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,sFAAsF;AACtF,KAAK,UAAU,SAAS,CACtB,SAAiB,EACjB,IAAU,EACV,OAAgB,EAChB,GAAe;IAEf,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACtF,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAU,CAAC,CAAC,CAAC;IAC7F,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC;IACpB,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,IAAI,EAAE;YACnC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;YAC3B,KAAK,EAAE,KAAK,CAAC,IAAI;YACjB,UAAU,EAAE,GAAG,CAAC,KAAK,GAAG,IAAI;SAC7B,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,GAAG,KAAK,EAAE;YAAE,MAAM;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QAChD,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7B,IAAI,IAAI,CAAC,MAAM;YAAE,MAAM;IACzB,CAAC;IACD,MAAM,CAAC,KAAK,EAAE,CAAC;IACf,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,IAAI,SAAS,MAAM,KAAK,CAAC,UAAU,kBAAkB,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,mGAAmG;AACnG,gGAAgG;AAChG,6FAA6F;AAC7F,KAAK,UAAU,OAAO,CACpB,IAAU,EACV,IAAY,EACZ,OAAgB,EAChB,GAAe;IAEf,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,gGAAgG;IAChG,gGAAgG;IAChG,4FAA4F;IAC5F,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,gGAAgG;IAChG,6FAA6F;IAC7F,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,EAAE;QAC5B,IAAI;QACJ,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;QAC3B,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,GAAG,CAAC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;KAClE,CAAC,CAAC;IACH,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE;QACzC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,IAAI,CAAC;YACZ,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC;IAC1B,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC;IAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,MAAM,MAAM,CAAC,KAAK,qBAAqB,KAAK,CAAC,UAAU,oBAAoB,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IACnH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,iGAAiG;AACjG,yFAAyF;AACzF,KAAK,UAAU,SAAS,CAAC,IAAU,EAAE,IAAY,EAAE,GAA0B;IAC3E,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,GAAG,CAAC,KAAK,CAAC,oBAAoB,MAAM,YAAY,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7F,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,SAAS,SAAS,CAAC,OAAgB;IACjC,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC;AAED,2FAA2F;AAC3F,iGAAiG;AACjG,iEAAiE;AACjE,KAAK,UAAU,SAAS,CACtB,IAAU,EACV,IAAY,EACZ,GAAe;IAEf,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,SAAS,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACrE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC;IAC/E,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;AAChF,CAAC;AAED,gGAAgG;AAChG,sDAAsD;AACtD,KAAK,UAAU,QAAQ,CACrB,IAAU,EACV,IAAY,EACZ,GAA0B;IAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,mBAAmB,CAAC;IAClD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,KAAK,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC;IACD,GAAG,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,4FAA4F;AAC5F,KAAK,UAAU,OAAO,CAAC,IAAU,EAAE,IAAY;IAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IAC5F,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,MAAM,CAAC,IAA6B,CAAC;AAClF,CAAC;AAED,4FAA4F;AAC5F,mGAAmG;AACnG,8FAA8F;AAC9F,iCAAiC;AACjC,MAAM,KAAK;IAOU,GAAG;IACH,MAAM;IAPzB,IAAI,CAAqB;IACzB,UAAU,GAAG,CAAC,CAAC;IACN,IAAI,GAAa,EAAE,CAAC;IACrB,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE1B,YACmB,GAA0B,EAC1B,MAA6C;mBAD7C,GAAG;sBACH,MAAM;IACtB,CAAC;IAEJ,mGAAmG;IACnG,MAAM,CAAC,KAAY;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACvB,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY;YAAE,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;QACtD,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACb,GAAG,EAAE,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;gBACrD,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aACvC,CAAC,CAAC;QACL,CAAC;QACD,4FAA4F;QAC5F,+EAA+E;QAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,KAA8B,CAAC,CAAC;QACrD,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,KAAK,YAAY;YACzC,CAAC,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAwC,CAAC,EAAE;YAClF,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,GAAG,OAAO,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,QAAQ,CAAC,IAAY;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;QACjD,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;YAAE,MAAM,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACrF,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,KAAK;QACT,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;QACjD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,GAAG,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;YAAE,MAAM,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACjG,CAAC;CACF;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,IAAI,CAAC,MAAiB,EAAE,KAAa;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAClC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAC/B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"simulate.js","sourceRoot":"","sources":["../../src/cli/simulate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** The personas a project still keeps as files: read once, by `pinecall personas push`, and never again. */
|
|
2
2
|
/**
|
|
3
|
-
* One persona
|
|
3
|
+
* One persona as a project wrote it: `test/<agent>/personas/<name>.ts`, default-exporting an object.
|
|
4
4
|
*
|
|
5
|
-
* A
|
|
6
|
-
*
|
|
7
|
-
*
|
|
5
|
+
* A caller is the gateway's now (`pinecall personas`, the console's Personas), beside the agent's
|
|
6
|
+
* settings — the same cut the voice and the lexicon took. These files are what a project wrote
|
|
7
|
+
* before that, and this module exists to send them there once: `pinecall personas push`.
|
|
8
8
|
*/
|
|
9
9
|
export interface Persona {
|
|
10
10
|
name: string;
|
|
@@ -17,12 +17,6 @@ export interface Persona {
|
|
|
17
17
|
/** The state the call starts in, when this caller is somebody the business already knows. */
|
|
18
18
|
state?: Record<string, unknown>;
|
|
19
19
|
}
|
|
20
|
-
/** Where the tenant's personas live: one file per caller, beside the goldens they are run with. */
|
|
21
|
-
export declare const PERSONAS = "test/personas";
|
|
22
|
-
/** What to say when there are none: the directory, and that a persona is one file in it. */
|
|
23
|
-
export declare const NO_PERSONAS = "no personas at test/personas: one file per caller, default-exporting one";
|
|
24
20
|
/** Every persona in that directory, in the order `ls` prints them. */
|
|
25
|
-
export declare function personasIn(folder
|
|
26
|
-
/** One persona by the name of its file, or undefined when nobody wrote that caller. */
|
|
27
|
-
export declare function personaNamed(wanted: string, folder?: string): Promise<Persona | undefined>;
|
|
21
|
+
export declare function personasIn(folder: string): Promise<Persona[]>;
|
|
28
22
|
//# sourceMappingURL=caller.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"caller.d.ts","sourceRoot":"","sources":["../../../src/cli/testing/caller.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"caller.d.ts","sourceRoot":"","sources":["../../../src/cli/testing/caller.ts"],"names":[],"mappings":"AAAA,4GAA4G;AAQ5G;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,mGAAmG;IACnG,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,sEAAsE;AACtE,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAInE"}
|