@gate-forge/pack-http 0.7.0 → 0.8.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.
- package/README.md +53 -0
- package/dist/client-calls.d.ts +26 -0
- package/dist/client-calls.d.ts.map +1 -1
- package/dist/client-calls.js +479 -10
- package/dist/client-calls.js.map +1 -1
- package/dist/detector.js +11 -0
- package/dist/detector.js.map +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -109,6 +109,59 @@ wrapper's paths fully, or use a builder with `base`). The
|
|
|
109
109
|
`urlBuilders[].base` channel is unchanged: it is configuration-declared,
|
|
110
110
|
so the builder's base is part of the resolved value itself.
|
|
111
111
|
|
|
112
|
+
### Response field reads (bounded, file-local)
|
|
113
|
+
|
|
114
|
+
Every frontend-call fact carries `attributes.responseReads`: the fields
|
|
115
|
+
the call site reads off that call's own response, each with the location
|
|
116
|
+
of the read. It is the frontend half of the dropped-response-field proof
|
|
117
|
+
(a merged frontend read `invoice.dueDate` after the FastAPI model had
|
|
118
|
+
dropped it; every test mocked the response and the screen showed
|
|
119
|
+
nothing), and it is collected by the same bounded pass that resolves the
|
|
120
|
+
call target — no execution, no type checker, no cross-file inference.
|
|
121
|
+
|
|
122
|
+
The model is deliberately small:
|
|
123
|
+
|
|
124
|
+
- the call's own awaited result is followed through `await` and
|
|
125
|
+
parentheses; `<result>.data` is the payload (the axios/kit envelope) and
|
|
126
|
+
`<result>` alone is the envelope, so `res.status`/`res.headers` are not
|
|
127
|
+
fields;
|
|
128
|
+
- a name bound from either of those (`const r = await call`,
|
|
129
|
+
`const { data: d } = await call`, `const d = (await call).data`) is
|
|
130
|
+
followed by name inside the enclosing function-like — nested
|
|
131
|
+
function-likes included, so a `useEffect` callback still counts;
|
|
132
|
+
- `holder.<field>`, `holder.data.<field>`, `holder.data['<field>']` and
|
|
133
|
+
`holder['<field>']` are reads, as is every key of an object
|
|
134
|
+
destructuring of a holder or of `<holder>.data`;
|
|
135
|
+
- a `let` holder (reassigned before the read), a computed key
|
|
136
|
+
(`d[key]`), and a JavaScript member (`data.map`, `data.length`,
|
|
137
|
+
`status`) are never reads;
|
|
138
|
+
- a branch that opens on the call's OWN envelope (`ok`, `status`) is read
|
|
139
|
+
for its POLARITY, and only the failure arm is dropped: the body a
|
|
140
|
+
failure branch reads (`res.data?.detail`) is the server's ERROR
|
|
141
|
+
envelope, never the success model. `if (res.ok)`, `if (res.ok ===
|
|
142
|
+
true)`, `if (res.status >= 400)`, `> 399`, `!== 200`, `!== 201`, `< 400`,
|
|
143
|
+
`=== 200`, `<= 299` and their `!` negations all decide which arm runs,
|
|
144
|
+
so the success arm keeps its reads — `if (res.ok) setItems(res.data.
|
|
145
|
+
items)` is exactly the shape where a dropped field hides. A compound
|
|
146
|
+
condition (`!res.ok || res.status >= 500`), a comparison this pass
|
|
147
|
+
cannot read (`>= Math.min(400, limit)`) and a `statusText` test are
|
|
148
|
+
undecidable, so NEITHER arm is collected. A ternary is the same guard as
|
|
149
|
+
an `if` — `res.ok ? res.data.items : res.data?.detail` keeps the
|
|
150
|
+
success arm — and a ternary on anything else is not a guard at all: both
|
|
151
|
+
arms are ordinary success-path reads. A read after an early-return guard
|
|
152
|
+
(`if (!res.ok) { throw … }` … then the code) is collected as usual;
|
|
153
|
+
- a read that is one operand of a `||` / `??` chain carries that chain's
|
|
154
|
+
index, so the check judges the chain as the ONE decision it is:
|
|
155
|
+
`res.data?.invoice_id || res.data?.invoice?.id` is silent when the
|
|
156
|
+
model declares `invoice_id`, because `invoice` is its defensive
|
|
157
|
+
fallback. A chain in which no operand is declared is reported whole.
|
|
158
|
+
|
|
159
|
+
`gateforge check` compares these reads against the response model the
|
|
160
|
+
joined backend route declares and emits one **non-blocking**
|
|
161
|
+
`RESPONSE_FIELD_MISSING_FROM_MODEL` advisory per undeclared field. A call
|
|
162
|
+
nobody consumes emits no attribute at all, so it stays byte-identical to
|
|
163
|
+
before.
|
|
164
|
+
|
|
112
165
|
### Scan scoping (optional, strict, back-compatible)
|
|
113
166
|
|
|
114
167
|
All scoping keys are OPTIONAL; a config without them scans exactly as
|
package/dist/client-calls.d.ts
CHANGED
|
@@ -147,6 +147,25 @@ export declare function clientSymbolActiveIn(config: ClientScanConfig, name: str
|
|
|
147
147
|
* scope, `<symbol>.<verb>(path, handler)` can only be a router).
|
|
148
148
|
*/
|
|
149
149
|
export declare function activeClientSymbolNamesIn(config: ClientScanConfig, file: string): string[];
|
|
150
|
+
/**
|
|
151
|
+
* One field the call site reads off this call's response: the name
|
|
152
|
+
* exactly as the code writes it, and where that read happens. Collected
|
|
153
|
+
* by the same bounded static pass that resolves the call target —
|
|
154
|
+
* `.data.<field>`, `.data['<field>']`, and destructuring of the awaited
|
|
155
|
+
* result or of its payload, inside the enclosing function, same file.
|
|
156
|
+
*/
|
|
157
|
+
export interface ResponseRead {
|
|
158
|
+
field: string;
|
|
159
|
+
location: Location;
|
|
160
|
+
/**
|
|
161
|
+
* Index of the `||` / `??` fallback chain this operand belongs to, in
|
|
162
|
+
* source order within the call; absent for a read that stands alone.
|
|
163
|
+
* `res.data?.invoice_id || res.data?.invoice?.id` is one decision about
|
|
164
|
+
* ONE result, so its operands are judged together by the response-model
|
|
165
|
+
* check instead of one by one.
|
|
166
|
+
*/
|
|
167
|
+
chain?: number;
|
|
168
|
+
}
|
|
150
169
|
/** One discovered frontend call (one row per source callsite). */
|
|
151
170
|
export interface ClientCall {
|
|
152
171
|
method: HttpMethod;
|
|
@@ -166,6 +185,13 @@ export interface ClientCall {
|
|
|
166
185
|
/** Producing client, e.g. `fetch`, `axios`, `apiClient`, `apiGet`. */
|
|
167
186
|
framework: string;
|
|
168
187
|
location: Location;
|
|
188
|
+
/**
|
|
189
|
+
* Fields this call site reads off the response, in source order.
|
|
190
|
+
* Absent when the code reads none — the attribute is minted only when
|
|
191
|
+
* it says something, so a call with no read stays byte-identical to
|
|
192
|
+
* the pre-feature contract.
|
|
193
|
+
*/
|
|
194
|
+
responseReads?: ResponseRead[];
|
|
169
195
|
}
|
|
170
196
|
export interface ClientScanUnresolved {
|
|
171
197
|
code: typeof FRONTEND_CALL_TARGET_UNRESOLVED | typeof HTTP_METHOD_DYNAMIC | typeof HTTP_PATH_DYNAMIC;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-calls.d.ts","sourceRoot":"","sources":["../src/client-calls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,iBAAiB,EAElB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAED,4EAA4E;AAC5E,MAAM,WAAW,kBAAmB,SAAQ,mBAAmB;IAC7D,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,yEAAyE;AACzE,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;IAChE,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,uEAAuE;AACvE,MAAM,WAAW,gBAAiB,SAAQ,mBAAmB;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oEAAoE;IACpE,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,kBAAkB,CAAC,CAAC;IAC3D;;;OAGG;IACH,gBAAgB,CAAC,EAAE,aAAa,CAAC,qBAAqB,CAAC,CAAC;IACxD,oEAAoE;IACpE,WAAW,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC9C,yEAAyE;IACzE,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC;AAED,eAAO,MAAM,0BAA0B,EAAE,gBAAqB,CAAC;AAE/D;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAErF;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAErF;AAoBD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAGlG;AAsCD;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAO1F;
|
|
1
|
+
{"version":3,"file":"client-calls.d.ts","sourceRoot":"","sources":["../src/client-calls.ts"],"names":[],"mappings":"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"}
|
package/dist/client-calls.js
CHANGED
|
@@ -134,6 +134,470 @@ export function activeClientSymbolNamesIn(config, file) {
|
|
|
134
134
|
}
|
|
135
135
|
return [...names].sort();
|
|
136
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* The one payload property this model follows: the axios/kit response
|
|
139
|
+
* envelope whose `data` member carries the decoded body.
|
|
140
|
+
*/
|
|
141
|
+
const PAYLOAD_PROPERTY = 'data';
|
|
142
|
+
/**
|
|
143
|
+
* Members of `Response`, of the collection prototypes and of `Object`
|
|
144
|
+
* itself. A read of one of these is a JavaScript member, never a
|
|
145
|
+
* response-model field, so it is never collected — without this a
|
|
146
|
+
* `res.data.map(...)` on a list endpoint would read as a missing field.
|
|
147
|
+
*/
|
|
148
|
+
const NEVER_MODEL_FIELDS = {
|
|
149
|
+
at: true, catch: true, concat: true, constructor: true, entries: true, every: true,
|
|
150
|
+
filter: true, find: true, findIndex: true, flat: true, flatMap: true, finally: true,
|
|
151
|
+
forEach: true, get: true, has: true, headers: true, includes: true, indexOf: true,
|
|
152
|
+
join: true, keys: true, length: true, map: true, message: true, name: true, ok: true,
|
|
153
|
+
prototype: true, push: true, reduce: true, shift: true, slice: true, some: true,
|
|
154
|
+
sort: true, status: true, statusText: true, then: true, toJSON: true, toString: true,
|
|
155
|
+
unshift: true, values: true, valueOf: true,
|
|
156
|
+
};
|
|
157
|
+
/**
|
|
158
|
+
* Members of the response envelope that decide whether the call
|
|
159
|
+
* SUCCEEDED. A branch that opens on one of them of the call's own result
|
|
160
|
+
* is a guard: the error body a failure branch reads is the framework's,
|
|
161
|
+
* never the success model.
|
|
162
|
+
*/
|
|
163
|
+
const ENVELOPE_MEMBERS = {
|
|
164
|
+
ok: true,
|
|
165
|
+
status: true,
|
|
166
|
+
statusText: true,
|
|
167
|
+
};
|
|
168
|
+
/** The `ok` envelope member; its polarity is the whole verdict. */
|
|
169
|
+
const OK_MEMBER = 'ok';
|
|
170
|
+
/** The last status a successful call answers with (2xx/3xx). */
|
|
171
|
+
const SUCCESS_STATUS = 299;
|
|
172
|
+
/** The first status a failing call answers with. */
|
|
173
|
+
const FAILURE_STATUS = 400;
|
|
174
|
+
/** `||` and `??` are the two ways code writes a fallback chain. */
|
|
175
|
+
function chainOperator(kind) {
|
|
176
|
+
return kind === ts.SyntaxKind.BarBarToken || kind === ts.SyntaxKind.QuestionQuestionToken;
|
|
177
|
+
}
|
|
178
|
+
/** The numeric value of a boolean or numeric literal, else null. */
|
|
179
|
+
function literalValue(node) {
|
|
180
|
+
const expression = unwrapExpression(node);
|
|
181
|
+
if (expression.kind === ts.SyntaxKind.TrueKeyword)
|
|
182
|
+
return 1;
|
|
183
|
+
if (expression.kind === ts.SyntaxKind.FalseKeyword)
|
|
184
|
+
return 0;
|
|
185
|
+
if (ts.isNumericLiteral(expression)) {
|
|
186
|
+
const value = Number(expression.text);
|
|
187
|
+
return Number.isFinite(value) ? value : null;
|
|
188
|
+
}
|
|
189
|
+
return null;
|
|
190
|
+
}
|
|
191
|
+
/** The names a binding pattern binds, in source order. */
|
|
192
|
+
function bindingNames(name) {
|
|
193
|
+
if (ts.isIdentifier(name))
|
|
194
|
+
return [name.text];
|
|
195
|
+
const names = [];
|
|
196
|
+
for (const element of name.elements) {
|
|
197
|
+
if (ts.isOmittedExpression(element) || element.dotDotDotToken !== undefined)
|
|
198
|
+
continue;
|
|
199
|
+
names.push(...bindingNames(element.name));
|
|
200
|
+
}
|
|
201
|
+
return names;
|
|
202
|
+
}
|
|
203
|
+
/** The literal key a binding element or property names, or `''`. */
|
|
204
|
+
function propertyNameText(name) {
|
|
205
|
+
if (name === undefined)
|
|
206
|
+
return '';
|
|
207
|
+
if (ts.isIdentifier(name) || ts.isStringLiteralLike(name))
|
|
208
|
+
return name.text;
|
|
209
|
+
return '';
|
|
210
|
+
}
|
|
211
|
+
/** Strips `await`, parentheses and non-null assertions from an expression. */
|
|
212
|
+
function unwrapExpression(node) {
|
|
213
|
+
let current = node;
|
|
214
|
+
for (;;) {
|
|
215
|
+
const parent = current.parent;
|
|
216
|
+
if (parent === undefined)
|
|
217
|
+
return current;
|
|
218
|
+
if (ts.isAwaitExpression(parent) ||
|
|
219
|
+
ts.isParenthesizedExpression(parent) ||
|
|
220
|
+
parent.kind === ts.SyntaxKind.AsExpression ||
|
|
221
|
+
parent.kind === ts.SyntaxKind.NonNullExpression ||
|
|
222
|
+
parent.kind === ts.SyntaxKind.SatisfiesExpression) {
|
|
223
|
+
current = parent;
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
return current;
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* The bounded static read of the response fields one detected call is
|
|
231
|
+
* consumed through (plan 2026-09-25 Phase 4b item 5).
|
|
232
|
+
*
|
|
233
|
+
* The model is deliberately small and file-local, and it never guesses:
|
|
234
|
+
*
|
|
235
|
+
* - the call's own awaited result is followed through `await` and
|
|
236
|
+
* parentheses; `<result>.data` is the payload (axios/kit envelope) and
|
|
237
|
+
* `<result>` alone is the envelope;
|
|
238
|
+
* - a name bound from either of those (`const r = await call`,
|
|
239
|
+
* `const { data: d } = await call`, `const d = (await call).data`) is
|
|
240
|
+
* followed by NAME inside the enclosing function-like (nested
|
|
241
|
+
* function-likes included, so a `useEffect` callback still counts);
|
|
242
|
+
* - every `holder.<field>`, `holder.data.<field>`, `holder.data['<field>']`
|
|
243
|
+
* and `holder['<field>']` is a read, and so is each key of an object
|
|
244
|
+
* destructuring of a holder or of `<holder>.data`;
|
|
245
|
+
* - computed access (`d[key]`), a reassigned (`let`) holder, and a read
|
|
246
|
+
* of a JavaScript member (`data.map`, `data.length`, …) yield nothing;
|
|
247
|
+
* - a branch that opens on the call's OWN envelope (`if (res.ok)`,
|
|
248
|
+
* `if (!res.ok)`, `if (res.status >= 400)`, `res.ok ? … : …`) is read
|
|
249
|
+
* for its POLARITY, and only its FAILURE arm is not collected: the
|
|
250
|
+
* body a failure branch reads is the error envelope, not the success
|
|
251
|
+
* model. An undecidable condition (a compound test, a comparison this
|
|
252
|
+
* pass cannot read) drops BOTH arms. A read AFTER the guard is
|
|
253
|
+
* collected as usual;
|
|
254
|
+
* - a read that is one operand of a `||` / `??` chain carries the chain's
|
|
255
|
+
* index, so the response-model check can judge the whole chain at once
|
|
256
|
+
* instead of flagging a defensive fallback.
|
|
257
|
+
*
|
|
258
|
+
* A read is recorded once per field and location, in source order.
|
|
259
|
+
*/
|
|
260
|
+
function responseReadsOf(file, call, source) {
|
|
261
|
+
const reads = new Map();
|
|
262
|
+
const chainRoots = [];
|
|
263
|
+
// Reads the BINDING pass already saw (an inline `(await call).data.x`).
|
|
264
|
+
// They are recorded first and replayed once `add` knows the holders,
|
|
265
|
+
// which the binding pass is what discovers.
|
|
266
|
+
const bound = [];
|
|
267
|
+
let add = (field, node) => {
|
|
268
|
+
bound.push({ field, node });
|
|
269
|
+
};
|
|
270
|
+
const awaited = unwrapExpression(call);
|
|
271
|
+
const envelopeAccess = awaited.parent !== undefined &&
|
|
272
|
+
ts.isPropertyAccessExpression(awaited.parent) &&
|
|
273
|
+
awaited.parent.expression === awaited &&
|
|
274
|
+
awaited.parent.name.text === PAYLOAD_PROPERTY
|
|
275
|
+
? awaited.parent
|
|
276
|
+
: undefined;
|
|
277
|
+
const payload = envelopeAccess;
|
|
278
|
+
const holders = [];
|
|
279
|
+
bindHolder(awaited, false, holders, add);
|
|
280
|
+
if (payload !== undefined)
|
|
281
|
+
bindHolder(payload, true, holders, add);
|
|
282
|
+
const responseNames = new Set(holders.filter((h) => !h.payload).map((h) => h.name));
|
|
283
|
+
const payloadNames = new Set(holders.filter((h) => h.payload).map((h) => h.name));
|
|
284
|
+
/** Whether an expression IS the decoded payload of this call. */
|
|
285
|
+
const isPayload = (node) => {
|
|
286
|
+
const expression = unwrapExpression(node);
|
|
287
|
+
if (ts.isIdentifier(expression))
|
|
288
|
+
return payloadNames.has(expression.text);
|
|
289
|
+
return (ts.isPropertyAccessExpression(expression) &&
|
|
290
|
+
expression.name.text === PAYLOAD_PROPERTY &&
|
|
291
|
+
ts.isIdentifier(expression.expression) &&
|
|
292
|
+
responseNames.has(expression.expression.text));
|
|
293
|
+
};
|
|
294
|
+
let scope = source;
|
|
295
|
+
for (let node = call; node !== undefined; node = node.parent) {
|
|
296
|
+
if (ts.isFunctionLike(node)) {
|
|
297
|
+
scope = node;
|
|
298
|
+
break;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
// A branch that opens on the call's OWN envelope (`if (!res.ok)`,
|
|
302
|
+
// `if (res.status >= 400)`, `res.ok ? … : …`) is a guard: which side
|
|
303
|
+
// runs is not statically known, and the error body a failure branch
|
|
304
|
+
// reads is the framework's, not the success model. Nothing inside such a
|
|
305
|
+
// branch is a proven read of the success model — see the failure-path
|
|
306
|
+
// note in the module doc.
|
|
307
|
+
const guarded = new Set();
|
|
308
|
+
const isHolderName = (node) => ts.isIdentifier(node) && responseNames.has(node.text);
|
|
309
|
+
/** The envelope member of this call's own result an expression reads. */
|
|
310
|
+
const envelopeMember = (node) => ts.isPropertyAccessExpression(node) &&
|
|
311
|
+
isHolderName(node.expression) &&
|
|
312
|
+
ENVELOPE_MEMBERS[node.name.text] === true
|
|
313
|
+
? node.name.text
|
|
314
|
+
: null;
|
|
315
|
+
const mentionsEnvelope = (node) => {
|
|
316
|
+
if (envelopeMember(node) !== null)
|
|
317
|
+
return true;
|
|
318
|
+
let found = false;
|
|
319
|
+
const inspect = (at) => {
|
|
320
|
+
if (found)
|
|
321
|
+
return;
|
|
322
|
+
if (envelopeMember(at) !== null) {
|
|
323
|
+
found = true;
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
ts.forEachChild(at, inspect);
|
|
327
|
+
};
|
|
328
|
+
ts.forEachChild(node, inspect);
|
|
329
|
+
return found;
|
|
330
|
+
};
|
|
331
|
+
/**
|
|
332
|
+
* The polarity of an envelope guard, or null when the condition does not
|
|
333
|
+
* test this call's envelope at all.
|
|
334
|
+
*
|
|
335
|
+
* `if (res.ok)` / `if (res.ok === true)` / `if (res.status >= 400)` /
|
|
336
|
+
* `if (res.status !== 201)` and their negations are decided here, so the
|
|
337
|
+
* SUCCESS arm keeps its reads — the error envelope belongs to the
|
|
338
|
+
* failure arm only. A compound condition, a comparison this cannot
|
|
339
|
+
* read, or a `statusText`/`headers` test is `unknown`: neither arm is a
|
|
340
|
+
* proven read of the success model.
|
|
341
|
+
*/
|
|
342
|
+
const guardPolarity = (condition) => {
|
|
343
|
+
const expression = unwrapExpression(condition);
|
|
344
|
+
if (ts.isPrefixUnaryExpression(expression) && expression.operator === ts.SyntaxKind.ExclamationToken) {
|
|
345
|
+
const inner = guardPolarity(expression.operand);
|
|
346
|
+
if (inner === null || inner === 'unknown')
|
|
347
|
+
return inner;
|
|
348
|
+
return inner === 'success' ? 'failure' : 'success';
|
|
349
|
+
}
|
|
350
|
+
const bare = envelopeMember(expression);
|
|
351
|
+
if (bare !== null)
|
|
352
|
+
return bare === OK_MEMBER ? 'success' : 'unknown';
|
|
353
|
+
if (!ts.isBinaryExpression(expression)) {
|
|
354
|
+
return mentionsEnvelope(expression) ? 'unknown' : null;
|
|
355
|
+
}
|
|
356
|
+
const member = envelopeMember(expression.left);
|
|
357
|
+
if (member === null)
|
|
358
|
+
return mentionsEnvelope(expression) ? 'unknown' : null;
|
|
359
|
+
const expected = literalValue(expression.right);
|
|
360
|
+
if (expected === null)
|
|
361
|
+
return 'unknown';
|
|
362
|
+
const isOk = member === OK_MEMBER;
|
|
363
|
+
const kind = expression.operatorToken.kind;
|
|
364
|
+
const equality = kind === ts.SyntaxKind.EqualsEqualsToken || kind === ts.SyntaxKind.EqualsEqualsEqualsToken;
|
|
365
|
+
const inequality = kind === ts.SyntaxKind.ExclamationEqualsToken || kind === ts.SyntaxKind.ExclamationEqualsEqualsToken;
|
|
366
|
+
if (isOk) {
|
|
367
|
+
// A boolean compared with a boolean literal: `!==` is the negated
|
|
368
|
+
// equality, so `ok !== true` is the failure arm.
|
|
369
|
+
if (!equality && !inequality)
|
|
370
|
+
return 'unknown';
|
|
371
|
+
const satisfied = (succeeded) => {
|
|
372
|
+
const same = (succeeded ? 1 : 0) === expected;
|
|
373
|
+
return inequality ? !same : same;
|
|
374
|
+
};
|
|
375
|
+
if (satisfied(true) && !satisfied(false))
|
|
376
|
+
return 'success';
|
|
377
|
+
if (!satisfied(true) && satisfied(false))
|
|
378
|
+
return 'failure';
|
|
379
|
+
return 'unknown';
|
|
380
|
+
}
|
|
381
|
+
if (inequality) {
|
|
382
|
+
// `status !== 200` reads as "not the success I expected", which is
|
|
383
|
+
// the failure arm even though a 404 satisfies it too.
|
|
384
|
+
if (expected >= 200 && expected <= SUCCESS_STATUS)
|
|
385
|
+
return 'failure';
|
|
386
|
+
if (expected >= FAILURE_STATUS)
|
|
387
|
+
return 'success';
|
|
388
|
+
return 'unknown';
|
|
389
|
+
}
|
|
390
|
+
const succeeded = expected >= 200 && expected <= SUCCESS_STATUS;
|
|
391
|
+
const failed = expected >= FAILURE_STATUS;
|
|
392
|
+
switch (kind) {
|
|
393
|
+
case ts.SyntaxKind.EqualsEqualsToken:
|
|
394
|
+
case ts.SyntaxKind.EqualsEqualsEqualsToken:
|
|
395
|
+
if (succeeded)
|
|
396
|
+
return 'success';
|
|
397
|
+
if (failed)
|
|
398
|
+
return 'failure';
|
|
399
|
+
return 'unknown';
|
|
400
|
+
case ts.SyntaxKind.LessThanToken:
|
|
401
|
+
return SUCCESS_STATUS < expected ? 'success' : FAILURE_STATUS < expected ? 'failure' : 'unknown';
|
|
402
|
+
case ts.SyntaxKind.LessThanEqualsToken:
|
|
403
|
+
return SUCCESS_STATUS <= expected ? 'success' : FAILURE_STATUS <= expected ? 'failure' : 'unknown';
|
|
404
|
+
case ts.SyntaxKind.GreaterThanToken:
|
|
405
|
+
return SUCCESS_STATUS > expected ? 'success' : FAILURE_STATUS > expected ? 'failure' : 'unknown';
|
|
406
|
+
case ts.SyntaxKind.GreaterThanEqualsToken:
|
|
407
|
+
return SUCCESS_STATUS >= expected ? 'success' : FAILURE_STATUS >= expected ? 'failure' : 'unknown';
|
|
408
|
+
default:
|
|
409
|
+
return 'unknown';
|
|
410
|
+
}
|
|
411
|
+
};
|
|
412
|
+
const markGuards = (node) => {
|
|
413
|
+
if (ts.isIfStatement(node)) {
|
|
414
|
+
const polarity = guardPolarity(node.expression);
|
|
415
|
+
if (polarity === 'failure')
|
|
416
|
+
guarded.add(node.thenStatement);
|
|
417
|
+
else if (polarity === 'success' && node.elseStatement !== undefined) {
|
|
418
|
+
guarded.add(node.elseStatement);
|
|
419
|
+
}
|
|
420
|
+
else if (polarity === 'unknown') {
|
|
421
|
+
guarded.add(node.thenStatement);
|
|
422
|
+
if (node.elseStatement !== undefined)
|
|
423
|
+
guarded.add(node.elseStatement);
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
if (ts.isConditionalExpression(node)) {
|
|
427
|
+
// A ternary on the envelope is the same guard as an `if`: only its
|
|
428
|
+
// failure arm is the error envelope.
|
|
429
|
+
const polarity = guardPolarity(node.condition);
|
|
430
|
+
if (polarity === 'failure')
|
|
431
|
+
guarded.add(node.whenTrue);
|
|
432
|
+
else if (polarity === 'success')
|
|
433
|
+
guarded.add(node.whenFalse);
|
|
434
|
+
else if (polarity === 'unknown') {
|
|
435
|
+
guarded.add(node.whenTrue);
|
|
436
|
+
guarded.add(node.whenFalse);
|
|
437
|
+
}
|
|
438
|
+
}
|
|
439
|
+
ts.forEachChild(node, markGuards);
|
|
440
|
+
};
|
|
441
|
+
markGuards(scope);
|
|
442
|
+
/** Whether a node sits inside one of the guarded branch bodies. */
|
|
443
|
+
const insideGuard = (node) => {
|
|
444
|
+
for (let at = node; at !== undefined && at !== scope; at = at.parent) {
|
|
445
|
+
if (guarded.has(at))
|
|
446
|
+
return true;
|
|
447
|
+
}
|
|
448
|
+
return false;
|
|
449
|
+
};
|
|
450
|
+
/** The outermost `||` / `??` chain an operand belongs to, if any. */
|
|
451
|
+
const chainOf = (node) => {
|
|
452
|
+
for (let at = node; at !== undefined && at !== scope; at = at.parent) {
|
|
453
|
+
if (ts.isBinaryExpression(at) && chainOperator(at.operatorToken.kind))
|
|
454
|
+
return at;
|
|
455
|
+
}
|
|
456
|
+
return undefined;
|
|
457
|
+
};
|
|
458
|
+
add = (field, node) => {
|
|
459
|
+
if (field.length === 0 || NEVER_MODEL_FIELDS[field] === true)
|
|
460
|
+
return;
|
|
461
|
+
if (insideGuard(node))
|
|
462
|
+
return;
|
|
463
|
+
const location = locationOf(file, source, node);
|
|
464
|
+
const key = `${field}@${String(location.line)}:${String(location.col)}`;
|
|
465
|
+
if (reads.has(key))
|
|
466
|
+
return;
|
|
467
|
+
const root = chainOf(node);
|
|
468
|
+
if (root === undefined) {
|
|
469
|
+
reads.set(key, { field, location });
|
|
470
|
+
return;
|
|
471
|
+
}
|
|
472
|
+
let index = chainRoots.indexOf(root);
|
|
473
|
+
if (index < 0) {
|
|
474
|
+
chainRoots.push(root);
|
|
475
|
+
index = chainRoots.length - 1;
|
|
476
|
+
}
|
|
477
|
+
reads.set(key, { field, location, chain: index });
|
|
478
|
+
};
|
|
479
|
+
for (const read of bound)
|
|
480
|
+
add(read.field, read.node);
|
|
481
|
+
const visit = (node) => {
|
|
482
|
+
if (ts.isPropertyAccessExpression(node) && isPayload(node.expression)) {
|
|
483
|
+
add(node.name.text, node);
|
|
484
|
+
}
|
|
485
|
+
else if (ts.isElementAccessExpression(node) &&
|
|
486
|
+
ts.isStringLiteralLike(node.argumentExpression) &&
|
|
487
|
+
isPayload(node.expression)) {
|
|
488
|
+
add(node.argumentExpression.text, node);
|
|
489
|
+
}
|
|
490
|
+
else if (ts.isVariableDeclaration(node) &&
|
|
491
|
+
node.initializer !== undefined &&
|
|
492
|
+
ts.isObjectBindingPattern(node.name) &&
|
|
493
|
+
isPayload(node.initializer)) {
|
|
494
|
+
for (const element of node.name.elements) {
|
|
495
|
+
const field = bindingKey(element);
|
|
496
|
+
if (field.length > 0)
|
|
497
|
+
add(field, element);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
ts.forEachChild(node, visit);
|
|
501
|
+
};
|
|
502
|
+
visit(scope);
|
|
503
|
+
const ordered = [...reads.values()].sort((left, right) => {
|
|
504
|
+
const where = (left.location.file < right.location.file ? -1 : left.location.file > right.location.file ? 1 : 0) ||
|
|
505
|
+
left.location.line - right.location.line ||
|
|
506
|
+
left.location.col - right.location.col ||
|
|
507
|
+
(left.field < right.field ? -1 : left.field > right.field ? 1 : 0);
|
|
508
|
+
return where;
|
|
509
|
+
});
|
|
510
|
+
// Chain numbers are handed out in discovery order; renumber them by
|
|
511
|
+
// where each chain FIRST appears in source, so the fact is independent
|
|
512
|
+
// of the traversal.
|
|
513
|
+
const firstOf = (index) => ordered.find((read) => read.chain === index);
|
|
514
|
+
const chains = [...new Set(ordered.map((read) => read.chain))]
|
|
515
|
+
.filter((index) => index !== undefined)
|
|
516
|
+
.sort((left, right) => firstOf(left).location.line - firstOf(right).location.line ||
|
|
517
|
+
firstOf(left).location.col - firstOf(right).location.col);
|
|
518
|
+
const renumbered = new Map(chains.map((index, position) => [index, position]));
|
|
519
|
+
return ordered.map((read) => read.chain === undefined ? read : { ...read, chain: renumbered.get(read.chain) ?? read.chain });
|
|
520
|
+
/** The key a binding element pulls off the object it destructures. */
|
|
521
|
+
function bindingKey(element) {
|
|
522
|
+
const declared = propertyNameText(element.propertyName);
|
|
523
|
+
if (declared.length > 0)
|
|
524
|
+
return declared;
|
|
525
|
+
return ts.isIdentifier(element.name) ? element.name.text : '';
|
|
526
|
+
}
|
|
527
|
+
/**
|
|
528
|
+
* Records what the awaited result (or its `.data` payload) binds to:
|
|
529
|
+
* a name to follow, or — for a destructured payload — the field keys
|
|
530
|
+
* that destructuring itself reads. `status`/`headers` and every other
|
|
531
|
+
* envelope member are not response-model fields, so they are ignored.
|
|
532
|
+
*/
|
|
533
|
+
function bindHolder(node, isPayloadNode, into, addRead) {
|
|
534
|
+
const parent = node.parent;
|
|
535
|
+
if (parent === undefined)
|
|
536
|
+
return;
|
|
537
|
+
if (ts.isVariableDeclaration(parent) && parent.initializer === node) {
|
|
538
|
+
// A `let` holder can be reassigned before the read, so the name no
|
|
539
|
+
// longer provably holds this call's response; a `const` one does.
|
|
540
|
+
const declarationList = parent.parent;
|
|
541
|
+
const isConst = ts.isVariableDeclarationList(declarationList) &&
|
|
542
|
+
(ts.getCombinedNodeFlags(declarationList) & ts.NodeFlags.Const) !== 0;
|
|
543
|
+
if (!isConst)
|
|
544
|
+
return;
|
|
545
|
+
if (ts.isIdentifier(parent.name)) {
|
|
546
|
+
into.push({ name: parent.name.text, payload: isPayloadNode });
|
|
547
|
+
return;
|
|
548
|
+
}
|
|
549
|
+
// An array destructuring pulls ELEMENTS, not named fields, out of a
|
|
550
|
+
// response: there is no field name to compare against a model.
|
|
551
|
+
if (!ts.isObjectBindingPattern(parent.name))
|
|
552
|
+
return;
|
|
553
|
+
// `const { data: d } = await call` — the payload is one level in;
|
|
554
|
+
// every other envelope key is not a response-model field.
|
|
555
|
+
if (!isPayloadNode) {
|
|
556
|
+
for (const element of parent.name.elements) {
|
|
557
|
+
if (bindingKey(element) !== PAYLOAD_PROPERTY)
|
|
558
|
+
continue;
|
|
559
|
+
for (const name of bindingNames(element.name))
|
|
560
|
+
into.push({ name, payload: true });
|
|
561
|
+
}
|
|
562
|
+
return;
|
|
563
|
+
}
|
|
564
|
+
for (const element of parent.name.elements) {
|
|
565
|
+
const field = bindingKey(element);
|
|
566
|
+
if (field.length > 0)
|
|
567
|
+
addRead(field, element);
|
|
568
|
+
}
|
|
569
|
+
return;
|
|
570
|
+
}
|
|
571
|
+
if (ts.isBindingElement(parent) && parent.initializer === node) {
|
|
572
|
+
if (!isPayloadNode) {
|
|
573
|
+
if (bindingKey(parent) === PAYLOAD_PROPERTY && ts.isObjectBindingPattern(parent.name)) {
|
|
574
|
+
for (const name of bindingNames(parent.name))
|
|
575
|
+
into.push({ name, payload: true });
|
|
576
|
+
}
|
|
577
|
+
return;
|
|
578
|
+
}
|
|
579
|
+
if (ts.isObjectBindingPattern(parent.name)) {
|
|
580
|
+
// `const { data: { dueDate } } = await call` — the nested keys
|
|
581
|
+
// are the fields the body is read through.
|
|
582
|
+
for (const element of parent.name.elements) {
|
|
583
|
+
const field = bindingKey(element);
|
|
584
|
+
if (field.length > 0)
|
|
585
|
+
addRead(field, element);
|
|
586
|
+
}
|
|
587
|
+
return;
|
|
588
|
+
}
|
|
589
|
+
const key = bindingKey(parent);
|
|
590
|
+
if (key.length > 0)
|
|
591
|
+
addRead(key, parent);
|
|
592
|
+
return;
|
|
593
|
+
}
|
|
594
|
+
if (ts.isPropertyAccessExpression(parent) && parent.expression === node) {
|
|
595
|
+
// `(await call).data.<field>` reads one field of the body inline.
|
|
596
|
+
if (isPayloadNode)
|
|
597
|
+
addRead(parent.name.text, parent);
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
}
|
|
137
601
|
const VERB_METHODS = new Map([
|
|
138
602
|
['get', 'GET'],
|
|
139
603
|
['post', 'POST'],
|
|
@@ -323,10 +787,14 @@ function extractCall(call, file, config, table, model, calls, unresolved) {
|
|
|
323
787
|
if (source === undefined)
|
|
324
788
|
return;
|
|
325
789
|
const location = locationOf(file, source, call);
|
|
790
|
+
// The response fields THIS call site reads (plan 2026-09-25 Phase 4b
|
|
791
|
+
// item 5) — the same bounded, file-local pass, attached to whichever
|
|
792
|
+
// call shape below is recognized.
|
|
793
|
+
const reads = responseReadsOf(file, call, source);
|
|
326
794
|
const expression = call.expression;
|
|
327
795
|
// fetch(url[, {method}])
|
|
328
796
|
if (ts.isIdentifier(expression) && expression.text === 'fetch') {
|
|
329
|
-
extractClientCall(call, 'fetch', 'GET', file, config, table, calls, unresolved, location);
|
|
797
|
+
extractClientCall(call, 'fetch', 'GET', file, config, table, calls, unresolved, location, undefined, reads);
|
|
330
798
|
return;
|
|
331
799
|
}
|
|
332
800
|
// axios.get(url), apiClient.post(url), window.fetch(url)
|
|
@@ -335,7 +803,7 @@ function extractCall(call, file, config, table, model, calls, unresolved) {
|
|
|
335
803
|
const verb = expression.name.text.toLowerCase();
|
|
336
804
|
const isFetchObject = objectName === 'window' && expression.name.text === 'fetch';
|
|
337
805
|
if (isFetchObject) {
|
|
338
|
-
extractClientCall(call, 'fetch', 'GET', file, config, table, calls, unresolved, location);
|
|
806
|
+
extractClientCall(call, 'fetch', 'GET', file, config, table, calls, unresolved, location, undefined, reads);
|
|
339
807
|
return;
|
|
340
808
|
}
|
|
341
809
|
// Per-symbol scoping (phase 3): the symbol counts only where its
|
|
@@ -347,7 +815,7 @@ function extractCall(call, file, config, table, model, calls, unresolved) {
|
|
|
347
815
|
// proven literal baseURL joins into the emitted path (fetch has no
|
|
348
816
|
// instance and never joins).
|
|
349
817
|
const baseURL = table.instanceBaseURL(objectName, file);
|
|
350
|
-
extractClientCall(call, objectName, method, file, config, table, calls, unresolved, location, baseURL);
|
|
818
|
+
extractClientCall(call, objectName, method, file, config, table, calls, unresolved, location, baseURL, reads);
|
|
351
819
|
return;
|
|
352
820
|
}
|
|
353
821
|
}
|
|
@@ -368,7 +836,7 @@ function extractCall(call, file, config, table, model, calls, unresolved) {
|
|
|
368
836
|
}
|
|
369
837
|
if (configCall !== null && framework !== null) {
|
|
370
838
|
const baseURL = table.instanceBaseURL(framework, file);
|
|
371
|
-
extractConfiguredCall(configCall, framework, file, config, table, calls, unresolved, location, baseURL);
|
|
839
|
+
extractConfiguredCall(configCall, framework, file, config, table, calls, unresolved, location, baseURL, reads);
|
|
372
840
|
return;
|
|
373
841
|
}
|
|
374
842
|
// Configured wrapper: the declaration must exist in the scanned set as
|
|
@@ -408,7 +876,7 @@ function extractCall(call, file, config, table, model, calls, unresolved) {
|
|
|
408
876
|
});
|
|
409
877
|
return;
|
|
410
878
|
}
|
|
411
|
-
resolveAndRecord(urlNode, wrapperConfig.name, wrapperConfig.method, file, config, bound, calls, unresolved, location);
|
|
879
|
+
resolveAndRecord(urlNode, wrapperConfig.name, wrapperConfig.method, file, config, bound, calls, unresolved, location, reads);
|
|
412
880
|
return;
|
|
413
881
|
}
|
|
414
882
|
// A module-scope function whose body issues client calls IS a client
|
|
@@ -468,7 +936,7 @@ class BoundTable {
|
|
|
468
936
|
return this.inner.evaluate(node, file);
|
|
469
937
|
}
|
|
470
938
|
}
|
|
471
|
-
function extractClientCall(call, framework, defaultMethod, file, config, table, calls, unresolved, location, baseURL) {
|
|
939
|
+
function extractClientCall(call, framework, defaultMethod, file, config, table, calls, unresolved, location, baseURL, reads = []) {
|
|
472
940
|
const urlNode = call.arguments[0];
|
|
473
941
|
if (urlNode === undefined) {
|
|
474
942
|
unresolved.push({
|
|
@@ -515,9 +983,9 @@ function extractClientCall(call, framework, defaultMethod, file, config, table,
|
|
|
515
983
|
}
|
|
516
984
|
if (method === null)
|
|
517
985
|
return;
|
|
518
|
-
resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, baseURL);
|
|
986
|
+
resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, reads, baseURL);
|
|
519
987
|
}
|
|
520
|
-
function extractConfiguredCall(call, framework, file, config, table, calls, unresolved, location, baseURL) {
|
|
988
|
+
function extractConfiguredCall(call, framework, file, config, table, calls, unresolved, location, baseURL, reads = []) {
|
|
521
989
|
const configNode = call.arguments[0];
|
|
522
990
|
if (configNode === undefined || !ts.isObjectLiteralExpression(configNode)) {
|
|
523
991
|
unresolved.push({
|
|
@@ -564,7 +1032,7 @@ function extractConfiguredCall(call, framework, file, config, table, calls, unre
|
|
|
564
1032
|
});
|
|
565
1033
|
return;
|
|
566
1034
|
}
|
|
567
|
-
resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, baseURL);
|
|
1035
|
+
resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, reads, baseURL);
|
|
568
1036
|
}
|
|
569
1037
|
/**
|
|
570
1038
|
* axios `isAbsoluteURL`: a call URL beginning `<scheme>://` or a
|
|
@@ -596,7 +1064,7 @@ function joinInstanceBaseURL(baseURL, callPath) {
|
|
|
596
1064
|
joined: baseURL,
|
|
597
1065
|
};
|
|
598
1066
|
}
|
|
599
|
-
function resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, baseURL) {
|
|
1067
|
+
function resolveAndRecord(urlNode, framework, method, file, config, table, calls, unresolved, location, reads = [], baseURL) {
|
|
600
1068
|
const resolved = table.evaluate(urlNode, file);
|
|
601
1069
|
if (resolved.kind === 'unresolved') {
|
|
602
1070
|
unresolved.push({
|
|
@@ -623,6 +1091,7 @@ function resolveAndRecord(urlNode, framework, method, file, config, table, calls
|
|
|
623
1091
|
...(joined.joined !== undefined ? { joinedBaseURL: joined.joined } : {}),
|
|
624
1092
|
framework,
|
|
625
1093
|
location,
|
|
1094
|
+
...(reads.length > 0 ? { responseReads: reads } : {}),
|
|
626
1095
|
});
|
|
627
1096
|
}
|
|
628
1097
|
function normalizeHttpMethodValue(raw) {
|
package/dist/client-calls.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-calls.js","sourceRoot":"","sources":["../src/client-calls.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client-calls.js","sourceRoot":"","sources":["../src/client-calls.ts"],"names":[],"mappings":"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"}
|
package/dist/detector.js
CHANGED
|
@@ -341,6 +341,10 @@ function contractFactFromClientCall(clientCall, sourceRel) {
|
|
|
341
341
|
location,
|
|
342
342
|
idSuffix: `${sourceRel}:${clientCall.location.line}:${clientCall.location.col}`,
|
|
343
343
|
callsites: [`${clientCall.location.file}:${clientCall.location.line}:${clientCall.location.col}`],
|
|
344
|
+
// The response fields this call site reads (plan 2026-09-25 Phase 4b
|
|
345
|
+
// item 5). Omitted entirely when the code reads none, so a call
|
|
346
|
+
// without a read emits exactly the bytes it emitted before.
|
|
347
|
+
...(clientCall.responseReads === undefined ? {} : { responseReads: clientCall.responseReads }),
|
|
344
348
|
});
|
|
345
349
|
}
|
|
346
350
|
function buildFact(input) {
|
|
@@ -377,6 +381,13 @@ function buildFact(input) {
|
|
|
377
381
|
};
|
|
378
382
|
if (input.callsites !== undefined)
|
|
379
383
|
attributes['callsites'] = input.callsites;
|
|
384
|
+
if (input.responseReads !== undefined) {
|
|
385
|
+
attributes['responseReads'] = input.responseReads.map((read) => ({
|
|
386
|
+
field: read.field,
|
|
387
|
+
location: { file: read.location.file, line: read.location.line, col: read.location.col },
|
|
388
|
+
...(read.chain === undefined ? {} : { chain: read.chain }),
|
|
389
|
+
}));
|
|
390
|
+
}
|
|
380
391
|
if (input.handler !== undefined && input.handler.length > 0)
|
|
381
392
|
attributes['handlerSymbol'] = input.handler;
|
|
382
393
|
return {
|
package/dist/detector.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../src/detector.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gate-forge/pack-http",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"description": "Generic HTTP exposure pack: TS detector for route registrations (Express, Fastify, Hono, NestJS), bounded static dataflow for frontend API-client calls (fetch, Axios, instances, wrappers, constants, URL builders), http.contract evidence facts plus exposure/lifecycle signals (ADR 0004, plan phases 3-4).",
|
|
6
6
|
"type": "module",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"test": "vitest run"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@gate-forge/core": "^0.
|
|
30
|
-
"@gate-forge/http-contract": "^0.
|
|
31
|
-
"@gate-forge/plugin-protocol": "^0.
|
|
29
|
+
"@gate-forge/core": "^0.8.0",
|
|
30
|
+
"@gate-forge/http-contract": "^0.8.0",
|
|
31
|
+
"@gate-forge/plugin-protocol": "^0.8.0",
|
|
32
32
|
"typescript": "^5.9.2",
|
|
33
33
|
"zod": "^4.1.5"
|
|
34
34
|
},
|