@wirecat/cli-core 0.294.0 → 0.296.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 (167) hide show
  1. package/README.md +1 -0
  2. package/dist/cli/bot/mcp.js +1 -1
  3. package/dist/cli/bot/mcp.js.map +1 -1
  4. package/dist/cli/bot/watch.js +1 -1
  5. package/dist/cli/bot/watch.js.map +1 -1
  6. package/dist/cli/messenger/backfill-command.js +1 -1
  7. package/dist/cli/messenger/backfill-command.js.map +1 -1
  8. package/dist/cli/messenger/mcp-command.js +1 -1
  9. package/dist/cli/messenger/mcp-command.js.map +1 -1
  10. package/dist/cli/messenger/serve-command.js +1 -1
  11. package/dist/cli/messenger/serve-command.js.map +1 -1
  12. package/dist/cli/messenger/store-maintenance-command.d.ts +1 -1
  13. package/dist/cli/messenger/tasks-command.d.ts.map +1 -1
  14. package/dist/cli/messenger/tasks-command.js +75 -13
  15. package/dist/cli/messenger/tasks-command.js.map +1 -1
  16. package/dist/cli/messenger/watch-command.js +1 -1
  17. package/dist/cli/messenger/watch-command.js.map +1 -1
  18. package/dist/cli/program.d.ts.map +1 -1
  19. package/dist/cli/program.js +4 -5
  20. package/dist/cli/program.js.map +1 -1
  21. package/dist/cli/store-settings.d.ts +13 -0
  22. package/dist/cli/store-settings.d.ts.map +1 -1
  23. package/dist/cli/store-settings.js +76 -8
  24. package/dist/cli/store-settings.js.map +1 -1
  25. package/dist/documents/catalog.d.ts +3 -0
  26. package/dist/documents/catalog.d.ts.map +1 -0
  27. package/dist/documents/catalog.js +18 -0
  28. package/dist/documents/catalog.js.map +1 -0
  29. package/dist/documents/index.d.ts +10 -0
  30. package/dist/documents/index.d.ts.map +1 -0
  31. package/dist/documents/index.js +8 -0
  32. package/dist/documents/index.js.map +1 -0
  33. package/dist/documents/model.d.ts +117 -0
  34. package/dist/documents/model.d.ts.map +1 -0
  35. package/dist/documents/model.js +2 -0
  36. package/dist/documents/model.js.map +1 -0
  37. package/dist/documents/scope.d.ts +3 -0
  38. package/dist/documents/scope.d.ts.map +1 -0
  39. package/dist/documents/scope.js +15 -0
  40. package/dist/documents/scope.js.map +1 -0
  41. package/dist/documents.d.ts +1 -0
  42. package/dist/documents.d.ts.map +1 -1
  43. package/dist/documents.js +1 -0
  44. package/dist/documents.js.map +1 -1
  45. package/dist/domain/task-categories.d.ts +15 -2
  46. package/dist/domain/task-categories.d.ts.map +1 -1
  47. package/dist/domain/task-categories.js +649 -26
  48. package/dist/domain/task-categories.js.map +1 -1
  49. package/dist/entities/agenda.d.ts +14 -1
  50. package/dist/entities/agenda.d.ts.map +1 -1
  51. package/dist/entities/agenda.js +6 -1
  52. package/dist/entities/agenda.js.map +1 -1
  53. package/dist/entities/index.d.ts +19 -1
  54. package/dist/entities/index.d.ts.map +1 -1
  55. package/dist/entities/task.d.ts +19 -0
  56. package/dist/entities/task.d.ts.map +1 -1
  57. package/dist/entities/task.js +11 -0
  58. package/dist/entities/task.js.map +1 -1
  59. package/dist/errors/reasons.d.ts +1 -1
  60. package/dist/errors/reasons.d.ts.map +1 -1
  61. package/dist/errors/reasons.js +12 -1
  62. package/dist/errors/reasons.js.map +1 -1
  63. package/dist/mcp/tools/tasks.d.ts.map +1 -1
  64. package/dist/mcp/tools/tasks.js +46 -18
  65. package/dist/mcp/tools/tasks.js.map +1 -1
  66. package/dist/search/task-signature.d.ts.map +1 -1
  67. package/dist/search/task-signature.js +32 -6
  68. package/dist/search/task-signature.js.map +1 -1
  69. package/dist/search/task-similarity.d.ts +15 -2
  70. package/dist/search/task-similarity.d.ts.map +1 -1
  71. package/dist/search/task-similarity.js +29 -10
  72. package/dist/search/task-similarity.js.map +1 -1
  73. package/dist/services/agenda.d.ts +7 -2
  74. package/dist/services/agenda.d.ts.map +1 -1
  75. package/dist/services/agenda.js +11 -0
  76. package/dist/services/agenda.js.map +1 -1
  77. package/dist/services/documents/extraction.d.ts +13 -0
  78. package/dist/services/documents/extraction.d.ts.map +1 -0
  79. package/dist/services/documents/extraction.js +37 -0
  80. package/dist/services/documents/extraction.js.map +1 -0
  81. package/dist/services/documents/ingestion.d.ts +29 -0
  82. package/dist/services/documents/ingestion.d.ts.map +1 -0
  83. package/dist/services/documents/ingestion.js +125 -0
  84. package/dist/services/documents/ingestion.js.map +1 -0
  85. package/dist/services/documents/knowledge.d.ts +58 -0
  86. package/dist/services/documents/knowledge.d.ts.map +1 -0
  87. package/dist/services/documents/knowledge.js +143 -0
  88. package/dist/services/documents/knowledge.js.map +1 -0
  89. package/dist/services/documents/plan.d.ts +11 -0
  90. package/dist/services/documents/plan.d.ts.map +1 -0
  91. package/dist/services/documents/plan.js +200 -0
  92. package/dist/services/documents/plan.js.map +1 -0
  93. package/dist/services/documents/ports.d.ts +24 -0
  94. package/dist/services/documents/ports.d.ts.map +1 -0
  95. package/dist/services/documents/ports.js +2 -0
  96. package/dist/services/documents/ports.js.map +1 -0
  97. package/dist/services/documents/proposals.d.ts +38 -0
  98. package/dist/services/documents/proposals.d.ts.map +1 -0
  99. package/dist/services/documents/proposals.js +52 -0
  100. package/dist/services/documents/proposals.js.map +1 -0
  101. package/dist/services/documents/sync.d.ts +24 -0
  102. package/dist/services/documents/sync.d.ts.map +1 -0
  103. package/dist/services/documents/sync.js +217 -0
  104. package/dist/services/documents/sync.js.map +1 -0
  105. package/dist/services/task-categories.d.ts +5 -2
  106. package/dist/services/task-categories.d.ts.map +1 -1
  107. package/dist/services/task-categories.js +37 -14
  108. package/dist/services/task-categories.js.map +1 -1
  109. package/dist/services/tasks.d.ts +38 -12
  110. package/dist/services/tasks.d.ts.map +1 -1
  111. package/dist/services/tasks.js +83 -17
  112. package/dist/services/tasks.js.map +1 -1
  113. package/dist/store/index.d.ts +1 -0
  114. package/dist/store/index.d.ts.map +1 -1
  115. package/dist/store/index.js +1 -0
  116. package/dist/store/index.js.map +1 -1
  117. package/dist/store/sqlite/lucene.d.ts.map +1 -1
  118. package/dist/store/sqlite/lucene.js +5 -2
  119. package/dist/store/sqlite/lucene.js.map +1 -1
  120. package/dist/store/sqlite/manifest.d.ts.map +1 -1
  121. package/dist/store/sqlite/manifest.js +1 -0
  122. package/dist/store/sqlite/manifest.js.map +1 -1
  123. package/dist/store/sqlite/migrations.generated.d.ts.map +1 -1
  124. package/dist/store/sqlite/migrations.generated.js +13 -0
  125. package/dist/store/sqlite/migrations.generated.js.map +1 -1
  126. package/dist/store/sqlite/schema.d.ts +112 -0
  127. package/dist/store/sqlite/schema.d.ts.map +1 -1
  128. package/dist/store/sqlite/schema.js +8 -0
  129. package/dist/store/sqlite/schema.js.map +1 -1
  130. package/dist/store/sqlite/task-candidates.d.ts +2 -0
  131. package/dist/store/sqlite/task-candidates.d.ts.map +1 -1
  132. package/dist/store/sqlite/task-candidates.js +76 -32
  133. package/dist/store/sqlite/task-candidates.js.map +1 -1
  134. package/dist/store/sqlite/task-category-settings.d.ts +3 -1
  135. package/dist/store/sqlite/task-category-settings.d.ts.map +1 -1
  136. package/dist/store/sqlite/task-category-settings.js +11 -1
  137. package/dist/store/sqlite/task-category-settings.js.map +1 -1
  138. package/dist/store/sqlite/task-close-store.d.ts +24 -0
  139. package/dist/store/sqlite/task-close-store.d.ts.map +1 -0
  140. package/dist/store/sqlite/task-close-store.js +57 -0
  141. package/dist/store/sqlite/task-close-store.js.map +1 -0
  142. package/dist/store/sqlite/task-close.d.ts +35 -0
  143. package/dist/store/sqlite/task-close.d.ts.map +1 -0
  144. package/dist/store/sqlite/task-close.js +68 -0
  145. package/dist/store/sqlite/task-close.js.map +1 -0
  146. package/dist/store/sqlite/task-pairs.d.ts +14 -4
  147. package/dist/store/sqlite/task-pairs.d.ts.map +1 -1
  148. package/dist/store/sqlite/task-pairs.js +31 -5
  149. package/dist/store/sqlite/task-pairs.js.map +1 -1
  150. package/dist/store/sqlite/task-relations.d.ts.map +1 -1
  151. package/dist/store/sqlite/task-relations.js +4 -1
  152. package/dist/store/sqlite/task-relations.js.map +1 -1
  153. package/dist/store/sqlite/tasks.d.ts +7 -2
  154. package/dist/store/sqlite/tasks.d.ts.map +1 -1
  155. package/dist/store/sqlite/tasks.js +18 -5
  156. package/dist/store/sqlite/tasks.js.map +1 -1
  157. package/dist/store/sqlite/work-tasks.d.ts +6 -1
  158. package/dist/store/sqlite/work-tasks.d.ts.map +1 -1
  159. package/dist/store/sqlite/work-tasks.js +8 -0
  160. package/dist/store/sqlite/work-tasks.js.map +1 -1
  161. package/dist/store/store.d.ts +1 -0
  162. package/dist/store/store.d.ts.map +1 -1
  163. package/dist/store/store.js +1 -0
  164. package/dist/store/store.js.map +1 -1
  165. package/package.json +3 -3
  166. package/parity.json +34 -0
  167. package/skills/follow-ups/SKILL.md +2 -1
@@ -0,0 +1,117 @@
1
+ export interface SourceFile {
2
+ id: string;
3
+ name: string;
4
+ mime: string;
5
+ parents: string[];
6
+ version?: string;
7
+ modifiedAt?: string;
8
+ url: string;
9
+ trashed: boolean;
10
+ canDownload: boolean;
11
+ size?: number;
12
+ createdAt?: string;
13
+ description?: string;
14
+ providerMetadata?: unknown;
15
+ }
16
+ export interface TabText {
17
+ id: string;
18
+ title: string;
19
+ text: string;
20
+ }
21
+ export interface SourceContent<M extends SourceFile = SourceFile> {
22
+ metadata: M;
23
+ markdown: string;
24
+ text: string;
25
+ tabs: TabText[];
26
+ notRead?: string;
27
+ raw?: unknown;
28
+ }
29
+ export interface SourceChange<M extends SourceFile = SourceFile> {
30
+ id: string;
31
+ removed: boolean;
32
+ file?: M;
33
+ }
34
+ export interface DocumentSource<M extends SourceFile = SourceFile> {
35
+ identity(): Promise<string>;
36
+ metadata(id: string): Promise<M>;
37
+ children(id: string): Promise<M[]>;
38
+ startToken(): Promise<string>;
39
+ changes(token: string): Promise<{
40
+ items: SourceChange<M>[];
41
+ cursor: string;
42
+ }>;
43
+ content(id: string, maxChars?: number): Promise<SourceContent<M>>;
44
+ bytes(id: string): Promise<Uint8Array>;
45
+ }
46
+ export interface IndexedSource<M extends SourceFile = SourceFile> {
47
+ metadata: M;
48
+ hash: string;
49
+ reference: string;
50
+ tabs: number;
51
+ notRead?: string;
52
+ picture?: "saved" | "too-large";
53
+ }
54
+ export interface SourceWork<M extends SourceFile = SourceFile> {
55
+ id: string;
56
+ kind: "save" | "remove";
57
+ file?: M;
58
+ }
59
+ export interface SourceSkip<M extends SourceFile = SourceFile> {
60
+ id: string;
61
+ reason: string;
62
+ file?: M;
63
+ textLimit?: number;
64
+ storeRefusedIn?: string;
65
+ }
66
+ export interface SourceState<M extends SourceFile = SourceFile> {
67
+ version: 1;
68
+ principal: string;
69
+ scope: string;
70
+ cursor?: string;
71
+ folders: Record<string, M>;
72
+ documents: Record<string, IndexedSource<M>>;
73
+ skipped: SourceSkip<M>[];
74
+ pending?: {
75
+ cursor: string;
76
+ scope: string;
77
+ folders: Record<string, M>;
78
+ jobs: SourceWork<M>[];
79
+ skipped: SourceSkip<M>[];
80
+ };
81
+ lastSync?: string;
82
+ }
83
+ export interface PictureWriter {
84
+ save(reference: string, bytes: Uint8Array): Promise<"saved" | "unchanged">;
85
+ close(): Promise<void>;
86
+ }
87
+ export interface SourceWalk<M extends SourceFile = SourceFile> {
88
+ scope: string;
89
+ cursor: string;
90
+ stack: {
91
+ id: string;
92
+ ancestry: string[];
93
+ folder?: M;
94
+ }[];
95
+ visited: string[];
96
+ folders: Record<string, M>;
97
+ files: M[];
98
+ discovered: number;
99
+ }
100
+ export interface SourceIndex<M extends SourceFile = SourceFile> {
101
+ catalog?: {
102
+ import(principal: string, files: M[]): Promise<unknown>;
103
+ };
104
+ save(principal: string, content: SourceContent<M>, hash: string): Promise<string>;
105
+ remove(principal: string, id: string): Promise<void>;
106
+ openPictures(): Promise<PictureWriter>;
107
+ }
108
+ export interface SourceStatePort<M extends SourceFile = SourceFile> {
109
+ read(): SourceState<M>;
110
+ save(state: SourceState<M>): void;
111
+ readWalk(scope: string): SourceWalk<M> | undefined;
112
+ saveWalk(walk: SourceWalk<M>): void;
113
+ removeWalk(): void;
114
+ saveSnapshot(content: SourceContent<M>): void;
115
+ removeSnapshot(id: string): void;
116
+ }
117
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/documents/model.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,OAAO,CAAA;IACpB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb;AACD,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC9D,QAAQ,EAAE,CAAC,CAAA;IACX,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,OAAO,EAAE,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,GAAG,CAAC,EAAE,OAAO,CAAA;CACd;AACD,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC7D,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,CAAC,CAAA;CACT;AACD,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC/D,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAChC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAA;IAClC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7E,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACjE,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;CACvC;AACD,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC9D,QAAQ,EAAE,CAAC,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,CAAA;CAChC;AACD,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC3D,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,GAAG,QAAQ,CAAA;IACvB,IAAI,CAAC,EAAE,CAAC,CAAA;CACT;AACD,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC3D,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,CAAC,EAAE,CAAC,CAAA;IACR,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AACD,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC5D,OAAO,EAAE,CAAC,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;IACxB,OAAO,CAAC,EAAE;QACR,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC1B,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;QACrB,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;KACzB,CAAA;IACD,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AACD,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,CAAA;IAC1E,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACvB;AAED,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC3D,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,CAAC,CAAA;KAAE,EAAE,CAAA;IACvD,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;IAC1B,KAAK,EAAE,CAAC,EAAE,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;CACnB;AACD,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAC5D,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,CAAA;IACrE,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACjF,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACpD,YAAY,IAAI,OAAO,CAAC,aAAa,CAAC,CAAA;CACvC;AACD,MAAM,WAAW,eAAe,CAAC,CAAC,SAAS,UAAU,GAAG,UAAU;IAChE,IAAI,IAAI,WAAW,CAAC,CAAC,CAAC,CAAA;IACtB,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAA;IAClD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACnC,UAAU,IAAI,IAAI,CAAA;IAClB,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IAC7C,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/documents/model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { SourceFile } from "./model.js";
2
+ export declare const within: (file: SourceFile, roots: string[], folders: Record<string, SourceFile>, seen?: Set<string>) => boolean;
3
+ //# sourceMappingURL=scope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/documents/scope.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAE5C,eAAO,MAAM,MAAM,SACX,UAAU,SACT,MAAM,EAAE,WACN,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,yBAElC,OASF,CAAA"}
@@ -0,0 +1,15 @@
1
+ import { CliError } from "@wirecat/cli-base";
2
+ export const within = (file, roots, folders, seen = new Set()) => {
3
+ if (file.trashed)
4
+ return false;
5
+ if (roots.includes(file.id))
6
+ return true;
7
+ if (seen.has(file.id))
8
+ throw new CliError("invalid_response", "folder ancestry contains a cycle");
9
+ const next = new Set([...seen, file.id]);
10
+ return file.parents.some((id) => {
11
+ const folder = folders[id];
12
+ return folder ? within(folder, roots, folders, next) : roots.includes(id);
13
+ });
14
+ };
15
+ //# sourceMappingURL=scope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/documents/scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAG5C,MAAM,CAAC,MAAM,MAAM,GAAG,CACpB,IAAgB,EAChB,KAAe,EACf,OAAmC,EACnC,IAAI,GAAG,IAAI,GAAG,EAAU,EACf,EAAE;IACX,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC9B,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAAE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,kCAAkC,CAAC,CAAA;IACjG,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;IACxC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC,CAAA;QAC1B,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAC3E,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
@@ -3,6 +3,7 @@ export { extractText, importEngine, MAX_FILE_BYTES, MAX_TEXT_CHARS } from "./att
3
3
  export { attachmentMaxBytes } from "./attachments/limits.js";
4
4
  export type { Sheet, SheetCell } from "./attachments/sheets.js";
5
5
  export { columnName, sheetText } from "./attachments/sheets.js";
6
+ export * from "./documents/index.js";
6
7
  export { registerReader } from "./readers/registry.js";
7
8
  export type { ReadContext, Reader, Section } from "./readers/types.js";
8
9
  //# sourceMappingURL=documents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACxF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
1
+ {"version":3,"file":"documents.d.ts","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACxF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAC5D,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA"}
package/dist/documents.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export { extractText, importEngine, MAX_FILE_BYTES, MAX_TEXT_CHARS } from "./attachments/extract.js";
2
2
  export { attachmentMaxBytes } from "./attachments/limits.js";
3
3
  export { columnName, sheetText } from "./attachments/sheets.js";
4
+ export * from "./documents/index.js";
4
5
  export { registerReader } from "./readers/registry.js";
5
6
  //# sourceMappingURL=documents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"documents.js","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"documents.js","sourceRoot":"","sources":["../src/documents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;AAE5D,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAC/D,cAAc,sBAAsB,CAAA;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA"}
@@ -7,13 +7,26 @@ export interface TaskCategory {
7
7
  /**
8
8
  * The fixed list a task's category comes from. One list, so "finance", "payments" and "деньги" never coexist;
9
9
  * `other` is what a rule picks when no trigger word matches.
10
+ *
11
+ * Order matters: a rule takes the category with the most trigger hits and gives a tie to the earlier one, so narrow
12
+ * categories come first, the generic actions (money, documents, meeting) after them, and work and personal last.
13
+ * A trigger of several words counts each word on its own, so every trigger here is one word, and none stems to a
14
+ * common word (`billing` → bill, `staging` → stage, `друг` → другой).
10
15
  */
11
16
  export declare const DEFAULT_TASK_CATEGORIES: readonly TaskCategory[];
12
17
  export declare const FALLBACK_CATEGORY = "other";
18
+ /** A category tasks still carry after it left the list: they keep it until someone moves them. */
19
+ export interface UnlistedCategory {
20
+ name: string;
21
+ open: number;
22
+ total: number;
23
+ }
24
+ /** One line per unlisted category that says how to find and move its tasks; none when every category is listed. */
25
+ export declare const unlistedNote: (unlisted: readonly UnlistedCategory[], tool: string) => string[];
13
26
  /**
14
27
  * One category as `config set task_categories.<name>` takes it: `<meaning> | <words>`. A word may say its language
15
- * (`es:vuelo`); one that does not is Russian when written in Cyrillic, English otherwise — the rule stems every word
16
- * by its script, so the language only labels it.
28
+ * (`es:vuelo`); one that does not is Russian when written in Cyrillic, English otherwise. Only `es:` words are also
29
+ * matched by their Spanish stem, in a message that reads as Spanish.
17
30
  */
18
31
  export declare const parseTaskCategory: (name: string, value: string) => TaskCategory;
19
32
  /** The list with one category set (replaced in place, or added before `other`) or, with no value, removed. */
@@ -1 +1 @@
1
- {"version":3,"file":"task-categories.d.ts","sourceRoot":"","sources":["../../src/domain/task-categories.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,6GAA6G;IAC7G,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;CAClE;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,YAAY,EAoE1D,CAAA;AAED,eAAO,MAAM,iBAAiB,UAAU,CAAA;AAKxC;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,SAAU,MAAM,SAAS,MAAM,KAAG,YA6B/D,CAAA;AAED,8GAA8G;AAC9G,eAAO,MAAM,gBAAgB,SACrB,SAAS,YAAY,EAAE,QACvB,MAAM,SACL,MAAM,GAAG,SAAS,KACxB,YAAY,EAcd,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,0BAA2B,YAAY,KAAG,MAGvE,CAAA;AAID,0GAA0G;AAC1G,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,YAAY,EAAE,GAAG,SAqBpE,CAAA"}
1
+ {"version":3,"file":"task-categories.d.ts","sourceRoot":"","sources":["../../src/domain/task-categories.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,6GAA6G;IAC7G,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC,CAAA;CAClE;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,EAAE,SAAS,YAAY,EA0qB1D,CAAA;AAED,eAAO,MAAM,iBAAiB,UAAU,CAAA;AAExC,kGAAkG;AAClG,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd;AAED,mHAAmH;AACnH,eAAO,MAAM,YAAY,aAAc,SAAS,gBAAgB,EAAE,QAAQ,MAAM,KAAG,MAAM,EAKtF,CAAA;AAMH;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,SAAU,MAAM,SAAS,MAAM,KAAG,YA6B/D,CAAA;AAED,8GAA8G;AAC9G,eAAO,MAAM,gBAAgB,SACrB,SAAS,YAAY,EAAE,QACvB,MAAM,SACL,MAAM,GAAG,SAAS,KACxB,YAAY,EAed,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,0BAA2B,YAAY,KAAG,MAGvE,CAAA;AAID,0GAA0G;AAC1G,eAAO,MAAM,oBAAoB,SAAU,MAAM,KAAG,YAAY,EAAE,GAAG,SAqBpE,CAAA"}