@cat-factory/integrations 0.62.1 → 0.64.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 (41) hide show
  1. package/dist/modules/documents/ConfluenceProvider.d.ts +8 -0
  2. package/dist/modules/documents/ConfluenceProvider.d.ts.map +1 -1
  3. package/dist/modules/documents/ConfluenceProvider.js +29 -9
  4. package/dist/modules/documents/ConfluenceProvider.js.map +1 -1
  5. package/dist/modules/documents/DocumentContentResolverService.d.ts +3 -0
  6. package/dist/modules/documents/DocumentContentResolverService.d.ts.map +1 -1
  7. package/dist/modules/documents/DocumentContentResolverService.js +10 -1
  8. package/dist/modules/documents/DocumentContentResolverService.js.map +1 -1
  9. package/dist/modules/documents/FigmaProvider.d.ts +6 -0
  10. package/dist/modules/documents/FigmaProvider.d.ts.map +1 -1
  11. package/dist/modules/documents/FigmaProvider.js +21 -1
  12. package/dist/modules/documents/FigmaProvider.js.map +1 -1
  13. package/dist/modules/documents/GitHubDocsProvider.d.ts +6 -0
  14. package/dist/modules/documents/GitHubDocsProvider.d.ts.map +1 -1
  15. package/dist/modules/documents/GitHubDocsProvider.js +27 -1
  16. package/dist/modules/documents/GitHubDocsProvider.js.map +1 -1
  17. package/dist/modules/documents/LinearDocumentProvider.d.ts +5 -0
  18. package/dist/modules/documents/LinearDocumentProvider.d.ts.map +1 -1
  19. package/dist/modules/documents/LinearDocumentProvider.js +10 -1
  20. package/dist/modules/documents/LinearDocumentProvider.js.map +1 -1
  21. package/dist/modules/documents/NotionProvider.d.ts +6 -0
  22. package/dist/modules/documents/NotionProvider.d.ts.map +1 -1
  23. package/dist/modules/documents/NotionProvider.js +13 -0
  24. package/dist/modules/documents/NotionProvider.js.map +1 -1
  25. package/dist/modules/documents/ZeplinProvider.d.ts +6 -0
  26. package/dist/modules/documents/ZeplinProvider.d.ts.map +1 -1
  27. package/dist/modules/documents/ZeplinProvider.js +14 -0
  28. package/dist/modules/documents/ZeplinProvider.js.map +1 -1
  29. package/dist/modules/documents/linear-docs.logic.d.ts +11 -1
  30. package/dist/modules/documents/linear-docs.logic.d.ts.map +1 -1
  31. package/dist/modules/documents/linear-docs.logic.js +10 -1
  32. package/dist/modules/documents/linear-docs.logic.js.map +1 -1
  33. package/dist/modules/github/GitHubSyncService.d.ts +11 -1
  34. package/dist/modules/github/GitHubSyncService.d.ts.map +1 -1
  35. package/dist/modules/github/GitHubSyncService.js +23 -1
  36. package/dist/modules/github/GitHubSyncService.js.map +1 -1
  37. package/dist/modules/github/WebhookService.d.ts +10 -1
  38. package/dist/modules/github/WebhookService.d.ts.map +1 -1
  39. package/dist/modules/github/WebhookService.js +1 -0
  40. package/dist/modules/github/WebhookService.js.map +1 -1
  41. package/package.json +2 -2
@@ -24,6 +24,14 @@ export declare class ConfluenceProvider implements DocumentSourceProvider {
24
24
  normalizeConnection(input: DocumentCredentials): NormalizedConnection;
25
25
  parseRef(input: string): string | null;
26
26
  fetchDocument(credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
27
+ /**
28
+ * The cheap version probe: expand ONLY `version` (no `body.storage`), so the
29
+ * page's XHTML is neither transferred nor converted — the staleness check costs
30
+ * a metadata read, not a full fetch.
31
+ */
32
+ probeVersion(credentials: DocumentCredentials, externalId: string): Promise<string>;
33
+ /** Shared content read; `expand` selects how much of the page is materialised. */
34
+ private getContent;
27
35
  search(credentials: DocumentCredentials, query: string): Promise<DocumentSearchResult[]>;
28
36
  }
29
37
  //# sourceMappingURL=ConfluenceProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfluenceProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/ConfluenceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAiB5B,yEAAyE;AACzE,qBAAa,kBAAmB,SAAQ,KAAK;IAEzC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AA+ED,qBAAa,kBAAmB,YAAW,sBAAsB;IAC/D,QAAQ,CAAC,IAAI,EAAG,YAAY,CAAS;IACrC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAwB;IAE3C,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAepE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAiD1B;IAEK,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAkC7F;CACF"}
1
+ {"version":3,"file":"ConfluenceProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/ConfluenceProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAiB5B,yEAAyE;AACzE,qBAAa,kBAAmB,SAAQ,KAAK;IAEzC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAoFD,qBAAa,kBAAmB,YAAW,sBAAsB;IAC/D,QAAQ,CAAC,IAAI,EAAG,YAAY,CAAS;IACrC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAwB;IAE3C,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAepE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAc1B;IAED;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAExF;IAED,kFAAkF;YACpE,UAAU;IA+ClB,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAkC7F;CACF"}
@@ -89,6 +89,10 @@ async function readCappedText(res, maxBytes) {
89
89
  }
90
90
  return new TextDecoder().decode(merged);
91
91
  }
92
+ /** The page's monotonic version number as the opaque staleness token (`''` if absent). */
93
+ function versionToken(json) {
94
+ return json.version?.number !== undefined ? String(json.version.number) : '';
95
+ }
92
96
  export class ConfluenceProvider {
93
97
  kind = 'confluence';
94
98
  descriptor = CONFLUENCE_DESCRIPTOR;
@@ -113,7 +117,30 @@ export class ConfluenceProvider {
113
117
  }
114
118
  async fetchDocument(credentials, externalId) {
115
119
  const base = credentials.baseUrl.replace(/\/+$/, '');
116
- const url = `${base}/wiki/rest/api/content/${encodeURIComponent(externalId)}?expand=body.storage,version`;
120
+ // Expand the body AND the version so the fetched content carries its version token.
121
+ const json = await this.getContent(credentials, externalId, 'body.storage,version');
122
+ const linkBase = json._links?.base ?? `${base}/wiki`;
123
+ const webui = json._links?.webui ?? '';
124
+ return {
125
+ externalId: json.id,
126
+ title: json.title ?? '(untitled)',
127
+ url: `${linkBase}${webui}`,
128
+ body: confluenceLogic.confluenceStorageToMarkdown(json.body?.storage?.value ?? ''),
129
+ version: versionToken(json),
130
+ };
131
+ }
132
+ /**
133
+ * The cheap version probe: expand ONLY `version` (no `body.storage`), so the
134
+ * page's XHTML is neither transferred nor converted — the staleness check costs
135
+ * a metadata read, not a full fetch.
136
+ */
137
+ async probeVersion(credentials, externalId) {
138
+ return versionToken(await this.getContent(credentials, externalId, 'version'));
139
+ }
140
+ /** Shared content read; `expand` selects how much of the page is materialised. */
141
+ async getContent(credentials, externalId, expand) {
142
+ const base = credentials.baseUrl.replace(/\/+$/, '');
143
+ const url = `${base}/wiki/rest/api/content/${encodeURIComponent(externalId)}?expand=${expand}`;
117
144
  const auth = btoa(`${credentials.accountEmail}:${credentials.apiToken}`);
118
145
  const res = await safeFetch(url, {
119
146
  method: 'GET',
@@ -139,14 +166,7 @@ export class ConfluenceProvider {
139
166
  if (!json || !json.id) {
140
167
  throw new ConfluenceApiError(502, `Confluence returned an unexpected body for page ${externalId}`);
141
168
  }
142
- const linkBase = json._links?.base ?? `${base}/wiki`;
143
- const webui = json._links?.webui ?? '';
144
- return {
145
- externalId: json.id,
146
- title: json.title ?? '(untitled)',
147
- url: `${linkBase}${webui}`,
148
- body: confluenceLogic.confluenceStorageToMarkdown(json.body?.storage?.value ?? ''),
149
- };
169
+ return json;
150
170
  }
151
171
  async search(credentials, query) {
152
172
  const base = credentials.baseUrl.replace(/\/+$/, '');
@@ -1 +1 @@
1
- {"version":3,"file":"ConfluenceProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/ConfluenceProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ConfluenceProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/ConfluenceProvider.ts"],"names":[],"mappings":"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"}
@@ -8,5 +8,8 @@ export declare class DocumentContentResolverService implements DocumentContentRe
8
8
  private readonly deps;
9
9
  constructor(deps: DocumentContentResolverServiceDependencies);
10
10
  fetch(workspaceId: string, source: DocumentSourceKind, externalId: string): Promise<DocumentContent>;
11
+ probeVersion(workspaceId: string, source: DocumentSourceKind, externalId: string): Promise<string>;
12
+ /** Resolve the provider + this workspace's connection credentials for a source. */
13
+ private resolve;
11
14
  }
12
15
  //# sourceMappingURL=DocumentContentResolverService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentContentResolverService.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/DocumentContentResolverService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACvB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAW/E,MAAM,WAAW,0CAA0C;IACzD,QAAQ,EAAE,sBAAsB,CAAA;IAChC,iBAAiB,EAAE,yBAAyB,CAAA;CAC7C;AAED,qBAAa,8BAA+B,YAAW,uBAAuB;IAChE,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0CAA0C,EAAI;IAE3E,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAO1B;CACF"}
1
+ {"version":3,"file":"DocumentContentResolverService.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/DocumentContentResolverService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EAEvB,kBAAkB,EAElB,sBAAsB,EACvB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAA;AAW/E,MAAM,WAAW,0CAA0C;IACzD,QAAQ,EAAE,sBAAsB,CAAA;IAChC,iBAAiB,EAAE,yBAAyB,CAAA;CAC7C;AAED,qBAAa,8BAA+B,YAAW,uBAAuB;IAChE,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0CAA0C,EAAI;IAE3E,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAG1B;IAEK,YAAY,CAChB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,CAAC,CAGjB;IAED,mFAAmF;YACrE,OAAO;CAWtB"}
@@ -5,12 +5,21 @@ export class DocumentContentResolverService {
5
5
  this.deps = deps;
6
6
  }
7
7
  async fetch(workspaceId, source, externalId) {
8
+ const { provider, credentials } = await this.resolve(workspaceId, source);
9
+ return provider.fetchDocument(credentials, externalId);
10
+ }
11
+ async probeVersion(workspaceId, source, externalId) {
12
+ const { provider, credentials } = await this.resolve(workspaceId, source);
13
+ return provider.probeVersion(credentials, externalId);
14
+ }
15
+ /** Resolve the provider + this workspace's connection credentials for a source. */
16
+ async resolve(workspaceId, source) {
8
17
  const provider = this.deps.registry.get(source);
9
18
  if (!provider) {
10
19
  throw new ValidationError(`Unknown or unconfigured document source '${source}'`);
11
20
  }
12
21
  const connection = await this.deps.connectionService.requireConnection(workspaceId, source);
13
- return provider.fetchDocument(connection.credentials, externalId);
22
+ return { provider, credentials: connection.credentials };
14
23
  }
15
24
  }
16
25
  //# sourceMappingURL=DocumentContentResolverService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentContentResolverService.js","sourceRoot":"","sources":["../../../src/modules/documents/DocumentContentResolverService.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAiBrD,MAAM,OAAO,8BAA8B;IACZ,IAAI;IAAjC,YAA6B,IAAgD;oBAAhD,IAAI;IAA+C,CAAC;IAEjF,KAAK,CAAC,KAAK,CACT,WAAmB,EACnB,MAA0B,EAC1B,UAAkB;QAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CAAC,4CAA4C,MAAM,GAAG,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAC3F,OAAO,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;IACnE,CAAC;CACF"}
1
+ {"version":3,"file":"DocumentContentResolverService.js","sourceRoot":"","sources":["../../../src/modules/documents/DocumentContentResolverService.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAiBrD,MAAM,OAAO,8BAA8B;IACZ,IAAI;IAAjC,YAA6B,IAAgD;oBAAhD,IAAI;IAA+C,CAAC;IAEjF,KAAK,CAAC,KAAK,CACT,WAAmB,EACnB,MAA0B,EAC1B,UAAkB;QAElB,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QACzE,OAAO,QAAQ,CAAC,aAAa,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;IACxD,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,WAAmB,EACnB,MAA0B,EAC1B,UAAkB;QAElB,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QACzE,OAAO,QAAQ,CAAC,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAA;IACvD,CAAC;IAED,mFAAmF;IAC3E,KAAK,CAAC,OAAO,CACnB,WAAmB,EACnB,MAA0B;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,eAAe,CAAC,4CAA4C,MAAM,GAAG,CAAC,CAAA;QAClF,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;QAC3F,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,CAAA;IAC1D,CAAC;CACF"}
@@ -24,6 +24,12 @@ export declare class FigmaProvider implements DocumentSourceProvider {
24
24
  normalizeConnection(input: DocumentCredentials): NormalizedConnection;
25
25
  parseRef(input: string): string | null;
26
26
  fetchDocument(credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
27
+ /**
28
+ * The cheap version probe: read the file's metadata at `depth=1` (no node tree)
29
+ * for its `version` / `lastModified`, skipping the deep node fetch + variables +
30
+ * preview render a full document fetch performs.
31
+ */
32
+ probeVersion(credentials: DocumentCredentials, externalId: string): Promise<string>;
27
33
  /** Fetch a specific node's subtree, or the whole file's document, plus its components. */
28
34
  private fetchNodes;
29
35
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FigmaProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/FigmaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAuB5B,yEAAyE;AACzE,qBAAa,aAAc,SAAQ,KAAK;IAEpC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAgCD,qBAAa,aAAc,YAAW,sBAAsB;IAC1D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAS;IAChC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAmB;IAEtC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CA6B1B;IAED,0FAA0F;YAC5E,UAAU;IAyCxB;;;;OAIG;YACW,cAAc;IAiB5B,gGAAgG;YAClF,eAAe;IAqB7B,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,KAAK;YAQC,GAAG;CAqBlB"}
1
+ {"version":3,"file":"FigmaProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/FigmaProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAuB5B,yEAAyE;AACzE,qBAAa,aAAc,SAAQ,KAAK;IAEpC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AA0CD,qBAAa,aAAc,YAAW,sBAAsB;IAC1D,QAAQ,CAAC,IAAI,EAAG,OAAO,CAAS;IAChC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAmB;IAEtC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAkC1B;IAED;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAUxF;IAED,0FAA0F;YAC5E,UAAU;IA4CxB;;;;OAIG;YACW,cAAc;IAiB5B,gGAAgG;YAClF,eAAe;IAqB7B,OAAO,CAAC,OAAO;IAQf,OAAO,CAAC,KAAK;YAQC,GAAG;CAqBlB"}
@@ -33,6 +33,10 @@ export class FigmaApiError extends Error {
33
33
  * capped-read are the shared documents `http` helpers; only the host/label differ.
34
34
  */
35
35
  const safeFetch = createHostPinnedFetch({ host: FIGMA_API_HOST, label: 'Figma' });
36
+ /** Figma's file `version` (falling back to `lastModified`) as the staleness token. */
37
+ function fileVersion(res) {
38
+ return res.version ?? res.lastModified ?? '';
39
+ }
36
40
  export class FigmaProvider {
37
41
  kind = 'figma';
38
42
  descriptor = FIGMA_DESCRIPTOR;
@@ -51,7 +55,7 @@ export class FigmaProvider {
51
55
  if (!fileKey) {
52
56
  throw new FigmaApiError(400, `Figma ref is missing a file key: ${externalId}`);
53
57
  }
54
- const { roots, components, fileName } = await this.fetchNodes(credentials, fileKey, nodeId);
58
+ const { roots, components, fileName, version } = await this.fetchNodes(credentials, fileKey, nodeId);
55
59
  // Design tokens are Enterprise-gated; on 403/404 drop them, don't fail. A rendered
56
60
  // preview rides along as a reference (no download) — best-effort, the short-lived URL
57
61
  // may expire and a non-multimodal agent ignores it.
@@ -71,8 +75,22 @@ export class FigmaProvider {
71
75
  title: context.title,
72
76
  url: context.url,
73
77
  body: renderDesignContext(context),
78
+ version,
74
79
  };
75
80
  }
81
+ /**
82
+ * The cheap version probe: read the file's metadata at `depth=1` (no node tree)
83
+ * for its `version` / `lastModified`, skipping the deep node fetch + variables +
84
+ * preview render a full document fetch performs.
85
+ */
86
+ async probeVersion(credentials, externalId) {
87
+ const { fileKey } = figmaLogic.splitFigmaExternalId(externalId);
88
+ if (!fileKey) {
89
+ throw new FigmaApiError(400, `Figma ref is missing a file key: ${externalId}`);
90
+ }
91
+ const res = await this.get(credentials, `/files/${encodeURIComponent(fileKey)}?depth=1`);
92
+ return fileVersion(res);
93
+ }
76
94
  /** Fetch a specific node's subtree, or the whole file's document, plus its components. */
77
95
  async fetchNodes(credentials, fileKey, nodeId) {
78
96
  if (nodeId) {
@@ -85,6 +103,7 @@ export class FigmaProvider {
85
103
  roots: [entry.document],
86
104
  components: entry.components ?? {},
87
105
  fileName: res.name ?? fileKey,
106
+ version: fileVersion(res),
88
107
  };
89
108
  }
90
109
  const res = await this.get(credentials, `/files/${encodeURIComponent(fileKey)}?depth=${FILE_DEPTH}`);
@@ -98,6 +117,7 @@ export class FigmaProvider {
98
117
  roots: roots.length ? roots : [res.document],
99
118
  components: res.components ?? {},
100
119
  fileName: res.name ?? fileKey,
120
+ version: fileVersion(res),
101
121
  };
102
122
  }
103
123
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"FigmaProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/FigmaProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FigmaProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/FigmaProvider.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,12 @@ export declare class GitHubDocsProvider implements DocumentSourceProvider {
31
31
  normalizeConnection(_input: DocumentCredentials): NormalizedConnection;
32
32
  parseRef(input: string): string | null;
33
33
  fetchDocument(_credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
34
+ /**
35
+ * The cheap version probe: the head commit sha touching the file's path — one
36
+ * commit-list read, no file body. Any commit to the file advances it, so an
37
+ * unchanged sha means the doc body is still current.
38
+ */
39
+ probeVersion(_credentials: DocumentCredentials, externalId: string): Promise<string>;
34
40
  search(_credentials: DocumentCredentials, query: string, workspaceId: string): Promise<DocumentSearchResult[]>;
35
41
  /**
36
42
  * Find the GitHub App installation whose account owns `owner`. The
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubDocsProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/GitHubDocsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAe5B,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,YAAY,CAAA;IAC1B,8EAA8E;IAC9E,aAAa,EAAE,4BAA4B,CAAA;CAC5C;AAED,qBAAa,kBAAmB,YAAW,sBAAsB;IAInD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAyB;IAE5C,YAA6B,IAAI,EAAE,8BAA8B,EAAI;IAErE;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,oBAAoB,CAErE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAoB1B;IAEK,MAAM,CACV,YAAY,EAAE,mBAAmB,EACjC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAkCjC;IAED;;;;OAIG;YACW,qBAAqB;CAUpC"}
1
+ {"version":3,"file":"GitHubDocsProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/GitHubDocsProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,4BAA4B,EACjC,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAe5B,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,YAAY,CAAA;IAC1B,8EAA8E;IAC9E,aAAa,EAAE,4BAA4B,CAAA;CAC5C;AAED,qBAAa,kBAAmB,YAAW,sBAAsB;IAInD,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAyB;IAE5C,YAA6B,IAAI,EAAE,8BAA8B,EAAI;IAErE;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,GAAG,oBAAoB,CAErE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAiC1B;IAED;;;;OAIG;IACG,YAAY,CAAC,YAAY,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYzF;IAEK,MAAM,CACV,YAAY,EAAE,mBAAmB,EACjC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAkCjC;IAED;;;;OAIG;YACW,qBAAqB;CAUpC"}
@@ -25,7 +25,18 @@ export class GitHubDocsProvider {
25
25
  throw new ValidationError(`"${externalId}" is not a valid GitHub doc reference`);
26
26
  }
27
27
  const installationId = await this.resolveInstallationId(id.owner);
28
- const file = await this.deps.githubClient.getFileContent(installationId, { owner: id.owner, repo: id.repo }, id.path);
28
+ const ref = { owner: id.owner, repo: id.repo };
29
+ // Read the file's head commit sha FIRST (the version token), then read the body
30
+ // pinned to that exact sha, so the (body, version) pair is consistent: two unpinned
31
+ // parallel reads could straddle a commit and cache a stale body under a fresh
32
+ // version the probe would then treat as current and never reload. The sha is
33
+ // best-effort — a transient commits-API error (403 rate-limit, 5xx) must not fail
34
+ // the whole fetch when the body reads fine, so it degrades to an empty version token
35
+ // (which the cache treats as unverifiable ⇒ a TTL-bounded reload).
36
+ const commitSha = await this.deps.githubClient
37
+ .latestCommitSha(installationId, ref, id.path)
38
+ .catch(() => null);
39
+ const file = await this.deps.githubClient.getFileContent(installationId, ref, id.path, commitSha ?? undefined);
29
40
  if (!file) {
30
41
  throw new ConflictError(`GitHub file "${id.path}" was not found in ${id.owner}/${id.repo}`);
31
42
  }
@@ -34,8 +45,23 @@ export class GitHubDocsProvider {
34
45
  title: githubDocsLogic.githubDocTitle(id.path),
35
46
  url: githubDocsLogic.githubDocUrl(id),
36
47
  body: file.content,
48
+ version: commitSha ?? '',
37
49
  };
38
50
  }
51
+ /**
52
+ * The cheap version probe: the head commit sha touching the file's path — one
53
+ * commit-list read, no file body. Any commit to the file advances it, so an
54
+ * unchanged sha means the doc body is still current.
55
+ */
56
+ async probeVersion(_credentials, externalId) {
57
+ const id = githubDocsLogic.parseGitHubDocExternalId(externalId);
58
+ if (!id) {
59
+ throw new ValidationError(`"${externalId}" is not a valid GitHub doc reference`);
60
+ }
61
+ const installationId = await this.resolveInstallationId(id.owner);
62
+ const commitSha = await this.deps.githubClient.latestCommitSha(installationId, { owner: id.owner, repo: id.repo }, id.path);
63
+ return commitSha ?? '';
64
+ }
39
65
  async search(_credentials, query, workspaceId) {
40
66
  // Scope to *this workspace's* installation so docs never leak across tenants
41
67
  // (a deployment may host many installations; a workspace owns exactly one).
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubDocsProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/GitHubDocsProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GitHubDocsProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/GitHubDocsProvider.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,11 @@ export declare class LinearDocumentProvider implements DocumentSourceProvider {
19
19
  normalizeConnection(input: DocumentCredentials): NormalizedConnection;
20
20
  parseRef(input: string): string | null;
21
21
  fetchDocument(credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
22
+ /**
23
+ * The cheap version probe: query only the document's `updatedAt`, skipping the
24
+ * (potentially large) `content` field a full fetch downloads.
25
+ */
26
+ probeVersion(credentials: DocumentCredentials, externalId: string): Promise<string>;
22
27
  search(credentials: DocumentCredentials, query: string): Promise<DocumentSearchResult[]>;
23
28
  }
24
29
  //# sourceMappingURL=LinearDocumentProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LinearDocumentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/LinearDocumentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAsB5B,qBAAa,sBAAuB,YAAW,sBAAsB;IACnE,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAyB;IAE5C,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAM1B;IAEK,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAO7F;CACF"}
1
+ {"version":3,"file":"LinearDocumentProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/LinearDocumentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAwB5B,qBAAa,sBAAuB,YAAW,sBAAsB;IACnE,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAyB;IAE5C,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAM1B;IAED;;;OAGG;IACG,YAAY,CAAC,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOxF;IAEK,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAO7F;CACF"}
@@ -1,6 +1,6 @@
1
1
  import { ValidationError, } from '@cat-factory/kernel';
2
2
  import { LinearGraphqlClient, linearAuthFromCredentials } from '../shared/linear.client.js';
3
- import { LINEAR_DOCS_DESCRIPTOR, LINEAR_DOCUMENT_QUERY, LINEAR_DOCUMENTS_SEARCH_QUERY, mapLinearDocument, mapLinearDocumentSearch, parseLinearDocRef, } from './linear-docs.logic.js';
3
+ import { LINEAR_DOCS_DESCRIPTOR, LINEAR_DOCUMENT_QUERY, LINEAR_DOCUMENT_VERSION_QUERY, LINEAR_DOCUMENTS_SEARCH_QUERY, linearDocumentVersion, mapLinearDocument, mapLinearDocumentSearch, parseLinearDocRef, } from './linear-docs.logic.js';
4
4
  // LinearDocumentProvider: the document-source provider for Linear **Docs**. It
5
5
  // authenticates with a personal API key against Linear's single GraphQL endpoint
6
6
  // (via the shared host-pinned, redirect-safe client) and maps a document onto the
@@ -29,6 +29,15 @@ export class LinearDocumentProvider {
29
29
  const data = await client.query(LINEAR_DOCUMENT_QUERY, { id: externalId });
30
30
  return mapLinearDocument(data);
31
31
  }
32
+ /**
33
+ * The cheap version probe: query only the document's `updatedAt`, skipping the
34
+ * (potentially large) `content` field a full fetch downloads.
35
+ */
36
+ async probeVersion(credentials, externalId) {
37
+ const client = new LinearGraphqlClient(linearAuthFromCredentials(credentials));
38
+ const data = await client.query(LINEAR_DOCUMENT_VERSION_QUERY, { id: externalId });
39
+ return linearDocumentVersion(data);
40
+ }
32
41
  async search(credentials, query) {
33
42
  const client = new LinearGraphqlClient(linearAuthFromCredentials(credentials));
34
43
  const data = await client.query(LINEAR_DOCUMENTS_SEARCH_QUERY, { term: query });
@@ -1 +1 @@
1
- {"version":3,"file":"LinearDocumentProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/LinearDocumentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAMhB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC3F,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,EAC7B,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,wBAAwB,CAAA;AAE/B,+EAA+E;AAC/E,iFAAiF;AACjF,kFAAkF;AAClF,qFAAqF;AACrF,6EAA6E;AAC7E,gFAAgF;AAChF,EAAE;AACF,mFAAmF;AACnF,iFAAiF;AACjF,gEAAgE;AAEhE,MAAM,OAAO,sBAAsB;IACxB,IAAI,GAAG,QAAiB,CAAA;IACxB,UAAU,GAAG,sBAAsB,CAAA;IAE5C,mBAAmB,CAAC,KAA0B;QAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAA;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,eAAe,CAAC,oCAAoC,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAA;IAC/D,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,WAAgC,EAChC,UAAkB;QAElB,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAE5B,qBAAqB,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAC7C,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAgC,EAAE,KAAa;QAC1D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAC7B,6BAA6B,EAC7B,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAA;QACD,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"LinearDocumentProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/LinearDocumentProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,GAMhB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAC3F,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,6BAA6B,EAC7B,6BAA6B,EAC7B,qBAAqB,EACrB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,wBAAwB,CAAA;AAE/B,+EAA+E;AAC/E,iFAAiF;AACjF,kFAAkF;AAClF,qFAAqF;AACrF,6EAA6E;AAC7E,gFAAgF;AAChF,EAAE;AACF,mFAAmF;AACnF,iFAAiF;AACjF,gEAAgE;AAEhE,MAAM,OAAO,sBAAsB;IACxB,IAAI,GAAG,QAAiB,CAAA;IACxB,UAAU,GAAG,sBAAsB,CAAA;IAE5C,mBAAmB,CAAC,KAA0B;QAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,CAAA;QACnC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,eAAe,CAAC,oCAAoC,CAAC,CAAA;QACjE,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAA;IAC/D,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,WAAgC,EAChC,UAAkB;QAElB,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAE5B,qBAAqB,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAC7C,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAAC,WAAgC,EAAE,UAAkB;QACrE,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAC7B,6BAA6B,EAC7B,EAAE,EAAE,EAAE,UAAU,EAAE,CACnB,CAAA;QACD,OAAO,qBAAqB,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,WAAgC,EAAE,KAAa;QAC1D,MAAM,MAAM,GAAG,IAAI,mBAAmB,CAAC,yBAAyB,CAAC,WAAW,CAAC,CAAC,CAAA;QAC9E,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,KAAK,CAC7B,6BAA6B,EAC7B,EAAE,IAAI,EAAE,KAAK,EAAE,CAChB,CAAA;QACD,OAAO,uBAAuB,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;CACF"}
@@ -24,6 +24,12 @@ export declare class NotionProvider implements DocumentSourceProvider {
24
24
  normalizeConnection(input: DocumentCredentials): NormalizedConnection;
25
25
  parseRef(input: string): string | null;
26
26
  fetchDocument(credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
27
+ /**
28
+ * The cheap version probe: read only the page object for its `last_edited_time`,
29
+ * skipping the (bounded but multi-request) block backfill that dominates a full
30
+ * fetch. An unchanged timestamp means the page body is still current.
31
+ */
32
+ probeVersion(credentials: DocumentCredentials, externalId: string): Promise<string>;
27
33
  search(credentials: DocumentCredentials, query: string): Promise<DocumentSearchResult[]>;
28
34
  /** Page through a page's top-level blocks (bounded), returning them in order. */
29
35
  private fetchBlocks;
@@ -1 +1 @@
1
- {"version":3,"file":"NotionProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/NotionProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAuB5B,yEAAyE;AACzE,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAkGD,qBAAa,cAAe,YAAW,sBAAsB;IAC3D,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAoB;IAEvC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAe1B;IAEK,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA6B7F;IAED,iFAAiF;YACnE,WAAW;YAqBX,GAAG;CA+BlB"}
1
+ {"version":3,"file":"NotionProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/NotionProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAuB5B,yEAAyE;AACzE,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAoGD,qBAAa,cAAe,YAAW,sBAAsB;IAC3D,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAoB;IAEvC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAgB1B;IAED;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASxF;IAEK,MAAM,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA6B7F;IAED,iFAAiF;YACnE,WAAW;YAqBX,GAAG;CA+BlB"}
@@ -138,8 +138,21 @@ export class NotionProvider {
138
138
  title: notionLogic.notionPageTitle(page.properties),
139
139
  url: page.url ?? `https://www.notion.so/${page.id.replace(/-/g, '')}`,
140
140
  body: notionLogic.notionBlocksToMarkdown(blocks),
141
+ version: page.last_edited_time ?? '',
141
142
  };
142
143
  }
144
+ /**
145
+ * The cheap version probe: read only the page object for its `last_edited_time`,
146
+ * skipping the (bounded but multi-request) block backfill that dominates a full
147
+ * fetch. An unchanged timestamp means the page body is still current.
148
+ */
149
+ async probeVersion(credentials, externalId) {
150
+ const page = await this.get(credentials, `/pages/${encodeURIComponent(externalId)}`);
151
+ if (!page.id) {
152
+ throw new NotionApiError(502, `Notion returned an unexpected body for page ${externalId}`);
153
+ }
154
+ return page.last_edited_time ?? '';
155
+ }
143
156
  async search(credentials, query) {
144
157
  const res = await safeFetch(`${API_BASE}/search`, {
145
158
  method: 'POST',
@@ -1 +1 @@
1
- {"version":3,"file":"NotionProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/NotionProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NotionProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/NotionProvider.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,12 @@ export declare class ZeplinProvider implements DocumentSourceProvider {
24
24
  normalizeConnection(input: DocumentCredentials): NormalizedConnection;
25
25
  parseRef(input: string): string | null;
26
26
  fetchDocument(credentials: DocumentCredentials, externalId: string): Promise<DocumentContent>;
27
+ /**
28
+ * The cheap version probe: read only the project object for its `updated`
29
+ * timestamp, skipping the screens + components + design-token reads that make up
30
+ * the bulk of a full fetch.
31
+ */
32
+ probeVersion(credentials: DocumentCredentials, externalId: string): Promise<string>;
27
33
  /** Fetch the single referenced screen, or a bounded list of the project's screens. */
28
34
  private fetchScreens;
29
35
  private bestEffort;
@@ -1 +1 @@
1
- {"version":3,"file":"ZeplinProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/ZeplinProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAkC5B,yEAAyE;AACzE,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAID,qBAAa,cAAe,YAAW,sBAAsB;IAC3D,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAoB;IAEvC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAoD1B;IAED,sFAAsF;YACxE,YAAY;YAsBZ,UAAU;IAQxB,OAAO,CAAC,OAAO;YAQD,GAAG;CAuBlB"}
1
+ {"version":3,"file":"ZeplinProvider.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/ZeplinProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAA;AAkC5B,yEAAyE;AACzE,qBAAa,cAAe,SAAQ,KAAK;IAErC,QAAQ,CAAC,MAAM,EAAE,MAAM;IADzB,YACW,MAAM,EAAE,MAAM,EACvB,OAAO,EAAE,MAAM,EAIhB;CACF;AAID,qBAAa,cAAe,YAAW,sBAAsB;IAC3D,QAAQ,CAAC,IAAI,EAAG,QAAQ,CAAS;IACjC,QAAQ,CAAC,UAAU;;;;;;;;;;;;;;MAAoB;IAEvC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,GAAG,oBAAoB,CAMpE;IAED,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAErC;IAEK,aAAa,CACjB,WAAW,EAAE,mBAAmB,EAChC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,CAAC,CAqD1B;IAED;;;;OAIG;IACG,YAAY,CAAC,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAUxF;IAED,sFAAsF;YACxE,YAAY;YAsBZ,UAAU;IAQxB,OAAO,CAAC,OAAO;YAQD,GAAG;CAuBlB"}
@@ -73,8 +73,22 @@ export class ZeplinProvider {
73
73
  title: context.title,
74
74
  url: context.url,
75
75
  body,
76
+ version: project.updated !== undefined ? String(project.updated) : '',
76
77
  };
77
78
  }
79
+ /**
80
+ * The cheap version probe: read only the project object for its `updated`
81
+ * timestamp, skipping the screens + components + design-token reads that make up
82
+ * the bulk of a full fetch.
83
+ */
84
+ async probeVersion(credentials, externalId) {
85
+ const { projectId } = splitZeplinExternalId(externalId);
86
+ if (!projectId) {
87
+ throw new ZeplinApiError(400, `Zeplin ref is missing a project id: ${externalId}`);
88
+ }
89
+ const project = await this.get(credentials, `/projects/${encodeURIComponent(projectId)}`);
90
+ return project.updated !== undefined ? String(project.updated) : '';
91
+ }
78
92
  /** Fetch the single referenced screen, or a bounded list of the project's screens. */
79
93
  async fetchScreens(credentials, projectId, screenId) {
80
94
  if (screenId) {
@@ -1 +1 @@
1
- {"version":3,"file":"ZeplinProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/ZeplinProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ZeplinProvider.js","sourceRoot":"","sources":["../../../src/modules/documents/ZeplinProvider.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,9 @@ import type { DocumentContent, DocumentSearchResult, DocumentSourceDescriptor }
2
2
  /** What the connect UI renders, and which credentials the provider needs. */
3
3
  export declare const LINEAR_DOCS_DESCRIPTOR: DocumentSourceDescriptor;
4
4
  /** Fetch a single document's title, URL and Markdown content. */
5
- export declare const LINEAR_DOCUMENT_QUERY = "query Document($id: String!) {\n document(id: $id) { id title url content }\n}";
5
+ export declare const LINEAR_DOCUMENT_QUERY = "query Document($id: String!) {\n document(id: $id) { id title url content updatedAt }\n}";
6
+ /** Cheap staleness probe: the document's `updatedAt` only (no `content` body). */
7
+ export declare const LINEAR_DOCUMENT_VERSION_QUERY = "query DocumentVersion($id: String!) {\n document(id: $id) { id updatedAt }\n}";
6
8
  /** Search documents by title (used to populate the import picker). */
7
9
  export declare const LINEAR_DOCUMENTS_SEARCH_QUERY = "query Documents($term: String!) {\n documents(first: 20, filter: { title: { containsIgnoreCase: $term } }) {\n nodes { id title url }\n }\n}";
8
10
  interface LinearDocumentNode {
@@ -10,6 +12,8 @@ interface LinearDocumentNode {
10
12
  title?: string;
11
13
  url?: string;
12
14
  content?: string | null;
15
+ /** ISO timestamp Linear advances on every edit — the version token. */
16
+ updatedAt?: string | null;
13
17
  }
14
18
  /**
15
19
  * Resolve a Linear document id from raw user input: a bare id, or a
@@ -25,6 +29,12 @@ export declare function parseLinearDocRef(input: string): string | null;
25
29
  export declare function mapLinearDocument(data: {
26
30
  document?: LinearDocumentNode | null;
27
31
  }): DocumentContent;
32
+ /** The version token from a `document { id updatedAt }` probe payload. */
33
+ export declare function linearDocumentVersion(data: {
34
+ document?: {
35
+ updatedAt?: string | null;
36
+ } | null;
37
+ }): string;
28
38
  /** Map a `documents` search payload onto lean {@link DocumentSearchResult} hits. */
29
39
  export declare function mapLinearDocumentSearch(data: {
30
40
  documents?: {
@@ -1 +1 @@
1
- {"version":3,"file":"linear-docs.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/linear-docs.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAY5B,6EAA6E;AAC7E,eAAO,MAAM,sBAAsB,EAAE,wBAkBpC,CAAA;AAID,iEAAiE;AACjE,eAAO,MAAM,qBAAqB,oFAEhC,CAAA;AAEF,sEAAsE;AACtE,eAAO,MAAM,6BAA6B,sJAIxC,CAAA;AAEF,UAAU,kBAAkB;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmB9D;AAUD,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAAE,GAAG,eAAe,CASjG;AAED,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,SAAS,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;KAAE,CAAA;CAC7C,GAAG,oBAAoB,EAAE,CAczB"}
1
+ {"version":3,"file":"linear-docs.logic.d.ts","sourceRoot":"","sources":["../../../src/modules/documents/linear-docs.logic.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAY5B,6EAA6E;AAC7E,eAAO,MAAM,sBAAsB,EAAE,wBAkBpC,CAAA;AAID,iEAAiE;AACjE,eAAO,MAAM,qBAAqB,8FAEhC,CAAA;AAEF,kFAAkF;AAClF,eAAO,MAAM,6BAA6B,mFAExC,CAAA;AAEF,sEAAsE;AACtE,eAAO,MAAM,6BAA6B,sJAIxC,CAAA;AAEF,UAAU,kBAAkB;IAC1B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC1B;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmB9D;AAUD,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAAE,GAAG,eAAe,CAUjG;AAED,0EAA0E;AAC1E,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAA;CAChD,GAAG,MAAM,CAET;AAED,oFAAoF;AACpF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,SAAS,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;KAAE,CAAA;CAC7C,GAAG,oBAAoB,EAAE,CAczB"}
@@ -30,7 +30,11 @@ export const LINEAR_DOCS_DESCRIPTOR = {
30
30
  // ---- GraphQL operations (the provider is a thin transport around these) -----
31
31
  /** Fetch a single document's title, URL and Markdown content. */
32
32
  export const LINEAR_DOCUMENT_QUERY = `query Document($id: String!) {
33
- document(id: $id) { id title url content }
33
+ document(id: $id) { id title url content updatedAt }
34
+ }`;
35
+ /** Cheap staleness probe: the document's `updatedAt` only (no `content` body). */
36
+ export const LINEAR_DOCUMENT_VERSION_QUERY = `query DocumentVersion($id: String!) {
37
+ document(id: $id) { id updatedAt }
34
38
  }`;
35
39
  /** Search documents by title (used to populate the import picker). */
36
40
  export const LINEAR_DOCUMENTS_SEARCH_QUERY = `query Documents($term: String!) {
@@ -88,8 +92,13 @@ export function mapLinearDocument(data) {
88
92
  title: doc.title?.trim() || '(untitled)',
89
93
  url: doc.url ?? `https://linear.app/document/${doc.id}`,
90
94
  body: normalizeMarkdown(doc.content ?? ''),
95
+ version: doc.updatedAt ?? '',
91
96
  };
92
97
  }
98
+ /** The version token from a `document { id updatedAt }` probe payload. */
99
+ export function linearDocumentVersion(data) {
100
+ return data.document?.updatedAt ?? '';
101
+ }
93
102
  /** Map a `documents` search payload onto lean {@link DocumentSearchResult} hits. */
94
103
  export function mapLinearDocumentSearch(data) {
95
104
  const nodes = data.documents?.nodes ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"linear-docs.logic.js","sourceRoot":"","sources":["../../../src/modules/documents/linear-docs.logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linear-docs.logic.js","sourceRoot":"","sources":["../../../src/modules/documents/linear-docs.logic.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Clock } from '@cat-factory/kernel';
2
2
  import type { GitHubClient } from '@cat-factory/kernel';
3
- import type { BranchProjectionRepository, CheckRunProjectionRepository, CommitProjectionRepository, GitHubInstallationRepository, IssueProjectionRepository, PullRequestProjectionRepository, RepoProjectionRepository, UserRepoAccessRepository } from '@cat-factory/kernel';
3
+ import type { BranchProjectionRepository, CheckRunProjectionRepository, CommitProjectionRepository, GitHubInstallationRepository, GroupCacheHandle, IssueProjectionRepository, PullRequestProjectionRepository, RepoProjectionRepository, UserRepoAccessRepository } from '@cat-factory/kernel';
4
4
  import type { GitHubAvailableRepo, GitHubRepo, RepoTreeEntry } from '@cat-factory/kernel';
5
5
  export interface GitHubSyncServiceDependencies {
6
6
  githubClient: GitHubClient;
@@ -27,10 +27,20 @@ export interface GitHubSyncServiceDependencies {
27
27
  * (more recent) cursor. Undefined means backfill the full history (legacy).
28
28
  */
29
29
  commitBackfillHorizonMs?: number;
30
+ /**
31
+ * The workspace repo-projection cache (`AppCaches.repoProjection`, slice 3). Every
32
+ * method here that mutates a workspace's projected repos (link / monorepo-flag / the
33
+ * exact-set write + tombstone / the link-time full re-stamp) drops that workspace's group
34
+ * after the write so the block→repo resolver re-lists fresh. Absent (tests / the
35
+ * Worker's pass-through profile) ⇒ the invalidations are no-ops.
36
+ */
37
+ repoProjectionCache?: GroupCacheHandle<GitHubRepo[]>;
30
38
  }
31
39
  export declare class GitHubSyncService {
32
40
  private readonly deps;
33
41
  constructor(deps: GitHubSyncServiceDependencies);
42
+ /** Drop a workspace's cached repo projection after a write that changed it. */
43
+ private invalidateRepoProjection;
34
44
  /**
35
45
  * The repos the workspace's installation can access, annotated with whether
36
46
  * this workspace currently links each one. Repos are linked *explicitly* per
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubSyncService.d.ts","sourceRoot":"","sources":["../../../src/modules/github/GitHubSyncService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,qBAAqB,CAAA;AAC7E,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EAIxB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAczF,MAAM,WAAW,6BAA6B;IAC5C,YAAY,EAAE,YAAY,CAAA;IAC1B,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,wBAAwB,EAAE,wBAAwB,CAAA;IAClD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,+BAA+B,EAAE,+BAA+B,CAAA;IAChE,yBAAyB,EAAE,yBAAyB,CAAA;IACpD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,KAAK,EAAE,KAAK,CAAA;IACZ;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,wBAAwB,CAAA;IACnD;;;;;;OAMG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAA;CACjC;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,6BAA6B,EAAI;IAEpE;;;;;;;;;;;OAWG;IACG,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GAC7D,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAiDhC;IAED;;;;;;OAMG;YACW,cAAc;IAkC5B,OAAO,CAAC,cAAc;IAYtB;;;;;;;OAOG;IACG,eAAe,CACnB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,OAAO,GAClB,OAAO,CAAC,UAAU,CAAC,CAOrB;IAED;;;;;OAKG;IACG,iBAAiB,CACrB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,SAAK,GACR,OAAO,CAAC,aAAa,EAAE,CAAC,CAyB1B;IAED;;;;;;;;OAQG;IACG,QAAQ,CACZ,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO,GACjD,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CA8B5B;YAEa,gBAAgB;IAyB9B;;;;OAIG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAuBxF;IAED;;;;;;OAMG;YACW,YAAY;IA+B1B,+EAA+E;YACjE,gBAAgB;IAO9B;;;;;;OAMG;IACG,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,GAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAsGhF;IAED,kFAAkF;IAC5E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG3E;IAED,6DAA6D;IACvD,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxD;IAED;;;;;OAKG;IACG,oBAAoB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhE;CACF"}
1
+ {"version":3,"file":"GitHubSyncService.d.ts","sourceRoot":"","sources":["../../../src/modules/github/GitHubSyncService.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,10 @@ export class GitHubSyncService {
3
3
  constructor(deps) {
4
4
  this.deps = deps;
5
5
  }
6
+ /** Drop a workspace's cached repo projection after a write that changed it. */
7
+ invalidateRepoProjection(workspaceId) {
8
+ return this.deps.repoProjectionCache?.invalidateGroup(workspaceId) ?? Promise.resolve();
9
+ }
6
10
  /**
7
11
  * The repos the workspace's installation can access, annotated with whether
8
12
  * this workspace currently links each one. Repos are linked *explicitly* per
@@ -130,6 +134,8 @@ export class GitHubSyncService {
130
134
  throw new Error(`Repo ${repoGithubId} is not accessible to workspace '${workspaceId}'`);
131
135
  }
132
136
  await this.deps.repoProjectionRepository.setMonorepo(workspaceId, repoGithubId, isMonorepo);
137
+ // The monorepo flag decides whether the resolver hands agents the service subdirectory.
138
+ await this.invalidateRepoProjection(workspaceId);
133
139
  return { ...existing, isMonorepo };
134
140
  }
135
141
  /**
@@ -192,6 +198,7 @@ export class GitHubSyncService {
192
198
  syncedAt: this.deps.clock.now(),
193
199
  };
194
200
  await this.deps.repoProjectionRepository.upsertMany(workspaceId, [repo]);
201
+ await this.invalidateRepoProjection(workspaceId);
195
202
  // Full pass: the org cursor may already be advanced, so bypass it to populate this
196
203
  // newly-linked workspace.
197
204
  await this.syncRepo(repo, { full: true });
@@ -218,6 +225,7 @@ export class GitHubSyncService {
218
225
  syncedAt: this.deps.clock.now(),
219
226
  };
220
227
  await this.deps.repoProjectionRepository.upsertMany(workspaceId, [repo]);
228
+ await this.invalidateRepoProjection(workspaceId);
221
229
  if (userId && this.deps.userRepoAccessRepository) {
222
230
  await this.deps.userRepoAccessRepository.recordAccessible(userId, [
223
231
  this.toAccessRecord(userId, repo),
@@ -246,6 +254,9 @@ export class GitHubSyncService {
246
254
  // Tombstone every previously-linked repo for this installation that is no
247
255
  // longer selected (the "seen" set is exactly the new selection).
248
256
  await this.deps.repoProjectionRepository.tombstoneMissing(workspaceId, installationId, selected.map((r) => r.githubId), this.deps.clock.now());
257
+ // The exact-set write + tombstone changed this workspace's projection (even when
258
+ // nothing was selected — a full deselect tombstones everything and runs no syncRepo).
259
+ await this.invalidateRepoProjection(workspaceId);
249
260
  for (const repo of selected)
250
261
  await this.syncRepo(repo, { full: true });
251
262
  return this.deps.repoProjectionRepository.list(workspaceId);
@@ -334,9 +345,20 @@ export class GitHubSyncService {
334
345
  await fanOut((ws) => this.deps.checkRunProjectionRepository.upsertMany(ws, checks.items));
335
346
  }
336
347
  }
337
- // Stamp the repo row as freshly synced for every workspace that links it.
348
+ // Stamp the repo row as freshly synced for every workspace that links it. On an
349
+ // incremental resync (`full` false — the queue consumer / periodic reconcile) the
350
+ // `repo` came from the stored projection, so only `syncedAt` changes — not a field the
351
+ // resolver reads — and there is nothing to invalidate. A `full` pass runs only at link
352
+ // time (linkRepo / setLinkedRepos) with freshly-FETCHED metadata, which can differ from
353
+ // what ANOTHER workspace sharing this repo has cached, so drop each fanned-out
354
+ // workspace's group then. (The triggering workspace's own group was already dropped by
355
+ // the link/set caller.) Gating on `full` keeps the frequent resync path from churning
356
+ // the cache the durable poll ticks are meant to hit.
338
357
  const now = this.deps.clock.now();
339
358
  await fanOut((ws) => this.deps.repoProjectionRepository.upsertMany(ws, [{ ...repo, syncedAt: now }]));
359
+ if (full)
360
+ for (const ws of workspaces)
361
+ await this.invalidateRepoProjection(ws);
340
362
  }
341
363
  /** Resync a single tracked repo by its GitHub id (used by the queue consumer). */
342
364
  async syncRepoById(workspaceId, repoGithubId) {
@@ -1 +1 @@
1
- {"version":3,"file":"GitHubSyncService.js","sourceRoot":"","sources":["../../../src/modules/github/GitHubSyncService.ts"],"names":[],"mappings":"AAwDA,MAAM,OAAO,iBAAiB;IACC,IAAI;IAAjC,YAA6B,IAAmC;oBAAnC,IAAI;IAAkC,CAAC;IAEpE;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,kBAAkB,CACtB,WAAmB,EACnB,IAAI,GAAwD,EAAE;QAE9D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAC7F,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAO,EAAE,CAAA;QACtD,MAAM,OAAO,GAAG,IAAI,GAAG,CACrB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CACzF,CAAA;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAA;QAC5B,gFAAgF;QAChF,iFAAiF;QACjF,gFAAgF;QAChF,qFAAqF;QACrF,+EAA+E;QAC/E,MAAM,QAAQ,GAAG,KAAK;YACpB,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,uBAAuB,CAAC,YAAY,CAAC,cAAc,EAAE,KAAK,EAAE;gBACvF,KAAK,EAAE,YAAY,CAAC,YAAY,IAAI,SAAS;gBAC7C,SAAS,EAAE,YAAY,CAAC,UAAU;aACnC,CAAC;YACJ,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,CAAA;QAE3F,yFAAyF;QACzF,0FAA0F;QAC1F,wFAAwF;QACxF,sDAAsD;QACtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QACzE,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAA;QACvD,MAAM,MAAM,GAA0B,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzD,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC/B,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,UAAU,IAAI,KAAK;YACxD,QAAQ,EAAE,KAAK;SAChB,CAAC,CAAC,CAAA;QACH,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;YAC9B,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAAE,SAAQ;YACpC,MAAM,CAAC,IAAI,CAAC;gBACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC/B,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,UAAU,IAAI,KAAK;gBACxD,QAAQ,EAAE,IAAI;aACf,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,cAAc,CAC1B,WAAmB,EACnB,IAAyD,EACzD,KAAyB;QAEzB,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAClC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB;YAAE,OAAO,EAAE,CAAA;QACtE,oFAAoF;QACpF,6FAA6F;QAC7F,8FAA8F;QAC9F,2CAA2C;QAC3C,IAAI,IAAuB,CAAA;QAC3B,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAA;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QACjC,wFAAwF;QACxF,6FAA6F;QAC7F,8FAA8F;QAC9F,yFAAyF;QACzF,4FAA4F;QAC5F,yFAAyF;QACzF,IAAI,CAAC,KAAK,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAA;YAChE,IAAI,SAAS;gBAAE,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;;gBACpF,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC/E,CAAC;QACD,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,MAAM,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;QAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9E,CAAC;IAEO,cAAc,CAAC,MAAc,EAAE,IAAgB;QACrD,OAAO;YACL,MAAM;YACN,YAAY,EAAE,IAAI,CAAC,QAAQ;YAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SAChC,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,eAAe,CACnB,WAAmB,EACnB,YAAoB,EACpB,UAAmB;QAEnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,QAAQ,YAAY,oCAAoC,WAAW,GAAG,CAAC,CAAA;QACzF,CAAC;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,WAAW,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,CAAA;QAC3F,OAAO,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,CAAA;IACpC,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,WAAmB,EACnB,YAAoB,EACpB,IAAI,GAAG,EAAE;QAET,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAC7F,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAO,EAAE,CAAA;QACtD,8EAA8E;QAC9E,4EAA4E;QAC5E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QAC3D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,QAAQ,YAAY,oCAAoC,WAAW,GAAG,CAAC,CAAA;QACzF,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,CACxD,YAAY,CAAC,cAAc,EAC3B,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,EACtC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,EAC9B,IAAI,CAAC,aAAa,IAAI,SAAS,CAChC,CAAA;QACD,MAAM,MAAM,GAAoB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClD,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,CAAC,CAAC,IAAI;SACb,CAAC,CAAC,CAAA;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,CAAC,CAAC,CAAA;YACnD,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK;gBAAE,OAAO,CAAC,CAAA;YAClD,OAAO,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,QAAQ,CACZ,WAAmB,EACnB,YAAoB,EACpB,IAAI,GAA4C,EAAE;QAElD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACxF,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;QAC7B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAC7F,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAO,IAAI,CAAA;QACxD,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAA;QAClD,sFAAsF;QACtF,oFAAoF;QACpF,wFAAwF;QACxF,4EAA4E;QAC5E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;QACpF,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,IAAI,GAAe;gBACvB,GAAG,KAAK;gBACR,cAAc;gBACd,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;aAChC,CAAA;YACD,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;YACxE,mFAAmF;YACnF,0BAA0B;YAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YACzC,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QAC1E,CAAC;QACD,0FAA0F;QAC1F,4FAA4F;QAC5F,2FAA2F;QAC3F,2FAA2F;QAC3F,4CAA4C;QAC5C,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,CAAC,CAAA;IAC/E,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,WAAmB,EACnB,YAAoB,EACpB,cAAsB,EACtB,IAA6C;QAE7C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;QAClC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe;YAAE,OAAO,IAAI,CAAA;QACtE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,EAAE,YAAY,CAAC,CAAA;QACtF,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAA;QAC1B,MAAM,IAAI,GAAe;YACvB,GAAG,QAAQ;YACX,cAAc;YACd,SAAS,EAAE,UAAU;YACrB,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SAChC,CAAA;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;QACxE,IAAI,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACjD,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,MAAM,EAAE;gBAChE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC;aAClC,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;IAC1E,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,aAAuB;QAC/D,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAC7F,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAO,EAAE,CAAA;QACtD,MAAM,cAAc,GAAG,YAAY,CAAC,cAAc,CAAA;QAClD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,aAAa,CAAC,CAAA;QACrC,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAA;QACpF,MAAM,QAAQ,GAAG,KAAK;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;aACrC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;QAE1E,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC5E,CAAC;QACD,0EAA0E;QAC1E,iEAAiE;QACjE,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CACvD,WAAW,EACX,cAAc,EACd,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAC/B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CACtB,CAAA;QACD,KAAK,MAAM,IAAI,IAAI,QAAQ;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACtE,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC7D,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,YAAY,CACxB,cAAsB,EACtB,YAAoB,EACpB,IAAoB,EACpB,IAAa,EACb,KAEyE,EACzE,MAAqC,EACrC,UAIe;QAEf,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAA;QAChD,mFAAmF;QACnF,8EAA8E;QAC9E,8DAA8D;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,EAAE,IAAI,CAAC,CAAA;QACtF,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACrE,MAAM,KAAK,CAAC,SAAS,CACnB,cAAc,EACd,YAAY,EACZ,IAAI,EACJ,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CACpD,CAAA;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,+EAA+E;IACvE,KAAK,CAAC,gBAAgB,CAAC,cAAsB,EAAE,YAAoB;QACzE,MAAM,GAAG,GACP,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;QAC5F,yEAAyE;QACzE,OAAO,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,YAAY,EAAE,GAAG,CAAC,CAAA;IAC/E,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,QAAQ,CAAC,IAAgB,EAAE,OAAO,GAAuB,EAAE;QAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,KAAK,CAAA;QAClC,MAAM,GAAG,GAAkB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;QACjE,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAA;QACxB,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAA;QACrC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,KAAK,EAAE,KAAoC,EAAE,EAAE;YAC5D,KAAK,MAAM,EAAE,IAAI,UAAU;gBAAE,MAAM,KAAK,CAAC,EAAE,CAAC,CAAA;QAC9C,CAAC,CAAA;QAED,uEAAuE;QACvE,sEAAsE;QACtE,8EAA8E;QAC9E,MAAM,UAAU,GACd,CAAC,UAAmB,EAAE,EAAE,CACxB,CAAC,IAAuB,EAAE,IAA+B,EAAE,GAAW,EAAc,EAAE,CAAC,CAAC;YACtF,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,IAAI,IAAI;YAChC,YAAY,EAAE,GAAG;YACjB,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI;SAC1D,CAAC,CAAA;QAEJ,uCAAuC;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CACtC,cAAc,EACd,EAAE,EACF,UAAU,EACV,IAAI,EACJ,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,IAAI,SAAS,CAAC,EAC/E,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EACrF,UAAU,CAAC,KAAK,CAAC,CAClB,CAAA;QACD,MAAM,gBAAgB,GACpB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,IAAI,IAAI,CAAA;QAE5E,sEAAsE;QACtE,MAAM,IAAI,CAAC,YAAY,CACrB,cAAc,EACd,EAAE,EACF,OAAO,EACP,IAAI,EACJ,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,gBAAgB,CAAC,cAAc,EAAE,GAAG,EAAE;YAC3C,KAAK,EAAE,MAAM,EAAE,QAAQ,IAAI,SAAS;YACpC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,SAAS;SAChC,CAAC,EACJ,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EAC1F,UAAU,CAAC,IAAI,CAAC,CACjB,CAAA;QAED,6BAA6B;QAC7B,MAAM,IAAI,CAAC,YAAY,CACrB,cAAc,EACd,EAAE,EACF,QAAQ,EACR,IAAI,EACJ,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,EAAE;YACrC,KAAK,EAAE,MAAM,EAAE,QAAQ,IAAI,SAAS;YACpC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,SAAS;SAChC,CAAC,EACJ,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EACpF,UAAU,CAAC,IAAI,CAAC,CACjB,CAAA;QAED,4EAA4E;QAC5E,6EAA6E;QAC7E,4DAA4D;QAC5D,MAAM,mBAAmB,GACvB,IAAI,CAAC,IAAI,CAAC,uBAAuB,KAAK,SAAS;YAC7C,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,WAAW,EAAE;YACnF,CAAC,CAAC,SAAS,CAAA;QACf,MAAM,IAAI,CAAC,YAAY,CACrB,cAAc,EACd,EAAE,EACF,SAAS,EACT,IAAI,EACJ,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,WAAW,CAAC,cAAc,EAAE,GAAG,EAAE;YACtC,KAAK,EAAE,MAAM,EAAE,QAAQ,IAAI,mBAAmB;SAC/C,CAAC,EACJ,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,EACrF,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YACtB,IAAI,EAAE,IAAI;YACV,YAAY,EAAE,GAAG;YACjB,QAAQ,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;SACtC,CAAC,CACH,CAAA;QAED,+EAA+E;QAC/E,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,cAAc,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAA;YAChF,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,MAAM,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YAC3F,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACjC,MAAM,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAClB,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAChF,CAAA;IACH,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,YAAoB;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACpF,IAAI,IAAI;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,eAAe,CAAC,WAAmB;QACvC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACxE,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACrD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,oBAAoB,CAAC,cAAsB;QAC/C,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;QAClF,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAM;QACnD,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;QAC5F,KAAK,MAAM,EAAE,IAAI,YAAY;YAAE,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAA;IAC/D,CAAC;CACF"}
1
+ {"version":3,"file":"GitHubSyncService.js","sourceRoot":"","sources":["../../../src/modules/github/GitHubSyncService.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { Clock } from '@cat-factory/kernel';
2
- import type { BranchProjectionRepository, CheckRunProjectionRepository, CommitProjectionRepository, GitHubInstallationRepository, IssueProjectionRepository, PullRequestProjectionRepository, RepoProjectionRepository } from '@cat-factory/kernel';
2
+ import type { BranchProjectionRepository, CheckRunProjectionRepository, CommitProjectionRepository, GitHubInstallationRepository, GitHubRepo, GroupCacheHandle, IssueProjectionRepository, PullRequestProjectionRepository, RepoProjectionRepository } from '@cat-factory/kernel';
3
3
  export interface WebhookServiceDependencies {
4
4
  githubInstallationRepository: GitHubInstallationRepository;
5
5
  repoProjectionRepository: RepoProjectionRepository;
@@ -9,6 +9,15 @@ export interface WebhookServiceDependencies {
9
9
  commitProjectionRepository: CommitProjectionRepository;
10
10
  checkRunProjectionRepository: CheckRunProjectionRepository;
11
11
  clock: Clock;
12
+ /**
13
+ * The workspace repo-projection cache (`AppCaches.repoProjection`, slice 3). The only
14
+ * repo-projection write here is the installation-removed tombstone; it drops each
15
+ * affected workspace's group so the resolver re-lists without the removed repos. The
16
+ * push-event projections (branches/PRs/issues/commits/checks) are separate tables the
17
+ * resolver never lists, so they don't invalidate it. Absent (tests / the Worker's
18
+ * pass-through profile) ⇒ no-op.
19
+ */
20
+ repoProjectionCache?: GroupCacheHandle<GitHubRepo[]>;
12
21
  }
13
22
  export declare class WebhookService {
14
23
  private readonly deps;
@@ -1 +1 @@
1
- {"version":3,"file":"WebhookService.d.ts","sourceRoot":"","sources":["../../../src/modules/github/WebhookService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAyB5B,MAAM,WAAW,0BAA0B;IACzC,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,wBAAwB,EAAE,wBAAwB,CAAA;IAClD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,+BAA+B,EAAE,+BAA+B,CAAA;IAChE,yBAAyB,EAAE,yBAAyB,CAAA;IACpD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,KAAK,EAAE,KAAK,CAAA;CACb;AAQD,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0BAA0B,EAAI;IAEjE,kEAAkE;IAC5D,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAmF/D;IAED;;;;OAIG;YACW,sBAAsB;YAiBtB,kBAAkB;IAiDhC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,QAAQ;CAKjB"}
1
+ {"version":3,"file":"WebhookService.d.ts","sourceRoot":"","sources":["../../../src/modules/github/WebhookService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,KAAK,EACV,0BAA0B,EAC1B,4BAA4B,EAC5B,0BAA0B,EAC1B,4BAA4B,EAC5B,UAAU,EACV,gBAAgB,EAChB,yBAAyB,EACzB,+BAA+B,EAC/B,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAyB5B,MAAM,WAAW,0BAA0B;IACzC,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,wBAAwB,EAAE,wBAAwB,CAAA;IAClD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,+BAA+B,EAAE,+BAA+B,CAAA;IAChE,yBAAyB,EAAE,yBAAyB,CAAA;IACpD,0BAA0B,EAAE,0BAA0B,CAAA;IACtD,4BAA4B,EAAE,4BAA4B,CAAA;IAC1D,KAAK,EAAE,KAAK,CAAA;IACZ;;;;;;;OAOG;IACH,mBAAmB,CAAC,EAAE,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAA;CACrD;AAQD,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,IAAI;IAAjC,YAA6B,IAAI,EAAE,0BAA0B,EAAI;IAEjE,kEAAkE;IAC5D,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAmF/D;IAED;;;;OAIG;YACW,sBAAsB;YAiBtB,kBAAkB;IAkDhC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,QAAQ;CAKjB"}
@@ -150,6 +150,7 @@ export class WebhookService {
150
150
  .filter((repo) => repo.installationId === installationId && !removedIds.has(repo.githubId))
151
151
  .map((repo) => repo.githubId);
152
152
  await this.deps.repoProjectionRepository.tombstoneMissing(ws, installationId, remaining, now);
153
+ await this.deps.repoProjectionCache?.invalidateGroup(ws);
153
154
  }
154
155
  }
155
156
  installationIdOf(root) {
@@ -1 +1 @@
1
- {"version":3,"file":"WebhookService.js","sourceRoot":"","sources":["../../../src/modules/github/WebhookService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebhookService.js","sourceRoot":"","sources":["../../../src/modules/github/WebhookService.ts"],"names":[],"mappings":"AAYA,OAAO,EAML,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,uBAAuB,CAAA;AAmC9B,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAE,KAAc,CAAC,CAAC,CAAC,IAAI,CAAA;AAC7E,CAAC;AAED,MAAM,OAAO,cAAc;IACI,IAAI;IAAjC,YAA6B,IAAgC;oBAAhC,IAAI;IAA+B,CAAC;IAEjE,kEAAkE;IAClE,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,OAAgB;QAC9C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI;YAAE,OAAM;QAEjB,IAAI,SAAS,KAAK,cAAc,IAAI,SAAS,KAAK,2BAA2B,EAAE,CAAC;YAC9E,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;YAC9C,OAAM;QACR,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,cAAc,KAAK,IAAI;YAAE,OAAM;QACnC,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;QAClF,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,SAAS;YAAE,OAAM;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QAEjC,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,cAAc,EAAE,CAAC;gBACpB,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAyB,CAAA;gBAC9D,IAAI,CAAC,EAAE;oBAAE,OAAM;gBACf,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAC1D,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAC3B,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/D,IAAI,CAAC,IAAI,CAAC,+BAA+B,CAAC,UAAU,CAAC,EAAE,EAAE;oBACvD,uBAAuB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC;iBACzC,CAAC,CACH,CAAA;gBACD,OAAM;YACR,CAAC;YACD,KAAK,QAAQ,EAAE,CAAC;gBACd,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAA0B,CAAA;gBAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAM;gBACrC,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/D,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,EAAE,EAAE;oBACjD,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC;iBACtC,CAAC,CACH,CAAA;gBACD,OAAM;YACR,CAAC;YACD,KAAK,MAAM,EAAE,CAAC;gBACZ,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAM;gBAC3B,6DAA6D;gBAC7D,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;gBACxD,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC9D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAE,IAAI,CAAC,OAA6B,CAAC,CAAC,CAAC,EAAE,CAAA;gBACtF,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;oBACrE,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,KAAK,EAAE,CAAC;wBAC3C,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,UAAU,CAAC,EAAE,EAAE;4BACxD;gCACE,YAAY,EAAE,MAAM;gCACpB,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC;gCACrC,OAAO,EAAE,KAAK;gCACd,SAAS,EAAE,KAAK;gCAChB,QAAQ,EAAE,GAAG;6BACd;yBACF,CAAC,CAAA;oBACJ,CAAC;oBACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,UAAU,CACnD,EAAE,EACF,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CACvD,CAAA;oBACH,CAAC;gBACH,CAAC,CAAC,CAAA;gBACF,OAAM;YACR,CAAC;YACD,KAAK,WAAW,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,CAA6B,CAAA;gBAClE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAM;gBACrC,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CAC/D,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,EAAE,EAAE;oBACpD,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC;iBACzC,CAAC,CACH,CAAA;gBACD,OAAM;YACR,CAAC;YACD;gBACE,0DAA0D;gBAC1D,OAAM;QACV,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,sBAAsB,CAClC,cAAsB,EACtB,YAAoB,EACpB,OAA+C;QAE/C,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;QAC5F,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACrC,oFAAoF;QACpF,8EAA8E;QAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CACtE,YAAY,EACZ,YAAY,CACb,CAAA;QACD,KAAK,MAAM,EAAE,IAAI,MAAM;YAAE,MAAM,OAAO,CAAC,EAAE,CAAC,CAAA;IAC5C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,SAAiB,EAAE,IAAU;QAC5D,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAClD,IAAI,cAAc,KAAK,IAAI;YAAE,OAAM;QACnC,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAA;QAClF,IAAI,CAAC,YAAY;YAAE,OAAM;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;QACjC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;QAEjE,+EAA+E;QAC/E,8EAA8E;QAC9E,mDAAmD;QACnD,IAAI,SAAS,KAAK,cAAc,EAAE,CAAC;YACjC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACjD,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;YAC9E,CAAC;iBAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,MAAM,CAAC,EAAE,GAAG,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAC3F,CAAC;YACD,OAAM;QACR,CAAC;QAED,wEAAwE;QACxE,0EAA0E;QAC1E,6EAA6E;QAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC;YACtD,CAAC,CAAE,IAAI,CAAC,oBAAwC;YAChD,CAAC,CAAC,EAAE,CAAA;QACN,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QAChC,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAA;QAC5F,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAM;QACrC,qFAAqF;QACrF,6EAA6E;QAC7E,oCAAoC;QACpC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;QAClC,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA;YAC1F,KAAK,MAAM,EAAE,IAAI,MAAM;gBAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,QAAQ,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACjE,MAAM,SAAS,GAAG,OAAO;iBACtB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,KAAK,cAAc,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC1F,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC/B,MAAM,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;YAC7F,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,eAAe,CAAC,EAAE,CAAC,CAAA;QAC1D,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,IAAU;QACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;QACxC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAA;QACnB,OAAO,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3C,CAAC;IAEO,QAAQ,CAAC,IAAU;QACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACtC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAA;QACnB,OAAO,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;IAC3C,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/integrations",
3
- "version": "0.62.1",
3
+ "version": "0.64.0",
4
4
  "description": "External-system integration domain logic for the Agent Architecture Board (GitHub, documents, tasks, environments, runners).",
5
5
  "repository": {
6
6
  "type": "git",
@@ -27,7 +27,7 @@
27
27
  "ai": "^6.0.214",
28
28
  "yaml": "^2.9.0",
29
29
  "@cat-factory/contracts": "0.95.0",
30
- "@cat-factory/kernel": "0.83.0"
30
+ "@cat-factory/kernel": "0.85.0"
31
31
  },
32
32
  "devDependencies": {
33
33
  "typescript": "7.0.1-rc",