@plurnk/plurnk-service 1.0.5 → 1.0.6

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 (201) hide show
  1. package/.env.defaults +55 -31
  2. package/INSTALL.md +3 -3
  3. package/README.md +4 -4
  4. package/SPEC.md +204 -192
  5. package/dist/Paths.js +1 -1
  6. package/dist/Paths.js.map +1 -1
  7. package/dist/core/ChannelWrite.d.ts +18 -18
  8. package/dist/core/ChannelWrite.d.ts.map +1 -1
  9. package/dist/core/ChannelWrite.js +17 -17
  10. package/dist/core/ChannelWrite.js.map +1 -1
  11. package/dist/core/ChannelWrite.sql +11 -11
  12. package/dist/core/Dispatcher.d.ts +11 -11
  13. package/dist/core/Dispatcher.d.ts.map +1 -1
  14. package/dist/core/Dispatcher.js +122 -124
  15. package/dist/core/Dispatcher.js.map +1 -1
  16. package/dist/core/Engine.d.ts +20 -23
  17. package/dist/core/Engine.d.ts.map +1 -1
  18. package/dist/core/Engine.js +207 -183
  19. package/dist/core/Engine.js.map +1 -1
  20. package/dist/core/Engine.sql +106 -109
  21. package/dist/core/PacketBuilder.d.ts +9 -9
  22. package/dist/core/PacketBuilder.d.ts.map +1 -1
  23. package/dist/core/PacketBuilder.js +183 -115
  24. package/dist/core/PacketBuilder.js.map +1 -1
  25. package/dist/core/ProposalLifecycle.d.ts +8 -8
  26. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  27. package/dist/core/ProposalLifecycle.js +10 -10
  28. package/dist/core/ProposalLifecycle.js.map +1 -1
  29. package/dist/core/ProviderInstantiate.d.ts +1 -0
  30. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  31. package/dist/core/ProviderInstantiate.js +9 -3
  32. package/dist/core/ProviderInstantiate.js.map +1 -1
  33. package/dist/core/SchemeRegistry.d.ts +4 -1
  34. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  35. package/dist/core/SchemeRegistry.js +18 -9
  36. package/dist/core/SchemeRegistry.js.map +1 -1
  37. package/dist/core/TelemetryChannel.d.ts +5 -5
  38. package/dist/core/TelemetryChannel.d.ts.map +1 -1
  39. package/dist/core/TelemetryChannel.js +9 -9
  40. package/dist/core/TelemetryChannel.js.map +1 -1
  41. package/dist/core/caps/CapsResolve.js +2 -2
  42. package/dist/core/caps/CapsResolve.js.map +1 -1
  43. package/dist/core/caps/DbNotifyCaps.js +2 -2
  44. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  45. package/dist/core/caps/DbSubscriptionCaps.js +7 -7
  46. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  47. package/dist/core/caps/SchemeCtxImpl.d.ts +2 -2
  48. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  49. package/dist/core/caps/SchemeCtxImpl.js +4 -4
  50. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  51. package/dist/core/fork.d.ts +1 -1
  52. package/dist/core/fork.d.ts.map +1 -1
  53. package/dist/core/fork.js +31 -26
  54. package/dist/core/fork.js.map +1 -1
  55. package/dist/core/fork.sql +41 -32
  56. package/dist/core/git-env.d.ts.map +1 -1
  57. package/dist/core/git-env.js +23 -7
  58. package/dist/core/git-env.js.map +1 -1
  59. package/dist/core/git-iso.d.ts +9 -0
  60. package/dist/core/git-iso.d.ts.map +1 -0
  61. package/dist/core/git-iso.js +227 -0
  62. package/dist/core/git-iso.js.map +1 -0
  63. package/dist/core/git-membership.d.ts +2 -2
  64. package/dist/core/git-membership.d.ts.map +1 -1
  65. package/dist/core/git-membership.js +70 -50
  66. package/dist/core/git-membership.js.map +1 -1
  67. package/dist/core/git-state.d.ts +1 -1
  68. package/dist/core/git-state.d.ts.map +1 -1
  69. package/dist/core/git-state.js +21 -11
  70. package/dist/core/git-state.js.map +1 -1
  71. package/dist/core/packet-wire.d.ts.map +1 -1
  72. package/dist/core/packet-wire.js +81 -22
  73. package/dist/core/packet-wire.js.map +1 -1
  74. package/dist/core/plurnk-uri.d.ts +2 -2
  75. package/dist/core/plurnk-uri.d.ts.map +1 -1
  76. package/dist/core/plurnk-uri.js +19 -12
  77. package/dist/core/plurnk-uri.js.map +1 -1
  78. package/dist/core/run-ops.sql +26 -26
  79. package/dist/core/scheme-types.d.ts +6 -6
  80. package/dist/core/scheme-types.d.ts.map +1 -1
  81. package/dist/core/search-gate.js +0 -0
  82. package/dist/core/search-gate.js.map +1 -1
  83. package/dist/core/token-ruler.js +2 -2
  84. package/dist/core/token-ruler.js.map +1 -1
  85. package/dist/core/worker-cap.d.ts +8 -0
  86. package/dist/core/worker-cap.d.ts.map +1 -0
  87. package/dist/core/worker-cap.js +20 -0
  88. package/dist/core/worker-cap.js.map +1 -0
  89. package/dist/core/{session-settings.d.ts → workspace-settings.d.ts} +5 -5
  90. package/dist/core/workspace-settings.d.ts.map +1 -0
  91. package/dist/core/{session-settings.js → workspace-settings.js} +13 -13
  92. package/dist/core/workspace-settings.js.map +1 -0
  93. package/dist/digest/Digest.d.ts +3 -3
  94. package/dist/digest/Digest.d.ts.map +1 -1
  95. package/dist/digest/Digest.js +79 -73
  96. package/dist/digest/Digest.js.map +1 -1
  97. package/dist/digest/digest.sql +18 -18
  98. package/dist/schemes/Exec.d.ts +9 -2
  99. package/dist/schemes/Exec.d.ts.map +1 -1
  100. package/dist/schemes/Exec.js +121 -68
  101. package/dist/schemes/Exec.js.map +1 -1
  102. package/dist/schemes/ExecOutputScheme.js +3 -3
  103. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  104. package/dist/schemes/File.js +23 -23
  105. package/dist/schemes/File.js.map +1 -1
  106. package/dist/schemes/Known.js +5 -5
  107. package/dist/schemes/Known.js.map +1 -1
  108. package/dist/schemes/Log.d.ts.map +1 -1
  109. package/dist/schemes/Log.js +63 -14
  110. package/dist/schemes/Log.js.map +1 -1
  111. package/dist/schemes/Log.sql +49 -8
  112. package/dist/schemes/Plurnk.js +5 -5
  113. package/dist/schemes/Plurnk.js.map +1 -1
  114. package/dist/schemes/Skill.js +5 -5
  115. package/dist/schemes/Skill.js.map +1 -1
  116. package/dist/schemes/Unknown.js +5 -5
  117. package/dist/schemes/Unknown.js.map +1 -1
  118. package/dist/schemes/{Run.d.ts → Worker.d.ts} +2 -2
  119. package/dist/schemes/Worker.d.ts.map +1 -0
  120. package/dist/schemes/{Run.js → Worker.js} +67 -67
  121. package/dist/schemes/Worker.js.map +1 -0
  122. package/dist/schemes/_entry-crud.js +8 -8
  123. package/dist/schemes/_entry-crud.js.map +1 -1
  124. package/dist/schemes/_entry-crud.sql +29 -29
  125. package/dist/schemes/_entry-find.d.ts +2 -1
  126. package/dist/schemes/_entry-find.d.ts.map +1 -1
  127. package/dist/schemes/_entry-find.js +31 -19
  128. package/dist/schemes/_entry-find.js.map +1 -1
  129. package/dist/schemes/_entry-find.sql +9 -9
  130. package/dist/schemes/_entry-graph.d.ts +2 -2
  131. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  132. package/dist/schemes/_entry-graph.js +18 -18
  133. package/dist/schemes/_entry-graph.js.map +1 -1
  134. package/dist/schemes/_entry-graph.sql +8 -8
  135. package/dist/schemes/_entry-manifest.d.ts +1 -1
  136. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  137. package/dist/schemes/_entry-manifest.js +72 -28
  138. package/dist/schemes/_entry-manifest.js.map +1 -1
  139. package/dist/schemes/_entry-ops.d.ts +4 -4
  140. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  141. package/dist/schemes/_entry-ops.js +25 -25
  142. package/dist/schemes/_entry-ops.js.map +1 -1
  143. package/dist/schemes/_entry-ops.sql +9 -9
  144. package/dist/schemes/_entry-semantic.d.ts +2 -1
  145. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  146. package/dist/schemes/_entry-semantic.js +23 -4
  147. package/dist/schemes/_entry-semantic.js.map +1 -1
  148. package/dist/schemes/_entry-semantic.sql +18 -4
  149. package/dist/schemes/_entry-send.d.ts +1 -1
  150. package/dist/schemes/_entry-send.d.ts.map +1 -1
  151. package/dist/schemes/_entry-send.js +6 -6
  152. package/dist/schemes/_entry-send.js.map +1 -1
  153. package/dist/schemes/exec-abort.js +1 -1
  154. package/dist/schemes/exec-abort.js.map +1 -1
  155. package/dist/server/Daemon.d.ts +48 -48
  156. package/dist/server/Daemon.d.ts.map +1 -1
  157. package/dist/server/Daemon.js +285 -291
  158. package/dist/server/Daemon.js.map +1 -1
  159. package/dist/server/client-input.js +20 -20
  160. package/dist/server/client-input.js.map +1 -1
  161. package/dist/server/dispatch-as-plurnk.d.ts +1 -1
  162. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  163. package/dist/server/dispatch-as-plurnk.js +7 -7
  164. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  165. package/dist/server/drain.sql +27 -27
  166. package/dist/server/envelope.d.ts +20 -20
  167. package/dist/server/envelope.d.ts.map +1 -1
  168. package/dist/server/envelope.js +86 -86
  169. package/dist/server/envelope.js.map +1 -1
  170. package/dist/server/envelope.sql +39 -39
  171. package/dist/server/logEntry.d.ts +1 -1
  172. package/dist/server/logEntry.d.ts.map +1 -1
  173. package/dist/server/logEntry.js +1 -1
  174. package/dist/server/logEntry.js.map +1 -1
  175. package/dist/server/loopDocs.d.ts +1 -1
  176. package/dist/server/loopDocs.d.ts.map +1 -1
  177. package/dist/server/loopDocs.js +6 -6
  178. package/dist/server/loopDocs.js.map +1 -1
  179. package/dist/server/seam-entry-read.sql +2 -2
  180. package/dist/server/seam-log-read.sql +3 -3
  181. package/dist/server/seam-loop.sql +3 -3
  182. package/dist/server/seam-proposal-list.sql +4 -4
  183. package/dist/server/yolo.js +2 -2
  184. package/dist/server/yolo.js.map +1 -1
  185. package/dist/service.d.ts.map +1 -1
  186. package/dist/service.js +21 -6
  187. package/dist/service.js.map +1 -1
  188. package/migrations/0000-00-00.01_schema.sql +82 -70
  189. package/package.json +17 -14
  190. package/dist/core/run-cap.d.ts +0 -8
  191. package/dist/core/run-cap.d.ts.map +0 -1
  192. package/dist/core/run-cap.js +0 -20
  193. package/dist/core/run-cap.js.map +0 -1
  194. package/dist/core/search-prefetch.d.ts +0 -17
  195. package/dist/core/search-prefetch.d.ts.map +0 -1
  196. package/dist/core/search-prefetch.js +0 -164
  197. package/dist/core/search-prefetch.js.map +0 -1
  198. package/dist/core/session-settings.d.ts.map +0 -1
  199. package/dist/core/session-settings.js.map +0 -1
  200. package/dist/schemes/Run.d.ts.map +0 -1
  201. package/dist/schemes/Run.js.map +0 -1
@@ -0,0 +1,227 @@
1
+ // The in-process git READ backend (#461/#463, isomorphic-git + the `ignore` lib) — the portable
2
+ // default behind every core git read. No subprocess, and hermetic BY CONSTRUCTION: isomorphic-git
3
+ // takes an explicit `dir` and never reads GIT_* env, ~/.gitconfig, or the system config, so the
4
+ // escape class hermeticGitEnv scrubs on the native path (#401/#428) cannot exist here. A sandboxed
5
+ // or git-less host gets identical membership + telemetry. `PLURNK_SERVICE_GIT_NATIVE=1` routes the
6
+ // callers (GitMembership, GitState) to system git instead — the membership pass measures ~8x native
7
+ // (~130ms at 20k files); the status read is pure-JS workdir hashing (statusMatrix, ~55x), the
8
+ // flag's main case on a large repo.
9
+ import git, { STAGE } from "isomorphic-git";
10
+ import fs from "node:fs";
11
+ import ignore from "ignore";
12
+ import { readdir, readFile } from "node:fs/promises";
13
+ import { existsSync } from "node:fs";
14
+ import { join } from "node:path";
15
+ export default class GitIso {
16
+ // One STAGE walk serves both member classes: `blob` entries are the tracked files
17
+ // (parity with `ls-files --stage` sans mode-160000), `commit` entries are submodule
18
+ // gitlinks — repo boundaries the untracked scan must never descend. Memoized on the
19
+ // caller's per-pass cache: trackedFiles + untrackedFiles in one membership pass share
20
+ // one walk, and the cache dies with the pass, so a rewritten index can't serve stale.
21
+ static #stageMemo = new WeakMap();
22
+ static #stageEntries(root, cache) {
23
+ let perCache = GitIso.#stageMemo.get(cache);
24
+ if (perCache === undefined) {
25
+ perCache = new Map();
26
+ GitIso.#stageMemo.set(cache, perCache);
27
+ }
28
+ let entry = perCache.get(root);
29
+ if (entry === undefined) {
30
+ entry = GitIso.#stageWalk(root, cache);
31
+ perCache.set(root, entry);
32
+ }
33
+ return entry;
34
+ }
35
+ static async #stageWalk(root, cache) {
36
+ const blobs = [];
37
+ const gitlinks = [];
38
+ await git.walk({
39
+ fs, dir: root, cache, trees: [STAGE()],
40
+ // Explicit param types (#469): a TS7031 fired on a box whose inference didn't flow the
41
+ // WalkerMap contextual type into the destructured param — annotate, never rely on it.
42
+ map: async (filepath, [stage]) => {
43
+ if (filepath === "." || stage === null)
44
+ return undefined;
45
+ const type = await stage.type();
46
+ if (type === "blob")
47
+ blobs.push(filepath);
48
+ if (type === "commit")
49
+ gitlinks.push(filepath);
50
+ return undefined;
51
+ },
52
+ });
53
+ return { blobs, gitlinks };
54
+ }
55
+ // Tracked files, workspace-relative — parity with `git ls-files --stage -z` + the gitlink
56
+ // filter: only blob entries (files + symlinks) are members; a `commit` entry is a submodule
57
+ // boundary (a separate declared repo) and a `tree` is walk hierarchy, never a file.
58
+ static async trackedFiles(root, cache) {
59
+ return (await GitIso.#stageEntries(root, cache)).blobs;
60
+ }
61
+ // Untracked-but-not-ignored files — parity with `git ls-files --others --exclude-standard`,
62
+ // differential-gated against it across the gitignore edge-case corpus (#463). A pruning
63
+ // fs-walk with the `ignore` lib: rules load ONCE per .gitignore (per-file `git.isIgnored`
64
+ // re-parses every call — measured 237x native; statusMatrix hashes the workdir — 55x, and
65
+ // crosses embedded-repo boundaries; the whole membership pass measures ~8x). Precedence is
66
+ // git's: `.git/info/exclude` lowest, then .gitignore
67
+ // root→deep, deeper opinions winning for their subtree. An ignored DIRECTORY is pruned
68
+ // whole (git: no re-include under an excluded dir — while `dir/**` glob patterns leave the
69
+ // dir itself unignored, so their re-includes work). Submodule gitlinks are never descended,
70
+ // and a directory carrying its own `.git` (an embedded plain repo) is a boundary listed as
71
+ // the single entry `dir/`, exactly as native does.
72
+ static async untrackedFiles(root, cache) {
73
+ const { blobs, gitlinks } = await GitIso.#stageEntries(root, cache);
74
+ const tracked = new Set(blobs);
75
+ const boundaries = new Set(gitlinks);
76
+ // Matchers in precedence order; each carries the dir it applies to ("" = root).
77
+ const matchers = [];
78
+ const excludes = await GitIso.#infoExclude(root);
79
+ if (excludes !== null)
80
+ matchers.push({ base: "", ig: ignore().add(excludes) });
81
+ const ignored = (rel, isDir) => {
82
+ let verdict = false;
83
+ for (const { base, ig } of matchers) {
84
+ if (base.length > 0 && !rel.startsWith(`${base}/`))
85
+ continue;
86
+ const local = base.length > 0 ? rel.slice(base.length + 1) : rel;
87
+ const t = ig.test(isDir ? `${local}/` : local);
88
+ if (t.ignored)
89
+ verdict = true;
90
+ else if (t.unignored)
91
+ verdict = false;
92
+ }
93
+ return verdict;
94
+ };
95
+ const untracked = [];
96
+ const walkDir = async (rel) => {
97
+ const gi = join(root, rel, ".gitignore");
98
+ const depth = matchers.length;
99
+ if (existsSync(gi))
100
+ matchers.push({ base: rel, ig: ignore().add(await readFile(gi, "utf8")) });
101
+ for (const entry of await readdir(join(root, rel), { withFileTypes: true })) {
102
+ if (entry.name === ".git")
103
+ continue;
104
+ const r = rel.length > 0 ? `${rel}/${entry.name}` : entry.name;
105
+ if (boundaries.has(r))
106
+ continue; // submodule — a separate declared repo
107
+ const isDir = entry.isDirectory();
108
+ if (ignored(r, isDir))
109
+ continue; // pruned: ignored dirs are never descended
110
+ if (isDir) {
111
+ // An embedded plain repo (its own .git, no gitlink) is a boundary too:
112
+ // native lists it as the one entry `dir/` and never claims its files.
113
+ if (existsSync(join(root, r, ".git"))) {
114
+ untracked.push(`${r}/`);
115
+ continue;
116
+ }
117
+ await walkDir(r);
118
+ }
119
+ else if (!tracked.has(r)) {
120
+ untracked.push(r);
121
+ }
122
+ }
123
+ matchers.length = depth; // leaving the dir pops its .gitignore
124
+ };
125
+ await walkDir("");
126
+ return untracked;
127
+ }
128
+ // `.git/info/exclude`, linked-worktree-aware: a worktree's `.git` is a FILE pointing at
129
+ // the per-worktree gitdir, whose `commondir` names the shared gitdir where info/exclude
130
+ // actually lives. Absent at any step → null (no exclude rules).
131
+ static async #infoExclude(root) {
132
+ try {
133
+ let gitdir = join(root, ".git");
134
+ if ((await fs.promises.stat(gitdir)).isFile()) {
135
+ const pointer = (await readFile(gitdir, "utf8")).trim();
136
+ if (!pointer.startsWith("gitdir:"))
137
+ return null;
138
+ gitdir = pointer.slice("gitdir:".length).trim();
139
+ }
140
+ const commondir = join(gitdir, "commondir");
141
+ if (existsSync(commondir))
142
+ gitdir = join(gitdir, (await readFile(commondir, "utf8")).trim());
143
+ return await readFile(join(gitdir, "info/exclude"), "utf8");
144
+ }
145
+ catch {
146
+ return null;
147
+ }
148
+ }
149
+ // The enclosing worktree root of a directory — parity with `git rev-parse --show-toplevel`,
150
+ // linked worktrees + submodules included (findRoot accepts a `.git` FILE — the gitdir
151
+ // pointer — as readily as a directory). Not inside any git tree → null.
152
+ static async repoToplevel(dir) {
153
+ try {
154
+ return await git.findRoot({ fs, filepath: dir });
155
+ }
156
+ catch {
157
+ return null; // not a git tree (or the dir is gone) — contributes nothing
158
+ }
159
+ }
160
+ // Working-tree status — parity with `git status --porcelain --branch`: branch, ahead/behind
161
+ // the configured upstream, and staged/unstaged/untracked counts. Throws on a non-repo /
162
+ // unborn-HEAD root (no commit yet); the caller maps that to null = no telemetry, the same
163
+ // fail-closed contract the native arm's catch applies.
164
+ static async status(root) {
165
+ const cache = {};
166
+ const branch = await git.currentBranch({ fs, dir: root, fullname: false }) ?? "HEAD"; // detached → HEAD, as porcelain renders it
167
+ const matrix = await git.statusMatrix({ fs, dir: root, cache });
168
+ let staged = 0;
169
+ let unstaged = 0;
170
+ let untracked = 0;
171
+ for (const [, head, workdir, stage] of matrix) {
172
+ if (head === 0 && stage === 0 && workdir === 2) {
173
+ untracked++;
174
+ continue;
175
+ }
176
+ if (head === 1 ? stage !== 1 : stage !== 0)
177
+ staged++; // index differs from HEAD → X column
178
+ if ((workdir === 2 && stage !== 2) || (workdir === 0 && stage !== 0))
179
+ unstaged++; // workdir differs from index → Y column
180
+ }
181
+ const { ahead, behind } = await GitIso.#aheadBehind(root, branch, cache);
182
+ return { branch, ahead, behind, staged, unstaged, untracked };
183
+ }
184
+ // ahead/behind vs the branch's configured upstream (branch.<name>.remote + .merge →
185
+ // refs/remotes/<remote>/<branch>). No upstream configured or never fetched → 0/0, the
186
+ // same absence porcelain's header shows. Counting walks parents from each tip and stops
187
+ // at the merge base, so the cost is proportional to the DIVERGENCE, never history depth.
188
+ static async #aheadBehind(root, branch, cache) {
189
+ const none = { ahead: 0, behind: 0 };
190
+ if (branch === "HEAD")
191
+ return none; // detached — porcelain shows no upstream either
192
+ try {
193
+ const remote = await git.getConfig({ fs, dir: root, path: `branch.${branch}.remote` });
194
+ const merge = await git.getConfig({ fs, dir: root, path: `branch.${branch}.merge` });
195
+ if (remote === undefined || merge === undefined)
196
+ return none;
197
+ const tip = await git.resolveRef({ fs, dir: root, ref: "HEAD" });
198
+ const up = await git.resolveRef({ fs, dir: root, ref: `refs/remotes/${remote}/${merge.replace(/^refs\/heads\//, "")}` });
199
+ if (tip === up)
200
+ return none;
201
+ const stop = new Set(await git.findMergeBase({ fs, dir: root, oids: [tip, up], cache }));
202
+ return {
203
+ ahead: await GitIso.#countToBase(root, tip, stop, cache),
204
+ behind: await GitIso.#countToBase(root, up, stop, cache),
205
+ };
206
+ }
207
+ catch {
208
+ return none; // upstream ref missing (configured but never fetched) — porcelain omits too
209
+ }
210
+ }
211
+ static async #countToBase(root, tip, stop, cache) {
212
+ let count = 0;
213
+ const queue = [tip];
214
+ const seen = new Set();
215
+ while (queue.length > 0) {
216
+ const oid = queue.pop();
217
+ if (seen.has(oid) || stop.has(oid))
218
+ continue;
219
+ seen.add(oid);
220
+ count++;
221
+ const { commit } = await git.readCommit({ fs, dir: root, oid, cache });
222
+ queue.push(...commit.parent);
223
+ }
224
+ return count;
225
+ }
226
+ }
227
+ //# sourceMappingURL=git-iso.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-iso.js","sourceRoot":"","sources":["../../src/core/git-iso.ts"],"names":[],"mappings":"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"}
@@ -10,8 +10,8 @@ export interface FsDivergence {
10
10
  }
11
11
  export default class GitMembership {
12
12
  #private;
13
- static resolveGitMembership(db: Db, sessionId: number, signal: AbortSignal | undefined): Promise<string[]>;
14
- static resolveMembershipEffects(db: Db, sessionId: number, signal: AbortSignal | undefined): Promise<{
13
+ static resolveGitMembership(db: Db, workspaceId: number, signal: AbortSignal | undefined): Promise<string[]>;
14
+ static resolveMembershipEffects(db: Db, workspaceId: number, signal: AbortSignal | undefined): Promise<{
15
15
  members: Array<{
16
16
  path: string;
17
17
  effect: "member" | "view";
@@ -1 +1 @@
1
- {"version":3,"file":"git-membership.d.ts","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAO7D,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,CAAC,OAAO,OAAO,aAAa;;IAmK9B,OAAa,oBAAoB,CAC7B,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAkCnB;IASD,OAAa,wBAAwB,CACjC,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAkB5F;IAsGD,OAAa,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAUjF;CACJ"}
1
+ {"version":3,"file":"git-membership.d.ts","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"AAmCA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAO7D,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACjB;AAKD,MAAM,CAAC,OAAO,OAAO,aAAa;;IA0K9B,OAAa,oBAAoB,CAC7B,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAkCnB;IASD,OAAa,wBAAwB,CACjC,EAAE,EAAE,EAAE,EACN,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,WAAW,GAAG,SAAS,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAkB5F;IA0GD,OAAa,kBAAkB,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAUjF;CACJ"}
@@ -1,49 +1,56 @@
1
1
  // SPEC §membership D4 — git-ls-files workspace membership. §membership-git-membership
2
2
  //
3
- // When a session's `project_root` is a git working tree, the git-tracked
3
+ // When a workspace's `project_root` is a git working tree, the git-tracked
4
4
  // files (`git ls-files`) are workspace MEMBERS without any explicit client
5
5
  // `pick`. This module resolves that membership and (when token accounting is
6
6
  // available) materializes active members' disk content into a body channel,
7
7
  // so they appear in the entry catalog (FIND-served) and are READ-able.
8
8
  //
9
9
  // Decisions realized here:
10
- // D1 — workspace identity lives on the session (project_root).
10
+ // D1 — workspace identity lives on the workspace (project_root).
11
11
  // D3 — disk co-location: members are channel-less markers until materialized;
12
12
  // disk stays the truth.
13
13
  // D4 — git present → ls-files membership. git absent → no fs-walk (this
14
14
  // module no-ops on a non-git project_root, leaving headless / non-git
15
- // sessions completely unaffected). The pick/hide/view constraint
16
- // overlay (session_constraints) layers on top: resolveMembership applies
15
+ // workspaces completely unaffected). The pick/hide/view constraint
16
+ // overlay (workspace_constraints) layers on top: resolveMembership applies
17
17
  // `(ls-files ∪ pick) − hide`; view is enforced at the File edit gate.
18
18
  // D5 — coverage is exhaustive, work is change-gated: every member is stat'd each
19
19
  // turn, but only one whose mtime:size signature changed is re-read,
20
20
  // re-tokenized, and rewritten; an unchanged member is a no-op, and the EMI
21
21
  // divergence rides that same pass. {§membership-change-gated-sync}
22
22
  //
23
- // git resolution shells out via node:child_process (the same surface the
24
- // File scheme's tests and the demo fixture use) and respects AbortSignal.
23
+ // git resolution is in-process by default (GitIso / isomorphic-git, #461) — portable,
24
+ // sandbox-safe, hermetic by construction. PLURNK_SERVICE_GIT_NATIVE=1 routes to system git
25
+ // (subprocess + hermeticGitEnv, AbortSignal-respecting) — the in-process membership pass
26
+ // measures ~8x native (~130ms at 20k files), so a large-repo host can buy the hot path back.
25
27
  import { execFile } from "node:child_process";
26
28
  import { hermeticGitEnv } from "./git-env.js";
29
+ import GitIso from "./git-iso.js";
27
30
  import { promisify } from "node:util";
28
31
  import { readFile, glob, stat } from "node:fs/promises";
29
32
  import { resolve, relative, join, matchesGlob } from "node:path";
30
33
  import { MimetypeBinary } from "../content/index.js";
31
34
  import EntryCrud from "../schemes/_entry-crud.js";
32
- import SessionSettings from "./session-settings.js";
35
+ import WorkspaceSettings from "./workspace-settings.js";
36
+ // Feature-flag convention: `=== "1"` exactly. Default (unset/0) = the in-process GitIso backend.
37
+ const nativeGit = () => process.env.PLURNK_SERVICE_GIT_NATIVE === "1";
33
38
  export default class GitMembership {
34
39
  static #execFileP = promisify(execFile);
35
- // project_root for a session. NULL = headless (no membership). Read once per
40
+ // project_root for a workspace. NULL = headless (no membership). Read once per
36
41
  // resolution; the File scheme reads the same column for its own root.
37
- static async #loadSessionRoot(db, sessionId) {
38
- const row = await db.envelope_get_session.get({ id: sessionId });
42
+ static async #loadWorkspaceRoot(db, workspaceId) {
43
+ const row = await db.envelope_get_workspace.get({ id: workspaceId });
39
44
  return row?.project_root ?? null;
40
45
  }
41
- // Tracked files of one repo, workspace-relative, via `git ls-files --stage -z`.
42
- // NUL-delimited so paths with spaces/newlines survive; gitlinks filtered. Empty → [].
43
- static async #gitTrackedFiles(root, signal) {
44
- // --stage exposes the mode so submodule gitlinks (mode 160000 — a commit
45
- // pointer, a directory on disk, not a file) are filtered: a submodule is a
46
- // separate declared repo, never a member of its superproject.
46
+ // Tracked files of one repo, workspace-relative — GitIso.trackedFiles (walk STAGE, blob
47
+ // entries only) or `git ls-files --stage -z` under the native flag. Either way gitlinks
48
+ // are filtered: a submodule (mode 160000, a commit pointer — a directory on disk, not a
49
+ // file) is a separate declared repo, never a member of its superproject. Empty → [].
50
+ static async #gitTrackedFiles(root, signal, cache) {
51
+ if (!nativeGit())
52
+ return GitIso.trackedFiles(root, cache);
53
+ // NUL-delimited so paths with spaces/newlines survive.
47
54
  const { stdout } = await GitMembership.#execFileP("git", ["ls-files", "--stage", "-z"], { cwd: root, signal, maxBuffer: 64 * 1024 * 1024, env: hermeticGitEnv() });
48
55
  const files = [];
49
56
  for (const entry of stdout.split("\0")) {
@@ -58,19 +65,23 @@ export default class GitMembership {
58
65
  }
59
66
  return files;
60
67
  }
61
- // Untracked-but-not-ignored files of one repo (SPEC §membership-auto-add): `git
62
- // ls-files --others --exclude-standard -z`. A model-created file is a repo member the
63
- // moment it exists — no git-stage required — while `.gitignore` still filters it out
64
- // (--exclude-standard). NUL-delimited so paths with spaces/newlines survive; untracked
65
- // rows carry no mode, so (unlike --stage) there's no gitlink to filter.
66
- static async #gitUntrackedFiles(root, signal) {
68
+ // Untracked-but-not-ignored files of one repo (SPEC §membership-auto-add) —
69
+ // GitIso.untrackedFiles (the differential-gated pruning ignore-walk) or `git ls-files
70
+ // --others --exclude-standard -z` under the native flag. A model-created file is a repo
71
+ // member the moment it exists — no git-stage required — while `.gitignore` still filters it.
72
+ static async #gitUntrackedFiles(root, signal, cache) {
73
+ if (!nativeGit())
74
+ return GitIso.untrackedFiles(root, cache);
67
75
  const { stdout } = await GitMembership.#execFileP("git", ["ls-files", "--others", "--exclude-standard", "-z"], { cwd: root, signal, maxBuffer: 64 * 1024 * 1024, env: hermeticGitEnv() });
68
76
  return stdout.split("\0").filter((e) => e.length > 0);
69
77
  }
70
- // Resolve a declared repo folder to its git toplevel (the repo root containing
71
- // it), or null if it isn't inside a git tree. `rev-parse --show-toplevel` handles
72
- // plain repos, linked worktrees (`.git` is a gitdir: file), and submodules alike.
78
+ // Resolve a declared repo folder to its git toplevel (the repo root containing it), or
79
+ // null if it isn't inside a git tree. GitIso.repoToplevel (findRoot) or `rev-parse
80
+ // --show-toplevel` under the native flag — both handle plain repos, linked worktrees
81
+ // (`.git` is a gitdir: file), and submodules alike.
73
82
  static async #repoToplevel(dir, signal) {
83
+ if (!nativeGit())
84
+ return GitIso.repoToplevel(dir);
74
85
  try {
75
86
  const { stdout } = await GitMembership.#execFileP("git", ["rev-parse", "--show-toplevel"], { cwd: dir, signal, env: hermeticGitEnv() });
76
87
  return stdout.trim();
@@ -81,7 +92,7 @@ export default class GitMembership {
81
92
  }
82
93
  // The forest (SPEC §membership, §membership-forest): union every declared repo's MEMBERS —
83
94
  // tracked files PLUS untracked-but-not-ignored ones (§membership-auto-add) — each
84
- // path-prefixed by the repo's location relative to the session root (empty prefix when
95
+ // path-prefixed by the repo's location relative to the workspace root (empty prefix when
85
96
  // the repo IS the root). Repos that don't resolve are skipped.
86
97
  static async #forestMembers(root, repoDirs, signal) {
87
98
  // Resolve every declared entry to its git toplevel, deduped: a glob (`*`) and an
@@ -96,14 +107,18 @@ export default class GitMembership {
96
107
  }
97
108
  }
98
109
  const members = new Set();
110
+ // One iso-git cache per PASS: pack/index parses are reused across this resolve's repos
111
+ // and reads, then discarded — never carried across turns, so a rewritten index or
112
+ // repacked store can't serve stale.
113
+ const cache = {};
99
114
  for (const repoRoot of repoRoots) {
100
115
  // project_root is no boundary — only the relative-address base. EVERY member is
101
116
  // addressed relative to the root, a repo outside it included (a `..`-prefixed
102
117
  // path) — so the universal `join(root, pathname)` disk-resolver works unchanged;
103
118
  // an absolute pathname would nest UNDER root and never materialize. {§membership-overlay-repo}
104
119
  const prefix = relative(root, repoRoot);
105
- const tracked = await GitMembership.#gitTrackedFiles(repoRoot, signal);
106
- const untracked = await GitMembership.#gitUntrackedFiles(repoRoot, signal);
120
+ const tracked = await GitMembership.#gitTrackedFiles(repoRoot, signal, cache);
121
+ const untracked = await GitMembership.#gitUntrackedFiles(repoRoot, signal, cache);
107
122
  for (const f of [...tracked, ...untracked]) {
108
123
  members.add(join(prefix, f));
109
124
  }
@@ -153,15 +168,15 @@ export default class GitMembership {
153
168
  // the overlay globs, before composition. Single-sources the (git ∪ pick) derivation + the
154
169
  // glob sets for resolveGitMembership (compose + reconcile) and resolveMembershipEffects
155
170
  // (derive per-file effect for clients, #243). Headless (no project_root) → null.
156
- static async #resolveOverlayInputs(db, sessionId, signal) {
157
- const root = await GitMembership.#loadSessionRoot(db, sessionId);
171
+ static async #resolveOverlayInputs(db, workspaceId, signal) {
172
+ const root = await GitMembership.#loadWorkspaceRoot(db, workspaceId);
158
173
  if (root === null)
159
174
  return null; // headless — no disk surface to resolve
160
- const constraints = await db.crud_list_session_constraints.all({ session_id: sessionId });
175
+ const constraints = await db.crud_list_workspace_constraints.all({ workspace_id: workspaceId });
161
176
  const hideGlobs = constraints.filter((c) => c.effect === "hide").map((c) => c.glob);
162
177
  const pickGlobs = constraints.filter((c) => c.effect === "pick").map((c) => c.glob);
163
178
  const viewGlobs = constraints.filter((c) => c.effect === "view").map((c) => c.glob);
164
- // git substrate — the union of the session's DECLARED repos' MEMBERS: tracked files
179
+ // git substrate — the union of the workspace's DECLARED repos' MEMBERS: tracked files
165
180
  // plus untracked-but-not-ignored ones (§membership-auto-add). PLURNK_SERVICE_GIT_ALLOWED=0 is
166
181
  // the hard ceiling (deny all git membership); PLURNK_SERVICE_GIT_AUTO=1 declares project_root
167
182
  // as an implicit repo. Empty when git is denied or no declared repo resolves, so
@@ -169,9 +184,9 @@ export default class GitMembership {
169
184
  const repoDirs = constraints.filter((c) => c.effect === "repo").map((c) => c.glob); // a declared repo's ls-files join membership, path-prefixed — §membership-overlay-repo
170
185
  if (process.env.PLURNK_SERVICE_GIT_AUTO === "1")
171
186
  repoDirs.push(root); // ALLOWED ceiling gates the AUTO default — §membership-git-flags
172
- // #232 — git:false is a session-level tighten of the env ALLOWED ceiling (env AND session).
173
- const sessionGit = (await SessionSettings.read(db, sessionId)).git;
174
- const gitMembers = process.env.PLURNK_SERVICE_GIT_ALLOWED === "1" && sessionGit !== false
187
+ // #232 — git:false is a workspace-level tighten of the env ALLOWED ceiling (env AND workspace).
188
+ const workspaceGit = (await WorkspaceSettings.read(db, workspaceId)).git;
189
+ const gitMembers = process.env.PLURNK_SERVICE_GIT_ALLOWED === "1" && workspaceGit !== false
175
190
  ? await GitMembership.#forestMembers(root, repoDirs, signal)
176
191
  : [];
177
192
  // `pick` overlay — a targeted, client-dictated scan for untracked matches
@@ -179,7 +194,7 @@ export default class GitMembership {
179
194
  const picked = pickGlobs.length === 0 ? [] : await GitMembership.#scanPickMembers(root, pickGlobs, signal); // §membership-overlay-pick
180
195
  return { root, gitMembers, picked, hideGlobs, viewGlobs };
181
196
  }
182
- // Resolve a session's file membership: the desired set is (git ls-files ∪ pick
197
+ // Resolve a workspace's file membership: the desired set is (git ls-files ∪ pick
183
198
  // globs) − hide globs (SPEC §membership overlay), reconciled against the registered
184
199
  // overlay-owned members so entries == members. Channel-less rows — disk is the
185
200
  // truth (D3); the row is the membership marker File.read gates on. Returns the
@@ -187,8 +202,8 @@ export default class GitMembership {
187
202
  //
188
203
  // signal-respecting: git shell-outs + the pick scan honor `signal`. Headless
189
204
  // (no project_root) yields nothing; a non-git root with pick-globs still resolves.
190
- static async resolveGitMembership(db, sessionId, signal) {
191
- const inputs = await GitMembership.#resolveOverlayInputs(db, sessionId, signal);
205
+ static async resolveGitMembership(db, workspaceId, signal) {
206
+ const inputs = await GitMembership.#resolveOverlayInputs(db, workspaceId, signal);
192
207
  if (inputs === null)
193
208
  return []; // headless — no disk surface to resolve
194
209
  const { gitMembers: members, picked, hideGlobs } = inputs;
@@ -208,12 +223,12 @@ export default class GitMembership {
208
223
  // or 'constraint') no longer desired — untracked, unmatched, or newly hidden.
209
224
  // Model-created ('client') members are never reclaimed.
210
225
  for (const pathname of desiredGit) {
211
- await db.crud_register_session_member.get({ session_id: sessionId, scheme: null, pathname: `/${pathname}`, membership_origin: "git" });
226
+ await db.crud_register_workspace_member.get({ workspace_id: workspaceId, scheme: null, pathname: `/${pathname}`, membership_origin: "git" });
212
227
  }
213
228
  for (const pathname of desiredPick) {
214
- await db.crud_register_session_member.get({ session_id: sessionId, scheme: null, pathname: `/${pathname}`, membership_origin: "constraint" });
229
+ await db.crud_register_workspace_member.get({ workspace_id: workspaceId, scheme: null, pathname: `/${pathname}`, membership_origin: "constraint" });
215
230
  }
216
- const registered = await db.crud_list_reconcilable_members.all({ session_id: sessionId });
231
+ const registered = await db.crud_list_reconcilable_members.all({ workspace_id: workspaceId });
217
232
  for (const m of registered) {
218
233
  if (!desiredSet.has(m.pathname)) {
219
234
  await db.crud_delete_entry.run({ entry_id: m.id });
@@ -228,8 +243,8 @@ export default class GitMembership {
228
243
  // File edit gate §membership-overlay-view) or plain `member`; `hidden` are candidates a `hide`
229
244
  // glob excludes (project files absent from the manifest). Paths namespace-absolute, matching
230
245
  // the manifest + storage. Headless → empty. {§membership-resolved-effects}
231
- static async resolveMembershipEffects(db, sessionId, signal) {
232
- const inputs = await GitMembership.#resolveOverlayInputs(db, sessionId, signal);
246
+ static async resolveMembershipEffects(db, workspaceId, signal) {
247
+ const inputs = await GitMembership.#resolveOverlayInputs(db, workspaceId, signal);
233
248
  if (inputs === null)
234
249
  return { members: [], hidden: [] }; // headless
235
250
  const { gitMembers, picked, hideGlobs, viewGlobs } = inputs;
@@ -289,6 +304,11 @@ export default class GitMembership {
289
304
  let sig;
290
305
  try {
291
306
  const st = await stat(canonical);
307
+ // A directory-shaped member — an embedded-repo boundary the untracked scan lists as
308
+ // `dir/` (native + iso alike) — is a membership marker: disk truth is a directory,
309
+ // nothing to materialize. Mirrors missing-on-disk: membership stands, no channel.
310
+ if (st.isDirectory())
311
+ return null;
292
312
  sig = `${st.mtimeMs}:${st.size}`;
293
313
  }
294
314
  catch (err) {
@@ -297,14 +317,14 @@ export default class GitMembership {
297
317
  throw err;
298
318
  }
299
319
  const known = await ctx.db.crud_get_member_sig.get({
300
- session_id: ctx.sessionId, scheme: null, pathname,
320
+ workspace_id: ctx.workspaceId, scheme: null, pathname,
301
321
  });
302
322
  if (known !== undefined && known.synced_sig === sig)
303
323
  return null; // unchanged — the change-gate
304
324
  const mimetype = await GitMembership.#detectMimetype(canonical, ctx.mimetypes);
305
325
  if (MimetypeBinary.isBinaryMimetype(mimetype)) {
306
326
  // Empty body channel stamped with the real binary mimetype — a first-
307
- // class entry that READ-415s through readSessionEntry's isBinaryMimetype
327
+ // class entry that READ-415s through readWorkspaceEntry's isBinaryMimetype
308
328
  // gate (#186), not a channel-less row that would read as 404.
309
329
  const r = await EntryCrud.writeEntry(pathname, { channels: { body: { content: "", mimetype } }, tags: [] }, ctx, null);
310
330
  if (r.entryId !== null)
@@ -336,7 +356,7 @@ export default class GitMembership {
336
356
  // the entry: an existing body channel whose content differs from disk is an
337
357
  // ambient divergence (D5). writeEntry then refreshes the entry to disk truth.
338
358
  const prior = await ctx.db.ops_read_channel.get({
339
- session_id: ctx.sessionId, scheme: null, pathname, channel: "body",
359
+ workspace_id: ctx.workspaceId, scheme: null, pathname, channel: "body",
340
360
  });
341
361
  const result = await EntryCrud.writeEntry(pathname, { channels: { body: { content, mimetype } }, tags: [] }, ctx, null);
342
362
  if (result.entryId !== null)
@@ -346,15 +366,15 @@ export default class GitMembership {
346
366
  }
347
367
  return null;
348
368
  }
349
- // Full membership + materialization pass for a run. Registers git members,
369
+ // Full membership + materialization pass for a worker. Registers git members,
350
370
  // then materializes each active (on-disk, non-binary) member as an entry
351
371
  // through writeEntry. Called at packet-composition time (Engine.runTurn) per
352
- // D5. No-ops on headless / non-git sessions.
372
+ // D5. No-ops on headless / non-git workspaces.
353
373
  static async indexGitMembership(ctx) {
354
- const root = await GitMembership.#loadSessionRoot(ctx.db, ctx.sessionId);
374
+ const root = await GitMembership.#loadWorkspaceRoot(ctx.db, ctx.workspaceId);
355
375
  if (root === null)
356
376
  return [];
357
- const tracked = await GitMembership.resolveGitMembership(ctx.db, ctx.sessionId, ctx.signal);
377
+ const tracked = await GitMembership.resolveGitMembership(ctx.db, ctx.workspaceId, ctx.signal);
358
378
  const divergences = [];
359
379
  for (const pathname of tracked) {
360
380
  const divergence = await GitMembership.#materializeMember(pathname, root, ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"git-membership.js","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-membership.js","sourceRoot":"","sources":["../../src/core/git-membership.ts"],"names":[],"mappings":"AAAA,sFAAsF;AACtF,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,6EAA6E;AAC7E,4EAA4E;AAC5E,uEAAuE;AACvE,EAAE;AACF,2BAA2B;AAC3B,mEAAmE;AACnE,gFAAgF;AAChF,+BAA+B;AAC/B,0EAA0E;AAC1E,6EAA6E;AAC7E,0EAA0E;AAC1E,kFAAkF;AAClF,6EAA6E;AAC7E,mFAAmF;AACnF,2EAA2E;AAC3E,kFAAkF;AAClF,0EAA0E;AAC1E,EAAE;AACF,sFAAsF;AACtF,2FAA2F;AAC3F,yFAAyF;AACzF,6FAA6F;AAE7F,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,MAAM,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAGrD,OAAO,SAAS,MAAM,2BAA2B,CAAC;AAClD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAcxD,iGAAiG;AACjG,MAAM,SAAS,GAAG,GAAY,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,GAAG,CAAC;AAE/E,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAExC,+EAA+E;IAC/E,sEAAsE;IACtE,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAM,EAAE,WAAmB;QACvD,MAAM,GAAG,GAAG,MAAO,EAAE,CAAC,sBAAqC,CAAC,GAAG,CAAkC,EAAE,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;QACtH,OAAO,GAAG,EAAE,YAAY,IAAI,IAAI,CAAC;IACrC,CAAC;IAED,wFAAwF;IACxF,wFAAwF;IACxF,wFAAwF;IACxF,qFAAqF;IACrF,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAY,EAAE,MAA+B,EAAE,KAAa;QACtF,IAAI,CAAC,SAAS,EAAE;YAAE,OAAO,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC1D,uDAAuD;QACvD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;QACnK,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACjC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,GAAG,KAAK,CAAC,CAAC;gBAAE,SAAS;YACzB,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,QAAQ;gBAAE,SAAS,CAAE,iCAAiC;YACjG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,4EAA4E;IAC5E,sFAAsF;IACtF,wFAAwF;IACxF,6FAA6F;IAC7F,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAY,EAAE,MAA+B,EAAE,KAAa;QACxF,IAAI,CAAC,SAAS,EAAE;YAAE,OAAO,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,oBAAoB,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;QAC1L,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,uFAAuF;IACvF,mFAAmF;IACnF,qFAAqF;IACrF,oDAAoD;IACpD,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAW,EAAE,MAA+B;QACnE,IAAI,CAAC,SAAS,EAAE;YAAE,OAAO,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC;YACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;YACxI,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC,CAAE,4DAA4D;QAC9E,CAAC;IACL,CAAC;IAED,2FAA2F;IAC3F,kFAAkF;IAClF,yFAAyF;IACzF,+DAA+D;IAC/D,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,QAAkB,EAAE,MAA+B;QACzF,iFAAiF;QACjF,+EAA+E;QAC/E,wCAAwC;QACxC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YACzB,KAAK,MAAM,SAAS,IAAI,MAAM,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC7E,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;gBACrF,IAAI,QAAQ,KAAK,IAAI;oBAAE,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACnD,CAAC;QACL,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,uFAAuF;QACvF,kFAAkF;QAClF,oCAAoC;QACpC,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC/B,gFAAgF;YAChF,8EAA8E;YAC9E,iFAAiF;YACjF,+FAA+F;YAC/F,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAC9E,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YAClF,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,EAAE,GAAG,SAAS,CAAC,EAAE,CAAC;gBACzC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,sFAAsF;IACtF,uFAAuF;IACvF,0FAA0F;IAC1F,0FAA0F;IAC1F,mFAAmF;IACnF,sGAAsG;IACtG,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,IAAY,EAAE,GAAW,EAAE,MAA+B;QACnF,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC;YAAE,OAAO,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/C,IAAI,MAAM,EAAE,OAAO;gBAAE,OAAO,IAAI,CAAC;YACjC,IAAI,CAAC;gBACD,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;oBAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvE,CAAC;YAAC,MAAM,CAAC;gBACL,qDAAqD;YACzD,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,mFAAmF;IACnF,yEAAyE;IACzE,MAAM,CAAC,cAAc,CAAC,CAAS;QAC3B,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,4EAA4E;IAC5E,+EAA+E;IAC/E,2EAA2E;IAC3E,4BAA4B;IAC5B,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,SAAiB,EAAE,SAAgC;QAC5E,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;YAC7D,OAAO,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAC9D,CAAC;QACD,OAAO,cAAc,CAAC,uBAAuB,CAAC;IAClD,CAAC;IAED,0FAA0F;IAC1F,0FAA0F;IAC1F,wFAAwF;IACxF,iFAAiF;IACjF,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAC9B,EAAM,EACN,WAAmB,EACnB,MAA+B;QAE/B,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACrE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC,CAAG,wCAAwC;QAE1E,MAAM,WAAW,GAAG,MAAO,EAAE,CAAC,+BAA8C,CAAC,GAAG,CAAmC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QAClJ,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpF,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEpF,sFAAsF;QACtF,8FAA8F;QAC9F,8FAA8F;QAC9F,iFAAiF;QACjF,8DAA8D;QAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uFAAuF;QAC3K,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,GAAG;YAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,iEAAiE;QACvI,gGAAgG;QAChG,MAAM,YAAY,GAAG,CAAC,MAAM,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC;QACzE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,GAAG,IAAI,YAAY,KAAK,KAAK;YACvF,CAAC,CAAC,MAAM,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC;YAC5D,CAAC,CAAC,EAAE,CAAC;QAET,0EAA0E;QAC1E,gEAAgE;QAChE,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,gBAAgB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,2BAA2B;QACvI,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IAC9D,CAAC;IAED,iFAAiF;IACjF,oFAAoF;IACpF,+EAA+E;IAC/E,+EAA+E;IAC/E,2EAA2E;IAC3E,EAAE;IACF,6EAA6E;IAC7E,mFAAmF;IACnF,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAC7B,EAAM,EACN,WAAmB,EACnB,MAA+B;QAE/B,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,qBAAqB,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAClF,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC,CAAG,wCAAwC;QAC1E,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAE1D,uGAAuG;QACvG,4DAA4D;QAC5D,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,MAAM,UAAU,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/G,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,2EAA2E;QAC3E,kFAAkF;QAClF,yEAAyE;QACzE,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpC,6EAA6E;QAC7E,8EAA8E;QAC9E,8EAA8E;QAC9E,wDAAwD;QACxD,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAChC,MAAO,EAAE,CAAC,8BAA6C,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,QAAQ,EAAE,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC;QACjK,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,WAAW,EAAE,CAAC;YACjC,MAAO,EAAE,CAAC,8BAA6C,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,QAAQ,EAAE,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC,CAAC;QACxK,CAAC;QACD,MAAM,UAAU,GAAG,MAAO,EAAE,CAAC,8BAA6C,CAAC,GAAG,CAAmC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QAChJ,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;YACzB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,MAAO,EAAE,CAAC,iBAAgC,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvE,CAAC;QACL,CAAC;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,0FAA0F;IAC1F,iGAAiG;IACjG,8FAA8F;IAC9F,4FAA4F;IAC5F,+FAA+F;IAC/F,6FAA6F;IAC7F,2EAA2E;IAC3E,MAAM,CAAC,KAAK,CAAC,wBAAwB,CACjC,EAAM,EACN,WAAmB,EACnB,MAA+B;QAE/B,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,qBAAqB,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;QAClF,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAG,WAAW;QACtE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAC5D,wFAAwF;QACxF,sFAAsF;QACtF,+DAA+D;QAC/D,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClF,MAAM,MAAM,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChF,MAAM,OAAO,GAAuD,EAAE,CAAC;QACvE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC;YAClD,IAAI,QAAQ,CAAC,CAAC,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;;gBACjC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC/B,CAAC;IAED,iFAAiF;IACjF,4EAA4E;IAC5E,8EAA8E;IAC9E,4DAA4D;IAC5D,MAAM,CAAC,KAAK,CAAC,gBAAgB,CACzB,IAAY,EACZ,SAAmB,EACnB,MAA+B;QAE/B,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAC9B,IAAI,KAAK,EAAE,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBACnD,IAAI,MAAM,EAAE,OAAO;oBAAE,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;gBACzC,IAAI,CAAC;oBACD,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE;wBAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACpE,CAAC;gBAAC,MAAM,CAAC;oBACL,kDAAkD;gBACtD,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,8EAA8E;IAC9E,iFAAiF;IACjF,oFAAoF;IACpF,iFAAiF;IACjF,8CAA8C;IAC9C,6EAA6E;IAC7E,oEAAoE;IACpE,+DAA+D;IAC/D,2CAA2C;IAC3C,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAC3B,QAAgB,EAChB,IAAY,EACZ,GAAwB;QAExB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAE,iFAAiF;QAC1H,gFAAgF;QAChF,4EAA4E;QAC5E,6EAA6E;QAC7E,4DAA4D;QAC5D,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC;YACjC,oFAAoF;YACpF,mFAAmF;YACnF,kFAAkF;YAClF,IAAI,EAAE,CAAC,WAAW,EAAE;gBAAE,OAAO,IAAI,CAAC;YAClC,GAAG,GAAG,GAAG,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;QACrC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAClE,MAAM,GAAG,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,MAAO,GAAG,CAAC,EAAE,CAAC,mBAAkC,CAAC,GAAG,CAA4C;YAC1G,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ;SACxD,CAAC,CAAC;QACH,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC,CAAE,8BAA8B;QAEjG,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,eAAe,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/E,IAAI,cAAc,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,sEAAsE;YACtE,2EAA2E;YAC3E,8DAA8D;YAC9D,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACvH,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI;gBAAE,MAAO,GAAG,CAAC,EAAE,CAAC,mBAAkC,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;YACvH,OAAO,IAAI,CAAC,CAAE,kEAAkE;QACpF,CAAC;QACD,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC;YACD,GAAG,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAClE,MAAM,GAAG,CAAC;QACd,CAAC;QACD,qFAAqF;QACrF,mFAAmF;QACnF,gFAAgF;QAChF,6EAA6E;QAC7E,qCAAqC;QACrC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,0BAA0B,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;YACnJ,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI;gBAAE,MAAO,GAAG,CAAC,EAAE,CAAC,mBAAkC,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;YACvH,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrC,gFAAgF;QAChF,4EAA4E;QAC5E,8EAA8E;QAC9E,MAAM,KAAK,GAAG,MAAO,GAAG,CAAC,EAAE,CAAC,gBAA+B,CAAC,GAAG,CAAsB;YACjF,YAAY,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM;SACzE,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;QACxH,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI;YAAE,MAAO,GAAG,CAAC,EAAE,CAAC,mBAAkC,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;QACjI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QACvH,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,8EAA8E;IAC9E,yEAAyE;IACzE,6EAA6E;IAC7E,+CAA+C;IAC/C,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAwB;QACpD,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QAC7E,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9F,MAAM,WAAW,GAAmB,EAAE,CAAC;QACvC,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;YAC/E,IAAI,UAAU,KAAK,IAAI;gBAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,WAAW,CAAC;IACvB,CAAC;CACJ"}
@@ -10,6 +10,6 @@ export interface GitStatus {
10
10
  export default class GitState {
11
11
  #private;
12
12
  static enabled(): boolean;
13
- static status(db: Db, sessionId: number, signal: AbortSignal | undefined): Promise<GitStatus | null>;
13
+ static status(db: Db, workspaceId: number, signal: AbortSignal | undefined): Promise<GitStatus | null>;
14
14
  }
15
15
  //# sourceMappingURL=git-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"git-state.d.ts","sourceRoot":"","sources":["../../src/core/git-state.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAG9C,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACrB;AASD,MAAM,CAAC,OAAO,OAAO,QAAQ;;IAGzB,MAAM,CAAC,OAAO,IAAI,OAAO,CAIxB;IAED,OAAa,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAazG;CA2BJ"}
1
+ {"version":3,"file":"git-state.d.ts","sourceRoot":"","sources":["../../src/core/git-state.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAG9C,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACrB;AAUD,MAAM,CAAC,OAAO,OAAO,QAAQ;;IAGzB,MAAM,CAAC,OAAO,IAAI,OAAO,CAIxB;IAED,OAAa,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,CAoB3G;CA2BJ"}