salt-agent-sdk 0.21.0 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -3
- package/dist/actions.d.ts.map +1 -1
- package/dist/actions.js +72 -1
- package/dist/actions.js.map +1 -1
- package/dist/callBundle.d.ts +90 -0
- package/dist/callBundle.d.ts.map +1 -0
- package/dist/callBundle.js +199 -0
- package/dist/callBundle.js.map +1 -0
- package/dist/client.d.ts +74 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +68 -0
- package/dist/client.js.map +1 -1
- package/dist/device/client.d.ts +12 -4
- package/dist/device/client.d.ts.map +1 -1
- package/dist/device/client.js +44 -1
- package/dist/device/client.js.map +1 -1
- package/dist/device/host.d.ts +74 -3
- package/dist/device/host.d.ts.map +1 -1
- package/dist/device/host.js +262 -12
- package/dist/device/host.js.map +1 -1
- package/dist/device/http.d.ts.map +1 -1
- package/dist/device/http.js +3 -2
- package/dist/device/http.js.map +1 -1
- package/dist/device/protocol.d.ts +97 -1
- package/dist/device/protocol.d.ts.map +1 -1
- package/dist/device/protocol.js +155 -1
- package/dist/device/protocol.js.map +1 -1
- package/dist/help.d.ts +54 -0
- package/dist/help.d.ts.map +1 -0
- package/dist/help.js +62 -0
- package/dist/help.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/webhook.d.ts +60 -2
- package/dist/webhook.d.ts.map +1 -1
- package/dist/webhook.js +63 -1
- package/dist/webhook.js.map +1 -1
- package/dist/work.d.ts +2 -0
- package/dist/work.d.ts.map +1 -1
- package/dist/work.js +4 -0
- package/dist/work.js.map +1 -1
- package/package.json +1 -1
|
@@ -23,7 +23,15 @@ export declare const MUTATING_OPS: readonly string[];
|
|
|
23
23
|
/** Why a session is paused (device -> Salt -> agent). `person_active` and
|
|
24
24
|
* `secure_field` are the contract's two; `person_paused` is an explicit tray
|
|
25
25
|
* pause or hotkey. Free-form strings are tolerated on the wire. */
|
|
26
|
-
export type DevicePauseReason = "person_active" | "secure_field" | "person" | "other" | (string & {});
|
|
26
|
+
export type DevicePauseReason = "person_active" | "secure_field" | "person" | "phone" | "other" | (string & {});
|
|
27
|
+
/** Show Me (0.22.0): two device-to-agent ops that are not answers to a command.
|
|
28
|
+
* `still` is unsolicited (no `re`): the device posts a downscaled picture of its
|
|
29
|
+
* screen into the lane while a help request is open. `pointed` answers a person's
|
|
30
|
+
* `[[SALT-POINT]]` (its `re` is the point id): what is under the spot they tapped.
|
|
31
|
+
* They are kept out of `DEVICE_RESULT_OPS` on purpose: that list is pinned by the
|
|
32
|
+
* envelope-vector fixture shared byte for byte with saltapp-python. */
|
|
33
|
+
export type DeviceUnsolicitedOp = "still" | "pointed";
|
|
34
|
+
export declare const DEVICE_UNSOLICITED_OPS: readonly DeviceUnsolicitedOp[];
|
|
27
35
|
/** Commands an agent sends to a device. */
|
|
28
36
|
export type DeviceOp = "observe" | "click" | "type" | "key" | "scroll" | "submit" | "focus_app" | "list_apps" | "read_file" | "write_file" | "task" | "stop" | "cancel" | "shell";
|
|
29
37
|
/** Results a device sends back to an agent. */
|
|
@@ -309,4 +317,92 @@ export declare class DeviceProtocolError extends Error {
|
|
|
309
317
|
* the only property code here relies on is uniqueness. Sortable by time is a
|
|
310
318
|
* convenience for logs and nothing more (ordering is enforced by `seq`). */
|
|
311
319
|
export declare function deviceMessageId(now?: number, rand?: () => number): string;
|
|
320
|
+
/** The device posts at most one still every 2 s, and at most 30 a minute per lane. */
|
|
321
|
+
export declare const STILL_MIN_INTERVAL_MS = 2000;
|
|
322
|
+
export declare const STILL_MAX_PER_MINUTE = 30;
|
|
323
|
+
/** A person's optional words on a point. */
|
|
324
|
+
export declare const POINT_WORDS_MAX = 200;
|
|
325
|
+
/** Longest id a SALT-POINT header field may carry (help id, obs id, point id). */
|
|
326
|
+
export declare const POINT_ID_MAX = 64;
|
|
327
|
+
/** `pointed.words` is the point's words, same cap. */
|
|
328
|
+
export declare const POINTED_NAME_MAX = 200;
|
|
329
|
+
export interface StillBody {
|
|
330
|
+
help_id: string;
|
|
331
|
+
/** The observation id of this picture; a person's point names it back. */
|
|
332
|
+
obs: string;
|
|
333
|
+
width: number;
|
|
334
|
+
height: number;
|
|
335
|
+
scale: number;
|
|
336
|
+
format: "jpeg" | "png";
|
|
337
|
+
image_b64: string;
|
|
338
|
+
/** ISO8601. */
|
|
339
|
+
taken_at: string;
|
|
340
|
+
}
|
|
341
|
+
export type PointedRefusal = "forbidden_app" | "secure_field" | "stale" | "not_allowed";
|
|
342
|
+
export declare const POINTED_REFUSALS: readonly PointedRefusal[];
|
|
343
|
+
export interface PointedElement {
|
|
344
|
+
role: string;
|
|
345
|
+
subrole: string | null;
|
|
346
|
+
name: string | null;
|
|
347
|
+
value: string | null;
|
|
348
|
+
bounds: {
|
|
349
|
+
x: number;
|
|
350
|
+
y: number;
|
|
351
|
+
w: number;
|
|
352
|
+
h: number;
|
|
353
|
+
};
|
|
354
|
+
}
|
|
355
|
+
export interface PointedBody {
|
|
356
|
+
help_id: string;
|
|
357
|
+
x: number;
|
|
358
|
+
y: number;
|
|
359
|
+
/** The spot in screen coordinates. */
|
|
360
|
+
screen: {
|
|
361
|
+
x: number;
|
|
362
|
+
y: number;
|
|
363
|
+
};
|
|
364
|
+
app: string | null;
|
|
365
|
+
/** Null when nothing is named under the point, or when the answer was refused. */
|
|
366
|
+
element: PointedElement | null;
|
|
367
|
+
refused: PointedRefusal | null;
|
|
368
|
+
words: string;
|
|
369
|
+
}
|
|
370
|
+
/** A still body, allow-listed with types checked; null when it is not one. Used by the agent
|
|
371
|
+
* on what a device sent. Extra fields are dropped. */
|
|
372
|
+
export declare function normalizeStill(raw: unknown): StillBody | null;
|
|
373
|
+
/** A `pointed` body, allow-listed field by field; null when it is not one. A refused answer
|
|
374
|
+
* never carries an element, whatever the sender put there. */
|
|
375
|
+
export declare function normalizePointed(raw: unknown): PointedBody | null;
|
|
376
|
+
/** One point a person made on a still (or, live, on the call's frame). */
|
|
377
|
+
export interface PointMessage {
|
|
378
|
+
v: number;
|
|
379
|
+
/** The help request this point answers. */
|
|
380
|
+
help: string;
|
|
381
|
+
/** The still it was made on; absent means the live frame. */
|
|
382
|
+
obs?: string;
|
|
383
|
+
/** Fractions of the picture, 0..1. */
|
|
384
|
+
x: number;
|
|
385
|
+
y: number;
|
|
386
|
+
/** A fresh id per point; the device answers each id once. */
|
|
387
|
+
id: string;
|
|
388
|
+
words: string;
|
|
389
|
+
}
|
|
390
|
+
/** True when the text opens with the SALT-POINT marker (well formed or not). */
|
|
391
|
+
export declare function isPointMessage(plaintext: string): boolean;
|
|
392
|
+
/** The plaintext of a point. `x` and `y` are written with four decimals. Throws
|
|
393
|
+
* DeviceProtocolError("bad_args") on an out-of-range fraction, a bad id, or words over 200
|
|
394
|
+
* characters (nothing is cut off silently). */
|
|
395
|
+
export declare function encodePoint(p: {
|
|
396
|
+
help: string;
|
|
397
|
+
obs?: string;
|
|
398
|
+
x: number;
|
|
399
|
+
y: number;
|
|
400
|
+
id: string;
|
|
401
|
+
words?: string;
|
|
402
|
+
}): string;
|
|
403
|
+
/** Parse the decrypted plaintext of a lane message. Returns null when it is not a point at
|
|
404
|
+
* all. Throws DeviceProtocolError("bad_args") on a message that opens with the marker but
|
|
405
|
+
* is broken: a wrong version, a missing field, an x or y outside 0..1 (or with more than
|
|
406
|
+
* four decimals), a bad id, or words over 200 characters. */
|
|
407
|
+
export declare function decodePoint(plaintext: string): PointMessage | null;
|
|
312
408
|
//# sourceMappingURL=protocol.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/device/protocol.ts"],"names":[],"mappings":"AAiBA;yDACyD;AACzD,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAElD;;gDAEgD;AAChD,eAAO,MAAM,0BAA0B,QAAkB,CAAC;AAE1D;mDACmD;AACnD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAKxC;;2EAE2E;AAC3E,eAAO,MAAM,cAAc,QAAS,CAAC;AAErC;iEACiE;AACjE,eAAO,MAAM,iBAAiB,KAAK,CAAC;AAEpC;;yEAEyE;AACzE,eAAO,MAAM,YAAY,EAAE,SAAS,MAAM,EAAsE,CAAC;AAEjH;;oEAEoE;AACpE,MAAM,MAAM,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,QAAQ,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/device/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/device/protocol.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
// change to the grammar is made in DEVICE_PROTOCOL.md first, then mirrored
|
|
17
17
|
// here, then announced -- never the other way round.
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.DeviceProtocolError = exports.TASK_STEP_KINDS = exports.TASK_STATUSES = exports.TASK_CLIENT_GRACE_MS = exports.TASK_DEVICE_GRACE_MS = exports.PROGRESS_MIN_INTERVAL_MS = exports.TASK_ID_MAX = exports.TASK_CHECKED_WHAT_MAX = exports.TASK_RESULT_STEPS_MAX = exports.TASK_STEP_LINE_MAX = exports.TASK_SUMMARY_MAX = exports.PROGRESS_LINE_MAX = exports.TASK_TIMEOUT_S_DEFAULT = exports.TASK_TIMEOUT_S_MAX = exports.TASK_TIMEOUT_S_MIN = exports.TASK_MAX_STEPS_DEFAULT = exports.TASK_MAX_STEPS_MAX = exports.TASK_MAX_STEPS_MIN = exports.TASK_DONE_WHEN_MAX = exports.TASK_GOAL_MAX = exports.DEVICE_COUNT_CLASSES = exports.CAPABILITY_FOR_OP = exports.DEVICE_ERROR_CODES = exports.DEVICE_RESULT_OPS = exports.AGENT_OPS = exports.MUTATING_OPS = exports.RESULT_CACHE_SIZE = exports.COMMAND_TTL_MS = exports.MAX_OBSERVE_PER_SECOND = exports.MAX_COMMANDS_PER_SECOND = exports.MAX_DEVICE_PLAINTEXT_BYTES = exports.DEVICE_PROTOCOL_VERSION = void 0;
|
|
19
|
+
exports.POINTED_REFUSALS = exports.POINTED_NAME_MAX = exports.POINT_ID_MAX = exports.POINT_WORDS_MAX = exports.STILL_MAX_PER_MINUTE = exports.STILL_MIN_INTERVAL_MS = exports.DeviceProtocolError = exports.TASK_STEP_KINDS = exports.TASK_STATUSES = exports.TASK_CLIENT_GRACE_MS = exports.TASK_DEVICE_GRACE_MS = exports.PROGRESS_MIN_INTERVAL_MS = exports.TASK_ID_MAX = exports.TASK_CHECKED_WHAT_MAX = exports.TASK_RESULT_STEPS_MAX = exports.TASK_STEP_LINE_MAX = exports.TASK_SUMMARY_MAX = exports.PROGRESS_LINE_MAX = exports.TASK_TIMEOUT_S_DEFAULT = exports.TASK_TIMEOUT_S_MAX = exports.TASK_TIMEOUT_S_MIN = exports.TASK_MAX_STEPS_DEFAULT = exports.TASK_MAX_STEPS_MAX = exports.TASK_MAX_STEPS_MIN = exports.TASK_DONE_WHEN_MAX = exports.TASK_GOAL_MAX = exports.DEVICE_COUNT_CLASSES = exports.CAPABILITY_FOR_OP = exports.DEVICE_ERROR_CODES = exports.DEVICE_RESULT_OPS = exports.AGENT_OPS = exports.DEVICE_UNSOLICITED_OPS = exports.MUTATING_OPS = exports.RESULT_CACHE_SIZE = exports.COMMAND_TTL_MS = exports.MAX_OBSERVE_PER_SECOND = exports.MAX_COMMANDS_PER_SECOND = exports.MAX_DEVICE_PLAINTEXT_BYTES = exports.DEVICE_PROTOCOL_VERSION = void 0;
|
|
20
20
|
exports.countClassForOp = countClassForOp;
|
|
21
21
|
exports.parseTaskArgs = parseTaskArgs;
|
|
22
22
|
exports.taskCommandBody = taskCommandBody;
|
|
@@ -26,6 +26,11 @@ exports.normalizeTaskResult = normalizeTaskResult;
|
|
|
26
26
|
exports.encodeDeviceMessage = encodeDeviceMessage;
|
|
27
27
|
exports.decodeDeviceMessage = decodeDeviceMessage;
|
|
28
28
|
exports.deviceMessageId = deviceMessageId;
|
|
29
|
+
exports.normalizeStill = normalizeStill;
|
|
30
|
+
exports.normalizePointed = normalizePointed;
|
|
31
|
+
exports.isPointMessage = isPointMessage;
|
|
32
|
+
exports.encodePoint = encodePoint;
|
|
33
|
+
exports.decodePoint = decodePoint;
|
|
29
34
|
/** Grammar version. An incoming message with any other `v` is answered
|
|
30
35
|
* `error { code: "unsupported" }`, never guessed at. */
|
|
31
36
|
exports.DEVICE_PROTOCOL_VERSION = 1;
|
|
@@ -50,6 +55,7 @@ exports.RESULT_CACHE_SIZE = 64;
|
|
|
50
55
|
* serialises these device-wide (across every session on the machine) behind
|
|
51
56
|
* one mutex. `observe`, `list_apps` and the file ops do not take it. */
|
|
52
57
|
exports.MUTATING_OPS = ["click", "type", "key", "scroll", "submit", "focus_app", "task"];
|
|
58
|
+
exports.DEVICE_UNSOLICITED_OPS = ["still", "pointed"];
|
|
53
59
|
exports.AGENT_OPS = [
|
|
54
60
|
"observe",
|
|
55
61
|
"click",
|
|
@@ -432,4 +438,152 @@ function deviceMessageId(now = Date.now(), rand = Math.random) {
|
|
|
432
438
|
}
|
|
433
439
|
return time + randPart;
|
|
434
440
|
}
|
|
441
|
+
// ---- Show Me: stills and points (CONTRACT.md section 3) ---------------------
|
|
442
|
+
/** The device posts at most one still every 2 s, and at most 30 a minute per lane. */
|
|
443
|
+
exports.STILL_MIN_INTERVAL_MS = 2_000;
|
|
444
|
+
exports.STILL_MAX_PER_MINUTE = 30;
|
|
445
|
+
/** A person's optional words on a point. */
|
|
446
|
+
exports.POINT_WORDS_MAX = 200;
|
|
447
|
+
/** Longest id a SALT-POINT header field may carry (help id, obs id, point id). */
|
|
448
|
+
exports.POINT_ID_MAX = 64;
|
|
449
|
+
/** `pointed.words` is the point's words, same cap. */
|
|
450
|
+
exports.POINTED_NAME_MAX = 200;
|
|
451
|
+
exports.POINTED_REFUSALS = ["forbidden_app", "secure_field", "stale", "not_allowed"];
|
|
452
|
+
/** A still body, allow-listed with types checked; null when it is not one. Used by the agent
|
|
453
|
+
* on what a device sent. Extra fields are dropped. */
|
|
454
|
+
function normalizeStill(raw) {
|
|
455
|
+
if (!isRecord(raw))
|
|
456
|
+
return null;
|
|
457
|
+
const { help_id, obs, width, height, scale, format, image_b64, taken_at } = raw;
|
|
458
|
+
if (typeof help_id !== "string" || help_id === "" || typeof obs !== "string" || obs === "")
|
|
459
|
+
return null;
|
|
460
|
+
if (format !== "jpeg" && format !== "png")
|
|
461
|
+
return null;
|
|
462
|
+
if (typeof image_b64 !== "string" || image_b64 === "")
|
|
463
|
+
return null;
|
|
464
|
+
const w = wholeNumber(width);
|
|
465
|
+
const h = wholeNumber(height);
|
|
466
|
+
if (w === null || h === null || w < 1 || h < 1)
|
|
467
|
+
return null;
|
|
468
|
+
if (typeof scale !== "number" || !Number.isFinite(scale) || scale <= 0)
|
|
469
|
+
return null;
|
|
470
|
+
return { help_id, obs, width: w, height: h, scale, format, image_b64, taken_at: typeof taken_at === "string" ? taken_at : "" };
|
|
471
|
+
}
|
|
472
|
+
function finite(x) {
|
|
473
|
+
return typeof x === "number" && Number.isFinite(x) ? x : null;
|
|
474
|
+
}
|
|
475
|
+
/** A `pointed` body, allow-listed field by field; null when it is not one. A refused answer
|
|
476
|
+
* never carries an element, whatever the sender put there. */
|
|
477
|
+
function normalizePointed(raw) {
|
|
478
|
+
if (!isRecord(raw))
|
|
479
|
+
return null;
|
|
480
|
+
if (typeof raw.help_id !== "string" || raw.help_id === "")
|
|
481
|
+
return null;
|
|
482
|
+
const x = finite(raw.x);
|
|
483
|
+
const y = finite(raw.y);
|
|
484
|
+
if (x === null || y === null || x < 0 || x > 1 || y < 0 || y > 1)
|
|
485
|
+
return null;
|
|
486
|
+
const sx = isRecord(raw.screen) ? finite(raw.screen.x) : null;
|
|
487
|
+
const sy = isRecord(raw.screen) ? finite(raw.screen.y) : null;
|
|
488
|
+
if (sx === null || sy === null)
|
|
489
|
+
return null;
|
|
490
|
+
const refused = exports.POINTED_REFUSALS.includes(raw.refused) ? raw.refused : null;
|
|
491
|
+
let element = null;
|
|
492
|
+
if (refused === null && isRecord(raw.element) && typeof raw.element.role === "string") {
|
|
493
|
+
const e = raw.element;
|
|
494
|
+
const b = isRecord(e.bounds) ? e.bounds : {};
|
|
495
|
+
element = {
|
|
496
|
+
role: clip(e.role, 80),
|
|
497
|
+
subrole: typeof e.subrole === "string" ? clip(e.subrole, 80) : null,
|
|
498
|
+
name: typeof e.name === "string" ? clip(e.name, exports.POINTED_NAME_MAX) : null,
|
|
499
|
+
value: typeof e.value === "string" ? clip(e.value, exports.POINTED_NAME_MAX) : null,
|
|
500
|
+
bounds: { x: finite(b.x) ?? 0, y: finite(b.y) ?? 0, w: finite(b.w) ?? 0, h: finite(b.h) ?? 0 },
|
|
501
|
+
};
|
|
502
|
+
}
|
|
503
|
+
return {
|
|
504
|
+
help_id: raw.help_id,
|
|
505
|
+
x,
|
|
506
|
+
y,
|
|
507
|
+
screen: { x: sx, y: sy },
|
|
508
|
+
app: typeof raw.app === "string" ? clip(raw.app, 200) : null,
|
|
509
|
+
element,
|
|
510
|
+
refused,
|
|
511
|
+
words: typeof raw.words === "string" ? clip(raw.words, exports.POINT_WORDS_MAX) : "",
|
|
512
|
+
};
|
|
513
|
+
}
|
|
514
|
+
const POINT_MARKER_RE = /^\[\[SALT-POINT ((?:[a-z_]+=[^\s\]]+ ?)+)\]\]([\s\S]*)$/;
|
|
515
|
+
const POINT_TOKEN_RE = /^[A-Za-z0-9_-]{1,64}$/;
|
|
516
|
+
// 0..1 with at most four decimals: "0", "1", "0.5", "0.6012", "1.0".
|
|
517
|
+
const POINT_FRACTION_RE = /^(?:0(?:\.\d{1,4})?|1(?:\.0{1,4})?)$/;
|
|
518
|
+
/** True when the text opens with the SALT-POINT marker (well formed or not). */
|
|
519
|
+
function isPointMessage(plaintext) {
|
|
520
|
+
return plaintext.trimStart().startsWith("[[SALT-POINT");
|
|
521
|
+
}
|
|
522
|
+
function fraction(n, what) {
|
|
523
|
+
if (typeof n !== "number" || !Number.isFinite(n) || n < 0 || n > 1) {
|
|
524
|
+
throw new DeviceProtocolError("bad_args", `${what} must be between 0 and 1`);
|
|
525
|
+
}
|
|
526
|
+
return n.toFixed(4);
|
|
527
|
+
}
|
|
528
|
+
/** The plaintext of a point. `x` and `y` are written with four decimals. Throws
|
|
529
|
+
* DeviceProtocolError("bad_args") on an out-of-range fraction, a bad id, or words over 200
|
|
530
|
+
* characters (nothing is cut off silently). */
|
|
531
|
+
function encodePoint(p) {
|
|
532
|
+
for (const [what, val] of [["help", p.help], ["id", p.id], ...(p.obs !== undefined ? [["obs", p.obs]] : [])]) {
|
|
533
|
+
if (typeof val !== "string" || !POINT_TOKEN_RE.test(val))
|
|
534
|
+
throw new DeviceProtocolError("bad_args", `${what} is not a valid id`);
|
|
535
|
+
}
|
|
536
|
+
const words = p.words ?? "";
|
|
537
|
+
if (typeof words !== "string" || charCount(words) > exports.POINT_WORDS_MAX) {
|
|
538
|
+
throw new DeviceProtocolError("bad_args", `words are over ${exports.POINT_WORDS_MAX} characters`);
|
|
539
|
+
}
|
|
540
|
+
const parts = [`v=${exports.DEVICE_PROTOCOL_VERSION}`, `help=${p.help}`];
|
|
541
|
+
if (p.obs !== undefined)
|
|
542
|
+
parts.push(`obs=${p.obs}`);
|
|
543
|
+
parts.push(`x=${fraction(p.x, "x")}`, `y=${fraction(p.y, "y")}`, `id=${p.id}`);
|
|
544
|
+
const marker = `[[SALT-POINT ${parts.join(" ")}]]`;
|
|
545
|
+
return words === "" ? marker : `${marker}\n${words}`;
|
|
546
|
+
}
|
|
547
|
+
/** Parse the decrypted plaintext of a lane message. Returns null when it is not a point at
|
|
548
|
+
* all. Throws DeviceProtocolError("bad_args") on a message that opens with the marker but
|
|
549
|
+
* is broken: a wrong version, a missing field, an x or y outside 0..1 (or with more than
|
|
550
|
+
* four decimals), a bad id, or words over 200 characters. */
|
|
551
|
+
function decodePoint(plaintext) {
|
|
552
|
+
const trimmed = plaintext.trimStart();
|
|
553
|
+
if (!trimmed.startsWith("[[SALT-POINT"))
|
|
554
|
+
return null;
|
|
555
|
+
const m = POINT_MARKER_RE.exec(trimmed);
|
|
556
|
+
if (!m)
|
|
557
|
+
throw new DeviceProtocolError("bad_args", "malformed SALT-POINT marker");
|
|
558
|
+
const fields = {};
|
|
559
|
+
for (const pair of m[1].trim().split(/\s+/)) {
|
|
560
|
+
const eq = pair.indexOf("=");
|
|
561
|
+
if (eq === -1)
|
|
562
|
+
throw new DeviceProtocolError("bad_args", `bad marker field: ${pair}`);
|
|
563
|
+
const k = pair.slice(0, eq);
|
|
564
|
+
if (k in fields)
|
|
565
|
+
throw new DeviceProtocolError("bad_args", `repeated marker field: ${k}`);
|
|
566
|
+
fields[k] = pair.slice(eq + 1);
|
|
567
|
+
}
|
|
568
|
+
for (const required of ["v", "help", "x", "y", "id"]) {
|
|
569
|
+
if (fields[required] === undefined)
|
|
570
|
+
throw new DeviceProtocolError("bad_args", `marker missing ${required}`);
|
|
571
|
+
}
|
|
572
|
+
if (fields.v !== String(exports.DEVICE_PROTOCOL_VERSION))
|
|
573
|
+
throw new DeviceProtocolError("unsupported", `unsupported SALT-POINT version ${fields.v}`);
|
|
574
|
+
for (const k of ["help", "id", ...(fields.obs !== undefined ? ["obs"] : [])]) {
|
|
575
|
+
if (!POINT_TOKEN_RE.test(fields[k]))
|
|
576
|
+
throw new DeviceProtocolError("bad_args", `${k} is not a valid id`);
|
|
577
|
+
}
|
|
578
|
+
if (!POINT_FRACTION_RE.test(fields.x) || !POINT_FRACTION_RE.test(fields.y)) {
|
|
579
|
+
throw new DeviceProtocolError("bad_args", "x and y must be between 0 and 1 with at most four decimals");
|
|
580
|
+
}
|
|
581
|
+
const words = m[2].replace(/^\r?\n/, "").trim();
|
|
582
|
+
if (charCount(words) > exports.POINT_WORDS_MAX)
|
|
583
|
+
throw new DeviceProtocolError("bad_args", `words are over ${exports.POINT_WORDS_MAX} characters`);
|
|
584
|
+
const out = { v: exports.DEVICE_PROTOCOL_VERSION, help: fields.help, x: Number(fields.x), y: Number(fields.y), id: fields.id, words };
|
|
585
|
+
if (fields.obs !== undefined)
|
|
586
|
+
out.obs = fields.obs;
|
|
587
|
+
return out;
|
|
588
|
+
}
|
|
435
589
|
//# sourceMappingURL=protocol.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/device/protocol.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/device/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/help.d.ts
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
export declare const HELP_REASONS: readonly ["stuck", "which", "unclear", "look"];
|
|
2
|
+
export type HelpReason = (typeof HELP_REASONS)[number];
|
|
3
|
+
/** The question is at most this many characters (Unicode code points). */
|
|
4
|
+
export declare const HELP_QUESTION_MAX = 500;
|
|
5
|
+
export interface HelpMessage {
|
|
6
|
+
reason: HelpReason;
|
|
7
|
+
question: string;
|
|
8
|
+
}
|
|
9
|
+
/** True when the text opens with the SALT-HELP marker (well formed or not). */
|
|
10
|
+
export declare function isHelpMessage(plaintext: string): boolean;
|
|
11
|
+
/** The plaintext of a help question. Throws on an unknown reason, an empty question or one
|
|
12
|
+
* over 500 characters (nothing is cut off silently). */
|
|
13
|
+
export declare function encodeHelp(h: {
|
|
14
|
+
reason: HelpReason;
|
|
15
|
+
question: string;
|
|
16
|
+
}): string;
|
|
17
|
+
/** Parse a decrypted message. Null when it is not a help message, or when it opens with the
|
|
18
|
+
* marker but is malformed (unknown reason, empty or over-long question): a reader treats
|
|
19
|
+
* that as ordinary text. */
|
|
20
|
+
export declare function decodeHelp(plaintext: string): HelpMessage | null;
|
|
21
|
+
export type HelpRequestStatus = "open" | "answered" | "withdrawn" | "ended";
|
|
22
|
+
/** A help request as salt-api serves it. The server stores ids, the reason and the status only;
|
|
23
|
+
* the question itself rides end-to-end encrypted in the 1:1 chat. */
|
|
24
|
+
export interface HelpRequest {
|
|
25
|
+
id: string;
|
|
26
|
+
agent: {
|
|
27
|
+
id: string;
|
|
28
|
+
username?: string;
|
|
29
|
+
display_name?: string;
|
|
30
|
+
};
|
|
31
|
+
person_id: string;
|
|
32
|
+
chat_id: string;
|
|
33
|
+
message_id: string;
|
|
34
|
+
reason: HelpReason;
|
|
35
|
+
status: HelpRequestStatus;
|
|
36
|
+
device_session_id: string | null;
|
|
37
|
+
device: {
|
|
38
|
+
id: string;
|
|
39
|
+
name?: string;
|
|
40
|
+
lane_chat_id?: string;
|
|
41
|
+
} | null;
|
|
42
|
+
created_at: string;
|
|
43
|
+
closed_at: string | null;
|
|
44
|
+
last_viewed_at: string | null;
|
|
45
|
+
}
|
|
46
|
+
/** The person looking at a help request from their phone. */
|
|
47
|
+
export interface HelpViewer {
|
|
48
|
+
id: string;
|
|
49
|
+
display_name?: string;
|
|
50
|
+
}
|
|
51
|
+
/** The deliveries a device receives about a help request (CONTRACT.md section 4). */
|
|
52
|
+
export declare const HELP_DELIVERY_TYPES: readonly ["help_request_opened", "help_request_viewing", "help_request_closed"];
|
|
53
|
+
export type HelpDeliveryType = (typeof HELP_DELIVERY_TYPES)[number];
|
|
54
|
+
//# sourceMappingURL=help.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,YAAY,gDAAiD,CAAC;AAC3E,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAUD,+EAA+E;AAC/E,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;yDACyD;AACzD,wBAAgB,UAAU,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAM9E;AAED;;6BAE6B;AAC7B,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAShE;AAID,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,CAAC;AAE5E;sEACsE;AACtE,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,6DAA6D;AAC7D,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qFAAqF;AACrF,eAAO,MAAM,mBAAmB,iFAAkF,CAAC;AACnH,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/help.js
ADDED
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// The `[[SALT-HELP reason=...]]` marker (Show Me, CONTRACT.md section 1).
|
|
3
|
+
//
|
|
4
|
+
// An agent that is stuck asks a person for help with an ordinary end-to-end
|
|
5
|
+
// encrypted message in its 1:1 with them. The first line is the marker; the
|
|
6
|
+
// rest is the question in plain words. Salt never parses it: the server only
|
|
7
|
+
// learns that a help request exists (ids and a reason) from POST /help_requests.
|
|
8
|
+
// salt-fe strips the marker line from every human-facing view and shows the
|
|
9
|
+
// question.
|
|
10
|
+
//
|
|
11
|
+
// Pure: encode and decode only.
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.HELP_DELIVERY_TYPES = exports.HELP_QUESTION_MAX = exports.HELP_REASONS = void 0;
|
|
14
|
+
exports.isHelpMessage = isHelpMessage;
|
|
15
|
+
exports.encodeHelp = encodeHelp;
|
|
16
|
+
exports.decodeHelp = decodeHelp;
|
|
17
|
+
exports.HELP_REASONS = ["stuck", "which", "unclear", "look"];
|
|
18
|
+
/** The question is at most this many characters (Unicode code points). */
|
|
19
|
+
exports.HELP_QUESTION_MAX = 500;
|
|
20
|
+
const HELP_RE = /^\[\[SALT-HELP reason=([a-z]+)\]\][ \t]*(?:\r?\n([\s\S]*))?$/;
|
|
21
|
+
function codePoints(s) {
|
|
22
|
+
let n = 0;
|
|
23
|
+
for (const _ of s)
|
|
24
|
+
n += 1;
|
|
25
|
+
return n;
|
|
26
|
+
}
|
|
27
|
+
/** True when the text opens with the SALT-HELP marker (well formed or not). */
|
|
28
|
+
function isHelpMessage(plaintext) {
|
|
29
|
+
return plaintext.trimStart().startsWith("[[SALT-HELP");
|
|
30
|
+
}
|
|
31
|
+
/** The plaintext of a help question. Throws on an unknown reason, an empty question or one
|
|
32
|
+
* over 500 characters (nothing is cut off silently). */
|
|
33
|
+
function encodeHelp(h) {
|
|
34
|
+
if (!exports.HELP_REASONS.includes(h.reason))
|
|
35
|
+
throw new Error(`help reason must be one of ${exports.HELP_REASONS.join(", ")}`);
|
|
36
|
+
const question = typeof h.question === "string" ? h.question.trim() : "";
|
|
37
|
+
if (question === "")
|
|
38
|
+
throw new Error("a help question cannot be empty");
|
|
39
|
+
if (codePoints(question) > exports.HELP_QUESTION_MAX)
|
|
40
|
+
throw new Error(`a help question is at most ${exports.HELP_QUESTION_MAX} characters`);
|
|
41
|
+
return `[[SALT-HELP reason=${h.reason}]]\n${question}`;
|
|
42
|
+
}
|
|
43
|
+
/** Parse a decrypted message. Null when it is not a help message, or when it opens with the
|
|
44
|
+
* marker but is malformed (unknown reason, empty or over-long question): a reader treats
|
|
45
|
+
* that as ordinary text. */
|
|
46
|
+
function decodeHelp(plaintext) {
|
|
47
|
+
const trimmed = plaintext.trimStart();
|
|
48
|
+
if (!trimmed.startsWith("[[SALT-HELP"))
|
|
49
|
+
return null;
|
|
50
|
+
const m = HELP_RE.exec(trimmed);
|
|
51
|
+
if (!m)
|
|
52
|
+
return null;
|
|
53
|
+
if (!exports.HELP_REASONS.includes(m[1]))
|
|
54
|
+
return null;
|
|
55
|
+
const question = (m[2] ?? "").trim();
|
|
56
|
+
if (question === "" || codePoints(question) > exports.HELP_QUESTION_MAX)
|
|
57
|
+
return null;
|
|
58
|
+
return { reason: m[1], question };
|
|
59
|
+
}
|
|
60
|
+
/** The deliveries a device receives about a help request (CONTRACT.md section 4). */
|
|
61
|
+
exports.HELP_DELIVERY_TYPES = ["help_request_opened", "help_request_viewing", "help_request_closed"];
|
|
62
|
+
//# sourceMappingURL=help.js.map
|
package/dist/help.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../src/help.ts"],"names":[],"mappings":";AAAA,0EAA0E;AAC1E,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,6EAA6E;AAC7E,iFAAiF;AACjF,4EAA4E;AAC5E,YAAY;AACZ,EAAE;AACF,gCAAgC;;;AAsBhC,sCAEC;AAID,gCAMC;AAKD,gCASC;AA9CY,QAAA,YAAY,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AAG3E,0EAA0E;AAC7D,QAAA,iBAAiB,GAAG,GAAG,CAAC;AAOrC,MAAM,OAAO,GAAG,8DAA8D,CAAC;AAE/E,SAAS,UAAU,CAAC,CAAS;IAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,MAAM,CAAC,IAAI,CAAC;QAAE,CAAC,IAAI,CAAC,CAAC;IAC1B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,+EAA+E;AAC/E,SAAgB,aAAa,CAAC,SAAiB;IAC7C,OAAO,SAAS,CAAC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AACzD,CAAC;AAED;yDACyD;AACzD,SAAgB,UAAU,CAAC,CAA2C;IACpE,IAAI,CAAC,oBAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,oBAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC/G,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,IAAI,QAAQ,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACxE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,yBAAiB;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,yBAAiB,aAAa,CAAC,CAAC;IAC5H,OAAO,sBAAsB,CAAC,CAAC,MAAM,OAAO,QAAQ,EAAE,CAAC;AACzD,CAAC;AAED;;6BAE6B;AAC7B,SAAgB,UAAU,CAAC,SAAiB;IAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,CAAC;IACtC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,IAAI,CAAC,oBAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5D,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrC,IAAI,QAAQ,KAAK,EAAE,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,yBAAiB;QAAE,OAAO,IAAI,CAAC;IAC7E,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAe,EAAE,QAAQ,EAAE,CAAC;AAClD,CAAC;AA6BD,qFAAqF;AACxE,QAAA,mBAAmB,GAAG,CAAC,qBAAqB,EAAE,sBAAsB,EAAE,qBAAqB,CAAU,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ export * from "./register";
|
|
|
9
9
|
export * from "./reconcile";
|
|
10
10
|
export * from "./delegations";
|
|
11
11
|
export * from "./work";
|
|
12
|
+
export * from "./help";
|
|
13
|
+
export * from "./callBundle";
|
|
12
14
|
export * from "./sessions";
|
|
13
15
|
export * from "./scriptJob";
|
|
14
16
|
export * from "./chatPrivacy";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -25,6 +25,8 @@ __exportStar(require("./register"), exports);
|
|
|
25
25
|
__exportStar(require("./reconcile"), exports);
|
|
26
26
|
__exportStar(require("./delegations"), exports);
|
|
27
27
|
__exportStar(require("./work"), exports);
|
|
28
|
+
__exportStar(require("./help"), exports);
|
|
29
|
+
__exportStar(require("./callBundle"), exports);
|
|
28
30
|
__exportStar(require("./sessions"), exports);
|
|
29
31
|
__exportStar(require("./scriptJob"), exports);
|
|
30
32
|
__exportStar(require("./chatPrivacy"), exports);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,6CAA2B;AAC3B,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,4CAA0B;AAC1B,wCAAsB;AACtB,2CAAyB;AACzB,4CAA0B;AAC1B,2CAAyB;AACzB,oDAAkC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,2CAAyB;AACzB,2CAAyB;AACzB,6CAA2B;AAC3B,6CAA2B;AAC3B,kDAAgC;AAChC,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,yCAAuB;AACvB,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,8CAA4B;AAC5B,gDAA8B;AAC9B,4CAA0B;AAC1B,wCAAsB;AACtB,2CAAyB;AACzB,4CAA0B;AAC1B,2CAAyB;AACzB,oDAAkC"}
|