@xemahq/opencode-xema-plugin 0.1.3 → 0.1.4

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 (3) hide show
  1. package/LICENSE +176 -175
  2. package/package.json +11 -2
  3. package/plugin.mjs +92 -88
package/LICENSE CHANGED
@@ -1,175 +1,176 @@
1
- Xema Business Source License 1.1
2
-
3
- License text copyright (c) 2020 MariaDB Corporation Ab, All Rights Reserved.
4
- "Business Source License" is a trademark of MariaDB Corporation Ab.
5
-
6
- -----------------------------------------------------------------------------
7
-
8
- Parameters
9
-
10
- Licensor: Neuralchowder Inc.
11
-
12
- Licensed Work: Xema. The Licensed Work is (c) 2026 Neuralchowder Inc..
13
-
14
- The Licensed Work includes, without limitation, Xema Core, Xema Runtime,
15
- Xema Kernel, Xema control plane, Xema application runtime, Xema biome
16
- runtime, Xema biome registry, Xema store services, Xema orchestration
17
- services, Xema agents, Xema skills, Xema memory services, Xema APIs, Xema
18
- user interfaces, Xema command-line tools, Xema deployment artifacts, Xema
19
- templates, Xema specifications, Xema schemas, Xema manifests, Xema
20
- documentation, Xema examples, and all source code, object code, binaries,
21
- packages, modules, configuration files, manifests, schemas, examples,
22
- templates, documentation, and derivative works included in or distributed
23
- as part of the Xema software project.
24
-
25
- The Licensed Work does not include any third-party software, libraries,
26
- dependencies, packages, assets, or components that are distributed with the
27
- Licensed Work but are governed by their own separate license terms. Such
28
- third-party materials remain subject to their respective licenses.
29
-
30
- A specific file, package, component, or directory may state that it is
31
- governed by a different license. In that case, that specific file, package,
32
- component, or directory is governed by the license expressly stated therein.
33
-
34
- Additional Use Grant:
35
-
36
- You may make production use of the Licensed Work, provided that your use
37
- does not include offering, providing, making available, distributing,
38
- hosting, managing, embedding, reselling, white-labeling, sublicensing,
39
- commercializing, or otherwise making the Licensed Work, or any modified
40
- version or derivative work of the Licensed Work, available to Third Parties
41
- as part of a Competitive Offering.
42
-
43
- The following definitions and clarifications form part of, and govern
44
- the interpretation of, the Additional Use Grant set out above.
45
-
46
- 1. "Production Use" means any use of the Licensed Work other than for
47
- development, testing, evaluation, demonstration, experimentation,
48
- benchmarking, or other non-production purposes.
49
-
50
- 2. "Affiliate" means any entity that, directly or indirectly,
51
- controls, is controlled by, or is under common control with you,
52
- where "control" means ownership of more than fifty percent (50%) of
53
- the voting interests of the entity, or the power to direct its
54
- management.
55
-
56
- 3. "Third Party" means any natural person or legal entity other than
57
- you and your Affiliates.
58
-
59
- 4. "Competitive Offering" means any product or service, made available
60
- to one or more Third Parties for a fee or other consideration
61
- (including without limitation on a paid, subscription,
62
- advertising-supported, hosted, or managed-service basis), that is
63
- offered or marketed as, or that competes with, a software platform,
64
- runtime, orchestration system, agent or automation system,
65
- extension or distribution marketplace, or other software system
66
- that provides, in substantial part, the same or substantially
67
- similar capabilities as those provided by the Licensed Work. A
68
- product or service is a Competitive Offering whether the Licensed
69
- Work is provided in whole or in part, alone or bundled with other
70
- software, and whether modified or unmodified.
71
-
72
- 5. Providing, hosting, or managing the Licensed Work for a Third Party,
73
- or otherwise making the Licensed Work available to a Third Party as
74
- a hosted or managed service such that the Third Party obtains the
75
- principal value or functionality of the Licensed Work, is a
76
- Competitive Offering and is not permitted by the Additional Use
77
- Grant.
78
-
79
- 6. Subject to the foregoing, the Additional Use Grant permits you to
80
- make Production Use of the Licensed Work for your own internal
81
- business purposes and to build, operate, and provide your own
82
- products and services to Third Parties, provided that the Licensed
83
- Work itself (whether modified or unmodified) is not the product or
84
- service, and is not a Competitive Offering, made available to those
85
- Third Parties.
86
-
87
- 7. You may modify the Licensed Work and create derivative works for
88
- any purpose permitted by this License. Any Production Use of such
89
- modified or derivative works remains subject to the same
90
- restrictions as the Licensed Work, including the prohibition on
91
- Competitive Offerings.
92
-
93
- 8. Use of the Licensed Work by your own employees, contractors, and
94
- agents, acting on your behalf and for your benefit, is not by
95
- itself making the Licensed Work available to a Third Party.
96
-
97
- 9. Embedding or distributing the Licensed Work as a component of your
98
- own product or service is permitted only where the Licensed Work
99
- does not constitute the principal value of that product or service
100
- and the product or service is not a Competitive Offering.
101
-
102
- 10. Nothing in this Additional Use Grant grants any right to use any
103
- name, trademark, service mark, or logo of the Licensor or its
104
- Affiliates, except as reasonably required for customary
105
- attribution.
106
-
107
- 11. The rights stated in this Additional Use Grant are the maximum
108
- rights granted for Production Use prior to the Change Date. Any
109
- Production Use not expressly permitted requires a separate
110
- commercial license from the Licensor.
111
-
112
- 12. If any provision of this Additional Use Grant is held invalid or
113
- unenforceable, that provision shall be limited or eliminated to
114
- the minimum extent necessary so that the remainder of this
115
- Additional Use Grant, and of this License, remains in full force
116
- and effect. The Licensor reserves all rights not expressly granted
117
- by this License.
118
-
119
-
120
- Change Date: Four years from the date the specific version of the Licensed
121
- Work is first publicly released by Licensor.
122
-
123
- Change License: Mozilla Public License, Version 2.0
124
-
125
- For information about alternative licensing arrangements, commercial
126
- licensing, enterprise licensing, OEM licensing, appliance licensing, managed
127
- service licensing, cloud provider licensing, or other commercial use of the
128
- Licensed Work, please contact: licensing@neuralchowder.com
129
-
130
- -----------------------------------------------------------------------------
131
-
132
- Notice
133
-
134
- Business Source License 1.1
135
-
136
- Terms
137
-
138
- The Licensor hereby grants you the right to copy, modify, create derivative
139
- works, redistribute, and make non-production use of the Licensed Work. The
140
- Licensor may make an Additional Use Grant, above, permitting limited
141
- production use.
142
-
143
- Effective on the Change Date, or the fourth anniversary of the first publicly
144
- available distribution of a specific version of the Licensed Work under this
145
- License, whichever comes first, the Licensor hereby grants you rights under
146
- the terms of the Change License, and the rights granted in the paragraph above
147
- terminate.
148
-
149
- If your use of the Licensed Work does not comply with the requirements
150
- currently in effect as described in this License, you must purchase a
151
- commercial license from the Licensor, its affiliated entities, or authorized
152
- resellers, or you must refrain from using the Licensed Work.
153
-
154
- All copies of the original and modified Licensed Work, and derivative works of
155
- the Licensed Work, are subject to this License. This License applies separately
156
- for each version of the Licensed Work and the Change Date may vary for each
157
- version of the Licensed Work released by Licensor.
158
-
159
- You must conspicuously display this License on each original or modified copy
160
- of the Licensed Work. If you receive the Licensed Work in original or modified
161
- form from a third party, the terms and conditions set forth in this License
162
- apply to your use of that work.
163
-
164
- Any use of the Licensed Work in violation of this License will automatically
165
- terminate your rights under this License for the current and all other
166
- versions of the Licensed Work.
167
-
168
- This License does not grant you any right in any trademark or logo of Licensor
169
- or its affiliates, provided that you may use a trademark or logo of Licensor
170
- as expressly required by this License.
171
-
172
- TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN
173
- "AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS
174
- OR IMPLIED, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS
175
- FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE.
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
package/package.json CHANGED
@@ -1,7 +1,16 @@
1
1
  {
2
2
  "name": "@xemahq/opencode-xema-plugin",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Opencode plugin providing Xema-namespaced runtime tools (xema_memory_*) and the dynamic system-prompt overlay hook.",
5
+ "license": "Apache-2.0",
6
+ "author": "Neuralchowder Inc. <developer@xema.dev> (https://xema.dev)",
7
+ "homepage": "https://xema.dev",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/xema-dev/xema-runtime-core.git",
11
+ "directory": "packages/runtime/opencode-xema-plugin"
12
+ },
13
+ "bugs": "https://github.com/xema-dev/xema-runtime-core/issues",
5
14
  "publishConfig": {
6
15
  "registry": "https://registry.npmjs.org/",
7
16
  "access": "public"
@@ -24,7 +33,7 @@
24
33
  "esbuild": "^0.25.4",
25
34
  "typescript": "5.9.3",
26
35
  "zod": "^4.3.6",
27
- "@xemahq/kernel-contracts": "^0.13.0"
36
+ "@xemahq/kernel-contracts": "^0.58.0"
28
37
  },
29
38
  "exports": {
30
39
  ".": {
package/plugin.mjs CHANGED
@@ -18,7 +18,7 @@ import { promisify } from "node:util";
18
18
  import { existsSync, readFileSync } from "node:fs";
19
19
  import { join } from "node:path";
20
20
 
21
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
21
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
22
22
  var external_exports = {};
23
23
  __export(external_exports, {
24
24
  $brand: () => $brand,
@@ -261,7 +261,7 @@ __export(external_exports, {
261
261
  xor: () => xor
262
262
  });
263
263
 
264
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/index.js
264
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/index.js
265
265
  var core_exports2 = {};
266
266
  __export(core_exports2, {
267
267
  $ZodAny: () => $ZodAny,
@@ -540,7 +540,7 @@ __export(core_exports2, {
540
540
  version: () => version
541
541
  });
542
542
 
543
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/core.js
543
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/core.js
544
544
  var _a;
545
545
  var NEVER = /* @__PURE__ */ Object.freeze({
546
546
  status: "aborted"
@@ -597,7 +597,7 @@ function $constructor(name, initializer3, params) {
597
597
  Object.defineProperty(_, "name", { value: name });
598
598
  return _;
599
599
  }
600
- var $brand = Symbol("zod_brand");
600
+ var $brand = /* @__PURE__ */ Symbol("zod_brand");
601
601
  var $ZodAsyncError = class extends Error {
602
602
  constructor() {
603
603
  super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`);
@@ -617,7 +617,7 @@ function config(newConfig) {
617
617
  return globalConfig;
618
618
  }
619
619
 
620
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/util.js
620
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/util.js
621
621
  var util_exports = {};
622
622
  __export(util_exports, {
623
623
  BIGINT_FORMAT_RANGES: () => BIGINT_FORMAT_RANGES,
@@ -1313,7 +1313,7 @@ var Class = class {
1313
1313
  }
1314
1314
  };
1315
1315
 
1316
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/errors.js
1316
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/errors.js
1317
1317
  var initializer = (inst, def) => {
1318
1318
  inst.name = "$ZodError";
1319
1319
  Object.defineProperty(inst, "_zod", {
@@ -1452,7 +1452,7 @@ function prettifyError(error51) {
1452
1452
  return lines.join("\n");
1453
1453
  }
1454
1454
 
1455
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/parse.js
1455
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/parse.js
1456
1456
  var _parse = (_Err) => (schema, value, _ctx, _params) => {
1457
1457
  const ctx = _ctx ? { ..._ctx, async: false } : { async: false };
1458
1458
  const result = schema._zod.run({ value, issues: [] }, ctx);
@@ -1540,7 +1540,7 @@ var _safeDecodeAsync = (_Err) => async (schema, value, _ctx) => {
1540
1540
  };
1541
1541
  var safeDecodeAsync = /* @__PURE__ */ _safeDecodeAsync($ZodRealError);
1542
1542
 
1543
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/regexes.js
1543
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/regexes.js
1544
1544
  var regexes_exports = {};
1545
1545
  __export(regexes_exports, {
1546
1546
  base64: () => base64,
@@ -1699,7 +1699,7 @@ var sha512_hex = /^[0-9a-fA-F]{128}$/;
1699
1699
  var sha512_base64 = /* @__PURE__ */ fixedBase64(86, "==");
1700
1700
  var sha512_base64url = /* @__PURE__ */ fixedBase64url(86);
1701
1701
 
1702
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/checks.js
1702
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/checks.js
1703
1703
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
1704
1704
  var _a3;
1705
1705
  inst._zod ?? (inst._zod = {});
@@ -2247,7 +2247,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
2247
2247
  };
2248
2248
  });
2249
2249
 
2250
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/doc.js
2250
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/doc.js
2251
2251
  var Doc = class {
2252
2252
  constructor(args = []) {
2253
2253
  this.content = [];
@@ -2283,14 +2283,14 @@ var Doc = class {
2283
2283
  }
2284
2284
  };
2285
2285
 
2286
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/versions.js
2286
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/versions.js
2287
2287
  var version = {
2288
2288
  major: 4,
2289
2289
  minor: 4,
2290
2290
  patch: 3
2291
2291
  };
2292
2292
 
2293
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/schemas.js
2293
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/schemas.js
2294
2294
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
2295
2295
  var _a3;
2296
2296
  inst ?? (inst = {});
@@ -4383,7 +4383,7 @@ function handleRefineResult(result, payload, input, inst) {
4383
4383
  }
4384
4384
  }
4385
4385
 
4386
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/index.js
4386
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/index.js
4387
4387
  var locales_exports = {};
4388
4388
  __export(locales_exports, {
4389
4389
  ar: () => ar_default,
@@ -4440,7 +4440,7 @@ __export(locales_exports, {
4440
4440
  zhTW: () => zh_TW_default
4441
4441
  });
4442
4442
 
4443
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ar.js
4443
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ar.js
4444
4444
  var error = () => {
4445
4445
  const Sizable = {
4446
4446
  string: { unit: "\u062D\u0631\u0641", verb: "\u0623\u0646 \u064A\u062D\u0648\u064A" },
@@ -4547,7 +4547,7 @@ function ar_default() {
4547
4547
  };
4548
4548
  }
4549
4549
 
4550
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/az.js
4550
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/az.js
4551
4551
  var error2 = () => {
4552
4552
  const Sizable = {
4553
4553
  string: { unit: "simvol", verb: "olmal\u0131d\u0131r" },
@@ -4653,7 +4653,7 @@ function az_default() {
4653
4653
  };
4654
4654
  }
4655
4655
 
4656
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/be.js
4656
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/be.js
4657
4657
  function getBelarusianPlural(count, one, few, many) {
4658
4658
  const absCount = Math.abs(count);
4659
4659
  const lastDigit = absCount % 10;
@@ -4810,7 +4810,7 @@ function be_default() {
4810
4810
  };
4811
4811
  }
4812
4812
 
4813
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/bg.js
4813
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/bg.js
4814
4814
  var error4 = () => {
4815
4815
  const Sizable = {
4816
4816
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0430", verb: "\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430" },
@@ -4931,7 +4931,7 @@ function bg_default() {
4931
4931
  };
4932
4932
  }
4933
4933
 
4934
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ca.js
4934
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ca.js
4935
4935
  var error5 = () => {
4936
4936
  const Sizable = {
4937
4937
  string: { unit: "car\xE0cters", verb: "contenir" },
@@ -5040,7 +5040,7 @@ function ca_default() {
5040
5040
  };
5041
5041
  }
5042
5042
 
5043
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/cs.js
5043
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/cs.js
5044
5044
  var error6 = () => {
5045
5045
  const Sizable = {
5046
5046
  string: { unit: "znak\u016F", verb: "m\xEDt" },
@@ -5152,7 +5152,7 @@ function cs_default() {
5152
5152
  };
5153
5153
  }
5154
5154
 
5155
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/da.js
5155
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/da.js
5156
5156
  var error7 = () => {
5157
5157
  const Sizable = {
5158
5158
  string: { unit: "tegn", verb: "havde" },
@@ -5268,7 +5268,7 @@ function da_default() {
5268
5268
  };
5269
5269
  }
5270
5270
 
5271
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/de.js
5271
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/de.js
5272
5272
  var error8 = () => {
5273
5273
  const Sizable = {
5274
5274
  string: { unit: "Zeichen", verb: "zu haben" },
@@ -5377,7 +5377,7 @@ function de_default() {
5377
5377
  };
5378
5378
  }
5379
5379
 
5380
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/el.js
5380
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/el.js
5381
5381
  var error9 = () => {
5382
5382
  const Sizable = {
5383
5383
  string: { unit: "\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2", verb: "\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9" },
@@ -5487,7 +5487,7 @@ function el_default() {
5487
5487
  };
5488
5488
  }
5489
5489
 
5490
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/en.js
5490
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/en.js
5491
5491
  var error10 = () => {
5492
5492
  const Sizable = {
5493
5493
  string: { unit: "characters", verb: "to have" },
@@ -5600,7 +5600,7 @@ function en_default() {
5600
5600
  };
5601
5601
  }
5602
5602
 
5603
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/eo.js
5603
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/eo.js
5604
5604
  var error11 = () => {
5605
5605
  const Sizable = {
5606
5606
  string: { unit: "karaktrojn", verb: "havi" },
@@ -5710,7 +5710,7 @@ function eo_default() {
5710
5710
  };
5711
5711
  }
5712
5712
 
5713
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/es.js
5713
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/es.js
5714
5714
  var error12 = () => {
5715
5715
  const Sizable = {
5716
5716
  string: { unit: "caracteres", verb: "tener" },
@@ -5843,7 +5843,7 @@ function es_default() {
5843
5843
  };
5844
5844
  }
5845
5845
 
5846
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fa.js
5846
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fa.js
5847
5847
  var error13 = () => {
5848
5848
  const Sizable = {
5849
5849
  string: { unit: "\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
@@ -5958,7 +5958,7 @@ function fa_default() {
5958
5958
  };
5959
5959
  }
5960
5960
 
5961
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fi.js
5961
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fi.js
5962
5962
  var error14 = () => {
5963
5963
  const Sizable = {
5964
5964
  string: { unit: "merkki\xE4", subject: "merkkijonon" },
@@ -6071,7 +6071,7 @@ function fi_default() {
6071
6071
  };
6072
6072
  }
6073
6073
 
6074
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fr.js
6074
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fr.js
6075
6075
  var error15 = () => {
6076
6076
  const Sizable = {
6077
6077
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -6197,7 +6197,7 @@ function fr_default() {
6197
6197
  };
6198
6198
  }
6199
6199
 
6200
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fr-CA.js
6200
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/fr-CA.js
6201
6201
  var error16 = () => {
6202
6202
  const Sizable = {
6203
6203
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -6305,7 +6305,7 @@ function fr_CA_default() {
6305
6305
  };
6306
6306
  }
6307
6307
 
6308
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/he.js
6308
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/he.js
6309
6309
  var error17 = () => {
6310
6310
  const TypeNames = {
6311
6311
  string: { label: "\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA", gender: "f" },
@@ -6500,7 +6500,7 @@ function he_default() {
6500
6500
  };
6501
6501
  }
6502
6502
 
6503
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hr.js
6503
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hr.js
6504
6504
  var error18 = () => {
6505
6505
  const Sizable = {
6506
6506
  string: { unit: "znakova", verb: "imati" },
@@ -6623,7 +6623,7 @@ function hr_default() {
6623
6623
  };
6624
6624
  }
6625
6625
 
6626
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hu.js
6626
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hu.js
6627
6627
  var error19 = () => {
6628
6628
  const Sizable = {
6629
6629
  string: { unit: "karakter", verb: "legyen" },
@@ -6732,7 +6732,7 @@ function hu_default() {
6732
6732
  };
6733
6733
  }
6734
6734
 
6735
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hy.js
6735
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/hy.js
6736
6736
  function getArmenianPlural(count, one, many) {
6737
6737
  return Math.abs(count) === 1 ? one : many;
6738
6738
  }
@@ -6880,7 +6880,7 @@ function hy_default() {
6880
6880
  };
6881
6881
  }
6882
6882
 
6883
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/id.js
6883
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/id.js
6884
6884
  var error21 = () => {
6885
6885
  const Sizable = {
6886
6886
  string: { unit: "karakter", verb: "memiliki" },
@@ -6987,7 +6987,7 @@ function id_default() {
6987
6987
  };
6988
6988
  }
6989
6989
 
6990
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/is.js
6990
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/is.js
6991
6991
  var error22 = () => {
6992
6992
  const Sizable = {
6993
6993
  string: { unit: "stafi", verb: "a\xF0 hafa" },
@@ -7097,7 +7097,7 @@ function is_default() {
7097
7097
  };
7098
7098
  }
7099
7099
 
7100
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/it.js
7100
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/it.js
7101
7101
  var error23 = () => {
7102
7102
  const Sizable = {
7103
7103
  string: { unit: "caratteri", verb: "avere" },
@@ -7206,7 +7206,7 @@ function it_default() {
7206
7206
  };
7207
7207
  }
7208
7208
 
7209
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ja.js
7209
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ja.js
7210
7210
  var error24 = () => {
7211
7211
  const Sizable = {
7212
7212
  string: { unit: "\u6587\u5B57", verb: "\u3067\u3042\u308B" },
@@ -7314,7 +7314,7 @@ function ja_default() {
7314
7314
  };
7315
7315
  }
7316
7316
 
7317
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ka.js
7317
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ka.js
7318
7318
  var error25 = () => {
7319
7319
  const Sizable = {
7320
7320
  string: { unit: "\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD", verb: "\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1" },
@@ -7427,7 +7427,7 @@ function ka_default() {
7427
7427
  };
7428
7428
  }
7429
7429
 
7430
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/km.js
7430
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/km.js
7431
7431
  var error26 = () => {
7432
7432
  const Sizable = {
7433
7433
  string: { unit: "\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
@@ -7538,12 +7538,12 @@ function km_default() {
7538
7538
  };
7539
7539
  }
7540
7540
 
7541
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/kh.js
7541
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/kh.js
7542
7542
  function kh_default() {
7543
7543
  return km_default();
7544
7544
  }
7545
7545
 
7546
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ko.js
7546
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ko.js
7547
7547
  var error27 = () => {
7548
7548
  const Sizable = {
7549
7549
  string: { unit: "\uBB38\uC790", verb: "to have" },
@@ -7655,7 +7655,7 @@ function ko_default() {
7655
7655
  };
7656
7656
  }
7657
7657
 
7658
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/lt.js
7658
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/lt.js
7659
7659
  var capitalizeFirstCharacter = (text) => {
7660
7660
  return text.charAt(0).toUpperCase() + text.slice(1);
7661
7661
  };
@@ -7859,7 +7859,7 @@ function lt_default() {
7859
7859
  };
7860
7860
  }
7861
7861
 
7862
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/mk.js
7862
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/mk.js
7863
7863
  var error29 = () => {
7864
7864
  const Sizable = {
7865
7865
  string: { unit: "\u0437\u043D\u0430\u0446\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
@@ -7969,7 +7969,7 @@ function mk_default() {
7969
7969
  };
7970
7970
  }
7971
7971
 
7972
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ms.js
7972
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ms.js
7973
7973
  var error30 = () => {
7974
7974
  const Sizable = {
7975
7975
  string: { unit: "aksara", verb: "mempunyai" },
@@ -8077,7 +8077,7 @@ function ms_default() {
8077
8077
  };
8078
8078
  }
8079
8079
 
8080
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/nl.js
8080
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/nl.js
8081
8081
  var error31 = () => {
8082
8082
  const Sizable = {
8083
8083
  string: { unit: "tekens", verb: "heeft" },
@@ -8188,7 +8188,7 @@ function nl_default() {
8188
8188
  };
8189
8189
  }
8190
8190
 
8191
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/no.js
8191
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/no.js
8192
8192
  var error32 = () => {
8193
8193
  const Sizable = {
8194
8194
  string: { unit: "tegn", verb: "\xE5 ha" },
@@ -8297,7 +8297,7 @@ function no_default() {
8297
8297
  };
8298
8298
  }
8299
8299
 
8300
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ota.js
8300
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ota.js
8301
8301
  var error33 = () => {
8302
8302
  const Sizable = {
8303
8303
  string: { unit: "harf", verb: "olmal\u0131d\u0131r" },
@@ -8407,7 +8407,7 @@ function ota_default() {
8407
8407
  };
8408
8408
  }
8409
8409
 
8410
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ps.js
8410
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ps.js
8411
8411
  var error34 = () => {
8412
8412
  const Sizable = {
8413
8413
  string: { unit: "\u062A\u0648\u06A9\u064A", verb: "\u0648\u0644\u0631\u064A" },
@@ -8522,7 +8522,7 @@ function ps_default() {
8522
8522
  };
8523
8523
  }
8524
8524
 
8525
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/pl.js
8525
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/pl.js
8526
8526
  var error35 = () => {
8527
8527
  const Sizable = {
8528
8528
  string: { unit: "znak\xF3w", verb: "mie\u0107" },
@@ -8632,7 +8632,7 @@ function pl_default() {
8632
8632
  };
8633
8633
  }
8634
8634
 
8635
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/pt.js
8635
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/pt.js
8636
8636
  var error36 = () => {
8637
8637
  const Sizable = {
8638
8638
  string: { unit: "caracteres", verb: "ter" },
@@ -8741,7 +8741,7 @@ function pt_default() {
8741
8741
  };
8742
8742
  }
8743
8743
 
8744
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ro.js
8744
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ro.js
8745
8745
  var error37 = () => {
8746
8746
  const Sizable = {
8747
8747
  string: { unit: "caractere", verb: "s\u0103 aib\u0103" },
@@ -8861,7 +8861,7 @@ function ro_default() {
8861
8861
  };
8862
8862
  }
8863
8863
 
8864
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ru.js
8864
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ru.js
8865
8865
  function getRussianPlural(count, one, few, many) {
8866
8866
  const absCount = Math.abs(count);
8867
8867
  const lastDigit = absCount % 10;
@@ -9018,7 +9018,7 @@ function ru_default() {
9018
9018
  };
9019
9019
  }
9020
9020
 
9021
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/sl.js
9021
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/sl.js
9022
9022
  var error39 = () => {
9023
9023
  const Sizable = {
9024
9024
  string: { unit: "znakov", verb: "imeti" },
@@ -9128,7 +9128,7 @@ function sl_default() {
9128
9128
  };
9129
9129
  }
9130
9130
 
9131
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/sv.js
9131
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/sv.js
9132
9132
  var error40 = () => {
9133
9133
  const Sizable = {
9134
9134
  string: { unit: "tecken", verb: "att ha" },
@@ -9239,7 +9239,7 @@ function sv_default() {
9239
9239
  };
9240
9240
  }
9241
9241
 
9242
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ta.js
9242
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ta.js
9243
9243
  var error41 = () => {
9244
9244
  const Sizable = {
9245
9245
  string: { unit: "\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD", verb: "\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD" },
@@ -9350,7 +9350,7 @@ function ta_default() {
9350
9350
  };
9351
9351
  }
9352
9352
 
9353
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/th.js
9353
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/th.js
9354
9354
  var error42 = () => {
9355
9355
  const Sizable = {
9356
9356
  string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
@@ -9461,7 +9461,7 @@ function th_default() {
9461
9461
  };
9462
9462
  }
9463
9463
 
9464
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/tr.js
9464
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/tr.js
9465
9465
  var error43 = () => {
9466
9466
  const Sizable = {
9467
9467
  string: { unit: "karakter", verb: "olmal\u0131" },
@@ -9567,7 +9567,7 @@ function tr_default() {
9567
9567
  };
9568
9568
  }
9569
9569
 
9570
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/uk.js
9570
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/uk.js
9571
9571
  var error44 = () => {
9572
9572
  const Sizable = {
9573
9573
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
@@ -9676,12 +9676,12 @@ function uk_default() {
9676
9676
  };
9677
9677
  }
9678
9678
 
9679
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ua.js
9679
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ua.js
9680
9680
  function ua_default() {
9681
9681
  return uk_default();
9682
9682
  }
9683
9683
 
9684
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ur.js
9684
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/ur.js
9685
9685
  var error45 = () => {
9686
9686
  const Sizable = {
9687
9687
  string: { unit: "\u062D\u0631\u0648\u0641", verb: "\u06C1\u0648\u0646\u0627" },
@@ -9792,7 +9792,7 @@ function ur_default() {
9792
9792
  };
9793
9793
  }
9794
9794
 
9795
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/uz.js
9795
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/uz.js
9796
9796
  var error46 = () => {
9797
9797
  const Sizable = {
9798
9798
  string: { unit: "belgi", verb: "bo\u2018lishi kerak" },
@@ -9903,7 +9903,7 @@ function uz_default() {
9903
9903
  };
9904
9904
  }
9905
9905
 
9906
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/vi.js
9906
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/vi.js
9907
9907
  var error47 = () => {
9908
9908
  const Sizable = {
9909
9909
  string: { unit: "k\xFD t\u1EF1", verb: "c\xF3" },
@@ -10012,7 +10012,7 @@ function vi_default() {
10012
10012
  };
10013
10013
  }
10014
10014
 
10015
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/zh-CN.js
10015
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/zh-CN.js
10016
10016
  var error48 = () => {
10017
10017
  const Sizable = {
10018
10018
  string: { unit: "\u5B57\u7B26", verb: "\u5305\u542B" },
@@ -10122,7 +10122,7 @@ function zh_CN_default() {
10122
10122
  };
10123
10123
  }
10124
10124
 
10125
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/zh-TW.js
10125
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/zh-TW.js
10126
10126
  var error49 = () => {
10127
10127
  const Sizable = {
10128
10128
  string: { unit: "\u5B57\u5143", verb: "\u64C1\u6709" },
@@ -10230,7 +10230,7 @@ function zh_TW_default() {
10230
10230
  };
10231
10231
  }
10232
10232
 
10233
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/yo.js
10233
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/locales/yo.js
10234
10234
  var error50 = () => {
10235
10235
  const Sizable = {
10236
10236
  string: { unit: "\xE0mi", verb: "n\xED" },
@@ -10338,10 +10338,10 @@ function yo_default() {
10338
10338
  };
10339
10339
  }
10340
10340
 
10341
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/registries.js
10341
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/registries.js
10342
10342
  var _a2;
10343
- var $output = Symbol("ZodOutput");
10344
- var $input = Symbol("ZodInput");
10343
+ var $output = /* @__PURE__ */ Symbol("ZodOutput");
10344
+ var $input = /* @__PURE__ */ Symbol("ZodInput");
10345
10345
  var $ZodRegistry = class {
10346
10346
  constructor() {
10347
10347
  this._map = /* @__PURE__ */ new WeakMap();
@@ -10388,7 +10388,7 @@ function registry() {
10388
10388
  (_a2 = globalThis).__zod_globalRegistry ?? (_a2.__zod_globalRegistry = registry());
10389
10389
  var globalRegistry = globalThis.__zod_globalRegistry;
10390
10390
 
10391
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/api.js
10391
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/api.js
10392
10392
  // @__NO_SIDE_EFFECTS__
10393
10393
  function _string(Class2, params) {
10394
10394
  return new Class2({
@@ -11427,7 +11427,7 @@ function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
11427
11427
  return inst;
11428
11428
  }
11429
11429
 
11430
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/to-json-schema.js
11430
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/to-json-schema.js
11431
11431
  function initializeContext(params) {
11432
11432
  let target = params?.target ?? "draft-2020-12";
11433
11433
  if (target === "draft-4")
@@ -11786,7 +11786,7 @@ var createStandardJSONSchemaMethod = (schema, io, processors = {}) => (params) =
11786
11786
  return finalize(ctx, schema);
11787
11787
  };
11788
11788
 
11789
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema-processors.js
11789
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema-processors.js
11790
11790
  var formatMap = {
11791
11791
  guid: "uuid",
11792
11792
  url: "uri",
@@ -12330,7 +12330,7 @@ function toJSONSchema(input, params) {
12330
12330
  return finalize(ctx, input);
12331
12331
  }
12332
12332
 
12333
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema-generator.js
12333
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema-generator.js
12334
12334
  var JSONSchemaGenerator = class {
12335
12335
  /** @deprecated Access via ctx instead */
12336
12336
  get metadataRegistry() {
@@ -12405,10 +12405,10 @@ var JSONSchemaGenerator = class {
12405
12405
  }
12406
12406
  };
12407
12407
 
12408
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema.js
12408
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/core/json-schema.js
12409
12409
  var json_schema_exports = {};
12410
12410
 
12411
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/schemas.js
12411
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/schemas.js
12412
12412
  var schemas_exports2 = {};
12413
12413
  __export(schemas_exports2, {
12414
12414
  ZodAny: () => ZodAny,
@@ -12579,7 +12579,7 @@ __export(schemas_exports2, {
12579
12579
  xor: () => xor
12580
12580
  });
12581
12581
 
12582
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/checks.js
12582
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/checks.js
12583
12583
  var checks_exports2 = {};
12584
12584
  __export(checks_exports2, {
12585
12585
  endsWith: () => _endsWith,
@@ -12613,7 +12613,7 @@ __export(checks_exports2, {
12613
12613
  uppercase: () => _uppercase
12614
12614
  });
12615
12615
 
12616
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/iso.js
12616
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/iso.js
12617
12617
  var iso_exports = {};
12618
12618
  __export(iso_exports, {
12619
12619
  ZodISODate: () => ZodISODate,
@@ -12654,7 +12654,7 @@ function duration2(params) {
12654
12654
  return _isoDuration(ZodISODuration, params);
12655
12655
  }
12656
12656
 
12657
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/errors.js
12657
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/errors.js
12658
12658
  var initializer2 = (inst, issues) => {
12659
12659
  $ZodError.init(inst, issues);
12660
12660
  inst.name = "ZodError";
@@ -12694,7 +12694,7 @@ var ZodRealError = /* @__PURE__ */ $constructor("ZodError", initializer2, {
12694
12694
  Parent: Error
12695
12695
  });
12696
12696
 
12697
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/parse.js
12697
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/parse.js
12698
12698
  var parse2 = /* @__PURE__ */ _parse(ZodRealError);
12699
12699
  var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
12700
12700
  var safeParse2 = /* @__PURE__ */ _safeParse(ZodRealError);
@@ -12708,7 +12708,7 @@ var safeDecode2 = /* @__PURE__ */ _safeDecode(ZodRealError);
12708
12708
  var safeEncodeAsync2 = /* @__PURE__ */ _safeEncodeAsync(ZodRealError);
12709
12709
  var safeDecodeAsync2 = /* @__PURE__ */ _safeDecodeAsync(ZodRealError);
12710
12710
 
12711
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/schemas.js
12711
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/schemas.js
12712
12712
  var _installedGroups = /* @__PURE__ */ new WeakMap();
12713
12713
  function _installLazyMethods(inst, group, methods) {
12714
12714
  const proto = Object.getPrototypeOf(inst);
@@ -13998,7 +13998,7 @@ function preprocess(fn, schema) {
13998
13998
  });
13999
13999
  }
14000
14000
 
14001
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/compat.js
14001
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/compat.js
14002
14002
  var ZodIssueCode = {
14003
14003
  invalid_type: "invalid_type",
14004
14004
  too_big: "too_big",
@@ -14024,7 +14024,7 @@ var ZodFirstPartyTypeKind;
14024
14024
  /* @__PURE__ */ (function(ZodFirstPartyTypeKind2) {
14025
14025
  })(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));
14026
14026
 
14027
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/from-json-schema.js
14027
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/from-json-schema.js
14028
14028
  var z = {
14029
14029
  ...schemas_exports2,
14030
14030
  ...checks_exports2,
@@ -14504,7 +14504,7 @@ function fromJSONSchema(schema, params) {
14504
14504
  return convertSchema(normalized, ctx);
14505
14505
  }
14506
14506
 
14507
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/coerce.js
14507
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/coerce.js
14508
14508
  var coerce_exports = {};
14509
14509
  __export(coerce_exports, {
14510
14510
  bigint: () => bigint3,
@@ -14529,7 +14529,7 @@ function date4(params) {
14529
14529
  return _coercedDate(ZodDate, params);
14530
14530
  }
14531
14531
 
14532
- // ../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
14532
+ // ../../../../../node_modules/.pnpm/zod@4.4.3/node_modules/zod/v4/classic/external.js
14533
14533
  config(en_default());
14534
14534
 
14535
14535
  // src/logger.ts
@@ -14609,7 +14609,7 @@ var ContextJsonSchema = external_exports.object({
14609
14609
  * `repoSubPath` is the working repo's path relative to the workspace
14610
14610
  * root. When omitted, the hook commits at the workspace root itself
14611
14611
  * (single-repo workspace contract — multi-repo workspaces are handled
14612
- * by a future Phase B.3 follow-up; see TODO(phase-d-multi-repo) in the
14612
+ * by a future follow-up; see TODO(multi-repo) in the
14613
14613
  * hook).
14614
14614
  */
14615
14615
  git: external_exports.object({
@@ -14738,9 +14738,9 @@ async function handleSessionIdle(workspaceDir, evt) {
14738
14738
  subjectRef: ctx.actor.subjectRef,
14739
14739
  displayName: ctx.actor.displayName
14740
14740
  },
14741
- // Phase D contract: the worker reports the OUTCOME. For the v1
14741
+ // Wire contract: the worker reports the OUTCOME. For the v1
14742
14742
  // hook we forward "needs commit; service will perform / record it
14743
- // via the workspace-proxy bridge when Phase C.2 lands". Until then
14743
+ // via the workspace-proxy bridge once available". Until then
14744
14744
  // workspace-git-api treats `committed=true` as "you produced a
14745
14745
  // commit locally, please record it"; the actual git push happens
14746
14746
  // through the bridge.
@@ -15028,6 +15028,7 @@ var ContextMissingError = class extends Error {
15028
15028
  );
15029
15029
  this.workspaceDir = workspaceDir;
15030
15030
  }
15031
+ workspaceDir;
15031
15032
  code = "XEMA_CONTEXT_MISSING";
15032
15033
  };
15033
15034
  var RoleNotAllowedError = class extends Error {
@@ -15039,6 +15040,9 @@ var RoleNotAllowedError = class extends Error {
15039
15040
  this.toolName = toolName;
15040
15041
  this.allowedTools = allowedTools;
15041
15042
  }
15043
+ role;
15044
+ toolName;
15045
+ allowedTools;
15042
15046
  code = "XEMA_ROLE_NOT_ALLOWED";
15043
15047
  };
15044
15048
  function loadSessionState(workspaceDir) {
@@ -15255,7 +15259,7 @@ async function doBoot(directory) {
15255
15259
  const hooks = {
15256
15260
  tool: tools,
15257
15261
  "experimental.chat.system.transform": buildSystemPromptOverlay(directory),
15258
- // Per-turn auto-commit (Phase D). Listens for `session.idle` via the
15262
+ // Per-turn auto-commit. Listens for `session.idle` via the
15259
15263
  // generic `event` channel — opencode 1.15.x does not expose a
15260
15264
  // dedicated `session.idle` hook, only the event union. The handler
15261
15265
  // is a no-op for sessions whose context.json does not opt in
@@ -15271,7 +15275,7 @@ function buildAllTools(workspaceDir) {
15271
15275
  // Document Buddy has no propose tool: both kinds (MARKDOWN_DOCUMENT
15272
15276
  // and RICH_DOCUMENT) edit a real working file at
15273
15277
  // `/workspace/document/<slug>.<ext>` and the platform derives the
15274
- // reviewable diff (see `.claude/plans/realtime-document-buddy.md`).
15278
+ // reviewable diff (see the design notes).
15275
15279
  // emit_review / emit_review_brief: deleted. Reviewers now write
15276
15280
  // `deliverables/review.json` via the standard `write` tool — the
15277
15281
  // deliverable-specs framework Zod-validates at harvest using the