@mulmoclaude/core 3.13.0 → 3.15.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.
@@ -2,7 +2,7 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_root = require("../../root-rPH6FGDT.cjs");
3
3
  const require_itemId = require("../../itemId-Dzrr3vs5.cjs");
4
4
  const require_discovery = require("../../discovery-BsXiDZBR.cjs");
5
- const require_server = require("../../server-_g1rW-Uc.cjs");
5
+ const require_server = require("../../server-DLzQ4jFu.cjs");
6
6
  const require_templatePath = require("../../templatePath-27vUZowm.cjs");
7
7
  exports.APPS_COLLECTION = require_server.APPS_COLLECTION;
8
8
  exports.APP_MANIFEST_FILE = require_discovery.APP_MANIFEST_FILE;
@@ -21,8 +21,14 @@ exports.MAX_RECORD_ISSUES = require_server.MAX_RECORD_ISSUES;
21
21
  exports.MAX_SCHEMA_ISSUES = require_server.MAX_SCHEMA_ISSUES;
22
22
  exports.MAX_UNSELECTIVE_ITEMS = require_server.MAX_UNSELECTIVE_ITEMS;
23
23
  exports.PUBLIC_CONFIG_DOC = require_server.PUBLIC_CONFIG_DOC;
24
+ exports.PUBLIC_VIEW_ID = require_server.PUBLIC_VIEW_ID;
25
+ exports.RESERVED_VIEW_IDS = require_server.RESERVED_VIEW_IDS;
24
26
  exports.SCHEMA_FILE = require_discovery.SCHEMA_FILE;
25
27
  exports.STORE_UNREADABLE = require_server.STORE_UNREADABLE;
28
+ exports.VIEW_AUDIENCES = require_server.VIEW_AUDIENCES;
29
+ exports.VIEW_CONFIG_ID = require_server.VIEW_CONFIG_ID;
30
+ exports.VIEW_ID_PATTERN = require_server.VIEW_ID_PATTERN;
31
+ exports.VIEW_TIER = require_server.VIEW_TIER;
26
32
  exports.acceptParsedSchema = require_discovery.acceptParsedSchema;
27
33
  exports.advanceTriggerDate = require_server.advanceTriggerDate;
28
34
  exports.appConfigPath = require_server.appConfigPath;
@@ -30,6 +36,7 @@ exports.appManifestReason = require_discovery.appManifestReason;
30
36
  exports.appSchemasPath = require_server.appSchemasPath;
31
37
  exports.appSlugDoc = require_server.appSlugDoc;
32
38
  exports.appStagingPath = require_server.appStagingPath;
39
+ exports.appViewTierPath = require_server.appViewTierPath;
33
40
  exports.applyMutateAction = require_server.applyMutateAction;
34
41
  exports.bindsSubmitterIdentity = require_server.bindsSubmitterIdentity;
35
42
  exports.buildActionSeedPrompt = require_server.buildActionSeedPrompt;
@@ -79,12 +86,15 @@ exports.log = require_discovery.log;
79
86
  exports.makeManageCollectionTool = require_server.makeManageCollectionTool;
80
87
  exports.maybeSpawnSuccessor = require_server.maybeSpawnSuccessor;
81
88
  exports.normalizeCsvValue = require_discovery.normalizeCsvValue;
89
+ exports.normalizeViews = require_server.normalizeViews;
82
90
  exports.pageFromFullRead = require_discovery.pageFromFullRead;
83
91
  exports.parseAppManifest = require_discovery.parseAppManifest;
84
92
  exports.parseAuthoredApp = require_server.parseAuthoredApp;
85
93
  exports.parseCivil = require_server.parseCivil;
94
+ exports.participantScope = require_server.participantScope;
86
95
  exports.peekWorkspaceRoot = require_discovery.peekWorkspaceRoot;
87
96
  exports.projectApp = require_server.projectApp;
97
+ exports.projectAppViews = require_server.projectAppViews;
88
98
  exports.projectDeploy = require_server.projectDeploy;
89
99
  exports.projectItemFields = require_discovery.projectItemFields;
90
100
  exports.projectPublish = require_server.projectPublish;
@@ -121,4 +131,7 @@ exports.toDetail = require_discovery.toDetail;
121
131
  exports.toSummary = require_discovery.toSummary;
122
132
  exports.validateCollectionRecords = require_server.validateCollectionRecords;
123
133
  exports.validateRecordObject = require_server.validateRecordObject;
134
+ exports.viewConfigDocId = require_server.viewConfigDocId;
135
+ exports.viewDocId = require_server.viewDocId;
136
+ exports.writeFor = require_server.writeFor;
124
137
  exports.writeItem = require_discovery.writeItem;
@@ -3,8 +3,9 @@ export type { FirestoreDoc, FirestoreDocs } from './firestoreDocs';
3
3
  export { sharedItemsPath } from './firestoreStore';
4
4
  export { loadAppManifest, parseAppManifest, appManifestReason, APP_MANIFEST_FILE, type AppManifest, type AppManifestResult } from './appManifest';
5
5
  export { AuthoredAppZ, parseAuthoredApp, APP_ROLES, type AuthoredApp, type AuthoredCollectionConfig, type AuthoredMail, type AuthoredSubmit, } from './publishManifest';
6
- export { projectApp, projectDeploy, projectPublish, stagedRuleConfig, promoteSchema, appStagingPath, APP_SLUGS_COLLECTION, appSlugDoc, type AppSlugDoc, type DeployedApp, type PublishedFace, APPS_COLLECTION, PUBLIC_CONFIG_DOC, appConfigPath, appSchemasPath, type PublishStamp, type PublishedApp, type PublishedConfigDoc, type PublishedSchemaDoc, type StagedSchemaDoc, } from './publishProject';
6
+ export { projectApp, projectAppViews, appViewTierPath, viewConfigDocId, type AppViewTier, projectDeploy, projectPublish, stagedRuleConfig, promoteSchema, appStagingPath, APP_SLUGS_COLLECTION, appSlugDoc, type AppSlugDoc, type DeployedApp, type PublishedFace, APPS_COLLECTION, PUBLIC_CONFIG_DOC, appConfigPath, appSchemasPath, type PublishStamp, type PublishedApp, type PublishedConfigDoc, type PublishedSchemaDoc, type StagedSchemaDoc, } from './publishProject';
7
7
  export { publishProblems, promotedRoleProblems, bindsSubmitterIdentity, type PublishableCollection } from './publishChecks';
8
+ export { normalizeViews, participantScope, viewDocId, writeFor, PUBLIC_VIEW_ID, RESERVED_VIEW_IDS, VIEW_AUDIENCES, VIEW_CONFIG_ID, VIEW_ID_PATTERN, VIEW_TIER, type AppViewConfigDoc, type NormalizedView, type NormalizedViewsResult, type ProjectedViewCollection, type ProjectedViewWrite, type ViewAudience, } from './appViews';
8
9
  export type { LoadedCollection } from './discoveredCollection';
9
10
  export * from './paths';
10
11
  export * from './templatePath';
@@ -1,6 +1,6 @@
1
1
  import { t as canonicalRoot } from "../../root-BMroU_mB.js";
2
2
  import { N as COMPUTED_TYPES } from "../../itemId-DfTm08jm.js";
3
3
  import { A as readItem, B as SCHEMA_FILE, C as CollectionQueryZ, D as generateItemId, E as deleteItem, F as loadAppManifest, G as safeRecordId, H as itemFilePath, I as parseAppManifest, J as isBackendUnavailable, K as safeSlugName, L as sharedItemsPath, M as writeItem, N as APP_MANIFEST_FILE, O as isRegularFile, P as appManifestReason, Q as collectionChangePayload, R as pageFromFullRead, S as compileJsonlQuery, T as MAX_QUERY_ROWS, U as resolveDataDir, V as isContainedInRoot, W as resolveTemplatePath, Y as COLLECTION_ROOT_REQUIRED, Z as collectionChangeKey, _ as dedupeByRecordId, a as toDetail, at as localCollectionKey, d as storeFor, dt as setFirestoreAccessor, et as configureCollectionHost, ft as setSharedCollectionsSupport, g as decodeCsvRecordId, h as csvRowToItem, i as resolvePrimaryField, j as resolveCreateItemId, k as listItems, l as collectionWritable, lt as publishCollectionChange, n as discoverCollections, nt as getWorkspaceRoot, o as toSummary, ot as log, p as MAX_CSV_ROWS, pt as sharedCollectionChangePayload, q as BackendUnavailableError, r as loadCollection, rt as hostSupportsSharedCollections, s as CollectionSchemaZ, st as peekWorkspaceRoot, t as acceptParsedSchema, tt as firestoreHandle, u as readOnlyRefusal, ut as setCollectionChangePublisher, v as encodeCsvRecordId, w as DEFAULT_QUERY_ROWS, x as compileCsvQuery, y as normalizeCsvValue, z as projectItemFields } from "../../discovery-B9zdNkgW.js";
4
- import { $ as AuthoredAppZ, A as runQueryOverRows, B as APPS_COLLECTION, C as STORE_UNREADABLE, D as recordFieldProblem, E as compileRecordZ, F as readCustomViewI18n, G as appSlugDoc, H as PUBLIC_CONFIG_DOC, I as readSkillTemplate, J as projectDeploy, K as appStagingPath, L as bindsSubmitterIdentity, M as buildCollectionActionSeedPrompt, N as promptPathsFor, O as runCollectionQuery, P as readCustomViewHtml, Q as APP_ROLES, R as promotedRoleProblems, S as MAX_RECORD_ISSUES, T as validateRecordObject, U as appConfigPath, V as APP_SLUGS_COLLECTION, W as appSchemasPath, X as promoteSchema, Y as projectPublish, Z as stagedRuleConfig, _ as computeCollectionIcon, a as deleteCollection, b as applyMutateAction, c as computeSuccessor, d as isTriggerDue, et as parseAuthoredApp, f as maybeSpawnSuccessor, h as successorId, i as deleteCustomView, j as buildActionSeedPrompt, k as enrichItems, l as daysInMonth, m as resolveEvery, n as MAX_UNSELECTIVE_ITEMS, o as deleteCollectionRefusalMessage, p as parseCivil, q as projectApp, r as makeManageCollectionTool, s as advanceTriggerDate, t as MAX_SCHEMA_ISSUES, u as formatCivil, v as buildWorkspaceOntology, w as validateCollectionRecords, x as firstMutateParamProblem, y as schemaRelations, z as publishProblems } from "../../server-DGjmK9vU.js";
4
+ import { $ as stagedRuleConfig, A as runQueryOverRows, B as APPS_COLLECTION, C as STORE_UNREADABLE, D as recordFieldProblem, E as compileRecordZ, F as readCustomViewI18n, G as appSlugDoc, H as PUBLIC_CONFIG_DOC, I as readSkillTemplate, J as projectApp, K as appStagingPath, L as bindsSubmitterIdentity, M as buildCollectionActionSeedPrompt, N as promptPathsFor, O as runCollectionQuery, P as readCustomViewHtml, Q as promoteSchema, R as promotedRoleProblems, S as MAX_RECORD_ISSUES, T as validateRecordObject, U as appConfigPath, V as APP_SLUGS_COLLECTION, W as appSchemasPath, X as projectDeploy, Y as projectAppViews, Z as projectPublish, _ as computeCollectionIcon, a as deleteCollection, at as RESERVED_VIEW_IDS, b as applyMutateAction, c as computeSuccessor, ct as VIEW_ID_PATTERN, d as isTriggerDue, dt as participantScope, et as viewConfigDocId, f as maybeSpawnSuccessor, ft as viewDocId, h as successorId, i as deleteCustomView, it as PUBLIC_VIEW_ID, j as buildActionSeedPrompt, k as enrichItems, l as daysInMonth, lt as VIEW_TIER, m as resolveEvery, n as MAX_UNSELECTIVE_ITEMS, nt as AuthoredAppZ, o as deleteCollectionRefusalMessage, ot as VIEW_AUDIENCES, p as parseCivil, pt as writeFor, q as appViewTierPath, r as makeManageCollectionTool, rt as parseAuthoredApp, s as advanceTriggerDate, st as VIEW_CONFIG_ID, t as MAX_SCHEMA_ISSUES, tt as APP_ROLES, u as formatCivil, ut as normalizeViews, v as buildWorkspaceOntology, w as validateCollectionRecords, x as firstMutateParamProblem, y as schemaRelations, z as publishProblems } from "../../server-jm7aGA3g.js";
5
5
  import { i as isSafeTemplatePath, n as isSafeCustomViewI18nPath, r as isSafeCustomViewPath, t as isSafeActionTemplatePath } from "../../templatePath-k_WNbL_Q.js";
6
- export { APPS_COLLECTION, APP_MANIFEST_FILE, APP_ROLES, APP_SLUGS_COLLECTION, AuthoredAppZ, BackendUnavailableError, COLLECTION_ROOT_REQUIRED, COMPUTED_TYPES, CollectionQueryZ, CollectionSchemaZ, DEFAULT_QUERY_ROWS, MAX_CSV_ROWS, MAX_QUERY_ROWS, MAX_RECORD_ISSUES, MAX_SCHEMA_ISSUES, MAX_UNSELECTIVE_ITEMS, PUBLIC_CONFIG_DOC, SCHEMA_FILE, STORE_UNREADABLE, acceptParsedSchema, advanceTriggerDate, appConfigPath, appManifestReason, appSchemasPath, appSlugDoc, appStagingPath, applyMutateAction, bindsSubmitterIdentity, buildActionSeedPrompt, buildCollectionActionSeedPrompt, buildWorkspaceOntology, canonicalRoot, collectionChangeKey, collectionChangePayload, collectionWritable, compileCsvQuery, compileJsonlQuery, compileRecordZ, computeCollectionIcon, computeSuccessor, configureCollectionHost, csvRowToItem, daysInMonth, decodeCsvRecordId, dedupeByRecordId, deleteCollection, deleteCollectionRefusalMessage, deleteCustomView, deleteItem, discoverCollections, encodeCsvRecordId, enrichItems, firestoreHandle, firstMutateParamProblem, formatCivil, generateItemId, getWorkspaceRoot, hostSupportsSharedCollections, isBackendUnavailable, isContainedInRoot, isRegularFile, isSafeActionTemplatePath, isSafeCustomViewI18nPath, isSafeCustomViewPath, isSafeTemplatePath, isTriggerDue, itemFilePath, listItems, loadAppManifest, loadCollection, localCollectionKey, log, makeManageCollectionTool, maybeSpawnSuccessor, normalizeCsvValue, pageFromFullRead, parseAppManifest, parseAuthoredApp, parseCivil, peekWorkspaceRoot, projectApp, projectDeploy, projectItemFields, projectPublish, promoteSchema, promotedRoleProblems, promptPathsFor, publishCollectionChange, publishProblems, readCustomViewHtml, readCustomViewI18n, readItem, readOnlyRefusal, readSkillTemplate, recordFieldProblem, resolveCreateItemId, resolveDataDir, resolveEvery, resolvePrimaryField, resolveTemplatePath, runCollectionQuery, runQueryOverRows, safeRecordId, safeSlugName, schemaRelations, setCollectionChangePublisher, setFirestoreAccessor, setSharedCollectionsSupport, sharedCollectionChangePayload, sharedItemsPath, stagedRuleConfig, storeFor, successorId, toDetail, toSummary, validateCollectionRecords, validateRecordObject, writeItem };
6
+ export { APPS_COLLECTION, APP_MANIFEST_FILE, APP_ROLES, APP_SLUGS_COLLECTION, AuthoredAppZ, BackendUnavailableError, COLLECTION_ROOT_REQUIRED, COMPUTED_TYPES, CollectionQueryZ, CollectionSchemaZ, DEFAULT_QUERY_ROWS, MAX_CSV_ROWS, MAX_QUERY_ROWS, MAX_RECORD_ISSUES, MAX_SCHEMA_ISSUES, MAX_UNSELECTIVE_ITEMS, PUBLIC_CONFIG_DOC, PUBLIC_VIEW_ID, RESERVED_VIEW_IDS, SCHEMA_FILE, STORE_UNREADABLE, VIEW_AUDIENCES, VIEW_CONFIG_ID, VIEW_ID_PATTERN, VIEW_TIER, acceptParsedSchema, advanceTriggerDate, appConfigPath, appManifestReason, appSchemasPath, appSlugDoc, appStagingPath, appViewTierPath, applyMutateAction, bindsSubmitterIdentity, buildActionSeedPrompt, buildCollectionActionSeedPrompt, buildWorkspaceOntology, canonicalRoot, collectionChangeKey, collectionChangePayload, collectionWritable, compileCsvQuery, compileJsonlQuery, compileRecordZ, computeCollectionIcon, computeSuccessor, configureCollectionHost, csvRowToItem, daysInMonth, decodeCsvRecordId, dedupeByRecordId, deleteCollection, deleteCollectionRefusalMessage, deleteCustomView, deleteItem, discoverCollections, encodeCsvRecordId, enrichItems, firestoreHandle, firstMutateParamProblem, formatCivil, generateItemId, getWorkspaceRoot, hostSupportsSharedCollections, isBackendUnavailable, isContainedInRoot, isRegularFile, isSafeActionTemplatePath, isSafeCustomViewI18nPath, isSafeCustomViewPath, isSafeTemplatePath, isTriggerDue, itemFilePath, listItems, loadAppManifest, loadCollection, localCollectionKey, log, makeManageCollectionTool, maybeSpawnSuccessor, normalizeCsvValue, normalizeViews, pageFromFullRead, parseAppManifest, parseAuthoredApp, parseCivil, participantScope, peekWorkspaceRoot, projectApp, projectAppViews, projectDeploy, projectItemFields, projectPublish, promoteSchema, promotedRoleProblems, promptPathsFor, publishCollectionChange, publishProblems, readCustomViewHtml, readCustomViewI18n, readItem, readOnlyRefusal, readSkillTemplate, recordFieldProblem, resolveCreateItemId, resolveDataDir, resolveEvery, resolvePrimaryField, resolveTemplatePath, runCollectionQuery, runQueryOverRows, safeRecordId, safeSlugName, schemaRelations, setCollectionChangePublisher, setFirestoreAccessor, setSharedCollectionsSupport, sharedCollectionChangePayload, sharedItemsPath, stagedRuleConfig, storeFor, successorId, toDetail, toSummary, validateCollectionRecords, validateRecordObject, viewConfigDocId, viewDocId, writeFor, writeItem };
@@ -126,10 +126,10 @@ export declare const AuthoredAppZ: z.ZodObject<{
126
126
  aidEnv: z.ZodOptional<z.ZodString>;
127
127
  owner: z.ZodOptional<z.ZodString>;
128
128
  members: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodUnion<readonly [z.ZodLiteral<"*">, z.ZodString]>, z.ZodEnum<{
129
+ participant: "participant";
129
130
  owner: "owner";
130
131
  editor: "editor";
131
132
  viewer: "viewer";
132
- participant: "participant";
133
133
  assignee: "assignee";
134
134
  }>>>;
135
135
  collections: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
@@ -222,6 +222,16 @@ export declare const AuthoredAppZ: z.ZodObject<{
222
222
  }, z.core.$strict>>;
223
223
  }, z.core.$strict>>>;
224
224
  }, z.core.$strict>>;
225
+ views: z.ZodOptional<z.ZodArray<z.ZodObject<{
226
+ id: z.ZodString;
227
+ audience: z.ZodEnum<{
228
+ public: "public";
229
+ member: "member";
230
+ participant: "participant";
231
+ }>;
232
+ path: z.ZodString;
233
+ collections: z.ZodArray<z.ZodString>;
234
+ }, z.core.$strict>>>;
225
235
  }, z.core.$strict>;
226
236
  export type AuthoredApp = z.infer<typeof AuthoredAppZ>;
227
237
  export type AuthoredCollectionConfig = z.infer<typeof CollectionConfigZ>;
@@ -1,4 +1,5 @@
1
1
  import { CollectionSchema } from '../core/schema';
2
+ import { AppViewConfigDoc, NormalizedView, ProjectedViewCollection, ProjectedViewWrite, ViewAudience } from './appViews';
2
3
  import { AuthoredApp, AuthoredCollectionConfig } from './publishManifest';
3
4
  /** Who and when. Threaded in rather than read from a clock inside the
4
5
  * projection so the projection stays pure and the tests can assert on an
@@ -269,3 +270,63 @@ export declare const appSlugDoc: (aid: string, published: boolean) => AppSlugDoc
269
270
  export declare const appStagingPath: (aid: string) => string;
270
271
  /** The public-config documents' parent path. */
271
272
  export declare const appConfigPath: (aid: string) => string;
273
+ /** Where one audience's pages live. `member` is read by anyone holding a role;
274
+ * `roster` by anyone on the roster, participants included. */
275
+ export declare const appViewTierPath: (aid: string, tier: "member" | "roster") => string;
276
+ /** One audience's tier, as publish (or deploy) must write it.
277
+ *
278
+ * Both tiers are returned even when empty, deliberately. An app that WITHDREW
279
+ * its member pages produces an empty tier, and a host that only ever saw the
280
+ * tiers with something in them would leave the previous pages live — the
281
+ * failure `config/view` already had, where a declaration was withdrawn and
282
+ * the world went on reading the page. */
283
+ export interface AppViewTier {
284
+ tier: "member" | "roster";
285
+ audience: Exclude<ViewAudience, "public">;
286
+ /** The projection document, for `{tier}/live:config` or `{tier}/staged:config`.
287
+ * Meaningless when `views` is empty — the host deletes the tier instead. */
288
+ config: AppViewConfigDoc;
289
+ /** The views to publish, in declaration order. The host reads each `path`
290
+ * and writes it to `{tier}/live:{id}`. */
291
+ views: NormalizedView[];
292
+ }
293
+ /** Project the declaration into the per-audience documents.
294
+ *
295
+ * Pure, like `projectApp`: the HTML is not here (the host reads the files),
296
+ * and neither is the clock. What is here is the answer to "what may this
297
+ * audience read, and how" — computed once, so the page never has to guess and
298
+ * never has to discover it from a denial. */
299
+ /** What the RULES will be in force with, as against what the manifest says.
300
+ *
301
+ * `projectPublish` replaces BOTH `participantRead` and `collections` with what
302
+ * the staged schemas carry, so at publish the promoted pair is what decides
303
+ * whether a read is allowed and which transitions exist. They travel together
304
+ * deliberately: passing one and not the other publishes a page whose datasets
305
+ * follow revision A and whose buttons follow revision B.
306
+ *
307
+ * At DEPLOY the manifest is exactly what is being staged, so the default is
308
+ * right — and today deploy is the only caller, because publish PROMOTES the
309
+ * staged documents rather than re-projecting them. */
310
+ export interface PromotedRuleConfig {
311
+ participantRead?: readonly string[];
312
+ collections?: Record<string, AuthoredCollectionConfig>;
313
+ }
314
+ /** What this audience may CHANGE, per collection it draws.
315
+ *
316
+ * The `collections` config is the PROMOTED one where there is one: at publish
317
+ * the rules run against what deploy staged, so projecting the manifest's
318
+ * would advertise transitions the live rules deny. */
319
+ export declare function tierWrites(authored: AuthoredApp, audience: Exclude<ViewAudience, "public">, cids: string[], promoted: PromotedRuleConfig): ProjectedViewWrite[];
320
+ /** What this audience may READ, and how to query for it.
321
+ *
322
+ * A collection with no scope is dropped rather than published as unreachable:
323
+ * the gate has already refused the declaration, so reaching here with one is
324
+ * a programming error, and a page that queries it is denied. */
325
+ export declare function tierViews(authored: AuthoredApp, audience: Exclude<ViewAudience, "public">, views: NormalizedView[], participantRead: readonly string[]): {
326
+ id: string;
327
+ collections: ProjectedViewCollection[];
328
+ }[];
329
+ export declare function projectAppViews(authored: AuthoredApp, stamp: PublishStamp, promoted?: PromotedRuleConfig): AppViewTier[];
330
+ /** The document a tier's projection is published at. Beside the views
331
+ * themselves, under one `match` — see `firestore.rules`. */
332
+ export declare const viewConfigDocId: (stage: "live" | "staged") => string;
@@ -4,7 +4,7 @@ const require_itemId = require("../itemId-Dzrr3vs5.cjs");
4
4
  const require_promptSafety = require("../promptSafety-CWqYq-NS.cjs");
5
5
  require("../collection/index.cjs");
6
6
  const require_discovery = require("../discovery-BsXiDZBR.cjs");
7
- const require_server = require("../server-_g1rW-Uc.cjs");
7
+ const require_server = require("../server-DLzQ4jFu.cjs");
8
8
  const require_notifier = require("../notifier-DZJj0sOh.cjs");
9
9
  let node_fs_promises = require("node:fs/promises");
10
10
  //#region src/collection-watchers/config.ts
@@ -3,7 +3,7 @@ import { B as fieldText, x as isValidCollectionName } from "../itemId-DfTm08jm.j
3
3
  import { E as whenMatches, f as itemIsDone } from "../promptSafety-CSdyp7RF.js";
4
4
  import "../collection/index.js";
5
5
  import { H as itemFilePath, Q as collectionChangePayload, d as storeFor, lt as publishCollectionChange, n as discoverCollections, pt as sharedCollectionChangePayload, r as loadCollection, st as peekWorkspaceRoot, tt as firestoreHandle } from "../discovery-B9zdNkgW.js";
6
- import { d as isTriggerDue, f as maybeSpawnSuccessor } from "../server-DGjmK9vU.js";
6
+ import { d as isTriggerDue, f as maybeSpawnSuccessor } from "../server-jm7aGA3g.js";
7
7
  import { d as publish, m as updateForPlugin, n as clear, s as listAll } from "../notifier-DhnwR82U.js";
8
8
  import { access } from "node:fs/promises";
9
9
  //#region src/collection-watchers/config.ts
@@ -5,7 +5,7 @@ const require_root = require("../../root-rPH6FGDT.cjs");
5
5
  const require_itemId = require("../../itemId-Dzrr3vs5.cjs");
6
6
  const require_project = require("../../project-C1ep9pvo.cjs");
7
7
  const require_discovery = require("../../discovery-BsXiDZBR.cjs");
8
- const require_server = require("../../server-_g1rW-Uc.cjs");
8
+ const require_server = require("../../server-DLzQ4jFu.cjs");
9
9
  const require_feeds_paths = require("../paths.cjs");
10
10
  const require_ingestTypes = require("../../ingestTypes-B4XfrUoq.cjs");
11
11
  const require_notifier = require("../../notifier-DZJj0sOh.cjs");
@@ -3,7 +3,7 @@ import { t as canonicalRoot } from "../../root-BMroU_mB.js";
3
3
  import { F as INGEST_KINDS, P as FEED_SCHEDULES } from "../../itemId-DfTm08jm.js";
4
4
  import { t as mergeIntoExisting } from "../../project-B0j_Vf_Q.js";
5
5
  import { K as safeSlugName, U as resolveDataDir, _t as createHostSlot, d as storeFor, gt as createForwardingLogger, k as listItems, n as discoverCollections } from "../../discovery-B9zdNkgW.js";
6
- import { I as readSkillTemplate, M as buildCollectionActionSeedPrompt, N as promptPathsFor } from "../../server-DGjmK9vU.js";
6
+ import { I as readSkillTemplate, M as buildCollectionActionSeedPrompt, N as promptPathsFor } from "../../server-jm7aGA3g.js";
7
7
  import { FEEDS_DIR, feedDir, feedStatePath, feedsRoot, ingestStateDir, ingestStatePath } from "../paths.js";
8
8
  import { n as DEFAULT_FEED_MAX_ITEMS, r as isFeedSchedule, t as AGENT_INGEST_KIND } from "../../ingestTypes-B312BwXg.js";
9
9
  import { d as publish, n as clear } from "../../notifier-DhnwR82U.js";