@mulmoclaude/core 3.0.1 → 3.1.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 (72) hide show
  1. package/assets/helps/collection-skills.md +72 -8
  2. package/assets/helps/custom-view.md +9 -1
  3. package/assets/helps/error-recovery.md +36 -0
  4. package/assets/helps/feeds.md +6 -4
  5. package/dist/calendarGrid-Csy2rpjp.js.map +1 -1
  6. package/dist/calendarGrid-p8K-7cuB.cjs.map +1 -1
  7. package/dist/collection/core/presentCollection.d.ts +49 -0
  8. package/dist/collection/core/schema.d.ts +16 -1
  9. package/dist/collection/index.cjs +56 -7
  10. package/dist/collection/index.cjs.map +1 -1
  11. package/dist/collection/index.js +53 -8
  12. package/dist/collection/index.js.map +1 -1
  13. package/dist/collection/registry/server/importWriter.d.ts +2 -1
  14. package/dist/collection/registry/server/index.cjs +31 -10
  15. package/dist/collection/registry/server/index.cjs.map +1 -1
  16. package/dist/collection/registry/server/index.js +30 -9
  17. package/dist/collection/registry/server/index.js.map +1 -1
  18. package/dist/collection/server/host.d.ts +34 -4
  19. package/dist/collection/server/index.cjs +4 -2
  20. package/dist/collection/server/index.d.ts +1 -1
  21. package/dist/collection/server/index.js +4 -3
  22. package/dist/collection/server/manageTool.d.ts +19 -0
  23. package/dist/collection/server/schemaDocs.d.ts +5 -1
  24. package/dist/collection-watchers/config.d.ts +15 -2
  25. package/dist/collection-watchers/index.cjs +310 -198
  26. package/dist/collection-watchers/index.cjs.map +1 -1
  27. package/dist/collection-watchers/index.js +310 -198
  28. package/dist/collection-watchers/index.js.map +1 -1
  29. package/dist/collection-watchers/reconciler.d.ts +1 -5
  30. package/dist/collection-watchers/watcher.d.ts +31 -26
  31. package/dist/{discovery-4Z-ZWFam.js → discovery-CC7kuwHf.js} +21 -7
  32. package/dist/discovery-CC7kuwHf.js.map +1 -0
  33. package/dist/{discovery-CtiZMlsX.cjs → discovery-CDOjfctD.cjs} +33 -7
  34. package/dist/discovery-CDOjfctD.cjs.map +1 -0
  35. package/dist/feeds/server/index.cjs +26 -6
  36. package/dist/feeds/server/index.cjs.map +1 -1
  37. package/dist/feeds/server/index.d.ts +1 -1
  38. package/dist/feeds/server/index.js +26 -7
  39. package/dist/feeds/server/index.js.map +1 -1
  40. package/dist/feeds/server/scheduledRefresh.d.ts +16 -1
  41. package/dist/files/index.cjs +6 -5
  42. package/dist/files/index.cjs.map +1 -1
  43. package/dist/files/index.d.ts +1 -0
  44. package/dist/files/index.js +2 -2
  45. package/dist/files/root.d.ts +15 -0
  46. package/dist/google/index.cjs +3 -3
  47. package/dist/google/index.cjs.map +1 -1
  48. package/dist/google/index.js +2 -2
  49. package/dist/remote-host/index.cjs +3 -1
  50. package/dist/remote-host/index.d.ts +30 -0
  51. package/dist/remote-host/index.js +2 -2
  52. package/dist/remote-host/server/index.cjs +1 -1
  53. package/dist/remote-host/server/index.js +1 -1
  54. package/dist/{remote-host-Dba4lF3Z.js → remote-host-CFnl1I-L.js} +35 -2
  55. package/dist/{remote-host-Dba4lF3Z.js.map → remote-host-CFnl1I-L.js.map} +1 -1
  56. package/dist/{remote-host-CtQjagPt.cjs → remote-host-EQPlccB9.cjs} +46 -1
  57. package/dist/{remote-host-CtQjagPt.cjs.map → remote-host-EQPlccB9.cjs.map} +1 -1
  58. package/dist/{atomic-DPpdrJzO.js → root-BMroU_mB.js} +21 -2
  59. package/dist/root-BMroU_mB.js.map +1 -0
  60. package/dist/{atomic-DhUk8uiM.cjs → root-rPH6FGDT.cjs} +26 -1
  61. package/dist/root-rPH6FGDT.cjs.map +1 -0
  62. package/dist/{server-CedIocRS.js → server-AA2kfDfk.js} +137 -42
  63. package/dist/server-AA2kfDfk.js.map +1 -0
  64. package/dist/{server-DOZFzx5l.cjs → server-WU35UYlF.cjs} +138 -43
  65. package/dist/server-WU35UYlF.cjs.map +1 -0
  66. package/package.json +1 -1
  67. package/dist/atomic-DPpdrJzO.js.map +0 -1
  68. package/dist/atomic-DhUk8uiM.cjs.map +0 -1
  69. package/dist/discovery-4Z-ZWFam.js.map +0 -1
  70. package/dist/discovery-CtiZMlsX.cjs.map +0 -1
  71. package/dist/server-CedIocRS.js.map +0 -1
  72. package/dist/server-DOZFzx5l.cjs.map +0 -1
@@ -1,6 +1,6 @@
1
1
  const require_rolldown_runtime = require("./rolldown-runtime-VH7oDXx4.cjs");
2
2
  const require_dist = require("./dist-CsgSfWwR.cjs");
3
- const require_atomic = require("./atomic-DhUk8uiM.cjs");
3
+ const require_root = require("./root-rPH6FGDT.cjs");
4
4
  const require_calendarGrid = require("./calendarGrid-p8K-7cuB.cjs");
5
5
  const require_project = require("./project-C1ep9pvo.cjs");
6
6
  const require_templatePath = require("./templatePath-27vUZowm.cjs");
@@ -58,7 +58,7 @@ var COLLECTION_ROOT_REQUIRED = "COLLECTION_ROOT_REQUIRED";
58
58
  function collectionChangePayload(base, root) {
59
59
  return root === void 0 ? base : {
60
60
  ...base,
61
- root
61
+ root: require_root.canonicalRoot(root)
62
62
  };
63
63
  }
64
64
  var hostSlot = createHostSlot("@mulmoclaude/core/collection/server: configureCollectionHost()");
@@ -119,6 +119,13 @@ function feedsRoot(workspaceRoot) {
119
119
  function skillsStagingDir(workspaceRoot) {
120
120
  return requireHost().paths.skillsStagingDir(workspaceRoot);
121
121
  }
122
+ /** `<staging>/<slug>` for a root, or `null` when the root has no staging tree.
123
+ * The single place the staging-or-not branch is spelled, so every caller
124
+ * (read bases, schema write targets, archive, delete) agrees on it. */
125
+ function stagingSkillDir(workspaceRoot, slug) {
126
+ const staging = requireHost().paths.skillsStagingDir(workspaceRoot);
127
+ return staging === null ? null : node_path.default.join(staging, slug);
128
+ }
122
129
  function archiveDir() {
123
130
  return requireHost().paths.archiveDir;
124
131
  }
@@ -411,7 +418,7 @@ async function writeItem(dataDir, itemId, item, opts = {}) {
411
418
  } finally {
412
419
  await handle.close();
413
420
  }
414
- } else await require_atomic.writeFileAtomic(filePath, payload);
421
+ } else await require_root.writeFileAtomic(filePath, payload);
415
422
  if (opts.slug) publishCollectionChange(collectionChangePayload({
416
423
  slug: opts.slug,
417
424
  ids: [safeId],
@@ -2527,9 +2534,16 @@ function applyFeedSchemaDefaults(parsed, slug) {
2527
2534
  dataPath: `data/feeds/${slug}`
2528
2535
  };
2529
2536
  }
2530
- /** The conventional per-slug records dir a `dataSource` collection gets as
2531
- * its `dataDir` (records never live there, but archive/delete paths stay
2532
- * well-defined — same shape the registry's R3 normalization uses). */
2537
+ /** The conventional per-slug records dir a `dataSource` / `storage` collection
2538
+ * gets as its `dataDir` (records never live there, but archive/delete paths
2539
+ * stay well-defined — same shape the registry's R3 normalization uses).
2540
+ *
2541
+ * INVARIANT — this is NOT a default `dataPath`, and must not be used as one.
2542
+ * It applies only to the two backends whose records are not per-file JSON. A
2543
+ * normal collection declares its own location and exactly one of `dataPath` /
2544
+ * `dataSource` / `storage`; a schema with none of the three is REJECTED, not
2545
+ * quietly pointed here. Handing a per-file collection this path would silently
2546
+ * relocate its records away from the folder the user (and its SKILL.md) sees. */
2533
2547
  function conventionalDataPath(slug) {
2534
2548
  return `data/collections/${slug}/items`;
2535
2549
  }
@@ -2993,6 +3007,12 @@ Object.defineProperty(exports, "projectItemFields", {
2993
3007
  return projectItemFields;
2994
3008
  }
2995
3009
  });
3010
+ Object.defineProperty(exports, "projectSkillsDir", {
3011
+ enumerable: true,
3012
+ get: function() {
3013
+ return projectSkillsDir;
3014
+ }
3015
+ });
2996
3016
  Object.defineProperty(exports, "publishCollectionChange", {
2997
3017
  enumerable: true,
2998
3018
  get: function() {
@@ -3071,6 +3091,12 @@ Object.defineProperty(exports, "skillsStagingDir", {
3071
3091
  return skillsStagingDir;
3072
3092
  }
3073
3093
  });
3094
+ Object.defineProperty(exports, "stagingSkillDir", {
3095
+ enumerable: true,
3096
+ get: function() {
3097
+ return stagingSkillDir;
3098
+ }
3099
+ });
3074
3100
  Object.defineProperty(exports, "storeFor", {
3075
3101
  enumerable: true,
3076
3102
  get: function() {
@@ -3096,4 +3122,4 @@ Object.defineProperty(exports, "writeItem", {
3096
3122
  }
3097
3123
  });
3098
3124
 
3099
- //# sourceMappingURL=discovery-CtiZMlsX.cjs.map
3125
+ //# sourceMappingURL=discovery-CDOjfctD.cjs.map