@nifrajs/cli 3.2.0 → 3.5.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 (119) hide show
  1. package/dist/check-diagnostics.d.ts +3 -15
  2. package/dist/check-diagnostics.d.ts.map +1 -1
  3. package/dist/check-diagnostics.js +149 -713
  4. package/dist/check-diagnostics.js.map +1 -1
  5. package/dist/check-scan.d.ts +9 -0
  6. package/dist/check-scan.d.ts.map +1 -1
  7. package/dist/check-scan.js +32 -0
  8. package/dist/check-scan.js.map +1 -1
  9. package/dist/check.d.ts +1 -0
  10. package/dist/check.d.ts.map +1 -1
  11. package/dist/check.js +63 -8
  12. package/dist/check.js.map +1 -1
  13. package/dist/cli.d.ts.map +1 -1
  14. package/dist/cli.js +46 -7
  15. package/dist/cli.js.map +1 -1
  16. package/dist/command-catalog.d.ts +4 -1
  17. package/dist/command-catalog.d.ts.map +1 -1
  18. package/dist/command-catalog.js +28 -7
  19. package/dist/command-catalog.js.map +1 -1
  20. package/dist/contracts.d.ts +3 -2
  21. package/dist/contracts.d.ts.map +1 -1
  22. package/dist/contracts.js +4 -3
  23. package/dist/contracts.js.map +1 -1
  24. package/dist/diagnostics.d.ts +86 -0
  25. package/dist/diagnostics.d.ts.map +1 -1
  26. package/dist/diagnostics.js +85 -0
  27. package/dist/diagnostics.js.map +1 -1
  28. package/dist/introspect.d.ts +1 -3
  29. package/dist/introspect.d.ts.map +1 -1
  30. package/dist/introspect.js +1 -47
  31. package/dist/introspect.js.map +1 -1
  32. package/dist/load.d.ts +5 -0
  33. package/dist/load.d.ts.map +1 -1
  34. package/dist/load.js.map +1 -1
  35. package/dist/mcp-context.d.ts.map +1 -1
  36. package/dist/mcp-context.js +4 -5
  37. package/dist/mcp-context.js.map +1 -1
  38. package/dist/mcp-exec.d.ts +1 -0
  39. package/dist/mcp-exec.d.ts.map +1 -1
  40. package/dist/mcp-exec.js +133 -25
  41. package/dist/mcp-exec.js.map +1 -1
  42. package/dist/mcp-http.d.ts.map +1 -1
  43. package/dist/mcp-http.js +4 -1
  44. package/dist/mcp-http.js.map +1 -1
  45. package/dist/mcp-io.d.ts +12 -0
  46. package/dist/mcp-io.d.ts.map +1 -1
  47. package/dist/mcp-io.js +68 -0
  48. package/dist/mcp-io.js.map +1 -1
  49. package/dist/mcp-path.d.ts +10 -0
  50. package/dist/mcp-path.d.ts.map +1 -0
  51. package/dist/mcp-path.js +51 -0
  52. package/dist/mcp-path.js.map +1 -0
  53. package/dist/mcp-reflect.d.ts.map +1 -1
  54. package/dist/mcp-reflect.js +2 -2
  55. package/dist/mcp-reflect.js.map +1 -1
  56. package/dist/mcp-render.d.ts.map +1 -1
  57. package/dist/mcp-render.js +62 -43
  58. package/dist/mcp-render.js.map +1 -1
  59. package/dist/mcp-root.d.ts.map +1 -1
  60. package/dist/mcp-root.js +14 -2
  61. package/dist/mcp-root.js.map +1 -1
  62. package/dist/mcp-run.d.ts.map +1 -1
  63. package/dist/mcp-run.js +82 -51
  64. package/dist/mcp-run.js.map +1 -1
  65. package/dist/mcp.d.ts +2 -2
  66. package/dist/mcp.d.ts.map +1 -1
  67. package/dist/mcp.js +84 -29
  68. package/dist/mcp.js.map +1 -1
  69. package/dist/project-facts.d.ts +23 -4
  70. package/dist/project-facts.d.ts.map +1 -1
  71. package/dist/project-facts.js +12 -2
  72. package/dist/project-facts.js.map +1 -1
  73. package/dist/review.d.ts +21 -0
  74. package/dist/review.d.ts.map +1 -0
  75. package/dist/review.js +819 -0
  76. package/dist/review.js.map +1 -0
  77. package/dist/rules/legacy.d.ts +3 -1
  78. package/dist/rules/legacy.d.ts.map +1 -1
  79. package/dist/rules/legacy.js +796 -34
  80. package/dist/rules/legacy.js.map +1 -1
  81. package/dist/scaffold.d.ts.map +1 -1
  82. package/dist/scaffold.js +23 -4
  83. package/dist/scaffold.js.map +1 -1
  84. package/dist/verification-plan.d.ts.map +1 -1
  85. package/dist/verification-plan.js +4 -0
  86. package/dist/verification-plan.js.map +1 -1
  87. package/dist/work-graph.d.ts +3 -0
  88. package/dist/work-graph.d.ts.map +1 -1
  89. package/dist/work-graph.js +4 -3
  90. package/dist/work-graph.js.map +1 -1
  91. package/docs/examples.json +10 -4
  92. package/docs/llms-full.txt +500 -46
  93. package/docs/types.json +1123 -82
  94. package/package.json +10 -9
  95. package/src/check-diagnostics.ts +181 -796
  96. package/src/check-scan.ts +36 -0
  97. package/src/check.ts +65 -12
  98. package/src/cli.ts +53 -7
  99. package/src/command-catalog.ts +33 -7
  100. package/src/contracts.ts +12 -3
  101. package/src/diagnostics.ts +179 -0
  102. package/src/introspect.ts +3 -55
  103. package/src/load.ts +5 -0
  104. package/src/mcp-context.ts +4 -6
  105. package/src/mcp-exec.ts +142 -30
  106. package/src/mcp-http.ts +4 -1
  107. package/src/mcp-io.ts +73 -0
  108. package/src/mcp-path.ts +50 -0
  109. package/src/mcp-reflect.ts +3 -2
  110. package/src/mcp-render.ts +70 -40
  111. package/src/mcp-root.ts +13 -2
  112. package/src/mcp-run.ts +90 -50
  113. package/src/mcp.ts +87 -27
  114. package/src/project-facts.ts +37 -8
  115. package/src/review.ts +983 -0
  116. package/src/rules/legacy.ts +915 -35
  117. package/src/scaffold.ts +29 -4
  118. package/src/verification-plan.ts +14 -0
  119. package/src/work-graph.ts +13 -3
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-render.js","sourceRoot":"","sources":["../src/mcp-render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-render.js","sourceRoot":"","sources":["../src/mcp-render.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-root.d.ts","sourceRoot":"","sources":["../src/mcp-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH;yGACyG;AACzG,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,aAAa,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B;uFACmF;IACnF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CAC/C;AAED;;sDAEsD;AACtD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBrE;AAED,sFAAsF;AACtF,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQzE;AAED;wEACwE;AACxE,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,CAmBvB;AAED;qEACqE;AACrE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CAwB9D;AAUD;;0EAE0E;AAC1E,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAKzD;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,OAAO,CAAC,YAAY,CAAC,CAavB;AAED;oBACoB;AACpB,wBAAsB,eAAe,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIjF;AAMD;oGACoG;AACpG,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAiC9E;AAED,0FAA0F;AAC1F,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,MAAM,CAKlF;AAED,gGAAgG;AAChG,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,gGAAgG;IAChG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;wGACwG;AACxG,eAAO,MAAM,SAAS,GAAI,OAAO,YAAY,KAAG,MAGyF,CAAA;AA0BzI;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CASnC;AAKD;;;GAGG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,mBAAmB,EAAE,OAAO,EAAE,EAC5C,OAAO,EAAE,cAAc,GACtB,OAAO,mBAAmB,EAAE,OAAO,EAAE,CAwBvC;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,CAKxF"}
1
+ {"version":3,"file":"mcp-root.d.ts","sourceRoot":"","sources":["../src/mcp-root.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH;yGACyG;AACzG,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,aAAa,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,gEAAgE;IAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAA;IAC9B,iFAAiF;IACjF,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAA;IAC3B;uFACmF;IACnF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAA;CAC/C;AAMD;;sDAEsD;AACtD,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAgBrE;AAED,sFAAsF;AACtF,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAQzE;AAED;wEACwE;AACxE,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,GAChB,OAAO,CAAC,YAAY,CAAC,CAmBvB;AAED;qEACqE;AACrE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,EAAE,CA+B9D;AAUD;;0EAE0E;AAC1E,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAKzD;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,SAAS,MAAM,EAAE,GACvB,OAAO,CAAC,YAAY,CAAC,CAavB;AAED;oBACoB;AACpB,wBAAsB,eAAe,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIjF;AAMD;oGACoG;AACpG,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAiC9E;AAED,0FAA0F;AAC1F,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,EAAE,YAAY,GAAG,MAAM,CAKlF;AAED,gGAAgG;AAChG,MAAM,WAAW,YAAY;IAC3B,iCAAiC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,gGAAgG;IAChG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CACzB;AAED;wGACwG;AACxG,eAAO,MAAM,SAAS,GAAI,OAAO,YAAY,KAAG,MAGyF,CAAA;AA0BzI;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CASnC;AAKD;;;GAGG;AACH,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,mBAAmB,EAAE,OAAO,EAAE,EAC5C,OAAO,EAAE,cAAc,GACtB,OAAO,mBAAmB,EAAE,OAAO,EAAE,CAwBvC;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAAG,OAAO,CAKxF"}
package/dist/mcp-root.js CHANGED
@@ -16,6 +16,9 @@
16
16
  import { readFile } from "node:fs/promises";
17
17
  import { dirname, isAbsolute, relative, resolve, sep } from "node:path";
18
18
  import { fileURLToPath } from "node:url";
19
+ const MAX_CLIENT_ROOTS = 64;
20
+ const MAX_ROOT_URI_LENGTH = 16_384;
21
+ const MAX_ROOT_PATH_LENGTH = 4_096;
19
22
  /** A directory is a nifra project when its `package.json` depends on any `@nifrajs/*` package, or it
20
23
  * is a `nifra.config.ts` monorepo root. Backend-only projects (no web config, no `routes/`) count -
21
24
  * the marker is the dependency, not the app shape. */
@@ -81,9 +84,12 @@ export function pathsFromRootsResult(result) {
81
84
  if (!Array.isArray(roots))
82
85
  return [];
83
86
  const paths = [];
87
+ const seen = new Set();
84
88
  for (const entry of roots) {
89
+ if (paths.length >= MAX_CLIENT_ROOTS)
90
+ break;
85
91
  const uri = entry?.uri;
86
- if (typeof uri !== "string" || !uri.startsWith("file://"))
92
+ if (typeof uri !== "string" || uri.length > MAX_ROOT_URI_LENGTH || !uri.startsWith("file://"))
87
93
  continue;
88
94
  try {
89
95
  const parsed = new URL(uri);
@@ -93,7 +99,13 @@ export function pathsFromRootsResult(result) {
93
99
  if (parsed.protocol !== "file:" ||
94
100
  (parsed.hostname !== "" && parsed.hostname !== "localhost"))
95
101
  continue;
96
- paths.push(fileURLToPath(parsed));
102
+ const path = fileURLToPath(parsed);
103
+ if (path.length === 0 || path.length > MAX_ROOT_PATH_LENGTH || path.includes("\0"))
104
+ continue;
105
+ if (seen.has(path))
106
+ continue;
107
+ seen.add(path);
108
+ paths.push(path);
97
109
  }
98
110
  catch {
99
111
  // Malformed URI - skip.
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-root.js","sourceRoot":"","sources":["../src/mcp-root.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-root.js","sourceRoot":"","sources":["../src/mcp-root.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-run.d.ts","sourceRoot":"","sources":["../src/mcp-run.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,iBAAiB,CAAA;AAOtD,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAyC/C;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,OAAO,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAWnD"}
1
+ {"version":3,"file":"mcp-run.d.ts","sourceRoot":"","sources":["../src/mcp-run.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,KAAK,OAAO,EAAU,MAAM,iBAAiB,CAAA;AActD,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,GAAG,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAyC/C;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,OAAO,EACjB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAWnD"}
package/dist/mcp-run.js CHANGED
@@ -16,6 +16,7 @@ import { existsSync, realpathSync } from "node:fs";
16
16
  import { isAbsolute, relative, resolve, sep } from "node:path";
17
17
  import { pathToFileURL } from "node:url";
18
18
  import { runApp } from "@nifrajs/runner";
19
+ import { CHILD_INPUT_MAX_BYTES, CHILD_OUTPUT_MAX_BYTES, readBoundedLines, readBoundedStream, serializeBoundedJson, } from "./mcp-io.js";
19
20
  const ENTRY_CANDIDATES = ["backend.ts", "app.ts", "src/backend.ts", "src/app.ts"];
20
21
  const errString = (err) => err instanceof Error ? `${err.name}: ${err.message}` : String(err);
21
22
  export async function loadBackend(cwd, entry) {
@@ -88,56 +89,79 @@ function redirectConsoleToStderr() {
88
89
  console.warn = (...args) => write("warn", args);
89
90
  console.error = (...args) => write("error", args);
90
91
  }
92
+ function safeResponseId(value) {
93
+ if (typeof value === "number" && Number.isSafeInteger(value))
94
+ return value;
95
+ if (typeof value === "string" && value.length <= 128)
96
+ return value;
97
+ return null;
98
+ }
91
99
  async function runWorker(cwd) {
92
100
  redirectConsoleToStderr();
93
101
  const apps = new Map();
94
- const decoder = new TextDecoder();
95
- let buffer = "";
96
102
  const send = (id, output) => {
97
- process.stdout.write(`${JSON.stringify({ id, output })}\n`);
103
+ const responseId = safeResponseId(id);
104
+ const encoded = serializeBoundedJson({ id: responseId, output }, CHILD_OUTPUT_MAX_BYTES - 1);
105
+ process.stdout.write(`${encoded ?? JSON.stringify({ id: responseId, output: { error: "worker output exceeded the size limit" } })}\n`);
98
106
  };
99
- for await (const chunk of Bun.stdin.stream()) {
100
- buffer += decoder.decode(chunk, { stream: true });
101
- let nl = buffer.indexOf("\n");
102
- while (nl !== -1) {
103
- const line = buffer.slice(0, nl).trim();
104
- buffer = buffer.slice(nl + 1);
105
- nl = buffer.indexOf("\n");
106
- if (line === "")
107
- continue;
108
- let message;
109
- try {
110
- message = JSON.parse(line);
111
- }
112
- catch {
113
- send(null, { error: "invalid worker input: expected JSON line" });
114
- continue;
115
- }
116
- const requests = message.input?.requests;
117
- const entry = message.input?.entry;
118
- if (!Array.isArray(requests)) {
119
- send(message.id, { error: "expected { requests: [...] }" });
120
- continue;
121
- }
122
- const key = entry ?? "";
123
- let loaded = apps.get(key);
124
- if (loaded === undefined) {
125
- loaded = loadBackend(cwd, entry);
126
- apps.set(key, loaded);
127
- }
128
- const app = await loaded;
129
- if ("error" in app) {
130
- send(message.id, app);
131
- continue;
132
- }
133
- try {
134
- send(message.id, {
135
- results: await runApp(app.app, requests),
136
- });
137
- }
138
- catch (err) {
139
- send(message.id, { error: errString(err) });
140
- }
107
+ for await (const item of readBoundedLines(Bun.stdin.stream(), CHILD_INPUT_MAX_BYTES)) {
108
+ if (item.kind === "too-large") {
109
+ send(null, { error: `worker input exceeded ${CHILD_INPUT_MAX_BYTES} bytes` });
110
+ continue;
111
+ }
112
+ const line = item.text.trim();
113
+ if (line === "")
114
+ continue;
115
+ let message;
116
+ try {
117
+ message = JSON.parse(line);
118
+ }
119
+ catch {
120
+ send(null, { error: "invalid worker input: expected JSON line" });
121
+ continue;
122
+ }
123
+ const record = message !== null && typeof message === "object" && !Array.isArray(message)
124
+ ? message
125
+ : undefined;
126
+ const input = record?.input !== null && typeof record?.input === "object" && !Array.isArray(record.input)
127
+ ? record.input
128
+ : undefined;
129
+ const id = record?.id;
130
+ const requests = input?.requests;
131
+ const entry = input?.entry;
132
+ if (!Array.isArray(requests)) {
133
+ send(id, { error: "expected { requests: [...] }" });
134
+ continue;
135
+ }
136
+ if (entry !== undefined && typeof entry !== "string") {
137
+ send(id, { error: "entry must be a string" });
138
+ continue;
139
+ }
140
+ const key = entry ?? "";
141
+ let loaded = apps.get(key);
142
+ if (loaded === undefined) {
143
+ loaded = loadBackend(cwd, entry);
144
+ apps.set(key, loaded);
145
+ }
146
+ let app;
147
+ try {
148
+ app = await loaded;
149
+ }
150
+ catch (err) {
151
+ send(id, { error: errString(err) });
152
+ continue;
153
+ }
154
+ if ("error" in app) {
155
+ send(id, app);
156
+ continue;
157
+ }
158
+ try {
159
+ send(id, {
160
+ results: await runApp(app.app, requests),
161
+ });
162
+ }
163
+ catch (err) {
164
+ send(id, { error: errString(err) });
141
165
  }
142
166
  }
143
167
  }
@@ -150,13 +174,20 @@ if (import.meta.main) {
150
174
  process.exit(0);
151
175
  }
152
176
  let output;
153
- try {
154
- const { requests, entry } = JSON.parse(await Bun.stdin.text());
155
- output = await runBackend(cwd, requests, entry);
177
+ const input = await readBoundedStream(Bun.stdin.stream(), CHILD_INPUT_MAX_BYTES);
178
+ if (input.truncated) {
179
+ output = { error: `input exceeded ${CHILD_INPUT_MAX_BYTES} bytes` };
156
180
  }
157
- catch {
158
- output = { error: "invalid input: expected JSON { requests: [...] }" };
181
+ else {
182
+ try {
183
+ const { requests, entry } = JSON.parse(input.text);
184
+ output = await runBackend(cwd, requests, entry);
185
+ }
186
+ catch {
187
+ output = { error: "invalid input: expected JSON { requests: [...] }" };
188
+ }
159
189
  }
160
- process.stdout.write(JSON.stringify(output, null, 2));
190
+ process.stdout.write(serializeBoundedJson(output, CHILD_OUTPUT_MAX_BYTES, 2) ??
191
+ JSON.stringify({ error: `output exceeded ${CHILD_OUTPUT_MAX_BYTES} bytes` }));
161
192
  }
162
193
  //# sourceMappingURL=mcp-run.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-run.js","sourceRoot":"","sources":["../src/mcp-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-run.js","sourceRoot":"","sources":["../src/mcp-run.ts"],"names":[],"mappings":"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"}
package/dist/mcp.d.ts CHANGED
@@ -35,8 +35,8 @@
35
35
  * module is the I/O shell (stdin loop, tool wiring, the run subprocess).
36
36
  */
37
37
  export { extractBackendPrompts, extractBackendResources, extractBackendTools, } from "./mcp-reflect.js";
38
- export type { BoundedOutput } from "./mcp-io.js";
39
- export { CHILD_OUTPUT_MAX_BYTES, CHILD_TIMEOUT_MS, LOCAL_TOOL_FETCH_TIMEOUT_MS, LOCAL_TOOL_MAX_RESPONSE_BYTES, notNifraResponse, readBoundedResponse, readBoundedStream, timeoutMessage, validateLocalPort, } from "./mcp-io.js";
38
+ export type { BoundedLine, BoundedOutput } from "./mcp-io.js";
39
+ export { CHILD_INPUT_MAX_BYTES, CHILD_OUTPUT_MAX_BYTES, CHILD_TIMEOUT_MS, LOCAL_TOOL_FETCH_TIMEOUT_MS, LOCAL_TOOL_MAX_RESPONSE_BYTES, notNifraResponse, readBoundedLines, readBoundedResponse, readBoundedStream, serializeBoundedJson, timeoutMessage, validateLocalPort, } from "./mcp-io.js";
40
40
  export { clientSupportsRoots, guardTools } from "./mcp-root.js";
41
41
  export type { CachedAppLoaderOptions } from "./mcp-exec.js";
42
42
  export { catalogProjectTools, createCachedAppLoader, createWarmHandler, projectTools, renderHandler, runHandler, spawnChild, toMcpTool, WarmWorker, wsHandler, } from "./mcp-exec.js";
package/dist/mcp.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AA4BH,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,kBAAkB,CAAA;AAezB,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,6BAA6B,EAC7B,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,GAClB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,eAAe,CAAA;AAItB,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EACL,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AA0EzB;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAsHf"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AA8BH,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,kBAAkB,CAAA;AAezB,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,2BAA2B,EAC3B,6BAA6B,EAC7B,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,iBAAiB,GAClB,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAI/D,YAAY,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAC3D,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,YAAY,EACZ,aAAa,EACb,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,GACV,MAAM,eAAe,CAAA;AAItB,YAAY,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EACL,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,kBAAkB,CAAA;AA4EzB;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAqKf"}
package/dist/mcp.js CHANGED
@@ -40,12 +40,12 @@ import { loadDocsCorpus } from "./docs-search.js";
40
40
  import { loadExamplesCorpus } from "./examples.js";
41
41
  import { detectMonorepo, loadMonorepoApps } from "./load.js";
42
42
  import { docsTools } from "./mcp-docs-tools.js";
43
- import { createMcpProtocolState, handleRpc, rpcError, } from "./mcp-protocol.js";
43
+ import { createMcpProtocolState, handleRpc, isJsonRpcRequest, isJsonRpcResponse, rpcError, } from "./mcp-protocol.js";
44
44
  import { extractBackendPrompts, extractBackendResources, extractBackendTools, } from "./mcp-reflect.js";
45
45
  import { loadTypesCorpus } from "./types-search.js";
46
46
  export { extractBackendPrompts, extractBackendResources, extractBackendTools, } from "./mcp-reflect.js";
47
47
  import { applyClientRoots, clientSupportsRoots, detectToolingDrift, driftNote, guardTools, pathsFromRootsResult, resolveRootState, rootInstructions, rootVerdict, } from "./mcp-root.js";
48
- export { CHILD_OUTPUT_MAX_BYTES, CHILD_TIMEOUT_MS, LOCAL_TOOL_FETCH_TIMEOUT_MS, LOCAL_TOOL_MAX_RESPONSE_BYTES, notNifraResponse, readBoundedResponse, readBoundedStream, timeoutMessage, validateLocalPort, } from "./mcp-io.js";
48
+ export { CHILD_INPUT_MAX_BYTES, CHILD_OUTPUT_MAX_BYTES, CHILD_TIMEOUT_MS, LOCAL_TOOL_FETCH_TIMEOUT_MS, LOCAL_TOOL_MAX_RESPONSE_BYTES, notNifraResponse, readBoundedLines, readBoundedResponse, readBoundedStream, serializeBoundedJson, timeoutMessage, validateLocalPort, } from "./mcp-io.js";
49
49
  export { clientSupportsRoots, guardTools } from "./mcp-root.js";
50
50
  import { createCachedAppLoader, projectTools } from "./mcp-exec.js";
51
51
  export { catalogProjectTools, createCachedAppLoader, createWarmHandler, projectTools, renderHandler, runHandler, spawnChild, toMcpTool, WarmWorker, wsHandler, } from "./mcp-exec.js";
@@ -81,6 +81,8 @@ async function appDeclaredTools(loader) {
81
81
  }
82
82
  }
83
83
  const ROOTS_REQUEST_ID = "nifra:roots/list";
84
+ const MAX_STDIO_MESSAGE_BYTES = 8 * 1024 * 1024;
85
+ const STDIO_ENCODER = new TextEncoder();
84
86
  async function createProjectContext(root) {
85
87
  const monorepo = await detectMonorepo(root);
86
88
  if (monorepo) {
@@ -123,16 +125,27 @@ export async function runMcpServer(cwd, version, explicitDir) {
123
125
  const serverInfo = { name: "nifra", version };
124
126
  const state = createMcpProtocolState();
125
127
  const send = (message) => {
126
- process.stdout.write(`${JSON.stringify(message)}\n`);
128
+ let encoded;
129
+ try {
130
+ encoded = JSON.stringify(message);
131
+ }
132
+ catch {
133
+ encoded = JSON.stringify(rpcError(responseIdOf(message), -32603, "MCP response is not serializable"));
134
+ }
135
+ if (STDIO_ENCODER.encode(encoded).byteLength > MAX_STDIO_MESSAGE_BYTES)
136
+ encoded = JSON.stringify(rpcError(responseIdOf(message), -32603, "MCP response exceeded the size limit"));
137
+ process.stdout.write(`${encoded}\n`);
127
138
  };
128
139
  let rootsSupported = false;
140
+ let rootsRequestPending = false;
129
141
  const requestRoots = () => {
130
- if (!rootsSupported)
142
+ if (!rootsSupported || rootsRequestPending)
131
143
  return;
144
+ rootsRequestPending = true;
132
145
  process.stdout.write(`${JSON.stringify({ jsonrpc: "2.0", id: ROOTS_REQUEST_ID, method: "roots/list" })}\n`);
133
146
  };
134
147
  const onRootsAnswer = async (message) => {
135
- const result = message.result;
148
+ const result = "result" in message ? message.result : undefined;
136
149
  // An error response (or a malformed one) carries no roots: keep the current state - the absence
137
150
  // of workspace data is not a mismatch, and never a reason to move the root.
138
151
  if (result === undefined)
@@ -147,15 +160,15 @@ export async function runMcpServer(cwd, version, explicitDir) {
147
160
  // Root updates are serialized against tool dispatch: a message read AFTER the client's roots answer
148
161
  // must see the adopted root, even though dispatches themselves run concurrently.
149
162
  let rootsUpdate = Promise.resolve();
150
- const dispatch = async (message) => {
151
- // The client's answer to OUR `roots/list` request - a response (id, no method), which the pure
152
- // dispatch would reject as an unknown method. Intercept it before handleRpc ever sees it.
153
- if (message.method === undefined && message.id === ROOTS_REQUEST_ID) {
154
- // Swallow failures: a bad answer must not poison the chain and 500 every later dispatch.
155
- rootsUpdate = onRootsAnswer(message).catch(() => { });
156
- await rootsUpdate;
163
+ const dispatchRootsAnswer = (message) => {
164
+ // The roots answer is a response to a request initiated by this server, not a client RPC request.
165
+ // Serialize adoption with normal dispatch so a following request cannot observe a half-updated root.
166
+ if (!rootsRequestPending)
157
167
  return;
158
- }
168
+ rootsRequestPending = false;
169
+ rootsUpdate = onRootsAnswer(message).catch(() => { });
170
+ };
171
+ const dispatch = async (message) => {
159
172
  await rootsUpdate;
160
173
  if (message.method === "initialize") {
161
174
  rootsSupported = clientSupportsRoots(message.params);
@@ -201,28 +214,70 @@ export async function runMcpServer(cwd, version, explicitDir) {
201
214
  };
202
215
  const decoder = new TextDecoder();
203
216
  let buffer = "";
217
+ let bufferBytes = 0;
218
+ let discardingOversized = false;
219
+ const processLine = (rawLine) => {
220
+ const line = rawLine.trim();
221
+ if (line === "")
222
+ return;
223
+ if (STDIO_ENCODER.encode(rawLine).byteLength > MAX_STDIO_MESSAGE_BYTES) {
224
+ send(rpcError(null, -32600, "MCP message exceeded the size limit"));
225
+ return;
226
+ }
227
+ let parsed;
228
+ try {
229
+ parsed = JSON.parse(line);
230
+ }
231
+ catch {
232
+ send(rpcError(null, -32700, "parse error"));
233
+ return;
234
+ }
235
+ if (isJsonRpcRequest(parsed)) {
236
+ void dispatch(parsed).catch((err) => {
237
+ const msg = err instanceof Error ? err.message : String(err);
238
+ send(rpcError(parsed.id ?? null, -32603, msg));
239
+ });
240
+ }
241
+ else if (isJsonRpcResponse(parsed) && parsed.id === ROOTS_REQUEST_ID) {
242
+ dispatchRootsAnswer(parsed);
243
+ }
244
+ else {
245
+ // Do not let null, arrays, scalars, responses for unknown ids, or malformed envelopes reach the
246
+ // dispatch shell. In particular, reading `.id` from a hostile `null` must never crash the loop.
247
+ send(rpcError(null, -32600, "Invalid Request"));
248
+ }
249
+ };
204
250
  for await (const chunk of Bun.stdin.stream()) {
205
- buffer += decoder.decode(chunk, { stream: true });
251
+ let text = decoder.decode(chunk, { stream: true });
252
+ if (discardingOversized) {
253
+ const newline = text.indexOf("\n");
254
+ if (newline === -1)
255
+ continue;
256
+ text = text.slice(newline + 1);
257
+ discardingOversized = false;
258
+ }
259
+ buffer += text;
260
+ bufferBytes += STDIO_ENCODER.encode(text).byteLength;
206
261
  let nl = buffer.indexOf("\n");
207
262
  while (nl !== -1) {
208
- const line = buffer.slice(0, nl).trim();
263
+ const line = buffer.slice(0, nl);
209
264
  buffer = buffer.slice(nl + 1);
265
+ bufferBytes = Math.max(0, bufferBytes - STDIO_ENCODER.encode(line).byteLength - 1);
210
266
  nl = buffer.indexOf("\n");
211
- if (line === "")
212
- continue;
213
- let message;
214
- try {
215
- message = JSON.parse(line);
216
- }
217
- catch {
218
- send(rpcError(null, -32700, "parse error"));
219
- continue;
220
- }
221
- void dispatch(message).catch((err) => {
222
- const msg = err instanceof Error ? err.message : String(err);
223
- send(rpcError(message.id ?? null, -32603, msg));
224
- });
267
+ processLine(line);
268
+ }
269
+ if (bufferBytes > MAX_STDIO_MESSAGE_BYTES) {
270
+ buffer = "";
271
+ bufferBytes = 0;
272
+ discardingOversized = true;
273
+ send(rpcError(null, -32600, "MCP message exceeded the size limit"));
225
274
  }
226
275
  }
227
276
  }
277
+ function responseIdOf(message) {
278
+ if (!("id" in message))
279
+ return null;
280
+ const id = message.id;
281
+ return id === null || typeof id === "string" || typeof id === "number" ? id : null;
282
+ }
228
283
  //# sourceMappingURL=mcp.js.map
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}