@harborclient/core 0.1.1 → 0.1.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 (67) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/ai/requestUpdate.d.ts +39 -6
  3. package/dist/ai/requestUpdate.d.ts.map +1 -1
  4. package/dist/ai/requestUpdate.js +30 -4
  5. package/dist/ai/requestUpdate.js.map +1 -1
  6. package/dist/ai/scriptReferences.d.ts +96 -0
  7. package/dist/ai/scriptReferences.d.ts.map +1 -1
  8. package/dist/ai/scriptReferences.js +95 -10
  9. package/dist/ai/scriptReferences.js.map +1 -1
  10. package/dist/ai/scriptingApiReference.d.ts +22 -0
  11. package/dist/ai/scriptingApiReference.d.ts.map +1 -0
  12. package/dist/ai/scriptingApiReference.js +149 -0
  13. package/dist/ai/scriptingApiReference.js.map +1 -0
  14. package/dist/ai/tools/getScriptRunDiagnostics.d.ts +63 -0
  15. package/dist/ai/tools/getScriptRunDiagnostics.d.ts.map +1 -0
  16. package/dist/ai/tools/getScriptRunDiagnostics.js +43 -0
  17. package/dist/ai/tools/getScriptRunDiagnostics.js.map +1 -0
  18. package/dist/ai/tools/getScriptingApiReference.d.ts +20 -0
  19. package/dist/ai/tools/getScriptingApiReference.d.ts.map +1 -0
  20. package/dist/ai/tools/getScriptingApiReference.js +16 -0
  21. package/dist/ai/tools/getScriptingApiReference.js.map +1 -0
  22. package/dist/ai/tools/index.d.ts +68 -5
  23. package/dist/ai/tools/index.d.ts.map +1 -1
  24. package/dist/ai/tools/index.js +4 -0
  25. package/dist/ai/tools/index.js.map +1 -1
  26. package/dist/ai/tools/systemPrompt.d.ts +1 -1
  27. package/dist/ai/tools/systemPrompt.d.ts.map +1 -1
  28. package/dist/ai/tools/systemPrompt.js +7 -5
  29. package/dist/ai/tools/systemPrompt.js.map +1 -1
  30. package/dist/ai/tools/updateRequestScript.d.ts +32 -8
  31. package/dist/ai/tools/updateRequestScript.d.ts.map +1 -1
  32. package/dist/ai/tools/updateRequestScript.js +18 -6
  33. package/dist/ai/tools/updateRequestScript.js.map +1 -1
  34. package/dist/filestore/schemas.d.ts +32 -0
  35. package/dist/filestore/schemas.d.ts.map +1 -1
  36. package/dist/filestore/schemas.js +9 -0
  37. package/dist/filestore/schemas.js.map +1 -1
  38. package/dist/requestRunner/RequestRunner.d.ts.map +1 -1
  39. package/dist/requestRunner/RequestRunner.js +13 -7
  40. package/dist/requestRunner/RequestRunner.js.map +1 -1
  41. package/dist/requestRunner/types.d.ts +8 -0
  42. package/dist/requestRunner/types.d.ts.map +1 -1
  43. package/dist/scriptRefs.d.ts +10 -0
  44. package/dist/scriptRefs.d.ts.map +1 -1
  45. package/dist/scriptRefs.js +15 -0
  46. package/dist/scriptRefs.js.map +1 -1
  47. package/dist/scripting/scriptApi.d.ts +6 -0
  48. package/dist/scripting/scriptApi.d.ts.map +1 -1
  49. package/dist/scripting/scriptApi.js +33 -4
  50. package/dist/scripting/scriptApi.js.map +1 -1
  51. package/dist/scripting/scriptEvaluator.d.ts +32 -0
  52. package/dist/scripting/scriptEvaluator.d.ts.map +1 -1
  53. package/dist/scripting/scriptEvaluator.js +197 -24
  54. package/dist/scripting/scriptEvaluator.js.map +1 -1
  55. package/dist/scripting/scriptRunner.js +4 -1
  56. package/dist/scripting/scriptRunner.js.map +1 -1
  57. package/dist/scripting/scriptSnippetBundler.d.ts +18 -4
  58. package/dist/scripting/scriptSnippetBundler.d.ts.map +1 -1
  59. package/dist/scripting/scriptSnippetBundler.js +13 -6
  60. package/dist/scripting/scriptSnippetBundler.js.map +1 -1
  61. package/dist/scripting/scriptSourceMap.d.ts +111 -0
  62. package/dist/scripting/scriptSourceMap.d.ts.map +1 -0
  63. package/dist/scripting/scriptSourceMap.js +188 -0
  64. package/dist/scripting/scriptSourceMap.js.map +1 -0
  65. package/dist/types/script.d.ts +112 -0
  66. package/dist/types/script.d.ts.map +1 -1
  67. package/package.json +5 -4
@@ -99,13 +99,13 @@ export function createSnippetImportPlugin(entrySource, modules, conflicts) {
99
99
  *
100
100
  * The synthetic stdin entry side-effect-imports the user script so top-level
101
101
  * exports in the entry are internalized by the bundler while entry statements
102
- * still execute.
102
+ * still execute. An external sourcemap is returned alongside the code so runtime
103
+ * stacks can be remapped to entry or snippet sources.
103
104
  *
104
105
  * @param source - Raw user-authored script source for the running slot.
105
106
  * @param modules - Snippet sources keyed by import filename.
106
107
  * @param conflicts - Filenames that map to more than one snippet row.
107
- * @returns Bundled JavaScript with imports resolved and inlined, or an empty string
108
- * when the entry module only exports bindings with no top-level side effects.
108
+ * @returns Bundled code and optional sourcemap JSON.
109
109
  * @throws esbuild build errors when the script or imports are invalid.
110
110
  */
111
111
  export async function bundleUserScript(source, modules, conflicts) {
@@ -121,16 +121,23 @@ export async function bundleUserScript(source, modules, conflicts) {
121
121
  platform: 'neutral',
122
122
  target: SCRIPT_BUNDLE_TARGET,
123
123
  write: false,
124
+ outfile: 'bundle.js',
125
+ sourcemap: 'external',
124
126
  logLevel: 'silent',
125
127
  treeShaking: true,
126
128
  plugins: [createSnippetImportPlugin(source, modules, conflicts)]
127
129
  });
128
- const output = result.outputFiles[0]?.text ?? '';
130
+ const jsFile = result.outputFiles.find((file) => file.path.endsWith('.js'));
131
+ const mapFile = result.outputFiles.find((file) => file.path.endsWith('.map'));
132
+ const output = jsFile?.text ?? result.outputFiles[0]?.text ?? '';
129
133
  if (!output.trim()) {
130
134
  // Export-only entry modules (no top-level side effects) tree-shake to empty
131
135
  // output; that is valid when the slot runs as a helper library, not an error.
132
- return '';
136
+ return { code: '' };
133
137
  }
134
- return output;
138
+ return {
139
+ code: output,
140
+ mapJson: mapFile?.text
141
+ };
135
142
  }
136
143
  //# sourceMappingURL=scriptSnippetBundler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scriptSnippetBundler.js","sourceRoot":"","sources":["../../src/scripting/scriptSnippetBundler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAe,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAEvE,qDAAqD;AACrD,MAAM,oBAAoB,GAAG,QAAQ,CAAC;AAEtC,uDAAuD;AACvD,MAAM,CAAC,MAAM,yBAAyB,GAAG,eAAe,CAAC;AAEzD,0DAA0D;AAC1D,MAAM,eAAe,GAAG,UAAU,CAAC;AAEnC,sDAAsD;AACtD,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAEvC;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAc;IACnD,OAAO,gEAAgE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACvF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,YAAoB,EAAE,SAAiB;IAC9E,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CACvC,WAAmB,EACnB,OAA+B,EAC/B,SAAmB;IAEnB,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;IAEvC;;;;;OAKG;IACH,MAAM,gBAAgB,GAAG,CACvB,UAAkB,EACwD,EAAE;QAC5E,IAAI,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,6CAA6C,UAAU,GAAG,EAAE,CAAC;aAC/E,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO;gBACL,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,uBAAuB,UAAU,GAAG,EAAE,CAAC;aACzD,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IAC5C,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,mBAAmB;QACzB,KAAK,CAAC,YAAY;YAChB,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,qBAAqB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;gBAC/D,IAAI,EAAE,yBAAyB;gBAC/B,SAAS,EAAE,eAAe;aAC3B,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpF,IAAI,EAAE,IAAI,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC9D,SAAS,EAAE,iBAAiB;aAC7B,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACtF,IAAI,EAAE,IAAI,wBAAwB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC9D,SAAS,EAAE,iBAAiB;aAC7B,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAClF,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,2CAA2C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;aAC5E,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBACpF,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,2CAA2C,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;aAC5E,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;gBACvE,QAAQ,EAAE,WAAW;gBACrB,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC,CAAC;YAEJ,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAChD,OAAO,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACtC,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAc,EACd,OAA+B,EAC/B,SAAmB;IAEnB,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC;QACzB,KAAK,EAAE;YACL,QAAQ,EAAE,0BAA0B;YACpC,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,iBAAiB;SAC9B;QACD,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,oBAAoB;QAC5B,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,CAAC,yBAAyB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;KACjE,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACnB,4EAA4E;QAC5E,8EAA8E;QAC9E,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"scriptSnippetBundler.js","sourceRoot":"","sources":["../../src/scripting/scriptSnippetBundler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ import { SourceMap } from 'node:module';
2
+ /**
3
+ * One esbuild-generated source map in the compile chain (bundle and/or transpile).
4
+ *
5
+ * Maps are applied from generated (evaluated) code back toward user-authored sources.
6
+ */
7
+ export interface ScriptCompileMap {
8
+ /**
9
+ * Parsed VLQ source map for one compile step.
10
+ */
11
+ map: SourceMap;
12
+ /**
13
+ * When true, original coordinates from this map land in the async-IIFE-wrapped
14
+ * buffer and must be adjusted by {@link SCRIPT_ASYNC_IIFE_LINE_OFFSET} before
15
+ * the next map (or before treating them as user lines for non-bundled scripts).
16
+ */
17
+ unwrapAsyncIife?: boolean;
18
+ }
19
+ /**
20
+ * Original source location after mapping a generated stack frame.
21
+ *
22
+ * Line and column are 1-based for UI display. Locations refer to the compiled
23
+ * input (post variable substitution), which can differ from the editor buffer
24
+ * when multi-line `{{var}}` expansions shift lines.
25
+ */
26
+ export interface ScriptOriginalLocation {
27
+ /**
28
+ * Original file path from the sourcemap (`script.js`, snippet filename, etc.).
29
+ */
30
+ source: string;
31
+ /**
32
+ * 1-based line in the original source.
33
+ */
34
+ line: number;
35
+ /**
36
+ * 1-based column in the original source.
37
+ */
38
+ column: number;
39
+ }
40
+ /**
41
+ * Lines prepended by {@link wrapScriptForAsyncEvaluation} before the user body.
42
+ */
43
+ export declare const SCRIPT_ASYNC_IIFE_LINE_OFFSET = 1;
44
+ /**
45
+ * Parses an esbuild source map JSON string into a Node {@link SourceMap}.
46
+ *
47
+ * @param mapJson - Raw source map JSON from esbuild `transform` or `build`.
48
+ * @returns Consumer used to remap generated line/column pairs.
49
+ * @throws When the JSON is not a valid source map object.
50
+ */
51
+ export declare function parseScriptSourceMap(mapJson: string): SourceMap;
52
+ /**
53
+ * Extracts the first evaluated-script frame from an Error stack.
54
+ *
55
+ * Prefers `<anonymous>:line:col` frames produced by SES / vm evaluation and
56
+ * ignores host frames (Chai, Node internals).
57
+ *
58
+ * @param stack - Raw `Error.stack` string, or undefined when missing.
59
+ * @returns 1-based generated line/column, or null when no script frame exists.
60
+ */
61
+ export declare function parseAnonymousStackFrame(stack: string | undefined): {
62
+ line: number;
63
+ column: number;
64
+ } | null;
65
+ /**
66
+ * Normalizes sourcemap source paths for display and navigation.
67
+ *
68
+ * Strips esbuild namespace prefixes and maps the virtual entry module to
69
+ * `script.js` so UI labels match the non-bundled transform sourcefile.
70
+ *
71
+ * @param source - Raw `originalSource` from a SourceMap entry.
72
+ * @returns Clean display path such as `script.js` or `helpers.js`.
73
+ */
74
+ export declare function normalizeScriptMapSource(source: string): string;
75
+ /**
76
+ * Maps a generated (evaluated) line/column through a compile sourcemap chain.
77
+ *
78
+ * @param maps - Ordered maps from outermost (transpile) to innermost (bundle).
79
+ * @param generatedLine - 1-based line in the evaluated script.
80
+ * @param generatedColumn - 1-based column in the evaluated script.
81
+ * @returns Original location when mapping succeeds; null when maps are empty or
82
+ * the frame does not resolve to an original source.
83
+ */
84
+ export declare function mapGeneratedToOriginal(maps: ScriptCompileMap[], generatedLine: number, generatedColumn: number): ScriptOriginalLocation | null;
85
+ /**
86
+ * Resolves an Error stack to an original user/snippet location via compile maps.
87
+ *
88
+ * @param stack - Raw error stack from the sandbox.
89
+ * @param maps - Compile sourcemap chain for this script run.
90
+ * @returns Mapped location, or null when the stack cannot be remapped.
91
+ */
92
+ export declare function resolveStackToOriginalLocation(stack: string | undefined, maps: ScriptCompileMap[]): ScriptOriginalLocation | null;
93
+ /**
94
+ * Builds a single-line error message that includes a mapped script location.
95
+ *
96
+ * @param message - Human-readable error text (already first-line / sanitized as needed).
97
+ * @param location - Mapped original location, if known.
98
+ * @returns Message prefixed with `source:line:column:` when location is present.
99
+ */
100
+ export declare function formatLocatedScriptError(message: string, location: ScriptOriginalLocation | null | undefined): string;
101
+ /**
102
+ * Removes the `source:line:column:` prefix added by {@link formatLocatedScriptError}.
103
+ *
104
+ * Used where the location is already conveyed by context (for example the
105
+ * CodeMirror error underline) and repeating it in the message is noise.
106
+ *
107
+ * @param message - Located or plain single-line script error text.
108
+ * @returns The message without its location prefix, trimmed.
109
+ */
110
+ export declare function stripLocatedScriptErrorPrefix(message: string): string;
111
+ //# sourceMappingURL=scriptSourceMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scriptSourceMap.d.ts","sourceRoot":"","sources":["../../src/scripting/scriptSourceMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;OAEG;IACH,GAAG,EAAE,SAAS,CAAC;IAEf;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAO/C;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAE/D;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiBzC;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAqB/D;AAoCD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,gBAAgB,EAAE,EACxB,aAAa,EAAE,MAAM,EACrB,eAAe,EAAE,MAAM,GACtB,sBAAsB,GAAG,IAAI,CA4C/B;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,gBAAgB,EAAE,GACvB,sBAAsB,GAAG,IAAI,CAO/B;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,sBAAsB,GAAG,IAAI,GAAG,SAAS,GAClD,MAAM,CAOR;AAOD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErE"}
@@ -0,0 +1,188 @@
1
+ import { SourceMap } from 'node:module';
2
+ /**
3
+ * Lines prepended by {@link wrapScriptForAsyncEvaluation} before the user body.
4
+ */
5
+ export const SCRIPT_ASYNC_IIFE_LINE_OFFSET = 1;
6
+ /**
7
+ * Matches V8 SES/vm frames that point into compartment-evaluated script text.
8
+ */
9
+ const ANONYMOUS_FRAME_RE = /<anonymous>:(\d+):(\d+)/;
10
+ /**
11
+ * Parses an esbuild source map JSON string into a Node {@link SourceMap}.
12
+ *
13
+ * @param mapJson - Raw source map JSON from esbuild `transform` or `build`.
14
+ * @returns Consumer used to remap generated line/column pairs.
15
+ * @throws When the JSON is not a valid source map object.
16
+ */
17
+ export function parseScriptSourceMap(mapJson) {
18
+ return new SourceMap(JSON.parse(mapJson));
19
+ }
20
+ /**
21
+ * Extracts the first evaluated-script frame from an Error stack.
22
+ *
23
+ * Prefers `<anonymous>:line:col` frames produced by SES / vm evaluation and
24
+ * ignores host frames (Chai, Node internals).
25
+ *
26
+ * @param stack - Raw `Error.stack` string, or undefined when missing.
27
+ * @returns 1-based generated line/column, or null when no script frame exists.
28
+ */
29
+ export function parseAnonymousStackFrame(stack) {
30
+ if (!stack) {
31
+ return null;
32
+ }
33
+ const match = ANONYMOUS_FRAME_RE.exec(stack);
34
+ if (!match) {
35
+ return null;
36
+ }
37
+ const line = Number(match[1]);
38
+ const column = Number(match[2]);
39
+ if (!Number.isFinite(line) || !Number.isFinite(column) || line < 1 || column < 1) {
40
+ return null;
41
+ }
42
+ return { line, column };
43
+ }
44
+ /**
45
+ * Normalizes sourcemap source paths for display and navigation.
46
+ *
47
+ * Strips esbuild namespace prefixes and maps the virtual entry module to
48
+ * `script.js` so UI labels match the non-bundled transform sourcefile.
49
+ *
50
+ * @param source - Raw `originalSource` from a SourceMap entry.
51
+ * @returns Clean display path such as `script.js` or `helpers.js`.
52
+ */
53
+ export function normalizeScriptMapSource(source) {
54
+ let normalized = source.trim();
55
+ const namespaceSep = normalized.indexOf(':');
56
+ if (namespaceSep > 0 && !normalized.includes('://') && !/^[A-Za-z]:[\\/]/.test(normalized)) {
57
+ // esbuild plugin namespaces appear as `hc-entry:/__entry__.js` or `e:/__entry__.js`.
58
+ const after = normalized.slice(namespaceSep + 1);
59
+ if (after.startsWith('/') || after.startsWith('__')) {
60
+ normalized = after;
61
+ }
62
+ }
63
+ normalized = normalized.replace(/^\//, '');
64
+ if (normalized === '__entry__.js' ||
65
+ normalized.endsWith('/__entry__.js') ||
66
+ normalized === 'script.js') {
67
+ return 'script.js';
68
+ }
69
+ return normalized;
70
+ }
71
+ /**
72
+ * Reads original coordinates from a SourceMap.findEntry result when present.
73
+ *
74
+ * Node's findEntry return type includes an empty object for unmapped positions,
75
+ * so this helper narrows to usable original source/line/column values.
76
+ *
77
+ * @param entry - Result from {@link SourceMap.findEntry}.
78
+ * @returns Original coordinates, or null when the entry is unmapped.
79
+ */
80
+ function readMappedSourceEntry(entry) {
81
+ if (entry == null || typeof entry !== 'object') {
82
+ return null;
83
+ }
84
+ const candidate = entry;
85
+ if (typeof candidate.originalSource !== 'string' ||
86
+ typeof candidate.originalLine !== 'number' ||
87
+ typeof candidate.originalColumn !== 'number') {
88
+ return null;
89
+ }
90
+ return {
91
+ originalSource: candidate.originalSource,
92
+ originalLine: candidate.originalLine,
93
+ originalColumn: candidate.originalColumn
94
+ };
95
+ }
96
+ /**
97
+ * Maps a generated (evaluated) line/column through a compile sourcemap chain.
98
+ *
99
+ * @param maps - Ordered maps from outermost (transpile) to innermost (bundle).
100
+ * @param generatedLine - 1-based line in the evaluated script.
101
+ * @param generatedColumn - 1-based column in the evaluated script.
102
+ * @returns Original location when mapping succeeds; null when maps are empty or
103
+ * the frame does not resolve to an original source.
104
+ */
105
+ export function mapGeneratedToOriginal(maps, generatedLine, generatedColumn) {
106
+ if (maps.length === 0) {
107
+ return null;
108
+ }
109
+ let line0 = generatedLine - 1;
110
+ let column0 = generatedColumn - 1;
111
+ let source = 'script.js';
112
+ let resolved = false;
113
+ for (const step of maps) {
114
+ const entry = readMappedSourceEntry(step.map.findEntry(line0, column0));
115
+ if (!entry) {
116
+ return resolved
117
+ ? {
118
+ source: normalizeScriptMapSource(source),
119
+ line: line0 + 1,
120
+ column: column0 + 1
121
+ }
122
+ : null;
123
+ }
124
+ source = entry.originalSource;
125
+ line0 = entry.originalLine;
126
+ column0 = entry.originalColumn;
127
+ resolved = true;
128
+ if (step.unwrapAsyncIife) {
129
+ line0 -= SCRIPT_ASYNC_IIFE_LINE_OFFSET;
130
+ if (line0 < 0) {
131
+ return null;
132
+ }
133
+ }
134
+ }
135
+ if (!resolved) {
136
+ return null;
137
+ }
138
+ return {
139
+ source: normalizeScriptMapSource(source),
140
+ line: line0 + 1,
141
+ column: column0 + 1
142
+ };
143
+ }
144
+ /**
145
+ * Resolves an Error stack to an original user/snippet location via compile maps.
146
+ *
147
+ * @param stack - Raw error stack from the sandbox.
148
+ * @param maps - Compile sourcemap chain for this script run.
149
+ * @returns Mapped location, or null when the stack cannot be remapped.
150
+ */
151
+ export function resolveStackToOriginalLocation(stack, maps) {
152
+ const frame = parseAnonymousStackFrame(stack);
153
+ if (!frame) {
154
+ return null;
155
+ }
156
+ return mapGeneratedToOriginal(maps, frame.line, frame.column);
157
+ }
158
+ /**
159
+ * Builds a single-line error message that includes a mapped script location.
160
+ *
161
+ * @param message - Human-readable error text (already first-line / sanitized as needed).
162
+ * @param location - Mapped original location, if known.
163
+ * @returns Message prefixed with `source:line:column:` when location is present.
164
+ */
165
+ export function formatLocatedScriptError(message, location) {
166
+ const trimmed = message.trim();
167
+ if (!location) {
168
+ return trimmed;
169
+ }
170
+ return `${location.source}:${location.line}:${location.column}: ${trimmed}`;
171
+ }
172
+ /**
173
+ * Matches the `source:line:column: ` prefix produced by {@link formatLocatedScriptError}.
174
+ */
175
+ const LOCATED_ERROR_PREFIX_RE = /^[^:\s][^:\n]*:\d+:\d+:\s+/;
176
+ /**
177
+ * Removes the `source:line:column:` prefix added by {@link formatLocatedScriptError}.
178
+ *
179
+ * Used where the location is already conveyed by context (for example the
180
+ * CodeMirror error underline) and repeating it in the message is noise.
181
+ *
182
+ * @param message - Located or plain single-line script error text.
183
+ * @returns The message without its location prefix, trimmed.
184
+ */
185
+ export function stripLocatedScriptErrorPrefix(message) {
186
+ return message.trim().replace(LOCATED_ERROR_PREFIX_RE, '');
187
+ }
188
+ //# sourceMappingURL=scriptSourceMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scriptSourceMap.js","sourceRoot":"","sources":["../../src/scripting/scriptSourceMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AA6CxC;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AAE/C;;GAEG;AACH,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IAClD,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAA+C,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAyB;IAEzB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACjF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,IAAI,UAAU,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,YAAY,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3F,qFAAqF;QACrF,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACjD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,UAAU,GAAG,KAAK,CAAC;QACrB,CAAC;IACH,CAAC;IAED,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3C,IACE,UAAU,KAAK,cAAc;QAC7B,UAAU,CAAC,QAAQ,CAAC,eAAe,CAAC;QACpC,UAAU,KAAK,WAAW,EAC1B,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAC5B,KAAyC;IAEzC,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,SAAS,GAAG,KAIjB,CAAC;IACF,IACE,OAAO,SAAS,CAAC,cAAc,KAAK,QAAQ;QAC5C,OAAO,SAAS,CAAC,YAAY,KAAK,QAAQ;QAC1C,OAAO,SAAS,CAAC,cAAc,KAAK,QAAQ,EAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,cAAc,EAAE,SAAS,CAAC,cAAc;QACxC,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,cAAc,EAAE,SAAS,CAAC,cAAc;KACzC,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAwB,EACxB,aAAqB,EACrB,eAAuB;IAEvB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,KAAK,GAAG,aAAa,GAAG,CAAC,CAAC;IAC9B,IAAI,OAAO,GAAG,eAAe,GAAG,CAAC,CAAC;IAClC,IAAI,MAAM,GAAG,WAAW,CAAC;IACzB,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,QAAQ;gBACb,CAAC,CAAC;oBACE,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC;oBACxC,IAAI,EAAE,KAAK,GAAG,CAAC;oBACf,MAAM,EAAE,OAAO,GAAG,CAAC;iBACpB;gBACH,CAAC,CAAC,IAAI,CAAC;QACX,CAAC;QAED,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC;QAC9B,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC;QAC3B,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC;QAC/B,QAAQ,GAAG,IAAI,CAAC;QAEhB,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,KAAK,IAAI,6BAA6B,CAAC;YACvC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,MAAM,EAAE,wBAAwB,CAAC,MAAM,CAAC;QACxC,IAAI,EAAE,KAAK,GAAG,CAAC;QACf,MAAM,EAAE,OAAO,GAAG,CAAC;KACpB,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAC5C,KAAyB,EACzB,IAAwB;IAExB,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAe,EACf,QAAmD;IAEnD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;AAC9E,CAAC;AAED;;GAEG;AACH,MAAM,uBAAuB,GAAG,4BAA4B,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,UAAU,6BAA6B,CAAC,OAAe;IAC3D,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC"}
@@ -264,6 +264,10 @@ export type ScriptExecutionEvent = {
264
264
  */
265
265
  scriptName?: string;
266
266
  };
267
+ /**
268
+ * Ownership scope of the script slot that produced a test result.
269
+ */
270
+ export type ScriptTestScope = 'collection' | 'folder' | 'request';
267
271
  /**
268
272
  * Result of a single hc.test assertion.
269
273
  */
@@ -271,11 +275,114 @@ export interface ScriptTestResult {
271
275
  name: string;
272
276
  passed: boolean;
273
277
  error?: string;
278
+ /**
279
+ * Chai AssertionError.expected coerced to string when the failure exposed one.
280
+ */
281
+ expected?: string;
282
+ /**
283
+ * Chai AssertionError.actual coerced to string when the failure exposed one.
284
+ */
285
+ actual?: string;
286
+ /**
287
+ * Mapped original file from the compile sourcemap (`script.js` or snippet path).
288
+ *
289
+ * Locations refer to the compiled input (post variable substitution), which can
290
+ * differ from the editor buffer when multi-line `{{var}}` expansions shift lines.
291
+ */
292
+ source?: string;
293
+ /**
294
+ * 1-based mapped line of the failing assertion, when a stack frame remapped.
295
+ */
296
+ line?: number;
297
+ /**
298
+ * 1-based mapped column of the failing assertion, when a stack frame remapped.
299
+ */
300
+ column?: number;
301
+ /**
302
+ * Wall-clock duration of the test callback in milliseconds.
303
+ */
304
+ durationMs?: number;
305
+ /**
306
+ * Stable {@link ScriptRef.id} of the slot that produced this assertion (host-filled).
307
+ */
308
+ scriptId?: string;
309
+ /**
310
+ * Script phase that ran this assertion (host-filled).
311
+ */
312
+ phase?: ScriptPhase;
313
+ /**
314
+ * Collection / folder / request ownership of the slot (host-filled).
315
+ */
316
+ scope?: ScriptTestScope;
274
317
  /**
275
318
  * Display label of the pre/post script that produced this assertion.
276
319
  */
277
320
  scriptName?: string;
278
321
  }
322
+ /**
323
+ * Source-mapped location of a script runtime or compile error.
324
+ *
325
+ * Structurally identical to the sourcemap module's ScriptOriginalLocation, but
326
+ * declared here so renderer-facing types stay free of `node:module` imports.
327
+ */
328
+ export interface ScriptErrorLocation {
329
+ /**
330
+ * Mapped original file from the compile sourcemap (`script.js` or snippet path).
331
+ *
332
+ * Locations refer to the compiled input (post variable substitution), which can
333
+ * differ from the editor buffer when multi-line `{{var}}` expansions shift lines.
334
+ */
335
+ source: string;
336
+ /**
337
+ * 1-based mapped line of the error.
338
+ */
339
+ line: number;
340
+ /**
341
+ * 1-based mapped column of the error.
342
+ */
343
+ column: number;
344
+ }
345
+ /**
346
+ * One script runtime or compile failure tagged with slot metadata by the host.
347
+ *
348
+ * Mirrors the location and ownership fields on {@link ScriptTestResult} so
349
+ * errors can flow through the same jump-to-editor reveal pipeline as failed
350
+ * assertions.
351
+ */
352
+ export interface ScriptRunError {
353
+ /**
354
+ * Sanitized single-line error text, including any `source:line:column:` prefix.
355
+ */
356
+ message: string;
357
+ /**
358
+ * Display label of the pre/post script slot that failed (host-filled).
359
+ */
360
+ scriptName?: string;
361
+ /**
362
+ * Stable {@link ScriptRef.id} of the slot that failed (host-filled).
363
+ */
364
+ scriptId?: string;
365
+ /**
366
+ * Script phase that failed (host-filled).
367
+ */
368
+ phase?: ScriptPhase;
369
+ /**
370
+ * Collection / folder / request ownership of the slot (host-filled).
371
+ */
372
+ scope?: ScriptTestScope;
373
+ /**
374
+ * Mapped original file, when the error location resolved through sourcemaps.
375
+ */
376
+ source?: string;
377
+ /**
378
+ * 1-based mapped line of the error, when resolvable.
379
+ */
380
+ line?: number;
381
+ /**
382
+ * 1-based mapped column of the error, when resolvable.
383
+ */
384
+ column?: number;
385
+ }
279
386
  /**
280
387
  * Result returned from the script sandbox after execution.
281
388
  */
@@ -362,5 +469,10 @@ export interface ScriptRunResult {
362
469
  */
363
470
  data: Record<string, unknown>;
364
471
  error?: string;
472
+ /**
473
+ * Source-mapped location of {@link ScriptRunResult.error}, when the failing
474
+ * stack frame or compile diagnostic resolved to user source.
475
+ */
476
+ errorLocation?: ScriptErrorLocation;
365
477
  }
366
478
  //# sourceMappingURL=script.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/types/script.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../src/types/script.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@harborclient/core",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Platform-neutral HarborClient engine: types, request orchestration helpers, and shared utilities.",
5
5
  "homepage": "https://harborclient.github.io/harborclient/core/",
6
6
  "bugs": {
@@ -46,8 +46,6 @@
46
46
  "access": "public"
47
47
  },
48
48
  "dependencies": {
49
- "@harborclient/http": "1.0.0",
50
- "@harborclient/sdk": "1.2.0",
51
49
  "@harborclient/team-hub-api": "0.4.0",
52
50
  "@orama/orama": "^3.1.18",
53
51
  "chai": "^4.5.0",
@@ -58,7 +56,9 @@
58
56
  "openai": "^6.44.0",
59
57
  "papaparse": "^5.5.4",
60
58
  "ses": "^2.2.0",
61
- "zod": "^4.4.3"
59
+ "zod": "^4.4.3",
60
+ "@harborclient/http": "^1.0.0",
61
+ "@harborclient/sdk": "^1.2.7"
62
62
  },
63
63
  "devDependencies": {
64
64
  "@electron-toolkit/eslint-config-prettier": "^3.0.0",
@@ -74,6 +74,7 @@
74
74
  "vitest": "^4.1.9"
75
75
  },
76
76
  "scripts": {
77
+ "prebuild": "pnpm --filter @harborclient/sdk build && pnpm --filter @harborclient/http build",
77
78
  "build": "tsc -p tsconfig.build.json && node scripts/assert-dist-publishable.mjs",
78
79
  "clean": "rm -rf dist && find src -type f \\( -name '*.js' -o -name '*.d.ts' -o -name '*.js.map' -o -name '*.d.ts.map' \\) -delete",
79
80
  "lint": "eslint --cache .",