unfairly 0.8.1 → 0.8.3

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.
Files changed (89) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +17 -2
  3. package/dist/auth/browser-flow.d.ts +9 -0
  4. package/dist/auth/browser-flow.d.ts.map +1 -1
  5. package/dist/auth/browser-flow.js +11 -4
  6. package/dist/auth/browser-flow.js.map +1 -1
  7. package/dist/cmd/invite.js +2 -2
  8. package/dist/cmd/invite.js.map +1 -1
  9. package/dist/cmd/pace.d.ts +101 -0
  10. package/dist/cmd/pace.d.ts.map +1 -0
  11. package/dist/cmd/pace.js +426 -0
  12. package/dist/cmd/pace.js.map +1 -0
  13. package/dist/cmd/setup.d.ts +2 -0
  14. package/dist/cmd/setup.d.ts.map +1 -1
  15. package/dist/cmd/setup.js +20 -6
  16. package/dist/cmd/setup.js.map +1 -1
  17. package/dist/index.js +96 -2
  18. package/dist/index.js.map +1 -1
  19. package/dist/lib/types/index.d.ts +6 -6
  20. package/dist/pace/device.d.ts +104 -0
  21. package/dist/pace/device.d.ts.map +1 -0
  22. package/dist/pace/device.js +149 -0
  23. package/dist/pace/device.js.map +1 -0
  24. package/dist/pace/enroll.d.ts +80 -0
  25. package/dist/pace/enroll.d.ts.map +1 -0
  26. package/dist/pace/enroll.js +138 -0
  27. package/dist/pace/enroll.js.map +1 -0
  28. package/dist/pace/identity.d.ts +10 -0
  29. package/dist/pace/identity.d.ts.map +1 -0
  30. package/dist/pace/identity.js +17 -0
  31. package/dist/pace/identity.js.map +1 -0
  32. package/dist/pace/install.d.ts +28 -0
  33. package/dist/pace/install.d.ts.map +1 -0
  34. package/dist/pace/install.js +127 -0
  35. package/dist/pace/install.js.map +1 -0
  36. package/dist/pace/local-evidence.d.ts +75 -0
  37. package/dist/pace/local-evidence.d.ts.map +1 -0
  38. package/dist/pace/local-evidence.js +228 -0
  39. package/dist/pace/local-evidence.js.map +1 -0
  40. package/dist/pace/local-sessions.d.ts +48 -0
  41. package/dist/pace/local-sessions.d.ts.map +1 -0
  42. package/dist/pace/local-sessions.js +254 -0
  43. package/dist/pace/local-sessions.js.map +1 -0
  44. package/dist/pace/managed-config.d.ts +21 -0
  45. package/dist/pace/managed-config.d.ts.map +1 -0
  46. package/dist/pace/managed-config.js +102 -0
  47. package/dist/pace/managed-config.js.map +1 -0
  48. package/dist/pace/normalize.d.ts +10 -0
  49. package/dist/pace/normalize.d.ts.map +1 -0
  50. package/dist/pace/normalize.js +293 -0
  51. package/dist/pace/normalize.js.map +1 -0
  52. package/dist/pace/repository.d.ts +72 -0
  53. package/dist/pace/repository.d.ts.map +1 -0
  54. package/dist/pace/repository.js +120 -0
  55. package/dist/pace/repository.js.map +1 -0
  56. package/dist/pace/schema.d.ts +1325 -0
  57. package/dist/pace/schema.d.ts.map +1 -0
  58. package/dist/pace/schema.js +134 -0
  59. package/dist/pace/schema.js.map +1 -0
  60. package/dist/pace/session-summary.d.ts +179 -0
  61. package/dist/pace/session-summary.d.ts.map +1 -0
  62. package/dist/pace/session-summary.js +140 -0
  63. package/dist/pace/session-summary.js.map +1 -0
  64. package/dist/pace/spool.d.ts +6 -0
  65. package/dist/pace/spool.d.ts.map +1 -0
  66. package/dist/pace/spool.js +87 -0
  67. package/dist/pace/spool.js.map +1 -0
  68. package/dist/pace-runtime.d.ts +2 -0
  69. package/dist/pace-runtime.d.ts.map +1 -0
  70. package/dist/pace-runtime.js +67 -0
  71. package/dist/pace-runtime.js.map +1 -0
  72. package/package.json +5 -2
  73. package/plugin/.claude-plugin/plugin.json +9 -0
  74. package/plugin/.codex-plugin/plugin.json +21 -0
  75. package/plugin/.cursor-plugin/plugin.json +16 -0
  76. package/plugin/.mcp.json +8 -0
  77. package/plugin/README.md +15 -0
  78. package/plugin/deploy/README.md +30 -0
  79. package/plugin/gemini/GEMINI.md +3 -0
  80. package/plugin/gemini/gemini-extension.json +12 -0
  81. package/plugin/gemini/hooks/hooks.json +52 -0
  82. package/plugin/hooks/cursor-hooks.json +25 -0
  83. package/plugin/hooks/hooks.json +56 -0
  84. package/plugin/mcp.json +10 -0
  85. package/plugin/plugin.json +32 -0
  86. package/plugin/runtime/unfairly-intelligence.mjs +5513 -0
  87. package/plugin/scripts/capture.cjs +68 -0
  88. package/plugin/skills/find-company-playbook/SKILL.md +12 -0
  89. package/plugin/skills/publish-learning/SKILL.md +8 -0
@@ -0,0 +1,426 @@
1
+ import { getToken } from "../sync/credentials.js";
2
+ import fs from "node:fs/promises";
3
+ import { randomUUID } from "node:crypto";
4
+ import os from "node:os";
5
+ import path from "node:path";
6
+ import { PaceEventV3Schema } from "../pace/schema.js";
7
+ import { normalizeHookEvent } from "../pace/normalize.js";
8
+ import { appendPaceEvent, paceSpoolPath, readPaceEvents, removePaceEvents } from "../pace/spool.js";
9
+ import { currentDevicePlatform, detectPaceClients, paceDevicePath, readOrCreatePaceDevice, writePaceDevice, } from "../pace/device.js";
10
+ const DEFAULT_API = "https://app.unfairly.ai";
11
+ export const RUNTIME_VERSION = "0.8.3";
12
+ const PLUGIN_VERSION = "0.1.0";
13
+ export const INTELLIGENCE_POLICY = {
14
+ version: "metadata-v3",
15
+ mode: "metadata_only",
16
+ permitted_fields: [
17
+ "event_id", "installation_id", "session_id", "workflow_id", "occurred_at",
18
+ "source", "event_type", "evidence_level", "model_family", "tool_category",
19
+ "blocker_category", "approval_mode", "permission_mode", "duration_bucket",
20
+ "exit_code_bucket", "token_counts", "playbook_id", "playbook_version",
21
+ "repository_id", "commit_sha", "artifact_type", "outcome_state",
22
+ ],
23
+ prohibited_content: [
24
+ "prompts", "responses", "source code", "file contents", "screenshots",
25
+ "keystrokes", "clipboard", "raw commands", "arguments", "tool output",
26
+ "stdout", "stderr", "paths", "filenames", "repository names", "branches",
27
+ "URLs", "titles", "secrets", "arbitrary errors",
28
+ ],
29
+ };
30
+ async function readStdin() {
31
+ if (process.stdin.isTTY)
32
+ return {};
33
+ let raw = "";
34
+ for await (const chunk of process.stdin)
35
+ raw += String(chunk);
36
+ if (!raw.trim())
37
+ return {};
38
+ try {
39
+ return JSON.parse(raw);
40
+ }
41
+ catch {
42
+ return {};
43
+ }
44
+ }
45
+ export async function runPaceCapture(source, hookEvent) {
46
+ const device = await readOrCreatePaceDevice();
47
+ if (device.paused)
48
+ return;
49
+ const event = normalizeHookEvent({
50
+ source,
51
+ hookEvent,
52
+ payload: await readStdin(),
53
+ installationId: device.installation_id,
54
+ });
55
+ await appendPaceEvent(event);
56
+ const boundary = event.event_type === "session.started" || event.event_type === "session.ended" || event.event_type === "workflow.stopped";
57
+ // A failure here must never break the AI workflow.
58
+ if (boundary)
59
+ await runPaceSync({ flush: process.env.UNFAIRLY_PACE_NO_FLUSH !== "1" }).catch(() => undefined);
60
+ }
61
+ const SWEEP_OVERLAP_MS = 15 * 60_000;
62
+ const FIRST_SWEEP_LOOKBACK_MS = 2 * 86_400_000;
63
+ /** How far back the first sync after connecting reads local transcripts. Matches the report's window. */
64
+ export const HISTORY_BACKFILL_DAYS = 90;
65
+ /**
66
+ * Summarizes local sessions and uploads them. Does nothing until this machine
67
+ * is connected: before that there is nowhere to send summaries and no
68
+ * approved-repository list, and a session summarized without that list would
69
+ * lose its commits for good. The first sync after connecting reads the last
70
+ * {@link HISTORY_BACKFILL_DAYS} days so the report has history from day one.
71
+ */
72
+ export async function runPaceSync(options = {}) {
73
+ if (!(await paceAuthorization()))
74
+ return null;
75
+ const device = await readOrCreatePaceDevice();
76
+ const firstSync = !device.history_backfilled_at;
77
+ // Session summaries carry repository IDs and commit SHAs only for approved
78
+ // repositories, so the policy has to be current before sessions are summarized.
79
+ await refreshRepositoryPolicy({ force: firstSync }).catch(() => null);
80
+ const sweep = firstSync
81
+ ? await runPaceSweep({ sinceMs: Date.now() - HISTORY_BACKFILL_DAYS * 86_400_000, collectedVia: "backfill" })
82
+ : await runPaceSweep();
83
+ if (firstSync)
84
+ await writePaceDevice({ ...(await readOrCreatePaceDevice()), history_backfilled_at: new Date().toISOString() });
85
+ // A telemetry outage must never break the employee's AI workflow. Keep the
86
+ // durable queue and retry on the next session boundary or explicit flush.
87
+ if (options.flush !== false)
88
+ await runPaceFlush().catch(() => undefined);
89
+ return { summarized: sweep.summarized, backfilled: firstSync };
90
+ }
91
+ /** Summarizes local sessions changed since the last sweep and queues them for upload. */
92
+ export async function runPaceSweep(options = {}) {
93
+ const { sweepLocalSessions } = await import("../pace/session-summary.js");
94
+ const device = await readOrCreatePaceDevice();
95
+ const startedAt = Date.now();
96
+ const last = device.last_session_sweep_at ? Date.parse(device.last_session_sweep_at) : startedAt - FIRST_SWEEP_LOOKBACK_MS;
97
+ const result = await sweepLocalSessions({
98
+ since: options.sinceMs ?? last - SWEEP_OVERLAP_MS,
99
+ installationId: device.installation_id,
100
+ collectedVia: options.collectedVia ?? "hook",
101
+ });
102
+ await writePaceDevice({ ...(await readOrCreatePaceDevice()), last_session_sweep_at: new Date(startedAt).toISOString() });
103
+ return result;
104
+ }
105
+ /**
106
+ * The Authorization header for Intelligence uploads: this installation's own
107
+ * collector credential (plugin install path) or, failing that, the signed-in
108
+ * CLI token.
109
+ */
110
+ export async function paceAuthorization() {
111
+ const { collectorAuthorization, readCollectorCredential } = await import("../pace/enroll.js");
112
+ const credential = await readCollectorCredential();
113
+ if (credential)
114
+ return collectorAuthorization(credential);
115
+ const token = await getToken();
116
+ return token ? `Bearer ${token}` : null;
117
+ }
118
+ function apiBase() {
119
+ return (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
120
+ }
121
+ /** Pulls the organization's approved repositories so sessions can carry repository IDs and commit SHAs. */
122
+ export async function refreshRepositoryPolicy(options = {}) {
123
+ const device = await readOrCreatePaceDevice();
124
+ const fresh = device.repository_policy_refreshed_at && Date.now() - Date.parse(device.repository_policy_refreshed_at) < 3_600_000;
125
+ if (fresh && !options.force)
126
+ return null;
127
+ const authorization = await paceAuthorization();
128
+ if (!authorization)
129
+ return null;
130
+ const response = await fetch(`${apiBase()}/api/ai-pace/repository-policy`, { headers: { Authorization: authorization } });
131
+ if (!response.ok)
132
+ return null;
133
+ const { parseRepositoryPolicy, repositoryPolicyPath } = await import("../pace/repository.js");
134
+ const policy = parseRepositoryPolicy(await response.json());
135
+ const file = repositoryPolicyPath();
136
+ await fs.mkdir(path.dirname(file), { recursive: true, mode: 0o700 });
137
+ await fs.writeFile(file, `${JSON.stringify(policy, null, 2)}\n`, { encoding: "utf8", mode: 0o600 });
138
+ await writePaceDevice({ ...(await readOrCreatePaceDevice()), repository_policy_refreshed_at: new Date().toISOString() });
139
+ return { repositories: policy.mappings.length };
140
+ }
141
+ async function uploadSessionSummaries(authorization) {
142
+ const { readSessionSpool, removeSessionSummaries } = await import("../pace/session-summary.js");
143
+ let sent = 0;
144
+ for (let round = 0; round < 50; round += 1) {
145
+ const pending = Object.values(await readSessionSpool()).slice(0, 100);
146
+ if (!pending.length)
147
+ break;
148
+ const response = await fetch(`${apiBase()}/api/ai-pace/sessions`, {
149
+ method: "POST",
150
+ headers: { Authorization: authorization, "Content-Type": "application/json" },
151
+ body: JSON.stringify({ sessions: pending }),
152
+ });
153
+ if (!response.ok)
154
+ throw new Error(`Unfairly Intelligence session upload failed (${response.status})`);
155
+ await removeSessionSummaries(pending);
156
+ sent += pending.length;
157
+ }
158
+ return { sent, remaining: Object.keys(await readSessionSpool()).length };
159
+ }
160
+ /** Summarizes and uploads the last `days` of local sessions so Intelligence has history from day one. */
161
+ export async function runPaceBackfill(days) {
162
+ const policy = await refreshRepositoryPolicy({ force: true }).catch(() => null);
163
+ // Uploads are only accepted from a registered, active installation.
164
+ await runPaceHeartbeat();
165
+ const sweep = await runPaceSweep({ sinceMs: Date.now() - days * 86_400_000, collectedVia: "backfill" });
166
+ const authorization = await paceAuthorization();
167
+ if (!authorization)
168
+ throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
169
+ const upload = await uploadSessionSummaries(authorization);
170
+ return { summarized: sweep.summarized, uploaded: upload.sent, remaining: upload.remaining, approved_repositories: policy?.repositories ?? null };
171
+ }
172
+ export async function runPaceFlush() {
173
+ const authorization = await paceAuthorization();
174
+ if (!authorization)
175
+ throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
176
+ await refreshRepositoryPolicy().catch(() => null);
177
+ const sessions = await uploadSessionSummaries(authorization);
178
+ const events = await readPaceEvents();
179
+ if (!events.length)
180
+ return { sent: 0, remaining: 0, sessions_sent: sessions.sent };
181
+ const apiUrl = (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
182
+ const device = await readOrCreatePaceDevice();
183
+ const attributedEvents = events.map((event) => ({
184
+ ...event,
185
+ installation_id: event.installation_id ?? device.installation_id,
186
+ }));
187
+ const response = await fetch(`${apiUrl}/api/ai-pace/events`, {
188
+ method: "POST",
189
+ headers: {
190
+ Authorization: authorization,
191
+ "Content-Type": "application/json",
192
+ ...(device.attestation ? { "X-AI-Pace-Attestation": device.attestation } : {}),
193
+ },
194
+ body: JSON.stringify({ events: attributedEvents }),
195
+ });
196
+ if (!response.ok)
197
+ throw new Error(`Unfairly Intelligence upload failed (${response.status})`);
198
+ await removePaceEvents(new Set(events.map((event) => event.event_id)));
199
+ const remaining = (await readPaceEvents()).length;
200
+ await writePaceDevice({ ...(await readOrCreatePaceDevice()), last_upload_at: new Date().toISOString(), collection_policy_version: "metadata-v3" });
201
+ return { sent: events.length, remaining, sessions_sent: sessions.sent };
202
+ }
203
+ export async function runPaceHeartbeat() {
204
+ const authorization = await paceAuthorization();
205
+ if (!authorization)
206
+ throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
207
+ const device = await readOrCreatePaceDevice();
208
+ const clients = await detectPaceClients();
209
+ const apiUrl = (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
210
+ const response = await fetch(`${apiUrl}/api/ai-pace/heartbeat`, {
211
+ method: "POST",
212
+ headers: {
213
+ Authorization: authorization,
214
+ "Content-Type": "application/json",
215
+ },
216
+ body: JSON.stringify({
217
+ installation_id: device.installation_id,
218
+ agent_version: RUNTIME_VERSION,
219
+ runtime_version: RUNTIME_VERSION,
220
+ plugin_version: PLUGIN_VERSION,
221
+ collection_policy_version: "metadata-v3",
222
+ ...currentDevicePlatform(),
223
+ clients,
224
+ }),
225
+ });
226
+ if (!response.ok)
227
+ throw new Error(`Unfairly Intelligence heartbeat failed (${response.status})`);
228
+ const body = await response.json();
229
+ if (!body.attestation || !body.expires_at)
230
+ throw new Error("Unfairly Intelligence heartbeat returned no attestation");
231
+ await writePaceDevice({
232
+ ...device,
233
+ attestation: body.attestation,
234
+ attestation_expires_at: body.expires_at,
235
+ collection_policy_version: "metadata-v3",
236
+ });
237
+ return { installation_id: device.installation_id, clients };
238
+ }
239
+ export async function runPaceInstall() {
240
+ const clients = await detectPaceClients();
241
+ const { installIntelligence } = await import("../pace/install.js");
242
+ const installed = await installIntelligence({ version: RUNTIME_VERSION, clients });
243
+ const device = await readOrCreatePaceDevice();
244
+ await writePaceDevice({
245
+ ...device,
246
+ collection_policy_version: "metadata-v3",
247
+ intelligence_install: {
248
+ version: RUNTIME_VERSION,
249
+ runtime_entrypoint: installed.runtime_entrypoint,
250
+ marketplace_root: installed.marketplace_root,
251
+ owned_paths: installed.owned_paths,
252
+ activated_clients: installed.activations.filter((item) => item.status === "activated").map((item) => item.client),
253
+ installed_at: new Date().toISOString(),
254
+ },
255
+ });
256
+ await runPaceHeartbeat();
257
+ return {
258
+ runtime_entrypoint: installed.runtime_entrypoint,
259
+ marketplace_root: installed.marketplace_root,
260
+ activations: installed.activations,
261
+ verification: { heartbeat: "ok", live_events: "pending_first_session" },
262
+ };
263
+ }
264
+ export async function runPaceStatus() {
265
+ const queued = (await readPaceEvents()).length;
266
+ const device = await readOrCreatePaceDevice();
267
+ const clients = await detectPaceClients();
268
+ process.stdout.write(JSON.stringify({
269
+ enabled: !device.paused,
270
+ paused: Boolean(device.paused),
271
+ installation_id: device.installation_id,
272
+ attestation_expires_at: device.attestation_expires_at ?? null,
273
+ last_upload_at: device.last_upload_at ?? null,
274
+ runtime_version: RUNTIME_VERSION,
275
+ plugin_version: PLUGIN_VERSION,
276
+ collection_policy_version: device.collection_policy_version ?? INTELLIGENCE_POLICY.version,
277
+ queued,
278
+ spool: paceSpoolPath(),
279
+ clients,
280
+ }, null, 2) + "\n");
281
+ }
282
+ export async function runPaceConfig(input) {
283
+ const { writeManagedConfigs } = await import("../pace/managed-config.js");
284
+ const files = await writeManagedConfigs(input);
285
+ const device = await readOrCreatePaceDevice();
286
+ await writePaceDevice({ ...device, managed_files: files, collection_policy_version: "metadata-v3" });
287
+ return files;
288
+ }
289
+ export function runPacePolicy() {
290
+ return INTELLIGENCE_POLICY;
291
+ }
292
+ export async function runPacePause(paused) {
293
+ const device = await readOrCreatePaceDevice();
294
+ await writePaceDevice({ ...device, paused });
295
+ return { paused };
296
+ }
297
+ export async function runPaceUninstall() {
298
+ const device = await readOrCreatePaceDevice();
299
+ const activated = new Set(device.intelligence_install?.activated_clients ?? []);
300
+ const { spawnSync } = await import("node:child_process");
301
+ if (activated.has("codex")) {
302
+ spawnSync("codex", ["plugin", "remove", "ai-pace@unfairly-intelligence", "--json"], { encoding: "utf8", timeout: 30_000 });
303
+ spawnSync("codex", ["plugin", "marketplace", "remove", "unfairly-intelligence"], { encoding: "utf8", timeout: 30_000 });
304
+ }
305
+ if (activated.has("claude_code")) {
306
+ spawnSync("claude", ["plugin", "uninstall", "ai-pace@unfairly-intelligence", "--scope", "user"], { encoding: "utf8", timeout: 30_000 });
307
+ spawnSync("claude", ["plugin", "marketplace", "remove", "unfairly-intelligence", "--scope", "user"], { encoding: "utf8", timeout: 30_000 });
308
+ }
309
+ const permitted = new Set([
310
+ "codex-requirements.toml", "claude-settings.json", "gemini-settings.json",
311
+ "evidence-policy.json", "repository-policy.json",
312
+ ]);
313
+ let removed = 0;
314
+ for (const file of device.managed_files ?? []) {
315
+ const name = file.split(/[\\/]/).at(-1);
316
+ if (!name || !permitted.has(name))
317
+ continue;
318
+ await fs.unlink(file).then(() => { removed += 1; }).catch((error) => {
319
+ if (error.code !== "ENOENT")
320
+ throw error;
321
+ });
322
+ }
323
+ const safeOwnedRoots = [
324
+ path.join(os.homedir(), ".unfairly"),
325
+ path.join(os.homedir(), ".cursor", "plugins", "local", "ai-pace"),
326
+ path.join(os.homedir(), ".gemini", "extensions", "unfairly-intelligence"),
327
+ ];
328
+ for (const ownedPath of device.intelligence_install?.owned_paths ?? []) {
329
+ const resolved = path.resolve(ownedPath);
330
+ if (!safeOwnedRoots.some((root) => resolved === root || resolved.startsWith(`${root}${path.sep}`)))
331
+ continue;
332
+ await fs.rm(resolved, { recursive: true, force: true });
333
+ removed += 1;
334
+ }
335
+ await fs.unlink(paceSpoolPath()).catch((error) => {
336
+ if (error.code !== "ENOENT")
337
+ throw error;
338
+ });
339
+ await fs.unlink(paceDevicePath()).catch((error) => {
340
+ if (error.code !== "ENOENT" && error.code !== "EISDIR")
341
+ throw error;
342
+ });
343
+ return { removed_files: removed, retained_global_credentials: true };
344
+ }
345
+ export async function runPaceEvidenceScan(policyPath) {
346
+ const { scanLocalEvidence } = await import("../pace/local-evidence.js");
347
+ const device = await readOrCreatePaceDevice();
348
+ const result = await scanLocalEvidence({ policyPath, installationId: device.installation_id });
349
+ await Promise.all(result.events.map((event) => appendPaceEvent(event)));
350
+ return { observed: result.events.length, baseline_roots: result.baselineRoots, queued: (await readPaceEvents()).length };
351
+ }
352
+ export async function runPaceEvidenceWatch(policyPath) {
353
+ const { readLocalEvidencePolicy } = await import("../pace/local-evidence.js");
354
+ const policy = await readLocalEvidencePolicy(policyPath);
355
+ process.stdout.write(`Unfairly Intelligence is watching ${policy.roots.length} approved local evidence root(s).\n`);
356
+ const scan = async () => {
357
+ const result = await runPaceEvidenceScan(policyPath);
358
+ if (result.observed)
359
+ await runPaceFlush().catch(() => undefined);
360
+ };
361
+ await scan();
362
+ await new Promise((resolve) => {
363
+ const timer = setInterval(() => { void scan(); }, policy.scan_interval_seconds * 1000);
364
+ const stop = () => { clearInterval(timer); resolve(); };
365
+ process.once("SIGINT", stop);
366
+ process.once("SIGTERM", stop);
367
+ });
368
+ }
369
+ export async function runPacePlaybooks(query) {
370
+ const token = await getToken();
371
+ if (!token)
372
+ throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
373
+ const apiUrl = (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
374
+ const params = query?.trim() ? `?q=${encodeURIComponent(query.trim())}` : "";
375
+ const response = await fetch(`${apiUrl}/api/ai-pace/playbooks${params}`, {
376
+ headers: { Authorization: `Bearer ${token}`, Accept: "application/json" },
377
+ });
378
+ if (!response.ok)
379
+ throw new Error(`Unfairly Intelligence playbooks failed (${response.status})`);
380
+ const body = await response.json();
381
+ return body.playbooks ?? [];
382
+ }
383
+ export async function runPacePlaybookUse(playbookId, playbookVersion) {
384
+ const token = await getToken();
385
+ if (!token)
386
+ throw new Error("Unfairly Intelligence is not enrolled. Run `unfairly setup` first.");
387
+ const device = await readOrCreatePaceDevice();
388
+ if (device.paused)
389
+ throw new Error("Unfairly Intelligence is paused. Run `unfairly intelligence resume` first.");
390
+ const workflowId = randomUUID();
391
+ const sourceRecordId = randomUUID();
392
+ const event = PaceEventV3Schema.parse({
393
+ schema_version: 3,
394
+ collection_policy_version: "metadata-v3",
395
+ event_id: randomUUID(),
396
+ installation_id: device.installation_id,
397
+ occurred_at: new Date().toISOString(),
398
+ source: "unknown",
399
+ event_type: "session.started",
400
+ evidence_level: "exact",
401
+ session_id: sourceRecordId,
402
+ workflow_id: workflowId,
403
+ playbook_id: playbookId,
404
+ playbook_version: playbookVersion,
405
+ attributes: { client_event: "session_start" },
406
+ });
407
+ await appendPaceEvent(event);
408
+ const apiUrl = (process.env.UNFAIRLY_API_URL ?? DEFAULT_API).replace(/\/$/, "");
409
+ const response = await fetch(`${apiUrl}/api/ai-pace/playbooks`, {
410
+ method: "POST",
411
+ headers: { Authorization: `Bearer ${token}`, "Content-Type": "application/json" },
412
+ body: JSON.stringify({
413
+ action: "record",
414
+ playbook_id: playbookId,
415
+ playbook_version: Number(playbookVersion),
416
+ event_type: "started",
417
+ source_record_id: sourceRecordId,
418
+ workflow_id: workflowId,
419
+ }),
420
+ });
421
+ // The event remains safely spooled when the marketplace endpoint is offline.
422
+ if (!response.ok && response.status < 500)
423
+ throw new Error(`Unfairly Intelligence playbook use failed (${response.status})`);
424
+ return { workflow_id: workflowId, queued: (await readPaceEvents()).length };
425
+ }
426
+ //# sourceMappingURL=pace.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pace.js","sourceRoot":"","sources":["../../src/cmd/pace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,EACL,qBAAqB,EACrB,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,WAAW,GAAG,yBAAyB,CAAC;AAC9C,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAC;AACvC,MAAM,cAAc,GAAG,OAAO,CAAC;AAC/B,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,OAAO,EAAE,aAAsB;IAC/B,IAAI,EAAE,eAAwB;IAC9B,gBAAgB,EAAE;QAChB,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa;QACzE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,eAAe;QACzE,kBAAkB,EAAE,eAAe,EAAE,iBAAiB,EAAE,iBAAiB;QACzE,kBAAkB,EAAE,cAAc,EAAE,aAAa,EAAE,kBAAkB;QACrE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,eAAe;KAChE;IACD,kBAAkB,EAAE;QAClB,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa;QACrE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,WAAW,EAAE,aAAa;QACrE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU;QACxE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,kBAAkB;KAChD;CACF,CAAC;AAEF,KAAK,UAAU,SAAS;IACtB,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK;QAAE,GAAG,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc,EAAE,SAAiB;IACpE,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO;IAC1B,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,MAAM;QACN,SAAS;QACT,OAAO,EAAE,MAAM,SAAS,EAAE;QAC1B,cAAc,EAAE,MAAM,CAAC,eAAe;KACvC,CAAC,CAAC;IACH,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,KAAK,iBAAiB,IAAI,KAAK,CAAC,UAAU,KAAK,eAAe,IAAI,KAAK,CAAC,UAAU,KAAK,kBAAkB,CAAC;IAC3I,mDAAmD;IACnD,IAAI,QAAQ;QAAE,MAAM,WAAW,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,KAAK,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAChH,CAAC;AAED,MAAM,gBAAgB,GAAG,EAAE,GAAG,MAAM,CAAC;AACrC,MAAM,uBAAuB,GAAG,CAAC,GAAG,UAAU,CAAC;AAC/C,yGAAyG;AACzG,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAExC;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAA+B,EAAE;IACjE,IAAI,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAChD,2EAA2E;IAC3E,gFAAgF;IAChF,MAAM,uBAAuB,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,SAAS;QACrB,CAAC,CAAC,MAAM,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,qBAAqB,GAAG,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC;QAC5G,CAAC,CAAC,MAAM,YAAY,EAAE,CAAC;IACzB,IAAI,SAAS;QAAE,MAAM,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,sBAAsB,EAAE,CAAC,EAAE,qBAAqB,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/H,2EAA2E;IAC3E,0EAA0E;IAC1E,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK;QAAE,MAAM,YAAY,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACzE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;AACjE,CAAC;AAED,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,UAAoE,EAAE;IACvG,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,uBAAuB,CAAC;IAC3H,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC;QACtC,KAAK,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,GAAG,gBAAgB;QACjD,cAAc,EAAE,MAAM,CAAC,eAAe;QACtC,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,MAAM;KAC7C,CAAC,CAAC;IACH,MAAM,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,sBAAsB,EAAE,CAAC,EAAE,qBAAqB,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACzH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,MAAM,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC9F,MAAM,UAAU,GAAG,MAAM,uBAAuB,EAAE,CAAC;IACnD,IAAI,UAAU;QAAE,OAAO,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAC1D,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,OAAO,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED,SAAS,OAAO;IACd,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC1E,CAAC;AAED,2GAA2G;AAC3G,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAA+B,EAAE;IAC7E,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,8BAA8B,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,GAAG,SAAS,CAAC;IAClI,IAAI,KAAK,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,aAAa,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAChD,IAAI,CAAC,aAAa;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,EAAE,gCAAgC,EAAE,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IAC1H,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;IAC9F,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,oBAAoB,EAAE,CAAC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACpG,MAAM,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,sBAAsB,EAAE,CAAC,EAAE,8BAA8B,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACzH,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;AAClD,CAAC;AAED,KAAK,UAAU,sBAAsB,CAAC,aAAqB;IACzD,MAAM,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAChG,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACtE,IAAI,CAAC,OAAO,CAAC,MAAM;YAAE,MAAM;QAC3B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,EAAE,uBAAuB,EAAE;YAChE,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC7E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;SAC5C,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACtG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAC3E,CAAC;AAED,yGAAyG;AACzG,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY;IAChD,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAChF,oEAAoE;IACpE,MAAM,gBAAgB,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;IACxG,MAAM,aAAa,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAChD,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1G,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAC3D,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,YAAY,IAAI,IAAI,EAAE,CAAC;AACnJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,aAAa,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAChD,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1G,MAAM,uBAAuB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,cAAc,EAAE,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnF,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9C,GAAG,KAAK;QACR,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe;KACjE,CAAC,CAAC,CAAC;IACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,qBAAqB,EAAE;QAC3D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,aAAa;YAC5B,cAAc,EAAE,kBAAkB;YAClC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,uBAAuB,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/E;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;KACnD,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9F,MAAM,gBAAgB,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;IAClD,MAAM,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,sBAAsB,EAAE,CAAC,EAAE,cAAc,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,yBAAyB,EAAE,aAAa,EAAE,CAAC,CAAC;IACnJ,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC1E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAIpC,MAAM,aAAa,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAChD,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAC1G,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAC1C,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,wBAAwB,EAAE;QAC9D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,aAAa,EAAE,aAAa;YAC5B,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,aAAa,EAAE,eAAe;YAC9B,eAAe,EAAE,eAAe;YAChC,cAAc,EAAE,cAAc;YAC9B,yBAAyB,EAAE,aAAa;YACxC,GAAG,qBAAqB,EAAE;YAC1B,OAAO;SACR,CAAC;KACH,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAmD,CAAC;IACpF,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACtH,MAAM,eAAe,CAAC;QACpB,GAAG,MAAM;QACT,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,sBAAsB,EAAE,IAAI,CAAC,UAAU;QACvC,yBAAyB,EAAE,aAAa;KACzC,CAAC,CAAC;IACH,OAAO,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAMlC,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAC1C,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACnE,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC;IACnF,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,eAAe,CAAC;QACpB,GAAG,MAAM;QACT,yBAAyB,EAAE,aAAa;QACxC,oBAAoB,EAAE;YACpB,OAAO,EAAE,eAAe;YACxB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;YAChD,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;YAC5C,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,iBAAiB,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC;YACjH,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvC;KACF,CAAC,CAAC;IACH,MAAM,gBAAgB,EAAE,CAAC;IACzB,OAAO;QACL,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;QAChD,gBAAgB,EAAE,SAAS,CAAC,gBAAgB;QAC5C,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,EAAE;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,MAAM,MAAM,GAAG,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,OAAO,GAAG,MAAM,iBAAiB,EAAE,CAAC;IAC1C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;QAClC,OAAO,EAAE,CAAC,MAAM,CAAC,MAAM;QACvB,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;QAC9B,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,IAAI,IAAI;QAC7D,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,IAAI;QAC7C,eAAe,EAAE,eAAe;QAChC,cAAc,EAAE,cAAc;QAC9B,yBAAyB,EAAE,MAAM,CAAC,yBAAyB,IAAI,mBAAmB,CAAC,OAAO;QAC1F,MAAM;QACN,KAAK,EAAE,aAAa,EAAE;QACtB,OAAO;KACR,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,KAMnC;IACC,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC/C,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,eAAe,CAAC,EAAE,GAAG,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,yBAAyB,EAAE,aAAa,EAAE,CAAC,CAAC;IACrG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAe;IAChD,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,eAAe,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7C,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,oBAAoB,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;IAChF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACzD,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,+BAA+B,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3H,SAAS,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1H,CAAC;IACD,IAAI,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACxI,SAAS,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9I,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;QACxB,yBAAyB,EAAE,sBAAsB,EAAE,sBAAsB;QACzE,sBAAsB,EAAE,wBAAwB;KACjD,CAAC,CAAC;IACH,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,aAAa,IAAI,EAAE,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAC5C,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAA4B,EAAE,EAAE;YACzF,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAC;QAC3C,CAAC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,cAAc,GAAG;QACrB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC;QACjE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,YAAY,EAAE,uBAAuB,CAAC;KAC1E,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,oBAAoB,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAAE,SAAS;QAC7G,MAAM,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,CAAC;IACf,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAA4B,EAAE,EAAE;QACtE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;IAC3C,CAAC,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAA4B,EAAE,EAAE;QACvE,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAC;IACtE,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,2BAA2B,EAAE,IAAI,EAAE,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,UAAmB;IAC3D,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;IAC/F,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAC3H,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,UAAmB;IAC5D,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IAC9E,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,UAAU,CAAC,CAAC;IACzD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,MAAM,CAAC,KAAK,CAAC,MAAM,qCAAqC,CAAC,CAAC;IACpH,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,QAAQ;YAAE,MAAM,YAAY,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACnE,CAAC,CAAC;IACF,MAAM,IAAI,EAAE,CAAC;IACb,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,GAAG,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,KAAc;IACnD,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAClG,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,yBAAyB,MAAM,EAAE,EAAE;QACvE,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;KAC1E,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAA+B,CAAC;IAChE,OAAO,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,UAAkB,EAAE,eAAuB;IAClF,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IAClG,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,IAAI,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IACjH,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;IAChC,MAAM,cAAc,GAAG,UAAU,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC;QACpC,cAAc,EAAE,CAAC;QACjB,yBAAyB,EAAE,aAAa;QACxC,QAAQ,EAAE,UAAU,EAAE;QACtB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,MAAM,EAAE,SAAS;QACjB,UAAU,EAAE,iBAAiB;QAC7B,cAAc,EAAE,OAAO;QACvB,UAAU,EAAE,cAAc;QAC1B,WAAW,EAAE,UAAU;QACvB,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,eAAe;QACjC,UAAU,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE;KAC9C,CAAC,CAAC;IACH,MAAM,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,MAAM,wBAAwB,EAAE;QAC9D,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACjF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,UAAU;YACvB,gBAAgB,EAAE,MAAM,CAAC,eAAe,CAAC;YACzC,UAAU,EAAE,SAAS;YACrB,gBAAgB,EAAE,cAAc;YAChC,WAAW,EAAE,UAAU;SACxB,CAAC;KACH,CAAC,CAAC;IACH,6EAA6E;IAC7E,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7H,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,MAAM,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;AAC9E,CAAC"}
@@ -6,6 +6,8 @@ export type SetupOptions = {
6
6
  chainInit?: boolean;
7
7
  /** Skip the workspace-bind confirmation prompt. */
8
8
  yes?: boolean;
9
+ /** Organization ID from a team's install invite, so sessions report to that org. */
10
+ org?: string;
9
11
  };
10
12
  export type SetupOutcome = {
11
13
  ok: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cmd/setup.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAA0B,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAM9F,MAAM,MAAM,YAAY,GAAG;IACzB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mDAAmD;IACnD,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE;QACL,aAAa,EAAE,mBAAmB,CAAC;QACnC,UAAU,EAAE,gBAAgB,CAAC;QAC7B,KAAK,EAAE,WAAW,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,wBAAsB,QAAQ,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CA2K7E"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/cmd/setup.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAuB,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAA0B,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAM9F,MAAM,MAAM,YAAY,GAAG;IACzB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mDAAmD;IACnD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,oFAAoF;IACpF,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,EAAE;QACL,aAAa,EAAE,mBAAmB,CAAC;QACnC,UAAU,EAAE,gBAAgB,CAAC;QAC7B,KAAK,EAAE,WAAW,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,wBAAsB,QAAQ,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,YAAY,CAAC,CAwL7E"}
package/dist/cmd/setup.js CHANGED
@@ -17,9 +17,9 @@ export async function runSetup(opts = {}) {
17
17
  write(`${c.coral("▶")} player 2 booting…`);
18
18
  write("");
19
19
  // [1/5] AUTH
20
- write(stepHeader(1, 5, "AUTH", ui));
20
+ write(stepHeader(1, 6, "AUTH", ui));
21
21
  write(result("progress", "browser opening — click to authorize", ui));
22
- const token = await browserAuthFlow(apiUrl, { tokenName: "unfairly setup" });
22
+ const token = await browserAuthFlow(apiUrl, { tokenName: "unfairly setup", org: opts.org });
23
23
  if (!token) {
24
24
  write(result("err", "browser flow cancelled or timed out. Run `unfairly` again.", ui));
25
25
  process.exit(1);
@@ -28,7 +28,7 @@ export async function runSetup(opts = {}) {
28
28
  write(result("ok", `token minted (${token.slice(0, 8)}…) · cached in keychain`, ui));
29
29
  write("");
30
30
  // [2/5] SHELL ENV
31
- write(stepHeader(2, 5, "SHELL ENV", ui));
31
+ write(stepHeader(2, 6, "SHELL ENV", ui));
32
32
  const env = await writeShellEnv(token);
33
33
  if (env.shell === "unknown") {
34
34
  write(result("warn", "couldn't detect $SHELL — add manually: export UNFAIRLY_MCP_TOKEN=…", ui));
@@ -42,12 +42,12 @@ export async function runSetup(opts = {}) {
42
42
  // Claude Desktop config should still get Claude Code + Codex wired (the
43
43
  // partial success path is far better than zero hosts). We exit non-zero
44
44
  // at the end of setup so the user knows something needs attention.
45
- write(stepHeader(3, 5, "CLAUDE DESKTOP", ui));
45
+ write(stepHeader(3, 6, "CLAUDE DESKTOP", ui));
46
46
  const cd = await configureClaudeDesktop(apiUrl, token);
47
47
  write(formatClaudeDesktop(cd, ui));
48
48
  write("");
49
49
  // [4/5] CLAUDE CODE · CODEX
50
- write(stepHeader(4, 5, "CLAUDE CODE · CODEX", ui));
50
+ write(stepHeader(4, 6, "CLAUDE CODE · CODEX", ui));
51
51
  const cc = await configureClaudeCode(apiUrl, token);
52
52
  write(formatClaudeCode(cc, ui));
53
53
  const codex = await configureCodex(apiUrl);
@@ -57,7 +57,7 @@ export async function runSetup(opts = {}) {
57
57
  // auth value it will actually send and POSTing through it. Catching this
58
58
  // per-host (rather than just trusting the freshly-minted token) is how we
59
59
  // make sure host-wiring bugs don't silently ship to users.
60
- write(stepHeader(5, 5, "HANDSHAKE", ui));
60
+ write(stepHeader(5, 6, "HANDSHAKE", ui));
61
61
  const hsErrors = [];
62
62
  let hsRan = 0;
63
63
  if (cd.status === "configured") {
@@ -93,6 +93,20 @@ export async function runSetup(opts = {}) {
93
93
  process.exit(2);
94
94
  }
95
95
  write("");
96
+ write(stepHeader(6, 6, "UNFAIRLY INTELLIGENCE", ui));
97
+ try {
98
+ const { runPaceInstall } = await import("./pace.js");
99
+ const intelligence = await runPaceInstall();
100
+ for (const activation of intelligence.activations) {
101
+ write(result(activation.status === "activated" ? "ok" : "skip", `${activation.client} · ${activation.detail}`, ui));
102
+ }
103
+ write(result("ok", "metadata collector enrolled · live verification completes on the first AI session", ui));
104
+ }
105
+ catch (error) {
106
+ write(result("err", `collector install failed · ${error.message}`, ui));
107
+ process.exit(2);
108
+ }
109
+ write("");
96
110
  write(divider(ui));
97
111
  write("");
98
112
  // If any host write surfaced a real error (not "not-installed"), warn the
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cmd/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/cmd/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAoB,MAAM,mBAAmB,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAyB,MAAM,yBAAyB,CAAC;AACrF,OAAO,EAAE,sBAAsB,EAA4B,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,WAAW,GAAG,yBAAyB,CAAC;AAqB9C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAqB,EAAE;IACpD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,WAAW,CAAC;IAC3D,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;IACvC,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE5D,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;IAC3C,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,aAAa;IACb,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;IACpC,KAAK,CAAC,MAAM,CAAC,UAAU,EAAE,sCAAsC,EAAE,EAAE,CAAC,CAAC,CAAC;IACtE,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,4DAA4D,EAAE,EAAE,CAAC,CAAC,CAAC;QACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtB,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC,CAAC;IACrF,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,kBAAkB;IAClB,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC5B,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oEAAoE,EAAE,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,GAAG,CAAC,IAAI,6BAA6B,EAAE,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,uBAAuB;IACvB,4EAA4E;IAC5E,wEAAwE;IACxE,wEAAwE;IACxE,mEAAmE;IACnE,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvD,KAAK,CAAC,mBAAmB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACnC,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,4BAA4B;IAC5B,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC,CAAC;IACnD,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACpD,KAAK,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;IAC3C,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;IAC9B,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,wEAAwE;IACxE,yEAAyE;IACzE,0EAA0E;IAC1E,2DAA2D;IAC3D,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,EAAE,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAC/B,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;QAChD,KAAK,CAAC,eAAe,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,IAAI,EAAE,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAC/B,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC7C,KAAK,CAAC,eAAe,CAAC,aAAa,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAC7C,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;QAClC,KAAK,EAAE,CAAC;QACR,MAAM,CAAC,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACrD,KAAK,CAAC,eAAe,CAAC,qBAAqB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,qEAAqE;QACrE,2EAA2E;QAC3E,oEAAoE;QACpE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,wGAAwG,EAAE,EAAE,CAAC,CAAC,CAAC;QACpI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,MAAM,uCAAuC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;QACrD,MAAM,YAAY,GAAG,MAAM,cAAc,EAAE,CAAC;QAC5C,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;YAClD,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,MAAM,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACtH,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,mFAAmF,EAAE,EAAE,CAAC,CAAC,CAAC;IAC/G,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,8BAA+B,KAAe,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;IACnB,KAAK,CAAC,EAAE,CAAC,CAAC;IAEV,0EAA0E;IAC1E,2EAA2E;IAC3E,0EAA0E;IAC1E,uEAAuE;IACvE,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5E,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;IACzE,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,UAAU,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,MAAM,8DAA8D,EAAE,EAAE,CAAC,CAAC,CAAC;QAC9G,KAAK,MAAM,CAAC,IAAI,UAAU;YAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAChE,KAAK,CAAC,EAAE,CAAC,CAAC;IACZ,CAAC;IAED,uDAAuD;IACvD,IAAI,cAAc,GAAoD,IAAI,CAAC;IAC3E,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACnD,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC3D,IAAI,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;gBACnE,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC7E,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAC9E,EAAE,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBACnC,UAAU,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC;YACpD,CAAC;YACD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,CAAC;gBAC9C,MAAM,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC;oBACH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;oBAC7D,MAAM,CAAC,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC5C,IAAI,CAAC,EAAE,CAAC;wBACN,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;wBAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EACxC,CAAC,CACF,CAAC;wBACF,cAAc,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC;oBAC5C,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,sBAAsB;gBACxB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,sEAAsE,EAAE,EAAE,CAAC,CAAC,CAAC;YACpG,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,WAAW,CACtB;QACE,UAAU,EAAE,cAAc,EAAE,UAAU,IAAI,CAAC;QAC3C,QAAQ,EAAE,cAAc,EAAE,QAAQ,IAAI,CAAC;QACvC,UAAU,EAAE,IAAI;QAChB,IAAI,EAAE,oCAAoC;KAC3C,EACD,EAAE,CACH,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,CAAC;IACZ,KAAK,CAAC,EAAE,CAAC,CAAC;IACV,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;IAExG,uEAAuE;IACvE,sEAAsE;IACtE,wCAAwC;IACxC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,KAAK;QACL,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,KAAK,EAAE;KACpD,CAAC;AACJ,CAAC;AAED,qBAAqB;AAErB,SAAS,mBAAmB,CAAC,CAAsB,EAAE,EAAkC;IACrF,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,KAAK,eAAe;YAClB,OAAO,MAAM,CAAC,MAAM,EAAE,gCAAgC,CAAC,CAAC,IAAI,wBAAwB,EAAE,EAAE,CAAC,CAAC;QAC5F,KAAK,OAAO;YACV,OAAO,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAmB,EAAE,EAAkC;IAC/E,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,KAAK,eAAe;YAClB,OAAO,MAAM,CAAC,MAAM,EAAE,4CAA4C,EAAE,EAAE,CAAC,CAAC;QAC1E,KAAK,OAAO;YACV,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,CAAc,EAAE,EAAkC;IACrE,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;QACjB,KAAK,YAAY;YACf,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACvC,KAAK,eAAe;YAClB,OAAO,MAAM,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/D,KAAK,OAAO;YACV,OAAO,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAID,SAAS,eAAe,CACtB,IAAY,EACZ,CAAkB,EAClB,EAAkC;IAElC,IAAI,CAAC,CAAC,EAAE;QAAE,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,+BAA+B,EAAE,EAAE,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,yEAAyE;AACzE,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,aAAqB;IAC1D,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC;IACnD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,aAAa;gBAC5B,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,qCAAqC;aAC9C;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,OAAO,EAAE,KAAK;gBACd,EAAE,EAAE,CAAC;gBACL,MAAM,EAAE,YAAY;gBACpB,MAAM,EAAE;oBACN,eAAe,EAAE,YAAY;oBAC7B,YAAY,EAAE,EAAE;oBAChB,UAAU,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,EAAE;iBACzD;aACF,CAAC;SACH,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5E,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACpE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,2BAA2B,EAAE,CAAC;QAC7D,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAG,CAAW,CAAC,OAAO,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,uBAAuB,CAAC,MAAc;IACnD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAClE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;IACvE,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAiB,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,GAA8E,CAAC;IACnF,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAkB,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC;IACzE,CAAC;IACD,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC;IAC9D,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,wCAAwC,EAAE,CAAC;IACnF,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,qDAAqD;SAC/D,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,oBAAoB,CAAC,MAAc;IAChD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAC/D,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAiB,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,GAMH,CAAC;IACF,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAkB,CAAW,CAAC,OAAO,EAAE,EAAE,CAAC;IACzE,CAAC;IACD,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC;IAC3C,MAAM,YAAY,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC;IACzE,MAAM,IAAI,GAAG,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,OAAO,EAAE,aAAa,CAAC;IACjE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE,0DAA0D;SACpE,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,qBAAqB,CAAC,MAAc,EAAE,KAAa;IAChE,OAAO,OAAO,CAAC,MAAM,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;AAC5C,CAAC"}