@tormentalabs/claude-code-wire-compat 0.1.0-rc.16 → 0.1.0-rc.17

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/CHANGELOG.md CHANGED
@@ -2,6 +2,103 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.1.0-rc.17] - Unreleased
6
+
7
+ ### Added
8
+
9
+ - **Root `suppressIdentityBlock` (seam S8).** The canonical identity block was
10
+ composed unconditionally, so a consumer switch whose meaning is "send neither
11
+ canonical block" — `token_economy.lean_system_non_main` in the `opencode`
12
+ plugin, which removed billing AND identity before it migrated to this package
13
+ — was a silent no-op. `suppressIdentityBlock: true` omits the identity block
14
+ entirely, which with `suppressBillingBlock` makes four canonical prefixes
15
+ legitimate: `[billing, identity]`, `[identity]`, `[billing]` and `[]`. Only a
16
+ boolean is accepted; anything else is `INVALID_INPUT`.
17
+ `evidence.identityBlockSuppressed` is emitted only when the block was actually
18
+ removed, mirroring `billingBlockSuppressed` exactly, so evidence stays
19
+ byte-identical for every request that ignores the seam. Recorded in
20
+ `docs/source-trace.md` as governance ledger L16.
21
+
22
+ This is a DIFFERENT field from the L10 `cacheControl.suppressIdentityBlock`,
23
+ which keeps the block and drops only its `cache_control` marker. The name
24
+ collision is deliberate — symmetry with `suppressBillingBlock` at the root was
25
+ judged worth more than a novel name — and the JSDoc of each field states what
26
+ it does and names the other by its full path.
27
+
28
+ The caller-block drop stays UNCONDITIONAL: a caller block byte-equal to the
29
+ identity text is removed even when the canonical one was suppressed, matching
30
+ the genuine client and keeping the parser's absence check below sound.
31
+
32
+ - **`preserveThinkingBlockCacheControl` (seam S9).** `thinking` and
33
+ `redacted_thinking` blocks were pinned to a strict allowlist — `signature`,
34
+ `thinking`, `type` and `data`, `type` — so a request carrying `cache_control`
35
+ on a reasoning block was rejected outright with `INVALID_INPUT`. The consumer
36
+ had no legal way out, and this is a PRODUCTION failure rather than a test
37
+ artefact: the Anthropic API answers a mutated reasoning block with
38
+
39
+ > `400 ... thinking or redacted_thinking blocks in the latest assistant`
40
+ > `message cannot be modified. These blocks must remain as they were in the`
41
+ > `original response.`
42
+
43
+ so `delete block.cache_control` before the call is itself the modification
44
+ that triggers the 400. `preserveThinkingBlockCacheControl: true` accepts the
45
+ key and copies it to the body VERBATIM — caller key order intact, no TTL
46
+ applied, no breakpoint placed. Only a boolean is accepted; anything else is
47
+ `INVALID_INPUT`.
48
+
49
+ The allowlist grows by `cache_control` and by NOTHING else: an unknown key on
50
+ a reasoning block is still `INVALID_INPUT` with the seam active. The value
51
+ passes the same `cache_control` validator every other block uses —
52
+ `{ type: "ephemeral" }` with an optional `ttl` — so a malformed marker still
53
+ fails closed; the `scope` key that `text` blocks tolerate for legacy reasons
54
+ is deliberately NOT accepted, the API never returning it on a reasoning block.
55
+ The marker takes no part in this package's cache-control machinery:
56
+ `applySystemCacheControl` is untouched and `applyMessageCacheControl` already
57
+ exempts reasoning blocks from both the strip and the breakpoint pass.
58
+
59
+ `evidence.thinkingBlockCacheControlPreserved` is emitted only when the seam
60
+ was active AND at least one emitted block actually carried a marker — opting
61
+ in without using it records nothing — mirroring `billingBlockSuppressed`
62
+ exactly, so evidence stays byte-identical for every request that ignores the
63
+ seam. `parseBuiltClaudeCodeRequest` CONFIRMS that claim against the body
64
+ before it checks byte length or digest, so a forgery that is byte-length
65
+ preserving and evidence-self-consistent is refused by the structural check
66
+ rather than incidentally by arithmetic. Recorded in `docs/source-trace.md` as
67
+ governance ledger L17.
68
+
69
+ ### Changed
70
+
71
+ - **`parseBuiltClaudeCodeRequest` no longer INFERS the canonical prefix from the
72
+ identity block's position; it READS the length from evidence and VERIFIES it
73
+ structurally.** With two independent seams an empty prefix is
74
+ indistinguishable from a caller-only array, so position inference is no longer
75
+ decidable: the rc.16 discriminator would have hit its unconditional failure
76
+ path on every request built with both seams active. The parser now takes
77
+ `evidence.billingBlockSuppressed` and `evidence.identityBlockSuppressed` as
78
+ the claimed prefix length and confirms every block that claim implies —
79
+ billing by its fixed `x-anthropic-billing-header: cc_version=` head (the tail
80
+ is per-request), identity by the byte-exact identity text. This is strictly
81
+ stronger than what it replaces, which never inspected the billing slot at all:
82
+ an envelope built with `suppressBillingBlock` whose evidence hid that fact was
83
+ previously accepted.
84
+
85
+ Verification is **asymmetric, deliberately**. A claim that identity was
86
+ suppressed is refuted by finding the identity text ANYWHERE in the array,
87
+ which is sound because `buildCanonicalSystem` drops caller blocks equal to it
88
+ unconditionally and merges runs with `\n`, so the text cannot legitimately
89
+ survive. There is no mirror check for billing: a caller block may legitimately
90
+ begin with the billing header text, so its presence proves nothing.
91
+
92
+ The match is on TEXT, never on `cache_control` — the L10 seam can legitimately
93
+ emit the identity block with no marker — and the assertion remains an
94
+ EQUALITY.
95
+
96
+ - **`emittedSystemBlockCount` is computed from both seams instead of a
97
+ constant.** `CANONICAL_SYSTEM_BLOCKS` and `CANONICAL_SYSTEM_BLOCKS_WITHOUT_BILLING`
98
+ were removed: a constant cannot express the empty prefix the two seams produce
99
+ together. The build path now subtracts one slot per canonical block that
100
+ actually survived.
101
+
5
102
  ## [0.1.0-rc.16] - Unreleased
6
103
 
7
104
  ### Added
@@ -1 +1 @@
1
- {"version":3,"file":"build-request.d.ts","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,iCAAiC,EACjC,sBAAsB,EAMtB,yBAAyB,EACzB,0BAA0B,EAC1B,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AA+mCxB,2DAA2D;AAC3D,wBAAsB,iCAAiC,CACrD,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE,yBAAuD,GAC/D,OAAO,CAAC,iCAAiC,CAAC,CAiF5C;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,sBAAsB,EAC7B,OAAO,GAAE,yBAAuD,GAC/D,OAAO,CAAC,sBAAsB,CAAC,CA6IjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,yBAAuD,GAC/D,sBAAsB,CAgFxB"}
1
+ {"version":3,"file":"build-request.d.ts","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,iCAAiC,EACjC,sBAAsB,EAMtB,yBAAyB,EACzB,0BAA0B,EAC1B,sBAAsB,EAGvB,MAAM,gBAAgB,CAAC;AAwvCxB,2DAA2D;AAC3D,wBAAsB,iCAAiC,CACrD,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE,yBAAuD,GAC/D,OAAO,CAAC,iCAAiC,CAAC,CAiF5C;AAED;;;;;;;;GAQG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,sBAAsB,EAC7B,OAAO,GAAE,yBAAuD,GAC/D,OAAO,CAAC,sBAAsB,CAAC,CA8JjC;AAED;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,yBAAuD,GAC/D,sBAAsB,CA+FxB"}
@@ -54,6 +54,8 @@ const INPUT_KEYS = new Set([
54
54
  "additionalBetas",
55
55
  "suppressBetas",
56
56
  "suppressBillingBlock",
57
+ "suppressIdentityBlock",
58
+ "preserveThinkingBlockCacheControl",
57
59
  "betaOverrides",
58
60
  "metadataOverrides",
59
61
  "extraHeaders",
@@ -81,10 +83,16 @@ const COUNT_TOKENS_INPUT_KEYS = new Set([
81
83
  "extraHeaders",
82
84
  ]);
83
85
  const BUILT_KEYS = new Set(["url", "method", "headers", "body", "evidence"]);
84
- /** Counts the billing and identity blocks of the default canonical prefix. */
85
- const CANONICAL_SYSTEM_BLOCKS = 2;
86
- /** Counts the identity block alone, once `suppressBillingBlock` removed billing. */
87
- const CANONICAL_SYSTEM_BLOCKS_WITHOUT_BILLING = 1;
86
+ /**
87
+ * The self-describing prefix of the canonical billing block's text.
88
+ *
89
+ * `buildBillingBlock` emits
90
+ * `x-anthropic-billing-header: cc_version=<version>.<fingerprint>; ...`, whose
91
+ * tail varies per request, so only this fixed head can anchor a structural
92
+ * check. It is what lets the parser CONFIRM that a request which claims to
93
+ * carry the billing block actually carries it.
94
+ */
95
+ const BILLING_BLOCK_TEXT_PREFIX = "x-anthropic-billing-header: cc_version=";
88
96
  const EVIDENCE_KEYS = new Set([
89
97
  "profileId",
90
98
  "url",
@@ -100,6 +108,8 @@ const EVIDENCE_KEYS = new Set([
100
108
  "droppedExtraHeaderNames",
101
109
  "suppressedBetaNames",
102
110
  "billingBlockSuppressed",
111
+ "identityBlockSuppressed",
112
+ "thinkingBlockCacheControlPreserved",
103
113
  ]);
104
114
  const CAPABILITY_KEYS = [
105
115
  "thinking",
@@ -511,6 +521,26 @@ function validateExtraHeaderPolicy(value) {
511
521
  function validateSuppressBillingBlock(value) {
512
522
  return parseBoolean(value);
513
523
  }
524
+ /**
525
+ * Validates the package-extension identity-block suppression flag.
526
+ *
527
+ * Same contract as `validateSuppressBillingBlock`: only a boolean states a
528
+ * decision, because coercing a truthy string would silently drop a canonical
529
+ * block the genuine client always sends.
530
+ */
531
+ function validateSuppressIdentityBlock(value) {
532
+ return parseBoolean(value);
533
+ }
534
+ /**
535
+ * Validates the package-extension thinking-block `cache_control` seam flag.
536
+ *
537
+ * Same contract as the suppression flags: only a boolean states a decision,
538
+ * because coercing a truthy string would silently widen the thinking-block
539
+ * allowlist this package pins against the genuine client.
540
+ */
541
+ function validatePreserveThinkingBlockCacheControl(value) {
542
+ return parseBoolean(value);
543
+ }
514
544
  function createEffectiveProfile(pinnedProfile, override) {
515
545
  if (override === undefined)
516
546
  return pinnedProfile;
@@ -573,6 +603,12 @@ function validateInput(input) {
573
603
  const suppressBillingBlock = Object.hasOwn(input, "suppressBillingBlock")
574
604
  ? validateSuppressBillingBlock(ownValue(input, "suppressBillingBlock"))
575
605
  : false;
606
+ const suppressIdentityBlock = Object.hasOwn(input, "suppressIdentityBlock")
607
+ ? validateSuppressIdentityBlock(ownValue(input, "suppressIdentityBlock"))
608
+ : false;
609
+ const preserveThinkingBlockCacheControl = Object.hasOwn(input, "preserveThinkingBlockCacheControl")
610
+ ? validatePreserveThinkingBlockCacheControl(ownValue(input, "preserveThinkingBlockCacheControl"))
611
+ : false;
576
612
  return {
577
613
  source: input,
578
614
  clientRequestId,
@@ -581,6 +617,8 @@ function validateInput(input) {
581
617
  betaOverrides,
582
618
  extraHeaderPolicy,
583
619
  suppressBillingBlock,
620
+ suppressIdentityBlock,
621
+ preserveThinkingBlockCacheControl,
584
622
  };
585
623
  }
586
624
  function validateCountTokensInput(input) {
@@ -818,33 +856,102 @@ function parseEvidence(value) {
818
856
  billingBlockSuppressed: parseBoolean(ownValue(value, "billingBlockSuppressed")),
819
857
  }
820
858
  : {}),
859
+ ...(Object.hasOwn(value, "identityBlockSuppressed")
860
+ ? {
861
+ identityBlockSuppressed: parseBoolean(ownValue(value, "identityBlockSuppressed")),
862
+ }
863
+ : {}),
864
+ // Rehydrated here because `assertExactKeys` above already accepts the key:
865
+ // omitting this branch would silently DROP it, and the round-trip equality
866
+ // every seam test asserts would fail on an envelope that is entirely legal.
867
+ ...(Object.hasOwn(value, "thinkingBlockCacheControlPreserved")
868
+ ? {
869
+ thinkingBlockCacheControlPreserved: parseBoolean(ownValue(value, "thinkingBlockCacheControlPreserved")),
870
+ }
871
+ : {}),
821
872
  };
822
873
  }
874
+ /** Reads an own property of a value that is not asserted to be a record. */
875
+ function ownProperty(value, key) {
876
+ return isRecord(value) && Object.hasOwn(value, key)
877
+ ? ownValue(value, key)
878
+ : undefined;
879
+ }
880
+ /**
881
+ * Reports whether the emitted `messages` carry a reasoning block that actually
882
+ * kept a `cache_control` key.
883
+ *
884
+ * This is what makes `evidence.thinkingBlockCacheControlPreserved` a record of
885
+ * what the seam DID rather than of what it was allowed to do, and it is the
886
+ * check that refutes an envelope claiming the seam over a body carrying no such
887
+ * block. Presence of the KEY is the test, not truthiness: `cache_control: null`
888
+ * is a preserved marker too, exactly as it is on every other block type.
889
+ */
890
+ function hasThinkingBlockCacheControl(messages) {
891
+ if (!Array.isArray(messages))
892
+ return false;
893
+ return messages.some((message) => {
894
+ const content = ownProperty(message, "content");
895
+ return (Array.isArray(content) &&
896
+ content.some((block) => {
897
+ const type = ownProperty(block, "type");
898
+ return ((type === "thinking" || type === "redacted_thinking") &&
899
+ ownProperty(block, "cache_control") !== undefined);
900
+ }));
901
+ });
902
+ }
823
903
  /** Reads a system block's `text` without asserting the block's shape. */
824
904
  function systemBlockText(block) {
825
- return isRecord(block) && Object.hasOwn(block, "text")
826
- ? ownValue(block, "text")
827
- : undefined;
905
+ return ownProperty(block, "text");
906
+ }
907
+ /** Recognises the canonical billing block by its fixed, self-describing head. */
908
+ function isBillingBlockText(text) {
909
+ return typeof text === "string" && text.startsWith(BILLING_BLOCK_TEXT_PREFIX);
828
910
  }
829
911
  /**
830
- * Infers how many canonical blocks the emitted `system` array carries.
912
+ * VERIFIES how many canonical blocks the emitted `system` array carries.
913
+ *
914
+ * The root seams `suppressBillingBlock` and `suppressIdentityBlock` make four
915
+ * prefixes legitimate — `[billing, identity]`, `[identity]`, `[billing]` and
916
+ * `[]` — so no probe over the array alone can tell them apart: an empty prefix
917
+ * is indistinguishable from a caller-only array. The prefix length is therefore
918
+ * READ from the evidence flags, which the builder emits only when suppression
919
+ * actually removed a block.
831
920
  *
832
- * The prefix used to be the constant `CANONICAL_SYSTEM_BLOCKS`, but
833
- * `suppressBillingBlock` makes it either `[billing, identity]` or `[identity]`.
834
- * The discriminator is therefore the POSITION of the pinned identity text, not
835
- * arithmetic over the array length and never `cache_control`: the
836
- * `suppressIdentityBlock` seam can emit the identity block with no cache
837
- * marker, so a marker probe would misread a legitimate request. An array whose
838
- * identity block sits at neither position was not produced by this package.
921
+ * Evidence is not trusted blindly. Each block the flags claim is present is
922
+ * confirmed in place: billing by its `x-anthropic-billing-header: cc_version=`
923
+ * head (its tail is per-request), identity by the byte-exact `IDENTITY_TEXT`;
924
+ * a claim that identity was suppressed is confirmed by that text being absent
925
+ * from the whole array. This is strictly stronger than the position probe it
926
+ * replaces, which never checked the billing slot at all. Never `cache_control`:
927
+ * the
928
+ * `cacheControl.suppressIdentityBlock` seam can emit the identity block with no
929
+ * marker, so a marker probe would misread a legitimate request.
839
930
  */
840
- function canonicalSystemPrefixLength(system) {
841
- if (systemBlockText(system[1]) === IDENTITY_TEXT) {
842
- return CANONICAL_SYSTEM_BLOCKS;
931
+ function canonicalSystemPrefixLength(system, billingSuppressed, identitySuppressed) {
932
+ let index = 0;
933
+ if (!billingSuppressed) {
934
+ if (!isBillingBlockText(systemBlockText(system[index])))
935
+ fail();
936
+ index += 1;
843
937
  }
844
- if (systemBlockText(system[0]) === IDENTITY_TEXT) {
845
- return CANONICAL_SYSTEM_BLOCKS_WITHOUT_BILLING;
938
+ if (identitySuppressed) {
939
+ // The identity text cannot appear ANYWHERE in a body built with the seam
940
+ // active: `buildCanonicalSystem` drops a caller block equal to it
941
+ // unconditionally, and merging joins with `\n`, so no merged run can equal
942
+ // it either. Absence is therefore checkable, which is what refutes a claim
943
+ // of suppression made over a body that still carries the block.
944
+ //
945
+ // No mirror check exists for billing: a caller block may legitimately begin
946
+ // with the billing header text, so its presence proves nothing.
947
+ if (system.some((block) => systemBlockText(block) === IDENTITY_TEXT)) {
948
+ fail();
949
+ }
950
+ return index;
846
951
  }
847
- return fail();
952
+ if (systemBlockText(system[index]) !== IDENTITY_TEXT)
953
+ fail();
954
+ return index + 1;
848
955
  }
849
956
  function parseBody(value) {
850
957
  let parsed;
@@ -916,6 +1023,12 @@ function evidenceRequest(input, callerModel) {
916
1023
  request.capabilities = input.capabilities;
917
1024
  if (input.betaOverrides !== undefined)
918
1025
  request.betaOverrides = input.betaOverrides;
1026
+ // The body builder owns the thinking-block allowlist, so the seam flag has to
1027
+ // reach it. It is forwarded only when the caller stated it, keeping the
1028
+ // normalized request shape identical for every request that ignores the seam.
1029
+ if (input.preserveThinkingBlockCacheControl !== undefined)
1030
+ request.preserveThinkingBlockCacheControl =
1031
+ input.preserveThinkingBlockCacheControl;
919
1032
  if (input.thinking !== undefined)
920
1033
  request.thinking = input.thinking;
921
1034
  if (input.effort !== undefined)
@@ -1036,7 +1149,7 @@ export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_19
1036
1149
  });
1037
1150
  const billing = await createBillingBlock(fingerprintText(validated.source), effectiveProfile.cliVersion, validated.crypto);
1038
1151
  const metadata = buildCorrelatedMetadata(identity, validated.source.metadata, validated.source.metadataOverrides);
1039
- const system = buildCanonicalSystem(validated.source.system, billing, identity, validated.suppressBillingBlock);
1152
+ const system = buildCanonicalSystem(validated.source.system, billing, identity, validated.suppressBillingBlock, validated.suppressIdentityBlock);
1040
1153
  const canonicalBody = buildCanonicalBody(evidenceRequest(validated.source, validated.source.model), effectiveModel, system, metadata, effectiveProfile);
1041
1154
  const composedBetas = composeBetasWithAudit({
1042
1155
  rawModel: validated.source.model,
@@ -1089,10 +1202,12 @@ export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_19
1089
1202
  // The canonical system merges adjacent caller blocks and drops any
1090
1203
  // block equal to the identity text, so only the emitted count keeps
1091
1204
  // `systemBlockCount === body.system.length - <canonical>` true.
1205
+ // Symmetric arithmetic over the two suppression seams: each canonical
1206
+ // block that survived costs one slot. A single constant cannot express
1207
+ // the empty prefix both seams together produce.
1092
1208
  emittedSystemBlockCount: system.length -
1093
- (validated.suppressBillingBlock
1094
- ? CANONICAL_SYSTEM_BLOCKS_WITHOUT_BILLING
1095
- : CANONICAL_SYSTEM_BLOCKS),
1209
+ (validated.suppressBillingBlock ? 0 : 1) -
1210
+ (validated.suppressIdentityBlock ? 0 : 1),
1096
1211
  // Emitted only for the opted-in policy, so evidence for every other
1097
1212
  // request keeps the shape it had before the seam existed.
1098
1213
  ...(validated.extraHeaderPolicy === "dropConflicting"
@@ -1109,6 +1224,20 @@ export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_19
1109
1224
  ...(validated.suppressBillingBlock
1110
1225
  ? { billingBlockSuppressed: true }
1111
1226
  : {}),
1227
+ // Emitted only when the identity block was actually removed, on the
1228
+ // same terms as `billingBlockSuppressed`: the parser reads both flags
1229
+ // to know the length of the canonical prefix it must verify.
1230
+ ...(validated.suppressIdentityBlock
1231
+ ? { identityBlockSuppressed: true }
1232
+ : {}),
1233
+ // Emitted only when the seam was active AND a reasoning block actually
1234
+ // carried the marker. Opting in without using it records nothing, so
1235
+ // the audit states what happened on the wire rather than what the
1236
+ // caller was permitted to do.
1237
+ ...(validated.preserveThinkingBlockCacheControl &&
1238
+ hasThinkingBlockCacheControl(canonicalBody["messages"])
1239
+ ? { thinkingBlockCacheControlPreserved: true }
1240
+ : {}),
1112
1241
  }, validated.crypto);
1113
1242
  return deepFreeze({
1114
1243
  url: effectiveProfile.endpoint,
@@ -1148,6 +1277,15 @@ export function parseBuiltClaudeCodeRequest(value, profile = CLAUDE_CODE_2_1_195
1148
1277
  const parsedBody = parseBody(body);
1149
1278
  const headers = parseHeaders(ownValue(value, "headers"));
1150
1279
  const evidence = parseEvidence(ownValue(value, "evidence"));
1280
+ // Reading evidence is not trusting evidence. A claim that the seam
1281
+ // preserved a marker is confirmed against the body, and it is confirmed
1282
+ // HERE — before the byte-length and digest checks — so that a forgery which
1283
+ // is byte-length preserving and evidence-self-consistent is refused by the
1284
+ // structural check rather than incidentally by arithmetic.
1285
+ if (evidence.thinkingBlockCacheControlPreserved === true &&
1286
+ !hasThinkingBlockCacheControl(parsedBody["messages"])) {
1287
+ fail();
1288
+ }
1151
1289
  const sessionId = headerValue(headers, "x-claude-code-session-id");
1152
1290
  const additionalHeaders = splitDynamicAndExtraHeaders(headers);
1153
1291
  const expectedHeaders = buildOrderedHeaders({
@@ -1186,7 +1324,7 @@ export function parseBuiltClaudeCodeRequest(value, profile = CLAUDE_CODE_2_1_195
1186
1324
  evidence.systemBlockCount !==
1187
1325
  (Array.isArray(parsedBody["system"])
1188
1326
  ? parsedBody["system"].length -
1189
- canonicalSystemPrefixLength(parsedBody["system"])
1327
+ canonicalSystemPrefixLength(parsedBody["system"], evidence.billingBlockSuppressed === true, evidence.identityBlockSuppressed === true)
1190
1328
  : -1)) {
1191
1329
  fail();
1192
1330
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build-request.js","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-request.js","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"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"}