gennady 0.8.4-draft.2 → 0.8.4-draft.3

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 (146) hide show
  1. package/ai/directives/sdd-v2/root.directive.xml +36 -3
  2. package/ai/directives/sdd-v2/router.directive.xml +22 -1
  3. package/ai/kit/templates/sdd-v2/root.directive.hbs +11 -3
  4. package/ai/kit/templates/sdd-v2/router.directive.hbs +22 -1
  5. package/ai/skills/agent-inbox/SKILL.md +1 -1
  6. package/ai/skills/sdd/SKILL.md +5 -3
  7. package/ai/skills/sdd-audit/SKILL.md +5 -2
  8. package/ai/skills/sdd-check/SKILL.md +2 -2
  9. package/ai/skills/sdd-code-review/SKILL.md +4 -1
  10. package/ai/skills/sdd-critic/SKILL.md +5 -2
  11. package/ai/skills/sdd-execute/SKILL.md +5 -2
  12. package/ai/skills/sdd-reconcile/SKILL.md +5 -2
  13. package/ai/skills/sdd-scaffold/SKILL.md +5 -2
  14. package/dist/ai/directives/sdd-v2/root.directive.xml +36 -3
  15. package/dist/ai/directives/sdd-v2/router.directive.xml +22 -1
  16. package/dist/ai/kit/templates/sdd-v2/root.directive.hbs +11 -3
  17. package/dist/ai/kit/templates/sdd-v2/router.directive.hbs +22 -1
  18. package/dist/ai/skills/agent-inbox/SKILL.md +1 -1
  19. package/dist/ai/skills/sdd/SKILL.md +5 -3
  20. package/dist/ai/skills/sdd-audit/SKILL.md +5 -2
  21. package/dist/ai/skills/sdd-check/SKILL.md +2 -2
  22. package/dist/ai/skills/sdd-code-review/SKILL.md +4 -1
  23. package/dist/ai/skills/sdd-critic/SKILL.md +5 -2
  24. package/dist/ai/skills/sdd-execute/SKILL.md +5 -2
  25. package/dist/ai/skills/sdd-reconcile/SKILL.md +5 -2
  26. package/dist/ai/skills/sdd-scaffold/SKILL.md +5 -2
  27. package/dist/chunks/{classify-mr-stage.logic-BiCHTmPp.js → classify-mr-stage.logic-CazmQDwZ.js} +2 -2
  28. package/dist/chunks/{config-index-9VHWSDQD.js → config-index-DU8-FEjq.js} +1 -1
  29. package/dist/chunks/{devtools-b0DwO1x_.js → devtools-1JmXJjUG.js} +1 -1
  30. package/dist/chunks/{eval.cmd-CwNPaNJd.js → eval.cmd-CBANnOFG.js} +1 -1
  31. package/dist/chunks/{help-D5cXtdMI.js → help-DVloaFF5.js} +1 -1
  32. package/dist/chunks/{index-BVnJEutp.js → index-2xhpqJtd.js} +2 -2
  33. package/dist/chunks/{index-RR5OUxje.js → index-AxsLBUAx.js} +14 -14
  34. package/dist/chunks/{index-CUkeTGqM.js → index-B7sydB0W.js} +2 -2
  35. package/dist/chunks/{index-CMCn9ErF.js → index-BKxk4zOz.js} +2 -2
  36. package/dist/chunks/{index-Db13NlHh.js → index-BNMmX_Mv.js} +21 -21
  37. package/dist/chunks/{index-CmQO-RmM.js → index-BPzldG3a.js} +2 -2
  38. package/dist/chunks/{index-BOQl7F_Z.js → index-BQlFDvKW.js} +2 -2
  39. package/dist/chunks/{index-RzkvIfJQ.js → index-Baq7RL1L.js} +3 -3
  40. package/dist/chunks/index-BbPiwvY9.js +2 -0
  41. package/dist/chunks/{index-ClJLPEUB.js → index-BreGNLJ_.js} +1 -1
  42. package/dist/chunks/{index-DjSafAkN.js → index-BslPwGtM.js} +2 -2
  43. package/dist/chunks/{index-DiMFxS0z.js → index-BtCUN2fZ.js} +16 -16
  44. package/dist/chunks/{index-CS0VbiLD.js → index-C10-EOdB.js} +1 -1
  45. package/dist/chunks/{index-2BOEcJIa.js → index-C4JmZLaj.js} +2 -2
  46. package/dist/chunks/index-CA-JKLr4.js +2 -0
  47. package/dist/chunks/{index-43GiH--T.js → index-CG_jJZVu.js} +2 -2
  48. package/dist/chunks/{index-BdkFKsMm.js → index-CGyP2uDE.js} +3 -3
  49. package/dist/chunks/{index-BOKv0b01.js → index-CPl1s9XJ.js} +2 -2
  50. package/dist/chunks/{index-DIPrBH-4.js → index-CSxE4cEm.js} +9 -9
  51. package/dist/chunks/{index-Cm7U1-fU.js → index-CWR5EzXx.js} +2 -2
  52. package/dist/chunks/{index-BwN5llCR.js → index-Camql5kL.js} +2 -2
  53. package/dist/chunks/{index-Drh-J9O7.js → index-CdUiTipO.js} +7 -7
  54. package/dist/chunks/{index-Cn029KTN.js → index-Crg61pK5.js} +2 -2
  55. package/dist/chunks/{index-Dja2O-hV.js → index-Cv9ZYXso.js} +1 -1
  56. package/dist/chunks/{index-Ck8v_Gv7.js → index-D7ADMlG3.js} +1 -1
  57. package/dist/chunks/index-DNl2gC8l.js +158 -0
  58. package/dist/chunks/{index-BYIzl-Ut.js → index-DVJA0qVm.js} +36 -36
  59. package/dist/chunks/{index-BAEIZVx0.js → index-DcFJhkY1.js} +2 -2
  60. package/dist/chunks/{index-Dx5_CB2E.js → index-DdEd-L3x.js} +2 -2
  61. package/dist/chunks/{index-DVmqMmgb.js → index-DkGA1eW_.js} +32 -32
  62. package/dist/chunks/{index-3k7mPX1e.js → index-Dnwxlti3.js} +1 -1
  63. package/dist/chunks/{index-CrizvxOJ.js → index-DqdEJDi2.js} +2 -2
  64. package/dist/chunks/{index-BIPebtDl.js → index-DqiwmBt4.js} +1 -1
  65. package/dist/chunks/{index-DS4MhAw-.js → index-PfuqBWjY.js} +2 -2
  66. package/dist/chunks/{index-BmFT1Kx2.js → index-SVP6RfVl.js} +2 -2
  67. package/dist/chunks/{index-CDxV4b81.js → index-Y8wu48Q0.js} +1 -1
  68. package/dist/chunks/index-_ewSKppm.js +2 -0
  69. package/dist/chunks/{index-Ctcr_Qeu.js → index-aBVtCLIJ.js} +2 -2
  70. package/dist/chunks/index-dNdz9j6d.js +2 -0
  71. package/dist/chunks/{index-BFUkVkSo.js → index-gskOpu3H.js} +16 -16
  72. package/dist/chunks/{index-CXpkT25O.js → index-pBSLMn5Q.js} +3 -3
  73. package/dist/chunks/index-sqPhX5Io.js +2 -0
  74. package/dist/chunks/{index-BzmR4Es2.js → index-vfrjhUD1.js} +39 -39
  75. package/dist/chunks/{index-J2NvjjDV.js → index-xGF5XC_i.js} +2 -2
  76. package/dist/chunks/{run-review-command.logic-CA2Rjymb.js → run-review-command.logic-B9GoCxh-.js} +24 -24
  77. package/dist/chunks/{serve.cmd-RxYS6WoN.js → serve.cmd-UXkaeaPI.js} +2 -2
  78. package/dist/chunks/{services-Csd556Tv.js → services-BYCeGBlO.js} +4 -4
  79. package/dist/chunks/{shared-B5CTGvpG.js → shared-B3cXL2Np.js} +1178 -1117
  80. package/dist/chunks/{stats-index-BLztvK69.js → stats-index-AIAnnp9S.js} +2 -2
  81. package/dist/gennady.js +46 -46
  82. package/dist/index.js +4 -4
  83. package/dist/shared/sdd/ladder.d.ts +42 -0
  84. package/dist/shared/sdd/module-specs.d.ts +7 -0
  85. package/dist/shared/sdd/tracker.d.ts +9 -0
  86. package/package.json +1 -1
  87. package/dist/chunks/classify-mr-stage.logic-ClmhzQPQ.js +0 -53
  88. package/dist/chunks/config-index-RFeqlDWs.js +0 -104
  89. package/dist/chunks/devtools-p8tmPuLn.js +0 -79
  90. package/dist/chunks/eval.cmd-ewU5lcUY.js +0 -34
  91. package/dist/chunks/help-DzGnMNi2.js +0 -7
  92. package/dist/chunks/index--AXFi0ty.js +0 -89
  93. package/dist/chunks/index-64TSesTc.js +0 -186
  94. package/dist/chunks/index-9Gv5trS_.js +0 -125
  95. package/dist/chunks/index-B1DQIryA.js +0 -2
  96. package/dist/chunks/index-B1PiBeQ3.js +0 -2
  97. package/dist/chunks/index-B4rzuhkt.js +0 -183
  98. package/dist/chunks/index-B97HJjkg.js +0 -159
  99. package/dist/chunks/index-BF6qypm0.js +0 -131
  100. package/dist/chunks/index-BK84ZQsh.js +0 -128
  101. package/dist/chunks/index-BRVIirjj.js +0 -141
  102. package/dist/chunks/index-BXnryCGW.js +0 -96
  103. package/dist/chunks/index-BaZm7Otb.js +0 -2
  104. package/dist/chunks/index-Bhk746A2.js +0 -129
  105. package/dist/chunks/index-Bi-eY_dY.js +0 -164
  106. package/dist/chunks/index-BjumU69g.js +0 -2
  107. package/dist/chunks/index-BkWXcpXU.js +0 -16979
  108. package/dist/chunks/index-BlY4jQIA.js +0 -168
  109. package/dist/chunks/index-C0iy7GxD.js +0 -140
  110. package/dist/chunks/index-CCBTXczb.js +0 -56
  111. package/dist/chunks/index-CDAfkSrr.js +0 -2
  112. package/dist/chunks/index-CDHymWzC.js +0 -102
  113. package/dist/chunks/index-CNfXJAao.js +0 -2
  114. package/dist/chunks/index-CQsae1nq.js +0 -207
  115. package/dist/chunks/index-CVmd0prf.js +0 -2
  116. package/dist/chunks/index-CZuTNeNm.js +0 -2
  117. package/dist/chunks/index-CasNhhrL.js +0 -96
  118. package/dist/chunks/index-Ce7GWENF.js +0 -377
  119. package/dist/chunks/index-Cf-02TAg.js +0 -265
  120. package/dist/chunks/index-CfjQWSrh.js +0 -52
  121. package/dist/chunks/index-Chr7gBBz.js +0 -443
  122. package/dist/chunks/index-Ci875Zlg.js +0 -346
  123. package/dist/chunks/index-CwA6RzIB.js +0 -3793
  124. package/dist/chunks/index-D1dI63ej.js +0 -46
  125. package/dist/chunks/index-DCS32A2i.js +0 -663
  126. package/dist/chunks/index-DOFoNxvb.js +0 -131
  127. package/dist/chunks/index-DVkCEuws.js +0 -136
  128. package/dist/chunks/index-DkadaaXq.js +0 -658
  129. package/dist/chunks/index-Dn11CLtk.js +0 -7
  130. package/dist/chunks/index-Do3spFJT.js +0 -340
  131. package/dist/chunks/index-DrFRZ0Yg.js +0 -2
  132. package/dist/chunks/index-DvEQhXi2.js +0 -1054
  133. package/dist/chunks/index-GiS0x6jg.js +0 -90
  134. package/dist/chunks/index-NacvqeQ5.js +0 -69
  135. package/dist/chunks/index-RNJhFzdr.js +0 -227
  136. package/dist/chunks/index-R_vUB6CL.js +0 -2
  137. package/dist/chunks/index-TQft1s5H.js +0 -20
  138. package/dist/chunks/index-ZmQRP38W.js +0 -26969
  139. package/dist/chunks/index-jdOZ4AkD.js +0 -143
  140. package/dist/chunks/index-kNa21kUI.js +0 -279
  141. package/dist/chunks/index-v4AV9kAc.js +0 -108
  142. package/dist/chunks/run-review-command.logic-CU1Slmc_.js +0 -331
  143. package/dist/chunks/serve.cmd-dWu_k_G_.js +0 -162
  144. package/dist/chunks/services-CwvXl2MB.js +0 -46832
  145. package/dist/chunks/shared-DSZTUx5b.js +0 -4509
  146. package/dist/chunks/stats-index-H6ALcjxy.js +0 -66
@@ -16,9 +16,12 @@ compatibility: opencode
16
16
 
17
17
  <ExecutionPlan>
18
18
  <Step id="GATHER">
19
- One parallel batch (do NOT serialize): run `npx tsx ~/Developer/gennady/cli/gennady.ts sdd-state`
19
+ One parallel batch (do NOT serialize): run `npx gennady sdd-state`
20
20
  (flow version · readiness · portal · scopes) AND read in full
21
- `~/Developer/gennady/ai/directives/sdd-v2/scaffold.directive.xml`.
21
+ `ai/directives/sdd-v2/scaffold.directive.xml`.
22
+ Resolve every `ai/directives/sdd-v2/<file>` below deterministically, project root first: if
23
+ missing, `node_modules/gennady/ai/directives/sdd-v2/<file>`; if neither exists, stop and tell
24
+ the operator to run `npx gennady sync` — never search for it.
22
25
  </Step>
23
26
  <Step id="PREFLIGHT">
24
27
  Size the gate to this request's blast radius first: when the scaffolding target stays inside a single
@@ -1,5 +1,5 @@
1
- import { b as d } from "./shared-DSZTUx5b.js";
2
- import { a as f } from "./services-CwvXl2MB.js";
1
+ import { b as d } from "./shared-B3cXL2Np.js";
2
+ import { a as f } from "./services-BYCeGBlO.js";
3
3
  function h(s, r) {
4
4
  const a = s?.trim().replace(/^https?:\/\//, "").replace(/\/+$/, "");
5
5
  if (a) return a;
@@ -1,7 +1,7 @@
1
1
  import { existsSync as w, statSync as v } from "node:fs";
2
2
  import { isAbsolute as O } from "node:path";
3
3
  import { createInterface as S } from "node:readline";
4
- import { b as k, c as x, s as p, d as h, v as B } from "./services-CwvXl2MB.js";
4
+ import { b as k, c as x, s as p, d as h, v as B } from "./services-BYCeGBlO.js";
5
5
  function b(e) {
6
6
  const o = /* @__PURE__ */ new Map();
7
7
  for (let t = 0; t < e.length; t++) {
@@ -1,4 +1,4 @@
1
- import { an as l } from "./services-Csd556Tv.js";
1
+ import { an as l } from "./services-BYCeGBlO.js";
2
2
  var o, s;
3
3
  function u() {
4
4
  return s || (s = 1, o = function() {
@@ -1,5 +1,5 @@
1
1
  import { join as d } from "node:path";
2
- import { l, S as f, E, D as x, q as h } from "./services-CwvXl2MB.js";
2
+ import { l, S as f, E, D as x, q as h } from "./services-BYCeGBlO.js";
3
3
  function c(o, r) {
4
4
  const n = o.find((a) => a.startsWith(`${r}=`));
5
5
  if (n) return n.slice(r.length + 1);
@@ -1,4 +1,4 @@
1
- import { s as o } from "./shared-DSZTUx5b.js";
1
+ import { s as o } from "./shared-B3cXL2Np.js";
2
2
  function n() {
3
3
  console.info(o.bold("gennady inbox-context — атомарный сбор контекста MR")), console.info(""), console.info(" gennady inbox-context --ref <group/project!iid> [флаги]"), console.info(""), console.info(o.bold("Флаги:")), console.info(" --ref <ref> MR ref (обязателен)"), console.info(" --vcs-host=<host> GitLab host (автодетект из origin)"), console.info(" --skip-worktree Без клона — changeset и worktree пусты"), console.info(" --skip-threads Без обсуждений — threads/stage пусты"), console.info(" --repos-base=<dir> База поиска клонов (default ~/Developer)"), console.info(" --state-dir=<dir> Директория состояния (default ~/.gennady)"), console.info(" --json Вывод в JSON (по умолчанию)"), console.info(""), console.info(o.bold("Вывод (JSON):")), console.info(" ref, title, webUrl — идентификация MR"), console.info(" worktree — path, base, diffRefs, repoLayout"), console.info(" changeset — files [{path, status, plus, minus}], totals, byCategory"), console.info(" stage — review_needed | reply_needed | awaiting_reply | idle"), console.info(" openQuestions, lastAuthor — из обсуждений"), console.info(" threads — { all, drafts } — полные треды и черновики"), console.info(" package — role, author, reviewers, description, approvedBy");
4
4
  }
@@ -1,8 +1,8 @@
1
1
  import { mkdirSync as D, symlinkSync as W, readFileSync as x, readdirSync as P, existsSync as R } from "node:fs";
2
2
  import { homedir as B } from "node:os";
3
3
  import { join as C } from "node:path";
4
- import { s as o, r as A, c as F } from "./shared-B5CTGvpG.js";
5
- import { b as M, N as j, y, Q as E, u as T, w as V, x as H, z as O, W as q, F as z, G, H as I } from "./services-Csd556Tv.js";
4
+ import { s as o, r as A, c as F } from "./shared-B3cXL2Np.js";
5
+ import { b as M, N as j, y, Q as E, u as T, w as V, x as H, z as O, W as q, F as z, G, H as I } from "./services-BYCeGBlO.js";
6
6
  function a(e, r) {
7
7
  const n = e.find((l) => l.startsWith(`${r}=`));
8
8
  if (n) return n.slice(r.length + 1);
@@ -1,16 +1,16 @@
1
- import { readFileSync as _, readdirSync as E } from "node:fs";
2
- import { resolve as $, join as S } from "node:path";
3
- import { l as b } from "./services-CwvXl2MB.js";
4
- import { p as A, N as l, Y as D, O as R, ab as T, P as y, D as j, E as v, ac as C } from "./shared-DSZTUx5b.js";
1
+ import { readFileSync as _, readdirSync as S } from "node:fs";
2
+ import { resolve as $, join as E } from "node:path";
3
+ import { l as b } from "./services-BYCeGBlO.js";
4
+ import { p as R, Q as l, $ as A, R as D, ae as T, S as y, H as j, I as v, af as C } from "./shared-B3cXL2Np.js";
5
5
  const m = "ERR_CLI_SDD_TASK_FILE", g = "ERR_CLI_SDD_TASK_NOT_A_TICKET";
6
6
  function O(t) {
7
7
  return (t.split("/").pop() ?? t).replace(/\.xml$/, "").trim();
8
8
  }
9
- function P(t, i) {
9
+ function w(t, i) {
10
10
  const a = new Set(t.rules.map(O));
11
11
  return i.filter((n) => n.requiredBy.some((s) => a.has(s)));
12
12
  }
13
- function w(t, i, a, n) {
13
+ function F(t, i, a, n) {
14
14
  const s = [];
15
15
  if (s.push(`[sdd-task] ${t.taskId ?? "<unknown>"} — ${t.status ?? "<no status>"}`), t.purpose && s.push(`Purpose: ${t.purpose}`), s.push(`Scope/Module: ${t.scope ?? "—"} / ${t.module ?? "—"}`), s.push(`Dependencies: ${t.dependencies.length ? t.dependencies.join(", ") : "none"}`), t.specRefs.length) {
16
16
  s.push("Spec References:");
@@ -31,7 +31,7 @@ function w(t, i, a, n) {
31
31
  continue;
32
32
  }
33
33
  o.objective && s.push(` objective: ${o.objective}`), s.push(` READ rules: ${o.rules.length ? o.rules.join(", ") : "—"}`), s.push(` READ specs: ${c.length ? c.join(", ") : "—"}`), s.push(` READ ticket: PHASE_${e.id}, BDD, VERIFICATION`), s.push(` READ files: ${o.targetFiles.length ? o.targetFiles.join(", ") : "—"}`);
34
- const r = P(o, n);
34
+ const r = w(o, n);
35
35
  s.push(` gates: ${r.length ? r.map((d) => d.command).join(" · ") : "—"}`), s.push(` inputs: ${o.inputs ?? "none"}`), s.push(
36
36
  " DO NOT READ: other phase bodies · code outside READ files · specs beyond the anchors above"
37
37
  );
@@ -43,7 +43,7 @@ function w(t, i, a, n) {
43
43
  return s.join(`
44
44
  `);
45
45
  }
46
- function F(t) {
46
+ function P(t) {
47
47
  return {
48
48
  ok: !1,
49
49
  code: m,
@@ -73,13 +73,13 @@ const N = /* @__PURE__ */ new Set([
73
73
  function I(t, i) {
74
74
  let a;
75
75
  try {
76
- a = E(t, { withFileTypes: !0 });
76
+ a = S(t, { withFileTypes: !0 });
77
77
  } catch {
78
78
  return;
79
79
  }
80
80
  for (const n of a) {
81
81
  if (n.name.startsWith(".") || N.has(n.name) || n.isSymbolicLink()) continue;
82
- const s = S(t, n.name);
82
+ const s = E(t, n.name);
83
83
  if (n.isDirectory()) I(s, i);
84
84
  else if (n.isFile() && n.name.endsWith(".md")) {
85
85
  let c;
@@ -111,7 +111,7 @@ function K(t) {
111
111
  `);
112
112
  }
113
113
  async function L(t) {
114
- const n = A(t, {})._.filter(
114
+ const n = R(t, {})._.filter(
115
115
  (p) => typeof p == "string" && p !== "sdd-task"
116
116
  )[0];
117
117
  if (!n) {
@@ -122,18 +122,18 @@ async function L(t) {
122
122
  try {
123
123
  s = _($(n), "utf-8");
124
124
  } catch {
125
- return F(n);
125
+ return P(n);
126
126
  }
127
127
  const c = l(s, "META");
128
128
  if (c.status !== "ok") return x(n);
129
- const e = D(c.content), o = l(s, "PHASES_OVERVIEW"), r = o.status === "ok" ? R(o.content) : [], d = l(s, "VERIFICATION"), f = d.status === "ok" ? T(d.content) : [], h = {};
129
+ const e = A(c.content), o = l(s, "PHASES_OVERVIEW"), r = o.status === "ok" ? D(o.content) : [], d = l(s, "VERIFICATION"), f = d.status === "ok" ? T(d.content) : [], h = {};
130
130
  for (const p of r) {
131
131
  const k = l(s, `PHASE_${p.id}`);
132
132
  k.status === "ok" && (h[p.id] = y(k.content));
133
133
  }
134
134
  return b.debug(
135
135
  `[SddTaskCommand#run] ${e.taskId ?? "?"}: ${r.length} phase(s), ${f.length} gate(s)`
136
- ), { ok: !0, text: w(e, r, h, f) };
136
+ ), { ok: !0, text: F(e, r, h, f) };
137
137
  }
138
138
  const u = await L(process.argv);
139
139
  console.log(u.ok ? u.text : u.message);
@@ -1,5 +1,5 @@
1
- import { p as g, V as $, c as h, r as y } from "./shared-B5CTGvpG.js";
2
- import { l as n, V as w, a as C } from "./services-Csd556Tv.js";
1
+ import { p as g, V as $, c as h, r as y } from "./shared-B3cXL2Np.js";
2
+ import { l as n, V as w, a as C } from "./services-BYCeGBlO.js";
3
3
  function v() {
4
4
  return {
5
5
  resolveVcsContext: y,
@@ -1,5 +1,5 @@
1
- import { V as k, a as m, l as c, b as y, J as I, I as b, K as R } from "./services-Csd556Tv.js";
2
- import { p as $, r as w, s as t, b as x } from "./shared-B5CTGvpG.js";
1
+ import { V as k, a as m, l as c, b as y, J as I, I as b, K as R } from "./services-BYCeGBlO.js";
2
+ import { p as $, r as w, s as t, b as x } from "./shared-B3cXL2Np.js";
3
3
  function C(o) {
4
4
  return o ? o.replace(/^https?:\/\//, "").replace(/\/+$/, "") : x()?.host;
5
5
  }
@@ -1,7 +1,7 @@
1
1
  import { readFileSync as f, writeFileSync as E, readdirSync as Y } from "node:fs";
2
2
  import { resolve as m, relative as $, dirname as h, join as A } from "node:path";
3
- import { l as T } from "./services-CwvXl2MB.js";
4
- import { p as v, N as F, a8 as w, a9 as S, aa as b, C as M } from "./shared-DSZTUx5b.js";
3
+ import { l as F } from "./services-BYCeGBlO.js";
4
+ import { p as T, Q as v, ab as b, ac as S, ad as w, F as M } from "./shared-B3cXL2Np.js";
5
5
  const x = "ERR_CLI_SDD_SYNC_BAD_INVOCATION", I = "ERR_CLI_SDD_SYNC_FILE", R = "ERR_CLI_SDD_SYNC_META", j = "ERR_CLI_SDD_SYNC_VERIFY";
6
6
  function O(n) {
7
7
  return {
@@ -62,9 +62,9 @@ function P(n) {
62
62
  } catch {
63
63
  continue;
64
64
  }
65
- const { text: r, updated: s } = b(e, (a) => {
65
+ const { text: r, updated: s } = w(e, (i) => {
66
66
  try {
67
- return M(f(m(h(t), a), "utf-8"));
67
+ return M(f(m(h(t), i), "utf-8"));
68
68
  } catch {
69
69
  return null;
70
70
  }
@@ -77,7 +77,7 @@ function P(n) {
77
77
  return d;
78
78
  }
79
79
  async function W(n) {
80
- const t = v(n, {})._.filter(
80
+ const t = T(n, {})._.filter(
81
81
  (o) => typeof o == "string" && o !== "sdd-sync"
82
82
  ), e = t[0];
83
83
  if (!e) return O("missing <ticket>");
@@ -87,41 +87,41 @@ async function W(n) {
87
87
  } catch {
88
88
  return V(e);
89
89
  }
90
- const s = F(r, "META");
90
+ const s = v(r, "META");
91
91
  if (s.status !== "ok") return D(e);
92
- const { taskId: c, status: a } = w(s.content);
93
- if (!c || !a) return D(e);
92
+ const { taskId: c, status: i } = b(s.content);
93
+ if (!c || !i) return D(e);
94
94
  const p = t.length > 1 ? t.slice(1).map((o) => m(o)) : B(e);
95
- T.debug(`[SddSyncCommand#run] ${c} → ${a}; ${p.length} index file(s)`);
96
- const i = [];
97
- let C = !1;
95
+ F.debug(`[SddSyncCommand#run] ${c} → ${i}; ${p.length} index file(s)`);
96
+ const a = [];
97
+ let k = !1;
98
98
  for (const o of p) {
99
99
  const u = $(process.cwd(), o);
100
100
  let y;
101
101
  try {
102
102
  y = f(o, "utf-8");
103
103
  } catch {
104
- i.push(` unreadable: ${u}`);
104
+ a.push(` unreadable: ${u}`);
105
105
  continue;
106
106
  }
107
- const _ = S(y, c, a);
107
+ const _ = S(y, c, i);
108
108
  if (!_.ok) {
109
- i.push(` ${_.reason === "task_not_found" ? "no-row" : "no-table"}: ${u}`);
109
+ a.push(` ${_.reason === "task_not_found" ? "no-row" : "no-table"}: ${u}`);
110
110
  continue;
111
111
  }
112
112
  if (!_.changed) {
113
- i.push(` in-sync: ${u}`);
113
+ a.push(` in-sync: ${u}`);
114
114
  continue;
115
115
  }
116
116
  E(o, _.text, "utf-8");
117
- const g = S(f(o, "utf-8"), c, a);
118
- g.ok && !g.changed ? i.push(` updated: ${u}`) : (C = !0, i.push(` VERIFY-FAIL: ${u}`));
117
+ const g = S(f(o, "utf-8"), c, i);
118
+ g.ok && !g.changed ? a.push(` updated: ${u}`) : (k = !0, a.push(` VERIFY-FAIL: ${u}`));
119
119
  }
120
- i.push(...P(p));
121
- const N = `[sdd-sync] ${c} → ${a}`, L = p.length === 0 ? " (no *.3-tasks.md index files found)" : i.join(`
122
- `), k = `${N}
120
+ a.push(...P(p));
121
+ const N = `[sdd-sync] ${c} → ${i}`, L = p.length === 0 ? " (no *.3-tasks.md index files found)" : a.join(`
122
+ `), C = `${N}
123
123
  ${L}`;
124
- return C ? { ok: !1, code: j, exitCode: 1, message: k } : { ok: !0, text: k };
124
+ return k ? { ok: !1, code: j, exitCode: 1, message: C } : { ok: !0, text: C };
125
125
  }
126
126
  const l = await W(process.argv);
127
127
  console.log(l.ok ? l.text : l.message);
@@ -1,7 +1,7 @@
1
1
  import { readFileSync as x, writeFileSync as N } from "node:fs";
2
2
  import { resolve as G } from "node:path";
3
- import { l as A } from "./services-Csd556Tv.js";
4
- import { p as y, a7 as T } from "./shared-B5CTGvpG.js";
3
+ import { l as A } from "./services-BYCeGBlO.js";
4
+ import { p as y, aa as T } from "./shared-B3cXL2Np.js";
5
5
  const k = "ERR_CLI_SDD_LOG_BAD_INVOCATION", C = "ERR_CLI_SDD_LOG_FILE", $ = "ERR_CLI_SDD_LOG_NO_LOG_SECTION", h = "ERR_CLI_SDD_LOG_PLACEHOLDER", I = "ERR_CLI_SDD_LOG_MISSING_FLAG", j = /<[^>\s]+>/;
6
6
  function a(e) {
7
7
  return j.test(e);
@@ -1,7 +1,7 @@
1
- import { p as V, V as x, c as b, r as k } from "./shared-B5CTGvpG.js";
1
+ import { p as V, V as x, c as b, r as k } from "./shared-B3cXL2Np.js";
2
2
  import { execFile as A } from "node:child_process";
3
3
  import { promisify as $ } from "node:util";
4
- import { l as p } from "./services-Csd556Tv.js";
4
+ import { l as p } from "./services-BYCeGBlO.js";
5
5
  const j = $(A);
6
6
  function I() {
7
7
  return {
@@ -1,6 +1,6 @@
1
- import { s as n } from "./shared-B5CTGvpG.js";
2
- import { b as x, f as P, c as W, l as q, a as C } from "./classify-mr-stage.logic-ClmhzQPQ.js";
3
- import { b as G, z as F, y as _, W as J, A as B, B as Q, C as V, P as K, ah as z, J as k, ai as Y, N as X, d as Z, c as ee, v as te, I as se, aj as re, ak as I, K as ne, al as oe, am as ae } from "./services-Csd556Tv.js";
1
+ import { s as n } from "./shared-B3cXL2Np.js";
2
+ import { b as x, f as P, c as W, l as q, a as C } from "./classify-mr-stage.logic-CazmQDwZ.js";
3
+ import { b as G, z as F, y as _, W as J, A as B, B as Q, C as V, P as K, ah as z, J as k, ai as Y, N as X, d as Z, c as ee, v as te, I as se, aj as re, ak as I, K as ne, al as oe, am as ae } from "./services-BYCeGBlO.js";
4
4
  const ie = {
5
5
  reviewer: "Ждут моё ревью",
6
6
  author: "Мои MR",
@@ -0,0 +1,2 @@
1
+ import { T as r } from "./services-BYCeGBlO.js";
2
+ await r(process.argv);
@@ -1,4 +1,4 @@
1
- import { p as e, r } from "./run-review-command.logic-CU1Slmc_.js";
1
+ import { p as e, r } from "./run-review-command.logic-B9GoCxh-.js";
2
2
  const s = e(process.argv), o = await r({
3
3
  mode: "verify",
4
4
  args: s
@@ -1,5 +1,5 @@
1
- import { p as b, c as p, V as j, r as w } from "./shared-B5CTGvpG.js";
2
- import { l as r } from "./services-Csd556Tv.js";
1
+ import { p as b, c as p, V as j, r as w } from "./shared-B3cXL2Np.js";
2
+ import { l as r } from "./services-BYCeGBlO.js";
3
3
  function v() {
4
4
  return {
5
5
  resolveVcsContext: w,
@@ -1,7 +1,7 @@
1
- import { p as D, a1 as o, aA as M, b as H, aB as B, aC as U, aD as O, aE as k, s as C } from "./shared-B5CTGvpG.js";
1
+ import { p as D, a4 as o, aD as H, b as M, aE as B, aF as U, aG as F, aH as O, s as k } from "./shared-B3cXL2Np.js";
2
2
  import a from "node:fs";
3
- import F from "node:path";
4
- function P(e) {
3
+ import P from "node:path";
4
+ function C(e) {
5
5
  const t = D(e, {
6
6
  branch: ["branch", "b"],
7
7
  incoming: ["incoming"]
@@ -71,7 +71,7 @@ function I(e) {
71
71
  const t = e.lastIndexOf(" -> ");
72
72
  return t > 0 ? e.slice(t + 4) : e;
73
73
  }
74
- function X(e) {
74
+ function G(e) {
75
75
  const t = /* @__PURE__ */ new Map();
76
76
  for (const n of e.split(`
77
77
  `)) {
@@ -86,8 +86,8 @@ function X(e) {
86
86
  }
87
87
  return t;
88
88
  }
89
- function z(e, t) {
90
- const n = F.join(process.cwd(), e), i = h[t] ?? "unknown";
89
+ function X(e, t) {
90
+ const n = P.join(process.cwd(), e), i = h[t] ?? "unknown";
91
91
  try {
92
92
  if (!a.statSync(n).isFile())
93
93
  return {
@@ -118,7 +118,7 @@ function z(e, t) {
118
118
  };
119
119
  }
120
120
  }
121
- function G(e) {
121
+ function z(e) {
122
122
  if (!o("git rev-parse --git-dir 2>/dev/null").trim())
123
123
  throw new Error("Текущая директория не является git-репозиторием.");
124
124
  const n = y("MERGE_HEAD");
@@ -147,12 +147,12 @@ function G(e) {
147
147
  `).map((s) => s.trim()).filter(Boolean);
148
148
  if (m.length === 0)
149
149
  throw new Error("Конфликтующие файлы не найдены (`git diff --diff-filter=U` пуст).");
150
- const E = o("git status --porcelain --untracked-files=no 2>/dev/null"), b = X(E), g = x("MERGE_MSG").trim(), v = e.incoming?.trim() || T(g) || $(r) || r, w = e.branch?.trim() || M(), A = H(), _ = d(
150
+ const E = o("git status --porcelain --untracked-files=no 2>/dev/null"), b = G(E), g = x("MERGE_MSG").trim(), v = e.incoming?.trim() || T(g) || $(r) || r, w = e.branch?.trim() || H(), _ = M(), A = d(
151
151
  o(`git rev-list --count ${r}..HEAD 2>/dev/null`)
152
152
  ), S = d(
153
153
  o(`git rev-list --count HEAD..${r} 2>/dev/null`)
154
154
  ), R = m.map(
155
- (s) => z(s, b.get(s) ?? "UU")
155
+ (s) => X(s, b.get(s) ?? "UU")
156
156
  );
157
157
  return {
158
158
  currentBranch: w,
@@ -161,9 +161,9 @@ function G(e) {
161
161
  incomingHead: r,
162
162
  mergeBase: l,
163
163
  mergeMessage: g,
164
- currentOnlyCommits: _,
164
+ currentOnlyCommits: A,
165
165
  incomingOnlyCommits: S,
166
- remote: A,
166
+ remote: _,
167
167
  conflictFiles: R
168
168
  };
169
169
  }
@@ -234,13 +234,13 @@ async function K() {
234
234
  return U("agent-resolve-conflicts.xml");
235
235
  }
236
236
  async function W(e, t = process.cwd()) {
237
- const n = await K(), i = O(t);
237
+ const n = await K(), i = F(t);
238
238
  let r = n.replace("<!--Resolve_Conflicts_Artifact-->", e);
239
- return r = r.replace("<!--ai:first-->", k(t)), r = r.replace("<!--ai:verify-axiom-hint-->", i.axiomHint), r = r.replace("<!--ai:verify-tools-example-->", i.toolsExample), r = r.replace("<!--ai:verify-step-commands-->", i.verifyStep), r;
239
+ return r = r.replace("<!--ai:first-->", O(t)), r = r.replace("<!--ai:verify-axiom-hint-->", i.axiomHint), r = r.replace("<!--ai:verify-tools-example-->", i.toolsExample), r = r.replace("<!--ai:verify-step-commands-->", i.verifyStep), r;
240
240
  }
241
241
  async function q(e) {
242
242
  try {
243
- const t = G(e), n = L(
243
+ const t = z(e), n = L(
244
244
  t
245
245
  );
246
246
  return {
@@ -254,12 +254,12 @@ async function q(e) {
254
254
  };
255
255
  } catch (t) {
256
256
  const n = t.message ?? String(t);
257
- return console.error(C.redBright.bold("✖ Ошибка:"), n), {
257
+ return console.error(k.redBright.bold("✖ Ошибка:"), n), {
258
258
  ok: !1,
259
259
  code: 1
260
260
  };
261
261
  }
262
262
  }
263
- const J = P(process.argv), f = await q(J);
263
+ const J = C(process.argv), f = await q(J);
264
264
  f.output && console.info(f.output);
265
265
  process.exit(f.code);
@@ -1,5 +1,5 @@
1
1
  import { parseArgs as g } from "node:util";
2
- import { l as d, ac as l, ad as p } from "./services-CwvXl2MB.js";
2
+ import { l as d, ac as l, ad as p } from "./services-BYCeGBlO.js";
3
3
  function f(i) {
4
4
  const { positionals: e, values: n } = g({
5
5
  args: i.slice(3),
@@ -1,6 +1,6 @@
1
1
  import { AiLegacyModel as h } from "../index.js";
2
- import { G as f, u as c } from "./shared-DSZTUx5b.js";
3
- import { l as p } from "./services-CwvXl2MB.js";
2
+ import { G as f, u as c } from "./shared-B3cXL2Np.js";
3
+ import { l as p } from "./services-BYCeGBlO.js";
4
4
  import { readFileSync as l } from "node:fs";
5
5
  import { dirname as _, join as m } from "node:path";
6
6
  import { fileURLToPath as k } from "node:url";
@@ -0,0 +1,2 @@
1
+ import { r } from "./services-BYCeGBlO.js";
2
+ process.exit(await r(process.argv));
@@ -1,5 +1,5 @@
1
- import { p as e, r as t } from "./run-review-command.logic-CA2Rjymb.js";
2
- import { r as i } from "./shared-DSZTUx5b.js";
1
+ import { p as e, r as t } from "./run-review-command.logic-B9GoCxh-.js";
2
+ import { r as i } from "./shared-B3cXL2Np.js";
3
3
  const r = e(process.argv), c = {
4
4
  ref: r.ref,
5
5
  branch: r.branch,
@@ -2,9 +2,9 @@ import { execFileSync as O } from "node:child_process";
2
2
  import { mkdirSync as ie, writeFileSync as ye, readdirSync as ve } from "node:fs";
3
3
  import { homedir as ke } from "node:os";
4
4
  import { join as le } from "node:path";
5
- import { s as V, r as Se, c as be } from "./shared-B5CTGvpG.js";
6
- import { b as Ae, d as Re, c as xe, v as Ce, u as je, w as Pe, x as De, y as _e, z as He, W as Be, A as Me, B as Ee, C as Ne, P as Te, F as Oe, G as Ie, H as Le, I as Fe, J as ce, K as We, L as Ue } from "./services-Csd556Tv.js";
7
- import { b as qe, f as Ge, c as Je, a as ze, l as Ve } from "./classify-mr-stage.logic-ClmhzQPQ.js";
5
+ import { s as V, r as Se, c as be } from "./shared-B3cXL2Np.js";
6
+ import { b as Ae, d as Re, c as xe, v as Ce, u as je, w as Pe, x as De, y as _e, z as He, W as Be, A as Me, B as Ee, C as Ne, P as Te, F as Oe, G as Ie, H as Le, I as Fe, J as ce, K as We, L as Ue } from "./services-BYCeGBlO.js";
7
+ import { b as qe, f as Ge, c as Je, a as ze, l as Ve } from "./classify-mr-stage.logic-CazmQDwZ.js";
8
8
  function P(e, t) {
9
9
  const n = e.find((a) => a.startsWith(`${t}=`));
10
10
  if (n) return n.slice(t.length + 1);
@@ -1,7 +1,7 @@
1
1
  import { existsSync as h, mkdirSync as I, writeFileSync as S } from "node:fs";
2
2
  import { resolve as D, dirname as R } from "node:path";
3
- import { l as d } from "./services-CwvXl2MB.js";
4
- import { p as C, A as E, T as l } from "./shared-DSZTUx5b.js";
3
+ import { l as d } from "./services-BYCeGBlO.js";
4
+ import { p as C, A as E, T as l } from "./shared-B3cXL2Np.js";
5
5
  const g = "ERR_CLI_SDD_NEW_BAD_INVOCATION", $ = "ERR_CLI_SDD_NEW_UNKNOWN_KIND", _ = "ERR_CLI_SDD_NEW_FILE_EXISTS", w = "ERR_CLI_SDD_NEW_WRITE_FAILED", N = [
6
6
  "product",
7
7
  "library",
@@ -1,9 +1,9 @@
1
1
  import { readdirSync as S, statSync as _, mkdirSync as O, writeFileSync as P, readFileSync as v } from "node:fs";
2
2
  import { join as a, sep as U } from "node:path";
3
3
  import { fileURLToPath as $ } from "node:url";
4
- import { l as T } from "./services-Csd556Tv.js";
5
- import { au as x, av as A, aw as z, ax as I, p as Y, ay as j } from "./shared-B5CTGvpG.js";
6
- class B {
4
+ import { l as A } from "./services-BYCeGBlO.js";
5
+ import { ax as T, ay as x, az as z, aA as B, p as I, aB as Y } from "./shared-B3cXL2Np.js";
6
+ class j {
7
7
  /** @purpose List of all synced file entries. */
8
8
  entries;
9
9
  /**
@@ -80,21 +80,21 @@ function H(e, t) {
80
80
  }
81
81
  const s = W(t.sourceDir, t.subdirs), o = [];
82
82
  for (const n of s) {
83
- const r = a(t.sourceDir, n), c = a(t.targetDir, n), i = e.readFile(r), p = x(i.toString("utf-8"), I), l = Buffer.from(p, "utf-8"), f = l.length;
83
+ const r = a(t.sourceDir, n), c = a(t.targetDir, n), i = e.readFile(r), p = T(i.toString("utf-8"), B), l = Buffer.from(p, "utf-8"), f = l.length;
84
84
  let d = null;
85
85
  try {
86
86
  d = e.readFile(c);
87
87
  } catch {
88
88
  }
89
89
  let u;
90
- d === null ? u = "added" : A(l, d) ? u = "updated" : u = "unchanged", o.push({
90
+ d === null ? u = "added" : x(l, d) ? u = "updated" : u = "unchanged", o.push({
91
91
  relativePath: n,
92
92
  status: u,
93
93
  sourceSize: f,
94
94
  targetSize: d?.length
95
95
  }), !t.dryRun && u !== "unchanged" && (e.mkdir(a(t.targetDir, n, ".."), { recursive: !0 }), e.writeFile(c, l));
96
96
  }
97
- return new B(o);
97
+ return new j(o);
98
98
  }
99
99
  function J(e) {
100
100
  try {
@@ -107,13 +107,13 @@ function J(e) {
107
107
  function V(e, t, s, o, n) {
108
108
  s.write(`Sync (v${n})${t ? " (dry-run)" : ""}: ${o}
109
109
  `);
110
- const r = j(e, { dryRun: t });
110
+ const r = Y(e, { dryRun: t });
111
111
  for (const c of r)
112
112
  s.write(c + `
113
113
  `);
114
114
  }
115
115
  function E(e, t) {
116
- const s = v, o = P, n = O, r = _, c = S, i = L, p = process.stdout, l = process.stderr, f = Y(e, {
116
+ const s = v, o = P, n = O, r = _, c = S, i = L, p = process.stdout, l = process.stderr, f = I(e, {
117
117
  dryRun: ["dry-run"]
118
118
  }), d = f.dryRun === !0 || f.dryRun === "true", u = f._.filter(
119
119
  (g) => typeof g == "string" && g !== "sync"
@@ -153,7 +153,7 @@ if (process.argv[1]) {
153
153
  process.exit(t);
154
154
  } catch (t) {
155
155
  const s = new Error("[syncCmd] Self-execution failed", { cause: t });
156
- T.error("[syncCmd#run] [self-executing → failed]", { error: s }), process.exit(1);
156
+ A.error("[syncCmd#run] [self-executing → failed]", { error: s }), process.exit(1);
157
157
  }
158
158
  }
159
159
  process.exit(E(process.argv));
@@ -1,5 +1,5 @@
1
- import { p as N, V as A, c as w, r as M } from "./shared-DSZTUx5b.js";
2
- import { l as q } from "./services-CwvXl2MB.js";
1
+ import { p as N, V as A, c as w, r as M } from "./shared-B3cXL2Np.js";
2
+ import { l as q } from "./services-BYCeGBlO.js";
3
3
  function L() {
4
4
  return {
5
5
  resolveVcsContext: M,
@@ -1,5 +1,5 @@
1
- import { p, c as b, d as x, V as v, r as j } from "./shared-DSZTUx5b.js";
2
- import { l as i, V as C, a as M } from "./services-CwvXl2MB.js";
1
+ import { p, c as b, d as x, V as v, r as j } from "./shared-B3cXL2Np.js";
2
+ import { l as i, V as C, a as M } from "./services-BYCeGBlO.js";
3
3
  function V() {
4
4
  return {
5
5
  resolveVcsContext: j,
@@ -1,7 +1,7 @@
1
1
  import { readFileSync as v, writeFileSync as D, existsSync as x, mkdirSync as S, statSync as T, readdirSync as M } from "node:fs";
2
2
  import { resolve as g, relative as C, join as h, dirname as A } from "node:path";
3
- import { l as j } from "./services-Csd556Tv.js";
4
- import { p as F, ad as L, ae as O, af as N, ag as P, ah as V, ai as G, aj as U, ak as W, al as Y, am as b, an as B, ao as K } from "./shared-B5CTGvpG.js";
3
+ import { l as j } from "./services-BYCeGBlO.js";
4
+ import { p as F, ag as L, ah as O, ai as N, aj as P, ak as V, al as G, am as U, an as W, ao as Y, ap as b, aq as B, ar as q } from "./shared-B3cXL2Np.js";
5
5
  const E = "ERR_CLI_SDD_MIGRATE_BAD_INVOCATION";
6
6
  function y(a) {
7
7
  return {
@@ -19,7 +19,7 @@ function y(a) {
19
19
  `)
20
20
  };
21
21
  }
22
- function X(a) {
22
+ function K(a) {
23
23
  const e = [], n = (r) => {
24
24
  let c;
25
25
  try {
@@ -39,7 +39,7 @@ function X(a) {
39
39
  }
40
40
  return e;
41
41
  }
42
- function q(a, e) {
42
+ function X(a, e) {
43
43
  if (e.verify) {
44
44
  const s = P(a), t = s.map((u) => ` ERROR ${u.code} ${u.file} — ${u.message}`), i = `[sdd-migrate plan] VERIFY · ${s.length} finding(s)`;
45
45
  return s.length === 0 ? { ok: !0, text: `${i}
@@ -108,7 +108,7 @@ function z(a, e) {
108
108
  (t) => ` ${e.write ? "~" : "would"} ${t.file} — ${t.count} замен(ы)`
109
109
  ), l = c.reduce((t, i) => t + i.count, 0), s = `[sdd-migrate ids] ${e.write ? "WRITE" : "DRY-RUN"} · ${r.map.length} ID · ${l} вхождений в ${c.length} файл(ах)`;
110
110
  if (e.write) {
111
- const t = K(a, r.map);
111
+ const t = q(a, r.map);
112
112
  return t.length > 0 ? {
113
113
  ok: !1,
114
114
  code: "ERR_CLI_SDD_MIGRATE_IDS_LEFTOVER",
@@ -149,7 +149,7 @@ async function H(a) {
149
149
  ), r = n[0];
150
150
  if (r === "plan") {
151
151
  const o = g(n[1] ?? ".");
152
- return q(o, {
152
+ return X(o, {
153
153
  verify: e.verify === !0 || e.verify === "true",
154
154
  write: e.write === !0 || e.write === "true"
155
155
  });
@@ -188,7 +188,7 @@ async function H(a) {
188
188
  const c = e.write === !0 || e.write === "true", d = e.all === !0 || e.all === "true";
189
189
  let l;
190
190
  if (d)
191
- l = X(g(n[1] ?? "."));
191
+ l = K(g(n[1] ?? "."));
192
192
  else {
193
193
  const o = n[1];
194
194
  if (!o) return y("need a <ticket> path or --all");
@@ -1,13 +1,13 @@
1
1
  import yt from "node:fs";
2
2
  import St from "node:path";
3
- import { at as Mn, an as Dn, l as xe, au as In, a as Nn, V as qn } from "./services-CwvXl2MB.js";
3
+ import { at as Mn, an as Dn, l as xe, au as In, a as Nn, V as qn } from "./services-BYCeGBlO.js";
4
4
  import Kt from "os";
5
5
  import Se from "path";
6
6
  import Pn from "util";
7
7
  import dt from "stream";
8
8
  import Fn from "events";
9
9
  import Qt from "fs";
10
- import { p as Bn, s as ne } from "./shared-DSZTUx5b.js";
10
+ import { p as Bn, s as ne } from "./shared-B3cXL2Np.js";
11
11
  var se = {}, ie = {}, Oe = {}, nr;
12
12
  function jn() {
13
13
  if (nr) return Oe;