carrick 0.3.65 → 0.3.66

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.
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/init/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/init/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carrick",
3
- "version": "0.3.65",
3
+ "version": "0.3.66",
4
4
  "description": "The API contract index for a TypeScript workspace: what the other services do with the routes and calls in the file you are editing, in your editor and in your agent's context",
5
5
  "keywords": [
6
6
  "typescript",
@@ -49,17 +49,19 @@
49
49
  "build": "tsc -p tsconfig.build.json"
50
50
  },
51
51
  "dependencies": {
52
+ "@clack/prompts": "1.8.1",
53
+ "picocolors": "1.1.1",
52
54
  "pnpm": "10.34.5",
53
55
  "ts-morph": "^25.0.1",
54
56
  "typescript": "^5.8.0",
55
57
  "zod": "^3.23.0"
56
58
  },
57
59
  "optionalDependencies": {
58
- "@carrick-tools/cli-darwin-arm64": "0.3.65",
59
- "@carrick-tools/cli-darwin-x64": "0.3.65",
60
- "@carrick-tools/cli-linux-arm64": "0.3.65",
61
- "@carrick-tools/cli-linux-x64": "0.3.65",
62
- "@carrick-tools/cli-win32-x64": "0.3.65"
60
+ "@carrick-tools/cli-darwin-arm64": "0.3.66",
61
+ "@carrick-tools/cli-darwin-x64": "0.3.66",
62
+ "@carrick-tools/cli-linux-arm64": "0.3.66",
63
+ "@carrick-tools/cli-linux-x64": "0.3.66",
64
+ "@carrick-tools/cli-win32-x64": "0.3.66"
63
65
  },
64
66
  "devDependencies": {
65
67
  "@types/node": "^24.13.3",
@@ -57,3 +57,13 @@ export declare const MACHINERY_MEMBER_INDICATORS: Set<string>;
57
57
  * machinery type far inside from over-abstaining.
58
58
  */
59
59
  export declare function typeIsOrContainsMachinery(checker: ts.TypeChecker, type: ts.Type, node: ts.Node): boolean;
60
+ /**
61
+ * True when a declaration file path is runtime/library origin: a TS lib
62
+ * (`lib.*.d.ts`), an installed package, or the runtime declarations Carrick
63
+ * materialises for a non-Node runtime under `.carrick/deno/` (carrick#1017 —
64
+ * there the platform `Response` lives in Carrick's own generated file, so
65
+ * without this the gate stayed shut and the wrapper was published as a
66
+ * contract). Lockstep mirror of `isExternalOrigin` in `type-inferrer.ts`;
67
+ * `machinery-indicator-mirror.test.ts` guards the pair.
68
+ */
69
+ export declare function isExternalOrigin(filePath: string): boolean;
@@ -127,21 +127,31 @@ function isFrameworkMachinery(checker, type) {
127
127
  return symbolIsLibOrExternalOrigin(checker, type.getSymbol() ?? type.aliasSymbol);
128
128
  }
129
129
  /**
130
- * True when the symbol is declared in a TS lib file (`lib.*.d.ts`) or under
131
- * `node_modules`. Works on a bare checkout: the DOM `Response`/`Request`
132
- * resolve from the bundled `lib.dom.d.ts` even with no installed dependencies.
130
+ * True when a declaration file path is runtime/library origin: a TS lib
131
+ * (`lib.*.d.ts`), an installed package, or the runtime declarations Carrick
132
+ * materialises for a non-Node runtime under `.carrick/deno/` (carrick#1017 —
133
+ * there the platform `Response` lives in Carrick's own generated file, so
134
+ * without this the gate stayed shut and the wrapper was published as a
135
+ * contract). Lockstep mirror of `isExternalOrigin` in `type-inferrer.ts`;
136
+ * `machinery-indicator-mirror.test.ts` guards the pair.
137
+ */
138
+ export function isExternalOrigin(filePath) {
139
+ const normalized = filePath.replace(/\\/g, '/');
140
+ return (normalized.includes('/node_modules/') ||
141
+ /\/lib\.[^/]*\.d\.ts$/.test(normalized) ||
142
+ normalized.includes('/.carrick/deno/'));
143
+ }
144
+ /**
145
+ * True when the symbol is declared in a runtime/library origin. Works on a bare
146
+ * checkout: the DOM `Response`/`Request` resolve from the bundled
147
+ * `lib.dom.d.ts` even with no installed dependencies.
133
148
  */
134
149
  function symbolIsLibOrExternalOrigin(checker, symbol) {
135
150
  if (!symbol) {
136
151
  return false;
137
152
  }
138
- const isExternalPath = (filePath) => {
139
- const normalized = filePath.replace(/\\/g, '/');
140
- return (normalized.includes('/node_modules/') ||
141
- /\/lib\.[^/]*\.d\.ts$/.test(normalized));
142
- };
143
153
  for (const decl of symbol.getDeclarations() ?? []) {
144
- if (isExternalPath(decl.getSourceFile().fileName)) {
154
+ if (isExternalOrigin(decl.getSourceFile().fileName)) {
145
155
  return true;
146
156
  }
147
157
  }
@@ -38,6 +38,24 @@ import type { InferRequestItem, InferResult, ExtractionConfig } from './types.js
38
38
  * test (`machinery-indicator-mirror.test.ts`) asserts the two sets stay equal.
39
39
  */
40
40
  export declare const MACHINERY_MEMBER_INDICATORS: Set<string>;
41
+ /**
42
+ * True when a declaration file path is runtime/library origin rather than user
43
+ * source: a TypeScript lib (`lib.dom.d.ts`), an installed package, or the
44
+ * runtime declarations Carrick itself materialises for a non-Node runtime
45
+ * (`.carrick/deno/<hash>/runtime.d.ts`, and the remote modules cached beside
46
+ * it).
47
+ *
48
+ * The third case is carrick#1017: on a Deno service the platform `Response`
49
+ * is declared in Carrick's own generated runtime file, which is neither a
50
+ * `lib.*.d.ts` nor under `node_modules`, so the machinery origin gate stayed
51
+ * shut and every route published the fetch `Response` wrapper as its response
52
+ * contract. The path is Carrick's own artefact, not a framework name.
53
+ *
54
+ * Kept in lockstep with `capture/machinery.ts`'s copy (the capture seam forbids
55
+ * sharing a module across it); `machinery-indicator-mirror.test.ts` guards the
56
+ * pair.
57
+ */
58
+ export declare function isExternalOrigin(filePath: string): boolean;
41
59
  /**
42
60
  * Options for TypeInferrer construction
43
61
  */
@@ -125,6 +143,13 @@ export declare class TypeInferrer {
125
143
  private extractBindingFromCall;
126
144
  private extractBindingNames;
127
145
  private getPrimaryBindingNode;
146
+ /**
147
+ * The zero-argument `.json()` body read on this identifier — `res` in
148
+ * `await res.json()` — or `undefined` (carrick#1017). The JSON body of an
149
+ * HTTP response is read exactly this way whatever produced the response, so
150
+ * the shape is structural, not a framework's name.
151
+ */
152
+ private bodyReadOnReceiver;
128
153
  private collectDefUseNodes;
129
154
  private expressionUsesNames;
130
155
  private isIdentifierUsage;
@@ -243,10 +268,12 @@ export declare class TypeInferrer {
243
268
  */
244
269
  private hasMachineryIndicatorThreshold;
245
270
  /**
246
- * True when the symbol is declared in a TypeScript lib file (`lib.*.d.ts`) or
247
- * under `node_modules` — i.e. framework/runtime machinery, not user source.
248
- * Works on a bare checkout: the DOM `Response`/`Request` resolve from the
249
- * bundled `lib.dom.d.ts` even with no installed dependencies.
271
+ * True when the symbol is declared in a TypeScript lib file (`lib.*.d.ts`),
272
+ * under `node_modules`, or in the runtime declarations Carrick materialises
273
+ * for a non-Node runtime under `.carrick/deno/` — i.e. framework/runtime
274
+ * machinery, not user source. Works on a bare checkout: the DOM
275
+ * `Response`/`Request` resolve from the bundled `lib.dom.d.ts` even with no
276
+ * installed dependencies.
250
277
  */
251
278
  private symbolIsLibOrExternalOrigin;
252
279
  /**
@@ -371,6 +398,18 @@ export declare class TypeInferrer {
371
398
  * expression yields an argument type this may read.
372
399
  */
373
400
  private recoverPayloadFromReturnStatements;
401
+ /**
402
+ * The response payload carried by a set of response-carrying expressions —
403
+ * a handler's return expressions, or the single expression a producer
404
+ * response locator resolved to (carrick#1017).
405
+ *
406
+ * Each expression is first split into its BRANCHES, so a route that answers
407
+ * `found ? json(entry) : json(problem, { status: 404 })` contributes both
408
+ * sides: the payload rule reads each one, the error branch drops out on its
409
+ * stated status, and what survives is joined as a union exactly as several
410
+ * return statements are.
411
+ */
412
+ private recoverPayloadFromResponseExpressions;
374
413
  /**
375
414
  * The expressions a function returns, excluding returns belonging to nested
376
415
  * functions (a `.map(x => …)` callback returns a row, not the response).
@@ -473,6 +512,17 @@ export declare class TypeInferrer {
473
512
  * a shared response contract without widening the literal.
474
513
  */
475
514
  private statedTypeNodeOf;
515
+ /**
516
+ * True when an object literal argument is response INIT rather than a body:
517
+ * every property it declares is one the standard `ResponseInit` declares
518
+ * (`status`, `statusText`, `headers`), and it states at least one of them as
519
+ * init really does — a numeric status in the HTTP range, or headers.
520
+ *
521
+ * A payload that merely has a `status` member of its own (`{ status: "ok",
522
+ * service: "ledger" }`) declares members init does not, or states `status` as
523
+ * something other than an HTTP code, so it stays a payload.
524
+ */
525
+ private statesResponseInit;
476
526
  /**
477
527
  * True when an argument states a >= 400 status: an options object carrying
478
528
  * `status`/`statusCode`, or a bare status code (`send(body, 404)`).
@@ -498,6 +548,18 @@ export declare class TypeInferrer {
498
548
  * because the annotation is exactly what the recovery wants to read.
499
549
  */
500
550
  private peelTransparentExpression;
551
+ /**
552
+ * The branches a single response expression can take — one entry for a plain
553
+ * expression, one per side of a conditional (carrick#1017).
554
+ *
555
+ * `return entry ? json(entry) : json({ error }, { status: 404 })` is one
556
+ * return statement holding two responses. Read whole, its type is the
557
+ * transport wrapper both sides share and the payload is lost; read per
558
+ * branch, each side goes through the ordinary payload rule, which is also
559
+ * what drops the error branch on its stated status. Nested conditionals are
560
+ * followed to a small depth; anything else is returned as itself.
561
+ */
562
+ private expandResponseBranches;
501
563
  /**
502
564
  * The deterministic source symbol of a resolved type (`Payment` for a payload
503
565
  * typed `Payment`), or `undefined` when there is no single user-defined
@@ -112,6 +112,67 @@ export const MACHINERY_MEMBER_INDICATORS = new Set([
112
112
  ]);
113
113
  /** Machinery needs at least this many indicator members to be recognized. */
114
114
  const MACHINERY_INDICATOR_THRESHOLD = 3;
115
+ /**
116
+ * True when a binary expression COMPARES rather than assigns or computes: its
117
+ * value is a `boolean` the operator manufactured, never a payload
118
+ * (carrick#1017).
119
+ */
120
+ function isComparisonExpression(expr) {
121
+ switch (expr.getOperatorToken().getKind()) {
122
+ case SyntaxKind.EqualsEqualsToken:
123
+ case SyntaxKind.EqualsEqualsEqualsToken:
124
+ case SyntaxKind.ExclamationEqualsToken:
125
+ case SyntaxKind.ExclamationEqualsEqualsToken:
126
+ case SyntaxKind.LessThanToken:
127
+ case SyntaxKind.LessThanEqualsToken:
128
+ case SyntaxKind.GreaterThanToken:
129
+ case SyntaxKind.GreaterThanEqualsToken:
130
+ case SyntaxKind.InstanceOfKeyword:
131
+ case SyntaxKind.InKeyword:
132
+ return true;
133
+ default:
134
+ return false;
135
+ }
136
+ }
137
+ /**
138
+ * How deep the response-branch split (carrick#1017) follows nested
139
+ * conditionals. Two levels covers `a ? x : b ? y : z`; deeper nesting is a
140
+ * dispatch table, not a response contract.
141
+ */
142
+ const RESPONSE_BRANCH_MAX_DEPTH = 2;
143
+ /**
144
+ * The members the standard response-init object declares. An argument beside
145
+ * the body whose properties are all from this set is telling the platform how
146
+ * to send the response, not what to send (carrick#1017).
147
+ */
148
+ const RESPONSE_INIT_MEMBER_NAMES = new Set([
149
+ 'status',
150
+ 'statusText',
151
+ 'headers',
152
+ ]);
153
+ /**
154
+ * True when a declaration file path is runtime/library origin rather than user
155
+ * source: a TypeScript lib (`lib.dom.d.ts`), an installed package, or the
156
+ * runtime declarations Carrick itself materialises for a non-Node runtime
157
+ * (`.carrick/deno/<hash>/runtime.d.ts`, and the remote modules cached beside
158
+ * it).
159
+ *
160
+ * The third case is carrick#1017: on a Deno service the platform `Response`
161
+ * is declared in Carrick's own generated runtime file, which is neither a
162
+ * `lib.*.d.ts` nor under `node_modules`, so the machinery origin gate stayed
163
+ * shut and every route published the fetch `Response` wrapper as its response
164
+ * contract. The path is Carrick's own artefact, not a framework name.
165
+ *
166
+ * Kept in lockstep with `capture/machinery.ts`'s copy (the capture seam forbids
167
+ * sharing a module across it); `machinery-indicator-mirror.test.ts` guards the
168
+ * pair.
169
+ */
170
+ export function isExternalOrigin(filePath) {
171
+ const normalized = filePath.replace(/\\/g, '/');
172
+ return (normalized.includes('/node_modules/') ||
173
+ /\/lib\.[^/]*\.d\.ts$/.test(normalized) ||
174
+ normalized.includes('/.carrick/deno/'));
175
+ }
115
176
  /**
116
177
  * How far the response-helper recovery (carrick#631) descends through nested
117
178
  * calls looking for the payload argument. `cors(request, json(payload))` needs
@@ -566,6 +627,44 @@ export class TypeInferrer {
566
627
  return this.buildFunctionReturnInferredType(request, registryHandler, extractionConfig, true);
567
628
  }
568
629
  }
630
+ // carrick#1017: the located expression evaluates to the transport wrapper
631
+ // itself — `Response.json(entry)`, `new Response(JSON.stringify(entry))`,
632
+ // `ctx.json(entry)` all have the platform `Response` as their type, and a
633
+ // conditional over two of them has it on both sides. Publishing that type
634
+ // reports the fetch API (`headers`, `ok`, `status`, `json(): Promise<any>`)
635
+ // as the endpoint's response contract, and every consumer reading the real
636
+ // body is then told its type is missing those members. The body is in the
637
+ // ARGUMENT, so read it there — through the same payload rule the
638
+ // function-return path uses, which splits the conditional, drops the
639
+ // branch whose sibling options object states a >= 400 status, and joins
640
+ // what survives. When it recovers nothing the row stays unresolved below:
641
+ // no contract is published off the wrapper either way.
642
+ const locatedType = node.getType();
643
+ const locatedUnwrap = this.unwrapTypeWithConfig(locatedType, node, extractionConfig);
644
+ const machineryAnchor = locatedUnwrap.verifiedMachinery === true ||
645
+ (!locatedUnwrap.wasUnwrapped &&
646
+ this.typeIsOrContainsResponseMachinery(this.unwrapPromiseType(locatedType)));
647
+ if (machineryAnchor) {
648
+ const recovered = this.recoverPayloadFromResponseExpressions([node], false);
649
+ if (recovered) {
650
+ this.log(`Response payload at ${request.file_path}:${request.line_number} is the ` +
651
+ "transport wrapper; recovered the body from the response call's argument");
652
+ const recoveredAnchor = recovered.anchorType
653
+ ? this.unwrapArrayLevels(recovered.anchorType)
654
+ : undefined;
655
+ const resolvedSymbol = recoveredAnchor
656
+ ? this.primaryTypeSymbol(recoveredAnchor.element)
657
+ : undefined;
658
+ const stated = recovered.statedTypeNode;
659
+ const writtenAnchor = resolvedSymbol === undefined && stated
660
+ ? this.writtenAnchorOf(stated)
661
+ : undefined;
662
+ return this.createInferredType(request, recovered.typeString, recovered.isExplicit, this.getNodeLocation(recovered.node), undefined, resolvedSymbol ?? writtenAnchor?.symbol, writtenAnchor ? writtenAnchor.depth : recoveredAnchor?.depth, writtenAnchor?.source);
663
+ }
664
+ this.log(`Response payload at ${request.file_path}:${request.line_number} is the ` +
665
+ 'transport wrapper and no branch states a body; leaving it unresolved');
666
+ return null;
667
+ }
569
668
  // The resolved node IS the payload subexpression in the MVP schema.
570
669
  // Transitional fallback: if a caller still supplies a bare call expression
571
670
  // (e.g., `res.json(users)`), drill to its first argument. No method-name list.
@@ -610,10 +709,11 @@ export class TypeInferrer {
610
709
  }
611
710
  else {
612
711
  const resolved = this.unwrapPromiseType(payloadType);
613
- // Same carrick#371 fail-closed guard as the function-return path: a
614
- // payload that IS or CONTAINS framework machinery (a raw `Response`, a
615
- // `{ response: Response; ... }` envelope) is not a contract. No rule
616
- // recovered a payload, so abstain rather than emit the machinery.
712
+ // The carrick#371 fail-closed guard. The LOCATED expression is handled
713
+ // above, where a wrapper yields its body; this catches the argument the
714
+ // drill reached being machinery itself (`hand(request, upstream)`),
715
+ // which no response call carries a body for. Abstain rather than emit
716
+ // the machinery.
617
717
  if (this.typeIsOrContainsResponseMachinery(resolved)) {
618
718
  this.log(`Response payload at ${request.file_path}:${request.line_number} is or contains ` +
619
719
  'framework machinery (Response/Request-shaped); abstaining rather than ' +
@@ -940,6 +1040,28 @@ export class TypeInferrer {
940
1040
  for (const expr of candidates) {
941
1041
  if (expr.getStart() <= startPos)
942
1042
  continue;
1043
+ // carrick#1017: a comparison is `boolean` by construction, so it is
1044
+ // never the payload a call yields. `const res = await fetch(url); if
1045
+ // (res.status === 404) return null; return await res.json() as Entry`
1046
+ // otherwise ends on the status check — the expected response type of
1047
+ // that call was published as `boolean`, and the producer's real body
1048
+ // was reported as not assignable to it.
1049
+ if (Node.isBinaryExpression(expr) && isComparisonExpression(expr)) {
1050
+ continue;
1051
+ }
1052
+ // The body a caller reads OUT of a transport response IS the payload
1053
+ // of the call that produced it: `res.json()` on the tracked binding,
1054
+ // with whatever `as T` the source states around it read by
1055
+ // `extractExplicitTypeFromAncestor` below. A bare identifier never
1056
+ // matches `expressionUsesNames` (it tests DESCENDANTS), so without
1057
+ // this the body read is invisible to the def-use walk.
1058
+ if (Node.isIdentifier(expr) && this.isIdentifierUsage(expr, currentNames)) {
1059
+ const bodyRead = this.bodyReadOnReceiver(expr);
1060
+ if (bodyRead) {
1061
+ lastNode = bodyRead;
1062
+ continue;
1063
+ }
1064
+ }
943
1065
  if (Node.isVariableDeclaration(expr)) {
944
1066
  const initializer = expr.getInitializer();
945
1067
  if (initializer &&
@@ -1023,6 +1145,29 @@ export class TypeInferrer {
1023
1145
  }
1024
1146
  return nameNode;
1025
1147
  }
1148
+ /**
1149
+ * The zero-argument `.json()` body read on this identifier — `res` in
1150
+ * `await res.json()` — or `undefined` (carrick#1017). The JSON body of an
1151
+ * HTTP response is read exactly this way whatever produced the response, so
1152
+ * the shape is structural, not a framework's name.
1153
+ */
1154
+ bodyReadOnReceiver(identifier) {
1155
+ const access = identifier.getParent();
1156
+ if (!access ||
1157
+ !Node.isPropertyAccessExpression(access) ||
1158
+ access.getExpression() !== identifier ||
1159
+ access.getName() !== 'json') {
1160
+ return undefined;
1161
+ }
1162
+ const call = access.getParent();
1163
+ if (!call ||
1164
+ !Node.isCallExpression(call) ||
1165
+ call.getExpression() !== access ||
1166
+ call.getArguments().length > 0) {
1167
+ return undefined;
1168
+ }
1169
+ return call;
1170
+ }
1026
1171
  collectDefUseNodes(func) {
1027
1172
  const candidates = [];
1028
1173
  func.forEachDescendant((node) => {
@@ -1508,22 +1653,19 @@ export class TypeInferrer {
1508
1653
  return false;
1509
1654
  }
1510
1655
  /**
1511
- * True when the symbol is declared in a TypeScript lib file (`lib.*.d.ts`) or
1512
- * under `node_modules` — i.e. framework/runtime machinery, not user source.
1513
- * Works on a bare checkout: the DOM `Response`/`Request` resolve from the
1514
- * bundled `lib.dom.d.ts` even with no installed dependencies.
1656
+ * True when the symbol is declared in a TypeScript lib file (`lib.*.d.ts`),
1657
+ * under `node_modules`, or in the runtime declarations Carrick materialises
1658
+ * for a non-Node runtime under `.carrick/deno/` — i.e. framework/runtime
1659
+ * machinery, not user source. Works on a bare checkout: the DOM
1660
+ * `Response`/`Request` resolve from the bundled `lib.dom.d.ts` even with no
1661
+ * installed dependencies.
1515
1662
  */
1516
1663
  symbolIsLibOrExternalOrigin(symbol) {
1517
1664
  if (!symbol) {
1518
1665
  return false;
1519
1666
  }
1520
- const isExternalPath = (filePath) => {
1521
- const normalized = filePath.replace(/\\/g, '/');
1522
- return (normalized.includes('/node_modules/') ||
1523
- /\/lib\.[^/]*\.d\.ts$/.test(normalized));
1524
- };
1525
1667
  for (const decl of symbol.getDeclarations()) {
1526
- if (isExternalPath(decl.getSourceFile().getFilePath())) {
1668
+ if (isExternalOrigin(decl.getSourceFile().getFilePath())) {
1527
1669
  return true;
1528
1670
  }
1529
1671
  }
@@ -1842,8 +1984,22 @@ export class TypeInferrer {
1842
1984
  * expression yields an argument type this may read.
1843
1985
  */
1844
1986
  recoverPayloadFromReturnStatements(func, statedOnly) {
1987
+ return this.recoverPayloadFromResponseExpressions(this.responseReturnedExpressions(func), statedOnly);
1988
+ }
1989
+ /**
1990
+ * The response payload carried by a set of response-carrying expressions —
1991
+ * a handler's return expressions, or the single expression a producer
1992
+ * response locator resolved to (carrick#1017).
1993
+ *
1994
+ * Each expression is first split into its BRANCHES, so a route that answers
1995
+ * `found ? json(entry) : json(problem, { status: 404 })` contributes both
1996
+ * sides: the payload rule reads each one, the error branch drops out on its
1997
+ * stated status, and what survives is joined as a union exactly as several
1998
+ * return statements are.
1999
+ */
2000
+ recoverPayloadFromResponseExpressions(expressions, statedOnly) {
1845
2001
  const candidates = [];
1846
- const returned = this.responseReturnedExpressions(func);
2002
+ const returned = expressions.flatMap((expression) => this.expandResponseBranches(expression, 0));
1847
2003
  const serialisers = this.calleesProvenSerialiser(returned);
1848
2004
  for (const expression of returned) {
1849
2005
  const payloadNode = this.responseHelperPayloadNode(expression, 0, statedOnly, serialisers);
@@ -2015,8 +2171,9 @@ export class TypeInferrer {
2015
2171
  * when the compiler has one, else the callee's source text.
2016
2172
  */
2017
2173
  calleeIdentity(call) {
2018
- if (!Node.isCallExpression(call))
2174
+ if (!Node.isCallExpression(call) && !Node.isNewExpression(call)) {
2019
2175
  return undefined;
2176
+ }
2020
2177
  const callee = call.getExpression();
2021
2178
  const symbol = callee.getSymbol();
2022
2179
  if (symbol)
@@ -2046,8 +2203,13 @@ export class TypeInferrer {
2046
2203
  if (depth > RESPONSE_HELPER_MAX_DEPTH)
2047
2204
  return undefined;
2048
2205
  const call = this.peelTransparentExpression(expression);
2049
- if (!Node.isCallExpression(call))
2206
+ // A `new` of the platform response constructor carries its body exactly
2207
+ // where a call does — `new Response(JSON.stringify(payload), { status })`
2208
+ // is the same statement as `Response.json(payload, { status })`
2209
+ // (carrick#1017). Both node kinds answer `getArguments()`.
2210
+ if (!Node.isCallExpression(call) && !Node.isNewExpression(call)) {
2050
2211
  return undefined;
2212
+ }
2051
2213
  const args = call.getArguments().map((a) => this.peelTransparentExpression(a));
2052
2214
  if (args.length === 0)
2053
2215
  return undefined;
@@ -2056,7 +2218,14 @@ export class TypeInferrer {
2056
2218
  const identity = this.calleeIdentity(call);
2057
2219
  const proven = identity !== undefined && serialisers.has(identity);
2058
2220
  const effectiveStatedOnly = statedOnly && !proven;
2059
- for (const arg of args) {
2221
+ for (const [index, arg] of args.entries()) {
2222
+ // An options object BESIDE the body states how to send it, never what is
2223
+ // sent (carrick#1017): `new Response(null, { status: 204 })` has no body
2224
+ // at all, and reading its second argument would publish `{ status:
2225
+ // number }` as the endpoint's contract. The first argument is the body
2226
+ // by construction, so the rule applies only past it.
2227
+ if (index > 0 && this.statesResponseInit(arg))
2228
+ continue;
2060
2229
  const candidate = this.unwrapJsonStringifyArg(arg);
2061
2230
  if (this.nodeCarriesPayloadContract(candidate, effectiveStatedOnly)) {
2062
2231
  return candidate;
@@ -2132,6 +2301,45 @@ export class TypeInferrer {
2132
2301
  }
2133
2302
  return undefined;
2134
2303
  }
2304
+ /**
2305
+ * True when an object literal argument is response INIT rather than a body:
2306
+ * every property it declares is one the standard `ResponseInit` declares
2307
+ * (`status`, `statusText`, `headers`), and it states at least one of them as
2308
+ * init really does — a numeric status in the HTTP range, or headers.
2309
+ *
2310
+ * A payload that merely has a `status` member of its own (`{ status: "ok",
2311
+ * service: "ledger" }`) declares members init does not, or states `status` as
2312
+ * something other than an HTTP code, so it stays a payload.
2313
+ */
2314
+ statesResponseInit(node) {
2315
+ if (!Node.isObjectLiteralExpression(node))
2316
+ return false;
2317
+ const properties = node.getProperties();
2318
+ if (properties.length === 0)
2319
+ return false;
2320
+ let statesInit = false;
2321
+ for (const property of properties) {
2322
+ if (!Node.isPropertyAssignment(property))
2323
+ return false;
2324
+ const name = property.getName();
2325
+ if (!RESPONSE_INIT_MEMBER_NAMES.has(name))
2326
+ return false;
2327
+ const initializer = property.getInitializer();
2328
+ if (!initializer)
2329
+ return false;
2330
+ if (name === 'headers') {
2331
+ statesInit = true;
2332
+ continue;
2333
+ }
2334
+ if (name === 'status' && Node.isNumericLiteral(initializer)) {
2335
+ const value = initializer.getLiteralValue();
2336
+ if (Number.isInteger(value) && value >= 100 && value <= 599) {
2337
+ statesInit = true;
2338
+ }
2339
+ }
2340
+ }
2341
+ return statesInit;
2342
+ }
2135
2343
  /**
2136
2344
  * True when an argument states a >= 400 status: an options object carrying
2137
2345
  * `status`/`statusCode`, or a bare status code (`send(body, 404)`).
@@ -2201,6 +2409,29 @@ export class TypeInferrer {
2201
2409
  }
2202
2410
  return current;
2203
2411
  }
2412
+ /**
2413
+ * The branches a single response expression can take — one entry for a plain
2414
+ * expression, one per side of a conditional (carrick#1017).
2415
+ *
2416
+ * `return entry ? json(entry) : json({ error }, { status: 404 })` is one
2417
+ * return statement holding two responses. Read whole, its type is the
2418
+ * transport wrapper both sides share and the payload is lost; read per
2419
+ * branch, each side goes through the ordinary payload rule, which is also
2420
+ * what drops the error branch on its stated status. Nested conditionals are
2421
+ * followed to a small depth; anything else is returned as itself.
2422
+ */
2423
+ expandResponseBranches(node, depth) {
2424
+ if (depth > RESPONSE_BRANCH_MAX_DEPTH)
2425
+ return [node];
2426
+ const expression = this.peelTransparentExpression(node);
2427
+ if (Node.isConditionalExpression(expression)) {
2428
+ return [
2429
+ ...this.expandResponseBranches(expression.getWhenTrue(), depth + 1),
2430
+ ...this.expandResponseBranches(expression.getWhenFalse(), depth + 1),
2431
+ ];
2432
+ }
2433
+ return [expression];
2434
+ }
2204
2435
  /**
2205
2436
  * The deterministic source symbol of a resolved type (`Payment` for a payload
2206
2437
  * typed `Payment`), or `undefined` when there is no single user-defined