alasio 6.0.0 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/cli/src/branches.js +47 -8
  2. package/dist/cli/src/branches.js.map +1 -1
  3. package/dist/cli/src/cluster/docker-engine.js +6 -4
  4. package/dist/cli/src/cluster/docker-engine.js.map +1 -1
  5. package/dist/cli/src/cluster/docker.js +49 -10
  6. package/dist/cli/src/cluster/docker.js.map +1 -1
  7. package/dist/cli/src/cluster/host.js +45 -19
  8. package/dist/cli/src/cluster/host.js.map +1 -1
  9. package/dist/cli/src/cluster/k3s.js +97 -5
  10. package/dist/cli/src/cluster/k3s.js.map +1 -1
  11. package/dist/cli/src/cluster/node.js +94 -50
  12. package/dist/cli/src/cluster/node.js.map +1 -1
  13. package/dist/cli/src/cluster/tar.js +43 -1
  14. package/dist/cli/src/cluster/tar.js.map +1 -1
  15. package/dist/cli/src/commands/branch.js +7 -3
  16. package/dist/cli/src/commands/branch.js.map +1 -1
  17. package/dist/cli/src/commands/restore-filer-store.js +16 -5
  18. package/dist/cli/src/commands/restore-filer-store.js.map +1 -1
  19. package/dist/cli/src/commands/status.js +34 -6
  20. package/dist/cli/src/commands/status.js.map +1 -1
  21. package/dist/cli/src/commands/up.js +40 -3
  22. package/dist/cli/src/commands/up.js.map +1 -1
  23. package/dist/cli/src/commands/upgrade.js +22 -6
  24. package/dist/cli/src/commands/upgrade.js.map +1 -1
  25. package/dist/cli/src/cpu-baseline.js +97 -0
  26. package/dist/cli/src/cpu-baseline.js.map +1 -0
  27. package/dist/cli/src/install.js +36 -9
  28. package/dist/cli/src/install.js.map +1 -1
  29. package/dist/cli/src/kept-releases.js +59 -0
  30. package/dist/cli/src/kept-releases.js.map +1 -0
  31. package/dist/cli/src/kube/api.js +2 -2
  32. package/dist/cli/src/kube/api.js.map +1 -1
  33. package/dist/cli/src/kube/rollout.js +21 -0
  34. package/dist/cli/src/kube/rollout.js.map +1 -1
  35. package/dist/cli/src/manifests/admission.js +140 -20
  36. package/dist/cli/src/manifests/admission.js.map +1 -1
  37. package/dist/cli/src/manifests/alasio.js +138 -20
  38. package/dist/cli/src/manifests/alasio.js.map +1 -1
  39. package/dist/cli/src/manifests/branch.js +2 -1
  40. package/dist/cli/src/manifests/branch.js.map +1 -1
  41. package/dist/cli/src/manifests/collector.js +18 -10
  42. package/dist/cli/src/manifests/collector.js.map +1 -1
  43. package/dist/cli/src/manifests/common.js +23 -8
  44. package/dist/cli/src/manifests/common.js.map +1 -1
  45. package/dist/cli/src/manifests/config.js +58 -6
  46. package/dist/cli/src/manifests/config.js.map +1 -1
  47. package/dist/cli/src/manifests/grafana.js +18 -6
  48. package/dist/cli/src/manifests/grafana.js.map +1 -1
  49. package/dist/cli/src/manifests/index.js +10 -5
  50. package/dist/cli/src/manifests/index.js.map +1 -1
  51. package/dist/cli/src/manifests/lake.js +6 -2
  52. package/dist/cli/src/manifests/lake.js.map +1 -1
  53. package/dist/cli/src/manifests/neon.js +172 -35
  54. package/dist/cli/src/manifests/neon.js.map +1 -1
  55. package/dist/cli/src/manifests/network-policies.js +96 -27
  56. package/dist/cli/src/manifests/network-policies.js.map +1 -1
  57. package/dist/cli/src/manifests/node-agent.js +107 -0
  58. package/dist/cli/src/manifests/node-agent.js.map +1 -0
  59. package/dist/cli/src/manifests/object-store.js +42 -10
  60. package/dist/cli/src/manifests/object-store.js.map +1 -1
  61. package/dist/cli/src/manifests/priorities.js +1 -0
  62. package/dist/cli/src/manifests/priorities.js.map +1 -1
  63. package/dist/cli/src/manifests/valkey.js +1 -1
  64. package/dist/cli/src/release.js +6 -6
  65. package/dist/cluster/node/pins.json +6 -2
  66. package/dist/neon/control/branches.js +31 -12
  67. package/dist/neon/control/branches.js.map +1 -1
  68. package/dist/neon/control/endpoints.js +108 -0
  69. package/dist/neon/control/endpoints.js.map +1 -0
  70. package/dist/neon/control/scram.js +13 -1
  71. package/dist/neon/control/scram.js.map +1 -1
  72. package/dist/neon/control/secrets.js +49 -8
  73. package/dist/neon/control/secrets.js.map +1 -1
  74. package/dist/src/kube/config.js +25 -3
  75. package/dist/src/kube/config.js.map +1 -1
  76. package/dist/src/kube/sandbox-shape.js +39 -3
  77. package/dist/src/kube/sandbox-shape.js.map +1 -1
  78. package/dist/src/node-agent/names.js +74 -0
  79. package/dist/src/node-agent/names.js.map +1 -0
  80. package/package.json +2 -2
  81. package/dist/cluster/node/config-v3.toml.tmpl +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"object-store.js","sourceRoot":"","sources":["../../../../src/manifests/object-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"object-store.js","sourceRoot":"","sources":["../../../../src/manifests/object-store.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { labels, RELEASE } from "./common.js";
2
2
  /** Each tier's class's value, highest first, and what its pods are. */
3
3
  const TIERS = {
4
+ bound: { value: 100_001, description: "alasio's floor that its volumes hold to a node: given up last, taking the place of what may run elsewhere" },
4
5
  floor: { value: 100_000, description: "alasio's floor: what never sleeps, given up last" },
5
6
  turn: { value: 100_000, description: "alasio's pods that run turns: its own, sessions' and folder workspaces' bayma, given up last" },
6
7
  component: { value: 10_000, description: "alasio's components that sleep or run once" },
@@ -1 +1 @@
1
- {"version":3,"file":"priorities.js","sourceRoot":"","sources":["../../../../src/manifests/priorities.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAM9C,uEAAuE;AACvE,MAAM,KAAK,GAAqF;IAC9F,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kDAAkD,EAAE;IAC1F,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,8FAA8F,EAAE;IACrI,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,4CAA4C,EAAE;IACvF,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,kEAAkE,EAAE;CACzG,CAAC;AAEF,uDAAuD;AACvD,MAAM,UAAU,iBAAiB,CAAC,IAAU;IAC1C,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,oBAAoB,CAAC,MAAqB;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACpE,UAAU,EAAE,sBAAsB;QAClC,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,IAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;QACjF,KAAK;QACL,aAAa,EAAE,KAAK;QACpB,iEAAiE;QACjE,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO;QACzG,WAAW;KACZ,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"priorities.js","sourceRoot":"","sources":["../../../../src/manifests/priorities.ts"],"names":[],"mappings":"AAgCA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAM9C,uEAAuE;AACvE,MAAM,KAAK,GAAqF;IAC9F,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,2GAA2G,EAAE;IACnJ,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kDAAkD,EAAE;IAC1F,IAAI,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,8FAA8F,EAAE;IACrI,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,4CAA4C,EAAE;IACvF,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,WAAW,EAAE,kEAAkE,EAAE;CACzG,CAAC;AAEF,uDAAuD;AACvD,MAAM,UAAU,iBAAiB,CAAC,IAAU;IAC1C,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AAC9B,CAAC;AAED,uDAAuD;AACvD,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;AACxD,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,oBAAoB,CAAC,MAAqB;IACxD,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACpE,UAAU,EAAE,sBAAsB;QAClC,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,EAAE,IAAI,EAAE,iBAAiB,CAAC,IAAY,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;QACjF,KAAK;QACL,aAAa,EAAE,KAAK;QACpB,iEAAiE;QACjE,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO;QACzG,WAAW;KACZ,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -83,7 +83,7 @@ export function valkeyObjects(config, instance, sidecars = []) {
83
83
  template: {
84
84
  metadata: { labels: labels(component), annotations: { "checksum/config": sha256(conf) } },
85
85
  spec: {
86
- ...priority("floor"),
86
+ ...priority("bound"),
87
87
  ...valkeyPod(config),
88
88
  // Long enough for its last snapshot and fsync as it stops.
89
89
  terminationGracePeriodSeconds: 60,
@@ -3,14 +3,14 @@
3
3
  * version and the digests of the images it published here, with tooling/pin-release.ts,
4
4
  * before it builds the package; this module holds nothing else.
5
5
  */
6
- export const VERSION = "6.0.0";
6
+ export const VERSION = "7.0.0";
7
7
  /** alasio's own images, tagged with the version and pinned by digest once released. */
8
8
  export const IMAGES = {
9
- alasio: { repository: "ghcr.io/eaucoin/alasio", tag: VERSION, digest: "sha256:5f8af0d0b1b6790e7a0fd1276f199ed1873091fc51a863a39de69dc137121114" },
10
- agent: { repository: "ghcr.io/eaucoin/alasio-agent", tag: VERSION, digest: "sha256:b25afac52808de80284ed66e9cb82a8f964e532300c2f841072899773e533ede" },
11
- lake: { repository: "ghcr.io/eaucoin/alasio-lake", tag: VERSION, digest: "sha256:ddd38dc0f502e9ac2284956d9926ef88ba317fceecb207f2fcbb308b4eda4e39" },
12
- grafana: { repository: "ghcr.io/eaucoin/alasio-grafana", tag: VERSION, digest: "sha256:03411e41fdf70195c565dd281e9d514e19ec511bb8d85ae76e59cfcd972c28ee" },
9
+ alasio: { repository: "ghcr.io/eaucoin/alasio", tag: VERSION, digest: "sha256:3b8b2024878eb8873e293c0fddd84a0d21ce9295d2f39e0a8be9f5daad32fcf1" },
10
+ agent: { repository: "ghcr.io/eaucoin/alasio-agent", tag: VERSION, digest: "sha256:48adeae584ecb23d6cbf357b0f3b1e2d00bb5232e3646a1cb26566adec5df63d" },
11
+ lake: { repository: "ghcr.io/eaucoin/alasio-lake", tag: VERSION, digest: "sha256:2bf4d123bb591bca4aba19dc5a99b9813404d3734530bdd39828045f2a796e10" },
12
+ grafana: { repository: "ghcr.io/eaucoin/alasio-grafana", tag: VERSION, digest: "sha256:00922ac09a06cd49a70ef7407231b2cdd0f101d4b8888d1daaeb91932fad439b" },
13
13
  };
14
14
  /** The node image of the cluster in Docker: k3s with gVisor (cluster/node), pinned like the others. */
15
- export const NODE_IMAGE = { repository: "ghcr.io/eaucoin/alasio-node", tag: VERSION, digest: "sha256:92eecdc33c620edeb0f28aa587d0872b4615f03bf447cdd02dc96a626408ffa3" };
15
+ export const NODE_IMAGE = { repository: "ghcr.io/eaucoin/alasio-node", tag: VERSION, digest: "sha256:1a59d69b582dc5357406d0fe2d117e8d9710dedfbbabdc85415bda16f308a1a0" };
16
16
  //# sourceMappingURL=release.js.map
@@ -9,7 +9,11 @@
9
9
  }
10
10
  },
11
11
  "gvisor": {
12
- "release": "20260921.0-eaucoin.3",
13
- "sha512": "ab59ce25025c28460cc07742e7a7e0679f8bda989513c113dca2a1b6215a791e6e2134022ed5bee33524f7132eb379eb0c83d6a8e796c15d4319dfd1b1a9647b"
12
+ "releases": [
13
+ {
14
+ "release": "20260921.0-eaucoin.6",
15
+ "sha512": "86f85cca0f604e40887b6244cd9f57b3efbba760b3bdcabf066b3a408dde5b84fa2b1fc94e4db00ded989e1bb08522ad9343af8735a66b4964b3ca9b3a2c08b0"
16
+ }
17
+ ]
14
18
  }
15
19
  }
@@ -12,13 +12,15 @@
12
12
  * asked again, after a failure or a restart, asks for exactly the same timeline.
13
13
  *
14
14
  * A branch's compute has credentials of its own, which whoever asks for the branch makes
15
- * and neon-control is given only the hashes of: the SCRAM verifier of the password of
16
- * alasio's role on it, which its spec gives the role, and the SHA-256 of the token it
17
- * fetches its spec with, which fetches its spec alone. So what a branch is given reaches
18
- * neither main's compute nor another branch's spec. main's compute keeps the stack's.
15
+ * and neon-control is given only the hashes of: the SCRAM verifiers of the passwords of
16
+ * the roles its clients connect as (alasio's, which its spec gives the role, and the
17
+ * lake's, which its alasio sets), which neon-control answers Neon's proxy with, and the
18
+ * SHA-256 of the token it fetches its spec with, which fetches its spec alone. So what a
19
+ * branch is given reaches neither main's compute nor another branch's spec. main's
20
+ * compute keeps the stack's.
19
21
  */
20
22
  import { createHash, timingSafeEqual } from "node:crypto";
21
- import { DATABASE, ROLE } from "./secrets.js";
23
+ import { DATABASE, LAKE_ROLE, ROLE } from "./secrets.js";
22
24
  /** alasio's own branch: its first timeline, bootstrapped, never deleted. */
23
25
  export const MAIN = "main";
24
26
  /**
@@ -35,17 +37,26 @@ export const MAX_NAME_LENGTH = 30;
35
37
  export const HISTORY_DAYS = 1;
36
38
  /** HISTORY_DAYS, as alasio says it. */
37
39
  export const HISTORY = HISTORY_DAYS === 1 ? "a day" : `${HISTORY_DAYS} days`;
40
+ /** The roles a branch's clients connect as: alasio's, and its lake's. */
41
+ export const BRANCH_ROLES = [ROLE, LAKE_ROLE];
38
42
  /**
39
43
  * The scope of the lake's token, which lists the branches and does nothing else: Neon's
40
44
  * own services do not know it.
41
45
  */
42
46
  export const BRANCHES_SCOPE = "branches";
47
+ /** The scope of Neon's proxy's token, which asks for roles' secrets and wakes computes, and does nothing else. */
48
+ export const PROXY_SCOPE = "proxy";
49
+ /** The paths of neon-control's API that Neon's proxy calls, as its control plane (./endpoints.ts). */
50
+ export const PROXY_PATHS = ["/get_endpoint_access_control", "/wake_compute"];
43
51
  /**
44
52
  * The scopes of the tokens a call of neon-control's API (`method` on `url`) is taken
45
- * with: the admin's, as the storage controller's hooks bear it, and for a list of the
46
- * branches the lake's too, which keeps its files while any branch may read them.
53
+ * with: the admin's, as the storage controller's hooks bear it; for a list of the
54
+ * branches the lake's too, which keeps its files while any branch may read them; and for
55
+ * what the proxy calls, the proxy's alone.
47
56
  */
48
57
  export function callScopes(method, url) {
58
+ if (method === "GET" && PROXY_PATHS.includes(new URL(url, "http://neon-control").pathname))
59
+ return [PROXY_SCOPE];
49
60
  return method === "GET" && url === "/branches" ? ["admin", BRANCHES_SCOPE] : ["admin"];
50
61
  }
51
62
  /** A refusal for the API's caller: its HTTP status, and what it says. */
@@ -84,12 +95,16 @@ export function branchPoint(text) {
84
95
  export const tokenSha256 = (token) => createHash("sha256").update(token).digest("hex");
85
96
  /** The credentials `value` gives a branch's compute, checked. */
86
97
  function computeCredentials(value) {
87
- const { passwordVerifier, tokenSha256: sha, ...rest } = (typeof value === "object" && value !== null ? value : {});
88
- if (Object.keys(rest).length > 0 || typeof passwordVerifier !== "string" || !passwordVerifier.startsWith("SCRAM-SHA-256$") ||
98
+ const object = (candidate) => (typeof candidate === "object" && candidate !== null ? candidate : {});
99
+ const { verifiers, tokenSha256: sha, ...rest } = object(value);
100
+ const given = object(verifiers);
101
+ const verifier = (role) => typeof given[role] === "string" && given[role].startsWith("SCRAM-SHA-256$");
102
+ if (Object.keys(rest).length > 0 || Object.keys(given).length !== BRANCH_ROLES.length || !BRANCH_ROLES.every(verifier) ||
89
103
  typeof sha !== "string" || !/^[0-9a-f]{64}$/u.test(sha)) {
90
- throw new BranchError(400, "a branch's compute is given as { passwordVerifier, tokenSha256 }: a SCRAM-SHA-256 verifier, and a SHA-256 in hexadecimal");
104
+ throw new BranchError(400, `a branch's compute is given as { verifiers, tokenSha256 }: a SCRAM-SHA-256 verifier of each of ${BRANCH_ROLES.join(" and ")}, and a SHA-256 in hexadecimal`);
91
105
  }
92
- return { passwordVerifier, tokenSha256: sha };
106
+ // Each checked above to be a verifier.
107
+ return { verifiers: { [ROLE]: given[ROLE], [LAKE_ROLE]: given[LAKE_ROLE] }, tokenSha256: sha };
93
108
  }
94
109
  /** The branch `body` asks for: `{ name, parent?, lsn?, compute }`, its parent main if not given. */
95
110
  export function branchRequest(body) {
@@ -261,7 +276,11 @@ export function computeConfig(branch, stack) {
261
276
  cluster: {
262
277
  cluster_id: "alasio",
263
278
  name: "alasio",
264
- roles: [{ name: ROLE, encrypted_password: branch.compute?.passwordVerifier ?? stack.passwordVerifier, options: null }],
279
+ roles: [
280
+ { name: ROLE, encrypted_password: branch.compute?.verifiers.alasio ?? stack.verifiers.alasio, options: null },
281
+ // After alasio's: compute_ctl applies them in order, so once it may log in, alasio may too.
282
+ { name: stack.monitor.role, encrypted_password: stack.monitor.verifier(computeId(branch.name)), options: null },
283
+ ],
265
284
  databases: [{ name: DATABASE, owner: ROLE, options: null }],
266
285
  settings: [
267
286
  setting("listen_addresses", "0.0.0.0", "string"),
@@ -1 +1 @@
1
- {"version":3,"file":"branches.js","sourceRoot":"","sources":["../../../../neon/control/branches.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"branches.js","sourceRoot":"","sources":["../../../../neon/control/branches.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAG1D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEzD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC;AAE3B;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,CAAC;AAElC;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC;AAE9B,uCAAuC;AACvC,MAAM,CAAC,MAAM,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,CAAC;AAQ7E,yEAAyE;AACzE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,SAAS,CAAU,CAAC;AAsCvD;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;AAEzC,kHAAkH;AAClH,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;AAEnC,sGAAsG;AACtG,MAAM,CAAC,MAAM,WAAW,GAAsB,CAAC,8BAA8B,EAAE,eAAe,CAAC,CAAC;AAEhG;;;;;GAKG;AACH,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,GAAW;IACpD,IAAI,MAAM,KAAK,KAAK,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACjH,OAAO,MAAM,KAAK,KAAK,IAAI,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;AACzF,CAAC;AAED,yEAAyE;AACzE,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,MAAM,CAAS;IAExB,YAAY,MAAc,EAAE,OAAe;QACzC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED,2EAA2E;AAC3E,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,GAAG,IAAI,yBAAyB,CAAC;IAC3D,IAAI,IAAI,CAAC,MAAM,GAAG,eAAe;QAAE,OAAO,8BAA8B,eAAe,aAAa,CAAC;IACrG,wEAAwE;IACxE,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,gEAAgE,CAAC;IAC5H,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,KAAK,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAC/E,OAAO,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,GAAG,WAAW,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;AAChH,CAAC;AAED,4FAA4F;AAC5F,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAEvG,iEAAiE;AACjE,SAAS,kBAAkB,CAAC,KAAc;IACxC,MAAM,MAAM,GAAG,CAAC,SAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAoC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACzI,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IAChC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAC/G,IACE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC;QAClH,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EACvD,CAAC;QACD,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,kGAAkG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;IAC3L,CAAC;IACD,uCAAuC;IACvC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,IAAI,CAAW,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAW,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;AACrH,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,2DAA2D,CAAC,CAAC;IACvI,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,IAA+B,CAAC;IAC9F,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,mBAAmB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5F,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,mCAAmC,CAAC,CAAC;IAC9F,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,OAAO;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,yBAAyB,OAAO,EAAE,CAAC,CAAC;IACnF,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,sCAAsC,CAAC,CAAC;IACnG,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IACrE,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChE,IAAI,KAAK,KAAK,IAAI;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC3H,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAC5D,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,eAAe,CAAC,QAA2B,EAAE,EAAU;IACrE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAyB,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACrH,CAAC;AAED,mIAAmI;AACnI,MAAM,UAAU,cAAc,CAAC,QAA2B,EAAE,aAAiC,EAAE,SAAiB;IAC9G,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAChH,IAAI,SAAS,IAAI,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IAChE,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1G,OAAO,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAKD,mDAAmD;AACnD,MAAM,UAAU,UAAU,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,MAAM,EAAU;IACrE,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,uCAAuC;AACvC,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,QAA2B,EAAE,IAAY,EAAsB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAE9I,qFAAqF;AACrF,MAAM,UAAU,UAAU,CAAC,QAA2B,EAAE,MAAc;IACpE,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;IACrE,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;AACnH,CAAC;AAED,+CAA+C;AAC/C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAA2B,EAAE,IAAY,EAAY,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAExI;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,QAA2B,EAAE,OAAsB;IAChF,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,KAAK,IAAI,IAAI,QAAQ,CAAC,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1G,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU;YAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,mBAAmB,CAAC,CAAC;QAClG,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,IAAI,mBAAmB,QAAQ,CAAC,MAAM,OAAO,QAAQ,CAAC,GAAG,UAAU,CAAC,CAAC;QACtH,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,sBAAsB,OAAO,CAAC,MAAM,iBAAiB,CAAC,CAAC;IAC/F,IAAI,MAAM,CAAC,KAAK,KAAK,OAAO;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,OAAO,MAAM,CAAC,KAAK,wCAAwC,CAAC,CAAC;IACvI,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,QAA2B,EAAE,IAAY;IAChE,IAAI,IAAI,KAAK,IAAI;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,iDAAiD,CAAC,CAAC;IACxG,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,sBAAsB,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9F,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,4CAA4C,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC9H,OAAO,UAAU,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;AACxL,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,MAAmD,EAAE,gBAA+B,EAAE,OAAwB;IACxI,MAAM,GAAG,GAAG,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAChG,MAAM,IAAI,GAAG,wCAAwC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,MAAM,CAAC,OAAO,CAAC,oBAAoB,IAAI,aAAa,CAAC,OAAO,GAAG,IAAI,QAAQ,EAAE,CAAC;IACtK,IAAI,OAAO,CAAC,WAAW,KAAK,MAAM,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,oBAAoB,IAAI,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,gBAAgB,KAAK,IAAI,IAAI,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAClK,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,IAAI,SAAS,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,UAAU,OAAO,gBAAgB,IAAI,aAAa,OAAO,MAAM,CAAC,GAAG,IAAI,QAAQ,EAAE,CAAC,CAAC;IACxJ,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,WAAW;QAAE,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,iCAAiC,MAAM,CAAC,IAAI,+BAA+B,CAAC,CAAC;IAClI,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,WAAW,CAAC,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;AACjH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,MAA+C,EAAE,MAAqB,EAAE,OAAe;IACrH,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,KAAK,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,EAAE,CAAC;QACjF,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,GAAG,cAAc,MAAM,CAAC,IAAI,wDAAwD,OAAO,2BAA2B,OAAO,GAAG,CAAC,CAAC;IAClM,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC;IACpE,OAAO,IAAI,WAAW,CAAC,GAAG,EAAE,yCAAyC,MAAM,CAAC,IAAI,mCAAmC,QAAQ,EAAE,CAAC,CAAC;AACjI,CAAC;AAQD,2CAA2C;AAC3C,MAAM,UAAU,mBAAmB,CAAC,IAAa;IAC/C,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAA4B,CAAC;IACpI,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,EAAW,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC,CAAE,EAA8B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5K,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC;QACxI,MAAM,IAAI,WAAW,CAAC,GAAG,EAAE,2FAA2F,CAAC,CAAC;IAC1H,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,GAAe,EAAE,EAAE,CAAC;AACtF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAA2B,EAAE,EAAE,UAAU,EAAE,SAAS,EAAuB;IAC/G,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAA4B,EAAE,CAAC,SAAS,CAAC,KAAK,KAAK,OAAO,IAAI,SAAS,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;IAC1I,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC,UAAU,IAAI,MAAM,CAAC,WAAW,CAAC,UAAU;QAAE,OAAO,IAAI,CAAC;IAClF,OAAO,UAAU,CAAC,QAAQ,EAAE,EAAE,GAAG,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;AACrE,CAAC;AA6DD,iDAAiD;AACjD,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,CAAC;AAElC,SAAS,OAAO,CAAC,IAAY,EAAE,KAAsB,EAAE,OAAoB;IACzE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;AACjD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,MAAmB,EAAE,KAAmB;IACpE,oFAAoF;IACpF,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC;IACjF,OAAO;QACL,IAAI,EAAE;YACJ,cAAc,EAAE,GAAG;YACnB,uBAAuB,EAAE,CAAC,CAAC;YAC3B,OAAO,EAAE;gBACP,UAAU,EAAE,QAAQ;gBACpB,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE;oBACL,EAAE,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE;oBAC7G,4FAA4F;oBAC5F,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE;iBAChH;gBACD,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC3D,QAAQ,EAAE;oBACR,OAAO,CAAC,kBAAkB,EAAE,SAAS,EAAE,QAAQ,CAAC;oBAChD,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC;oBACxC,OAAO,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,CAAC;oBAC1C,OAAO,CAAC,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC;oBAC5C,OAAO,CAAC,qBAAqB,EAAE,eAAe,EAAE,MAAM,CAAC;oBACvD,mEAAmE;oBACnE,wDAAwD;oBACxD,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC;oBAC/B,OAAO,CAAC,2BAA2B,EAAE,aAAa,EAAE,QAAQ,CAAC;oBAC7D,OAAO,CAAC,0BAA0B,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACrD,OAAO,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC;oBACvC,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,CAAC;oBACvC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,SAAS,CAAC;oBACtC,gFAAgF;oBAChF,4EAA4E;oBAC5E,0EAA0E;oBAC1E,+EAA+E;oBAC/E,+EAA+E;oBAC/E,OAAO,CAAC,oBAAoB,EAAE,IAAI,EAAE,QAAQ,CAAC;oBAC7C,OAAO,CAAC,cAAc,EAAE,KAAK,EAAE,QAAQ,CAAC;oBACxC,OAAO,CAAC,oBAAoB,EAAE,IAAI,EAAE,QAAQ,CAAC;oBAC7C,OAAO,CAAC,iBAAiB,EAAE,EAAE,EAAE,SAAS,CAAC;oBACzC,OAAO,CAAC,uBAAuB,EAAE,EAAE,EAAE,SAAS,CAAC;oBAC/C,OAAO,CAAC,2BAA2B,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACtD,OAAO,CAAC,2BAA2B,EAAE,MAAM,EAAE,QAAQ,CAAC;oBACtD,OAAO,CAAC,qBAAqB,EAAE,KAAK,EAAE,MAAM,CAAC;iBAC9C;aACF;YACD,gBAAgB,EAAE,EAAE;YACpB,SAAS,EAAE,KAAK,CAAC,QAAQ;YACzB,WAAW,EAAE,MAAM,CAAC,UAAU;YAC9B,IAAI,EAAE,SAAS;YACf,qBAAqB,EAAE,wBAAwB,KAAK,CAAC,cAAc,OAAO;YAC1E,sBAAsB,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU;YACrD,sBAAsB,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;YAC7G,kBAAkB,EAAE,KAAK,CAAC,gBAAgB;SAC3C;QACD,kBAAkB,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;KACzC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * neon-control as the control plane of Neon's proxy (its `cplane-v1` backend:
3
+ * proxy/src/control_plane/client/cplane_proxy_v1.rs and messages.rs at Neon's
4
+ * release-9129), what is decided without I/O. Every client of alasio's Neon connects to
5
+ * the proxy, naming the compute it wants by `options=endpoint=<id>` (the compute's id,
6
+ * ./branches.ts's computeId), and the proxy asks:
7
+ *
8
+ * - `GET /get_endpoint_access_control?endpointish&role`: the role's SCRAM verifier, which
9
+ * it authenticates the client against and then the compute with, so the compute must
10
+ * store that verifier to the byte (./scram.ts). Main's roles' are the stack's, from its
11
+ * secrets; a branch's, the verifiers its request gave. Anything else is no endpoint, or
12
+ * no role, and refused.
13
+ * - `GET /wake_compute?endpointish`: the compute's address, once it accepts connections,
14
+ * woken first if it sleeps (./service.ts).
15
+ *
16
+ * A compute sleeps when no client has had a session on it for its `suspendAfter`, which
17
+ * neon-control counts on the compute itself: so a session holding an advisory lock, idle,
18
+ * keeps it awake, as compute_ctl's own activity monitor would not, and so does one opened
19
+ * and closed between two counts, and a wake asked for since, which a connection, or
20
+ * alasio's command line, is about to use.
21
+ */
22
+ import { COMPUTE_PORT } from "./branches.js";
23
+ /** The annotation of a compute's Deployment saying how many seconds it may be idle before it sleeps (./computes.ts). */
24
+ export const SUSPEND_AFTER = "alasio.dev/suspend-after-seconds";
25
+ /** The query of a proxy's call, at `url`, or null when it names no endpoint. */
26
+ export function proxyQuery(url) {
27
+ const { searchParams } = new URL(url, "http://neon-control");
28
+ const endpoint = searchParams.get("endpointish");
29
+ return endpoint ? { endpoint, role: searchParams.get("role") } : null;
30
+ }
31
+ /**
32
+ * The verifier `role` authenticates with on a branch's compute, given its `credentials`:
33
+ * of main's, which has none of its own, `mainVerifiers`' (the stack's); of any other, its
34
+ * own; null for a role neither has, as neon-control's own role, which no client connects
35
+ * as.
36
+ */
37
+ export function roleSecret(credentials, role, mainVerifiers) {
38
+ const verifiers = credentials?.verifiers ?? mainVerifiers;
39
+ return Object.hasOwn(verifiers, role) ? verifiers[role] ?? null : null;
40
+ }
41
+ /**
42
+ * Neon's error, as the proxy reads one (ControlPlaneErrorMessage): `reason` decides
43
+ * whether it asks again, ENDPOINT_IDLE among those it does, after the given delay.
44
+ */
45
+ export function controlPlaneError(reason, message, retryDelayMs = null) {
46
+ return {
47
+ error: message,
48
+ status: {
49
+ code: reason,
50
+ message,
51
+ details: {
52
+ error_info: { reason },
53
+ retry_info: retryDelayMs === null ? null : { retry_delay_ms: retryDelayMs },
54
+ user_facing_message: { message },
55
+ },
56
+ },
57
+ };
58
+ }
59
+ /** Where a compute is, as the proxy connects to it: its Service in `namespace`, which takes connections before the pod is ready. */
60
+ export const computeAddress = (service, namespace) => `${service}.${namespace}.svc.cluster.local:${COMPUTE_PORT}`;
61
+ /** What `wake_compute` answers: the compute of the branch `branch`'s address, and labels for the proxy's metrics. */
62
+ export function woken(address, branch, endpoint, cold) {
63
+ return {
64
+ address,
65
+ aux: { endpoint_id: endpoint, project_id: "alasio", branch_id: branch, compute_id: endpoint, cold_start_info: cold ? "pool_miss" : "warm" },
66
+ };
67
+ }
68
+ /**
69
+ * A compute's idleness, given what it was (none before the first count), its `use`
70
+ * counted now, and the time: used while a session is open, or one was established, or a
71
+ * wake asked for, since the last count; idle from the first count that finds none of
72
+ * them.
73
+ */
74
+ export function idleness(previous, use, now) {
75
+ const used = use.sessions > 0 || (previous !== undefined && (use.established !== previous.established || use.wokenAt !== previous.wokenAt));
76
+ return { since: used ? null : previous?.since ?? now, established: use.established, wokenAt: use.wokenAt };
77
+ }
78
+ /** Whether a compute idle as `idle` says has been idle for `suspendAfterMs` by `now`. */
79
+ export const suspendDue = ({ since }, now, suspendAfterMs) => since !== null && now - since >= suspendAfterMs;
80
+ /**
81
+ * Wakes a compute, as `steps` read it and act: records the wake asked for, and scales a
82
+ * compute that sleeps to one under its lock, once the pod put to sleep is gone, read
83
+ * again under it, as a sleep may have ended meanwhile; then waits until it takes
84
+ * connections. One found running needs no lock, but a sleep may then have scaled it
85
+ * down: one that counted it again before the wake was recorded, its scale to none
86
+ * landing after the compute was read. So while it takes none, the compute is read again,
87
+ * and one found asleep woken likewise. Whether it slept.
88
+ */
89
+ export async function wakeCompute(steps) {
90
+ const first = await steps.deployment();
91
+ await steps.asked();
92
+ const scaled = () => steps.locked(async () => {
93
+ const now = await steps.deployment();
94
+ if (now.replicas > 0)
95
+ return false;
96
+ await steps.untilGone(now);
97
+ await steps.scaleUp();
98
+ return true;
99
+ });
100
+ let slept = first.replicas === 0 && await scaled();
101
+ while (!(await steps.accepts())) {
102
+ if ((await steps.deployment()).replicas === 0)
103
+ slept = (await scaled()) || slept;
104
+ await steps.pause();
105
+ }
106
+ return slept;
107
+ }
108
+ //# sourceMappingURL=endpoints.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoints.js","sourceRoot":"","sources":["../../../../neon/control/endpoints.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,22 @@
1
1
  /**
2
2
  * A Postgres SCRAM-SHA-256 password verifier (RFC 5802, 7677), in the form
3
3
  * Postgres stores and compute_ctl passes through as a role's
4
- * encrypted_password: the password itself never reaches the compute's spec.
4
+ * encrypted_password: the password itself never reaches the compute's spec. Each is
5
+ * salted at random, as Postgres salts one, and made once: whoever sets a role's
6
+ * password (a compute's spec, alasio) and whoever answers for it (neon-control, to
7
+ * Neon's proxy, which authenticates a client with the keys of the verifier it is
8
+ * answered) are given the one verifier, which the compute must store to the byte.
5
9
  */
6
10
  import { createHash, createHmac, pbkdf2Sync, randomBytes } from "node:crypto";
7
11
  const ITERATIONS = 4096;
12
+ /**
13
+ * A verifier as Postgres stores one: its iterations, its salt, and the 32-byte StoredKey
14
+ * and ServerKey, each in base64. Nothing else, so one checked to be one may be written
15
+ * into a statement that sets a role's password.
16
+ */
17
+ const VERIFIER = /^SCRAM-SHA-256\$[1-9][0-9]*:[A-Za-z0-9+/]+={0,2}\$[A-Za-z0-9+/]{43}=:[A-Za-z0-9+/]{43}=$/u;
18
+ /** Whether `text` is a SCRAM-SHA-256 verifier, in the form scramVerifier makes and Postgres stores. */
19
+ export const isScramVerifier = (text) => VERIFIER.test(text);
8
20
  export function scramVerifier(password, salt = randomBytes(16)) {
9
21
  const salted = pbkdf2Sync(Buffer.from(password, "utf8"), salt, ITERATIONS, 32, "sha256");
10
22
  const clientKey = createHmac("sha256", salted).update("Client Key").digest();
@@ -1 +1 @@
1
- {"version":3,"file":"scram.js","sourceRoot":"","sources":["../../../../neon/control/scram.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9E,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,IAAI,GAAW,WAAW,CAAC,EAAE,CAAC;IAC5E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7E,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;IAClE,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7E,OAAO,iBAAiB,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;AAClI,CAAC"}
1
+ {"version":3,"file":"scram.js","sourceRoot":"","sources":["../../../../neon/control/scram.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE9E,MAAM,UAAU,GAAG,IAAI,CAAC;AAExB;;;;GAIG;AACH,MAAM,QAAQ,GAAG,2FAA2F,CAAC;AAE7G,uGAAuG;AACvG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,IAAY,EAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAE9E,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,IAAI,GAAW,WAAW,CAAC,EAAE,CAAC;IAC5E,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7E,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;IAClE,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;IAC7E,OAAO,iBAAiB,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;AAClI,CAAC"}
@@ -4,9 +4,21 @@
4
4
  * one, never rotated.
5
5
  */
6
6
  import { randomBytes, randomUUID } from "node:crypto";
7
+ import { scramVerifier } from "./scram.js";
7
8
  export const PAGESERVER_ID = 1;
8
9
  export const DATABASE = "alasio";
10
+ /** The roles of alasio's database: alasio's own, the one its spec gives every compute. */
9
11
  export const ROLE = "alasio";
12
+ /** The analytics lake's (src/neon/lake.ts), which alasio makes. */
13
+ export const LAKE_ROLE = "lake";
14
+ /** The one the lake's query endpoint reads it as (src/neon/lake.ts), which alasio makes. */
15
+ export const LAKE_READER_ROLE = "lake_reader";
16
+ /** Grafana's (src/neon/grafana.ts), which alasio makes. */
17
+ export const GRAFANA_ROLE = "grafana";
18
+ /** neon-control's own (./computes.ts), which every compute's spec gives it, and no client connects as. */
19
+ export const MONITOR_ROLE = "neon_control";
20
+ /** The roles main's clients connect as, whose verifiers the stack keeps. */
21
+ export const CLIENT_ROLES = [ROLE, LAKE_ROLE, LAKE_READER_ROLE, GRAFANA_ROLE];
10
22
  function hexId() {
11
23
  return randomUUID().replaceAll("-", "");
12
24
  }
@@ -30,6 +42,13 @@ export function completeSecrets(existing = {}) {
30
42
  };
31
43
  // A secret already held keeps its place; one made is added after them, in this order.
32
44
  const s3 = kept(stored.s3, () => ({}));
45
+ const verifiers = kept(stored.verifiers, () => ({}));
46
+ const passwords = {
47
+ alasioPassword: kept(stored.alasioPassword, () => secret()),
48
+ lakePassword: kept(stored.lakePassword, () => secret()),
49
+ lakeReaderPassword: kept(stored.lakeReaderPassword, () => secret()),
50
+ grafanaPassword: kept(stored.grafanaPassword, () => secret()),
51
+ };
33
52
  const secrets = {
34
53
  ...stored,
35
54
  tenantId: kept(stored.tenantId, () => hexId()),
@@ -38,24 +57,36 @@ export function completeSecrets(existing = {}) {
38
57
  ...s3,
39
58
  neon: kept(s3.neon, () => ({ accessKey: `neon${hexId().slice(0, 12)}`, secretKey: secret() })),
40
59
  admin: kept(s3.admin, () => ({ accessKey: `admin${hexId().slice(0, 12)}`, secretKey: secret() })),
60
+ backups: kept(s3.backups, () => ({ accessKey: `backups${hexId().slice(0, 12)}`, secretKey: secret() })),
41
61
  lake: kept(s3.lake, () => ({ accessKey: `lake${hexId().slice(0, 12)}`, secretKey: secret() })),
42
62
  lakeReader: kept(s3.lakeReader, () => ({ accessKey: `lakereader${hexId().slice(0, 12)}`, secretKey: secret() })),
43
63
  workspaces: kept(s3.workspaces, () => ({ accessKey: `workspaces${hexId().slice(0, 12)}`, secretKey: secret() })),
64
+ snapshots: kept(s3.snapshots, () => ({ accessKey: `snapshots${hexId().slice(0, 12)}`, secretKey: secret() })),
44
65
  },
45
66
  controllerDbPassword: kept(stored.controllerDbPassword, () => secret()),
46
- alasioPassword: kept(stored.alasioPassword, () => secret()),
47
- lakePassword: kept(stored.lakePassword, () => secret()),
67
+ alasioPassword: passwords.alasioPassword,
68
+ lakePassword: passwords.lakePassword,
48
69
  computeControlToken: kept(stored.computeControlToken, () => secret()),
49
70
  valkeyPassword: kept(stored.valkeyPassword, () => secret()),
50
- lakeReaderPassword: kept(stored.lakeReaderPassword, () => secret()),
71
+ lakeReaderPassword: passwords.lakeReaderPassword,
51
72
  lakeQueryToken: kept(stored.lakeQueryToken, () => secret()),
52
- grafanaPassword: kept(stored.grafanaPassword, () => secret()),
73
+ grafanaPassword: passwords.grafanaPassword,
53
74
  grafanaAdminPassword: kept(stored.grafanaAdminPassword, () => secret()),
54
75
  grafanaSecretKey: kept(stored.grafanaSecretKey, () => secret()),
55
76
  branchForkKey: kept(stored.branchForkKey, () => secret()),
56
77
  filerStoreFilerPassword: kept(stored.filerStoreFilerPassword, () => secret()),
57
78
  filerStoreCollectorPassword: kept(stored.filerStoreCollectorPassword, () => secret()),
58
79
  filerStoreBackupPassword: kept(stored.filerStoreBackupPassword, () => secret()),
80
+ monitorKey: kept(stored.monitorKey, () => secret()),
81
+ // Each of its password above, whether that was kept or made now.
82
+ verifiers: {
83
+ ...verifiers,
84
+ [ROLE]: kept(verifiers[ROLE], () => scramVerifier(passwords.alasioPassword)),
85
+ [LAKE_ROLE]: kept(verifiers[LAKE_ROLE], () => scramVerifier(passwords.lakePassword)),
86
+ [LAKE_READER_ROLE]: kept(verifiers[LAKE_READER_ROLE], () => scramVerifier(passwords.lakeReaderPassword)),
87
+ [GRAFANA_ROLE]: kept(verifiers[GRAFANA_ROLE], () => scramVerifier(passwords.grafanaPassword)),
88
+ },
89
+ nodeAgentToken: kept(stored.nodeAgentToken, () => secret()),
59
90
  };
60
91
  return { secrets, changed };
61
92
  }
@@ -67,22 +98,32 @@ export function remoteStorage(prefix, { endpoint, bucket, region = "us-east-1" }
67
98
  return `{ endpoint="${endpoint}", bucket_name="${bucket}", bucket_region="${region}", prefix_in_bucket="${prefix}" }`;
68
99
  }
69
100
  /**
70
- * SeaweedFS's S3 identities: Neon, the lake and, when it is on, workspace storage, each
71
- * on their own bucket of `buckets`; the lake's reader, which may only read the lake's;
72
- * and an admin, which makes the buckets and keeps the backups.
101
+ * SeaweedFS's S3 identities: Neon, the lake, workspace storage when it is on and the
102
+ * snapshots' when sandboxes are snapshotted, each on their own bucket of `buckets`; the
103
+ * lake's reader, which may only read the lake's; the backups', which writes the backups'
104
+ * bucket and reads the workspaces' metadata it backs up; and an admin of Neon's bucket
105
+ * alone, which gives it its lifecycle rules. The snapshots' identity is its bucket's admin,
106
+ * giving it its rules itself: what may write that bucket writes the images the node agents
107
+ * restore as root, so nothing else may.
73
108
  */
74
109
  export function s3Identities(secrets, buckets) {
75
110
  const on = (name) => [`Read:${name}`, `List:${name}`, `Tagging:${name}`, `Write:${name}`];
76
111
  return {
77
112
  identities: [
78
113
  { name: "neon", credentials: [secrets.s3.neon], actions: on(buckets.neon) },
79
- { name: "admin", credentials: [secrets.s3.admin], actions: ["Admin", "Read", "List", "Tagging", "Write"] },
114
+ { name: "admin", credentials: [secrets.s3.admin], actions: [`Admin:${buckets.neon}`] },
115
+ {
116
+ name: "backups",
117
+ credentials: [secrets.s3.backups],
118
+ actions: [...on(buckets.backups), ...(buckets.workspaces === null ? [] : [`Read:${buckets.workspaces}`, `List:${buckets.workspaces}`])],
119
+ },
80
120
  // Branch environments' lakes are given it too: a branch's lake reads main's files where they are (DuckLake keeps
81
121
  // every file's path relative to one data path) and writes beside them, and SeaweedFS's Write, which writing
82
122
  // needs, deletes as well, so it cannot be narrowed to a branch's own files (cli/src/branches.ts).
83
123
  { name: "lake", credentials: [secrets.s3.lake], actions: on(buckets.lake) },
84
124
  { name: "lakeReader", credentials: [secrets.s3.lakeReader], actions: [`Read:${buckets.lake}`, `List:${buckets.lake}`] },
85
125
  ...(buckets.workspaces === null ? [] : [{ name: "workspaces", credentials: [secrets.s3.workspaces], actions: on(buckets.workspaces) }]),
126
+ ...(buckets.snapshots === null ? [] : [{ name: "snapshots", credentials: [secrets.s3.snapshots], actions: [...on(buckets.snapshots), `Admin:${buckets.snapshots}`] }]),
86
127
  ],
87
128
  };
88
129
  }