kastell 2.2.7 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) hide show
  1. package/.claude-plugin/plugin.json +2 -2
  2. package/CHANGELOG.md +100 -0
  3. package/README.md +34 -6
  4. package/README.tr.md +6 -6
  5. package/dist/commands/audit.d.ts +3 -2
  6. package/dist/commands/audit.d.ts.map +1 -1
  7. package/dist/commands/audit.js +88 -47
  8. package/dist/commands/audit.js.map +1 -1
  9. package/dist/commands/auth.d.ts.map +1 -1
  10. package/dist/commands/auth.js +14 -1
  11. package/dist/commands/auth.js.map +1 -1
  12. package/dist/commands/domain.d.ts.map +1 -1
  13. package/dist/commands/domain.js +18 -1
  14. package/dist/commands/domain.js.map +1 -1
  15. package/dist/commands/evidence.d.ts.map +1 -1
  16. package/dist/commands/evidence.js +2 -1
  17. package/dist/commands/evidence.js.map +1 -1
  18. package/dist/commands/fix.d.ts.map +1 -1
  19. package/dist/commands/fix.js +12 -4
  20. package/dist/commands/fix.js.map +1 -1
  21. package/dist/commands/init.d.ts.map +1 -1
  22. package/dist/commands/init.js +2 -1
  23. package/dist/commands/init.js.map +1 -1
  24. package/dist/commands/lock.d.ts.map +1 -1
  25. package/dist/commands/lock.js +7 -2
  26. package/dist/commands/lock.js.map +1 -1
  27. package/dist/commands/maintain.d.ts.map +1 -1
  28. package/dist/commands/maintain.js +13 -0
  29. package/dist/commands/maintain.js.map +1 -1
  30. package/dist/commands/plugin.d.ts.map +1 -1
  31. package/dist/commands/plugin.js +5 -4
  32. package/dist/commands/plugin.js.map +1 -1
  33. package/dist/commands/snapshot.d.ts.map +1 -1
  34. package/dist/commands/snapshot.js +16 -0
  35. package/dist/commands/snapshot.js.map +1 -1
  36. package/dist/commands/status.d.ts.map +1 -1
  37. package/dist/commands/status.js +2 -0
  38. package/dist/commands/status.js.map +1 -1
  39. package/dist/commands/update.d.ts.map +1 -1
  40. package/dist/commands/update.js +30 -10
  41. package/dist/commands/update.js.map +1 -1
  42. package/dist/core/audit/commands.d.ts +4 -1
  43. package/dist/core/audit/commands.d.ts.map +1 -1
  44. package/dist/core/audit/commands.js +7 -3
  45. package/dist/core/audit/commands.js.map +1 -1
  46. package/dist/core/audit/diff.d.ts +31 -0
  47. package/dist/core/audit/diff.d.ts.map +1 -1
  48. package/dist/core/audit/diff.js +43 -0
  49. package/dist/core/audit/diff.js.map +1 -1
  50. package/dist/core/audit/errors.d.ts +4 -0
  51. package/dist/core/audit/errors.d.ts.map +1 -0
  52. package/dist/core/audit/errors.js +4 -0
  53. package/dist/core/audit/errors.js.map +1 -0
  54. package/dist/core/audit/fix-history.d.ts.map +1 -1
  55. package/dist/core/audit/fix-history.js +3 -5
  56. package/dist/core/audit/fix-history.js.map +1 -1
  57. package/dist/core/audit/fix.d.ts.map +1 -1
  58. package/dist/core/audit/fix.js +16 -18
  59. package/dist/core/audit/fix.js.map +1 -1
  60. package/dist/core/audit/history.d.ts +8 -0
  61. package/dist/core/audit/history.d.ts.map +1 -1
  62. package/dist/core/audit/history.js +67 -5
  63. package/dist/core/audit/history.js.map +1 -1
  64. package/dist/core/audit/index.d.ts.map +1 -1
  65. package/dist/core/audit/index.js +24 -12
  66. package/dist/core/audit/index.js.map +1 -1
  67. package/dist/core/audit/listChecks.d.ts.map +1 -1
  68. package/dist/core/audit/listChecks.js +2 -1
  69. package/dist/core/audit/listChecks.js.map +1 -1
  70. package/dist/core/audit/pluginAudit.d.ts +10 -0
  71. package/dist/core/audit/pluginAudit.d.ts.map +1 -1
  72. package/dist/core/audit/pluginAudit.js +59 -23
  73. package/dist/core/audit/pluginAudit.js.map +1 -1
  74. package/dist/core/audit/pluginFix.d.ts +22 -1
  75. package/dist/core/audit/pluginFix.d.ts.map +1 -1
  76. package/dist/core/audit/pluginFix.js +27 -10
  77. package/dist/core/audit/pluginFix.js.map +1 -1
  78. package/dist/core/audit/regression.d.ts +1 -0
  79. package/dist/core/audit/regression.d.ts.map +1 -1
  80. package/dist/core/audit/regression.js +7 -5
  81. package/dist/core/audit/regression.js.map +1 -1
  82. package/dist/core/audit/snapshot.d.ts.map +1 -1
  83. package/dist/core/audit/snapshot.js +3 -4
  84. package/dist/core/audit/snapshot.js.map +1 -1
  85. package/dist/core/audit/types.d.ts +2 -2
  86. package/dist/core/audit/types.d.ts.map +1 -1
  87. package/dist/core/completions.d.ts.map +1 -1
  88. package/dist/core/completions.js +71 -47
  89. package/dist/core/completions.js.map +1 -1
  90. package/dist/core/configRepair.d.ts.map +1 -1
  91. package/dist/core/configRepair.js +5 -12
  92. package/dist/core/configRepair.js.map +1 -1
  93. package/dist/core/doctor.d.ts +2 -1
  94. package/dist/core/doctor.d.ts.map +1 -1
  95. package/dist/core/doctor.js +4 -5
  96. package/dist/core/doctor.js.map +1 -1
  97. package/dist/core/evidence.d.ts.map +1 -1
  98. package/dist/core/evidence.js +4 -7
  99. package/dist/core/evidence.js.map +1 -1
  100. package/dist/core/fleet.d.ts +5 -2
  101. package/dist/core/fleet.d.ts.map +1 -1
  102. package/dist/core/fleet.js +34 -22
  103. package/dist/core/fleet.js.map +1 -1
  104. package/dist/core/notify.d.ts.map +1 -1
  105. package/dist/core/notify.js +13 -24
  106. package/dist/core/notify.js.map +1 -1
  107. package/dist/core/plugin/audit.d.ts +25 -0
  108. package/dist/core/plugin/audit.d.ts.map +1 -0
  109. package/dist/core/plugin/audit.js +43 -0
  110. package/dist/core/plugin/audit.js.map +1 -0
  111. package/dist/core/plugin.d.ts +19 -6
  112. package/dist/core/plugin.d.ts.map +1 -1
  113. package/dist/core/plugin.js +40 -19
  114. package/dist/core/plugin.js.map +1 -1
  115. package/dist/core/provision.d.ts +25 -1
  116. package/dist/core/provision.d.ts.map +1 -1
  117. package/dist/core/provision.js +127 -12
  118. package/dist/core/provision.js.map +1 -1
  119. package/dist/core/scheduleManager.d.ts.map +1 -1
  120. package/dist/core/scheduleManager.js +7 -8
  121. package/dist/core/scheduleManager.js.map +1 -1
  122. package/dist/core/tokens.d.ts +1 -1
  123. package/dist/core/tokens.d.ts.map +1 -1
  124. package/dist/core/tokens.js +12 -11
  125. package/dist/core/tokens.js.map +1 -1
  126. package/dist/index.js +2 -0
  127. package/dist/index.js.map +1 -1
  128. package/dist/mcp/index.js +2 -2
  129. package/dist/mcp/index.js.map +1 -1
  130. package/dist/mcp/server.d.ts +14 -0
  131. package/dist/mcp/server.d.ts.map +1 -1
  132. package/dist/mcp/server.js +118 -96
  133. package/dist/mcp/server.js.map +1 -1
  134. package/dist/mcp/startupDiagnostic.d.ts +6 -0
  135. package/dist/mcp/startupDiagnostic.d.ts.map +1 -0
  136. package/dist/mcp/startupDiagnostic.js +7 -0
  137. package/dist/mcp/startupDiagnostic.js.map +1 -0
  138. package/dist/mcp/tools/serverAudit.d.ts +2 -1
  139. package/dist/mcp/tools/serverAudit.d.ts.map +1 -1
  140. package/dist/mcp/tools/serverAudit.js.map +1 -1
  141. package/dist/mcp/tools/serverBackup.handlers.d.ts.map +1 -1
  142. package/dist/mcp/tools/serverBackup.handlers.js +1 -0
  143. package/dist/mcp/tools/serverBackup.handlers.js.map +1 -1
  144. package/dist/mcp/tools/serverCompare.d.ts +13 -14
  145. package/dist/mcp/tools/serverCompare.d.ts.map +1 -1
  146. package/dist/mcp/tools/serverCompare.js +20 -15
  147. package/dist/mcp/tools/serverCompare.js.map +1 -1
  148. package/dist/mcp/tools/serverFix.d.ts +61 -17
  149. package/dist/mcp/tools/serverFix.d.ts.map +1 -1
  150. package/dist/mcp/tools/serverFix.js +67 -78
  151. package/dist/mcp/tools/serverFix.js.map +1 -1
  152. package/dist/mcp/tools/serverGuard.d.ts.map +1 -1
  153. package/dist/mcp/tools/serverGuard.js +4 -1
  154. package/dist/mcp/tools/serverGuard.js.map +1 -1
  155. package/dist/mcp/tools/serverInfo.d.ts +11 -3
  156. package/dist/mcp/tools/serverInfo.d.ts.map +1 -1
  157. package/dist/mcp/tools/serverInfo.js +11 -3
  158. package/dist/mcp/tools/serverInfo.js.map +1 -1
  159. package/dist/mcp/tools/serverLogs.d.ts.map +1 -1
  160. package/dist/mcp/tools/serverLogs.js +2 -1
  161. package/dist/mcp/tools/serverLogs.js.map +1 -1
  162. package/dist/mcp/tools/serverMaintain.d.ts +4 -2
  163. package/dist/mcp/tools/serverMaintain.d.ts.map +1 -1
  164. package/dist/mcp/tools/serverMaintain.js +4 -2
  165. package/dist/mcp/tools/serverMaintain.js.map +1 -1
  166. package/dist/mcp/tools/serverPlugin.js +2 -2
  167. package/dist/mcp/tools/serverPlugin.js.map +1 -1
  168. package/dist/mcp/tools/serverProvision.d.ts +8 -0
  169. package/dist/mcp/tools/serverProvision.d.ts.map +1 -1
  170. package/dist/mcp/tools/serverProvision.js +31 -3
  171. package/dist/mcp/tools/serverProvision.js.map +1 -1
  172. package/dist/mcp/tools/serverSecure.actions.d.ts +21 -0
  173. package/dist/mcp/tools/serverSecure.actions.d.ts.map +1 -0
  174. package/dist/mcp/tools/serverSecure.actions.js +22 -0
  175. package/dist/mcp/tools/serverSecure.actions.js.map +1 -0
  176. package/dist/mcp/tools/serverSecure.d.ts +23 -1
  177. package/dist/mcp/tools/serverSecure.d.ts.map +1 -1
  178. package/dist/mcp/tools/serverSecure.js +16 -9
  179. package/dist/mcp/tools/serverSecure.js.map +1 -1
  180. package/dist/mcp/utils/parseMetrics.d.ts +27 -0
  181. package/dist/mcp/utils/parseMetrics.d.ts.map +1 -0
  182. package/dist/mcp/utils/parseMetrics.js +35 -0
  183. package/dist/mcp/utils/parseMetrics.js.map +1 -0
  184. package/dist/mcp/utils.d.ts +9 -0
  185. package/dist/mcp/utils.d.ts.map +1 -1
  186. package/dist/mcp/utils.js +1 -2
  187. package/dist/mcp/utils.js.map +1 -1
  188. package/dist/mcp-bundle.mjs +5862 -4939
  189. package/dist/plugin/loader.js +3 -2
  190. package/dist/plugin/loader.js.map +1 -1
  191. package/dist/plugin/registry.d.ts +26 -5
  192. package/dist/plugin/registry.d.ts.map +1 -1
  193. package/dist/plugin/registry.js +46 -18
  194. package/dist/plugin/registry.js.map +1 -1
  195. package/dist/plugin/sdk/constants.d.ts +2 -0
  196. package/dist/plugin/sdk/constants.d.ts.map +1 -1
  197. package/dist/plugin/sdk/constants.js +1 -0
  198. package/dist/plugin/sdk/constants.js.map +1 -1
  199. package/dist/plugin/sdk/types.d.ts +18 -4
  200. package/dist/plugin/sdk/types.d.ts.map +1 -1
  201. package/dist/plugin/sdk/types.js +1 -1
  202. package/dist/plugin/sdk/types.js.map +1 -1
  203. package/dist/plugin/validate.d.ts.map +1 -1
  204. package/dist/plugin/validate.js +17 -8
  205. package/dist/plugin/validate.js.map +1 -1
  206. package/dist/types/severity.d.ts +3 -0
  207. package/dist/types/severity.d.ts.map +1 -0
  208. package/dist/types/severity.js +2 -0
  209. package/dist/types/severity.js.map +1 -0
  210. package/dist/utils/atomicWrite.d.ts +23 -0
  211. package/dist/utils/atomicWrite.d.ts.map +1 -0
  212. package/dist/utils/atomicWrite.js +44 -0
  213. package/dist/utils/atomicWrite.js.map +1 -0
  214. package/dist/utils/concurrency.d.ts +17 -0
  215. package/dist/utils/concurrency.d.ts.map +1 -0
  216. package/dist/utils/concurrency.js +38 -0
  217. package/dist/utils/concurrency.js.map +1 -0
  218. package/dist/utils/config.d.ts +1 -0
  219. package/dist/utils/config.d.ts.map +1 -1
  220. package/dist/utils/config.js +44 -33
  221. package/dist/utils/config.js.map +1 -1
  222. package/dist/utils/encryption.d.ts.map +1 -1
  223. package/dist/utils/encryption.js +7 -2
  224. package/dist/utils/encryption.js.map +1 -1
  225. package/dist/utils/exitCode.d.ts +2 -0
  226. package/dist/utils/exitCode.d.ts.map +1 -0
  227. package/dist/utils/exitCode.js +4 -0
  228. package/dist/utils/exitCode.js.map +1 -0
  229. package/dist/utils/fileLock.d.ts.map +1 -1
  230. package/dist/utils/fileLock.js +177 -30
  231. package/dist/utils/fileLock.js.map +1 -1
  232. package/dist/utils/fsMtime.d.ts +32 -0
  233. package/dist/utils/fsMtime.d.ts.map +1 -0
  234. package/dist/utils/fsMtime.js +61 -0
  235. package/dist/utils/fsMtime.js.map +1 -0
  236. package/dist/utils/fsRetry.d.ts +20 -0
  237. package/dist/utils/fsRetry.d.ts.map +1 -0
  238. package/dist/utils/fsRetry.js +56 -0
  239. package/dist/utils/fsRetry.js.map +1 -0
  240. package/dist/utils/logger.d.ts +1 -1
  241. package/dist/utils/logger.d.ts.map +1 -1
  242. package/dist/utils/logger.js +8 -3
  243. package/dist/utils/logger.js.map +1 -1
  244. package/dist/utils/openBrowser.d.ts.map +1 -1
  245. package/dist/utils/openBrowser.js +3 -2
  246. package/dist/utils/openBrowser.js.map +1 -1
  247. package/dist/utils/platform.d.ts +2 -0
  248. package/dist/utils/platform.d.ts.map +1 -0
  249. package/dist/utils/platform.js +2 -0
  250. package/dist/utils/platform.js.map +1 -0
  251. package/dist/utils/secureWrite.d.ts +1 -0
  252. package/dist/utils/secureWrite.d.ts.map +1 -1
  253. package/dist/utils/secureWrite.js +8 -2
  254. package/dist/utils/secureWrite.js.map +1 -1
  255. package/dist/utils/securityLogger.d.ts.map +1 -1
  256. package/dist/utils/securityLogger.js +16 -4
  257. package/dist/utils/securityLogger.js.map +1 -1
  258. package/dist/utils/ssh.d.ts +2 -1
  259. package/dist/utils/ssh.d.ts.map +1 -1
  260. package/dist/utils/ssh.js +14 -4
  261. package/dist/utils/ssh.js.map +1 -1
  262. package/dist/utils/version.d.ts +5 -0
  263. package/dist/utils/version.d.ts.map +1 -1
  264. package/dist/utils/version.js +26 -0
  265. package/dist/utils/version.js.map +1 -1
  266. package/dist/utils/webhookSecurity.d.ts +13 -0
  267. package/dist/utils/webhookSecurity.d.ts.map +1 -0
  268. package/dist/utils/webhookSecurity.js +130 -0
  269. package/dist/utils/webhookSecurity.js.map +1 -0
  270. package/kastell-plugin/.claude-plugin/plugin.json +2 -2
  271. package/kastell-plugin/README.md +6 -0
  272. package/package.json +3 -4
@@ -1 +1 @@
1
- {"version":3,"file":"serverCompare.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverCompare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BpC,CAAC;AAEH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC,WAAW,CAAC,CAoDvB"}
1
+ {"version":3,"file":"serverCompare.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverCompare.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,mBAAmB;;;;;CAK/B,CAAC;AAOF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2BpC,CAAC;AAEH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC,WAAW,CAAC,CA2DvB"}
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { getServers } from "../../utils/config.js";
3
- import { resolveAuditPair, buildCategorySummary, diffAudits } from "../../core/audit/diff.js";
3
+ import { resolveAuditPair, buildCategorySummary, diffAuditsFlat } from "../../core/audit/diff.js";
4
4
  import { mcpSuccess, mcpError, } from "../utils.js";
5
5
  import { getErrorMessage, sanitizeStderr } from "../../utils/errorMapper.js";
6
6
  export const serverCompareSchema = {
@@ -9,16 +9,19 @@ export const serverCompareSchema = {
9
9
  fresh: z.boolean().default(false).describe("Force live audit instead of using snapshots. Default: false."),
10
10
  detail: z.boolean().default(false).describe("Return check-level diff instead of category summary. Default: false."),
11
11
  };
12
+ const serverCompareBaseFields = {
13
+ serverA: z.string(),
14
+ serverB: z.string(),
15
+ };
12
16
  export const serverCompareOutputSchema = z.object({
13
- result: z.union([
17
+ result: z.discriminatedUnion("format", [
14
18
  z.object({
15
19
  format: z.literal("category"),
16
- serverA: z.string(),
17
- serverB: z.string(),
20
+ ...serverCompareBaseFields,
18
21
  categories: z.array(z.object({
19
- name: z.string(),
20
- scoreA: z.number(),
21
- scoreB: z.number(),
22
+ category: z.string(),
23
+ scoreBefore: z.number(),
24
+ scoreAfter: z.number(),
22
25
  delta: z.number(),
23
26
  })),
24
27
  overallA: z.number(),
@@ -27,14 +30,13 @@ export const serverCompareOutputSchema = z.object({
27
30
  }),
28
31
  z.object({
29
32
  format: z.literal("check"),
30
- serverA: z.string(),
31
- serverB: z.string(),
33
+ ...serverCompareBaseFields,
32
34
  checks: z.array(z.object({
33
35
  id: z.string(),
34
36
  name: z.string(),
35
- status: z.enum(["same", "A_better", "B_better", "both_fail", "both_pass"]),
36
- scoreA: z.number(),
37
- scoreB: z.number(),
37
+ status: z.enum(["A_better", "B_better", "both_pass", "both_fail"]),
38
+ before: z.boolean().nullable(),
39
+ after: z.boolean().nullable(),
38
40
  })),
39
41
  }),
40
42
  ]),
@@ -55,17 +57,20 @@ export async function handleServerCompare(params) {
55
57
  if (!serverB) {
56
58
  return mcpError(`Server not found: ${params.serverB}`, `Available servers: ${servers.map((s) => s.name).join(", ")}`);
57
59
  }
60
+ if (serverA.name === serverB.name || serverA.ip === serverB.ip) {
61
+ return mcpError("Servers must be different", "Provide two different server names or IPs to compare");
62
+ }
58
63
  const pairResult = await resolveAuditPair(serverA, serverB, !!params.fresh);
59
64
  if (!pairResult.success)
60
65
  return mcpError(pairResult.error ?? "Compare failed");
61
66
  const { auditA, auditB } = pairResult.data;
62
67
  if (params.detail) {
63
- const diff = diffAudits(auditA, auditB, { before: serverA.name, after: serverB.name });
68
+ const diff = diffAuditsFlat(auditA, auditB, { before: serverA.name, after: serverB.name });
64
69
  return mcpSuccess({
65
70
  format: "check",
66
71
  serverA: serverA.name,
67
72
  serverB: serverB.name,
68
- checks: diff,
73
+ checks: diff.checks,
69
74
  });
70
75
  }
71
76
  const summary = buildCategorySummary(auditA, auditB, { before: serverA.name, after: serverB.name });
@@ -73,7 +78,7 @@ export async function handleServerCompare(params) {
73
78
  format: "category",
74
79
  serverA: serverA.name,
75
80
  serverB: serverB.name,
76
- categories: summary,
81
+ categories: summary.categories,
77
82
  overallA: auditA.overallScore,
78
83
  overallB: auditB.overallScore,
79
84
  overallDelta: auditB.overallScore - auditA.overallScore,
@@ -1 +1 @@
1
- {"version":3,"file":"serverCompare.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverCompare.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverCompare.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverCompare.ts"],"names":[],"mappings":"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"}
@@ -1,32 +1,74 @@
1
1
  import { z } from "zod";
2
2
  import { type McpResponse } from "../utils.js";
3
3
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
4
- export declare const serverFixSchema: {
4
+ export declare const serverFixInputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
5
5
  server: z.ZodOptional<z.ZodString>;
6
- action: z.ZodDefault<z.ZodEnum<{
7
- apply: "apply";
8
- history: "history";
9
- rollback: "rollback";
10
- "rollback-all": "rollback-all";
11
- "rollback-to": "rollback-to";
6
+ action: z.ZodLiteral<"apply">;
7
+ mode: z.ZodDefault<z.ZodEnum<{
8
+ live: "live";
9
+ "dry-run": "dry-run";
12
10
  }>>;
13
- dryRun: z.ZodDefault<z.ZodBoolean>;
14
11
  rollbackId: z.ZodOptional<z.ZodString>;
15
12
  checks: z.ZodOptional<z.ZodArray<z.ZodString>>;
16
13
  category: z.ZodOptional<z.ZodString>;
14
+ profile: z.ZodOptional<z.ZodString>;
17
15
  top: z.ZodOptional<z.ZodNumber>;
18
16
  target: z.ZodOptional<z.ZodNumber>;
17
+ diff: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
18
+ report: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
19
+ force: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
20
+ }, z.core.$strip>, z.ZodObject<{
21
+ server: z.ZodOptional<z.ZodString>;
22
+ action: z.ZodLiteral<"rollback">;
23
+ rollbackId: z.ZodString;
24
+ }, z.core.$strip>, z.ZodObject<{
25
+ server: z.ZodOptional<z.ZodString>;
26
+ action: z.ZodLiteral<"rollback-all">;
27
+ }, z.core.$strip>, z.ZodObject<{
28
+ server: z.ZodOptional<z.ZodString>;
29
+ action: z.ZodLiteral<"rollback-to">;
30
+ rollbackId: z.ZodString;
31
+ }, z.core.$strip>, z.ZodObject<{
32
+ server: z.ZodOptional<z.ZodString>;
33
+ action: z.ZodLiteral<"history">;
34
+ }, z.core.$strip>], "action">;
35
+ export declare const serverFixSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
36
+ server: z.ZodOptional<z.ZodString>;
37
+ action: z.ZodLiteral<"apply">;
38
+ mode: z.ZodDefault<z.ZodEnum<{
39
+ live: "live";
40
+ "dry-run": "dry-run";
41
+ }>>;
42
+ rollbackId: z.ZodOptional<z.ZodString>;
43
+ checks: z.ZodOptional<z.ZodArray<z.ZodString>>;
44
+ category: z.ZodOptional<z.ZodString>;
19
45
  profile: z.ZodOptional<z.ZodString>;
46
+ top: z.ZodOptional<z.ZodNumber>;
47
+ target: z.ZodOptional<z.ZodNumber>;
20
48
  diff: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
21
49
  report: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
22
50
  force: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
23
- };
51
+ }, z.core.$strip>, z.ZodObject<{
52
+ server: z.ZodOptional<z.ZodString>;
53
+ action: z.ZodLiteral<"rollback">;
54
+ rollbackId: z.ZodString;
55
+ }, z.core.$strip>, z.ZodObject<{
56
+ server: z.ZodOptional<z.ZodString>;
57
+ action: z.ZodLiteral<"rollback-all">;
58
+ }, z.core.$strip>, z.ZodObject<{
59
+ server: z.ZodOptional<z.ZodString>;
60
+ action: z.ZodLiteral<"rollback-to">;
61
+ rollbackId: z.ZodString;
62
+ }, z.core.$strip>, z.ZodObject<{
63
+ server: z.ZodOptional<z.ZodString>;
64
+ action: z.ZodLiteral<"history">;
65
+ }, z.core.$strip>], "action">;
24
66
  export declare const serverFixOutputSchema: z.ZodObject<{
25
- result: z.ZodDiscriminatedUnion<[z.ZodObject<{
67
+ result: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<[z.ZodObject<{
26
68
  action: z.ZodLiteral<"apply">;
27
- dryRun: z.ZodBoolean;
69
+ dryRun: z.ZodLiteral<true>;
28
70
  safeModeForcedDryRun: z.ZodOptional<z.ZodBoolean>;
29
- preview: z.ZodObject<{
71
+ preview: z.ZodOptional<z.ZodObject<{
30
72
  groups: z.ZodArray<z.ZodObject<{
31
73
  severity: z.ZodString;
32
74
  checks: z.ZodArray<z.ZodObject<{
@@ -36,7 +78,9 @@ export declare const serverFixOutputSchema: z.ZodObject<{
36
78
  severity: z.ZodString;
37
79
  }, z.core.$strip>>;
38
80
  }, z.core.$strip>>;
39
- }, z.core.$strip>;
81
+ }, z.core.$strip>>;
82
+ applied: z.ZodOptional<z.ZodArray<z.ZodString>>;
83
+ message: z.ZodOptional<z.ZodString>;
40
84
  rejectedChecks: z.ZodArray<z.ZodObject<{
41
85
  id: z.ZodString;
42
86
  reason: z.ZodString;
@@ -52,7 +96,7 @@ export declare const serverFixOutputSchema: z.ZodObject<{
52
96
  }, z.core.$strip>>;
53
97
  }, z.core.$strip>, z.ZodObject<{
54
98
  action: z.ZodLiteral<"apply">;
55
- dryRun: z.ZodBoolean;
99
+ dryRun: z.ZodLiteral<false>;
56
100
  applied: z.ZodArray<z.ZodString>;
57
101
  errors: z.ZodArray<z.ZodString>;
58
102
  rejectedChecks: z.ZodArray<z.ZodObject<{
@@ -70,7 +114,7 @@ export declare const serverFixOutputSchema: z.ZodObject<{
70
114
  scoreRegressed: z.ZodBoolean;
71
115
  message: z.ZodString;
72
116
  }, z.core.$strip>>;
73
- }, z.core.$strip>, z.ZodObject<{
117
+ }, z.core.$strip>], "dryRun">, z.ZodObject<{
74
118
  action: z.ZodLiteral<"history">;
75
119
  server: z.ZodObject<{
76
120
  name: z.ZodString;
@@ -96,13 +140,13 @@ export declare const serverFixOutputSchema: z.ZodObject<{
96
140
  rolledBack: z.ZodArray<z.ZodString>;
97
141
  errors: z.ZodArray<z.ZodString>;
98
142
  scoreAfter: z.ZodNullable<z.ZodNumber>;
99
- }, z.core.$strip>], "action">;
143
+ }, z.core.$strip>]>;
100
144
  }, z.core.$strip>;
101
145
  export type ServerFixOutput = z.infer<typeof serverFixOutputSchema>;
102
146
  export declare function handleServerFix(params: {
103
147
  server?: string;
104
148
  action?: "apply" | "rollback" | "history" | "rollback-all" | "rollback-to";
105
- dryRun?: boolean;
149
+ mode?: "dry-run" | "live";
106
150
  rollbackId?: string;
107
151
  checks?: string[];
108
152
  category?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"serverFix.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverFix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiCxB,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;CAyE3B,CAAC;AA+EF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAShC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AASpE,wBAAsB,eAAe,CACnC,MAAM,EAAE;IACN,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,aAAa,CAAC;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,EACD,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,WAAW,CAAC,CA+btB"}
1
+ {"version":3,"file":"serverFix.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverFix.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkCxB,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2CzE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAM/B,CAAC;AAGH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAAuB,CAAC;AAiFpD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AASpE,wBAAsB,eAAe,CACnC,MAAM,EAAE;IACN,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,aAAa,CAAC;IAC3E,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,EACD,SAAS,CAAC,EAAE,SAAS,GACpB,OAAO,CAAC,WAAW,CAAC,CAkctB"}
@@ -14,69 +14,54 @@ import { raw } from "../../utils/sshCommand.js";
14
14
  import { loadFixHistory, saveFixHistory, saveRollbackEntry, generateFixId, backupFilesBeforeFix, rollbackFix, backupRemoteCleanup, rollbackAllFixes, rollbackToFix, } from "../../core/audit/fix-history.js";
15
15
  import { resolveServerForMcp, mcpSuccess, mcpError, mcpLog, } from "../utils.js";
16
16
  import { getErrorMessage, sanitizeStderr } from "../../utils/errorMapper.js";
17
- import { saveBaselineSafe, loadBaseline, checkRegression, extractPassedCheckIds, shouldUpdateBaseline, hasRegression } from "../../core/audit/regression.js";
18
- import { getPluginBackupPaths, getAppliedPluginNames } from "../../core/audit/pluginFix.js";
19
- export const serverFixSchema = {
20
- server: z
21
- .string()
22
- .optional()
23
- .describe("Server name or IP. Auto-selected if only one server exists."),
24
- action: z
25
- .enum(["apply", "rollback", "history", "rollback-all", "rollback-to"])
26
- .default("apply")
27
- .describe("apply: run fixes (default), rollback: restore single fix, rollback-all: revert all applied fixes, rollback-to: revert down to specific fix-id, history: list fix operations"),
28
- dryRun: z
29
- .boolean()
30
- .default(true)
31
- .describe("Preview fixes without applying. Defaults to true. Forced to true when KASTELL_SAFE_MODE=true."),
32
- rollbackId: z
33
- .string()
34
- .optional()
35
- .describe("Fix ID to rollback (e.g. fix-2026-03-29-001) or 'last'"),
36
- checks: z
37
- .array(z.string())
38
- .optional()
39
- .describe("Specific check IDs to fix (e.g. ['KERN-SYNCOOKIES']). AND-filtered with category if both provided."),
40
- category: z
41
- .string()
42
- .optional()
43
- .describe("Category name to filter fixes (e.g. 'Kernel'). AND-filtered with checks if both provided."),
44
- top: z
45
- .number()
46
- .int()
47
- .positive()
48
- .optional()
49
- .describe("Apply top N highest-impact SAFE fixes. Requires action:'apply'. Mutually exclusive with target."),
50
- target: z
51
- .number()
52
- .int()
53
- .min(1)
54
- .max(100)
55
- .optional()
56
- .describe("Apply SAFE fixes until score reaches this value (1-100). Requires action:'apply'. Mutually exclusive with top."),
57
- profile: z
58
- .string()
59
- .optional()
60
- .describe("Server profile to filter applicable checks (built-in: web-server, database, mail-server; or custom profile name)"),
61
- diff: z
62
- .boolean()
63
- .optional()
64
- .default(false)
65
- .describe("Include per-fix diff preview in results"),
66
- report: z
67
- .boolean()
68
- .optional()
69
- .default(false)
70
- .describe("Generate markdown fix report file in current directory"),
71
- force: z
72
- .boolean()
73
- .optional()
74
- .default(false)
75
- .describe("Bypass regression gate and force baseline update"),
17
+ import { saveBaselineSafe, loadBaseline, checkRegression, extractPassedCheckIds, extractFailedCheckIds, shouldUpdateBaseline, hasRegression } from "../../core/audit/regression.js";
18
+ import { getPluginBackupPaths, getAppliedPluginNames, buildFixHistorySource } from "../../core/audit/pluginFix.js";
19
+ const baseFixFields = {
20
+ server: z.string().optional().describe("Server name or IP. Auto-selected if only one server exists."),
76
21
  };
22
+ const applyBranch = z.object({
23
+ action: z.literal("apply"),
24
+ mode: z.enum(["dry-run", "live"]).default("dry-run").describe("dry-run: preview only; live: apply changes. Forced to dry-run when KASTELL_SAFE_MODE=true."),
25
+ rollbackId: z.string().optional(),
26
+ checks: z.array(z.string()).optional().describe("Specific check IDs (e.g. ['KERN-SYNCOOKIES']). AND-filtered with category."),
27
+ category: z.string().optional(),
28
+ profile: z.string().optional(),
29
+ top: z.number().int().positive().optional(),
30
+ target: z.number().int().min(1).max(100).optional(),
31
+ diff: z.boolean().optional().default(false),
32
+ report: z.boolean().optional().default(false),
33
+ force: z.boolean().optional().default(false),
34
+ ...baseFixFields,
35
+ });
36
+ const rollbackBranch = z.object({
37
+ action: z.literal("rollback"),
38
+ rollbackId: z.string().describe("Fix ID to rollback (e.g. fix-2026-05-16-001) or 'last'"),
39
+ ...baseFixFields,
40
+ });
41
+ const rollbackAllBranch = z.object({
42
+ action: z.literal("rollback-all"),
43
+ ...baseFixFields,
44
+ });
45
+ const rollbackToBranch = z.object({
46
+ action: z.literal("rollback-to"),
47
+ rollbackId: z.string(),
48
+ ...baseFixFields,
49
+ });
50
+ const historyBranch = z.object({
51
+ action: z.literal("history"),
52
+ ...baseFixFields,
53
+ });
54
+ export const serverFixInputSchema = z.discriminatedUnion("action", [
55
+ applyBranch,
56
+ rollbackBranch,
57
+ rollbackAllBranch,
58
+ rollbackToBranch,
59
+ historyBranch,
60
+ ]);
61
+ // Legacy export name preserved for server.ts wiring
62
+ export const serverFixSchema = serverFixInputSchema;
77
63
  // ─── Output Schema ────────────────────────────────────────────────────────────
78
64
  const serverFixApplyDryRunOutputSchema = z.object({
79
- dryRun: z.boolean(),
80
65
  safeModeForcedDryRun: z.boolean().optional(),
81
66
  preview: z.object({
82
67
  groups: z.array(z.object({
@@ -88,7 +73,9 @@ const serverFixApplyDryRunOutputSchema = z.object({
88
73
  severity: z.string(),
89
74
  })),
90
75
  })),
91
- }),
76
+ }).optional(),
77
+ applied: z.array(z.string()).optional(),
78
+ message: z.string().optional(),
92
79
  rejectedChecks: z.array(z.object({ id: z.string(), reason: z.string() })),
93
80
  guardedCount: z.number(),
94
81
  forbiddenCount: z.number(),
@@ -101,7 +88,6 @@ const serverFixApplyDryRunOutputSchema = z.object({
101
88
  }).optional(),
102
89
  });
103
90
  const serverFixApplyLiveOutputSchema = z.object({
104
- dryRun: z.boolean(),
105
91
  applied: z.array(z.string()),
106
92
  errors: z.array(z.string()),
107
93
  rejectedChecks: z.array(z.object({ id: z.string(), reason: z.string() })),
@@ -124,7 +110,6 @@ const serverFixHistoryOutputSchema = z.object({
124
110
  totalEntries: z.number(),
125
111
  });
126
112
  const serverFixRollbackOutputSchema = z.object({
127
- action: z.literal("rollback"),
128
113
  fixId: z.string(),
129
114
  restored: z.array(z.string()),
130
115
  errors: z.array(z.string()),
@@ -132,26 +117,27 @@ const serverFixRollbackOutputSchema = z.object({
132
117
  scoreAfter: z.number().nullable(),
133
118
  });
134
119
  const serverFixRollbackAllOutputSchema = z.object({
135
- action: z.literal("rollback-all"),
136
120
  rolledBack: z.array(z.string()),
137
121
  errors: z.array(z.string()),
138
122
  scoreAfter: z.number().nullable(),
139
123
  });
140
124
  const serverFixRollbackToOutputSchema = z.object({
141
- action: z.literal("rollback-to"),
142
125
  targetFixId: z.string(),
143
126
  rolledBack: z.array(z.string()),
144
127
  errors: z.array(z.string()),
145
128
  scoreAfter: z.number().nullable(),
146
129
  });
130
+ const serverFixApplyOutputSchema = z.discriminatedUnion("dryRun", [
131
+ z.object({ action: z.literal("apply"), dryRun: z.literal(true) }).merge(serverFixApplyDryRunOutputSchema),
132
+ z.object({ action: z.literal("apply"), dryRun: z.literal(false) }).merge(serverFixApplyLiveOutputSchema),
133
+ ]);
147
134
  export const serverFixOutputSchema = z.object({
148
- result: z.discriminatedUnion("action", [
149
- z.object({ action: z.literal("apply"), dryRun: z.literal(true) }).merge(serverFixApplyDryRunOutputSchema),
150
- z.object({ action: z.literal("apply"), dryRun: z.literal(false) }).merge(serverFixApplyLiveOutputSchema),
151
- serverFixHistoryOutputSchema,
152
- serverFixRollbackOutputSchema,
153
- serverFixRollbackAllOutputSchema,
154
- serverFixRollbackToOutputSchema,
135
+ result: z.union([
136
+ serverFixApplyOutputSchema,
137
+ z.object({ action: z.literal("history") }).merge(serverFixHistoryOutputSchema),
138
+ z.object({ action: z.literal("rollback") }).merge(serverFixRollbackOutputSchema),
139
+ z.object({ action: z.literal("rollback-all") }).merge(serverFixRollbackAllOutputSchema),
140
+ z.object({ action: z.literal("rollback-to") }).merge(serverFixRollbackToOutputSchema),
155
141
  ]),
156
142
  });
157
143
  /** Severity ordering for display (critical first) */
@@ -271,9 +257,12 @@ export async function handleServerFix(params, mcpServer) {
271
257
  if (params.top !== undefined && params.target !== undefined) {
272
258
  return mcpError("top and target are mutually exclusive. Use one or the other.");
273
259
  }
274
- // ── SAFE_MODE + dryRun resolution ─────────────────────────────────────
275
- const effectiveDryRun = (params.dryRun ?? true) || isSafeMode();
276
- const safeModeForcedDryRun = params.dryRun === false && isSafeMode() ? true : undefined;
260
+ // ── SAFE_MODE + mode resolution ──────────────────────────────────────
261
+ // action defaults to "apply", mode defaults to "dry-run" (backward compat)
262
+ const action = params.action ?? "apply";
263
+ const effectiveMode = (action === "apply" && !params.mode) ? "dry-run" : (params.mode ?? "dry-run");
264
+ const effectiveDryRun = isSafeMode() ? true : (action === "apply" ? effectiveMode === "dry-run" : false);
265
+ const safeModeForcedDryRun = action === "apply" && effectiveMode === "live" && isSafeMode() ? true : undefined;
277
266
  // ── Run audit ─────────────────────────────────────────────────────────
278
267
  await mcpLog(mcpServer, `Running audit on ${server.name}...`);
279
268
  const result = await runAudit(server.ip, server.name, platform);
@@ -407,7 +396,7 @@ export async function handleServerFix(params, mcpServer) {
407
396
  const fixId = generateFixId(server.ip);
408
397
  const fixCommands = fixCommandsFromChecks(selectedChecks);
409
398
  await mcpLog(mcpServer, "Creating remote file backup...");
410
- const failedCheckIds = auditResult.categories.flatMap((c) => c.checks.filter((ch) => !ch.passed).map((ch) => ch.id));
399
+ const failedCheckIds = extractFailedCheckIds(auditResult);
411
400
  const pluginBackupPaths = getPluginBackupPaths(failedCheckIds);
412
401
  const remoteBackupPath = await backupFilesBeforeFix(server.ip, fixId, fixCommands, pluginBackupPaths);
413
402
  // ── LIVE FIX — execute ────────────────────────────────────────────────
@@ -466,6 +455,7 @@ export async function handleServerFix(params, mcpServer) {
466
455
  }
467
456
  // ── LIVE FIX — save history entry (FIXPRO-02) ────────────────────────
468
457
  const appliedPluginNames = getAppliedPluginNames([...applied]);
458
+ const fixHistorySource = buildFixHistorySource(appliedPluginNames);
469
459
  await saveFixHistory({
470
460
  fixId,
471
461
  serverIp: server.ip,
@@ -476,8 +466,7 @@ export async function handleServerFix(params, mcpServer) {
476
466
  scoreAfter,
477
467
  status: applied.length > 0 ? "applied" : "failed",
478
468
  backupPath: remoteBackupPath,
479
- source: appliedPluginNames.length > 0 ? "plugin" : "fix",
480
- pluginName: appliedPluginNames.length > 0 ? appliedPluginNames.join(",") : undefined,
469
+ ...fixHistorySource,
481
470
  });
482
471
  // Only save when fixes were applied — a no-op fix run should not overwrite the baseline
483
472
  if (applied.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"serverFix.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverFix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverFix.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverFix.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serverGuard.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAKrB,eAAO,MAAM,iBAAiB;;;;;;;CAG7B,CAAC;AAKF,eAAO,MAAM,uBAAuB;;;;;;;;;;iBAUlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;CACrC,GAAG,OAAO,CAAC,WAAW,CAAC,CA8EvB"}
1
+ {"version":3,"file":"serverGuard.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/serverGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,aAAa,CAAC;AAKrB,eAAO,MAAM,iBAAiB;;;;;;;CAG7B,CAAC;AAKF,eAAO,MAAM,uBAAuB;;;;;;;;;;iBAUlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAIxE,wBAAsB,iBAAiB,CAAC,MAAM,EAAE;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;CACrC,GAAG,OAAO,CAAC,WAAW,CAAC,CAiFvB"}
@@ -72,10 +72,13 @@ export async function handleServerGuard(params) {
72
72
  }
73
73
  return mcpSuccess({
74
74
  action: "status",
75
+ success: true,
75
76
  isActive: result.isActive,
76
77
  lastRunAt: result.lastRunAt,
77
78
  breaches: result.breaches,
78
- logTail: result.logTail,
79
+ logTail: typeof result.logTail === "string"
80
+ ? result.logTail.trimEnd().split("\n").filter((l) => l.length > 0)
81
+ : result.logTail ?? [],
79
82
  installedAt: result.installedAt,
80
83
  });
81
84
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serverGuard.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverGuard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverGuard.js","sourceRoot":"","sources":["../../../src/mcp/tools/serverGuard.ts"],"names":[],"mappings":"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"}