callman-core 1.9.1 → 1.11.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 (146) hide show
  1. package/ai-packs/feature-policy.md +26 -0
  2. package/ai-packs/pm-api.md +213 -0
  3. package/ai-packs/sandbox-globals.md +20 -0
  4. package/ai-packs/templating.md +104 -0
  5. package/dist/host/connections.d.ts +67 -0
  6. package/dist/host/connections.d.ts.map +1 -0
  7. package/dist/host/connections.js +156 -0
  8. package/dist/host/connections.js.map +1 -0
  9. package/dist/host/db/mongoAdapter.d.ts +7 -0
  10. package/dist/host/db/mongoAdapter.d.ts.map +1 -0
  11. package/dist/host/db/mongoAdapter.js +426 -0
  12. package/dist/host/db/mongoAdapter.js.map +1 -0
  13. package/dist/host/db/mysqlAdapter.d.ts +7 -0
  14. package/dist/host/db/mysqlAdapter.d.ts.map +1 -0
  15. package/dist/host/db/mysqlAdapter.js +68 -0
  16. package/dist/host/db/mysqlAdapter.js.map +1 -0
  17. package/dist/host/db/oracleAdapter.d.ts +7 -0
  18. package/dist/host/db/oracleAdapter.d.ts.map +1 -0
  19. package/dist/host/db/oracleAdapter.js +142 -0
  20. package/dist/host/db/oracleAdapter.js.map +1 -0
  21. package/dist/host/db/oracleConnectString.d.ts +10 -0
  22. package/dist/host/db/oracleConnectString.d.ts.map +1 -0
  23. package/dist/host/db/oracleConnectString.js +58 -0
  24. package/dist/host/db/oracleConnectString.js.map +1 -0
  25. package/dist/host/db/postgresAdapter.d.ts +7 -0
  26. package/dist/host/db/postgresAdapter.d.ts.map +1 -0
  27. package/dist/host/db/postgresAdapter.js +67 -0
  28. package/dist/host/db/postgresAdapter.js.map +1 -0
  29. package/dist/host/db/queryExecutor.d.ts +3 -0
  30. package/dist/host/db/queryExecutor.d.ts.map +1 -0
  31. package/dist/host/db/queryExecutor.js +97 -0
  32. package/dist/host/db/queryExecutor.js.map +1 -0
  33. package/dist/host/db/sqlNormalize.d.ts +3 -0
  34. package/dist/host/db/sqlNormalize.d.ts.map +1 -0
  35. package/dist/host/db/sqlNormalize.js +29 -0
  36. package/dist/host/db/sqlNormalize.js.map +1 -0
  37. package/dist/host/db/templateResolver.d.ts +3 -0
  38. package/dist/host/db/templateResolver.d.ts.map +1 -0
  39. package/dist/host/db/templateResolver.js +77 -0
  40. package/dist/host/db/templateResolver.js.map +1 -0
  41. package/dist/host/db/types.d.ts +59 -0
  42. package/dist/host/db/types.d.ts.map +1 -0
  43. package/dist/host/db/types.js +6 -0
  44. package/dist/host/db/types.js.map +1 -0
  45. package/dist/host/index.d.ts +6 -0
  46. package/dist/host/index.d.ts.map +1 -0
  47. package/dist/host/index.js +7 -0
  48. package/dist/host/index.js.map +1 -0
  49. package/dist/host/lazy.d.ts +3 -0
  50. package/dist/host/lazy.d.ts.map +1 -0
  51. package/dist/host/lazy.js +31 -0
  52. package/dist/host/lazy.js.map +1 -0
  53. package/dist/host/redis/redisService.d.ts +9 -0
  54. package/dist/host/redis/redisService.d.ts.map +1 -0
  55. package/dist/host/redis/redisService.js +264 -0
  56. package/dist/host/redis/redisService.js.map +1 -0
  57. package/dist/host/redis/types.d.ts +44 -0
  58. package/dist/host/redis/types.d.ts.map +1 -0
  59. package/dist/host/redis/types.js +4 -0
  60. package/dist/host/redis/types.js.map +1 -0
  61. package/dist/index.d.ts +5 -0
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +4 -0
  64. package/dist/index.js.map +1 -1
  65. package/dist/runner/requestRunner.d.ts.map +1 -1
  66. package/dist/runner/requestRunner.js +120 -0
  67. package/dist/runner/requestRunner.js.map +1 -1
  68. package/dist/runner/runCollection.d.ts +1 -1
  69. package/dist/runner/runCollection.d.ts.map +1 -1
  70. package/dist/runner/runCollection.js +3 -1
  71. package/dist/runner/runCollection.js.map +1 -1
  72. package/dist/scenario-runner/adapters/script-executor.js +3 -3
  73. package/dist/scenario-runner/adapters/script-executor.js.map +1 -1
  74. package/dist/script/features/log.d.ts.map +1 -1
  75. package/dist/script/features/log.js +23 -4
  76. package/dist/script/features/log.js.map +1 -1
  77. package/dist/script/isolated-runner.d.ts +11 -0
  78. package/dist/script/isolated-runner.d.ts.map +1 -0
  79. package/dist/script/isolated-runner.js +172 -0
  80. package/dist/script/isolated-runner.js.map +1 -0
  81. package/dist/script/legacy.d.ts.map +1 -1
  82. package/dist/script/legacy.js +8 -0
  83. package/dist/script/legacy.js.map +1 -1
  84. package/dist/script/pm-api-metadata.d.ts +19 -0
  85. package/dist/script/pm-api-metadata.d.ts.map +1 -0
  86. package/dist/script/pm-api-metadata.js +264 -0
  87. package/dist/script/pm-api-metadata.js.map +1 -0
  88. package/dist/script/scope.d.ts +2 -0
  89. package/dist/script/scope.d.ts.map +1 -1
  90. package/dist/script/scope.js +4 -0
  91. package/dist/script/scope.js.map +1 -1
  92. package/dist/script/worker-entry.d.ts +2 -0
  93. package/dist/script/worker-entry.d.ts.map +1 -0
  94. package/dist/script/worker-entry.js +79 -0
  95. package/dist/script/worker-entry.js.map +1 -0
  96. package/dist/types/index.d.ts +11 -0
  97. package/dist/types/index.d.ts.map +1 -1
  98. package/dist-cjs/host/connections.js +164 -0
  99. package/dist-cjs/host/connections.js.map +1 -0
  100. package/dist-cjs/host/db/mongoAdapter.js +431 -0
  101. package/dist-cjs/host/db/mongoAdapter.js.map +1 -0
  102. package/dist-cjs/host/db/mysqlAdapter.js +73 -0
  103. package/dist-cjs/host/db/mysqlAdapter.js.map +1 -0
  104. package/dist-cjs/host/db/oracleAdapter.js +147 -0
  105. package/dist-cjs/host/db/oracleAdapter.js.map +1 -0
  106. package/dist-cjs/host/db/oracleConnectString.js +63 -0
  107. package/dist-cjs/host/db/oracleConnectString.js.map +1 -0
  108. package/dist-cjs/host/db/postgresAdapter.js +72 -0
  109. package/dist-cjs/host/db/postgresAdapter.js.map +1 -0
  110. package/dist-cjs/host/db/queryExecutor.js +101 -0
  111. package/dist-cjs/host/db/queryExecutor.js.map +1 -0
  112. package/dist-cjs/host/db/sqlNormalize.js +33 -0
  113. package/dist-cjs/host/db/sqlNormalize.js.map +1 -0
  114. package/dist-cjs/host/db/templateResolver.js +81 -0
  115. package/dist-cjs/host/db/templateResolver.js.map +1 -0
  116. package/dist-cjs/host/db/types.js +7 -0
  117. package/dist-cjs/host/db/types.js.map +1 -0
  118. package/dist-cjs/host/index.js +17 -0
  119. package/dist-cjs/host/index.js.map +1 -0
  120. package/dist-cjs/host/lazy.js +69 -0
  121. package/dist-cjs/host/lazy.js.map +1 -0
  122. package/dist-cjs/host/redis/redisService.js +268 -0
  123. package/dist-cjs/host/redis/redisService.js.map +1 -0
  124. package/dist-cjs/host/redis/types.js +5 -0
  125. package/dist-cjs/host/redis/types.js.map +1 -0
  126. package/dist-cjs/index.js +10 -1
  127. package/dist-cjs/index.js.map +1 -1
  128. package/dist-cjs/runner/requestRunner.js +120 -0
  129. package/dist-cjs/runner/requestRunner.js.map +1 -1
  130. package/dist-cjs/runner/runCollection.js +3 -1
  131. package/dist-cjs/runner/runCollection.js.map +1 -1
  132. package/dist-cjs/scenario-runner/adapters/script-executor.js +3 -3
  133. package/dist-cjs/scenario-runner/adapters/script-executor.js.map +1 -1
  134. package/dist-cjs/script/features/log.js +23 -4
  135. package/dist-cjs/script/features/log.js.map +1 -1
  136. package/dist-cjs/script/isolated-runner.js +209 -0
  137. package/dist-cjs/script/isolated-runner.js.map +1 -0
  138. package/dist-cjs/script/legacy.js +8 -0
  139. package/dist-cjs/script/legacy.js.map +1 -1
  140. package/dist-cjs/script/pm-api-metadata.js +267 -0
  141. package/dist-cjs/script/pm-api-metadata.js.map +1 -0
  142. package/dist-cjs/script/scope.js +5 -1
  143. package/dist-cjs/script/scope.js.map +1 -1
  144. package/dist-cjs/script/worker-entry.js +81 -0
  145. package/dist-cjs/script/worker-entry.js.map +1 -0
  146. package/package.json +15 -3
@@ -0,0 +1,264 @@
1
+ // Canonical, machine-readable description of the `pm.*` scripting surface.
2
+ // Same philosophy as templating/generator-metadata.ts: ONE runtime data
3
+ // structure, colocated with the implementation, consumed by every surface
4
+ // that needs to know "what exists" — today the AI knowledge-pack generator
5
+ // (scripts/generate-ai-packs.mjs), tomorrow the desktop autocomplete.
6
+ //
7
+ // When a feature module gains/loses a method, update THIS file in the same
8
+ // commit. The CI drift check regenerates ai-packs/ and fails on a diff, so
9
+ // the metadata cannot silently fall behind the docs the AI sees.
10
+ export const PM_API_METADATA = [
11
+ {
12
+ name: "pm.test",
13
+ description: "Register a named test. The callback's assertion failures mark the test failed without aborting the script.",
14
+ members: [
15
+ {
16
+ signature: "pm.test(name, fn)",
17
+ description: "Runs fn (sync or async); pass/fail lands in the run's test results.",
18
+ },
19
+ ],
20
+ },
21
+ {
22
+ name: "pm.expect",
23
+ description: "Chai-style assertions plus Jest-style matchers.",
24
+ members: [
25
+ {
26
+ signature: "pm.expect(value)",
27
+ description: "Assertion chain. Equality: .to.equal(x) (identity), .to.eql(x) / .to.deep.equal(x) / .toEqual(x) (deep). Existence: .to.exist, .toBeDefined(), .toBeNull(). Strings/arrays: .to.include(x) / .toContain(x), .oneOf([..]). Numbers: .toBeGreaterThan / .toBeLessThan / .to.be.above(n) / .to.be.below(n). Types: .to.be.a('string'|'number'|...). Negation: .to.not.<...> / .not.<matcher>. Properties: .to.have.property('name', value?).",
28
+ },
29
+ { signature: "pm.expect.fail(message?)", description: "Fails the surrounding test immediately." },
30
+ ],
31
+ },
32
+ {
33
+ name: "pm.environment",
34
+ description: "Active environment variables (alias: pm.env). Writes are scoped to the run and surface as variable mutations.",
35
+ members: [
36
+ { signature: "pm.environment.get(key)", description: "Read a variable (string or undefined)." },
37
+ { signature: "pm.environment.set(key, value)", description: "Write a variable for subsequent steps." },
38
+ { signature: "pm.environment.unset(key)", description: "Remove a variable." },
39
+ { signature: "pm.environment.has(key)", description: "true when the key exists." },
40
+ { signature: "pm.environment.clear()", description: "Remove every variable in the scope." },
41
+ { signature: "pm.environment.toObject()", description: "Plain { key: value } snapshot." },
42
+ { signature: "pm.environment.replaceIn(template)", description: "Resolve {{tokens}} inside a string." },
43
+ { signature: "pm.environment.name", description: "Active environment's name." },
44
+ ],
45
+ },
46
+ {
47
+ name: "pm.globals",
48
+ description: "Workspace-level global variables. Same surface as pm.environment.",
49
+ members: [
50
+ { signature: "pm.globals.get(key)", description: "Read a global." },
51
+ { signature: "pm.globals.set(key, value)", description: "Write a global for the run." },
52
+ { signature: "pm.globals.unset(key)", description: "Remove a global." },
53
+ { signature: "pm.globals.has(key)", description: "true when the key exists." },
54
+ { signature: "pm.globals.clear()", description: "Remove every global in the scope." },
55
+ { signature: "pm.globals.toObject()", description: "Plain snapshot." },
56
+ { signature: "pm.globals.replaceIn(template)", description: "Resolve {{tokens}} inside a string." },
57
+ ],
58
+ },
59
+ {
60
+ name: "pm.collectionVariables",
61
+ description: "Collection-scoped variables that survive across requests within one collection run iteration.",
62
+ members: [
63
+ { signature: "pm.collectionVariables.get(key)", description: "Read a collection variable." },
64
+ { signature: "pm.collectionVariables.set(key, value)", description: "Write; persists across the iteration." },
65
+ { signature: "pm.collectionVariables.unset(key)", description: "Remove a collection variable." },
66
+ { signature: "pm.collectionVariables.has(key)", description: "true when the key exists." },
67
+ { signature: "pm.collectionVariables.clear()", description: "Remove all collection variables." },
68
+ { signature: "pm.collectionVariables.toObject()", description: "Plain snapshot." },
69
+ { signature: "pm.collectionVariables.replaceIn(template)", description: "Resolve {{tokens}}." },
70
+ ],
71
+ },
72
+ {
73
+ name: "pm.variables",
74
+ description: "Layered read across all scopes (per-iteration > environment > globals) plus template resolution.",
75
+ members: [
76
+ { signature: "pm.variables.get(key)", description: "Read through the precedence chain." },
77
+ { signature: "pm.variables.set(key, value)", description: "Write to the run-local layer." },
78
+ { signature: "pm.variables.unset(key)", description: "Remove from the run-local layer." },
79
+ { signature: "pm.variables.has(key)", description: "true when any layer has the key." },
80
+ { signature: "pm.variables.toObject()", description: "Merged snapshot." },
81
+ { signature: "pm.variables.replaceIn(template)", description: "Resolve {{tokens}} in a string." },
82
+ {
83
+ signature: "pm.variables.resolve(template)",
84
+ description: "Like replaceIn, but also resolves scenario node-output references.",
85
+ },
86
+ ],
87
+ },
88
+ {
89
+ name: "pm.request",
90
+ description: "The outgoing request. Mutations only have effect in pre-request scripts (the call has not fired yet).",
91
+ members: [
92
+ { signature: "pm.request.url", description: "Resolved URL string." },
93
+ { signature: "pm.request.method", description: "HTTP method." },
94
+ { signature: "pm.request.body", description: "Body snapshot (mode + content)." },
95
+ { signature: "pm.request.headers", description: "HeaderList: .all() .get(name) .has(name) .add({key,value}) .upsert({key,value}) .remove(name) .idx(i)." },
96
+ { signature: "pm.request.query", description: "Query params as a HeaderList." },
97
+ { signature: "pm.request.getHeader(name)", description: "Read one header value." },
98
+ { signature: "pm.request.setHeader(name, value)", description: "Set/replace a header.", stages: ["pre-request", "scenario-script"] },
99
+ { signature: "pm.request.unsetHeader(name)", description: "Remove a header.", stages: ["pre-request", "scenario-script"] },
100
+ { signature: "pm.request.getQueryParam(name)", description: "Read one query param." },
101
+ { signature: "pm.request.setQueryParam(name, value)", description: "Set/replace a query param.", stages: ["pre-request", "scenario-script"] },
102
+ { signature: "pm.request.unsetQueryParam(name)", description: "Remove a query param.", stages: ["pre-request", "scenario-script"] },
103
+ { signature: "pm.request.setUrl(url)", description: "Replace the URL.", stages: ["pre-request", "scenario-script"] },
104
+ { signature: "pm.request.setMethod(method)", description: "Replace the method.", stages: ["pre-request", "scenario-script"] },
105
+ { signature: "pm.request.setRawBody(value)", description: "Replace the raw body (string or object → JSON).", stages: ["pre-request", "scenario-script"] },
106
+ ],
107
+ },
108
+ {
109
+ name: "pm.response",
110
+ description: "The received response. Not available in pre-request scripts.",
111
+ members: [
112
+ { signature: "pm.response.code", description: "Status code (number).", stages: ["post-response", "tests", "scenario-script"] },
113
+ { signature: "pm.response.status", description: "Status code (number, alias).", stages: ["post-response", "tests", "scenario-script"] },
114
+ { signature: "pm.response.statusText", description: "Status text.", stages: ["post-response", "tests", "scenario-script"] },
115
+ { signature: "pm.response.json()", description: "Parsed JSON body — call once into a const (`const body = pm.response.json()`); throws on non-JSON, so guard with try/catch or pm.response.to.be.json when the content type is uncertain.", stages: ["post-response", "tests", "scenario-script"] },
116
+ { signature: "pm.response.text()", description: "Raw body as string.", stages: ["post-response", "tests", "scenario-script"] },
117
+ { signature: "pm.response.rawBody", description: "Raw body string.", stages: ["post-response", "tests", "scenario-script"] },
118
+ { signature: "pm.response.headers", description: "Response HeaderList.", stages: ["post-response", "tests", "scenario-script"] },
119
+ { signature: "pm.response.responseTime", description: "Duration in ms.", stages: ["post-response", "tests", "scenario-script"] },
120
+ { signature: "pm.response.responseSize", description: "Body size in bytes.", stages: ["post-response", "tests", "scenario-script"] },
121
+ {
122
+ signature: "pm.response.to.have.status(code)",
123
+ description: "Assertion shortcuts; also .to.have.header/.jsonBody/.body and .to.be.ok/.json/.success/.clientError/... plus .to.not.<predicate>.",
124
+ stages: ["post-response", "tests", "scenario-script"],
125
+ },
126
+ ],
127
+ },
128
+ {
129
+ name: "pm.sendRequest",
130
+ description: "Fire an ad-hoc HTTP request from inside a script.",
131
+ members: [
132
+ {
133
+ signature: "pm.sendRequest(urlOrOptions, callback?)",
134
+ description: "Options: { url, method, header: {name: value}, body }. Body accepts a plain object (auto-JSON) OR Postman style { mode: 'raw', raw: JSON.stringify({...}) } / { mode: 'urlencoded', urlencoded: [{key, value}] }. Prefer `const res = await pm.sendRequest({...})`; callback form gets (err, res). The response object is { code, status, statusText, headers, body, responseTime, json(), text() } — note it is NOT pm.response.",
135
+ },
136
+ ],
137
+ },
138
+ {
139
+ name: "pm.db",
140
+ description: "Database access (Oracle / MongoDB / PostgreSQL / MySQL). Disabled by feature policy in some contexts — tests then report SKIP.",
141
+ members: [
142
+ {
143
+ signature: "pm.db.query({ connectionId, query })",
144
+ description: "Run an ad-hoc query — ALWAYS await it. Resolves to { success, error, rowCount, rows, firstRow(), connectionId, connectionName, connectionType, durationMs, executedAt }. firstRow is a FUNCTION: res.firstRow()?.STATUS (Oracle columns are UPPERCASE).",
145
+ requires: "database",
146
+ },
147
+ {
148
+ signature: "pm.db.pre",
149
+ description: "Result object of the declared pre-request DB query: { success, error, rowCount, rows, firstRow() }. Not a promise — read directly.",
150
+ requires: "database",
151
+ },
152
+ {
153
+ signature: "pm.db.post",
154
+ description: "Result object of the declared post-response DB query (same shape as pm.db.pre).",
155
+ requires: "database",
156
+ stages: ["post-response", "tests"],
157
+ },
158
+ ],
159
+ },
160
+ {
161
+ name: "pm.kafka",
162
+ description: "Captured Kafka events from the request's Kafka tab listener.",
163
+ members: [
164
+ { signature: "pm.kafka.event()", description: "The matched event's parsed payload (or null).", requires: "kafka", stages: ["post-response", "tests"] },
165
+ { signature: "pm.kafka.messages()", description: "Every captured message in the listen window.", requires: "kafka", stages: ["post-response", "tests"] },
166
+ ],
167
+ },
168
+ {
169
+ name: "pm.redis",
170
+ description: "Results of the declared pre/post Redis commands.",
171
+ members: [
172
+ { signature: "pm.redis.get(key)", description: "Read a value already captured by a declared GET.", requires: "redis" },
173
+ { signature: "pm.redis.results.pre", description: "Array of pre-stage command results (by line index).", requires: "redis" },
174
+ { signature: "pm.redis.results.post", description: "Array of post-stage command results.", requires: "redis", stages: ["post-response", "tests"] },
175
+ ],
176
+ },
177
+ {
178
+ name: "pm.random",
179
+ description: "Deterministic-format random data generators.",
180
+ members: [
181
+ { signature: "pm.random.uuid()", description: "UUID v4." },
182
+ { signature: "pm.random.email()", description: "Random email address." },
183
+ { signature: "pm.random.string(length?)", description: "Alphanumeric string." },
184
+ { signature: "pm.random.int(min, max)", description: "Integer in range." },
185
+ { signature: "pm.random.bigdecimal(min, max, scale)", description: "Decimal with given scale." },
186
+ { signature: "pm.random.boolean()", description: "true/false." },
187
+ { signature: "pm.random.phone()", description: "Phone number string." },
188
+ { signature: "pm.random.name()", description: "Person name." },
189
+ { signature: "pm.random.date(format?)", description: "Date string." },
190
+ ],
191
+ },
192
+ {
193
+ name: "pm.counter",
194
+ description: "Monotonic counter scoped to the run.",
195
+ members: [
196
+ { signature: "pm.counter.next()", description: "Next value (starts at 1)." },
197
+ { signature: "pm.counter.start(startAt?)", description: "Counter starting at a custom value." },
198
+ ],
199
+ },
200
+ {
201
+ name: "pm.info",
202
+ description: "Execution metadata snapshot.",
203
+ members: [
204
+ { signature: "pm.info.eventName", description: "\"prerequest\" | \"test\"." },
205
+ { signature: "pm.info.iteration", description: "Zero-based data-driven iteration index." },
206
+ {
207
+ signature: "pm.info.iterationCount",
208
+ description: "Total iterations — only meaningful in collection/data-driven runs. Never use it to gate token/cache logic in single sends.",
209
+ },
210
+ { signature: "pm.info.requestName", description: "Current request's name." },
211
+ { signature: "pm.info.requestId", description: "Current request's id." },
212
+ ],
213
+ },
214
+ {
215
+ name: "pm.execution",
216
+ description: "Collection-run flow control.",
217
+ members: [
218
+ { signature: "pm.execution.setNextRequest(name)", description: "Jump to a named request next (collection runs)." },
219
+ { signature: "pm.execution.skipRequest()", description: "Skip the current request.", stages: ["pre-request"] },
220
+ { signature: "pm.execution.location", description: "Folder path of the current request." },
221
+ ],
222
+ },
223
+ {
224
+ name: "pm.node",
225
+ description: "Scenario workflow context (only meaningful inside scenario script nodes).",
226
+ members: [
227
+ { signature: "pm.node.nodeLabel", description: "Current node's label.", stages: ["scenario-script"] },
228
+ { signature: "pm.node.setNextRequest(name)", description: "Route the workflow to a named node.", stages: ["scenario-script"] },
229
+ ],
230
+ },
231
+ {
232
+ name: "pm.log",
233
+ description: "Structured logging into the run report.",
234
+ members: [{ signature: "pm.log(...args)", description: "Like console.log; entries land in the run's log panel." }],
235
+ },
236
+ {
237
+ name: "CryptoJS",
238
+ description: "crypto-js global (NOT under pm.*).",
239
+ members: [
240
+ { signature: "CryptoJS.SHA256(msg) / SHA1 / SHA512 / MD5", description: "Hashes; .toString() or .toString(CryptoJS.enc.Hex)." },
241
+ { signature: "CryptoJS.HmacSHA256(msg, key)", description: "HMAC family (SHA1/224/384/512, MD5 variants)." },
242
+ { signature: "CryptoJS.AES.encrypt(msg, key) / .decrypt(cipher, key)", description: "AES; decrypt result needs .toString(CryptoJS.enc.Utf8)." },
243
+ { signature: "CryptoJS.PBKDF2(password, salt, options)", description: "Key derivation." },
244
+ { signature: "CryptoJS.enc.Utf8 / Base64 / Hex / Latin1", description: "Encoders for .toString(...)." },
245
+ { signature: "CryptoJS.lib.WordArray.create / random(n)", description: "Raw word arrays (e.g. random IVs)." },
246
+ ],
247
+ },
248
+ {
249
+ name: "_",
250
+ description: "lodash global (NOT under pm.*).",
251
+ members: [
252
+ { signature: "_.get(obj, path, default?) / _.pick / _.groupBy / _.sortBy / _.uniq / ...", description: "Full lodash surface for data wrangling." },
253
+ ],
254
+ },
255
+ {
256
+ name: "timers",
257
+ description: "Safe per-execution timer wrappers (callbacks never outlive the run).",
258
+ members: [
259
+ { signature: "setTimeout(fn, ms) / clearTimeout(id)", description: "Use with await new Promise(r => setTimeout(r, ms)) for polling loops." },
260
+ { signature: "setInterval(fn, ms) / clearInterval(id)", description: "Interval variant." },
261
+ ],
262
+ },
263
+ ];
264
+ //# sourceMappingURL=pm-api-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pm-api-metadata.js","sourceRoot":"","sources":["../../src/script/pm-api-metadata.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ export declare const ALLOWED_GLOBAL_NAMES: readonly string[];
2
+ export declare const BLOCKED_GLOBAL_NAMES: readonly string[];
1
3
  export declare const RESERVED_LABEL_NAMES: Set<string>;
2
4
  export declare const VALID_LABEL_IDENTIFIER_PATTERN: RegExp;
3
5
  export interface ScopeBindings {
@@ -1 +1 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/script/scope.ts"],"names":[],"mappings":"AAmHA,eAAO,MAAM,oBAAoB,aAgB/B,CAAC;AAEH,eAAO,MAAM,8BAA8B,QAAuB,CAAC;AAEnE,MAAM,WAAW,aAAa;IAE5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAM5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;IAIvD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;+CAE2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IAKjB,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IAGF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,gBAAgB,GAAI,UAAU,aAAa,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAqEhF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAiBrF,CAAC"}
1
+ {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/script/scope.ts"],"names":[],"mappings":"AAiHA,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAiC,CAAC;AACpF,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAyB,CAAC;AAM5E,eAAO,MAAM,oBAAoB,aAgB/B,CAAC;AAEH,eAAO,MAAM,8BAA8B,QAAuB,CAAC;AAEnE,MAAM,WAAW,aAAa;IAE5B,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAM5B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC;IAIvD,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;+CAE2C;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IAKjB,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,OAAO,CAAC;QACpB,YAAY,EAAE,OAAO,CAAC;QACtB,WAAW,EAAE,OAAO,CAAC;QACrB,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IAGF,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,eAAO,MAAM,gBAAgB,GAAI,UAAU,aAAa,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAqEhF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAiBrF,CAAC"}
@@ -105,6 +105,10 @@ const BLOCKED_GLOBALS = [
105
105
  "navigator",
106
106
  "importScripts",
107
107
  ];
108
+ // Exposed for the AI knowledge-pack generator (scripts/generate-ai-packs.mjs)
109
+ // so the sandbox surface documentation is derived from the live lists.
110
+ export const ALLOWED_GLOBAL_NAMES = Object.keys(ALLOWED_GLOBALS);
111
+ export const BLOCKED_GLOBAL_NAMES = [...BLOCKED_GLOBALS];
108
112
  // Names that the caller cannot use as a "label-as-global" workflow key.
109
113
  // Exposing a workflow node named `pm` or `eval` would shadow the built-in
110
114
  // API or reintroduce a blocked global, so we reject these reservations
@@ -1 +1 @@
1
- {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/script/scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/script/scope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=worker-entry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-entry.d.ts","sourceRoot":"","sources":["../../src/script/worker-entry.ts"],"names":[],"mappings":""}
@@ -0,0 +1,79 @@
1
+ // worker_threads entry for runScriptIsolated. Runs the canonical executeScript
2
+ // inside the worker so a runaway/CPU-bound user script blocks only this worker
3
+ // thread — the host hard-kills it via worker.terminate() on timeout.
4
+ //
5
+ // pm.sendRequest (when the host enabled it) is proxied back to the host over
6
+ // the MessagePort: each call posts a "sendRequest" message and awaits the
7
+ // matching "sendRequestResult" reply.
8
+ import { parentPort, workerData } from "node:worker_threads";
9
+ import { executeScript } from "./executor.js";
10
+ const port = parentPort;
11
+ const data = workerData;
12
+ // Drop values JSON can't represent (functions/symbols/cyclic) so the result is
13
+ // always structured-cloneable back to the host. returnValue is template-
14
+ // resolved as JSON downstream anyway.
15
+ const jsonSafe = (value) => {
16
+ try {
17
+ return JSON.parse(JSON.stringify(value ?? null));
18
+ }
19
+ catch {
20
+ return null;
21
+ }
22
+ };
23
+ if (port) {
24
+ const pendingSendRequests = new Map();
25
+ let nextRequestId = 1;
26
+ port.on("message", (message) => {
27
+ if (message.type === "sendRequestResult") {
28
+ const pending = pendingSendRequests.get(message.id);
29
+ if (!pending) {
30
+ return;
31
+ }
32
+ pendingSendRequests.delete(message.id);
33
+ if (message.ok) {
34
+ pending.resolve(message.result);
35
+ }
36
+ else {
37
+ pending.reject(new Error(String(message.error ?? "pm.sendRequest failed")));
38
+ }
39
+ }
40
+ });
41
+ const sendRequestProxy = (input) => new Promise((resolve, reject) => {
42
+ const id = nextRequestId++;
43
+ pendingSendRequests.set(id, { resolve, reject });
44
+ port.postMessage({ type: "sendRequest", id, input });
45
+ });
46
+ if (data.enableSendRequest) {
47
+ data.input.capabilities.extensions = {
48
+ ...(data.input.capabilities.extensions ?? {}),
49
+ sendRequest: { execute: sendRequestProxy },
50
+ };
51
+ }
52
+ void (async () => {
53
+ let result;
54
+ try {
55
+ result = await executeScript(data.input);
56
+ }
57
+ catch (error) {
58
+ result = {
59
+ success: false,
60
+ error: {
61
+ stage: data.input.stage ?? "script",
62
+ message: error instanceof Error ? error.message : String(error),
63
+ lineNumber: null,
64
+ column: null,
65
+ stack: error instanceof Error ? (error.stack ?? null) : null,
66
+ },
67
+ testResults: [],
68
+ variableMutations: [],
69
+ logs: [],
70
+ hasReturnValue: false,
71
+ };
72
+ }
73
+ if (result.hasReturnValue) {
74
+ result = { ...result, returnValue: jsonSafe(result.returnValue) };
75
+ }
76
+ port.postMessage({ type: "done", result });
77
+ })();
78
+ }
79
+ //# sourceMappingURL=worker-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker-entry.js","sourceRoot":"","sources":["../../src/script/worker-entry.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
1
  import type { EnvStore } from "../variables/envStore.js";
2
+ import type { ConnectionRuntimeMap, RequestDatabaseRuntimeConfig, RequestRedisRuntimeConfig } from "../host/connections.js";
3
+ import type { ScriptDbCapability, ScriptFeaturePolicy, ScriptRedisCapability } from "../script/types.js";
2
4
  export interface Collection {
3
5
  name: string;
4
6
  runnerSettings?: {
@@ -18,6 +20,8 @@ export interface RequestItem {
18
20
  body?: any;
19
21
  tests?: string;
20
22
  contracts?: any[];
23
+ database?: RequestDatabaseRuntimeConfig;
24
+ redis?: RequestRedisRuntimeConfig;
21
25
  }
22
26
  export interface ExecutionResult {
23
27
  requestId: string;
@@ -65,6 +69,8 @@ export interface RunRequestInput {
65
69
  request: RequestItem;
66
70
  env: EnvStore;
67
71
  previousResponse?: ExecuteRequestResult | null;
72
+ connections?: ConnectionRuntimeMap;
73
+ featurePolicy?: ScriptFeaturePolicy;
68
74
  }
69
75
  export interface RunRequestResult {
70
76
  result: ExecutionResult;
@@ -73,6 +79,8 @@ export interface RunRequestResult {
73
79
  export interface RunCollectionInput {
74
80
  collection: Collection;
75
81
  env?: EnvStore | Record<string, any>;
82
+ connections?: ConnectionRuntimeMap;
83
+ featurePolicy?: ScriptFeaturePolicy;
76
84
  onRequestStart?: (input: {
77
85
  request: RequestItem;
78
86
  index: number;
@@ -128,5 +136,8 @@ export interface ScriptRunContext {
128
136
  env: EnvStore;
129
137
  response?: ExecuteRequestResult | null;
130
138
  request?: ExecuteRequestInput | RequestItem;
139
+ db?: ScriptDbCapability;
140
+ redis?: ScriptRedisCapability;
141
+ featurePolicy?: ScriptFeaturePolicy;
131
142
  }
132
143
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}