emdash-emit 0.1.25 → 0.1.30

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 (203) hide show
  1. package/CHANGELOG.md +132 -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 +1 -1
  18. package/dist/cli/commands/pull.d.ts.map +1 -1
  19. package/dist/cli/commands/pull.js +110 -79
  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 +194 -220
  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/sync/baseline-reconstruction.d.ts +43 -0
  88. package/dist/sync/baseline-reconstruction.d.ts.map +1 -0
  89. package/dist/sync/baseline-reconstruction.js +103 -0
  90. package/dist/sync/baseline-reconstruction.js.map +1 -0
  91. package/dist/sync/bylines.d.ts +5 -0
  92. package/dist/sync/bylines.d.ts.map +1 -1
  93. package/dist/sync/bylines.js +29 -0
  94. package/dist/sync/bylines.js.map +1 -1
  95. package/dist/sync/conflicts.d.ts.map +1 -1
  96. package/dist/sync/conflicts.js +21 -4
  97. package/dist/sync/conflicts.js.map +1 -1
  98. package/dist/sync/delete.d.ts.map +1 -1
  99. package/dist/sync/delete.js +12 -1
  100. package/dist/sync/delete.js.map +1 -1
  101. package/dist/sync/diff.d.ts.map +1 -1
  102. package/dist/sync/diff.js +58 -27
  103. package/dist/sync/diff.js.map +1 -1
  104. package/dist/sync/doctor.d.ts.map +1 -1
  105. package/dist/sync/doctor.js +13 -3
  106. package/dist/sync/doctor.js.map +1 -1
  107. package/dist/sync/guards.d.ts +1 -1
  108. package/dist/sync/guards.d.ts.map +1 -1
  109. package/dist/sync/guards.js +1 -0
  110. package/dist/sync/guards.js.map +1 -1
  111. package/dist/sync/media/companions.d.ts.map +1 -1
  112. package/dist/sync/media/companions.js.map +1 -1
  113. package/dist/sync/media/naming_mirror.d.ts.map +1 -1
  114. package/dist/sync/media/naming_mirror.js +11 -2
  115. package/dist/sync/media/naming_mirror.js.map +1 -1
  116. package/dist/sync/media/pull_article.d.ts +2 -0
  117. package/dist/sync/media/pull_article.d.ts.map +1 -1
  118. package/dist/sync/media/pull_article.js +74 -25
  119. package/dist/sync/media/pull_article.js.map +1 -1
  120. package/dist/sync/media/pull_library.d.ts.map +1 -1
  121. package/dist/sync/media/pull_library.js +34 -61
  122. package/dist/sync/media/pull_library.js.map +1 -1
  123. package/dist/sync/media/remote_index.d.ts +16 -1
  124. package/dist/sync/media/remote_index.d.ts.map +1 -1
  125. package/dist/sync/media/remote_index.js +2 -2
  126. package/dist/sync/media/remote_index.js.map +1 -1
  127. package/dist/sync/merge.d.ts.map +1 -1
  128. package/dist/sync/merge.js +5 -5
  129. package/dist/sync/merge.js.map +1 -1
  130. package/dist/sync/new.d.ts.map +1 -1
  131. package/dist/sync/new.js +5 -4
  132. package/dist/sync/new.js.map +1 -1
  133. package/dist/sync/orchestrator.d.ts +34 -0
  134. package/dist/sync/orchestrator.d.ts.map +1 -1
  135. package/dist/sync/orchestrator.js +89 -80
  136. package/dist/sync/orchestrator.js.map +1 -1
  137. package/dist/sync/preflight/image_probe.d.ts +28 -0
  138. package/dist/sync/preflight/image_probe.d.ts.map +1 -0
  139. package/dist/sync/preflight/image_probe.js +70 -0
  140. package/dist/sync/preflight/image_probe.js.map +1 -0
  141. package/dist/sync/preflight.d.ts.map +1 -1
  142. package/dist/sync/preflight.js +48 -45
  143. package/dist/sync/preflight.js.map +1 -1
  144. package/dist/sync/pull/fast_path.d.ts +9 -0
  145. package/dist/sync/pull/fast_path.d.ts.map +1 -0
  146. package/dist/sync/pull/fast_path.js +341 -0
  147. package/dist/sync/pull/fast_path.js.map +1 -0
  148. package/dist/sync/pull/index.d.ts +15 -0
  149. package/dist/sync/pull/index.d.ts.map +1 -0
  150. package/dist/sync/pull/index.js +363 -0
  151. package/dist/sync/pull/index.js.map +1 -0
  152. package/dist/sync/pull/list.d.ts +22 -0
  153. package/dist/sync/pull/list.d.ts.map +1 -0
  154. package/dist/sync/pull/list.js +175 -0
  155. package/dist/sync/pull/list.js.map +1 -0
  156. package/dist/sync/pull/media_stage.d.ts +67 -0
  157. package/dist/sync/pull/media_stage.d.ts.map +1 -0
  158. package/dist/sync/pull/media_stage.js +599 -0
  159. package/dist/sync/pull/media_stage.js.map +1 -0
  160. package/dist/sync/pull/quarantine.d.ts +22 -0
  161. package/dist/sync/pull/quarantine.d.ts.map +1 -0
  162. package/dist/sync/pull/quarantine.js +174 -0
  163. package/dist/sync/pull/quarantine.js.map +1 -0
  164. package/dist/sync/pull/types.d.ts +125 -0
  165. package/dist/sync/pull/types.d.ts.map +1 -0
  166. package/dist/sync/pull/types.js +23 -0
  167. package/dist/sync/pull/types.js.map +1 -0
  168. package/dist/sync/pull.d.ts +1 -114
  169. package/dist/sync/pull.d.ts.map +1 -1
  170. package/dist/sync/pull.js +1 -861
  171. package/dist/sync/pull.js.map +1 -1
  172. package/dist/sync/push/commit.d.ts.map +1 -1
  173. package/dist/sync/push/commit.js +1 -2
  174. package/dist/sync/push/commit.js.map +1 -1
  175. package/dist/sync/push/index.js +3 -3
  176. package/dist/sync/push/index.js.map +1 -1
  177. package/dist/sync/push/merge_stage.js +1 -1
  178. package/dist/sync/push/merge_stage.js.map +1 -1
  179. package/dist/sync/push/transport.d.ts +1 -1
  180. package/dist/sync/push/transport.d.ts.map +1 -1
  181. package/dist/sync/push/transport.js +1 -1
  182. package/dist/sync/push/transport.js.map +1 -1
  183. package/dist/sync/status.d.ts.map +1 -1
  184. package/dist/sync/status.js +11 -57
  185. package/dist/sync/status.js.map +1 -1
  186. package/dist/sync/taxonomies.d.ts +25 -0
  187. package/dist/sync/taxonomies.d.ts.map +1 -1
  188. package/dist/sync/taxonomies.js +161 -119
  189. package/dist/sync/taxonomies.js.map +1 -1
  190. package/dist/utils/frontmatter.d.ts.map +1 -1
  191. package/dist/utils/frontmatter.js.map +1 -1
  192. package/dist/utils/mcp-heartbeat.d.ts +36 -0
  193. package/dist/utils/mcp-heartbeat.d.ts.map +1 -0
  194. package/dist/utils/mcp-heartbeat.js +126 -0
  195. package/dist/utils/mcp-heartbeat.js.map +1 -0
  196. package/dist/utils/media-body-refs.d.ts.map +1 -1
  197. package/dist/utils/media-body-refs.js +2 -2
  198. package/dist/utils/media-body-refs.js.map +1 -1
  199. package/dist/utils/taxonomy-key.d.ts +25 -0
  200. package/dist/utils/taxonomy-key.d.ts.map +1 -0
  201. package/dist/utils/taxonomy-key.js +51 -0
  202. package/dist/utils/taxonomy-key.js.map +1 -0
  203. 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":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,MAAM,UAAU,mBAAmB,CAAC,MAAiB,EAAE,cAA+B;IACpF,MAAM,CAAC,IAAI,CACT,UAAU,EACV,iRAAiR,EACjR;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACzD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;QACtD,UAAU,EAAE,CAAC;aACV,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,mDAAmD,CAAC;QAChE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAC3E,MAAM,EAAE,CAAC;aACN,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,wEAAwE,CAAC;QACrF,UAAU,EAAE,CAAC;aACV,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACd,QAAQ,EAAE;aACV,QAAQ,CACP,oJAAoJ,CACrJ;QACH,IAAI,EAAE,CAAC;aACJ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACd,QAAQ,EAAE;aACV,QAAQ,CACP,+HAA+H,CAChI;QACH,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CAAC,+EAA+E,CAAC;QAC5F,aAAa,EAAE,CAAC;aACb,MAAM,EAAE;aACR,QAAQ,EAAE;aACV,QAAQ,CACP,2FAA2F;YACzF,6EAA6E;YAC7E,gHAAgH,CACnH;QACH,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;KACrF,EACD,KAAK,EAAE,IAAI,EAAE,EAAE,CACb,mBAAmB,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,EAAE;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAEnE,MAAM,GAAG,GAAG,qBAAqB,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,GAAG,CAAC,IAAI;YACvB,UAAU;YACV,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,aAAa;YAC/C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,KAAK,EAAE,GAAG,CAAC,KAAK;SACjB,CAAC,CAAC;QAEH,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,aAAa,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,aAAa,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC/B,aAAa,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC7B,aAAa,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,aAAa,GACjB,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE9E,MAAM,YAAY,GAChB,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,CAAC,qBAAqB,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACxE,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,UAAU,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,oBAAoB,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAElD,OAAO,sBAAsB,CAC3B,gCAAgC,IAAI,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,QAAQ,GAAG,CAAC,QAAQ,IAAI,aAAa,GAAG,YAAY,GAAG,SAAS,oEAAoE,EAC7L,GAAG,CAAC,IAAI,CACT,CAAC;IACJ,CAAC,CAAC,CACL,CAAC;AACJ,CAAC"}
@@ -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;AAuBrD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,GAAG,IAAI,CA+a9F"}
@@ -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
27
  import { formatMediaCoverageLine, formatOrphanMediaWarning, } 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,29 +87,59 @@ 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
144
  ? '🛠️ Repaired frontmatter syntax (unpushed local body was strictly preserved)'
118
145
  : res.localEditsPreserved
@@ -128,156 +155,123 @@ export function registerSyncPullTools(server, resolveContext) {
128
155
  ? '\n\nYour local version is intact. Push it with sync_push to publish your edits, ' +
129
156
  'or re-run sync_pull with force: true to accept the remote version instead.'
130
157
  : '\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
- };
158
+ return formatToolTextWithMeta(`${actionText}${titleText} (${res.slug})\nFile path: ${res.filePath}\nStatus: ${res.status}${mediaMsg}${taxonomiesMsg}${quarantineLine}${warnLine}${nextStep}`, ctx.meta);
140
159
  }
141
160
  // Batch sync mode: taxonomies + articles (+ media if includeMedia)
142
161
  const limit = ctx.config.postsSyncLimit || ctx.config.syncLimit || DEFAULT_CONFIG.postsSyncLimit;
143
162
  const shouldPrune = args.prune !== undefined ? args.prune : args.noPrune ? false : undefined;
144
163
  const postsOnly = args.postsOnly === true;
145
164
  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,
165
+ // 1. Pull taxonomies (unless postsOnly or single-article mode)
166
+ let taxonomiesMsg = '';
167
+ if (!postsOnly) {
168
+ const taxResult = await pullTaxonomies({
176
169
  workspaceRoot: ctx.root,
177
- cache: ctx.cache,
178
170
  origin,
179
171
  token: ctx.auth.token,
180
172
  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
173
  });
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}`;
174
+ const failNotes = [];
175
+ if (taxResult.categoriesFailed)
176
+ failNotes.push('categories');
177
+ if (taxResult.tagsFailed)
178
+ failNotes.push('tags');
179
+ if (failNotes.length > 0) {
180
+ taxonomiesMsg = `\n⚠️ Taxonomies: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions).`;
215
181
  }
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).`;
182
+ else {
183
+ taxonomiesMsg = `\nTaxonomies: ${taxResult.categoriesCount} categories, ${taxResult.tagsCount} tags synced.`;
228
184
  }
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
185
  }
240
- catch (error) {
241
- return formatToolError(error, ctx?.meta);
186
+ const taxSummary = getLocalTaxonomiesSummary(ctx.root);
187
+ const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 60 });
188
+ if (taxHint) {
189
+ taxonomiesMsg += `\n\n${taxHint}`;
242
190
  }
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({
191
+ // 2. Pull articles
192
+ const batchResult = await pullBatch({
193
+ collection,
194
+ workspaceRoot: ctx.root,
195
+ cache: ctx.cache,
196
+ origin,
197
+ token: ctx.auth.token,
198
+ refreshToken: ctx.auth.refreshToken,
199
+ limit,
200
+ status: args.status,
201
+ force: args.force,
202
+ prune: shouldPrune,
203
+ localMediaRefs,
204
+ // Local-first media mirroring is default-ON for a batch pull; postsOnly skips it, matching the CLI.
205
+ // The shared walk is bounded by `mediaSyncLimit`, matching the CLI too.
206
+ mediaSync: !postsOnly,
207
+ mediaSyncLimit: ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
208
+ });
209
+ const deletedMsg = batchResult.deleted ? `, ${batchResult.deleted} pruned` : '';
210
+ // Sort items descending by filename (YYYYMMDD_ prefix / ULID) so newest articles appear first
211
+ const sortedItems = [...batchResult.items].sort((a, b) => compareArticleFilenameDesc(a.filePath, b.filePath));
212
+ const updatedItems = sortedItems.filter((i) => i.updated);
213
+ const sampleItems = (updatedItems.length > 0 ? updatedItems : sortedItems).slice(0, 10);
214
+ const listLines = sampleItems.map((item) => ` - [${item.status}] ${item.filePath}${item.title ? ` (${item.title})` : ''}`);
215
+ const headerLabel = updatedItems.length > 0 ? 'Updated Articles' : 'Recent Articles in Workspace';
216
+ const detailBlock = listLines.length > 0 ? `\n\n${headerLabel}:\n${listLines.join('\n')}` : '';
217
+ const preservedMsg = batchResult.preserved && batchResult.preserved > 0
218
+ ? `\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.`
219
+ : '';
220
+ const quarantineNotices = sortedItems
221
+ .map((item) => formatQuarantineNotice(item.quarantined))
222
+ .filter((notice) => notice.length > 0);
223
+ const quarantineMsg = quarantineNotices.length > 0 ? `\n\n${quarantineNotices.join('\n\n')}` : '';
224
+ // 3. Pull media if includeMedia
225
+ let mediaMsg = '';
226
+ if (batchResult.media) {
227
+ const m = batchResult.media;
228
+ const totalLabel = typeof m.remoteTotalCount === 'number' && m.remoteTotalCount > 0
229
+ ? `${m.walkedCount}/${m.remoteTotalCount}`
230
+ : `${m.walkedCount}${m.complete ? '' : '+'}`;
231
+ mediaMsg += `\nMedia (local-first): walked ${totalLabel} record(s), mirrored ${m.mirroredStorageKeys.length} referenced asset(s) (${m.downloaded} downloaded, ${m.skipped} up-to-date).`;
232
+ const orphanWarning = formatOrphanMediaWarning(m.orphanStorageKeys);
233
+ if (orphanWarning)
234
+ mediaMsg += `\n${orphanWarning}`;
235
+ }
236
+ if (includeMedia) {
237
+ const mediaLimit = ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit;
238
+ const mediaResult = await pullMedia({
251
239
  workspaceRoot: ctx.root,
252
- origin: ctx.origin,
240
+ origin,
253
241
  token: ctx.auth.token,
254
242
  refreshToken: ctx.auth.refreshToken,
243
+ limit: mediaLimit,
244
+ downloadFiles: args.metadataOnly !== true,
245
+ cache: ctx.cache,
255
246
  });
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
- };
247
+ mediaMsg += `\nMedia (library pass, limit ${mediaLimit}): ${mediaResult.total} items (${mediaResult.downloaded} downloaded, ${mediaResult.skipped} up-to-date).`;
276
248
  }
277
- catch (error) {
278
- return formatToolError(error);
279
- }
280
- });
249
+ const warnLine = ctx.originWarning ? `\n\n${ctx.originWarning}` : '';
250
+ 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.');
251
+ }));
252
+ // sync_pull_taxonomies
253
+ 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.', {
254
+ profile: z.string().optional().describe('Target profile name for multi-site setups'),
255
+ }, async (args) => withResolvedContext(resolveContext, args, async (ctx) => {
256
+ const res = await pullTaxonomies({
257
+ workspaceRoot: ctx.root,
258
+ origin: ctx.origin,
259
+ token: ctx.auth.token,
260
+ refreshToken: ctx.auth.refreshToken,
261
+ });
262
+ const taxSummary = getLocalTaxonomiesSummary(ctx.root);
263
+ const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 200 });
264
+ const hintBlock = taxHint ? `\n\n${taxHint}` : '';
265
+ const failNotes = [];
266
+ if (res.categoriesFailed)
267
+ failNotes.push('categories');
268
+ if (res.tagsFailed)
269
+ failNotes.push('tags');
270
+ const statusLine = failNotes.length > 0
271
+ ? `⚠️ Warning: Failed to fetch remote ${failNotes.join(' and ')} (preserved existing local definitions in categories/ and tags/).`
272
+ : `✅ Successfully pulled taxonomies (${res.categoriesCount} categories, ${res.tagsCount} tags) into categories/ and tags/.`;
273
+ return formatToolTextWithMeta(`${statusLine}${hintBlock}`, ctx.meta);
274
+ }));
281
275
  // sync_pull_media
282
276
  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
277
  article: z
@@ -302,49 +296,17 @@ export function registerSyncPullTools(server, resolveContext) {
302
296
  .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
297
  downloadFiles: z.boolean().optional().describe('Download binary files (defaults to true)'),
304
298
  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
- }
299
+ }, async (args) => withResolvedContext(resolveContext, args, async (ctx) => {
300
+ const metaSuffix = `\n\n_meta: ${JSON.stringify(ctx.meta)}`;
301
+ if (args.storageKey) {
302
+ const key = toStorageKey(args.storageKey);
303
+ if (!key) {
343
304
  return {
305
+ isError: true,
344
306
  content: [
345
307
  {
346
308
  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}`,
309
+ text: `❌ Error: Invalid storageKey format: "${args.storageKey}". Storage keys must be formatted as <ulid>.<ext> or <ulid1>.<ulid2>.<ext>.`,
348
310
  },
349
311
  ],
350
312
  };
@@ -354,49 +316,61 @@ export function registerSyncPullTools(server, resolveContext) {
354
316
  origin: ctx.origin,
355
317
  token: ctx.auth.token,
356
318
  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,
319
+ storageKeys: [key],
361
320
  downloadFiles: args.downloadFiles,
362
321
  cache: ctx.cache,
363
322
  });
364
323
  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
- : '';
324
+ if (res.total === 0 && res.orphanStorageKeys && res.orphanStorageKeys.length > 0) {
378
325
  return {
326
+ isError: true,
379
327
  content: [
380
328
  {
381
329
  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}`,
330
+ text: `❌ Could not resolve targeted storageKey '${args.storageKey}' on remote.${orphanWarning ? `\n\n${orphanWarning}` : ''}${metaSuffix}`,
383
331
  },
384
332
  ],
385
333
  };
386
334
  }
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
- };
335
+ // Nothing was (re)downloaded, yet the key is not an orphan: the library walk left it outside its
336
+ // window or local mirror metadata already confirms it. Say which, instead of claiming a pull.
337
+ if (res.total === 0) {
338
+ return formatToolTextWithMeta(`ℹ️ Targeted storageKey '${args.storageKey}' was not downloaded: ${res.verifiedStorageKeys && res.verifiedStorageKeys.length > 0
339
+ ? 'confirmed by local mirror metadata already in media/'
340
+ : 'not found within the bounded library walk'}. Run "emit pull-media --all" (or a larger --limit) for a complete library pass.${metaSuffix}`, ctx.meta);
341
+ }
342
+ 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
343
  }
397
- catch (error) {
398
- return formatToolError(error);
344
+ const res = await pullMedia({
345
+ workspaceRoot: ctx.root,
346
+ origin: ctx.origin,
347
+ token: ctx.auth.token,
348
+ refreshToken: ctx.auth.refreshToken,
349
+ article: args.article,
350
+ collection: args.collection || ctx.config.defaultCollection,
351
+ limit: args.limit || ctx.config.mediaSyncLimit || DEFAULT_CONFIG.mediaSyncLimit,
352
+ all: args.all,
353
+ downloadFiles: args.downloadFiles,
354
+ cache: ctx.cache,
355
+ });
356
+ const orphanWarning = formatOrphanMediaWarning(res.orphanStorageKeys);
357
+ if (args.article) {
358
+ const failedMsg = res.failed ? `, ${res.failed} unresolved` : '';
359
+ const verifiedCount = res.verifiedStorageKeys?.length ?? 0;
360
+ const verifiedMsg = verifiedCount > 0 ? `, ${verifiedCount} verified/mirrored` : '';
361
+ const idNote = res.unresolvedIds && !res.failed
362
+ ? ` (${res.unresolvedIds} body ULID(s) are R2 storageKeys, not media record ids, so no id lookup was expected to match)`
363
+ : '';
364
+ const idsList = res.mediaIds && res.mediaIds.length > 0
365
+ ? `\nMedia IDs: ${res.mediaIds.join(', ')}`
366
+ : '';
367
+ const keysList = res.orphanStorageKeys && res.orphanStorageKeys.length > 0
368
+ ? `\nUnresolved Storage Keys (no matching record or local mirror): ${res.orphanStorageKeys.join(', ')}`
369
+ : '';
370
+ 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
371
  }
400
- });
372
+ const deletedMsg = res.deleted ? `, ${res.deleted} pruned` : '';
373
+ return formatToolTextWithMeta(`✅ Successfully pulled media: ${res.total} items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${deletedMsg}).${formatMediaCoverageLine(res)}`, ctx.meta);
374
+ }));
401
375
  }
402
376
  //# 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"}