@crowdedkingdoms/crowdy-dsh 0.2.1 → 0.3.0-dev.1

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 (40) hide show
  1. package/README.md +5 -4
  2. package/dist/dsh-web/BUILD.json +5 -5
  3. package/dist/dsh-web/preview/vfs-image.tar.gz +0 -0
  4. package/lib/bridge/index.js +3 -0
  5. package/lib/bridge/index.js.map +1 -1
  6. package/lib/bridge/protocol.js +9 -1
  7. package/lib/bridge/protocol.js.map +1 -1
  8. package/lib/crowdy/client.js +10 -0
  9. package/lib/crowdy/client.js.map +1 -1
  10. package/lib/crowdy/config.js +1 -3
  11. package/lib/crowdy/config.js.map +1 -1
  12. package/lib/crowdy/project-store.js +97 -181
  13. package/lib/crowdy/project-store.js.map +1 -1
  14. package/lib/fs/crowdy-file-system.js +14 -34
  15. package/lib/fs/crowdy-file-system.js.map +1 -1
  16. package/lib/index.js +1 -1
  17. package/lib/index.js.map +1 -1
  18. package/lib/scripts/probe.js +4 -7
  19. package/lib/scripts/probe.js.map +1 -1
  20. package/lib/types/bridge/index.d.ts.map +1 -1
  21. package/lib/types/bridge/protocol.d.ts +21 -2
  22. package/lib/types/bridge/protocol.d.ts.map +1 -1
  23. package/lib/types/crowdy/client.d.ts +17 -1
  24. package/lib/types/crowdy/client.d.ts.map +1 -1
  25. package/lib/types/crowdy/config.d.ts +0 -2
  26. package/lib/types/crowdy/config.d.ts.map +1 -1
  27. package/lib/types/crowdy/project-store.d.ts +39 -47
  28. package/lib/types/crowdy/project-store.d.ts.map +1 -1
  29. package/lib/types/fs/crowdy-file-system.d.ts +6 -6
  30. package/lib/types/fs/crowdy-file-system.d.ts.map +1 -1
  31. package/lib/types/index.d.ts +2 -2
  32. package/lib/types/index.d.ts.map +1 -1
  33. package/lib/vendor/crowdyjs-sdk.js +322 -114
  34. package/lib/vendor/crowdyjs-sdk.version.json +1 -1
  35. package/package.json +7 -7
  36. package/profile/crowdy-web.patch.yml +0 -1
  37. package/lib/crowdy/github-layout.js +0 -97
  38. package/lib/crowdy/github-layout.js.map +0 -1
  39. package/lib/types/crowdy/github-layout.d.ts +0 -36
  40. package/lib/types/crowdy/github-layout.d.ts.map +0 -1
@@ -25,7 +25,7 @@ import { FileSystem, FsError, FsTargetKey, FsVersion } from '@deepseek-ai/dsh-fs
25
25
  import { CrowdyApiError, CrowdyStudioClient } from '../crowdy/client.js';
26
26
  import { loadCrowdyConfig, describeMissing } from '../crowdy/config.js';
27
27
  import { DEFAULT_ROOT, classify, directChildren, isAcceptableProjectPath, normalizeAbsolute, resolveAgainst, scratchDirectories, targetDirectories, toVirtualPath, } from '../crowdy/paths.js';
28
- import { selectProjectStore } from '../crowdy/project-store.js';
28
+ import { CrowdyProjectStore, describeSource } from '../crowdy/project-store.js';
29
29
  import { ScratchStore } from './scratch-store.js';
30
30
  /** Directories have no meaningful content version; guards only apply to files. */
31
31
  const DIRECTORY_VERSION = FsVersion('crowdy-directory');
@@ -95,10 +95,8 @@ export class CrowdyFileSystem extends FileSystem {
95
95
  password: z.string(),
96
96
  bridgeChannel: z.string(),
97
97
  bridgeNonce: z.string(),
98
- githubFirst: z.boolean(),
99
98
  studioOrigin: z.string(),
100
99
  snapshotTtlMs: z.number().default(750),
101
- storeTtlMs: z.number().default(60_000),
102
100
  });
103
101
  /** Effective boot configuration (file + environment + row config). */
104
102
  boot;
@@ -108,12 +106,10 @@ export class CrowdyFileSystem extends FileSystem {
108
106
  scratch = new ScratchStore();
109
107
  root;
110
108
  snapshotTtl;
111
- storeTtl;
112
109
  /** Cached project snapshot; reads may reuse it briefly, mutations never do. */
113
110
  snapshot;
114
111
  inflight;
115
112
  store;
116
- storeInflight;
117
113
  /** Per-path tail promise serializing each read-guard-write critical section. */
118
114
  locks = new Map();
119
115
  /** Listeners told when the project files changed through this backend. */
@@ -124,9 +120,8 @@ export class CrowdyFileSystem extends FileSystem {
124
120
  tokenWaiters = [];
125
121
  constructor(ctx, config = {}) {
126
122
  super(ctx);
127
- const { snapshotTtlMs, storeTtlMs, ...overrides } = config;
123
+ const { snapshotTtlMs, ...overrides } = config;
128
124
  this.snapshotTtl = snapshotTtlMs ?? 750;
129
- this.storeTtl = storeTtlMs ?? 60_000;
130
125
  this.boot = loadCrowdyConfig(overrides);
131
126
  this.root = normalizeAbsolute(this.boot.root ?? DEFAULT_ROOT);
132
127
  publishTokenToEnvironment(this.boot.appToken);
@@ -143,9 +138,9 @@ export class CrowdyFileSystem extends FileSystem {
143
138
  get mountRoot() {
144
139
  return this.root;
145
140
  }
146
- /** Human-readable description of where files currently come from. */
141
+ /** Human-readable description of where files currently come from (known after the first load). */
147
142
  get storeReason() {
148
- return this.store?.reason;
143
+ return this.snapshot ? describeSource(this.snapshot.project) : undefined;
149
144
  }
150
145
  /** Point the backend at another project (the page switched projects). */
151
146
  setProject(projectId) {
@@ -508,9 +503,8 @@ export class CrowdyFileSystem extends FileSystem {
508
503
  const missing = describeMissing(this.boot);
509
504
  if (missing)
510
505
  throw new FsError(missing, 'FS_IO_ERROR');
511
- return this.currentStore();
506
+ return this.currentStore().load();
512
507
  })
513
- .then((store) => store.load())
514
508
  .then((project) => {
515
509
  this.snapshot = { project, at: Date.now() };
516
510
  return project;
@@ -529,29 +523,15 @@ export class CrowdyFileSystem extends FileSystem {
529
523
  }
530
524
  return this.inflight;
531
525
  }
532
- /** Decide (and periodically re-decide) whether GitHub or Studio holds the files. */
533
- async currentStore() {
534
- if (this.store && Date.now() - this.store.at < this.storeTtl)
535
- return this.store.store;
536
- if (!this.storeInflight) {
537
- this.storeInflight = selectProjectStore(this.client, this.boot.projectId, {
538
- githubFirst: this.boot.githubFirst ?? true,
539
- warn: (message) => {
540
- this.warn(message);
541
- },
542
- })
543
- .then((selection) => {
544
- const changed = this.store?.store.kind !== selection.store.kind;
545
- this.store = { ...selection, at: Date.now() };
546
- if (changed)
547
- this.snapshot = undefined;
548
- return selection.store;
549
- })
550
- .finally(() => {
551
- this.storeInflight = undefined;
552
- });
553
- }
554
- return this.storeInflight;
526
+ /**
527
+ * The store for the current project. Which path a write takes (Studio
528
+ * revision or GitHub commit) is decided per snapshot by the project's
529
+ * `source`, so there is nothing to re-decide here.
530
+ */
531
+ currentStore() {
532
+ if (!this.store)
533
+ this.store = new CrowdyProjectStore(this.client, this.boot.projectId);
534
+ return this.store;
555
535
  }
556
536
  find(project, target, path) {
557
537
  return project.files.find((entry) => entry.target === target && entry.path === path);
@@ -1 +1 @@
1
- {"version":3,"file":"crowdy-file-system.js","sourceRoot":"","sources":["../../src/fs/crowdy-file-system.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crowdy-file-system.js","sourceRoot":"","sources":["../../src/fs/crowdy-file-system.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -10,6 +10,6 @@ export { CrowdyFileSystem, default, versionOf } from './fs/crowdy-file-system.js
10
10
  export { ScratchStore } from './fs/scratch-store.js';
11
11
  export { CrowdyApiError, CrowdyStudioClient } from './crowdy/client.js';
12
12
  export { loadCrowdyConfig, describeMissing, CROWDY_CONFIG_FILENAME } from './crowdy/config.js';
13
- export { GitHubProjectStore, StudioProjectStore, selectProjectStore, isSourcePath, } from './crowdy/project-store.js';
13
+ export { CrowdyProjectStore, describeSource, isSourcePath, repoPathFor, snapshotOf } from './crowdy/project-store.js';
14
14
  export { CrowdyAttachmentStore, imageDimensions } from './attachments/crowdy-attachment-store.js';
15
15
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAQvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE9F,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,GACb,MAAM,2BAA2B,CAAA;AAGlC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AAEpD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAUvE,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAE9F,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAGrH,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,0CAA0C,CAAA"}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import { CrowdyStudioClient } from '../crowdy/client.js';
9
9
  import { describeMissing, loadCrowdyConfig } from '../crowdy/config.js';
10
- import { selectProjectStore } from '../crowdy/project-store.js';
10
+ import { CrowdyProjectStore, describeSource } from '../crowdy/project-store.js';
11
11
  async function main() {
12
12
  const boot = loadCrowdyConfig();
13
13
  const missing = describeMissing(boot);
@@ -23,12 +23,9 @@ async function main() {
23
23
  password: boot.password,
24
24
  });
25
25
  const projectId = boot.projectId;
26
- const selection = await selectProjectStore(client, projectId, {
27
- githubFirst: boot.githubFirst ?? true,
28
- warn: (message) => console.warn(` warn: ${message}`),
29
- });
30
- console.log(`store: ${selection.store.kind} — ${selection.reason}`);
31
- const snapshot = await selection.store.load();
26
+ const store = new CrowdyProjectStore(client, projectId);
27
+ const snapshot = await store.load();
28
+ console.log(`store: ${snapshot.source} — ${describeSource(snapshot)}`);
32
29
  console.log(` ${snapshot.label}: ${snapshot.files.length} file(s)`);
33
30
  const project = await client.loadProject(projectId);
34
31
  console.log(`project ${project.name} (${project.projectId})`);
@@ -1 +1 @@
1
- {"version":3,"file":"probe.js","sourceRoot":"","sources":["../../src/scripts/probe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"probe.js","sourceRoot":"","sources":["../../src/scripts/probe.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE/E,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,gBAAgB,EAAE,CAAA;IAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,oBAAoB,CAAC,CAAA;QAC7C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,kBAAkB,CAAC;QACpC,QAAQ,EAAE,IAAI,CAAC,UAAU;QACzB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAA;IAEhC,MAAM,KAAK,GAAG,IAAI,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACvD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAA;IACnC,OAAO,CAAC,GAAG,CAAC,UAAU,QAAQ,CAAC,MAAM,MAAM,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IACtE,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,CAAA;IAEpE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;IACnD,OAAO,CAAC,GAAG,CAAC,WAAW,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,SAAS,GAAG,CAAC,CAAA;IAC7D,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,KAAK,CAAC,MAAM,UAAU,CAAC,CAAA;IAC9E,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CACT,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG;YACjE,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,CAC3E,CAAA;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAM;IAE7C,6EAA6E;IAC7E,MAAM,IAAI,GAAG,sBAAsB,CAAA;IACnC,MAAM,OAAO,GAAG,oBAAoB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,CAAA;IAChE,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;QACrC,SAAS;QACT,gBAAgB,EAAE,OAAO,CAAC,QAAQ;QAClC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KAC/C,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,cAAc,OAAO,CAAC,QAAQ,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;IAE1F,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;QACtC,SAAS;QACT,gBAAgB,EAAE,OAAO,CAAC,QAAQ;QAClC,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KACtC,CAAC,CAAA;IACF,OAAO,CAAC,GAAG,CAAC,oCAAoC,OAAO,CAAC,QAAQ,OAAO,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA;AAC7F,CAAC;AAED,MAAM,IAAI,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bridge/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAKxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAe,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAEtF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvD,cAAc,eAAe,CAAA;AAE7B,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,OAAO;QACf,YAAY,EAAE,YAAY,CAAA;KAC3B;CACF;AAED,MAAM,WAAW,MAAM;IACrB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qDAAqD;AACrD,eAAO,MAAM,IAAI,kBAAkB,CAAA;AAEnC,qBAAa,YAAa,SAAQ,OAAO;IACvC,MAAM,CAAC,MAAM,WAAS;IACtB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAIE;IAE1B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,EAAE,EAAE,gBAAgB,CAAA;IAC7B,OAAO,CAAC,cAAc,CAAI;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;gBAEtC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAsB7C,wEAAwE;IACxE,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,qEAAqE;IACrE,UAAU,CAAC,IAAI,EAAE,gBAAgB,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE;IASvE,oEAAoE;IACpE,UAAU,CAAC,OAAO,EAAE;QAClB,WAAW,CAAC,EAAE,OAAO,CAAA;QACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;QACrB,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;QAChC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;QACzB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,GAAG,MAAM,EAAE;IAcZ;;;;;OAKG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvE,OAAO,CAAC,IAAI;CA8Cb;AAED,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bridge/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,CAAC,MAAM,0BAA0B,CAAA;AAKxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,YAAY,EAAe,MAAM,aAAa,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAEtF,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvD,cAAc,eAAe,CAAA;AAE7B,OAAO,QAAQ,qBAAqB,CAAC;IACnC,UAAU,OAAO;QACf,YAAY,EAAE,YAAY,CAAA;KAC3B;CACF;AAED,MAAM,WAAW,MAAM;IACrB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,qDAAqD;AACrD,eAAO,MAAM,IAAI,kBAAkB,CAAA;AAEnC,qBAAa,YAAa,SAAQ,OAAO;IACvC,MAAM,CAAC,MAAM,WAAS;IACtB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAIE;IAE1B,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAA;IAC7B,QAAQ,CAAC,EAAE,EAAE,gBAAgB,CAAA;IAC7B,OAAO,CAAC,cAAc,CAAI;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAwB;gBAEtC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,MAAW;IAsB7C,wEAAwE;IACxE,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,qEAAqE;IACrE,UAAU,CAAC,IAAI,EAAE,gBAAgB,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE;IASvE,oEAAoE;IACpE,UAAU,CAAC,OAAO,EAAE;QAClB,WAAW,CAAC,EAAE,OAAO,CAAA;QACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;QACrB,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;QAChC,OAAO,CAAC,EAAE,aAAa,EAAE,CAAA;QACzB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,GAAG,MAAM,EAAE;IAcZ;;;;;OAKG;IACG,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBvE,OAAO,CAAC,IAAI;CAiDb;AAED,eAAe,YAAY,CAAA"}
@@ -10,7 +10,15 @@
10
10
  *
11
11
  * @module @crowdedkingdoms/crowdy-dsh/bridge-protocol
12
12
  */
13
- export declare const CROWDY_BRIDGE_PROTOCOL_VERSION: 2;
13
+ /**
14
+ * v3 (crowdy-dsh 0.3 / CrowdyJS 17): a project carries `source` and
15
+ * `githubSha`. A GITHUB project's files are the server's mirror of the bound
16
+ * repository at that commit; the worker writes them as commits carrying
17
+ * `expectedCommitSha = githubSha` and mirrors nothing back to Studio itself.
18
+ * `page.project` / `page.saved` re-announce the commit whenever it moves so the
19
+ * worker's next write carries the current one.
20
+ */
21
+ export declare const CROWDY_BRIDGE_PROTOCOL_VERSION: 3;
14
22
  export type BridgeSide = 'page' | 'worker';
15
23
  /**
16
24
  * Envelope: every frame carries the protocol version, the boot nonce `n` and
@@ -88,12 +96,17 @@ export interface BuildResult {
88
96
  /** Set when the page captured the game after the client target started. */
89
97
  screenshot?: ScreenshotResult;
90
98
  }
99
+ export type ProjectSource = 'STUDIO' | 'GITHUB';
91
100
  export interface ProjectSummary {
92
101
  projectId: string;
93
102
  name: string;
94
103
  kind: string;
95
104
  updatedAt: string;
96
- /** Bound repository label when the project is GitHub-bound. */
105
+ /** Where the files are authored. GITHUB means the repository is the working tree. */
106
+ source: ProjectSource;
107
+ /** Commit the GITHUB project mirrors; null for a STUDIO project. */
108
+ githubSha: string | null;
109
+ /** Bound repository label (`owner/repo@branch`) when the project is GitHub-bound. */
97
110
  github?: string;
98
111
  }
99
112
  export interface ProjectListResult {
@@ -178,16 +191,22 @@ export interface PageEventMap {
178
191
  appId: string;
179
192
  projectId: string | null;
180
193
  appToken?: string;
194
+ source?: ProjectSource;
195
+ githubSha?: string | null;
181
196
  };
182
197
  'page.token': {
183
198
  appToken: string;
184
199
  };
200
+ /** The open project changed, or a GITHUB project's commit moved (bind, refresh, save). */
185
201
  'page.project': {
186
202
  projectId: string | null;
203
+ source?: ProjectSource;
204
+ githubSha?: string | null;
187
205
  };
188
206
  /** The page saved the project itself; cached snapshots are stale. */
189
207
  'page.saved': {
190
208
  revision?: string;
209
+ githubSha?: string | null;
191
210
  };
192
211
  /** Shared context the model may read under `context/`. */
193
212
  'page.context': {
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/bridge/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/bridge/protocol.ts"],"names":[],"mappings":"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"}
@@ -22,15 +22,31 @@ export interface CrowdyProjectFile {
22
22
  revision: string;
23
23
  updatedAt: string;
24
24
  }
25
+ /**
26
+ * Where a project's files are authored. Every project starts as `STUDIO`; its
27
+ * owner may bind a GitHub repository in Crowdy Studio, after which the
28
+ * repository is the working tree and `files` is the server's mirror of it at
29
+ * `github.sha`. GitHub is never required.
30
+ */
31
+ export type CrowdyProjectSource = 'STUDIO' | 'GITHUB';
32
+ export interface CrowdyProjectGitHub {
33
+ owner: string;
34
+ repo: string;
35
+ branch: string;
36
+ /** Commit the mirror is at; every bound write presents it as `expectedCommitSha`. */
37
+ sha: string | null;
38
+ }
25
39
  export interface CrowdyProject {
26
40
  projectId: string;
27
41
  appId: string;
28
42
  ownerUserId: string;
29
43
  name: string;
30
- /** Project-wide counter guarding every mutation; `expectedRevision` must equal it. */
44
+ /** Project-wide counter guarding every STUDIO mutation; `expectedRevision` must equal it. */
31
45
  revision: string;
32
46
  archived: boolean;
33
47
  files: CrowdyProjectFile[];
48
+ source: CrowdyProjectSource;
49
+ github: CrowdyProjectGitHub | null;
34
50
  updatedAt: string;
35
51
  }
36
52
  export interface CrowdyFileUpsert {
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/crowdy/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/crowdy/client.ts"],"names":[],"mappings":"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"}
@@ -42,8 +42,6 @@ export interface CrowdyBootConfig {
42
42
  bridgeChannel?: string;
43
43
  /** One-time secret the page put in the boot message; every bridge frame carries it. */
44
44
  bridgeNonce?: string;
45
- /** Prefer the bound GitHub repository as the file source of truth. */
46
- githubFirst?: boolean;
47
45
  /** Studio origin used to render wallet links in tool messages. */
48
46
  studioOrigin?: string;
49
47
  /** OPFS scope for session persistence (browser only); see `./persist`. */
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/crowdy/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,gBAAgB,CAAA;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAA;IACb,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uFAAuF;IACvF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AA4BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAAG,gBAAgB,CA2B5F;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAO5E"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/crowdy/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,sEAAsE;AACtE,eAAO,MAAM,sBAAsB,gBAAgB,CAAA;AAEnD,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAA;IAClB,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAA;IACb,yDAAyD;IACzD,SAAS,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,iDAAiD;IACjD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,uFAAuF;IACvF,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kEAAkE;IAClE,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AA2BD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,GAAE,OAAO,CAAC,gBAAgB,CAAM,GAAG,gBAAgB,CA0B5F;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,GAAG,SAAS,CAO5E"}
@@ -1,15 +1,30 @@
1
1
  /**
2
- * Where a project's files live: the bound GitHub repository when the owner
3
- * bound one (GitHub is then the source of truth and Studio holds the deployable
4
- * mirror), otherwise the Crowdy Studio project itself.
2
+ * Where a project's files live, and how a batch of edits reaches them.
5
3
  *
6
- * Both stores present the same versioned bag of `(target, path, content)` so
7
- * the filesystem backend never learns which one it is talking to.
4
+ * Both sources present the same versioned bag of `(target, path, content)` so
5
+ * the filesystem backend never learns which one it is talking to:
6
+ *
7
+ * - a STUDIO project is read and written through the Crowdy Studio project
8
+ * API under its revision counter;
9
+ * - a GITHUB project is READ the same way — its `files` are the server's
10
+ * mirror of the bound repository at `github.sha` — and WRITTEN as commits:
11
+ * one `crowdyStudioGitHubPutFile` / `DeleteFile` per changed file, each
12
+ * carrying `expectedCommitSha` (the commit the previous one produced). The
13
+ * server advances the mirror with every commit, so nothing is mirrored from
14
+ * here; the harness and Monaco are always looking at one tree.
15
+ *
16
+ * A lost race is {@link CrowdyApiError} with `isRevisionConflict` either way
17
+ * (`CROWDY_STUDIO_REVISION_CONFLICT` or `GITHUB_STALE_SHA`); the filesystem
18
+ * reports `FS_STALE_VERSION` and the agent re-reads.
19
+ *
20
+ * Layout comes from the API (`crowdyStudioGitHubLayout`) at the commit being
21
+ * written to. This module does not parse `crowdy.json`; the API is the only
22
+ * grammar.
8
23
  *
9
24
  * @module @crowdedkingdoms/crowdy-dsh/crowdy/project-store
10
25
  */
11
26
  import { CrowdyStudioClient } from './client.js';
12
- import type { CrowdyFileDelete, CrowdyFileUpsert, CrowdyProjectFile } from './client.js';
27
+ import type { CrowdyFileDelete, CrowdyFileUpsert, CrowdyProject, CrowdyProjectFile, CrowdyTarget } from './client.js';
13
28
  export interface ProjectSnapshot {
14
29
  /** Opaque store-wide version; every mutation must present the one it read. */
15
30
  revision: string;
@@ -23,7 +38,6 @@ export interface ProjectBatch {
23
38
  deletes?: CrowdyFileDelete[];
24
39
  }
25
40
  export interface ProjectStore {
26
- readonly kind: 'studio' | 'github';
27
41
  load(): Promise<ProjectSnapshot>;
28
42
  /**
29
43
  * Apply a batch against `snapshot`. A lost race throws {@link CrowdyApiError}
@@ -31,54 +45,32 @@ export interface ProjectStore {
31
45
  */
32
46
  commit(snapshot: ProjectSnapshot, batch: ProjectBatch): Promise<ProjectSnapshot>;
33
47
  }
34
- /** Crowdy Studio project files behind `crowdyStudioProject*`. */
35
- export declare class StudioProjectStore implements ProjectStore {
36
- private readonly client;
37
- private readonly projectId;
38
- readonly kind: "studio";
39
- constructor(client: CrowdyStudioClient, projectId: string);
40
- load(): Promise<ProjectSnapshot>;
41
- commit(snapshot: ProjectSnapshot, batch: ProjectBatch): Promise<ProjectSnapshot>;
48
+ interface ApiLayout {
49
+ commitSha: string;
50
+ server: string;
51
+ client: string | null;
42
52
  }
43
53
  /**
44
- * The bound GitHub repository, read through `crowdyStudioGitHubTree/File` and
45
- * written through `crowdyStudioGitHubPutFile` (Contents API, SHA-guarded).
46
- *
47
- * After every successful GitHub write the same batch is mirrored onto the
48
- * Studio project so a draft test or deploy compiles what the agent wrote. The
49
- * mirror is best-effort: GitHub already holds the truth, and a Studio revision
50
- * race is reported, not treated as a failed write.
54
+ * The one store. Which path a commit takes is decided by the snapshot it is
55
+ * applied to, which is decided by the project's `source` at load time.
51
56
  */
52
- export declare class GitHubProjectStore implements ProjectStore {
57
+ export declare class CrowdyProjectStore implements ProjectStore {
53
58
  private readonly client;
54
59
  private readonly projectId;
55
- private readonly repoLabel;
56
- private readonly warn;
57
- readonly kind: "github";
58
- private shas;
59
- private layout;
60
- /** Last mirror failure, surfaced once by the filesystem in its next result. */
61
- mirrorWarning: string | undefined;
62
- constructor(client: CrowdyStudioClient, projectId: string, repoLabel: string, warn?: (message: string) => void);
63
- private get scope();
60
+ /** Layout per commit; commits are immutable so this never goes stale. */
61
+ private readonly layouts;
62
+ constructor(client: CrowdyStudioClient, projectId: string);
64
63
  load(): Promise<ProjectSnapshot>;
65
64
  commit(snapshot: ProjectSnapshot, batch: ProjectBatch): Promise<ProjectSnapshot>;
66
- /** Copy the batch onto the Studio project so builds see the same bytes. */
67
- private mirrorToStudio;
65
+ private commitToGitHub;
66
+ private layoutAt;
68
67
  }
68
+ /** Repository path of a project file under the API-resolved layout. */
69
+ export declare function repoPathFor(layout: Pick<ApiLayout, 'server' | 'client'>, target: CrowdyTarget, path: string): string;
70
+ export declare function snapshotOf(project: CrowdyProject): ProjectSnapshot;
69
71
  /** Crowdy Studio stores only `Cargo.toml` and `.rs` files under `src/`. */
70
72
  export declare function isSourcePath(path: string): boolean;
71
- export interface StoreSelection {
72
- store: ProjectStore;
73
- /** Why this store was chosen, for the system prompt and tool messages. */
74
- reason: string;
75
- }
76
- /**
77
- * Choose the store for a project: GitHub when the project is bound to a
78
- * connected repository and the caller prefers it, otherwise Studio files.
79
- */
80
- export declare function selectProjectStore(client: CrowdyStudioClient, projectId: string, options: {
81
- githubFirst: boolean;
82
- warn?: (message: string) => void;
83
- }): Promise<StoreSelection>;
73
+ /** Why a snapshot's files live where they do, for the system prompt and tool messages. */
74
+ export declare function describeSource(snapshot: ProjectSnapshot): string;
75
+ export {};
84
76
  //# sourceMappingURL=project-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"project-store.d.ts","sourceRoot":"","sources":["../../../src/crowdy/project-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAgB,MAAM,aAAa,CAAA;AAStG,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC3B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAClC,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACjF;AAED,iEAAiE;AACjE,qBAAa,kBAAmB,YAAW,YAAY;IAInD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAJ5B,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;gBAGd,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,MAAM;IAG9B,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAUhC,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;CAavF;AAOD;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IAQnD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVvB,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,OAAO,CAAC,IAAI,CAAqC;IACjD,OAAO,CAAC,MAAM,CAA0B;IACxC,+EAA+E;IAC/E,aAAa,EAAE,MAAM,GAAG,SAAS,CAAA;gBAGd,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAsB;IAGpE,OAAO,KAAK,KAAK,GAEhB;IAEK,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAsDhC,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;IAkDtF,2EAA2E;YAC7D,cAAc;CAe7B;AAaD,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,YAAY,CAAA;IACnB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,GAClE,OAAO,CAAC,cAAc,CAAC,CAqBzB"}
1
+ {"version":3,"file":"project-store.d.ts","sourceRoot":"","sources":["../../../src/crowdy/project-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAErH,MAAM,WAAW,eAAe;IAC9B,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,iBAAiB,EAAE,CAAA;IAC1B,MAAM,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC3B,uEAAuE;IACvE,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC;;;OAGG;IACH,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACjF;AAED,UAAU,SAAS;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;CACtB;AAED;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IAKnD,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL5B,yEAAyE;IACzE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;gBAGpC,MAAM,EAAE,kBAAkB,EAC1B,SAAS,EAAE,MAAM;IAG9B,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAKhC,MAAM,CAAC,QAAQ,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;YAUxE,cAAc;YAoCd,QAAQ;CAWvB;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,GAAG,QAAQ,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAapH;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,aAAa,GAAG,eAAe,CAgBlE;AAED,2EAA2E;AAC3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAElD;AAED,0FAA0F;AAC1F,wBAAgB,cAAc,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAIhE"}
@@ -32,8 +32,6 @@ import { ScratchStore } from './scratch-store.js';
32
32
  export type Config = Partial<CrowdyBootConfig> & {
33
33
  /** How long a project snapshot may be reused for reads, in milliseconds. */
34
34
  snapshotTtlMs?: number;
35
- /** How often the GitHub/Studio store choice is re-evaluated, in milliseconds. */
36
- storeTtlMs?: number;
37
35
  };
38
36
  /**
39
37
  * Content-addressed freshness token. FNV-1a over UTF-16 code units: no
@@ -59,12 +57,10 @@ export declare class CrowdyFileSystem extends FileSystem {
59
57
  readonly scratch: ScratchStore;
60
58
  private readonly root;
61
59
  private readonly snapshotTtl;
62
- private readonly storeTtl;
63
60
  /** Cached project snapshot; reads may reuse it briefly, mutations never do. */
64
61
  private snapshot;
65
62
  private inflight;
66
63
  private store;
67
- private storeInflight;
68
64
  /** Per-path tail promise serializing each read-guard-write critical section. */
69
65
  private readonly locks;
70
66
  /** Listeners told when the project files changed through this backend. */
@@ -76,7 +72,7 @@ export declare class CrowdyFileSystem extends FileSystem {
76
72
  constructor(ctx: Context, config?: Config);
77
73
  /** Virtual root the project is mounted at. */
78
74
  get mountRoot(): string;
79
- /** Human-readable description of where files currently come from. */
75
+ /** Human-readable description of where files currently come from (known after the first load). */
80
76
  get storeReason(): string | undefined;
81
77
  /** Point the backend at another project (the page switched projects). */
82
78
  setProject(projectId: string): void;
@@ -155,7 +151,11 @@ export declare class CrowdyFileSystem extends FileSystem {
155
151
  currentProject(): Promise<ProjectSnapshot>;
156
152
  /** Fetch the project, collapsing bursts and deduping concurrent fetches. */
157
153
  private project;
158
- /** Decide (and periodically re-decide) whether GitHub or Studio holds the files. */
154
+ /**
155
+ * The store for the current project. Which path a write takes (Studio
156
+ * revision or GitHub commit) is decided per snapshot by the project's
157
+ * `source`, so there is nothing to re-decide here.
158
+ */
159
159
  private currentStore;
160
160
  private find;
161
161
  private requireFile;