@leemour/cli-messaging 0.146.0 → 0.147.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 (88) hide show
  1. package/dist/background/units.d.ts +1 -0
  2. package/dist/background/units.d.ts.map +1 -1
  3. package/dist/background/units.js +9 -0
  4. package/dist/background/units.js.map +1 -1
  5. package/dist/cli/bot/people.js +1 -1
  6. package/dist/cli/bot/people.js.map +1 -1
  7. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  8. package/dist/cli/messenger/backfill-command.js +4 -0
  9. package/dist/cli/messenger/backfill-command.js.map +1 -1
  10. package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
  11. package/dist/cli/messenger/chats-members-command.js +35 -1
  12. package/dist/cli/messenger/chats-members-command.js.map +1 -1
  13. package/dist/cli/messenger/chats-stats-command.js +1 -1
  14. package/dist/cli/messenger/chats-stats-command.js.map +1 -1
  15. package/dist/cli/messenger/context.d.ts +2 -0
  16. package/dist/cli/messenger/context.d.ts.map +1 -1
  17. package/dist/cli/messenger/context.js.map +1 -1
  18. package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
  19. package/dist/cli/messenger/messages-search-command.js +3 -1
  20. package/dist/cli/messenger/messages-search-command.js.map +1 -1
  21. package/dist/cli/messenger/points.d.ts +2 -1
  22. package/dist/cli/messenger/points.d.ts.map +1 -1
  23. package/dist/cli/messenger/points.js +1 -0
  24. package/dist/cli/messenger/points.js.map +1 -1
  25. package/dist/cli/messenger/server-command.d.ts.map +1 -1
  26. package/dist/cli/messenger/server-command.js +18 -2
  27. package/dist/cli/messenger/server-command.js.map +1 -1
  28. package/dist/domain/models.d.ts +10 -0
  29. package/dist/domain/models.d.ts.map +1 -1
  30. package/dist/mcp/prompts.d.ts.map +1 -1
  31. package/dist/mcp/prompts.js +27 -8
  32. package/dist/mcp/prompts.js.map +1 -1
  33. package/dist/mcp/tools/chats.d.ts.map +1 -1
  34. package/dist/mcp/tools/chats.js +19 -1
  35. package/dist/mcp/tools/chats.js.map +1 -1
  36. package/dist/mcp/tools/inbox.d.ts +2 -0
  37. package/dist/mcp/tools/inbox.d.ts.map +1 -1
  38. package/dist/mcp/tools/inbox.js +27 -4
  39. package/dist/mcp/tools/inbox.js.map +1 -1
  40. package/dist/mcp/tools/review.d.ts.map +1 -1
  41. package/dist/mcp/tools/review.js +23 -2
  42. package/dist/mcp/tools/review.js.map +1 -1
  43. package/dist/replies/decide.d.ts +34 -0
  44. package/dist/replies/decide.d.ts.map +1 -0
  45. package/dist/replies/decide.js +109 -0
  46. package/dist/replies/decide.js.map +1 -0
  47. package/dist/replies/rules.d.ts +127 -0
  48. package/dist/replies/rules.d.ts.map +1 -0
  49. package/dist/replies/rules.js +119 -0
  50. package/dist/replies/rules.js.map +1 -0
  51. package/dist/replies/state.d.ts +36 -0
  52. package/dist/replies/state.d.ts.map +1 -0
  53. package/dist/replies/state.js +67 -0
  54. package/dist/replies/state.js.map +1 -0
  55. package/dist/search/search.d.ts.map +1 -1
  56. package/dist/search/search.js +4 -3
  57. package/dist/search/search.js.map +1 -1
  58. package/dist/services/archive.d.ts.map +1 -1
  59. package/dist/services/archive.js +4 -2
  60. package/dist/services/archive.js.map +1 -1
  61. package/dist/services/chat-stats.d.ts +3 -0
  62. package/dist/services/chat-stats.d.ts.map +1 -1
  63. package/dist/services/chat-stats.js +3 -0
  64. package/dist/services/chat-stats.js.map +1 -1
  65. package/dist/services/chats.d.ts +10 -0
  66. package/dist/services/chats.d.ts.map +1 -1
  67. package/dist/services/chats.js +61 -0
  68. package/dist/services/chats.js.map +1 -1
  69. package/dist/services/members-audit.d.ts +44 -0
  70. package/dist/services/members-audit.d.ts.map +1 -0
  71. package/dist/services/members-audit.js +111 -0
  72. package/dist/services/members-audit.js.map +1 -0
  73. package/dist/services/messages-search.d.ts +4 -2
  74. package/dist/services/messages-search.d.ts.map +1 -1
  75. package/dist/services/messages-search.js +13 -5
  76. package/dist/services/messages-search.js.map +1 -1
  77. package/dist/services/messages.js +1 -1
  78. package/dist/services/messages.js.map +1 -1
  79. package/dist/store/sqlite/completeness.d.ts +10 -1
  80. package/dist/store/sqlite/completeness.d.ts.map +1 -1
  81. package/dist/store/sqlite/completeness.js +15 -3
  82. package/dist/store/sqlite/completeness.js.map +1 -1
  83. package/dist/store/store.d.ts +2 -1
  84. package/dist/store/store.d.ts.map +1 -1
  85. package/dist/store/store.js +9 -2
  86. package/dist/store/store.js.map +1 -1
  87. package/package.json +1 -1
  88. package/parity.json +16 -0
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/services/archive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/services/archive.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export interface TopPost {
9
9
  /** Telegram channel posts only; absent where the messenger did not say. */
10
10
  views?: number;
11
11
  forwards?: number;
12
+ /** Comments under a channel post. */
13
+ comments?: number;
12
14
  }
13
15
  export interface MemberChanges {
14
16
  joined: number;
@@ -46,6 +48,7 @@ export interface ChatStats {
46
48
  /** Present only when some stored message carries the number. */
47
49
  views?: number;
48
50
  forwards?: number;
51
+ comments?: number;
49
52
  topPosts: TopPost[];
50
53
  questions: {
51
54
  asked: number;
@@ -1 +1 @@
1
- {"version":3,"file":"chat-stats.d.ts","sourceRoot":"","sources":["../../src/services/chat-stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAIzD,eAAO,MAAM,SAAS,IAAI,CAAA;AAE1B,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAA;AAExC,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,EAAE,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,6FAA6F;IAC7F,IAAI,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,0GAA0G;IAC1G,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,gBAAgB,CAAA;IAC9B,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;QACpC,UAAU,EAAE,OAAO,GAAG,kBAAkB,CAAA;KACzC,CAAA;IACD,kGAAkG;IAClG,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;CACpB;AAKD,eAAO,MAAM,SAAS,aACV,OAAO,EAAE,yEAUhB;IACD,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,gBAAgB,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAA;IACnB,EAAE,CAAC,EAAE,WAAW,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,KACA,SAqCF,CAAA"}
1
+ {"version":3,"file":"chat-stats.d.ts","sourceRoot":"","sources":["../../src/services/chat-stats.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAIzD,eAAO,MAAM,SAAS,IAAI,CAAA;AAE1B,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAA;AAExC,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,EAAE,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,EAAE,MAAM,CAAA;IACX,kFAAkF;IAClF,KAAK,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,2BAA2B,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1C,6FAA6F;IAC7F,IAAI,EAAE,OAAO,CAAA;CACd;AAED,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,0GAA0G;IAC1G,QAAQ,EAAE,OAAO,CAAA;IACjB,YAAY,EAAE,gBAAgB,CAAA;IAC9B,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,yFAAyF;IACzF,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,SAAS,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAA;QACpC,UAAU,EAAE,OAAO,GAAG,kBAAkB,CAAA;KACzC,CAAA;IACD,kGAAkG;IAClG,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAA;CACpB;AAKD,eAAO,MAAM,SAAS,aACV,OAAO,EAAE,yEAUhB;IACD,MAAM,EAAE,EAAE,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,gBAAgB,CAAA;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAA;IACnB,MAAM,EAAE,EAAE,EAAE,GAAG,IAAI,CAAA;IACnB,EAAE,CAAC,EAAE,WAAW,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB,KACA,SAsCF,CAAA"}
@@ -24,6 +24,7 @@ export const chatStats = (messages, { chatId, since, until, completeness, events
24
24
  reactions: sum(held.map(reactionsOf)),
25
25
  ...summed(held, "views"),
26
26
  ...summed(held, "forwards"),
27
+ ...summed(held, "comments"),
27
28
  topPosts: topPosts(held),
28
29
  questions: {
29
30
  asked: asked.length,
@@ -49,12 +50,14 @@ const topPosts = (messages) => messages
49
50
  .map((one) => {
50
51
  const views = counted(one, "views");
51
52
  const forwards = counted(one, "forwards");
53
+ const comments = counted(one, "comments");
52
54
  return {
53
55
  messageId: one.id,
54
56
  timestamp: one.timestamp,
55
57
  reactions: reactionsOf(one),
56
58
  ...(views === undefined ? {} : { views }),
57
59
  ...(forwards === undefined ? {} : { forwards }),
60
+ ...(comments === undefined ? {} : { comments }),
58
61
  };
59
62
  })
60
63
  .filter((one) => one.reactions > 0 || (one.views ?? 0) > 0)
@@ -1 +1 @@
1
- {"version":3,"file":"chat-stats.js","sourceRoot":"","sources":["../../src/services/chat-stats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-stats.js","sourceRoot":"","sources":["../../src/services/chat-stats.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { Chat, ChatCard, ChatEvents, ChatKind, GroupMember, Id, LinkTarget,
2
2
  import { type Operated } from "../sends/guarded.js";
3
3
  import { type ChatStats, type StatsPeriod } from "./chat-stats.js";
4
4
  import { type ServiceDeps } from "./deps.js";
5
+ import { type MembersAudit } from "./members-audit.js";
5
6
  /** How far back `events` looks without `since`, as in max-cli. */
6
7
  export declare const EVENTS_DAYS = 7;
7
8
  /** A filtered list searches the newest this many: paging through every dialog hit FLOOD_WAIT (tg handoff §4.14). */
@@ -51,6 +52,15 @@ export interface ChatsService {
51
52
  by?: StatsPeriod;
52
53
  timezone?: string;
53
54
  }): Promise<ChatStats>;
55
+ /**
56
+ * Members that look like bots, each with its reasons. Reads the member list a page at a time, at most
57
+ * `budget` pages with a pause between them, and never asks about one person. Acts on nobody.
58
+ */
59
+ audit(chat: string, options: {
60
+ budget?: number;
61
+ minScore?: number;
62
+ pauseMs?: number;
63
+ }): Promise<MembersAudit>;
54
64
  /** Through the guard; never counts toward the hourly limit. */
55
65
  markRead(request: {
56
66
  chat: string;
@@ -1 +1 @@
1
- {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,WAAW,EACX,EAAE,EACF,UAAU,EAGV,IAAI,EACL,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAwB,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAGzE,OAAO,EAAE,KAAK,SAAS,EAAa,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAA4B,KAAK,WAAW,EAAe,MAAM,WAAW,CAAA;AAGnF,kEAAkE;AAClE,eAAO,MAAM,WAAW,IAAI,CAAA;AAK5B,oHAAoH;AACpH,eAAO,MAAM,SAAS,MAAM,CAAA;AAE5B,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,UAAU,EAAE,QAAQ,EAA4C,CAAA;AAE7E,kFAAkF;AAClF,eAAO,MAAM,aAAa,6BAA8B,UAAU,KAAG,UAYpE,CAAA;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,EAAE,CAAA;IACV,wCAAwC;IACxC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACxF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACrC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;QAAE,MAAM,EAAE,EAAE,CAAA;KAAE,CAAC,CAAA;IACtF,oGAAoG;IACpG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACrF,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1C;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACzG,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;CACnF;AAED,eAAO,MAAM,YAAY,SAAU,WAAW,KAAG,YA6G/C,CAAA"}
1
+ {"version":3,"file":"chats.d.ts","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,WAAW,EACX,EAAE,EACF,UAAU,EAGV,IAAI,EACL,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EAAwB,KAAK,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAGzE,OAAO,EAAE,KAAK,SAAS,EAAa,KAAK,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7E,OAAO,EAA4B,KAAK,WAAW,EAAe,MAAM,WAAW,CAAA;AACnF,OAAO,EAML,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAA;AAG3B,kEAAkE;AAClE,eAAO,MAAM,WAAW,IAAI,CAAA;AAK5B,oHAAoH;AACpH,eAAO,MAAM,SAAS,MAAM,CAAA;AAE5B,iEAAiE;AACjE,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,eAAO,MAAM,UAAU,EAAE,QAAQ,EAA4C,CAAA;AAE7E,kFAAkF;AAClF,eAAO,MAAM,aAAa,6BAA8B,UAAU,KAAG,UAYpE,CAAA;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,EAAE,CAAA;IACV,wCAAwC;IACxC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACxF,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAA;IACrC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG;QAAE,MAAM,EAAE,EAAE,CAAA;KAAE,CAAC,CAAA;IACtF,oGAAoG;IACpG,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACrF,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IAC1C;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;IACzG;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC7G,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAA;CACnF;AAED,eAAO,MAAM,YAAY,SAAU,WAAW,KAAG,YAsJ/C,CAAA"}
@@ -5,6 +5,7 @@ import { codeOf, guardedWrite } from "../sends/guarded.js";
5
5
  import { newOperationId } from "../sends/send-id.js";
6
6
  import { chatStats } from "./chat-stats.js";
7
7
  import { fromStore, nothingStored, storeIfOpen } from "./deps.js";
8
+ import { AUDIT_BUDGET, AUDIT_MIN_SCORE, AUDIT_PAGE, AUDIT_PAUSE_MS, auditMembers, } from "./members-audit.js";
8
9
  import { storedChatId } from "./messages.js";
9
10
  /** How far back `events` looks without `since`, as in max-cli. */
10
11
  export const EVENTS_DAYS = 7;
@@ -112,6 +113,44 @@ export const chatsService = (deps) => ({
112
113
  ? stats
113
114
  : { ...stats, fetch: `${deps.messenger.app.command} store fetch ${chatId}` };
114
115
  },
116
+ audit: async (chat, { budget = AUDIT_BUDGET, minScore = AUDIT_MIN_SCORE, pauseMs = AUDIT_PAUSE_MS }) => {
117
+ if (fromStore(deps)) {
118
+ throw new CliError("validation_error", "`chats members audit` reads the member list from the messenger; not offline");
119
+ }
120
+ const connection = await deps.connection();
121
+ const members = capability(connection, "members", "list a group's members");
122
+ const read = [];
123
+ let chatId;
124
+ let more = true;
125
+ for (let page = 0; page < budget && more; page++) {
126
+ if (page > 0)
127
+ await new Promise((resolve) => setTimeout(resolve, pauseMs));
128
+ const found = await members(chatId ?? chat, { limit: AUDIT_PAGE, offset: read.length });
129
+ chatId = found.chatId;
130
+ read.push(...found.items);
131
+ more = found.hasMore && found.items.length > 0;
132
+ }
133
+ const id = chatId ?? chat;
134
+ const held = await storeIfOpen(deps);
135
+ const stored = held ? await storedFacts(held.store, held.account, id) : undefined;
136
+ const { items, unknown } = auditMembers(read, {
137
+ firstMessages: stored?.firstMessages,
138
+ self: connection.self(),
139
+ minScore,
140
+ });
141
+ return {
142
+ chatId: id,
143
+ read: read.length,
144
+ participantsCount: stored?.participantsCount ?? null,
145
+ more,
146
+ unknown,
147
+ ...(stored?.completeness ? { completeness: stored.completeness } : {}),
148
+ ...(stored?.completeness && stored.completeness.state !== "complete"
149
+ ? { fetch: `${deps.messenger.app.command} store fetch ${id}` }
150
+ : {}),
151
+ items,
152
+ };
153
+ },
115
154
  markRead: async ({ chat, until }) => {
116
155
  const connection = await deps.connection();
117
156
  const markRead = capability(connection, "markRead", "mark a chat read");
@@ -121,6 +160,28 @@ export const chatsService = (deps) => ({
121
160
  return { operationId, chatId, until: until ?? null };
122
161
  },
123
162
  });
163
+ /** Each sender's first stored message in the chat; `undefined` when the store holds none of it. */
164
+ const storedFacts = async (store, account, chatId) => {
165
+ const chat = (await store.chats(account, {})).items.find((one) => one.id === chatId);
166
+ const [completeness] = await store.chatCompleteness(account, [chatId]);
167
+ const firstMessages = new Map();
168
+ let before;
169
+ for (;;) {
170
+ const page = await store.messages(account, chatId, { limit: STATS_PAGE, ...(before ? { before } : {}) });
171
+ for (const message of [...page.items].reverse())
172
+ if (message.senderId)
173
+ firstMessages.set(message.senderId, message);
174
+ const oldest = page.items[0];
175
+ if (!page.hasMore || !oldest)
176
+ break;
177
+ before = oldest.id;
178
+ }
179
+ return {
180
+ participantsCount: chat?.participantsCount ?? null,
181
+ completeness,
182
+ firstMessages: firstMessages.size === 0 ? undefined : firstMessages,
183
+ };
184
+ };
124
185
  /** Oldest first. */
125
186
  const storedSince = async (store, account, chatId, since) => {
126
187
  const pages = [];
@@ -1 +1 @@
1
- {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chats.js","sourceRoot":"","sources":["../../src/services/chats.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import type { GroupMember, Id, Message } from "../domain/models.js";
2
+ import type { ChatCompleteness } from "../store/store.js";
3
+ export declare const AUDIT_PAGE = 200;
4
+ export declare const AUDIT_BUDGET = 10;
5
+ export declare const AUDIT_PAUSE_MS = 1000;
6
+ export declare const AUDIT_MIN_SCORE = 2;
7
+ export type AuditReason = "bot" | "scam" | "fake" | "deleted" | "no_photo" | "no_username" | "odd_name" | "never_wrote" | "link_first" | "burst_join" | "mass_invited";
8
+ export interface AuditedMember {
9
+ id: Id;
10
+ name: string | null;
11
+ username: string | null;
12
+ score: number;
13
+ reasons: AuditReason[];
14
+ joinedAt?: string | null;
15
+ invitedBy?: Id | null;
16
+ }
17
+ export interface MembersAudit {
18
+ chatId: Id;
19
+ /** Members read from the messenger, owner and admins included. */
20
+ read: number;
21
+ /** The chat's own count, where the store has it. */
22
+ participantsCount: number | null;
23
+ /** The budget or the messenger's own cap stopped the read: some members were not judged. */
24
+ more: boolean;
25
+ /** Signals no member in the list could carry — the messenger does not say, or the store holds no messages. */
26
+ unknown: AuditReason[];
27
+ completeness?: ChatCompleteness;
28
+ fetch?: string;
29
+ /** Highest score first; only those at `minScore` or above. Owner and admins are never in it. */
30
+ items: AuditedMember[];
31
+ }
32
+ /**
33
+ * Scores each member from what the list and the store already hold. Never a verdict: real people
34
+ * without a photo or a username are common, which is why each signal is light and the reasons are listed.
35
+ */
36
+ export declare const auditMembers: (members: GroupMember[], { firstMessages, self, minScore }: {
37
+ firstMessages: Map<Id, Message> | undefined;
38
+ self: Id | null;
39
+ minScore: number;
40
+ }) => {
41
+ items: AuditedMember[];
42
+ unknown: AuditReason[];
43
+ };
44
+ //# sourceMappingURL=members-audit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members-audit.d.ts","sourceRoot":"","sources":["../../src/services/members-audit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzD,eAAO,MAAM,UAAU,MAAM,CAAA;AAC7B,eAAO,MAAM,YAAY,KAAK,CAAA;AAC9B,eAAO,MAAM,cAAc,OAAO,CAAA;AAClC,eAAO,MAAM,eAAe,IAAI,CAAA;AAOhC,MAAM,MAAM,WAAW,GACnB,KAAK,GACL,MAAM,GACN,MAAM,GACN,SAAS,GACT,UAAU,GACV,aAAa,GACb,UAAU,GACV,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,cAAc,CAAA;AAgBlB,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,EAAE,CAAA;IACN,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,SAAS,CAAC,EAAE,EAAE,GAAG,IAAI,CAAA;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,EAAE,CAAA;IACV,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAA;IACZ,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,4FAA4F;IAC5F,IAAI,EAAE,OAAO,CAAA;IACb,8GAA8G;IAC9G,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,YAAY,CAAC,EAAE,gBAAgB,CAAA;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gGAAgG;IAChG,KAAK,EAAE,aAAa,EAAE,CAAA;CACvB;AAKD;;;GAGG;AACH,eAAO,MAAM,YAAY,YACd,WAAW,EAAE,qCACa;IAAE,aAAa,EAAE,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,EAAE,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KACpH;IAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAyDlD,CAAA"}
@@ -0,0 +1,111 @@
1
+ export const AUDIT_PAGE = 200;
2
+ export const AUDIT_BUDGET = 10;
3
+ export const AUDIT_PAUSE_MS = 1000;
4
+ export const AUDIT_MIN_SCORE = 2;
5
+ /** This many joining within `BURST_MINUTES` of each other is a burst. */
6
+ const BURST_SIZE = 5;
7
+ const BURST_MINUTES = 10;
8
+ /** One person who is not an admin bringing in this many is worth a look. */
9
+ const MASS_INVITES = 5;
10
+ const WEIGHTS = {
11
+ bot: 3,
12
+ scam: 3,
13
+ fake: 3,
14
+ deleted: 1,
15
+ no_photo: 1,
16
+ no_username: 1,
17
+ odd_name: 1,
18
+ never_wrote: 1,
19
+ link_first: 2,
20
+ burst_join: 1,
21
+ mass_invited: 1,
22
+ };
23
+ const LINK = /https?:\/\/|t\.me\/|www\./i;
24
+ const DIGITS = /\d{5,}/;
25
+ /**
26
+ * Scores each member from what the list and the store already hold. Never a verdict: real people
27
+ * without a photo or a username are common, which is why each signal is light and the reasons are listed.
28
+ */
29
+ export const auditMembers = (members, { firstMessages, self, minScore }) => {
30
+ const staff = new Set(members.filter(({ role }) => role === "owner" || role === "admin").map(({ id }) => id));
31
+ if (self)
32
+ staff.add(self);
33
+ const someHaveUsernames = members.some(({ username }) => username);
34
+ const bursts = burstJoins(members);
35
+ const invites = new Map();
36
+ for (const { invitedBy } of members)
37
+ if (invitedBy)
38
+ invites.set(invitedBy, (invites.get(invitedBy) ?? 0) + 1);
39
+ const reasonsOf = (member) => {
40
+ const first = firstMessages?.get(member.id);
41
+ const reasons = [
42
+ member.isBot === true && "bot",
43
+ member.flagged === "scam" && "scam",
44
+ member.flagged === "fake" && "fake",
45
+ member.deleted === true && "deleted",
46
+ member.hasPhoto === false && "no_photo",
47
+ someHaveUsernames && !member.username && "no_username",
48
+ oddName(member.name) && "odd_name",
49
+ firstMessages !== undefined && !first && "never_wrote",
50
+ first !== undefined && (first.forwardedFrom !== null || LINK.test(first.text)) && "link_first",
51
+ bursts.has(member.id) && "burst_join",
52
+ !!member.invitedBy &&
53
+ !staff.has(member.invitedBy) &&
54
+ (invites.get(member.invitedBy) ?? 0) >= MASS_INVITES &&
55
+ "mass_invited",
56
+ ];
57
+ return reasons.filter((one) => one !== false);
58
+ };
59
+ const items = members
60
+ .filter(({ id }) => !staff.has(id))
61
+ .map((member) => {
62
+ const reasons = reasonsOf(member);
63
+ return {
64
+ id: member.id,
65
+ name: member.name,
66
+ username: member.username,
67
+ score: reasons.reduce((total, reason) => total + WEIGHTS[reason], 0),
68
+ reasons,
69
+ ...(member.joinedAt === undefined ? {} : { joinedAt: member.joinedAt }),
70
+ ...(member.invitedBy === undefined ? {} : { invitedBy: member.invitedBy }),
71
+ };
72
+ })
73
+ .filter(({ score }) => score >= minScore)
74
+ .sort((a, b) => b.score - a.score || a.id.localeCompare(b.id));
75
+ const carried = (field) => members.some((member) => member[field] !== undefined);
76
+ const unknown = [
77
+ ...(carried("isBot") ? [] : ["bot"]),
78
+ ...(carried("flagged") ? [] : ["scam", "fake"]),
79
+ ...(carried("deleted") ? [] : ["deleted"]),
80
+ ...(carried("hasPhoto") ? [] : ["no_photo"]),
81
+ ...(firstMessages === undefined ? ["never_wrote", "link_first"] : []),
82
+ ...(carried("joinedAt") ? [] : ["burst_join"]),
83
+ ...(carried("invitedBy") ? [] : ["mass_invited"]),
84
+ ];
85
+ return { items, unknown };
86
+ };
87
+ const oddName = (name) => !name?.trim() || DIGITS.test(name) || LINK.test(name);
88
+ /** Members whose join falls in a run of `BURST_SIZE` or more, each within `BURST_MINUTES` of the next. */
89
+ const burstJoins = (members) => {
90
+ const joined = members
91
+ .flatMap(({ id, joinedAt }) => (joinedAt ? [{ id, at: Date.parse(joinedAt) }] : []))
92
+ .sort((a, b) => a.at - b.at);
93
+ const found = new Set();
94
+ let run = [];
95
+ const close = () => {
96
+ if (run.length >= BURST_SIZE)
97
+ for (const { id } of run)
98
+ found.add(id);
99
+ };
100
+ for (const one of joined) {
101
+ const last = run.at(-1);
102
+ if (last && one.at - last.at > BURST_MINUTES * 60_000) {
103
+ close();
104
+ run = [];
105
+ }
106
+ run.push(one);
107
+ }
108
+ close();
109
+ return found;
110
+ };
111
+ //# sourceMappingURL=members-audit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"members-audit.js","sourceRoot":"","sources":["../../src/services/members-audit.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Messenger } from "../cli/messenger/context.js";
2
- import type { AccountKey, ChatCompleteness, MessageStore } from "../store/store.js";
2
+ import { type AccountKey, type ChatCompleteness, type MessageStore } from "../store/store.js";
3
3
  import { type SearchFound, type SearchQuery } from "./messages.js";
4
4
  export interface QueryMetadata {
5
5
  language: "lucene-v1";
@@ -11,8 +11,10 @@ export interface QueryMetadata {
11
11
  }
12
12
  export interface SearchCoverage {
13
13
  state: "complete" | "partial" | "unknown";
14
+ /** The oldest `store fetch` of the chats in scope; `null` when one of them was never fetched. */
14
15
  lastSyncedAt: string | null;
15
- inventoryComplete: false;
16
+ /** Every account in scope has handed the store its whole chat list at least once. */
17
+ inventoryComplete: boolean;
16
18
  accounts: AccountKey[];
17
19
  chat?: string;
18
20
  coveredChats: number;
@@ -1 +1 @@
1
- {"version":3,"file":"messages-search.d.ts","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAS5D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACnF,OAAO,EAAa,KAAK,WAAW,EAAE,KAAK,WAAW,EAAe,MAAM,eAAe,CAAA;AAE1F,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,WAAW,CAAA;IACrB,OAAO,EAAE,CAAC,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,QAAQ,GAAG,WAAW,CAAA;CAC9B;AACD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;IACzC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,iBAAiB,EAAE,KAAK,CAAA;IACxB,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACrB;AAkKD,eAAO,MAAM,YAAY,UAChB,YAAY,WACV,UAAU,WACV,WAAW,cACT,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,WAAW,CA6BrB,CAAA;AAMD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAA;AAC9D,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,aAAa,CAAA;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,aAAa,CAAA;IACpB,QAAQ,EAAE,cAAc,CAAA;IACxB,YAAY,EAAE,CAAC,gBAAgB,GAAG,UAAU,CAAC,EAAE,CAAA;CAChD;AACD,eAAO,MAAM,WAAW,SAAU,MAAM,MAAM,KAAK,GAAG,MAAM,YAQ5C,MAAM,WAIrB,CAAA;AACD,wGAAwG;AACxG,eAAO,MAAM,WAAW,UACf,YAAY,WACV,UAAU,WACV,WAAW,GAAG;IAAE,EAAE,EAAE,aAAa,CAAA;CAAE,cACjC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,YAAY,CAoCtB,CAAA"}
1
+ {"version":3,"file":"messages-search.d.ts","sourceRoot":"","sources":["../../src/services/messages-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;AAS5D,OAAO,EAAE,KAAK,UAAU,EAAiB,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAC5G,OAAO,EAAa,KAAK,WAAW,EAAE,KAAK,WAAW,EAAe,MAAM,eAAe,CAAA;AAE1F,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,WAAW,CAAA;IACrB,OAAO,EAAE,CAAC,CAAA;IACV,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,QAAQ,GAAG,WAAW,CAAA;CAC9B;AACD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;IACzC,iGAAiG;IACjG,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,qFAAqF;IACrF,iBAAiB,EAAE,OAAO,CAAA;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAA;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;CACrB;AAsKD,eAAO,MAAM,YAAY,UAChB,YAAY,WACV,UAAU,WACV,WAAW,cACT,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,WAAW,CA6BrB,CAAA;AAUD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAA;AAC9D,MAAM,WAAW,QAAQ;IACvB,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;CACd;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,aAAa,CAAA;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,aAAa,CAAA;IACpB,QAAQ,EAAE,cAAc,CAAA;IACxB,YAAY,EAAE,CAAC,gBAAgB,GAAG,UAAU,CAAC,EAAE,CAAA;CAChD;AACD,eAAO,MAAM,WAAW,SAAU,MAAM,MAAM,KAAK,GAAG,MAAM,YAQ5C,MAAM,WAIrB,CAAA;AACD,wGAAwG;AACxG,eAAO,MAAM,WAAW,UACf,YAAY,WACV,UAAU,WACV,WAAW,GAAG;IAAE,EAAE,EAAE,aAAa,CAAA;CAAE,cACjC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,KACjD,OAAO,CAAC,YAAY,CAoCtB,CAAA"}
@@ -7,6 +7,7 @@ import { FIELD_VERSION, validateAst, validateFields } from "../search/lucene/reg
7
7
  import { hasText } from "../search/lucene/resolved.js";
8
8
  import { queryError, walkQuery } from "../search/lucene/types.js";
9
9
  import { inSource, sourceOf } from "../search/query.js";
10
+ import { CHAT_LIST_KEY } from "../store/store.js";
10
11
  import { chatAmong, senderAmong } from "./messages.js";
11
12
  const positiveSources = (node) => node.kind === "predicate"
12
13
  ? node.field === "in"
@@ -92,7 +93,8 @@ const prepareLucene = async (store, account, request, messenger) => {
92
93
  if (!globalChat && (chats.length !== 1 || !requiresChat(ast.root, chats[0])))
93
94
  queryError("topic_scope", { start: 0, end: 0 }, "name one required chat or use --chat");
94
95
  }
95
- if (hasText(ast.root) && !(await store.searchIndexState())?.ready)
96
+ const wordsReady = (await store.searchIndexState())?.ready === true;
97
+ if (hasText(ast.root) && !wordsReady)
96
98
  throw new CliError("validation_error", "the word index is not ready — run store migrate before strict search", {
97
99
  reason: "index_not_ready",
98
100
  });
@@ -105,11 +107,14 @@ const prepareLucene = async (store, account, request, messenger) => {
105
107
  ...(request.signal ? { signal: request.signal } : {}),
106
108
  newest: request.newest,
107
109
  };
108
- return { execution, timezone, scopeAccounts, ...(selectedChat ? { selectedChat } : {}) };
110
+ return { execution, timezone, wordsReady, scopeAccounts, ...(selectedChat ? { selectedChat } : {}) };
109
111
  };
110
112
  const coverageOf = async (store, { scopeAccounts, selectedChat }) => {
111
113
  const completeness = [];
114
+ let inventoryComplete = scopeAccounts.length > 0;
112
115
  for (const selected of scopeAccounts) {
116
+ if (!(await store.syncState(selected, CHAT_LIST_KEY)))
117
+ inventoryComplete = false;
113
118
  const chatIds = selectedChat
114
119
  ? selected.provider === selectedChat.account.provider && selected.account === selectedChat.account.account
115
120
  ? [selectedChat.chatId]
@@ -126,8 +131,8 @@ const coverageOf = async (store, { scopeAccounts, selectedChat }) => {
126
131
  completeness,
127
132
  coverage: {
128
133
  state,
129
- lastSyncedAt: null,
130
- inventoryComplete: false,
134
+ lastSyncedAt: oldestFetch(completeness),
135
+ inventoryComplete,
131
136
  accounts: scopeAccounts,
132
137
  ...(selectedChat ? { chat: selectedChat.chatId } : {}),
133
138
  coveredChats: completeness.length,
@@ -165,13 +170,16 @@ export const searchLucene = async (store, account, request, messenger = {}) => {
165
170
  ...found,
166
171
  items,
167
172
  corrections: [],
168
- wordsReady: true,
173
+ wordsReady: prepared.wordsReady,
169
174
  completeness,
170
175
  query: queryOf(prepared.timezone, request.newest),
171
176
  coverage,
172
177
  };
173
178
  };
174
179
  const QUERY_PAGE_LIMIT = 1000;
180
+ const oldestFetch = (chats) => chats.length === 0 || chats.some(({ fetchedAt }) => fetchedAt === null)
181
+ ? null
182
+ : chats.map(({ fetchedAt }) => fetchedAt).sort()[0];
175
183
  const requiresChat = (node, chat) => node === chat ||
176
184
  (node.kind === "boolean" && node.clauses.some((clause) => clause.occur === "must" && requiresChat(clause.node, chat)));
177
185
  export const calendarKey = (zone, by) => {