@leemour/max-cli 0.7.0 → 0.8.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.
Files changed (160) hide show
  1. package/README.md +198 -79
  2. package/dist/cache/schema.d.ts +13 -8
  3. package/dist/cache/schema.d.ts.map +1 -1
  4. package/dist/cache/schema.js +84 -23
  5. package/dist/cache/schema.js.map +1 -1
  6. package/dist/cache/store.d.ts +15 -0
  7. package/dist/cache/store.d.ts.map +1 -1
  8. package/dist/cache/store.js +32 -3
  9. package/dist/cache/store.js.map +1 -1
  10. package/dist/client.d.ts +28 -1
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +110 -5
  13. package/dist/client.js.map +1 -1
  14. package/dist/commands/chats.d.ts.map +1 -1
  15. package/dist/commands/chats.js +8 -0
  16. package/dist/commands/chats.js.map +1 -1
  17. package/dist/commands/config.d.ts.map +1 -1
  18. package/dist/commands/config.js +6 -2
  19. package/dist/commands/config.js.map +1 -1
  20. package/dist/commands/context.d.ts +14 -2
  21. package/dist/commands/context.d.ts.map +1 -1
  22. package/dist/commands/context.js +18 -19
  23. package/dist/commands/context.js.map +1 -1
  24. package/dist/commands/export.d.ts +3 -0
  25. package/dist/commands/export.d.ts.map +1 -0
  26. package/dist/commands/export.js +83 -0
  27. package/dist/commands/export.js.map +1 -0
  28. package/dist/commands/mcp.d.ts.map +1 -1
  29. package/dist/commands/mcp.js +9 -2
  30. package/dist/commands/mcp.js.map +1 -1
  31. package/dist/commands/messages.d.ts.map +1 -1
  32. package/dist/commands/messages.js +126 -3
  33. package/dist/commands/messages.js.map +1 -1
  34. package/dist/commands/models.d.ts +7 -0
  35. package/dist/commands/models.d.ts.map +1 -0
  36. package/dist/commands/models.js +47 -0
  37. package/dist/commands/models.js.map +1 -0
  38. package/dist/commands/serve.d.ts.map +1 -1
  39. package/dist/commands/serve.js +50 -2
  40. package/dist/commands/serve.js.map +1 -1
  41. package/dist/commands/session.d.ts.map +1 -1
  42. package/dist/commands/session.js +13 -3
  43. package/dist/commands/session.js.map +1 -1
  44. package/dist/commands/watch.d.ts.map +1 -1
  45. package/dist/commands/watch.js +12 -16
  46. package/dist/commands/watch.js.map +1 -1
  47. package/dist/config.d.ts +18 -2
  48. package/dist/config.d.ts.map +1 -1
  49. package/dist/config.js +58 -4
  50. package/dist/config.js.map +1 -1
  51. package/dist/domain/map.d.ts.map +1 -1
  52. package/dist/domain/map.js +5 -0
  53. package/dist/domain/map.js.map +1 -1
  54. package/dist/domain/models.d.ts +14 -0
  55. package/dist/domain/models.d.ts.map +1 -1
  56. package/dist/domain/models.js.map +1 -1
  57. package/dist/download.d.ts +2 -0
  58. package/dist/download.d.ts.map +1 -1
  59. package/dist/download.js +11 -0
  60. package/dist/download.js.map +1 -1
  61. package/dist/export.d.ts +26 -0
  62. package/dist/export.d.ts.map +1 -0
  63. package/dist/export.js +75 -0
  64. package/dist/export.js.map +1 -0
  65. package/dist/generated/client.generated.d.ts +2 -0
  66. package/dist/generated/client.generated.d.ts.map +1 -1
  67. package/dist/generated/client.generated.js +2 -0
  68. package/dist/generated/client.generated.js.map +1 -1
  69. package/dist/generated/opcodes.generated.d.ts +0 -9
  70. package/dist/generated/opcodes.generated.d.ts.map +1 -1
  71. package/dist/generated/opcodes.generated.js +0 -9
  72. package/dist/generated/opcodes.generated.js.map +1 -1
  73. package/dist/generated/operations.generated.d.ts +18 -1
  74. package/dist/generated/operations.generated.d.ts.map +1 -1
  75. package/dist/generated/operations.generated.js +4 -2
  76. package/dist/generated/operations.generated.js.map +1 -1
  77. package/dist/mcp/confirm.d.ts +7 -0
  78. package/dist/mcp/confirm.d.ts.map +1 -1
  79. package/dist/mcp/confirm.js +16 -7
  80. package/dist/mcp/confirm.js.map +1 -1
  81. package/dist/mcp/instructions.d.ts +5 -1
  82. package/dist/mcp/instructions.d.ts.map +1 -1
  83. package/dist/mcp/instructions.js +16 -2
  84. package/dist/mcp/instructions.js.map +1 -1
  85. package/dist/mcp/server.d.ts +3 -1
  86. package/dist/mcp/server.d.ts.map +1 -1
  87. package/dist/mcp/server.js +22 -3
  88. package/dist/mcp/server.js.map +1 -1
  89. package/dist/mcp/session.d.ts +1 -1
  90. package/dist/mcp/session.d.ts.map +1 -1
  91. package/dist/mcp/session.js +1 -1
  92. package/dist/mcp/session.js.map +1 -1
  93. package/dist/mcp/tools.d.ts +8 -1
  94. package/dist/mcp/tools.d.ts.map +1 -1
  95. package/dist/mcp/tools.js +87 -10
  96. package/dist/mcp/tools.js.map +1 -1
  97. package/dist/program.d.ts.map +1 -1
  98. package/dist/program.js +6 -2
  99. package/dist/program.js.map +1 -1
  100. package/dist/sends/guard.d.ts +7 -3
  101. package/dist/sends/guard.d.ts.map +1 -1
  102. package/dist/sends/guard.js +32 -11
  103. package/dist/sends/guard.js.map +1 -1
  104. package/dist/sends/journal.d.ts +6 -1
  105. package/dist/sends/journal.d.ts.map +1 -1
  106. package/dist/sends/journal.js.map +1 -1
  107. package/dist/sends/permissions.d.ts +11 -0
  108. package/dist/sends/permissions.d.ts.map +1 -0
  109. package/dist/sends/permissions.js +47 -0
  110. package/dist/sends/permissions.js.map +1 -0
  111. package/dist/server/server-connection.d.ts +25 -15
  112. package/dist/server/server-connection.d.ts.map +1 -1
  113. package/dist/server/server-connection.js +69 -63
  114. package/dist/server/server-connection.js.map +1 -1
  115. package/dist/server/server.d.ts +7 -0
  116. package/dist/server/server.d.ts.map +1 -1
  117. package/dist/server/server.js +82 -19
  118. package/dist/server/server.js.map +1 -1
  119. package/dist/server/start.d.ts +17 -1
  120. package/dist/server/start.d.ts.map +1 -1
  121. package/dist/server/start.js +46 -7
  122. package/dist/server/start.js.map +1 -1
  123. package/dist/session/adopt.d.ts.map +1 -1
  124. package/dist/session/adopt.js +4 -0
  125. package/dist/session/adopt.js.map +1 -1
  126. package/dist/session/handshake.d.ts +1 -1
  127. package/dist/spec/index.js +4 -4
  128. package/dist/spec/index.js.map +1 -1
  129. package/dist/spec/operations/chats.d.ts +12 -2
  130. package/dist/spec/operations/chats.d.ts.map +1 -1
  131. package/dist/spec/operations/chats.js +32 -5
  132. package/dist/spec/operations/chats.js.map +1 -1
  133. package/dist/spec/operations/messages.d.ts +13 -1
  134. package/dist/spec/operations/messages.d.ts.map +1 -1
  135. package/dist/spec/operations/messages.js +18 -4
  136. package/dist/spec/operations/messages.js.map +1 -1
  137. package/dist/transcribe/index.d.ts +34 -0
  138. package/dist/transcribe/index.d.ts.map +1 -0
  139. package/dist/transcribe/index.js +43 -0
  140. package/dist/transcribe/index.js.map +1 -0
  141. package/dist/transcribe/install.d.ts +18 -0
  142. package/dist/transcribe/install.d.ts.map +1 -0
  143. package/dist/transcribe/install.js +67 -0
  144. package/dist/transcribe/install.js.map +1 -0
  145. package/dist/transcribe/models.d.ts +32 -0
  146. package/dist/transcribe/models.d.ts.map +1 -0
  147. package/dist/transcribe/models.js +124 -0
  148. package/dist/transcribe/models.js.map +1 -0
  149. package/dist/transcribe/speech.d.ts +25 -0
  150. package/dist/transcribe/speech.d.ts.map +1 -0
  151. package/dist/transcribe/speech.js +105 -0
  152. package/dist/transcribe/speech.js.map +1 -0
  153. package/dist/update.d.ts +1 -11
  154. package/dist/update.d.ts.map +1 -1
  155. package/dist/update.js +14 -42
  156. package/dist/update.js.map +1 -1
  157. package/dist/version.d.ts +1 -1
  158. package/dist/version.js +1 -1
  159. package/package.json +8 -3
  160. package/skills/max-cli/SKILL.md +19 -3
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,12 @@
1
1
  import type { SessionStore } from "../session/store.js";
2
2
  /** A server a command started stops after this long unused. */
3
3
  export declare const IDLE_MS: number;
4
+ /**
5
+ * Written by a background server whose login MAX refused. Without it, every command after a
6
+ * session expires would start a server that fails the same way — one more refused login each.
7
+ * `max session start` removes it.
8
+ */
9
+ export declare const refusedPath: (store: SessionStore) => string;
4
10
  /**
5
11
  * Starts `max serve` for this profile in the background, detached, and returns at once — the
6
12
  * command that asked goes on with its own connection and the next one finds the server.
@@ -8,5 +14,15 @@ export declare const IDLE_MS: number;
8
14
  * Its stderr goes to `<state>/profiles/<profile>.serve.log`, mode 600: nobody is watching a
9
15
  * terminal for it, and that file is where a login that failed says so.
10
16
  */
11
- export declare const startInBackground: (store: SessionStore, entry?: string | undefined) => boolean;
17
+ /** Where a background server writes what it would have said on a terminal. */
18
+ export declare const logPath: (store: SessionStore) => string;
19
+ export declare const startInBackground: (store: SessionStore, { serveArgs, entry }?: {
20
+ serveArgs?: string[] | undefined;
21
+ entry?: string | undefined;
22
+ }) => number | undefined;
23
+ /**
24
+ * A server for this profile, answering — started if none is, waited for if another command is
25
+ * already starting one. `false`: none came up (no session, or MAX refused its login lately).
26
+ */
27
+ export declare const ensureServer: (store: SessionStore) => Promise<boolean>;
12
28
  //# sourceMappingURL=start.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/server/start.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGvD,+DAA+D;AAC/D,eAAO,MAAM,OAAO,QAAc,CAAA;AAKlC;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,OAAO,YAAY,EAAE,0BAAuB,KAAG,OAuBhF,CAAA"}
1
+ {"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/server/start.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAGvD,+DAA+D;AAC/D,eAAO,MAAM,OAAO,QAAc,CAAA;AAKlC;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,OAAO,YAAY,KAAG,MAAyC,CAAA;AAK3F;;;;;;GAMG;AACH,8EAA8E;AAC9E,eAAO,MAAM,OAAO,GAAI,OAAO,YAAY,KAAG,MAAkE,CAAA;AAEhH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,YAAY,EACnB;;;CAAwG,KACvG,MAAM,GAAG,SAyBX,CAAA;AAKD;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAU,OAAO,YAAY,KAAG,OAAO,CAAC,OAAO,CAevE,CAAA"}
@@ -1,9 +1,17 @@
1
1
  import { spawn } from "node:child_process";
2
2
  import { closeSync, mkdirSync, openSync, rmSync, statSync } from "node:fs";
3
3
  import { dirname } from "node:path";
4
- import { startingPath } from "./server.js";
4
+ import { answers, startingPath } from "./server.js";
5
5
  /** A server a command started stops after this long unused. */
6
6
  export const IDLE_MS = 15 * 60_000;
7
+ /** After a background login MAX refused, commands leave the server alone this long. */
8
+ const REFUSED_PAUSE_MS = 10 * 60_000;
9
+ /**
10
+ * Written by a background server whose login MAX refused. Without it, every command after a
11
+ * session expires would start a server that fails the same way — one more refused login each.
12
+ * `max session start` removes it.
13
+ */
14
+ export const refusedPath = (store) => `${store.socketPath()}.refused`;
7
15
  /** A start that has not listened by now crashed; the next command may try again. */
8
16
  const START_GRACE_MS = 30_000;
9
17
  /**
@@ -13,9 +21,14 @@ const START_GRACE_MS = 30_000;
13
21
  * Its stderr goes to `<state>/profiles/<profile>.serve.log`, mode 600: nobody is watching a
14
22
  * terminal for it, and that file is where a login that failed says so.
15
23
  */
16
- export const startInBackground = (store, entry = process.argv[1]) => {
24
+ /** Where a background server writes what it would have said on a terminal. */
25
+ export const logPath = (store) => `${store.socketPath().replace(/\.sock$/, "")}.serve.log`;
26
+ export const startInBackground = (store, { serveArgs = ["--idle", `${IDLE_MS / 60_000}m`, "--started-by-command"], entry = process.argv[1] } = {}) => {
17
27
  if (!entry || store.readToken() === undefined)
18
- return false;
28
+ return undefined;
29
+ const refusedAt = statSync(refusedPath(store), { throwIfNoEntry: false })?.mtimeMs;
30
+ if (refusedAt !== undefined && Date.now() - refusedAt < REFUSED_PAUSE_MS)
31
+ return undefined;
19
32
  const lock = startingPath(store);
20
33
  mkdirSync(dirname(lock), { recursive: true, mode: 0o700 });
21
34
  try {
@@ -24,18 +37,44 @@ export const startInBackground = (store, entry = process.argv[1]) => {
24
37
  catch {
25
38
  const since = statSync(lock, { throwIfNoEntry: false })?.mtimeMs ?? 0;
26
39
  if (Date.now() - since <= START_GRACE_MS)
27
- return false;
40
+ return undefined;
28
41
  rmSync(lock, { force: true });
29
42
  closeSync(openSync(lock, "wx", 0o600));
30
43
  }
31
- const log = openSync(`${store.socketPath().replace(/\.sock$/, "")}.serve.log`, "a", 0o600);
32
- const child = spawn(process.execPath, [entry, "--no-record", "serve", "--idle", `${IDLE_MS / 60_000}m`], {
44
+ const log = openSync(logPath(store), "a", 0o600);
45
+ const child = spawn(process.execPath, [entry, "--no-record", "serve", ...serveArgs], {
33
46
  detached: true,
34
47
  stdio: ["ignore", "ignore", log],
35
48
  env: { ...process.env, MAX_PROFILE: store.profile },
36
49
  });
37
50
  child.unref();
38
51
  closeSync(log);
39
- return true;
52
+ return child.pid;
53
+ };
54
+ /** Logging in takes a second or two; a server that has not answered by now is not coming. */
55
+ const START_WAIT_MS = 15_000;
56
+ /**
57
+ * A server for this profile, answering — started if none is, waited for if another command is
58
+ * already starting one. `false`: none came up (no session, or MAX refused its login lately).
59
+ */
60
+ export const ensureServer = async (store) => {
61
+ if (await answers(store.socketPath()))
62
+ return true;
63
+ if (store.readToken() === undefined)
64
+ return false;
65
+ const refusedAt = statSync(refusedPath(store), { throwIfNoEntry: false })?.mtimeMs;
66
+ if (refusedAt !== undefined && Date.now() - refusedAt < REFUSED_PAUSE_MS)
67
+ return false;
68
+ const asked = Date.now();
69
+ startInBackground(store);
70
+ const until = asked + START_WAIT_MS;
71
+ while (Date.now() < until) {
72
+ await new Promise((resolve) => setTimeout(resolve, 200));
73
+ if (await answers(store.socketPath()))
74
+ return true;
75
+ if ((statSync(refusedPath(store), { throwIfNoEntry: false })?.mtimeMs ?? 0) >= asked)
76
+ return false;
77
+ }
78
+ return false;
40
79
  };
41
80
  //# sourceMappingURL=start.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/server/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,+DAA+D;AAC/D,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,GAAG,MAAM,CAAA;AAElC,oFAAoF;AACpF,MAAM,cAAc,GAAG,MAAM,CAAA;AAE7B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAmB,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAW,EAAE;IACzF,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,EAAE,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IAE3D,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IAChC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC1D,IAAI,CAAC;QACH,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC,CAAA;QACrE,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,cAAc;YAAE,OAAO,KAAK,CAAA;QACtD,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,KAAK,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,YAAY,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;IAC1F,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,OAAO,GAAG,MAAM,GAAG,CAAC,EAAE;QACvG,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,CAAC;QAChC,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,CAAC,OAAO,EAAE;KACpD,CAAC,CAAA;IACF,KAAK,CAAC,KAAK,EAAE,CAAA;IACb,SAAS,CAAC,GAAG,CAAC,CAAA;IACd,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/server/start.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"adopt.d.ts","sourceRoot":"","sources":["../../src/session/adopt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,GAAU,QAAQ,SAAS,EAAE,OAAO,YAAY,EAAE,OAAO,MAAM,KAAG,OAAO,CAAC,IAAI,CAUpG,CAAA"}
1
+ {"version":3,"file":"adopt.d.ts","sourceRoot":"","sources":["../../src/session/adopt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAE7C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,UAAU,GAAU,QAAQ,SAAS,EAAE,OAAO,YAAY,EAAE,OAAO,MAAM,KAAG,OAAO,CAAC,IAAI,CAYpG,CAAA"}
@@ -1,3 +1,5 @@
1
+ import { rmSync } from "node:fs";
2
+ import { refusedPath } from "../server/start.js";
1
3
  /**
2
4
  * Takes a token into a profile — **logging in first, and writing to the keyring only after.**
3
5
  *
@@ -26,5 +28,7 @@ export const adoptToken = async (client, store, token) => {
26
28
  // 2026-09-24 a profile that already held a token kept it, and the command still said "stored".
27
29
  if (store.readToken() === before)
28
30
  store.writeToken(token);
31
+ // A new session: background servers may try again at once.
32
+ rmSync(refusedPath(store), { force: true });
29
33
  };
30
34
  //# sourceMappingURL=adopt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adopt.js","sourceRoot":"","sources":["../../src/session/adopt.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,MAAiB,EAAE,KAAmB,EAAE,KAAa,EAAiB,EAAE;IACvG,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAA;IAChC,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAE/B,+FAA+F;IAC/F,kGAAkG;IAClG,iGAAiG;IACjG,6FAA6F;IAC7F,+FAA+F;IAC/F,IAAI,KAAK,CAAC,SAAS,EAAE,KAAK,MAAM;QAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AAC3D,CAAC,CAAA"}
1
+ {"version":3,"file":"adopt.js","sourceRoot":"","sources":["../../src/session/adopt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAEhC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,MAAiB,EAAE,KAAmB,EAAE,KAAa,EAAiB,EAAE;IACvG,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,EAAE,CAAA;IAChC,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IAE/B,+FAA+F;IAC/F,kGAAkG;IAClG,iGAAiG;IACjG,6FAA6F;IAC7F,+FAA+F;IAC/F,IAAI,KAAK,CAAC,SAAS,EAAE,KAAK,MAAM;QAAE,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;IACzD,2DAA2D;IAC3D,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;AAC7C,CAAC,CAAA"}
@@ -12,7 +12,7 @@ export interface SessionOptions {
12
12
  * changed in each collection since the one given, so a stored marker is the difference between
13
13
  * re-fetching every chat and every contact on every invocation and receiving the handful that
14
14
  * moved. Where it is kept, and why the merge and the marker share a transaction, is
15
- * `docs/architecture/session.md`.
15
+ * `docs/dev/architecture/session.md`.
16
16
  *
17
17
  * All four carry the same value: nothing reads presence or drafts, and sending the marker in
18
18
  * those two as well was measured harmless on the real account (`NEED-103`).
@@ -1,10 +1,10 @@
1
1
  import { accountCloseSessions, accountSessions, accountUpdate } from "./operations/account.js";
2
2
  import { attachmentsFile, attachmentsVideo } from "./operations/attachments.js";
3
- import { chatDelete, chatMark, chatsHistory, chatsJoin, chatsLeave, chatsLinkInfo, chatsList, chatsMembers, chatsUpdate, chatsUpdateMembers, } from "./operations/chats.js";
3
+ import { chatDelete, chatsHistory, chatsJoin, chatsLeave, chatsLinkInfo, chatsList, chatsMark, chatsMembers, chatsUpdate, chatsUpdateMembers, } from "./operations/chats.js";
4
4
  import { contactsByPhone, contactsImport, contactsInfo, contactsUpdate, unidentified36 } from "./operations/contacts.js";
5
5
  import { foldersDelete, foldersList, foldersUpdate } from "./operations/folders.js";
6
6
  import { loginByQr, loginPassword, loginQrRequest, loginQrStatus, loginSmsCode, loginSmsRequest, qrApprove, } from "./operations/login.js";
7
- import { messageDelete, messagesEdit, messagesReact, messagesReactions, messagesSend, messagesUnreact, } from "./operations/messages.js";
7
+ import { messagesDelete, messagesEdit, messagesReact, messagesReactions, messagesSend, messagesUnreact, } from "./operations/messages.js";
8
8
  import { logout, sessionInit, sessionLogin, sessionPing } from "./operations/session.js";
9
9
  import { uploadsFile, uploadsPhoto } from "./operations/uploads.js";
10
10
  export { checkResponse } from "./check.js";
@@ -41,7 +41,7 @@ export const spec = [
41
41
  foldersUpdate,
42
42
  foldersDelete,
43
43
  chatsHistory,
44
- chatMark,
44
+ chatsMark,
45
45
  chatsList,
46
46
  chatsLinkInfo,
47
47
  chatsJoin,
@@ -55,7 +55,7 @@ export const spec = [
55
55
  messagesReact,
56
56
  messagesUnreact,
57
57
  messagesReactions,
58
- messageDelete,
58
+ messagesDelete,
59
59
  attachmentsVideo,
60
60
  attachmentsFile,
61
61
  uploadsPhoto,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spec/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC/E,OAAO,EACL,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,aAAa,EACb,SAAS,EACT,YAAY,EACZ,WAAW,EACX,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACxH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,EACZ,eAAe,EACf,SAAS,GACV,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,aAAa,EACb,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,eAAe,GAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACxF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAE5B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,IAAI,GAAqB;IACpC,WAAW;IACX,YAAY;IACZ,WAAW;IACX,MAAM;IACN,cAAc;IACd,aAAa;IACb,SAAS;IACT,SAAS;IACT,eAAe;IACf,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,eAAe;IACf,cAAc;IACd,cAAc;IACd,cAAc;IACd,aAAa;IACb,eAAe;IACf,oBAAoB;IACpB,WAAW;IACX,aAAa;IACb,aAAa;IACb,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,aAAa;IACb,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,eAAe;IACf,iBAAiB;IACjB,aAAa;IACb,gBAAgB;IAChB,eAAe;IACf,YAAY;IACZ,WAAW;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAyB,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAsB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;AAEtH,MAAM,CAAC,MAAM,YAAY,GAA2B,IAAI,CAAC,MAAM,CAC7D,CAAC,KAAK,EAAwB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAC9D,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/spec/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAC9F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC/E,OAAO,EACL,UAAU,EACV,YAAY,EACZ,SAAS,EACT,UAAU,EACV,aAAa,EACb,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,kBAAkB,GACnB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACxH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACnF,OAAO,EACL,SAAS,EACT,aAAa,EACb,cAAc,EACd,aAAa,EACb,YAAY,EACZ,eAAe,EACf,SAAS,GACV,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EACL,cAAc,EACd,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,YAAY,EACZ,eAAe,GAChB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACxF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEnE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAE5B;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,IAAI,GAAqB;IACpC,WAAW;IACX,YAAY;IACZ,WAAW;IACX,MAAM;IACN,cAAc;IACd,aAAa;IACb,SAAS;IACT,SAAS;IACT,eAAe;IACf,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,eAAe;IACf,cAAc;IACd,cAAc;IACd,cAAc;IACd,aAAa;IACb,eAAe;IACf,oBAAoB;IACpB,WAAW;IACX,aAAa;IACb,aAAa;IACb,YAAY;IACZ,SAAS;IACT,SAAS;IACT,aAAa;IACb,SAAS;IACT,UAAU;IACV,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,UAAU;IACV,YAAY;IACZ,YAAY;IACZ,aAAa;IACb,eAAe;IACf,iBAAiB;IACjB,cAAc;IACd,gBAAgB;IAChB,eAAe;IACf,YAAY;IACZ,WAAW;CACZ,CAAA;AAED,MAAM,CAAC,MAAM,UAAU,GAAyB,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,EAAsB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAA;AAEtH,MAAM,CAAC,MAAM,YAAY,GAA2B,IAAI,CAAC,MAAM,CAC7D,CAAC,KAAK,EAAwB,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAC9D,CAAA"}
@@ -13,7 +13,8 @@ export declare const chatsHistory: import("../define.js").Operation<v.StrictObje
13
13
  readonly backward: v.NumberSchema<undefined>;
14
14
  readonly forwardTime: v.NumberSchema<undefined>;
15
15
  readonly backwardTime: v.NumberSchema<undefined>;
16
- readonly itemType: v.LiteralSchema<"REGULAR", undefined>;
16
+ /** `DELAYED` is the queue of scheduled messages, read with `from: 1` and `forward` (measured 2026-09-24). */
17
+ readonly itemType: v.PicklistSchema<["REGULAR", "DELAYED"], undefined>;
17
18
  readonly getChat: v.BooleanSchema<undefined>;
18
19
  readonly getMessages: v.BooleanSchema<undefined>;
19
20
  /** False for the same reason as on login: a script reading is not a person looking. */
@@ -21,7 +22,16 @@ export declare const chatsHistory: import("../define.js").Operation<v.StrictObje
21
22
  }, undefined>, v.LooseObjectSchema<{
22
23
  readonly messages: v.OptionalSchema<v.ArraySchema<v.LooseObjectSchema<{}, undefined>, undefined>, undefined>;
23
24
  }, undefined>>;
24
- export declare const chatMark: import("../define.js").Reservation;
25
+ export declare const chatsMark: import("../define.js").Operation<v.StrictObjectSchema<{
26
+ readonly type: v.LiteralSchema<"READ_MESSAGE", undefined>;
27
+ readonly chatId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
28
+ readonly messageId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
29
+ /** When it was read, in milliseconds. */
30
+ readonly mark: v.NumberSchema<undefined>;
31
+ }, undefined>, v.LooseObjectSchema<{
32
+ readonly unread: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
33
+ readonly mark: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
34
+ }, undefined>>;
25
35
  export declare const chatsLinkInfo: import("../define.js").Operation<v.StrictObjectSchema<{
26
36
  readonly link: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
27
37
  }, undefined>, v.LooseObjectSchema<{
@@ -1 +1 @@
1
- {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,SAAS;IAMlB,6DAA6D;;;;;cAU/D,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;IAerB,uFAAuF;;;;cAKzF,CAAA;AAEF,eAAO,MAAM,QAAQ,oCAOnB,CAAA;AAKF,eAAO,MAAM,aAAa;;;;cAYxB,CAAA;AAEF,eAAO,MAAM,SAAS;;;;cAapB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;cAYrB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;cA6BtB,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;cAgBvB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;IAS3B,uCAAuC;;;IAGvC,iGAAiG;;IAEjG,mGAAmG;;;;cAarG,CAAA;AAEF,eAAO,MAAM,UAAU,oCAOrB,CAAA"}
1
+ {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,SAAS;IAMlB,6DAA6D;;;;;cAU/D,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;IAYrB,6GAA6G;;;;IAI7G,uFAAuF;;;;cAWzF,CAAA;AAEF,eAAO,MAAM,SAAS;;;;IAalB,yCAAyC;;;;;cAc3C,CAAA;AAKF,eAAO,MAAM,aAAa;;;;cAYxB,CAAA;AAEF,eAAO,MAAM,SAAS;;;;cAapB,CAAA;AAEF,eAAO,MAAM,UAAU;;;;cAYrB,CAAA;AAEF,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;cA6BtB,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;cAgBvB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;IAS3B,uCAAuC;;;IAGvC,iGAAiG;;IAEjG,mGAAmG;;;;cAarG,CAAA;AAEF,eAAO,MAAM,UAAU,oCAOrB,CAAA"}
@@ -30,21 +30,48 @@ export const chatsHistory = defineOperation({
30
30
  backward: v.number(),
31
31
  forwardTime: v.number(),
32
32
  backwardTime: v.number(),
33
- itemType: v.literal("REGULAR"),
33
+ /** `DELAYED` is the queue of scheduled messages, read with `from: 1` and `forward` (measured 2026-09-24). */
34
+ itemType: v.picklist(["REGULAR", "DELAYED"]),
34
35
  getChat: v.boolean(),
35
36
  getMessages: v.boolean(),
36
37
  /** False for the same reason as on login: a script reading is not a person looking. */
37
38
  interactive: v.literal(false),
38
39
  }),
39
40
  response: v.looseObject({ messages: v.optional(v.array(v.looseObject({}))) }),
40
- provenance: { confidence: "measured", sources: ["measured against MAX 2026-09-19"] },
41
+ provenance: {
42
+ confidence: "measured",
43
+ sources: [
44
+ "measured against MAX 2026-09-19",
45
+ "`DELAYED` from web.max.ru (2026-09-24, `FIND-78`), measured 2026-09-24 in Saved messages (`pnpm probe:scheduled`)",
46
+ ],
47
+ },
41
48
  });
42
- export const chatMark = reserveOpcode({
49
+ export const chatsMark = defineOperation({
43
50
  name: "chats.mark",
44
51
  constant: "CHAT_MARK",
45
52
  opcode: 50,
46
- reason: "Reading is observational by construction. Marking a conversation read is a change to somebody's account that no read command asked for, so 50 is declared here and never sent — and `src/client.test.ts` asserts its absence from everything the client sent.",
47
- provenance: { confidence: "confirmed", sources: ["tsmax", "max-api-docs/protocol/chats.md"] },
53
+ auth: true,
54
+ /**
55
+ * Sent only by `max chats read` and `messages list --mark-read`: reading never sends it, and the
56
+ * tests that assert so stay (REQUIREMENTS §19).
57
+ */
58
+ request: v.strictObject({
59
+ type: v.literal("READ_MESSAGE"),
60
+ chatId: id(),
61
+ messageId: id(),
62
+ /** When it was read, in milliseconds. */
63
+ mark: v.number(),
64
+ }),
65
+ response: v.looseObject({ unread: v.optional(v.number()), mark: v.optional(v.number()) }),
66
+ provenance: {
67
+ confidence: "observed",
68
+ sources: [
69
+ "PyMax `api/messages/service.py` read_message, `payloads.py` ReadMessagesPayload, `types/domain/message.py` ReadState (53103f0)",
70
+ "tsmax",
71
+ "max-api-docs/protocol/chats.md",
72
+ ],
73
+ notes: "Not measured: the shape is PyMax's. PyMax also sends `type: READ_REACTION`, which is not used here (`CLI-33`).",
74
+ },
48
75
  });
49
76
  /** `join/<token>` — what 57 and 89 take for a private link. A public channel's link goes whole. */
50
77
  const link = () => v.pipe(v.string(), v.minLength(1));
@@ -1 +1 @@
1
- {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../../src/spec/operations/chats.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,14 @@ export declare const messagesSend: import("../define.js").Operation<v.UnionSchem
25
25
  readonly messageId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
26
26
  readonly chatId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
27
27
  }, undefined>], undefined>, undefined>;
28
+ /**
29
+ * When MAX itself sends it, in epoch milliseconds — the message waits in the chat's DELAYED
30
+ * history until then. The answer adds `notifySender` and `notifyOpponents`, which we leave
31
+ * to MAX as the web client does (measured 2026-09-24, `FIND-139`).
32
+ */
33
+ readonly delayedAttributes: v.OptionalSchema<v.StrictObjectSchema<{
34
+ readonly timeToFire: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>]>;
35
+ }, undefined>, undefined>;
28
36
  }, undefined>;
29
37
  readonly notify: v.BooleanSchema<undefined>;
30
38
  }, undefined>, v.StrictObjectSchema<{
@@ -79,5 +87,9 @@ export declare const messagesUnreact: import("../define.js").Operation<v.StrictO
79
87
  }, undefined>, v.LooseObjectSchema<{
80
88
  readonly reactionInfo: v.OptionalSchema<v.LooseObjectSchema<{}, undefined>, undefined>;
81
89
  }, undefined>>;
82
- export declare const messageDelete: import("../define.js").Reservation;
90
+ export declare const messagesDelete: import("../define.js").Operation<v.StrictObjectSchema<{
91
+ readonly chatId: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>;
92
+ readonly messageIds: v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "an id is a whole number written as a string">, v.TransformAction<string, bigint>]>, undefined>;
93
+ readonly forMe: v.BooleanSchema<undefined>;
94
+ }, undefined>, v.LooseObjectSchema<{}, undefined>>;
83
95
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,YAAY;;;QASjB,2FAA2F;;QAE3F;;;WAGG;;QAEH,+GAA+G;;;;;;;QAG/G,+FAA+F;;;;;;;;;;;;;;;;;;;;;;;;;;cA6CrG,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;IAUrB,2FAA2F;;;;cAgB7F,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;cAiB5B,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;cAqBxB,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;cAY1B,CAAA;AAEF,eAAO,MAAM,aAAa,oCAOxB,CAAA"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/spec/operations/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,eAAO,MAAM,YAAY;;;QASjB,2FAA2F;;QAE3F;;;WAGG;;QAEH,+GAA+G;;;;;;;QAG/G,+FAA+F;;;;;;;;;QAQ/F;;;;WAIG;;;;;;;;;;;;;;;;;;;;;cAwCT,CAAA;AAEF,eAAO,MAAM,YAAY;;;;;;;;;IAUrB,2FAA2F;;;;cAgB7F,CAAA;AAEF,eAAO,MAAM,iBAAiB;;;;;cAiB5B,CAAA;AAEF,eAAO,MAAM,aAAa;;;;;;;;;cAqBxB,CAAA;AAEF,eAAO,MAAM,eAAe;;;;;cAY1B,CAAA;AAEF,eAAO,MAAM,cAAc;;;;kDAczB,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import * as v from "valibot";
2
- import { defineOperation, reserveOpcode } from "../define.js";
2
+ import { defineOperation } from "../define.js";
3
3
  import { id } from "../scalars.js";
4
4
  export const messagesSend = defineOperation({
5
5
  name: "messages.send",
@@ -26,6 +26,12 @@ export const messagesSend = defineOperation({
26
26
  /** `chatId` is the chat the message is forwarded **from** (web.max.ru, PyMax). */
27
27
  v.strictObject({ type: v.literal("FORWARD"), messageId: id(), chatId: id() }),
28
28
  ])),
29
+ /**
30
+ * When MAX itself sends it, in epoch milliseconds — the message waits in the chat's DELAYED
31
+ * history until then. The answer adds `notifySender` and `notifyOpponents`, which we leave
32
+ * to MAX as the web client does (measured 2026-09-24, `FIND-139`).
33
+ */
34
+ delayedAttributes: v.optional(v.strictObject({ timeToFire: v.pipe(v.number(), v.integer()) })),
29
35
  }),
30
36
  notify: v.boolean(),
31
37
  }),
@@ -58,6 +64,7 @@ export const messagesSend = defineOperation({
58
64
  "the FORWARD link: web.max.ru `_app/immutable/chunks/5oCuRT0F.js` (2026-09-24), PyMax `api/messages/payloads.py:56-73`",
59
65
  "a forward with no `text` and no `elements` measured 2026-09-24 in Saved messages (`pnpm probe:edit-pin-forward`)",
60
66
  "group creation measured 2026-09-24 (`pnpm probe:groups`); shape from PyMax create_group",
67
+ "`delayedAttributes` from web.max.ru (2026-09-24, `FIND-78`), measured 2026-09-24 in Saved messages (`pnpm probe:scheduled`)",
61
68
  ],
62
69
  notes: "How long MAX remembers a `cid` is still unmeasured (`PROTO-2`); the two probes were seconds apart. " +
63
70
  "The forward was measured from chat 0 to chat 0, so that `link.chatId` is the source rests on the two clients.",
@@ -140,11 +147,18 @@ export const messagesUnreact = defineOperation({
140
147
  notes: "Answers the reactions left, `{reactionInfo: {}}` when none. A second call is answered the same.",
141
148
  },
142
149
  });
143
- export const messageDelete = reserveOpcode({
150
+ export const messagesDelete = defineOperation({
144
151
  name: "messages.delete",
145
152
  constant: "MSG_DELETE",
146
153
  opcode: 66,
147
- reason: "Deliberately never called. Giving this tool the ability to destroy somebody's messages, in order to tidy up after a test, is a poor trade (`NEED-32`).",
148
- provenance: { confidence: "observed", sources: ["tsmax"] },
154
+ auth: true,
155
+ request: v.strictObject({ chatId: id(), messageIds: v.array(id()), forMe: v.boolean() }),
156
+ response: v.looseObject({}),
157
+ provenance: {
158
+ confidence: "observed",
159
+ sources: ["PyMax 2.4.1 `delete_message`", "tsmax"],
160
+ notes: "`forMe: true` removes the messages for this account only, `false` for everyone in the chat. Sent only by " +
161
+ "`max messages delete`, on the owner's word each time (`NEED-32` corrected, `MAX-47`). Not yet measured.",
162
+ },
149
163
  });
150
164
  //# sourceMappingURL=messages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/spec/operations/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC7D,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAA;AAElC,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;QACf,CAAC,CAAC,YAAY,CAAC;YACb,MAAM,EAAE,EAAE,EAAE;YACZ,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;gBACtB,2FAA2F;gBAC3F,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC5B;;;mBAGG;gBACH,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;gBACpC,+GAA+G;gBAC/G,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;gBACzG,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC9B,+FAA+F;gBAC/F,IAAI,EAAE,CAAC,CAAC,QAAQ,CACd,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE;oBAChB,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC;oBAC7D,kFAAkF;oBAClF,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;iBAC9E,CAAC,CACH;aACF,CAAC;YACF,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;SACpB,CAAC;QACF;;;WAGG;QACH,CAAC,CAAC,YAAY,CAAC;YACb,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;gBACtB,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;gBACpC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC;oBAChB,CAAC,CAAC,YAAY,CAAC;wBACb,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;wBAC3B,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;wBACvB,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;wBAC3B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;wBACzC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;qBACvB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;SACpB,CAAC;KACH,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACxG,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,0FAA0F;YAC1F,+GAA+G;YAC/G,uHAAuH;YACvH,kHAAkH;YAClH,yFAAyF;SAC1F;QACD,KAAK,EACH,qGAAqG;YACrG,+GAA+G;KAClH;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,eAAe,CAAC;IAC1C,IAAI,EAAE,eAAe;IACrB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE,EAAE;QACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7F,2FAA2F;QAC3F,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;KAClC,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACnE,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,mFAAmF;YACnF,6DAA6D;YAC7D,kDAAkD;SACnD;QACD,KAAK,EACH,oHAAoH;YACpH,8GAA8G;YAC9G,gCAAgC;KACnC;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;IAC/C,IAAI,EAAE,oBAAoB;IAC1B,QAAQ,EAAE,mBAAmB;IAC7B,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;IACpE,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,iBAAiB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC7E,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,iFAAiF;YACjF,oBAAoB;YACpB,qBAAqB;SACtB;QACD,KAAK,EACH,qMAAqM;KACxM;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;IAC3C,IAAI,EAAE,gBAAgB;IACtB,QAAQ,EAAE,cAAc;IACxB,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC;QACtB,MAAM,EAAE,EAAE,EAAE;QACZ,SAAS,EAAE,EAAE,EAAE;QACf,QAAQ,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;KAC/E,CAAC;IACF,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACxE,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE;YACP,wEAAwE;YACxE,mBAAmB;YACnB,oBAAoB;SACrB;QACD,KAAK,EACH,yHAAyH;KAC5H;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,eAAe,CAAC;IAC7C,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,qBAAqB;IAC/B,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,IAAI;IACV,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAAC;IAC1D,QAAQ,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACxE,UAAU,EAAE;QACV,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,CAAC,mDAAmD,EAAE,sBAAsB,EAAE,uBAAuB,CAAC;QAC/G,KAAK,EAAE,iGAAiG;KACzG;CACF,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC;IACzC,IAAI,EAAE,iBAAiB;IACvB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,EAAE;IACV,MAAM,EACJ,wJAAwJ;IAC1J,UAAU,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE;CAC3D,CAAC,CAAA"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/spec/operations/messages.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import type { CacheStore } from "../cache/index.js";
3
+ import type { MaxClient } from "../client.js";
4
+ import type { AttachmentLink, Id } from "../domain/models.js";
5
+ import { type SpeechModel } from "./models.js";
6
+ import { type Recognizer } from "./speech.js";
7
+ export interface Transcript {
8
+ chatId: Id;
9
+ messageId: Id;
10
+ text: string;
11
+ model: string;
12
+ /** Length of the recording; `null` when the text came from the cache. */
13
+ seconds: number | null;
14
+ cached: boolean;
15
+ }
16
+ export interface TranscribeOptions {
17
+ model: SpeechModel;
18
+ directory: string;
19
+ cache?: CacheStore | undefined;
20
+ /** Called once the audio is in hand, so the connection closes before the long part begins. */
21
+ release?: () => Promise<void>;
22
+ fetchAudio?: (link: AttachmentLink) => Promise<Uint8Array>;
23
+ open?: (model: SpeechModel, directory: string) => Recognizer;
24
+ }
25
+ export declare const notDownloaded: (model: SpeechModel) => CliError;
26
+ /**
27
+ * One voice message to text, on this machine. A text already heard by the same model comes from
28
+ * the cache, with no connection and no model loaded.
29
+ *
30
+ * ⚠ **The model is never downloaded from here** (`NEED-231`): an agent calling this through MCP must
31
+ * not start a 230–670 MB download. The refusal names the command that does it.
32
+ */
33
+ export declare const transcribe: (client: MaxClient, chatId: Id, messageId: Id, { model, directory, cache, release, fetchAudio, open }: TranscribeOptions) => Promise<Transcript>;
34
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transcribe/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAA;AAG7D,OAAO,EAAE,KAAK,WAAW,EAAO,MAAM,aAAa,CAAA;AACnD,OAAO,EAA6B,KAAK,UAAU,EAAe,MAAM,aAAa,CAAA;AAErF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,EAAE,CAAA;IACV,SAAS,EAAE,EAAE,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,yEAAyE;IACzE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,MAAM,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,WAAW,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,UAAU,GAAG,SAAS,CAAA;IAC9B,8FAA8F;IAC9F,OAAO,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1D,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,KAAK,UAAU,CAAA;CAC7D;AAED,eAAO,MAAM,aAAa,GAAI,OAAO,WAAW,KAAG,QAKhD,CAAA;AAKH;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,GACrB,QAAQ,SAAS,EACjB,QAAQ,EAAE,EACV,WAAW,EAAE,EACb,wDAAqF,iBAAiB,KACrG,OAAO,CAAC,UAAU,CA0BpB,CAAA"}
@@ -0,0 +1,43 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import { fetchBytes } from "../download.js";
3
+ import { installedBytes, isInstalled, megabytes, modelPath, vadPath } from "./install.js";
4
+ import { VAD } from "./models.js";
5
+ import { decodeOgg, openRecognizer, toModelRate } from "./speech.js";
6
+ export const notDownloaded = (model) => new CliError("not_found", `the speech model ${model.id} is not downloaded — \`max models audio download ${model.id}\` fetches it ` +
7
+ `(${megabytes(installedBytes(model) + VAD.bytes)}, once)`);
8
+ const openInstalled = (model, directory) => openRecognizer(model, modelPath(directory, model), vadPath(directory));
9
+ /**
10
+ * One voice message to text, on this machine. A text already heard by the same model comes from
11
+ * the cache, with no connection and no model loaded.
12
+ *
13
+ * ⚠ **The model is never downloaded from here** (`NEED-231`): an agent calling this through MCP must
14
+ * not start a 230–670 MB download. The refusal names the command that does it.
15
+ */
16
+ export const transcribe = async (client, chatId, messageId, { model, directory, cache, release, fetchAudio = fetchBytes, open = openInstalled }) => {
17
+ const kept = cache?.messages.transcript(chatId, messageId);
18
+ if (kept && kept.model === model.id) {
19
+ return { chatId, messageId, text: kept.text, model: model.id, seconds: null, cached: true };
20
+ }
21
+ if (!isInstalled(model, directory))
22
+ throw notDownloaded(model);
23
+ const { links } = await client.messages.links(chatId, messageId);
24
+ const voice = links.find((link) => link.kind === "audio");
25
+ if (!voice)
26
+ throw new CliError("validation_error", `message ${messageId} has no voice recording to transcribe`);
27
+ const bytes = await fetchAudio(voice);
28
+ await release?.();
29
+ const { samples, rate } = await decodeOgg(bytes).catch((error) => {
30
+ throw new CliError("invalid_response", `the recording could not be read as Ogg Opus: ${error.message}`);
31
+ });
32
+ const pcm = toModelRate(samples, rate);
33
+ const recognizer = open(model, directory);
34
+ try {
35
+ const text = recognizer.recognize(pcm);
36
+ cache?.messages.keepTranscript(chatId, messageId, text, model.id);
37
+ return { chatId, messageId, text, model: model.id, seconds: Math.round(samples.length / rate), cached: false };
38
+ }
39
+ finally {
40
+ recognizer.free();
41
+ }
42
+ };
43
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transcribe/index.ts"],"names":[],"mappings":"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"}