canopycms 0.0.54 → 0.0.56

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 (225) hide show
  1. package/dist/api/assets.d.ts +14 -2
  2. package/dist/api/assets.d.ts.map +1 -1
  3. package/dist/api/assets.js +14 -3
  4. package/dist/api/assets.js.map +1 -1
  5. package/dist/api/branch-status.d.ts.map +1 -1
  6. package/dist/api/branch-status.js +8 -2
  7. package/dist/api/branch-status.js.map +1 -1
  8. package/dist/api/client.d.ts +2 -2
  9. package/dist/api/client.d.ts.map +1 -1
  10. package/dist/api/client.js +29 -14
  11. package/dist/api/client.js.map +1 -1
  12. package/dist/api/content.d.ts +2 -2
  13. package/dist/api/content.d.ts.map +1 -1
  14. package/dist/api/content.js +160 -26
  15. package/dist/api/content.js.map +1 -1
  16. package/dist/api/entries.d.ts.map +1 -1
  17. package/dist/api/entries.js +8 -4
  18. package/dist/api/entries.js.map +1 -1
  19. package/dist/api/github-sync.d.ts.map +1 -1
  20. package/dist/api/github-sync.js +45 -7
  21. package/dist/api/github-sync.js.map +1 -1
  22. package/dist/api/groups.d.ts.map +1 -1
  23. package/dist/api/groups.js +15 -5
  24. package/dist/api/groups.js.map +1 -1
  25. package/dist/api/permissions.d.ts +6 -6
  26. package/dist/api/permissions.d.ts.map +1 -1
  27. package/dist/api/permissions.js +24 -9
  28. package/dist/api/permissions.js.map +1 -1
  29. package/dist/api/request-body-hash.d.ts +33 -0
  30. package/dist/api/request-body-hash.d.ts.map +1 -0
  31. package/dist/api/request-body-hash.js +43 -0
  32. package/dist/api/request-body-hash.js.map +1 -0
  33. package/dist/api/resolve-references.d.ts.map +1 -1
  34. package/dist/api/resolve-references.js +8 -1
  35. package/dist/api/resolve-references.js.map +1 -1
  36. package/dist/api/schema.js +9 -9
  37. package/dist/api/schema.js.map +1 -1
  38. package/dist/api/settings-helpers.d.ts +14 -1
  39. package/dist/api/settings-helpers.d.ts.map +1 -1
  40. package/dist/api/settings-helpers.js +11 -2
  41. package/dist/api/settings-helpers.js.map +1 -1
  42. package/dist/api/types.d.ts +10 -0
  43. package/dist/api/types.d.ts.map +1 -1
  44. package/dist/auth/caching-auth-plugin.d.ts +8 -1
  45. package/dist/auth/caching-auth-plugin.d.ts.map +1 -1
  46. package/dist/auth/caching-auth-plugin.js +6 -1
  47. package/dist/auth/caching-auth-plugin.js.map +1 -1
  48. package/dist/auth/index.d.ts +1 -0
  49. package/dist/auth/index.d.ts.map +1 -1
  50. package/dist/auth/index.js +1 -0
  51. package/dist/auth/index.js.map +1 -1
  52. package/dist/auth/plugin.d.ts +35 -0
  53. package/dist/auth/plugin.d.ts.map +1 -1
  54. package/dist/auth/plugin.js +27 -1
  55. package/dist/auth/plugin.js.map +1 -1
  56. package/dist/authorization/helpers.d.ts +16 -0
  57. package/dist/authorization/helpers.d.ts.map +1 -1
  58. package/dist/authorization/helpers.js +18 -0
  59. package/dist/authorization/helpers.js.map +1 -1
  60. package/dist/authorization/index.d.ts +1 -1
  61. package/dist/authorization/index.d.ts.map +1 -1
  62. package/dist/authorization/index.js +1 -1
  63. package/dist/authorization/index.js.map +1 -1
  64. package/dist/build/generate-ai-content.d.ts.map +1 -1
  65. package/dist/build/generate-ai-content.js +7 -0
  66. package/dist/build/generate-ai-content.js.map +1 -1
  67. package/dist/cli/cli.d.ts.map +1 -1
  68. package/dist/cli/cli.js +2 -1
  69. package/dist/cli/cli.js.map +1 -1
  70. package/dist/cli/generate-ai-content.js +1150 -355
  71. package/dist/cli/init.d.ts +1 -1
  72. package/dist/cli/init.d.ts.map +1 -1
  73. package/dist/cli/init.js +40 -13
  74. package/dist/cli/init.js.map +1 -1
  75. package/dist/cli/sync.d.ts.map +1 -1
  76. package/dist/cli/sync.js +88 -60
  77. package/dist/cli/sync.js.map +1 -1
  78. package/dist/cli/template-files/canopy.ts.template +2 -1
  79. package/dist/cli/template-files/edit-page.tsx.template +8 -1
  80. package/dist/cli/template-files/middleware.ts.template +18 -0
  81. package/dist/cli/templates.d.ts.map +1 -1
  82. package/dist/cli/templates.js +19 -4
  83. package/dist/cli/templates.js.map +1 -1
  84. package/dist/config/helpers.d.ts +9 -1
  85. package/dist/config/helpers.d.ts.map +1 -1
  86. package/dist/config/helpers.js +33 -75
  87. package/dist/config/helpers.js.map +1 -1
  88. package/dist/config/schemas/config.d.ts +8 -24
  89. package/dist/config/schemas/config.d.ts.map +1 -1
  90. package/dist/config/schemas/config.js +12 -5
  91. package/dist/config/schemas/config.js.map +1 -1
  92. package/dist/config/schemas/media.d.ts +1 -10
  93. package/dist/config/schemas/media.d.ts.map +1 -1
  94. package/dist/config/schemas/media.js +8 -6
  95. package/dist/config/schemas/media.js.map +1 -1
  96. package/dist/config/types.d.ts +6 -4
  97. package/dist/config/types.d.ts.map +1 -1
  98. package/dist/config-test.d.ts +5 -3
  99. package/dist/config-test.d.ts.map +1 -1
  100. package/dist/config-test.js +9 -1
  101. package/dist/config-test.js.map +1 -1
  102. package/dist/content-id-index.d.ts +12 -6
  103. package/dist/content-id-index.d.ts.map +1 -1
  104. package/dist/content-id-index.js +12 -6
  105. package/dist/content-id-index.js.map +1 -1
  106. package/dist/content-index-generation.d.ts +30 -0
  107. package/dist/content-index-generation.d.ts.map +1 -0
  108. package/dist/content-index-generation.js +131 -0
  109. package/dist/content-index-generation.js.map +1 -0
  110. package/dist/content-index-registry.d.ts +38 -0
  111. package/dist/content-index-registry.d.ts.map +1 -0
  112. package/dist/content-index-registry.js +53 -0
  113. package/dist/content-index-registry.js.map +1 -0
  114. package/dist/content-listing.d.ts +3 -1
  115. package/dist/content-listing.d.ts.map +1 -1
  116. package/dist/content-listing.js +1 -0
  117. package/dist/content-listing.js.map +1 -1
  118. package/dist/content-store.d.ts +130 -6
  119. package/dist/content-store.d.ts.map +1 -1
  120. package/dist/content-store.js +343 -31
  121. package/dist/content-store.js.map +1 -1
  122. package/dist/editor/Editor.d.ts.map +1 -1
  123. package/dist/editor/Editor.js +27 -19
  124. package/dist/editor/Editor.js.map +1 -1
  125. package/dist/editor/FormRenderer.d.ts +7 -0
  126. package/dist/editor/FormRenderer.d.ts.map +1 -1
  127. package/dist/editor/FormRenderer.js +12 -3
  128. package/dist/editor/FormRenderer.js.map +1 -1
  129. package/dist/editor/components/EditorHeader.d.ts.map +1 -1
  130. package/dist/editor/components/EditorHeader.js +3 -4
  131. package/dist/editor/components/EditorHeader.js.map +1 -1
  132. package/dist/editor/components/EditorSidebar.d.ts.map +1 -1
  133. package/dist/editor/components/EditorSidebar.js +2 -4
  134. package/dist/editor/components/EditorSidebar.js.map +1 -1
  135. package/dist/editor/fields/ReferenceField.d.ts.map +1 -1
  136. package/dist/editor/fields/ReferenceField.js +19 -2
  137. package/dist/editor/fields/ReferenceField.js.map +1 -1
  138. package/dist/editor/group-manager/hooks/useGroupState.d.ts.map +1 -1
  139. package/dist/editor/group-manager/hooks/useGroupState.js +5 -2
  140. package/dist/editor/group-manager/hooks/useGroupState.js.map +1 -1
  141. package/dist/editor/hooks/useDraftManager.d.ts +15 -0
  142. package/dist/editor/hooks/useDraftManager.d.ts.map +1 -1
  143. package/dist/editor/hooks/useDraftManager.js +140 -1
  144. package/dist/editor/hooks/useDraftManager.js.map +1 -1
  145. package/dist/editor/hooks/useEntryManager.d.ts +9 -2
  146. package/dist/editor/hooks/useEntryManager.d.ts.map +1 -1
  147. package/dist/editor/hooks/useEntryManager.js +9 -3
  148. package/dist/editor/hooks/useEntryManager.js.map +1 -1
  149. package/dist/editor/hooks/useSchemaManager.d.ts +34 -10
  150. package/dist/editor/hooks/useSchemaManager.d.ts.map +1 -1
  151. package/dist/editor/hooks/useSchemaManager.js +22 -25
  152. package/dist/editor/hooks/useSchemaManager.js.map +1 -1
  153. package/dist/editor/schema-editor/CollectionEditor.d.ts +6 -5
  154. package/dist/editor/schema-editor/CollectionEditor.d.ts.map +1 -1
  155. package/dist/editor/schema-editor/CollectionEditor.js +37 -12
  156. package/dist/editor/schema-editor/CollectionEditor.js.map +1 -1
  157. package/dist/entry-link-resolver.d.ts.map +1 -1
  158. package/dist/entry-link-resolver.js +5 -0
  159. package/dist/entry-link-resolver.js.map +1 -1
  160. package/dist/git-manager.d.ts +38 -3
  161. package/dist/git-manager.d.ts.map +1 -1
  162. package/dist/git-manager.js +141 -33
  163. package/dist/git-manager.js.map +1 -1
  164. package/dist/github-service.d.ts +69 -3
  165. package/dist/github-service.d.ts.map +1 -1
  166. package/dist/github-service.js +149 -25
  167. package/dist/github-service.js.map +1 -1
  168. package/dist/http/handler.d.ts +1 -1
  169. package/dist/http/handler.d.ts.map +1 -1
  170. package/dist/http/handler.js +36 -7
  171. package/dist/http/handler.js.map +1 -1
  172. package/dist/http/router.d.ts +11 -0
  173. package/dist/http/router.d.ts.map +1 -1
  174. package/dist/http/router.js +80 -16
  175. package/dist/http/router.js.map +1 -1
  176. package/dist/paths/validation.d.ts.map +1 -1
  177. package/dist/paths/validation.js +12 -0
  178. package/dist/paths/validation.js.map +1 -1
  179. package/dist/schema/schema-store.d.ts +9 -0
  180. package/dist/schema/schema-store.d.ts.map +1 -1
  181. package/dist/schema/schema-store.js +57 -8
  182. package/dist/schema/schema-store.js.map +1 -1
  183. package/dist/services.d.ts +1 -0
  184. package/dist/services.d.ts.map +1 -1
  185. package/dist/services.js +9 -2
  186. package/dist/services.js.map +1 -1
  187. package/dist/static/index.d.ts +32 -0
  188. package/dist/static/index.d.ts.map +1 -1
  189. package/dist/static/index.js +90 -0
  190. package/dist/static/index.js.map +1 -1
  191. package/dist/sync-core.d.ts.map +1 -1
  192. package/dist/sync-core.js +22 -9
  193. package/dist/sync-core.js.map +1 -1
  194. package/dist/user.d.ts +0 -18
  195. package/dist/user.d.ts.map +1 -1
  196. package/dist/user.js +7 -22
  197. package/dist/user.js.map +1 -1
  198. package/dist/utils/error.d.ts +8 -0
  199. package/dist/utils/error.d.ts.map +1 -1
  200. package/dist/utils/error.js +35 -7
  201. package/dist/utils/error.js.map +1 -1
  202. package/dist/validation/deletion-checker.d.ts.map +1 -1
  203. package/dist/validation/deletion-checker.js +6 -5
  204. package/dist/validation/deletion-checker.js.map +1 -1
  205. package/dist/validation/entry-validator.d.ts +67 -0
  206. package/dist/validation/entry-validator.d.ts.map +1 -0
  207. package/dist/validation/entry-validator.js +277 -0
  208. package/dist/validation/entry-validator.js.map +1 -0
  209. package/dist/validation/field-traversal.d.ts +23 -1
  210. package/dist/validation/field-traversal.d.ts.map +1 -1
  211. package/dist/validation/field-traversal.js +29 -9
  212. package/dist/validation/field-traversal.js.map +1 -1
  213. package/dist/worker/cms-worker.d.ts +70 -6
  214. package/dist/worker/cms-worker.d.ts.map +1 -1
  215. package/dist/worker/cms-worker.js +199 -93
  216. package/dist/worker/cms-worker.js.map +1 -1
  217. package/package.json +2 -2
  218. package/dist/editor/components/EditorContext.d.ts +0 -35
  219. package/dist/editor/components/EditorContext.d.ts.map +0 -1
  220. package/dist/editor/components/EditorContext.js +0 -19
  221. package/dist/editor/components/EditorContext.js.map +0 -1
  222. package/dist/editor/env.d.ts +0 -5
  223. package/dist/editor/env.d.ts.map +0 -1
  224. package/dist/editor/env.js +0 -5
  225. package/dist/editor/env.js.map +0 -1
@@ -1,6 +1,8 @@
1
1
  import fs from 'node:fs/promises';
2
2
  import path from 'node:path';
3
3
  import { simpleGit, } from 'simple-git';
4
+ import { invalidateContentIndexesForRoot } from './content-index-registry.js';
5
+ import { invalidateContentIndexesDurable } from './content-index-generation.js';
4
6
  import { createDebugLogger } from './utils/debug.js';
5
7
  import { getErrorMessage, isNotFoundError } from './utils/error.js';
6
8
  import { resolveBaseBranch } from './utils/git.js';
@@ -9,6 +11,38 @@ const log = createDebugLogger({ prefix: 'GitManager' });
9
11
  // In-memory lock to prevent concurrent remote.git initialization
10
12
  // Maps remotePath -> Promise<void> to serialize access
11
13
  const remoteInitLocks = new Map();
14
+ /**
15
+ * Add a pattern to a repo's .git/info/exclude (a per-repository gitignore that
16
+ * never gets committed) so runtime metadata like .canopy-meta/ can't be staged
17
+ * by broad `git add` calls. Idempotent. Standalone so workspace-creating code
18
+ * that doesn't hold a GitManager (e.g. CLI sync auto-create) can use it too.
19
+ */
20
+ export async function ensureGitExcludePattern(repoPath, pattern) {
21
+ const excludePath = path.join(repoPath, '.git', 'info', 'exclude');
22
+ // Ensure .git/info directory exists
23
+ await fs.mkdir(path.dirname(excludePath), { recursive: true });
24
+ // Read existing exclude file (create if doesn't exist)
25
+ let content = '';
26
+ try {
27
+ content = await fs.readFile(excludePath, 'utf-8');
28
+ }
29
+ catch (err) {
30
+ if (!isNotFoundError(err))
31
+ throw err;
32
+ // File doesn't exist, will create it
33
+ }
34
+ // Check if pattern already exists (avoid duplicates)
35
+ const lines = content.split('\n');
36
+ if (lines.some((line) => line.trim() === pattern)) {
37
+ log.debug('git', 'Pattern already in .git/info/exclude', { pattern });
38
+ return;
39
+ }
40
+ // Add pattern (with newline if file is not empty and doesn't end with one)
41
+ const needsLeadingNewline = content.length > 0 && !content.endsWith('\n');
42
+ const newContent = content + (needsLeadingNewline ? '\n' : '') + pattern + '\n';
43
+ await fs.writeFile(excludePath, newContent, 'utf-8');
44
+ log.debug('git', 'Added pattern to .git/info/exclude', { pattern });
45
+ }
12
46
  export class GitConflictError extends Error {
13
47
  constructor(conflictedFiles) {
14
48
  super(`Git conflict in ${conflictedFiles.length} file(s): ${conflictedFiles.join(', ')}`);
@@ -21,6 +55,7 @@ export class GitManager {
21
55
  this.repoPath = path.resolve(options.repoPath);
22
56
  this.baseBranch = options.baseBranch ?? 'main';
23
57
  this.remote = options.remote ?? 'origin';
58
+ this.skipIndexMarker = options.skipIndexMarker ?? false;
24
59
  this.git = simpleGit({ baseDir: this.repoPath, ...gitOptions });
25
60
  // Prevent git from traversing above repoPath to find a parent .git directory.
26
61
  // If the workspace's .git is corrupt/missing, git should fail rather than
@@ -443,11 +478,13 @@ export class GitManager {
443
478
  await freshGit.addConfig('user.name', options.gitBotAuthorName);
444
479
  await freshGit.addConfig('user.email', options.gitBotAuthorEmail);
445
480
  }
446
- // 3. Create GitManager instance
481
+ // 3. Create GitManager instance. Settings (orphan) workspaces never host
482
+ // ContentStores, so they skip the on-disk content-index generation marker.
447
483
  const git = new GitManager({
448
484
  repoPath: options.workspacePath,
449
485
  baseBranch,
450
486
  remote: remoteName,
487
+ skipIndexMarker: options.branchType === 'orphan',
451
488
  });
452
489
  // 4. Ensure managed marker and fallback identity.
453
490
  // Must happen before ensureRemote (which checks the marker) and before
@@ -479,9 +516,11 @@ export class GitManager {
479
516
  }
480
517
  else {
481
518
  await git.checkoutBranch(options.branchName);
482
- // Exclude runtime metadata from git tracking on content branches.
483
- // Orphan settings branches deliberately track .canopy-meta/ payloads,
484
- // so we skip this step for them.
519
+ // Exclude runtime metadata (.canopy-meta/) from git tracking on content
520
+ // branches. Settings workspaces don't need it: their payloads live at
521
+ // the workspace root (permissions.json/groups.json) and commits there
522
+ // add explicit file paths only, so nothing under .canopy-meta/ is ever
523
+ // staged — and they skip the index marker entirely (skipIndexMarker).
485
524
  if (options.gitExcludePattern) {
486
525
  await git.ensureGitExclude(options.gitExcludePattern);
487
526
  }
@@ -498,9 +537,44 @@ export class GitManager {
498
537
  tracking: s.tracking,
499
538
  };
500
539
  }
540
+ /**
541
+ * Mark ContentStore ID indexes rooted at (or under) this repo as stale.
542
+ * Called after operations that mutate the working tree (checkout/merge/rebase) so
543
+ * ID→path lookups don't keep resolving to pre-mutation paths. Invoked in `finally`
544
+ * blocks because even failed merges/rebases may have touched the tree before
545
+ * aborting; over-invalidating is safe.
546
+ *
547
+ * Covers both scopes: in-process stores via the registry, and stores in OTHER
548
+ * processes sharing the filesystem (worker vs Lambda on EFS) via the on-disk
549
+ * generation marker — unless this manager targets a settings workspace
550
+ * (skipIndexMarker), where only the free in-process invalidation runs.
551
+ */
552
+ async invalidateContentIndexes() {
553
+ if (this.skipIndexMarker) {
554
+ invalidateContentIndexesForRoot(this.repoPath);
555
+ return;
556
+ }
557
+ await invalidateContentIndexesDurable(this.repoPath);
558
+ }
501
559
  async checkoutBranch(branch) {
560
+ try {
561
+ await this.checkoutBranchInner(branch);
562
+ }
563
+ finally {
564
+ await this.invalidateContentIndexes();
565
+ }
566
+ }
567
+ async checkoutBranchInner(branch) {
502
568
  const branches = await this.git.branch();
503
569
  if (branches.all.includes(branch)) {
570
+ // No `--`/`--end-of-options` separator here: a bare `--` switches
571
+ // `git checkout` into pathspec-restore mode instead of switching
572
+ // branches (breaking this call), and `--end-of-options` is not
573
+ // honored by `git checkout` on git versions still in the field
574
+ // (e.g. Apple's bundled git 2.39.5 treats it as a literal, unmatched
575
+ // pathspec rather than an options terminator). Safety instead relies
576
+ // on parseBranchName() rejecting a leading hyphen before `branch`
577
+ // ever reaches here.
504
578
  await this.git.checkout(branch);
505
579
  return;
506
580
  }
@@ -512,6 +586,11 @@ export class GitManager {
512
586
  // Best-effort; will fall back to local base branch below if fetch fails
513
587
  }
514
588
  try {
589
+ // `-b`/`-B` consume the very next token as their literal branch-name
590
+ // value (not subject to option re-scanning), and git independently
591
+ // rejects a leading-hyphen value there ("... is not a valid branch
592
+ // name") — verified on both a modern git and Apple's bundled git
593
+ // 2.39.5. So `branch` needs no separator here either.
515
594
  await this.git.checkoutBranch(branch, remoteRef);
516
595
  return;
517
596
  }
@@ -525,6 +604,14 @@ export class GitManager {
525
604
  }
526
605
  }
527
606
  async pullBase() {
607
+ try {
608
+ await this.pullBaseInner();
609
+ }
610
+ finally {
611
+ await this.invalidateContentIndexes();
612
+ }
613
+ }
614
+ async pullBaseInner() {
528
615
  await this.git.fetch(this.remote, this.baseBranch);
529
616
  try {
530
617
  await this.git.merge([`${this.remote}/${this.baseBranch}`]);
@@ -548,6 +635,14 @@ export class GitManager {
548
635
  }
549
636
  }
550
637
  async pullCurrentBranch() {
638
+ try {
639
+ await this.pullCurrentBranchInner();
640
+ }
641
+ finally {
642
+ await this.invalidateContentIndexes();
643
+ }
644
+ }
645
+ async pullCurrentBranchInner() {
551
646
  const branches = await this.git.branch();
552
647
  const currentBranch = branches.current;
553
648
  await this.git.fetch(this.remote, currentBranch);
@@ -570,6 +665,14 @@ export class GitManager {
570
665
  }
571
666
  }
572
667
  async rebaseOntoBase() {
668
+ try {
669
+ await this.rebaseOntoBaseInner();
670
+ }
671
+ finally {
672
+ await this.invalidateContentIndexes();
673
+ }
674
+ }
675
+ async rebaseOntoBaseInner() {
573
676
  await this.git.fetch(this.remote, this.baseBranch);
574
677
  try {
575
678
  await this.git.rebase([`${this.remote}/${this.baseBranch}`]);
@@ -600,7 +703,18 @@ export class GitManager {
600
703
  const target = branch ?? (await this.git.revparse(['--abbrev-ref', 'HEAD']));
601
704
  // Use explicit refspec (local:remote) so push works for new branches
602
705
  // that don't yet exist in the remote (e.g., orphan settings branches).
603
- await this.git.push(this.remote, `${target}:${target}`, ['--set-upstream']);
706
+ // Built via raw() (rather than the push() wrapper) so --end-of-options
707
+ // can be placed immediately before the positional remote/refspec
708
+ // arguments, guarding against a refspec starting with '-' being parsed
709
+ // as a git option (e.g. --receive-pack=...). Real flags must precede
710
+ // --end-of-options, since everything after it is treated as positional.
711
+ await this.git.raw([
712
+ 'push',
713
+ '--set-upstream',
714
+ '--end-of-options',
715
+ this.remote,
716
+ `${target}:${target}`,
717
+ ]);
604
718
  }
605
719
  async ensureAuthor(author) {
606
720
  const config = (await this.git.listConfig());
@@ -663,7 +777,8 @@ export class GitManager {
663
777
  */
664
778
  async forcePush(branch) {
665
779
  const target = branch ?? (await this.git.revparse(['--abbrev-ref', 'HEAD']));
666
- await this.git.push(this.remote, target, ['--force-with-lease']);
780
+ // See push() above for why raw() + --end-of-options is used here.
781
+ await this.git.raw(['push', '--force-with-lease', '--end-of-options', this.remote, target]);
667
782
  }
668
783
  /**
669
784
  * Get remote URL for current repo
@@ -683,30 +798,7 @@ export class GitManager {
683
798
  * This is idempotent - if the pattern already exists, it won't be added again.
684
799
  */
685
800
  async ensureGitExclude(pattern) {
686
- const excludePath = path.join(this.repoPath, '.git', 'info', 'exclude');
687
- // Ensure .git/info directory exists
688
- await fs.mkdir(path.dirname(excludePath), { recursive: true });
689
- // Read existing exclude file (create if doesn't exist)
690
- let content = '';
691
- try {
692
- content = await fs.readFile(excludePath, 'utf-8');
693
- }
694
- catch (err) {
695
- if (!isNotFoundError(err))
696
- throw err;
697
- // File doesn't exist, will create it
698
- }
699
- // Check if pattern already exists (avoid duplicates)
700
- const lines = content.split('\n');
701
- if (lines.some((line) => line.trim() === pattern)) {
702
- log.debug('git', 'Pattern already in .git/info/exclude', { pattern });
703
- return;
704
- }
705
- // Add pattern (with newline if file is not empty and doesn't end with one)
706
- const needsLeadingNewline = content.length > 0 && !content.endsWith('\n');
707
- const newContent = content + (needsLeadingNewline ? '\n' : '') + pattern + '\n';
708
- await fs.writeFile(excludePath, newContent, 'utf-8');
709
- log.debug('git', 'Added pattern to .git/info/exclude', { pattern });
801
+ await ensureGitExcludePattern(this.repoPath, pattern);
710
802
  }
711
803
  /**
712
804
  * Create an orphan branch for settings (permissions/groups).
@@ -714,22 +806,38 @@ export class GitManager {
714
806
  * Orphan branches have no shared history with other branches - they start fresh.
715
807
  * This is perfect for deployment-specific settings that shouldn't pollute content history.
716
808
  *
717
- * The branch contains only settings files in .canopy-meta/ (groups.json, permissions.json).
809
+ * The branch contains only settings files committed by explicit path
810
+ * (e.g. permissions.json, groups.json at the workspace root).
718
811
  *
719
812
  * @param branchName - Name of the orphan branch (e.g., 'canopycms-settings-prod')
720
813
  * @param initialFiles - Files to commit to the new branch (e.g., { 'permissions.json': '{}', 'groups.json': '{}' })
721
814
  */
722
815
  async createOrphanSettingsBranch(branchName, initialFiles) {
816
+ try {
817
+ await this.createOrphanSettingsBranchInner(branchName, initialFiles);
818
+ }
819
+ finally {
820
+ // Both branches of Inner swap the working tree (checkout / checkout --orphan)
821
+ await this.invalidateContentIndexes();
822
+ }
823
+ }
824
+ async createOrphanSettingsBranchInner(branchName, initialFiles) {
723
825
  log.debug('git', 'Creating orphan settings branch', { branchName });
724
826
  // Check if branch already exists
725
827
  const branches = await this.git.branch();
726
828
  if (branches.all.includes(branchName)) {
727
829
  log.debug('git', 'Orphan branch already exists', { branchName });
728
- // Checkout the existing branch
830
+ // No separator here — see checkoutBranch() above for why plain
831
+ // `git checkout <branch>` can't safely take one. branchName is always
832
+ // an internal/config-derived settings-branch name, never user input
833
+ // (see createOrphanSettingsBranch's callers).
729
834
  await this.git.checkout(branchName);
730
835
  return;
731
836
  }
732
- // Create orphan branch (--orphan creates a branch with no parent/history)
837
+ // Create orphan branch (--orphan creates a branch with no parent/history).
838
+ // branchName is consumed as --orphan's literal argument value (like -b/-B
839
+ // above), so it can't be reinterpreted as a flag; git's own ref-name
840
+ // validation additionally rejects a leading-hyphen value here.
733
841
  await this.git.raw(['checkout', '--orphan', branchName]);
734
842
  // Remove all files from index (orphan checkout keeps working tree)
735
843
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"git-manager.js","sourceRoot":"","sources":["../src/git-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-manager.js","sourceRoot":"","sources":["../src/git-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EACL,SAAS,GAKV,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,4BAA4B,CAAA;AAE5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAEnE,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAA;AAEvD,iEAAiE;AACjE,uDAAuD;AACvD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAyB,CAAA;AAExD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,QAAgB,EAAE,OAAe;IAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAElE,oCAAoC;IACpC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAE9D,uDAAuD;IACvD,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IACnD,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;YAAE,MAAM,GAAG,CAAA;QACpC,qCAAqC;IACvC,CAAC;IAED,qDAAqD;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,sCAAsC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;QACrE,OAAM;IACR,CAAC;IAED,2EAA2E;IAC3E,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,GAAG,IAAI,CAAA;IAE/E,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;IACpD,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,oCAAoC,EAAE,EAAE,OAAO,EAAE,CAAC,CAAA;AACrE,CAAC;AAiBD,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC,YAA4B,eAAyB;QACnD,KAAK,CAAC,mBAAmB,eAAe,CAAC,MAAM,aAAa,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAD/D,oBAAe,GAAf,eAAe,CAAU;QAEnD,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAA;IAChC,CAAC;CACF;AAkCD,MAAM,OAAO,UAAU;IAOrB,YAAY,OAA0B,EAAE,UAAsC;QAC5E,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM,CAAA;QAC9C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAA;QACxC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,KAAK,CAAA;QACvD,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAC,CAAA;QAC/D,8EAA8E;QAC9E,0EAA0E;QAC1E,6CAA6C;QAC7C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;IACtE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,SAAS,CACpB,SAAiB,EACjB,UAAkB,EAClB,UAAU,GAAG,MAAM;QAEnB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,oBAAoB,EAAE;YACrC,SAAS;YACT,UAAU;YACV,UAAU;SACX,CAAC,CAAA;QACF,MAAM,GAAG,GAAG,SAAS,EAAE,CAAA;QACvB,MAAM,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC,CAAA;QACnF,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;IACpC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,OAKvC;QACC,8DAA8D;QAC9D,2EAA2E;QAC3E,4EAA4E;QAC5E,yDAAyD;QACzD,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;QAC5D,IAAI,YAAY,EAAE,CAAC;YACjB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,4CAA4C,EAAE;gBAC7D,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAA;YACF,MAAM,YAAY,CAAA;QACpB,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC5E,sEAAsE;YACtE,yEAAyE;YACzE,0EAA0E;YAC1E,wBAAwB;YACxB,IAAI,WAA8C,CAAA;YAClD,IAAI,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,qCAAqC,EAAE;oBACtD,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC,CAAA;gBAEF,wEAAwE;gBACxE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;gBACrD,WAAW,GAAG,MAAM,uBAAuB,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAA;gBAE9E,8DAA8D;gBAC9D,6CAA6C;gBAC7C,IAAI,YAAY,GAAG,KAAK,CAAA;gBACxB,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;oBAC9C,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;gBACnC,CAAC;gBAAC,OAAO,GAAY,EAAE,CAAC;oBACtB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;wBAAE,MAAM,GAAG,CAAA;gBACtC,CAAC;gBAED,IACE,YAAY;oBACZ,CAAC,MAAM,UAAU,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,EAC9E,CAAC;oBACD,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,0CAA0C,CAAC,CAAA;oBAC5D,OAAM;gBACR,CAAC;gBAED,sEAAsE;gBACtE,qEAAqE;gBACrE,IAAI,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;gBAChC,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;oBAC5D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAA;oBACpE,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;gBACzB,CAAC;gBAAC,MAAM,CAAC;oBACP,qDAAqD;oBACrD,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;gBAC9B,CAAC;gBAED,MAAM,SAAS,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAA;gBAEjD,yBAAyB;gBACzB,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,MAAM,EAAE,CAAA;gBAC1B,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,KAAK,CACb,uFAAuF;wBACrF,yDAAyD,CAC5D,CAAA;gBACH,CAAC;gBAED,wBAAwB;gBACxB,IAAI,UAAU,GAAG,KAAK,CAAA;gBACtB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;oBACvC,UAAU,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;gBAC5B,CAAC;gBAAC,MAAM,CAAC;oBACP,wCAAwC;oBACxC,UAAU,GAAG,KAAK,CAAA;gBACpB,CAAC;gBAED,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,MAAM,IAAI,KAAK,CACb,uEAAuE;wBACrE,iEAAiE,CACpE,CAAA;gBACH,CAAC;gBAED,2BAA2B;gBAC3B,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAA;gBAC9C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC/C,MAAM,IAAI,KAAK,CACb,0DAA0D,OAAO,CAAC,UAAU,4BAA4B;wBACtG,oBAAoB,OAAO,CAAC,UAAU,2CAA2C,CACpF,CAAA;gBACH,CAAC;gBAED,IAAI,YAAY,EAAE,CAAC;oBACjB,yEAAyE;oBACzE,qEAAqE;oBACrE,qEAAqE;oBACrE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,iEAAiE,EAAE;wBAClF,UAAU,EAAE,OAAO,CAAC,UAAU;wBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;qBAC/B,CAAC,CAAA;gBACJ,CAAC;qBAAM,CAAC;oBACN,wEAAwE;oBACxE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,iCAAiC,CAAC,CAAA;oBACnD,MAAM,SAAS,EAAE,CAAC,GAAG,CAAC;wBACpB,MAAM;wBACN,QAAQ;wBACR,oBAAoB,OAAO,CAAC,UAAU,EAAE;wBACxC,OAAO,CAAC,UAAU;qBACnB,CAAC,CAAA;gBACJ,CAAC;gBAED,+CAA+C;gBAC/C,MAAM,UAAU,CAAC,uBAAuB,CAAC;oBACvC,SAAS;oBACT,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CAAC,CAAA;gBAEF,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAA;YACpD,CAAC;oBAAS,CAAC;gBACT,uEAAuE;gBACvE,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC;wBACH,MAAM,WAAW,EAAE,CAAA;oBACrB,CAAC;oBAAC,OAAO,GAAY,EAAE,CAAC;wBACtB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,oCAAoC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;oBACjE,CAAC;gBACH,CAAC;gBACD,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC,CAAC,CAAA;QAEF,yBAAyB;QACzB,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;QAEpD,sCAAsC;QACtC,MAAM,WAAW,CAAA;IACnB,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,UAAkB,EAAE,MAAc;QACzE,IAAI,MAAc,CAAA;QAClB,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;QACvF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,UAAU,KAAK,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC9F,CAAC;QACD,OAAO,MAAM;aACV,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;aAClD,QAAQ,CAAC,MAAM,CAAC,CAAA;IACrB,CAAC;IAED;;;;;;;;OAQG;IACK,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,OAK5C;QACC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAC7B,MAAM,cAAc,GAAG,oBAAoB,IAAI,CAAC,GAAG,EAAE,IAAI,CAAA;QACzD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;YAE7D,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;gBACzB,sEAAsE;gBACtE,2BAA2B;gBAC3B,MAAM,IAAI,GAAG,CACX,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CACpF,CAAC,IAAI,EAAE,CAAA;gBACR,MAAM,MAAM,GAAG,CACb,MAAM,SAAS,CAAC,GAAG,CAAC;oBAClB,IAAI;oBACJ,qBAAqB;oBACrB,IAAI;oBACJ,gCAAgC;oBAChC,aAAa;oBACb,IAAI;oBACJ,IAAI;oBACJ,kCAAkC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,YAAY,EAAE;iBAC/E,CAAC,CACH,CAAC,IAAI,EAAE,CAAA;gBACR,oEAAoE;gBACpE,8DAA8D;gBAC9D,MAAM,SAAS,CAAC,GAAG,CAAC;oBAClB,MAAM;oBACN,aAAa;oBACb,cAAc;oBACd,GAAG,MAAM,eAAe,OAAO,CAAC,UAAU,EAAE;iBAC7C,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,MAAM,SAAS,CAAC,GAAG,CAAC;oBAClB,MAAM;oBACN,aAAa;oBACb,cAAc;oBACd,GAAG,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,EAAE;iBAC9C,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC,CAAA;YAC9C,CAAC;YAAC,MAAM,CAAC;gBACP,wBAAwB;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW;QACtB,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YACjD,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAA;YAC9D,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;QAC1C,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,QAAgB;QACjD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAA;YACvD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,EAAE,CAAC,CAAA;YACrD,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,OAAgC;QAC5D,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAA;QAC9D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,kBAAkB,EAAE,CAAA;QAE5C,gEAAgE;QAChE,IAAI,OAAO,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC,SAAS,CAAA;QAC/C,IAAI,OAAO,CAAC,gBAAgB;YAAE,OAAO,OAAO,CAAC,gBAAgB,CAAA;QAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAEzE,8EAA8E;QAC9E,oDAAoD;QACpD,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAA;gBACvD,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,4BAA4B,EAAE;wBAC7C,IAAI,EAAE,MAAM,CAAC,oBAAoB;qBAClC,CAAC,CAAA;oBACF,OAAO,MAAM,CAAC,oBAAoB,CAAA;gBACpC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,4DAA4D;YAC9D,CAAC;QACH,CAAC;QAED,iDAAiD;QACjD,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;YACxC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;YACrC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;YAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAA;YAEvE,MAAM,IAAI,CAAC,0BAA0B,CAAC;gBACpC,UAAU,EAAE,eAAe;gBAC3B,UAAU,EAAE,OAAO;gBACnB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,YAAY,EAAE,UAAU;aACzB,CAAC,CAAA;YAEF,OAAO,eAAe,CAAA;QACxB,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,OAAmC;QAClE,2EAA2E;QAC3E,uDAAuD;QACvD,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC;YACzC,iBAAiB,EAAE,OAAO,CAAC,UAAU;YACrC,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC5B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC;gBACjD,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;SAClB,CAAC,CAAA;QACF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,QAAQ,CAAA;QAEjD,kEAAkE;QAClE,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;YAC9D,2EAA2E;YAC3E,QAAQ,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAA;YAC5E,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAA;YAC9C,UAAU,GAAG,IAAI,CAAA;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,+EAA+E;YAC/E,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;YACxD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACnC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,iCAAiC,EAAE;wBAClD,aAAa,EAAE,OAAO,CAAC,aAAa;qBACrC,CAAC,CAAA;oBACF,MAAM,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC3C,CAAC;YACH,CAAC;YAAC,OAAO,UAAmB,EAAE,CAAC;gBAC7B,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC;oBAAE,MAAM,UAAU,CAAA;YACpD,CAAC;QACH,CAAC;QAED,qBAAqB;QACrB,IAAI,UAAU,GAAG,KAAK,CAAA;QACtB,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,gDAAgD;YAChD,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC;gBAClD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,UAAU;gBACV,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAA;YAEF,gCAAgC;YAChC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,2FAA2F,CAC5F,CAAA;YACH,CAAC;YAED,8DAA8D;YAC9D,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;YAC1E,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,0EAA0E;gBAC1E,iEAAiE;gBACjE,MAAM,IAAI,KAAK,CACb,uCAAuC,OAAO,CAAC,aAAa,GAAG;oBAC7D,QAAQ,SAAS,kBAAkB,UAAU,OAAO,eAAe,CAAC,GAAG,CAAC,EAAE,CAC7E,CAAA;YACH,CAAC;YACD,UAAU,GAAG,IAAI,CAAA;YAEjB,uEAAuE;YACvE,uEAAuE;YACvE,8EAA8E;YAC9E,kFAAkF;YAClF,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;YAC9D,QAAQ,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAA;YAC5E,MAAM,QAAQ,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;YACrD,MAAM,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;YAC/D,MAAM,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;QACnE,CAAC;QAED,yEAAyE;QACzE,2EAA2E;QAC3E,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC;YACzB,QAAQ,EAAE,OAAO,CAAC,aAAa;YAC/B,UAAU;YACV,MAAM,EAAE,UAAU;YAClB,eAAe,EAAE,OAAO,CAAC,UAAU,KAAK,QAAQ;SACjD,CAAC,CAAA;QAEF,kDAAkD;QAClD,uEAAuE;QACvE,kEAAkE;QAClE,6DAA6D;QAC7D,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAA;QACpD,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;QAC9D,MAAM,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;QAChE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,uCAAuC,EAAE;YACxD,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAA;QAEF,uDAAuD;QACvD,8CAA8C;QAC9C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,gBAAgB,CAAC;gBAClD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;gBAC1C,UAAU;gBACV,UAAU,EAAE,OAAO,CAAC,UAAU;aAC/B,CAAC,CAAA;YACF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,GAAG,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YACnC,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,OAAO,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,GAAG,CAAC,0BAA0B,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAA;QAC9D,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;YAC5C,wEAAwE;YACxE,sEAAsE;YACtE,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAA;YACvD,CAAC;QACH,CAAC;QAED,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,KAAK,CAAC,MAAM;QACV,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;QACjC,OAAO;YACL,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,MAAM,EAAE,CAAC,CAAC,MAAM;YAChB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAA;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,KAAK,CAAC,wBAAwB;QACpC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,+BAA+B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC9C,OAAM;QACR,CAAC;QACD,MAAM,+BAA+B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACtD,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,MAAc;QACjC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;QACxC,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,MAAc;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;QACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAClC,kEAAkE;YAClE,iEAAiE;YACjE,+DAA+D;YAC/D,+DAA+D;YAC/D,qEAAqE;YACrE,qEAAqE;YACrE,kEAAkE;YAClE,qBAAqB;YACrB,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC/B,OAAM;QACR,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAA;QACrD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QACpD,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;QAC1E,CAAC;QACD,IAAI,CAAC;YACH,qEAAqE;YACrE,mEAAmE;YACnE,mEAAmE;YACnE,iEAAiE;YACjE,sDAAsD;YACtD,MAAM,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAChD,OAAM;QACR,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACzD,IAAI,UAAU,EAAE,CAAC;gBACf,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;gBACxD,OAAM;YACR,CAAC;YACD,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA;QAC5C,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa;QACzB,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAClD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,4EAA4E;YAC5E,2EAA2E;YAC3E,oEAAoE;YACpE,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;gBACtC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;gBACjD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YACjF,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,IAAI,WAAW,YAAY,gBAAgB;oBAAE,MAAM,WAAW,CAAA;gBAC9D,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACnD,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACrC,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,sBAAsB;QAClC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;QACxC,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAA;QACtC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;QAChD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,aAAa,EAAE,CAAC,CAAC,CAAA;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;gBACtC,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;gBACjD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YACjF,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,IAAI,WAAW,YAAY,gBAAgB;oBAAE,MAAM,WAAW,CAAA;gBAC9D,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACnD,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAClC,CAAC;gBAAS,CAAC;YACT,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,MAAM,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;QAClD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;QAC9D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;gBACtC,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;gBAClD,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;oBAAE,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YACjF,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,IAAI,WAAW,YAAY,gBAAgB;oBAAE,MAAM,WAAW,CAAA;gBAC9D,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;YACpD,CAAC;YACD,MAAM,GAAG,CAAA;QACX,CAAC;IACH,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAwB;QAChC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QACxD,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QAC1B,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAe;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;QAC5E,qEAAqE;QACrE,uEAAuE;QACvE,uEAAuE;QACvE,iEAAiE;QACjE,uEAAuE;QACvE,qEAAqE;QACrE,wEAAwE;QACxE,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YACjB,MAAM;YACN,gBAAgB;YAChB,kBAAkB;YAClB,IAAI,CAAC,MAAM;YACX,GAAG,MAAM,IAAI,MAAM,EAAE;SACtB,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAuC;QACxD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAsB,CAAA;QAEjE,qEAAqE;QACrE,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,MAAM,CAAA;QAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,wDAAwD,IAAI,CAAC,QAAQ,KAAK;gBACxE,iFAAiF;gBACjF,6FAA6F,CAChG,CAAA;QACH,CAAC;QAED,sBAAsB;QACtB,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QAC3C,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;QAC7C,IAAI,WAAW,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QACpD,CAAC;QACD,IAAI,YAAY,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAA;QACtD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,SAAiB;QAClC,uEAAuE;QACvE,kEAAkE;QAClE,wDAAwD;QACxD,MAAM,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAsB,CAAA;QACjE,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,KAAK,MAAM,CAAA;QAC5D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,mDAAmD,IAAI,CAAC,QAAQ,KAAK;gBACnE,0DAA0D;gBAC1D,iCAAiC,CACpC,CAAA;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAA;QAC5D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAChD,OAAM;QACR,CAAC;QACD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAA;QAC5D,IAAI,UAAU,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC3C,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;QAC5D,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAA;QAClC,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAA;IAChC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAA;QAClC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,MAAe;QAC7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;QAC5E,kEAAkE;QAClE,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAC7F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,CAAA;QAC1D,OAAO,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,MAAM,EAAE,IAAI,CAAC,KAAK,CAAA;IAChD,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe;QACpC,MAAM,uBAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACvD,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,0BAA0B,CAC9B,UAAkB,EAClB,YAAoC;QAEpC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,+BAA+B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;QACtE,CAAC;gBAAS,CAAC;YACT,8EAA8E;YAC9E,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAA;QACvC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,+BAA+B,CAC3C,UAAkB,EAClB,YAAoC;QAEpC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,iCAAiC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;QAEnE,iCAAiC;QACjC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAA;QACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,8BAA8B,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;YAChE,+DAA+D;YAC/D,sEAAsE;YACtE,oEAAoE;YACpE,8CAA8C;YAC9C,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;YACnC,OAAM;QACR,CAAC;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,qEAAqE;QACrE,+DAA+D;QAC/D,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;QAExD,mEAAmE;QACnE,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC,CAAA;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,uDAAuD;QACzD,CAAC;QAED,sBAAsB;QACtB,KAAK,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;YACvD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAC/D,MAAM,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAClD,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC9B,CAAC;QAED,uBAAuB;QACvB,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,4BAA4B,EAAE,CAAC,eAAe,CAAC,CAAC,CAAA;QAEtE,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,gCAAgC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;IACpE,CAAC;CACF"}
@@ -1,4 +1,28 @@
1
+ import { Octokit } from '@octokit/rest';
1
2
  import type { CanopyConfig } from './config';
3
+ /**
4
+ * Retry primary rate limits at most twice and only for short waits; beyond
5
+ * that, task-level retry/backoff (worker) or the caller's error path takes
6
+ * over. The worker's task timeout would abort a longer in-request wait
7
+ * anyway.
8
+ */
9
+ export declare const shouldRetryRateLimit: (retryAfter: number, retryCount: number) => boolean;
10
+ /**
11
+ * Secondary (abuse-detection) rate limits are stricter to trip and usually
12
+ * signal we're hammering the API too fast — retry at most once, and only for
13
+ * a short wait.
14
+ */
15
+ export declare const shouldRetrySecondaryRateLimit: (retryAfter: number, retryCount: number) => boolean;
16
+ /**
17
+ * Create an Octokit instance with the throttling plugin attached, so it
18
+ * proactively respects GitHub's `retry-after` guidance on rate limits
19
+ * instead of failing immediately (see cms-worker.ts isPermanentTaskFailure
20
+ * for the safety net this doesn't cover: exhausted plugin retries and
21
+ * errors the plugin never sees, like non-403 network failures).
22
+ */
23
+ export declare function createCanopyOctokit(options: {
24
+ auth: string;
25
+ }): Octokit;
2
26
  export interface GitHubServiceOptions {
3
27
  token: string;
4
28
  owner: string;
@@ -18,6 +42,39 @@ export interface PullRequestDetails {
18
42
  merged: boolean;
19
43
  draft: boolean;
20
44
  }
45
+ export interface CreateOrUpdatePullRequestParams {
46
+ octokit: Octokit;
47
+ owner: string;
48
+ repo: string;
49
+ head: string;
50
+ base: string;
51
+ title: string;
52
+ body: string;
53
+ /** Convert a pre-existing draft PR to ready-for-review after updating it. */
54
+ markReadyIfDraft?: boolean;
55
+ /** Forwarded to all GitHub requests (worker task-timeout abort). */
56
+ signal?: AbortSignal;
57
+ }
58
+ /**
59
+ * Create or update a pull request (idempotent — GIT-H1).
60
+ *
61
+ * If an open PR already exists from head to base, update it and return its
62
+ * number/url instead of erroring. This makes PR submission safely
63
+ * retryable: if a caller crashes after GitHub creates the PR but before it
64
+ * persists the returned PR number, calling this again recovers the
65
+ * existing PR instead of hitting the 422 that a blind create would throw on
66
+ * a duplicate, which previously wedged the branch in 'sync-failed'
67
+ * permanently.
68
+ *
69
+ * Shared by `GitHubService.createOrUpdatePR` (direct-API callers) and the
70
+ * worker's `push-and-create-or-update-pr` task, so the list->tiebreak->
71
+ * update/create logic and the draft->ready conversion live in one place.
72
+ */
73
+ export declare function createOrUpdatePullRequest(params: CreateOrUpdatePullRequestParams): Promise<{
74
+ number: number;
75
+ url: string;
76
+ created: boolean;
77
+ }>;
21
78
  /**
22
79
  * Service for interacting with GitHub API (pull requests, branches, etc.)
23
80
  */
@@ -39,15 +96,24 @@ export declare class GitHubService {
39
96
  */
40
97
  updatePullRequest(prNumber: number, options: Partial<Pick<PullRequestOptions, 'title' | 'body'>>): Promise<void>;
41
98
  /**
42
- * Create or update a pull request
43
- * If a PR already exists from head to base, update it. Otherwise, create a new one.
99
+ * Create or update a pull request (idempotent — GIT-H1).
100
+ *
101
+ * Thin delegate to the module-level `createOrUpdatePullRequest` helper
102
+ * (shared with the worker's `push-and-create-or-update-pr` task) bound to
103
+ * this instance's octokit/owner/repo. See that function's doc comment for
104
+ * the idempotency rationale.
44
105
  */
45
106
  createOrUpdatePR(options: {
46
107
  head: string;
47
108
  base: string;
48
109
  title: string;
49
110
  body: string;
50
- }): Promise<string>;
111
+ /** Convert a pre-existing draft PR to ready-for-review after updating it. */
112
+ markReadyIfDraft?: boolean;
113
+ }): Promise<{
114
+ number: number;
115
+ url: string;
116
+ }>;
51
117
  /**
52
118
  * Get pull request details
53
119
  */
@@ -1 +1 @@
1
- {"version":3,"file":"github-service.d.ts","sourceRoot":"","sources":["../src/github-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAG5C,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAA;IACxB,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,OAAO,CAAA;CACf;AAED;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,UAAU,CAAQ;gBAEd,OAAO,EAAE,oBAAoB;IAOzC;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAiB9F;;OAEG;IACG,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC,GAC3D,OAAO,CAAC,IAAI,CAAC;IAUhB;;;OAGG;IACG,gBAAgB,CAAC,OAAO,EAAE;QAC9B,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,IAAI,EAAE,MAAM,CAAA;KACb,GAAG,OAAO,CAAC,MAAM,CAAC;IAmCnB;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgBnE;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrD;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrD;;OAEG;IACG,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASvD;;OAEG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrD;;OAEG;YACW,oBAAoB;IASlC;;;;;;;OAOG;IACH,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CA4B1E;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAC9B,QAAQ,YAAY,EACpB,YAAY,MAAM,KACjB,aAAa,GAAG,IAmClB,CAAA"}
1
+ {"version":3,"file":"github-service.d.ts","sourceRoot":"","sources":["../src/github-service.ts"],"names":[],"mappings":"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"}