emdash-emit 0.1.25 → 0.1.31

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 (212) hide show
  1. package/CHANGELOG.md +154 -4
  2. package/dist/cli/commands/conflicts.d.ts.map +1 -1
  3. package/dist/cli/commands/conflicts.js +2 -22
  4. package/dist/cli/commands/conflicts.js.map +1 -1
  5. package/dist/cli/commands/delete.d.ts.map +1 -1
  6. package/dist/cli/commands/delete.js +1 -13
  7. package/dist/cli/commands/delete.js.map +1 -1
  8. package/dist/cli/commands/doctor.d.ts.map +1 -1
  9. package/dist/cli/commands/doctor.js +1 -13
  10. package/dist/cli/commands/doctor.js.map +1 -1
  11. package/dist/cli/commands/media.d.ts.map +1 -1
  12. package/dist/cli/commands/media.js +1 -13
  13. package/dist/cli/commands/media.js.map +1 -1
  14. package/dist/cli/commands/new.d.ts.map +1 -1
  15. package/dist/cli/commands/new.js +1 -13
  16. package/dist/cli/commands/new.js.map +1 -1
  17. package/dist/cli/commands/pull.d.ts +3 -3
  18. package/dist/cli/commands/pull.d.ts.map +1 -1
  19. package/dist/cli/commands/pull.js +142 -88
  20. package/dist/cli/commands/pull.js.map +1 -1
  21. package/dist/cli/commands/push.d.ts +1 -1
  22. package/dist/cli/commands/push.d.ts.map +1 -1
  23. package/dist/cli/commands/push.js +32 -90
  24. package/dist/cli/commands/push.js.map +1 -1
  25. package/dist/cli/context.d.ts +12 -0
  26. package/dist/cli/context.d.ts.map +1 -1
  27. package/dist/cli/context.js +27 -1
  28. package/dist/cli/context.js.map +1 -1
  29. package/dist/cli/report-failure.d.ts +6 -0
  30. package/dist/cli/report-failure.d.ts.map +1 -0
  31. package/dist/cli/report-failure.js +71 -0
  32. package/dist/cli/report-failure.js.map +1 -0
  33. package/dist/client/api.d.ts.map +1 -1
  34. package/dist/client/api.js +1 -1
  35. package/dist/client/api.js.map +1 -1
  36. package/dist/client/lock.js.map +1 -1
  37. package/dist/client/mapper.js.map +1 -1
  38. package/dist/client/media.d.ts.map +1 -1
  39. package/dist/client/media.js.map +1 -1
  40. package/dist/db/baseline.d.ts +16 -1
  41. package/dist/db/baseline.d.ts.map +1 -1
  42. package/dist/db/baseline.js +25 -0
  43. package/dist/db/baseline.js.map +1 -1
  44. package/dist/db/cache.d.ts +2 -3
  45. package/dist/db/cache.d.ts.map +1 -1
  46. package/dist/db/cache.js +3 -295
  47. package/dist/db/cache.js.map +1 -1
  48. package/dist/db/migrations.d.ts +7 -0
  49. package/dist/db/migrations.d.ts.map +1 -0
  50. package/dist/db/migrations.js +320 -0
  51. package/dist/db/migrations.js.map +1 -0
  52. package/dist/mcp/heartbeat.d.ts +1 -34
  53. package/dist/mcp/heartbeat.d.ts.map +1 -1
  54. package/dist/mcp/heartbeat.js +1 -113
  55. package/dist/mcp/heartbeat.js.map +1 -1
  56. package/dist/mcp/tool-errors.d.ts +12 -1
  57. package/dist/mcp/tool-errors.d.ts.map +1 -1
  58. package/dist/mcp/tool-errors.js +29 -0
  59. package/dist/mcp/tool-errors.js.map +1 -1
  60. package/dist/mcp/tools/sync-conflicts.d.ts.map +1 -1
  61. package/dist/mcp/tools/sync-conflicts.js +46 -58
  62. package/dist/mcp/tools/sync-conflicts.js.map +1 -1
  63. package/dist/mcp/tools/sync-delete.d.ts.map +1 -1
  64. package/dist/mcp/tools/sync-delete.js +18 -30
  65. package/dist/mcp/tools/sync-delete.js.map +1 -1
  66. package/dist/mcp/tools/sync-diff.d.ts.map +1 -1
  67. package/dist/mcp/tools/sync-diff.js +10 -31
  68. package/dist/mcp/tools/sync-diff.js.map +1 -1
  69. package/dist/mcp/tools/sync-doctor.d.ts.map +1 -1
  70. package/dist/mcp/tools/sync-doctor.js +18 -30
  71. package/dist/mcp/tools/sync-doctor.js.map +1 -1
  72. package/dist/mcp/tools/sync-media-search.d.ts.map +1 -1
  73. package/dist/mcp/tools/sync-media-search.js +40 -52
  74. package/dist/mcp/tools/sync-media-search.js.map +1 -1
  75. package/dist/mcp/tools/sync-new.d.ts.map +1 -1
  76. package/dist/mcp/tools/sync-new.js +34 -55
  77. package/dist/mcp/tools/sync-new.js.map +1 -1
  78. package/dist/mcp/tools/sync-pull.d.ts.map +1 -1
  79. package/dist/mcp/tools/sync-pull.js +202 -222
  80. package/dist/mcp/tools/sync-pull.js.map +1 -1
  81. package/dist/mcp/tools/sync-push.d.ts.map +1 -1
  82. package/dist/mcp/tools/sync-push.js +64 -84
  83. package/dist/mcp/tools/sync-push.js.map +1 -1
  84. package/dist/mcp/tools/sync-status.d.ts.map +1 -1
  85. package/dist/mcp/tools/sync-status.js +3 -13
  86. package/dist/mcp/tools/sync-status.js.map +1 -1
  87. package/dist/presentation/article_report.d.ts +5 -0
  88. package/dist/presentation/article_report.d.ts.map +1 -1
  89. package/dist/presentation/article_report.js +17 -0
  90. package/dist/presentation/article_report.js.map +1 -1
  91. package/dist/sync/baseline-reconstruction.d.ts +43 -0
  92. package/dist/sync/baseline-reconstruction.d.ts.map +1 -0
  93. package/dist/sync/baseline-reconstruction.js +103 -0
  94. package/dist/sync/baseline-reconstruction.js.map +1 -0
  95. package/dist/sync/bylines.d.ts +5 -0
  96. package/dist/sync/bylines.d.ts.map +1 -1
  97. package/dist/sync/bylines.js +29 -0
  98. package/dist/sync/bylines.js.map +1 -1
  99. package/dist/sync/conflicts.d.ts.map +1 -1
  100. package/dist/sync/conflicts.js +21 -4
  101. package/dist/sync/conflicts.js.map +1 -1
  102. package/dist/sync/delete.d.ts.map +1 -1
  103. package/dist/sync/delete.js +12 -1
  104. package/dist/sync/delete.js.map +1 -1
  105. package/dist/sync/diff.d.ts.map +1 -1
  106. package/dist/sync/diff.js +58 -27
  107. package/dist/sync/diff.js.map +1 -1
  108. package/dist/sync/doctor.d.ts.map +1 -1
  109. package/dist/sync/doctor.js +13 -3
  110. package/dist/sync/doctor.js.map +1 -1
  111. package/dist/sync/guards.d.ts +1 -1
  112. package/dist/sync/guards.d.ts.map +1 -1
  113. package/dist/sync/guards.js +2 -1
  114. package/dist/sync/guards.js.map +1 -1
  115. package/dist/sync/media/companions.d.ts.map +1 -1
  116. package/dist/sync/media/companions.js.map +1 -1
  117. package/dist/sync/media/naming_mirror.d.ts.map +1 -1
  118. package/dist/sync/media/naming_mirror.js +11 -2
  119. package/dist/sync/media/naming_mirror.js.map +1 -1
  120. package/dist/sync/media/pull_article.d.ts +2 -0
  121. package/dist/sync/media/pull_article.d.ts.map +1 -1
  122. package/dist/sync/media/pull_article.js +74 -25
  123. package/dist/sync/media/pull_article.js.map +1 -1
  124. package/dist/sync/media/pull_library.d.ts.map +1 -1
  125. package/dist/sync/media/pull_library.js +34 -61
  126. package/dist/sync/media/pull_library.js.map +1 -1
  127. package/dist/sync/media/remote_index.d.ts +16 -1
  128. package/dist/sync/media/remote_index.d.ts.map +1 -1
  129. package/dist/sync/media/remote_index.js +2 -2
  130. package/dist/sync/media/remote_index.js.map +1 -1
  131. package/dist/sync/merge.d.ts.map +1 -1
  132. package/dist/sync/merge.js +5 -5
  133. package/dist/sync/merge.js.map +1 -1
  134. package/dist/sync/new.d.ts.map +1 -1
  135. package/dist/sync/new.js +5 -4
  136. package/dist/sync/new.js.map +1 -1
  137. package/dist/sync/orchestrator.d.ts +39 -0
  138. package/dist/sync/orchestrator.d.ts.map +1 -1
  139. package/dist/sync/orchestrator.js +93 -80
  140. package/dist/sync/orchestrator.js.map +1 -1
  141. package/dist/sync/preflight/image_probe.d.ts +28 -0
  142. package/dist/sync/preflight/image_probe.d.ts.map +1 -0
  143. package/dist/sync/preflight/image_probe.js +70 -0
  144. package/dist/sync/preflight/image_probe.js.map +1 -0
  145. package/dist/sync/preflight.d.ts.map +1 -1
  146. package/dist/sync/preflight.js +48 -45
  147. package/dist/sync/preflight.js.map +1 -1
  148. package/dist/sync/pull/fast_path.d.ts +9 -0
  149. package/dist/sync/pull/fast_path.d.ts.map +1 -0
  150. package/dist/sync/pull/fast_path.js +383 -0
  151. package/dist/sync/pull/fast_path.js.map +1 -0
  152. package/dist/sync/pull/index.d.ts +15 -0
  153. package/dist/sync/pull/index.d.ts.map +1 -0
  154. package/dist/sync/pull/index.js +372 -0
  155. package/dist/sync/pull/index.js.map +1 -0
  156. package/dist/sync/pull/list.d.ts +22 -0
  157. package/dist/sync/pull/list.d.ts.map +1 -0
  158. package/dist/sync/pull/list.js +175 -0
  159. package/dist/sync/pull/list.js.map +1 -0
  160. package/dist/sync/pull/media_stage.d.ts +67 -0
  161. package/dist/sync/pull/media_stage.d.ts.map +1 -0
  162. package/dist/sync/pull/media_stage.js +599 -0
  163. package/dist/sync/pull/media_stage.js.map +1 -0
  164. package/dist/sync/pull/quarantine.d.ts +22 -0
  165. package/dist/sync/pull/quarantine.d.ts.map +1 -0
  166. package/dist/sync/pull/quarantine.js +174 -0
  167. package/dist/sync/pull/quarantine.js.map +1 -0
  168. package/dist/sync/pull/types.d.ts +135 -0
  169. package/dist/sync/pull/types.d.ts.map +1 -0
  170. package/dist/sync/pull/types.js +23 -0
  171. package/dist/sync/pull/types.js.map +1 -0
  172. package/dist/sync/pull.d.ts +1 -114
  173. package/dist/sync/pull.d.ts.map +1 -1
  174. package/dist/sync/pull.js +1 -861
  175. package/dist/sync/pull.js.map +1 -1
  176. package/dist/sync/push/commit.d.ts.map +1 -1
  177. package/dist/sync/push/commit.js +1 -2
  178. package/dist/sync/push/commit.js.map +1 -1
  179. package/dist/sync/push/index.d.ts.map +1 -1
  180. package/dist/sync/push/index.js +4 -3
  181. package/dist/sync/push/index.js.map +1 -1
  182. package/dist/sync/push/merge_stage.js +1 -1
  183. package/dist/sync/push/merge_stage.js.map +1 -1
  184. package/dist/sync/push/taxonomy_plan.d.ts +4 -0
  185. package/dist/sync/push/taxonomy_plan.d.ts.map +1 -1
  186. package/dist/sync/push/taxonomy_plan.js +22 -10
  187. package/dist/sync/push/taxonomy_plan.js.map +1 -1
  188. package/dist/sync/push/transport.d.ts +1 -1
  189. package/dist/sync/push/transport.d.ts.map +1 -1
  190. package/dist/sync/push/transport.js +1 -1
  191. package/dist/sync/push/transport.js.map +1 -1
  192. package/dist/sync/status.d.ts.map +1 -1
  193. package/dist/sync/status.js +11 -57
  194. package/dist/sync/status.js.map +1 -1
  195. package/dist/sync/taxonomies.d.ts +45 -0
  196. package/dist/sync/taxonomies.d.ts.map +1 -1
  197. package/dist/sync/taxonomies.js +258 -119
  198. package/dist/sync/taxonomies.js.map +1 -1
  199. package/dist/utils/frontmatter.d.ts.map +1 -1
  200. package/dist/utils/frontmatter.js.map +1 -1
  201. package/dist/utils/mcp-heartbeat.d.ts +36 -0
  202. package/dist/utils/mcp-heartbeat.d.ts.map +1 -0
  203. package/dist/utils/mcp-heartbeat.js +126 -0
  204. package/dist/utils/mcp-heartbeat.js.map +1 -0
  205. package/dist/utils/media-body-refs.d.ts.map +1 -1
  206. package/dist/utils/media-body-refs.js +2 -2
  207. package/dist/utils/media-body-refs.js.map +1 -1
  208. package/dist/utils/taxonomy-key.d.ts +44 -0
  209. package/dist/utils/taxonomy-key.d.ts.map +1 -0
  210. package/dist/utils/taxonomy-key.js +63 -0
  211. package/dist/utils/taxonomy-key.js.map +1 -0
  212. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sync-new.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-new.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-new.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-new.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync-pull.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-pull.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAmBpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,GAAG,IAAI,CAya9F"}
1
+ {"version":3,"file":"sync-pull.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-pull.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAwBrD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,GAAG,IAAI,CAqb9F"}
@@ -20,14 +20,14 @@
20
20
  * SOFTWARE.
21
21
  */
22
22
  import { z } from 'zod';
23
- import { pullArticle, formatQuarantineNotice } from '../../sync/pull.js';
24
- import { pullBatch } from '../../sync/orchestrator.js';
23
+ import { formatQuarantineNotice } from '../../sync/pull.js';
24
+ import { pullBatch, pullSingleArticle, } from '../../sync/orchestrator.js';
25
25
  import { pullTaxonomies, getLocalTaxonomiesSummary, formatTaxonomiesHint, } from '../../sync/taxonomies.js';
26
26
  import { pullMedia } from '../../sync/media.js';
27
- import { formatMediaCoverageLine, formatOrphanMediaWarning, } from '../../presentation/article_report.js';
27
+ import { formatMediaCoverageLine, formatOrphanMediaWarning, formatPrunedTaxonomiesNotice, } from '../../presentation/article_report.js';
28
28
  import { resolveArticleTarget } from '../../sync/diff.js';
29
29
  import { compareArticleFilenameDesc } from '../../utils/naming.js';
30
- import { formatToolError } from '../tool-errors.js';
30
+ import { formatToolError, formatToolTextWithMeta, withResolvedContext } from '../tool-errors.js';
31
31
  import { toStorageKey } from '../../utils/media-id.js';
32
32
  import { DEFAULT_CONFIG } from '../../utils/config.js';
33
33
  export function registerSyncPullTools(server, resolveContext) {
@@ -63,6 +63,10 @@ export function registerSyncPullTools(server, resolveContext) {
63
63
  .boolean()
64
64
  .optional()
65
65
  .describe('Skip taxonomy (categories/tags) sync. Pull articles only.'),
66
+ noMedia: z
67
+ .boolean()
68
+ .optional()
69
+ .describe('Skip automatic on-demand media mirroring (defaults to false)'),
66
70
  includeMedia: z
67
71
  .boolean()
68
72
  .optional()
@@ -72,14 +76,7 @@ export function registerSyncPullTools(server, resolveContext) {
72
76
  .optional()
73
77
  .describe('With includeMedia: download only metadata YAML, skip binary file downloads.'),
74
78
  profile: z.string().optional().describe('Target profile name for multi-site setups'),
75
- }, async (args) => {
76
- let ctx;
77
- try {
78
- ctx = resolveContext(args.profile);
79
- }
80
- catch (error) {
81
- return formatToolError(error);
82
- }
79
+ }, async (args) => withResolvedContext(resolveContext, args, async (ctx) => {
83
80
  const collection = args.collection || ctx.config.defaultCollection;
84
81
  const origin = ctx.origin;
85
82
  // An explicit MCP argument wins over the remembered workspace setting, matching the CLI flag precedence.
@@ -90,31 +87,64 @@ export function registerSyncPullTools(server, resolveContext) {
90
87
  id: args.id,
91
88
  });
92
89
  if (targetId) {
93
- let res;
90
+ let singlePull;
91
+ let taxonomiesMsg = '';
92
+ const mediaSync = args.noMedia ? false : !args.postsOnly;
94
93
  try {
95
- if (!args.postsOnly) {
96
- await pullTaxonomies({
97
- workspaceRoot: ctx.root,
98
- origin,
99
- token: ctx.auth.token,
100
- refreshToken: ctx.auth.refreshToken,
101
- }).catch(() => null);
102
- }
103
- res = await pullArticle(collection, targetId, {
94
+ singlePull = await pullSingleArticle({
95
+ collection,
96
+ targetId,
104
97
  workspaceRoot: ctx.root,
105
98
  cache: ctx.cache,
106
99
  origin,
107
100
  token: ctx.auth.token,
108
101
  refreshToken: ctx.auth.refreshToken,
109
102
  force: args.force,
103
+ postsOnly: args.postsOnly,
110
104
  localMediaRefs,
105
+ mediaSync,
106
+ includeMedia: args.includeMedia,
107
+ metadataOnly: args.metadataOnly === true,
108
+ mediaSyncLimit: ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
111
109
  });
112
110
  }
113
111
  catch (error) {
114
112
  return formatToolError(error);
115
113
  }
114
+ if (singlePull.taxonomies) {
115
+ const failNotes = [];
116
+ if (singlePull.taxonomies.categoriesFailed)
117
+ failNotes.push('categories');
118
+ if (singlePull.taxonomies.tagsFailed)
119
+ failNotes.push('tags');
120
+ if (failNotes.length > 0) {
121
+ taxonomiesMsg = `\n⚠️ Taxonomies: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions).`;
122
+ }
123
+ else if (singlePull.taxonomies.error) {
124
+ taxonomiesMsg = `\n⚠️ Taxonomies: Failed to sync taxonomies (${singlePull.taxonomies.error}).`;
125
+ }
126
+ }
127
+ const res = singlePull.article;
128
+ let mediaMsg = '';
129
+ if (res.media && res.media.total > 0) {
130
+ mediaMsg = `\nMedia: ${res.media.total} item(s) (${res.media.downloaded} downloaded, ${res.media.skipped} up-to-date)`;
131
+ const orphanWarning = formatOrphanMediaWarning(res.media.orphanStorageKeys);
132
+ if (orphanWarning) {
133
+ mediaMsg += `\n\n${orphanWarning}`;
134
+ }
135
+ }
136
+ if (singlePull.libraryMedia) {
137
+ mediaMsg += `\nMedia library: ${singlePull.libraryMedia.total} items (${singlePull.libraryMedia.downloaded} downloaded, ${singlePull.libraryMedia.skipped} up-to-date).`;
138
+ const orphanWarning = formatOrphanMediaWarning(singlePull.libraryMedia.orphanStorageKeys);
139
+ if (orphanWarning) {
140
+ mediaMsg += `\n\n${orphanWarning}`;
141
+ }
142
+ }
116
143
  const actionText = res.healed
117
- ? '🛠️ Repaired frontmatter syntax (unpushed local body was strictly preserved)'
144
+ ? res.prunedTaxonomies
145
+ ? (formatPrunedTaxonomiesNotice(res.prunedTaxonomies) ??
146
+ '🛠️ Repaired frontmatter (deleted taxonomy terms pruned)')
147
+ : '🛠️ Repaired frontmatter syntax (unpushed local body was strictly preserved)'
118
148
  : res.localEditsPreserved
119
149
  ? 'ℹ️ Local edits preserved (remote changes were NOT applied)'
120
150
  : res.skipped
@@ -128,156 +158,126 @@ export function registerSyncPullTools(server, resolveContext) {
128
158
  ? '\n\nYour local version is intact. Push it with sync_push to publish your edits, ' +
129
159
  'or re-run sync_pull with force: true to accept the remote version instead.'
130
160
  : '\n\nYou can now read or edit this local Markdown file directly.';
131
- const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
132
- return {
133
- content: [
134
- {
135
- type: 'text',
136
- text: `${actionText}${titleText} (${res.slug})\nFile path: ${res.filePath}\nStatus: ${res.status}${quarantineLine}${warnLine}${nextStep}${metaSuffix}`,
137
- },
138
- ],
139
- };
161
+ return formatToolTextWithMeta(`${actionText}${titleText} (${res.slug})\nFile path: ${res.filePath}\nStatus: ${res.status}${mediaMsg}${taxonomiesMsg}${quarantineLine}${warnLine}${nextStep}`, ctx.meta);
140
162
  }
141
163
  // Batch sync mode: taxonomies + articles (+ media if includeMedia)
142
164
  const limit = ctx.config.postsSyncLimit || ctx.config.syncLimit || DEFAULT_CONFIG.postsSyncLimit;
143
165
  const shouldPrune = args.prune !== undefined ? args.prune : args.noPrune ? false : undefined;
144
166
  const postsOnly = args.postsOnly === true;
145
167
  const includeMedia = args.includeMedia === true;
146
- try {
147
- // 1. Pull taxonomies (unless postsOnly or single-article mode)
148
- let taxonomiesMsg = '';
149
- if (!postsOnly) {
150
- const taxResult = await pullTaxonomies({
151
- workspaceRoot: ctx.root,
152
- origin,
153
- token: ctx.auth.token,
154
- refreshToken: ctx.auth.refreshToken,
155
- });
156
- const failNotes = [];
157
- if (taxResult.categoriesFailed)
158
- failNotes.push('categories');
159
- if (taxResult.tagsFailed)
160
- failNotes.push('tags');
161
- if (failNotes.length > 0) {
162
- taxonomiesMsg = `\n⚠️ Taxonomies: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions).`;
163
- }
164
- else {
165
- taxonomiesMsg = `\nTaxonomies: ${taxResult.categoriesCount} categories, ${taxResult.tagsCount} tags synced.`;
166
- }
167
- }
168
- const taxSummary = getLocalTaxonomiesSummary(ctx.root);
169
- const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 60 });
170
- if (taxHint) {
171
- taxonomiesMsg += `\n\n${taxHint}`;
172
- }
173
- // 2. Pull articles
174
- const batchResult = await pullBatch({
175
- collection,
168
+ // 1. Pull taxonomies (unless postsOnly or single-article mode)
169
+ let taxonomiesMsg = '';
170
+ let taxonomiesFailed = false;
171
+ if (!postsOnly) {
172
+ const taxResult = await pullTaxonomies({
176
173
  workspaceRoot: ctx.root,
177
- cache: ctx.cache,
178
174
  origin,
179
175
  token: ctx.auth.token,
180
176
  refreshToken: ctx.auth.refreshToken,
181
- limit,
182
- status: args.status,
183
- force: args.force,
184
- prune: shouldPrune,
185
- localMediaRefs,
186
- // Local-first media mirroring is default-ON for a batch pull; postsOnly skips it, matching the CLI.
187
- mediaSync: !postsOnly,
188
177
  });
189
- const deletedMsg = batchResult.deleted ? `, ${batchResult.deleted} pruned` : '';
190
- // Sort items descending by filename (YYYYMMDD_ prefix / ULID) so newest articles appear first
191
- const sortedItems = [...batchResult.items].sort((a, b) => compareArticleFilenameDesc(a.filePath, b.filePath));
192
- const updatedItems = sortedItems.filter((i) => i.updated);
193
- const sampleItems = (updatedItems.length > 0 ? updatedItems : sortedItems).slice(0, 10);
194
- const listLines = sampleItems.map((item) => ` - [${item.status}] ${item.filePath}${item.title ? ` (${item.title})` : ''}`);
195
- const headerLabel = updatedItems.length > 0 ? 'Updated Articles' : 'Recent Articles in Workspace';
196
- const detailBlock = listLines.length > 0 ? `\n\n${headerLabel}:\n${listLines.join('\n')}` : '';
197
- const preservedMsg = batchResult.preserved && batchResult.preserved > 0
198
- ? `\n🛡️ ${batchResult.preserved} article(s) had unpushed local edits; Emit kept your local version (remote changes were NOT applied). Push them with sync_push, or re-run with force: true to accept the remote version instead.`
199
- : '';
200
- const quarantineNotices = sortedItems
201
- .map((item) => formatQuarantineNotice(item.quarantined))
202
- .filter((notice) => notice.length > 0);
203
- const quarantineMsg = quarantineNotices.length > 0 ? `\n\n${quarantineNotices.join('\n\n')}` : '';
204
- // 3. Pull media if includeMedia
205
- let mediaMsg = '';
206
- if (batchResult.media) {
207
- const m = batchResult.media;
208
- const totalLabel = typeof m.remoteTotalCount === 'number' && m.remoteTotalCount > 0
209
- ? `${m.walkedCount}/${m.remoteTotalCount}`
210
- : `${m.walkedCount}${m.complete ? '' : '+'}`;
211
- mediaMsg += `\nMedia (local-first): walked ${totalLabel} record(s), mirrored ${m.mirroredStorageKeys.length} referenced asset(s) (${m.downloaded} downloaded, ${m.skipped} up-to-date).`;
212
- const orphanWarning = formatOrphanMediaWarning(m.orphanStorageKeys);
213
- if (orphanWarning)
214
- mediaMsg += `\n${orphanWarning}`;
178
+ const failNotes = [];
179
+ if (taxResult.categoriesFailed)
180
+ failNotes.push('categories');
181
+ if (taxResult.tagsFailed)
182
+ failNotes.push('tags');
183
+ if (failNotes.length > 0) {
184
+ taxonomiesFailed = true;
185
+ taxonomiesMsg = `\n⚠️ Taxonomies: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions).`;
215
186
  }
216
- if (includeMedia) {
217
- const mediaLimit = ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit;
218
- const mediaResult = await pullMedia({
219
- workspaceRoot: ctx.root,
220
- origin,
221
- token: ctx.auth.token,
222
- refreshToken: ctx.auth.refreshToken,
223
- limit: mediaLimit,
224
- downloadFiles: args.metadataOnly !== true,
225
- cache: ctx.cache,
226
- });
227
- mediaMsg += `\nMedia (library pass, limit ${mediaLimit}): ${mediaResult.total} items (${mediaResult.downloaded} downloaded, ${mediaResult.skipped} up-to-date).`;
187
+ else {
188
+ taxonomiesMsg = `\nTaxonomies: ${taxResult.categoriesCount} categories, ${taxResult.tagsCount} tags synced.`;
228
189
  }
229
- const warnLine = ctx.originWarning ? `\n\n${ctx.originWarning}` : '';
230
- const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
231
- return {
232
- content: [
233
- {
234
- type: 'text',
235
- text: `✅ Synced ${batchResult.total} articles (${batchResult.updated} updated, ${batchResult.skipped} up-to-date/skipped${deletedMsg}).${taxonomiesMsg}${mediaMsg}${preservedMsg}${quarantineMsg}${detailBlock}${warnLine}${metaSuffix}\n\nYou can now read or edit these local Markdown files directly.`,
236
- },
237
- ],
238
- };
239
190
  }
240
- catch (error) {
241
- return formatToolError(error, ctx?.meta);
191
+ const taxSummary = getLocalTaxonomiesSummary(ctx.root);
192
+ const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 60 });
193
+ if (taxHint) {
194
+ taxonomiesMsg += `\n\n${taxHint}`;
242
195
  }
243
- });
244
- // sync_pull_taxonomies
245
- server.tool('sync_pull_taxonomies', 'Pull remote categories and tags into local YAML definitions (categories/<id>-<name>.yaml and tags/<id>-<name>.yaml) and return formatted available categories/tags hints (up to 200 tags). Use before writing articles to inspect valid category and tag IDs/slugs.', {
246
- profile: z.string().optional().describe('Target profile name for multi-site setups'),
247
- }, async (args) => {
248
- try {
249
- const ctx = resolveContext(args.profile);
250
- const res = await pullTaxonomies({
196
+ // 2. Pull articles
197
+ const batchResult = await pullBatch({
198
+ collection,
199
+ workspaceRoot: ctx.root,
200
+ cache: ctx.cache,
201
+ origin,
202
+ token: ctx.auth.token,
203
+ refreshToken: ctx.auth.refreshToken,
204
+ limit,
205
+ status: args.status,
206
+ force: args.force,
207
+ prune: shouldPrune,
208
+ localMediaRefs,
209
+ // Local-first media mirroring is default-ON for a batch pull; postsOnly skips it, matching the CLI.
210
+ // The shared walk is bounded by `mediaSyncLimit`, matching the CLI too.
211
+ mediaSync: !postsOnly,
212
+ mediaSyncLimit: ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
213
+ canPruneTaxonomies: !postsOnly && !taxonomiesFailed,
214
+ });
215
+ const deletedMsg = batchResult.deleted ? `, ${batchResult.deleted} pruned` : '';
216
+ // Sort items descending by filename (YYYYMMDD_ prefix / ULID) so newest articles appear first
217
+ const sortedItems = [...batchResult.items].sort((a, b) => compareArticleFilenameDesc(a.filePath, b.filePath));
218
+ const updatedItems = sortedItems.filter((i) => i.updated);
219
+ const sampleItems = (updatedItems.length > 0 ? updatedItems : sortedItems).slice(0, 10);
220
+ const listLines = sampleItems.map((item) => ` - [${item.status}] ${item.filePath}${item.title ? ` (${item.title})` : ''}`);
221
+ const headerLabel = updatedItems.length > 0 ? 'Updated Articles' : 'Recent Articles in Workspace';
222
+ const detailBlock = listLines.length > 0 ? `\n\n${headerLabel}:\n${listLines.join('\n')}` : '';
223
+ const preservedMsg = batchResult.preserved && batchResult.preserved > 0
224
+ ? `\n🛡️ ${batchResult.preserved} article(s) had unpushed local edits; Emit kept your local version (remote changes were NOT applied). Push them with sync_push, or re-run with force: true to accept the remote version instead.`
225
+ : '';
226
+ const quarantineNotices = sortedItems
227
+ .map((item) => formatQuarantineNotice(item.quarantined))
228
+ .filter((notice) => notice.length > 0);
229
+ const quarantineMsg = quarantineNotices.length > 0 ? `\n\n${quarantineNotices.join('\n\n')}` : '';
230
+ // 3. Pull media if includeMedia
231
+ let mediaMsg = '';
232
+ if (batchResult.media) {
233
+ const m = batchResult.media;
234
+ const totalLabel = typeof m.remoteTotalCount === 'number' && m.remoteTotalCount > 0
235
+ ? `${m.walkedCount}/${m.remoteTotalCount}`
236
+ : `${m.walkedCount}${m.complete ? '' : '+'}`;
237
+ mediaMsg += `\nMedia (local-first): walked ${totalLabel} record(s), mirrored ${m.mirroredStorageKeys.length} referenced asset(s) (${m.downloaded} downloaded, ${m.skipped} up-to-date).`;
238
+ const orphanWarning = formatOrphanMediaWarning(m.orphanStorageKeys);
239
+ if (orphanWarning)
240
+ mediaMsg += `\n${orphanWarning}`;
241
+ }
242
+ if (includeMedia) {
243
+ const mediaLimit = ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit;
244
+ const mediaResult = await pullMedia({
251
245
  workspaceRoot: ctx.root,
252
- origin: ctx.origin,
246
+ origin,
253
247
  token: ctx.auth.token,
254
248
  refreshToken: ctx.auth.refreshToken,
249
+ limit: mediaLimit,
250
+ downloadFiles: args.metadataOnly !== true,
251
+ cache: ctx.cache,
255
252
  });
256
- const taxSummary = getLocalTaxonomiesSummary(ctx.root);
257
- const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 200 });
258
- const hintBlock = taxHint ? `\n\n${taxHint}` : '';
259
- const failNotes = [];
260
- if (res.categoriesFailed)
261
- failNotes.push('categories');
262
- if (res.tagsFailed)
263
- failNotes.push('tags');
264
- const statusLine = failNotes.length > 0
265
- ? `⚠️ Warning: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions in categories/ and tags/).`
266
- : `✅ Successfully pulled taxonomies (${res.categoriesCount} categories, ${res.tagsCount} tags) into categories/ and tags/.`;
267
- const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
268
- return {
269
- content: [
270
- {
271
- type: 'text',
272
- text: `${statusLine}${hintBlock}${metaSuffix}`,
273
- },
274
- ],
275
- };
253
+ mediaMsg += `\nMedia (library pass, limit ${mediaLimit}): ${mediaResult.total} items (${mediaResult.downloaded} downloaded, ${mediaResult.skipped} up-to-date).`;
276
254
  }
277
- catch (error) {
278
- return formatToolError(error);
279
- }
280
- });
255
+ const warnLine = ctx.originWarning ? `\n\n${ctx.originWarning}` : '';
256
+ return formatToolTextWithMeta(`✅ Synced ${batchResult.total} articles (${batchResult.updated} updated, ${batchResult.skipped} up-to-date/skipped${deletedMsg}).${taxonomiesMsg}${mediaMsg}${preservedMsg}${quarantineMsg}${detailBlock}${warnLine}`, ctx.meta, 'You can now read or edit these local Markdown files directly.');
257
+ }));
258
+ // sync_pull_taxonomies
259
+ server.tool('sync_pull_taxonomies', 'Pull remote categories and tags into local YAML definitions (categories/<id>-<name>.yaml and tags/<id>-<name>.yaml) and return formatted available categories/tags hints (up to 200 tags). Use before writing articles to inspect valid category and tag IDs/slugs.', {
260
+ profile: z.string().optional().describe('Target profile name for multi-site setups'),
261
+ }, async (args) => withResolvedContext(resolveContext, args, async (ctx) => {
262
+ const res = await pullTaxonomies({
263
+ workspaceRoot: ctx.root,
264
+ origin: ctx.origin,
265
+ token: ctx.auth.token,
266
+ refreshToken: ctx.auth.refreshToken,
267
+ });
268
+ const taxSummary = getLocalTaxonomiesSummary(ctx.root);
269
+ const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 200 });
270
+ const hintBlock = taxHint ? `\n\n${taxHint}` : '';
271
+ const failNotes = [];
272
+ if (res.categoriesFailed)
273
+ failNotes.push('categories');
274
+ if (res.tagsFailed)
275
+ failNotes.push('tags');
276
+ const statusLine = failNotes.length > 0
277
+ ? `⚠️ Warning: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions in categories/ and tags/).`
278
+ : `✅ Successfully pulled taxonomies (${res.categoriesCount} categories, ${res.tagsCount} tags) into categories/ and tags/.`;
279
+ return formatToolTextWithMeta(`${statusLine}${hintBlock}`, ctx.meta);
280
+ }));
281
281
  // sync_pull_media
282
282
  server.tool('sync_pull_media', 'Download remote media assets and companion YAML metadata into the local media/ directory (media/<markdownRef>.<ext> and .yaml, where markdownRef is derived from the storageKey a body URL references). Can pull targeted media referenced by an article ("article"), a specific storageKey ("storageKey"), or the full library ("all", maintenance/backup only). Note: Routine workflows rarely need this tool because sync_pull mirrors referenced assets on-demand automatically. Body image references that match neither a media record nor confirmed local mirror metadata are reported as orphanStorageKeys and never downloaded.', {
283
283
  article: z
@@ -302,49 +302,17 @@ export function registerSyncPullTools(server, resolveContext) {
302
302
  .describe('Maintenance/backup only (⚠️ NOT for routine use). Pull ALL media binaries from remote (can download thousands of files). Routine workflows do not need this because sync_pull mirrors referenced assets automatically. Reserve strictly for complete offline backups or migration diagnostics (defaults to false).'),
303
303
  downloadFiles: z.boolean().optional().describe('Download binary files (defaults to true)'),
304
304
  profile: z.string().optional().describe('Target profile name for multi-site setups'),
305
- }, async (args) => {
306
- try {
307
- const ctx = resolveContext(args.profile);
308
- const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
309
- if (args.storageKey) {
310
- const key = toStorageKey(args.storageKey);
311
- if (!key) {
312
- return {
313
- isError: true,
314
- content: [
315
- {
316
- type: 'text',
317
- text: `❌ Error: Invalid storageKey format: "${args.storageKey}". Storage keys must be formatted as <ulid>.<ext> or <ulid1>.<ulid2>.<ext>.`,
318
- },
319
- ],
320
- };
321
- }
322
- const res = await pullMedia({
323
- workspaceRoot: ctx.root,
324
- origin: ctx.origin,
325
- token: ctx.auth.token,
326
- refreshToken: ctx.auth.refreshToken,
327
- storageKeys: [key],
328
- downloadFiles: args.downloadFiles,
329
- cache: ctx.cache,
330
- });
331
- const orphanWarning = formatOrphanMediaWarning(res.orphanStorageKeys);
332
- if (res.total === 0 && res.orphanStorageKeys && res.orphanStorageKeys.length > 0) {
333
- return {
334
- isError: true,
335
- content: [
336
- {
337
- type: 'text',
338
- text: `❌ Could not resolve targeted storageKey '${args.storageKey}' on remote.${orphanWarning ? `\n\n${orphanWarning}` : ''}${metaSuffix}`,
339
- },
340
- ],
341
- };
342
- }
305
+ }, async (args) => withResolvedContext(resolveContext, args, async (ctx) => {
306
+ const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
307
+ if (args.storageKey) {
308
+ const key = toStorageKey(args.storageKey);
309
+ if (!key) {
343
310
  return {
311
+ isError: true,
344
312
  content: [
345
313
  {
346
314
  type: 'text',
347
- text: `✅ Successfully pulled targeted media asset '${args.storageKey}': ${res.total} items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date).${orphanWarning ? `\n\n${orphanWarning}` : ''}${metaSuffix}`,
315
+ text: `❌ Error: Invalid storageKey format: "${args.storageKey}". Storage keys must be formatted as <ulid>.<ext> or <ulid1>.<ulid2>.<ext>.`,
348
316
  },
349
317
  ],
350
318
  };
@@ -354,49 +322,61 @@ export function registerSyncPullTools(server, resolveContext) {
354
322
  origin: ctx.origin,
355
323
  token: ctx.auth.token,
356
324
  refreshToken: ctx.auth.refreshToken,
357
- article: args.article,
358
- collection: args.collection || ctx.config.defaultCollection,
359
- limit: args.limit || ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
360
- all: args.all,
325
+ storageKeys: [key],
361
326
  downloadFiles: args.downloadFiles,
362
327
  cache: ctx.cache,
363
328
  });
364
329
  const orphanWarning = formatOrphanMediaWarning(res.orphanStorageKeys);
365
- if (args.article) {
366
- const failedMsg = res.failed ? `, ${res.failed} unresolved` : '';
367
- const verifiedCount = res.verifiedStorageKeys?.length ?? 0;
368
- const verifiedMsg = verifiedCount > 0 ? `, ${verifiedCount} verified/mirrored` : '';
369
- const idNote = res.unresolvedIds && !res.failed
370
- ? ` (${res.unresolvedIds} body ULID(s) are R2 storageKeys, not media record ids, so no id lookup was expected to match)`
371
- : '';
372
- const idsList = res.mediaIds && res.mediaIds.length > 0
373
- ? `\nMedia IDs: ${res.mediaIds.join(', ')}`
374
- : '';
375
- const keysList = res.orphanStorageKeys && res.orphanStorageKeys.length > 0
376
- ? `\nUnresolved Storage Keys (no matching record or local mirror): ${res.orphanStorageKeys.join(', ')}`
377
- : '';
330
+ if (res.total === 0 && res.orphanStorageKeys && res.orphanStorageKeys.length > 0) {
378
331
  return {
332
+ isError: true,
379
333
  content: [
380
334
  {
381
335
  type: 'text',
382
- text: `✅ Successfully pulled media for article '${res.articleId || args.article}': ${res.total} referenced item(s) (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${verifiedMsg}${failedMsg}).${idNote}${idsList}${keysList}${orphanWarning ? `\n\n${orphanWarning}` : ''}${metaSuffix}`,
336
+ text: `❌ Could not resolve targeted storageKey '${args.storageKey}' on remote.${orphanWarning ? `\n\n${orphanWarning}` : ''}${metaSuffix}`,
383
337
  },
384
338
  ],
385
339
  };
386
340
  }
387
- const deletedMsg = res.deleted ? `, ${res.deleted} pruned` : '';
388
- return {
389
- content: [
390
- {
391
- type: 'text',
392
- text: `✅ Successfully pulled media: ${res.total} items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${deletedMsg}).${formatMediaCoverageLine(res)}${metaSuffix}`,
393
- },
394
- ],
395
- };
341
+ // Nothing was (re)downloaded, yet the key is not an orphan: the library walk left it outside its
342
+ // window or local mirror metadata already confirms it. Say which, instead of claiming a pull.
343
+ if (res.total === 0) {
344
+ return formatToolTextWithMeta(`ℹ️ Targeted storageKey '${args.storageKey}' was not downloaded: ${res.verifiedStorageKeys && res.verifiedStorageKeys.length > 0
345
+ ? 'confirmed by local mirror metadata already in media/'
346
+ : 'not found within the bounded library walk'}. Run "emit pull-media --all" (or a larger --limit) for a complete library pass.${metaSuffix}`, ctx.meta);
347
+ }
348
+ return formatToolTextWithMeta(`✅ Successfully pulled targeted media asset '${args.storageKey}': ${res.total} items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date).${orphanWarning ? `\n\n${orphanWarning}` : ''}`, ctx.meta);
396
349
  }
397
- catch (error) {
398
- return formatToolError(error);
350
+ const res = await pullMedia({
351
+ workspaceRoot: ctx.root,
352
+ origin: ctx.origin,
353
+ token: ctx.auth.token,
354
+ refreshToken: ctx.auth.refreshToken,
355
+ article: args.article,
356
+ collection: args.collection || ctx.config.defaultCollection,
357
+ limit: args.limit || ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
358
+ all: args.all,
359
+ downloadFiles: args.downloadFiles,
360
+ cache: ctx.cache,
361
+ });
362
+ const orphanWarning = formatOrphanMediaWarning(res.orphanStorageKeys);
363
+ if (args.article) {
364
+ const failedMsg = res.failed ? `, ${res.failed} unresolved` : '';
365
+ const verifiedCount = res.verifiedStorageKeys?.length ?? 0;
366
+ const verifiedMsg = verifiedCount > 0 ? `, ${verifiedCount} verified/mirrored` : '';
367
+ const idNote = res.unresolvedIds && !res.failed
368
+ ? ` (${res.unresolvedIds} body ULID(s) are R2 storageKeys, not media record ids, so no id lookup was expected to match)`
369
+ : '';
370
+ const idsList = res.mediaIds && res.mediaIds.length > 0
371
+ ? `\nMedia IDs: ${res.mediaIds.join(', ')}`
372
+ : '';
373
+ const keysList = res.orphanStorageKeys && res.orphanStorageKeys.length > 0
374
+ ? `\nUnresolved Storage Keys (no matching record or local mirror): ${res.orphanStorageKeys.join(', ')}`
375
+ : '';
376
+ return formatToolTextWithMeta(`✅ Successfully pulled media for article '${res.articleId || args.article}': ${res.total} referenced item(s) (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${verifiedMsg}${failedMsg}).${idNote}${idsList}${keysList}${orphanWarning ? `\n\n${orphanWarning}` : ''}`, ctx.meta);
399
377
  }
400
- });
378
+ const deletedMsg = res.deleted ? `, ${res.deleted} pruned` : '';
379
+ return formatToolTextWithMeta(`✅ Successfully pulled media: ${res.total} items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${deletedMsg}).${formatMediaCoverageLine(res)}`, ctx.meta);
380
+ }));
401
381
  }
402
382
  //# sourceMappingURL=sync-pull.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync-pull.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-pull.js","sourceRoot":"","sources":["../../../src/mcp/tools/sync-pull.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sync-push.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-push.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,eAAe,CAAC;AAIpE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,GAAG,IAAI,CAkK7F"}
1
+ {"version":3,"file":"sync-push.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/sync-push.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAIrD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,GAAG,IAAI,CAkJ7F"}