effect 4.0.0-rc.118 → 4.0.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 (132) hide show
  1. package/README.md +17 -4
  2. package/dist/Array.d.ts +25 -25
  3. package/dist/Array.d.ts.map +1 -1
  4. package/dist/Array.js +16 -16
  5. package/dist/Array.js.map +1 -1
  6. package/dist/Chunk.d.ts +26 -26
  7. package/dist/Chunk.d.ts.map +1 -1
  8. package/dist/Chunk.js +15 -15
  9. package/dist/Chunk.js.map +1 -1
  10. package/dist/Effect.d.ts +17 -17
  11. package/dist/Effect.d.ts.map +1 -1
  12. package/dist/Effect.js +5 -5
  13. package/dist/MutableHashMap.d.ts.map +1 -1
  14. package/dist/MutableHashMap.js +4 -22
  15. package/dist/MutableHashMap.js.map +1 -1
  16. package/dist/Option.d.ts +17 -17
  17. package/dist/Option.d.ts.map +1 -1
  18. package/dist/Option.js +6 -6
  19. package/dist/Option.js.map +1 -1
  20. package/dist/Queue.d.ts +19 -2
  21. package/dist/Queue.d.ts.map +1 -1
  22. package/dist/Queue.js +9 -4
  23. package/dist/Queue.js.map +1 -1
  24. package/dist/Record.d.ts +14 -14
  25. package/dist/Record.d.ts.map +1 -1
  26. package/dist/Record.js +10 -10
  27. package/dist/Record.js.map +1 -1
  28. package/dist/Schema.d.ts +37 -21
  29. package/dist/Schema.d.ts.map +1 -1
  30. package/dist/Schema.js +29 -10
  31. package/dist/Schema.js.map +1 -1
  32. package/dist/SchemaAST.d.ts.map +1 -1
  33. package/dist/SchemaAST.js +116 -97
  34. package/dist/SchemaAST.js.map +1 -1
  35. package/dist/SchemaRepresentation.d.ts +3 -1
  36. package/dist/SchemaRepresentation.d.ts.map +1 -1
  37. package/dist/SchemaRepresentation.js +3 -1
  38. package/dist/SchemaRepresentation.js.map +1 -1
  39. package/dist/ai/McpSchema.d.ts +110 -110
  40. package/dist/ai/McpSchema.d.ts.map +1 -1
  41. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  42. package/dist/cluster/ClusterWorkflowEngine.js +5 -1
  43. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  44. package/dist/cluster/MessageStorage.d.ts +32 -8
  45. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  46. package/dist/cluster/MessageStorage.js +2 -1
  47. package/dist/cluster/MessageStorage.js.map +1 -1
  48. package/dist/cluster/Sharding.d.ts +5 -2
  49. package/dist/cluster/Sharding.d.ts.map +1 -1
  50. package/dist/cluster/Sharding.js +1 -1
  51. package/dist/cluster/Sharding.js.map +1 -1
  52. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  53. package/dist/cluster/SqlMessageStorage.js +15 -4
  54. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  55. package/dist/http/HttpEffect.d.ts +1 -0
  56. package/dist/http/HttpEffect.d.ts.map +1 -1
  57. package/dist/http/HttpEffect.js +29 -22
  58. package/dist/http/HttpEffect.js.map +1 -1
  59. package/dist/internal/effect.js +75 -84
  60. package/dist/internal/effect.js.map +1 -1
  61. package/dist/internal/schema/annotations.js +1 -7
  62. package/dist/internal/schema/annotations.js.map +1 -1
  63. package/dist/internal/schema/codegen.js +56 -28
  64. package/dist/internal/schema/codegen.js.map +1 -1
  65. package/dist/internal/schema/toCodeDocument.js +10 -30
  66. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  67. package/dist/internal/schema/toCodec.js +1 -15
  68. package/dist/internal/schema/toCodec.js.map +1 -1
  69. package/dist/internal/schema/toEquivalence.js +4 -3
  70. package/dist/internal/schema/toEquivalence.js.map +1 -1
  71. package/dist/internal/schema/toFormatter.js +4 -4
  72. package/dist/internal/schema/toFormatter.js.map +1 -1
  73. package/dist/reactivity/Atom.d.ts.map +1 -1
  74. package/dist/reactivity/Atom.js +6 -2
  75. package/dist/reactivity/Atom.js.map +1 -1
  76. package/dist/reactivity/AtomRpc.d.ts +3 -3
  77. package/dist/reactivity/AtomRpc.d.ts.map +1 -1
  78. package/dist/rpc/Rpc.d.ts +2 -2
  79. package/dist/rpc/Rpc.d.ts.map +1 -1
  80. package/dist/rpc/RpcClient.d.ts +7 -7
  81. package/dist/rpc/RpcClient.d.ts.map +1 -1
  82. package/dist/rpc/RpcClient.js +1 -2
  83. package/dist/rpc/RpcClient.js.map +1 -1
  84. package/dist/rpc/RpcMessage.d.ts +1 -1
  85. package/dist/rpc/RpcMessage.d.ts.map +1 -1
  86. package/dist/schema/SchemaCompiler/runtime.js +6 -1
  87. package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
  88. package/dist/testing/TestSchema.d.ts +234 -6
  89. package/dist/testing/TestSchema.d.ts.map +1 -1
  90. package/dist/testing/TestSchema.js +244 -25
  91. package/dist/testing/TestSchema.js.map +1 -1
  92. package/dist/testing/index.d.ts +1 -0
  93. package/dist/testing/index.d.ts.map +1 -1
  94. package/dist/testing/index.js +1 -0
  95. package/dist/testing/index.js.map +1 -1
  96. package/dist/workflow/DurableDeferred.js +1 -1
  97. package/dist/workflow/DurableDeferred.js.map +1 -1
  98. package/dist/workflow/Workflow.js +1 -1
  99. package/dist/workflow/Workflow.js.map +1 -1
  100. package/package.json +1 -1
  101. package/src/Array.ts +31 -31
  102. package/src/Chunk.ts +29 -29
  103. package/src/Effect.ts +17 -17
  104. package/src/MutableHashMap.ts +4 -24
  105. package/src/Option.ts +19 -19
  106. package/src/Queue.ts +26 -6
  107. package/src/Record.ts +20 -20
  108. package/src/Schema.ts +48 -24
  109. package/src/SchemaAST.ts +135 -115
  110. package/src/SchemaRepresentation.ts +3 -1
  111. package/src/cluster/ClusterWorkflowEngine.ts +8 -1
  112. package/src/cluster/MessageStorage.ts +22 -5
  113. package/src/cluster/Sharding.ts +8 -4
  114. package/src/cluster/SqlMessageStorage.ts +19 -8
  115. package/src/http/HttpEffect.ts +15 -9
  116. package/src/internal/effect.ts +37 -62
  117. package/src/internal/schema/annotations.ts +0 -9
  118. package/src/internal/schema/codegen.ts +90 -43
  119. package/src/internal/schema/toCodeDocument.ts +10 -47
  120. package/src/internal/schema/toCodec.ts +3 -16
  121. package/src/internal/schema/toEquivalence.ts +4 -5
  122. package/src/internal/schema/toFormatter.ts +4 -6
  123. package/src/reactivity/Atom.ts +6 -2
  124. package/src/reactivity/AtomRpc.ts +5 -5
  125. package/src/rpc/Rpc.ts +2 -2
  126. package/src/rpc/RpcClient.ts +9 -10
  127. package/src/rpc/RpcMessage.ts +1 -1
  128. package/src/schema/SchemaCompiler/runtime.ts +17 -1
  129. package/src/testing/TestSchema.ts +315 -63
  130. package/src/testing/index.ts +1 -0
  131. package/src/workflow/DurableDeferred.ts +1 -1
  132. package/src/workflow/Workflow.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SchemaAST.d.ts","sourceRoot":"","sources":["../src/SchemaAST.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemaAST.d.ts","sourceRoot":"","sources":["../src/SchemaAST.ts"],"names":[],"mappings":"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"}
package/dist/SchemaAST.js CHANGED
@@ -1845,7 +1845,8 @@ const candidateIndexCache = /*#__PURE__*/new WeakMap();
1845
1845
  const emptyCandidates = /*#__PURE__*/Object.freeze([]);
1846
1846
  const getRuntimeType = input => input === null ? "null" : Array.isArray(input) ? "array" : typeof input;
1847
1847
  const hasPropertySignature = (input, key) => key === "__proto__" ? Object.hasOwn(input, key) : key in input;
1848
- function getIndex(types) {
1848
+ /** @internal */
1849
+ export function getCandidateIndex(types) {
1849
1850
  let index = candidateIndexCache.get(types);
1850
1851
  if (index) return index;
1851
1852
  let bySentinel;
@@ -1853,6 +1854,7 @@ function getIndex(types) {
1853
1854
  let otherwise;
1854
1855
  let literalCandidates;
1855
1856
  let onlyLiterals = true;
1857
+ const literalOf = [];
1856
1858
  for (let i = 0; i < types.length; i++) {
1857
1859
  const a = types[i];
1858
1860
  const encoded = toCandidate(a);
@@ -1860,9 +1862,10 @@ function getIndex(types) {
1860
1862
  if (isLiteral(encoded) || isUniqueSymbol(encoded)) {
1861
1863
  literalCandidates ??= new Map();
1862
1864
  const literal = isLiteral(encoded) ? encoded.literal : encoded.symbol;
1865
+ literalOf[i] = literal;
1863
1866
  let arr = literalCandidates.get(literal);
1864
1867
  if (!arr) literalCandidates.set(literal, arr = []);
1865
- arr.push(a);
1868
+ arr.push(i);
1866
1869
  } else {
1867
1870
  onlyLiterals = false;
1868
1871
  }
@@ -1891,21 +1894,22 @@ function getIndex(types) {
1891
1894
  }
1892
1895
  // Non-discriminated members are grouped by runtime type once and reused by every decode.
1893
1896
  const fallbacks = {};
1894
- const getFallback = type => fallbacks[type] ??= Object.freeze((otherwise?.[type] ?? emptyCandidates).map(i => types[i]));
1897
+ const getFallback = type => fallbacks[type] ??= Object.freeze(otherwise?.[type] ?? emptyCandidates);
1895
1898
  if (onlyLiterals && literalCandidates) {
1896
1899
  literalCandidates.forEach(Object.freeze);
1897
1900
  index = input => literalCandidates.get(input) ?? emptyCandidates;
1898
1901
  } else if (bySentinel?.size === 1 && !otherwise) {
1899
1902
  const [key, [byValue]] = bySentinel.entries().next().value;
1900
- const candidates = byValue;
1903
+ const candidates = new Map();
1901
1904
  for (const [literal, indexes] of byValue) {
1902
- candidates.set(literal, Object.freeze(Array.from(indexes, index => types[index])));
1905
+ candidates.set(literal, Object.freeze(Array.from(indexes)));
1903
1906
  }
1907
+ const all = Object.freeze(types.map((_, i) => i));
1904
1908
  index = (input, isConstructor) => {
1905
1909
  if (Predicate.isObjectKeyword(input)) {
1906
1910
  const value = hasPropertySignature(input, key) ? input[key] : undefined;
1907
1911
  if (value !== undefined) return candidates.get(value) ?? emptyCandidates;
1908
- if (isConstructor) return types;
1912
+ if (isConstructor) return all;
1909
1913
  }
1910
1914
  return emptyCandidates;
1911
1915
  };
@@ -1966,32 +1970,17 @@ function getIndex(types) {
1966
1970
  }
1967
1971
  }
1968
1972
  }
1969
- return Array.from(selected).sort((a, b) => a - b).map(i => types[i]);
1973
+ return Array.from(selected).sort((a, b) => a - b);
1970
1974
  };
1971
1975
  } else {
1972
1976
  index = input => {
1973
1977
  const fallback = getFallback(getRuntimeType(input));
1974
- return literalCandidates ? fallback.filter(filterLiterals(input)) : fallback;
1978
+ return literalCandidates ? fallback.filter(i => literalOf[i] === undefined || literalOf[i] === input) : fallback;
1975
1979
  };
1976
1980
  }
1977
1981
  candidateIndexCache.set(types, index);
1978
1982
  return index;
1979
1983
  }
1980
- function filterLiterals(input) {
1981
- return ast => {
1982
- const encoded = toCandidate(ast);
1983
- return encoded._tag === "Literal" ? encoded.literal === input : encoded._tag === "UniqueSymbol" ? encoded.symbol === input : true;
1984
- };
1985
- }
1986
- /**
1987
- * The goal is to reduce the number of a union members that will be checked.
1988
- * This is useful to reduce the number of issues that will be returned.
1989
- *
1990
- * @internal
1991
- */
1992
- export function getCandidates(input, types, isConstructor = false) {
1993
- return getIndex(types)(input, isConstructor);
1994
- }
1995
1984
  /**
1996
1985
  * Constructs a {@link Union}.
1997
1986
  *
@@ -2013,38 +2002,24 @@ export const Union = class extends ASTNodeImpl {
2013
2002
  getParser(compile, compileField) {
2014
2003
  // oxlint-disable-next-line @typescript-eslint/no-this-alias
2015
2004
  const ast = this;
2005
+ const isConstructor = compileField !== undefined;
2006
+ const parsers = [];
2007
+ const parser = i => parsers[i] ??= compile(ast.types[i]);
2008
+ let index;
2016
2009
  return (input, options) => {
2017
2010
  if (input === InternalParser.missing) {
2018
2011
  return InternalParser.missingExit;
2019
2012
  }
2020
- const candidates = getCandidates(input, ast.types, compileField !== undefined);
2013
+ const candidates = (index ??= getCandidateIndex(ast.types))(input, isConstructor);
2021
2014
  if (candidates.length === 0) {
2022
2015
  return Effect.fail(new SchemaIssue.AnyOf(ast, [], input, options));
2023
2016
  }
2024
2017
  if (candidates.length === 1) {
2025
- const result = compile(candidates[0])(input, options);
2018
+ const result = parser(candidates[0])(input, options);
2026
2019
  if (result._tag === "Success") return result;
2027
- return effectIsExit(result) ? failSingleUnionCandidate(ast, result.cause, input, options) : Effect.catchCause(result, cause => failSingleUnionCandidate(ast, cause, input, options));
2020
+ return effectIsExit(result) ? failSingleUnionCandidate(ast, result.cause, input, options) : catchSingleUnionCandidate(ast, result, input, options);
2028
2021
  }
2029
- const state = {
2030
- ast,
2031
- compile,
2032
- input,
2033
- out: undefined,
2034
- successes: ast.options?.mode === "oneOf" ? [] : undefined,
2035
- issues: undefined,
2036
- options
2037
- };
2038
- const eff = parseUnion(state, candidates);
2039
- if (!eff) {
2040
- if (state.out) return state.out;
2041
- return Effect.fail(new SchemaIssue.AnyOf(ast, state.issues ?? [], input, options));
2042
- }
2043
- return Effect.flatMapEager(eff, _ => {
2044
- if (state.out === InternalParser.sameExit) return Effect.succeed(input);
2045
- if (state.out) return state.out;
2046
- return Effect.fail(new SchemaIssue.AnyOf(ast, state.issues ?? [], input, options));
2047
- });
2022
+ return parseUnionCandidates(ast, parser, candidates, input, options);
2048
2023
  };
2049
2024
  }
2050
2025
  _rebuild(recur, checks, encodingChecks) {
@@ -2102,12 +2077,38 @@ function failSingleUnionCandidate(ast, cause, input, options) {
2102
2077
  if (!issue) return Exit.failCause(cause);
2103
2078
  return Exit.fail(new SchemaIssue.AnyOf(ast, [issue], input, options));
2104
2079
  }
2080
+ function catchSingleUnionCandidate(ast, result, input, options) {
2081
+ return Effect.catchCause(result, cause => failSingleUnionCandidate(ast, cause, input, options));
2082
+ }
2083
+ function parseUnionCandidates(ast, parser, candidates, input, options) {
2084
+ const state = {
2085
+ ast,
2086
+ parser,
2087
+ input,
2088
+ out: undefined,
2089
+ successes: ast.options?.mode === "oneOf" ? [] : undefined,
2090
+ issues: undefined,
2091
+ options
2092
+ };
2093
+ const eff = parseUnion(state, candidates);
2094
+ if (!eff) {
2095
+ if (state.out) return state.out;
2096
+ return Effect.fail(new SchemaIssue.AnyOf(ast, state.issues ?? [], input, options));
2097
+ }
2098
+ return resumeUnion(eff, state);
2099
+ }
2100
+ function resumeUnion(eff, state) {
2101
+ return Effect.flatMapEager(eff, _ => {
2102
+ if (state.out === InternalParser.sameExit) return Effect.succeed(state.input);
2103
+ if (state.out) return state.out;
2104
+ return Effect.fail(new SchemaIssue.AnyOf(state.ast, state.issues ?? [], state.input, state.options));
2105
+ });
2106
+ }
2105
2107
  const parseUnion = /*#__PURE__*/iterateEager()({
2106
- onItem(s, ast) {
2107
- const parser = s.compile(ast);
2108
- return parser(s.input, s.options);
2108
+ onItem(s, i) {
2109
+ return s.parser(i)(s.input, s.options);
2109
2110
  },
2110
- step(s, candidate, exit) {
2111
+ step(s, i, exit) {
2111
2112
  if (exit._tag === "Failure") {
2112
2113
  const issue = InternalSchemaCause.getSchemaIssue(exit.cause);
2113
2114
  if (issue === undefined) {
@@ -2116,12 +2117,12 @@ const parseUnion = /*#__PURE__*/iterateEager()({
2116
2117
  if (s.issues) s.issues.push(issue);else s.issues = [issue];
2117
2118
  } else {
2118
2119
  if (s.out && s.successes) {
2119
- s.successes.push(candidate);
2120
+ s.successes.push(s.ast.types[i]);
2120
2121
  return Exit.fail(new SchemaIssue.OneOf(s.ast, s.successes, s.input, s.options));
2121
2122
  }
2122
2123
  s.out = exit;
2123
2124
  if (s.successes) {
2124
- s.successes.push(candidate);
2125
+ s.successes.push(s.ast.types[i]);
2125
2126
  } else {
2126
2127
  return Exit.void;
2127
2128
  }
@@ -2324,23 +2325,34 @@ export function isPattern(regExp, annotations) {
2324
2325
  ...annotations
2325
2326
  });
2326
2327
  }
2327
- function copy(ast) {
2328
+ // Copies that update only context or encoding share a body.
2329
+ // All other fields describe the body itself, including child contexts.
2330
+ const bodyOwners = /*#__PURE__*/new WeakMap();
2331
+ function copy(ast, changes) {
2328
2332
  // AST copies preserve the prototype and enumerable values, not property descriptors.
2329
- return Object.assign(Object.create(Object.getPrototypeOf(ast)), ast);
2333
+ const out = Object.assign(Object.create(Object.getPrototypeOf(ast)), ast, changes);
2334
+ if (Reflect.ownKeys(changes).every(key => key === "context" || key === "encoding")) {
2335
+ bodyOwners.set(out, getContextOwner(ast));
2336
+ }
2337
+ return out;
2330
2338
  }
2331
- const contextOwners = /*#__PURE__*/new WeakMap();
2332
2339
  /** @internal */
2333
2340
  export function getContextOwner(ast) {
2334
- return contextOwners.get(ast) ?? ast;
2341
+ const existing = bodyOwners.get(ast);
2342
+ if (existing !== undefined) return existing;
2343
+ if (ast.encoding === undefined) return ast;
2344
+ // A body representative must not expose or retain the node's own codec.
2345
+ const owner = Object.assign(Object.create(Object.getPrototypeOf(ast)), ast, {
2346
+ encoding: undefined
2347
+ });
2348
+ bodyOwners.set(ast, owner);
2349
+ return owner;
2335
2350
  }
2336
2351
  /** @internal */
2337
2352
  export function replaceEncoding(ast, encoding) {
2338
- if (ast.encoding === encoding) {
2339
- return ast;
2340
- }
2341
- const out = copy(ast);
2342
- out.encoding = encoding;
2343
- return out;
2353
+ return ast.encoding === encoding ? ast : copy(ast, {
2354
+ encoding
2355
+ });
2344
2356
  }
2345
2357
  /** @internal */
2346
2358
  export function replaceContext(ast, context) {
@@ -2348,13 +2360,12 @@ export function replaceContext(ast, context) {
2348
2360
  return ast;
2349
2361
  }
2350
2362
  const owner = getContextOwner(ast);
2351
- if (owner.context === context) {
2363
+ if (owner.context === context && owner.encoding === ast.encoding) {
2352
2364
  return owner;
2353
2365
  }
2354
- const out = copy(ast);
2355
- out.context = context;
2356
- contextOwners.set(out, owner);
2357
- return out;
2366
+ return copy(ast, {
2367
+ context
2368
+ });
2358
2369
  }
2359
2370
  /** @internal */
2360
2371
  export function getLastEncoding(ast) {
@@ -2366,12 +2377,12 @@ export function annotate(ast, annotations) {
2366
2377
  const last = ast.checks[ast.checks.length - 1];
2367
2378
  return replaceChecks(ast, Arr.append(ast.checks.slice(0, -1), last.annotate(annotations)));
2368
2379
  }
2369
- const out = copy(ast);
2370
- out.annotations = {
2371
- ...ast.annotations,
2372
- ...annotations
2373
- };
2374
- return out;
2380
+ return copy(ast, {
2381
+ annotations: {
2382
+ ...ast.annotations,
2383
+ ...annotations
2384
+ }
2385
+ });
2375
2386
  }
2376
2387
  /** @internal */
2377
2388
  export function replaceChecks(ast, checks) {
@@ -2381,9 +2392,9 @@ export function replaceChecks(ast, checks) {
2381
2392
  if (ast.checks === checks) {
2382
2393
  return ast;
2383
2394
  }
2384
- const out = copy(ast);
2385
- out.checks = checks;
2386
- return out;
2395
+ return copy(ast, {
2396
+ checks
2397
+ });
2387
2398
  }
2388
2399
  /** @internal */
2389
2400
  export function appendChecks(ast, checks) {
@@ -2438,14 +2449,6 @@ function appendTransformation(from, transformation, to) {
2438
2449
  const link = new Link(from, transformation);
2439
2450
  return replaceEncoding(to, to.encoding ? [...to.encoding, link] : [link]);
2440
2451
  }
2441
- /** @internal */
2442
- export function brand(ast, brand) {
2443
- const existing = InternalAnnotations.resolveBrands(ast);
2444
- const brands = existing ? [...existing, brand] : [brand];
2445
- return annotate(ast, {
2446
- brands
2447
- });
2448
- }
2449
2452
  export function mapOrSame(as, f) {
2450
2453
  let out;
2451
2454
  for (let i = 0; i < as.length; i++) {
@@ -2584,6 +2587,16 @@ function extractStructuralChecks(checks) {
2584
2587
  const out = checks.flatMap(extract);
2585
2588
  return Arr.isArrayNonEmpty(out) ? out : undefined;
2586
2589
  }
2590
+ function canPreserveEncodingChecks(ast) {
2591
+ let preserve = true;
2592
+ function visit(child) {
2593
+ preserve = preserve && !child.encoding && !isSuspend(child);
2594
+ if (preserve && "recur" in child) child.recur(visit);
2595
+ return child;
2596
+ }
2597
+ if ("recur" in ast) ast.recur(visit);
2598
+ return preserve;
2599
+ }
2587
2600
  /**
2588
2601
  * Strips all encoding transformations from an AST, returning the decoded
2589
2602
  * (type-level) representation.
@@ -2610,18 +2623,20 @@ function extractStructuralChecks(checks) {
2610
2623
  * @since 4.0.0
2611
2624
  */
2612
2625
  export const toType = /*#__PURE__*/memoizeIdempotent(ast => {
2613
- const out = ast;
2614
- const type = out.recur?.(toType) ?? out;
2615
- const encodingChecks = type.encodingChecks;
2616
- if (encodingChecks) {
2617
- const checks = type === ast ? encodingChecks : isArrays(type) || isObjects(type) || isDeclaration(type) && type.typeParameters.length > 0 ? extractStructuralChecks(encodingChecks) : undefined;
2618
- const copyOfType = copy(type);
2619
- copyOfType.encoding = undefined;
2620
- copyOfType.encodingChecks = undefined;
2621
- copyOfType.checks = combineChecks(type.checks, checks);
2622
- return copyOfType;
2623
- }
2624
- return type.encoding ? replaceEncoding(type, undefined) : type;
2626
+ const owner = getContextOwner(ast);
2627
+ if (owner !== ast) {
2628
+ const type = toType(owner);
2629
+ return type === owner && ast.encoding === undefined ? ast : replaceContext(type, ast.context);
2630
+ }
2631
+ const type = "recur" in ast ? ast.recur(toType) : ast;
2632
+ if ("encodingChecks" in type && type.encodingChecks) {
2633
+ const checks = canPreserveEncodingChecks(ast) ? type.encodingChecks : isArrays(type) || isObjects(type) || isDeclaration(type) && type.typeParameters.length > 0 ? extractStructuralChecks(type.encodingChecks) : undefined;
2634
+ return copy(type, {
2635
+ encodingChecks: undefined,
2636
+ checks: combineChecks(type.checks, checks)
2637
+ });
2638
+ }
2639
+ return type;
2625
2640
  });
2626
2641
  /**
2627
2642
  * Returns the encoded (wire-format) AST by flipping and then stripping
@@ -2688,8 +2703,12 @@ export const flip = /*#__PURE__*/memoize(ast => {
2688
2703
  if (ast.encoding) {
2689
2704
  return flipEncoding(ast, ast.encoding);
2690
2705
  }
2691
- const out = ast;
2692
- return out.flip?.(flip) ?? out.recur?.(flip) ?? out;
2706
+ const owner = getContextOwner(ast);
2707
+ if (owner !== ast) {
2708
+ const flipped = flip(owner);
2709
+ return flipped === owner ? ast : replaceContext(flipped, ast.context);
2710
+ }
2711
+ return "flip" in ast ? ast.flip(flip) : "recur" in ast ? ast.recur(flip) : ast;
2693
2712
  });
2694
2713
  /** @internal */
2695
2714
  export function containsUndefined(ast) {