@callcium/sdk 0.9.0 → 0.10.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/dist/index.d.ts CHANGED
@@ -110,7 +110,7 @@ type CalldataNavigationVariant<C extends NavigationViolationCode> = {
110
110
  * A union of per-code variants, narrowable with `Extract<Violation, { code: "..." }>`.
111
111
  */
112
112
  type CalldataNavigationViolation = CalldataNavigationVariant<"CALLDATA_OUT_OF_BOUNDS"> | CalldataNavigationVariant<"ARRAY_INDEX_OUT_OF_BOUNDS">;
113
- /** A quantified array exceeded `Limits.MAX_QUANTIFIED_ARRAY_LENGTH`. */
113
+ /** A quantified array exceeded `PolicyFormat.MAX_QUANTIFIED_ARRAY_LENGTH`. */
114
114
  type QuantifierLimitExceededViolation = {
115
115
  code: "QUANTIFIER_LIMIT_EXCEEDED";
116
116
  group: number;
@@ -120,7 +120,7 @@ type QuantifierLimitExceededViolation = {
120
120
  resolvedValue: Hex;
121
121
  };
122
122
  /**
123
- * A resolved word is not the canonical encoding of its declared type (spec §7.4).
123
+ * A resolved word is not the canonical encoding of its declared type.
124
124
  *
125
125
  * `resolvedValue` is the raw 32-byte word as it appeared in calldata, before any masking.
126
126
  */
@@ -226,13 +226,20 @@ type DecodedPolicy = {
226
226
  type IssueSeverity = "info" | "warning" | "error";
227
227
  /** Category of a validation issue. */
228
228
  type IssueCategory = "typeMismatch" | "contradiction" | "redundancy" | "vacuity" | "compatibility";
229
+ /**
230
+ * Machine-readable code for a policy validation issue.
231
+ *
232
+ * Each code names one finding of the semantic validator and matches the constant of the same
233
+ * name in the Solidity `IssueCode` library.
234
+ */
235
+ type IssueCode = "VALUE_OP_ON_DYNAMIC" | "VALUE_OP_ON_COMPOSITE" | "NUMERIC_OP_ON_NON_NUMERIC" | "BITMASK_ON_INVALID" | "IN_ON_BOOL" | "LENGTH_ON_STATIC" | "CONTEXT_TYPE_MISMATCH" | "UNKNOWN_OPERATOR" | "NON_CANONICAL_OPERAND" | "UNNAVIGABLE_PATH" | "NESTED_QUANTIFIER" | "HINT_MISMATCH" | "EQ_NEQ_CONTRADICTION" | "CONFLICTING_EQUALITY" | "OUT_OF_PHYSICAL_BOUNDS" | "IMPOSSIBLE_GT" | "IMPOSSIBLE_LT" | "BOUNDS_EXCLUDE_EQUALITY" | "IMPOSSIBLE_RANGE" | "SET_EXCLUDES_EQUALITY" | "EMPTY_SET_INTERSECTION" | "SET_FULLY_EXCLUDED" | "LENGTH_EQ_NEQ_CONTRADICTION" | "CONFLICTING_LENGTH" | "BOUNDS_EXCLUDE_LENGTH" | "IMPOSSIBLE_LENGTH_RANGE" | "OUT_OF_PHYSICAL_LENGTH_BOUNDS" | "IMPOSSIBLE_LENGTH_GT" | "IMPOSSIBLE_LENGTH_LT" | "BITMASK_CONTRADICTION" | "BITMASK_ANY_IMPOSSIBLE" | "UNSORTED_IN_SET" | "EMPTY_GROUP" | "DOMINATED_BOUND" | "REDUNDANT_BOUND" | "SET_REDUCTION" | "SET_REDUNDANCY" | "SET_PARTIALLY_EXCLUDED" | "DOMINATED_LENGTH_BOUND" | "REDUNDANT_LENGTH_BOUND" | "REDUNDANT_BITMASK" | "DUPLICATE_CONSTRAINT" | "FUSIBLE_RANGE" | "FUSIBLE_LENGTH_RANGE" | "VACUOUS_GTE" | "VACUOUS_LTE" | "VACUOUS_LENGTH_GTE" | "VACUOUS_LENGTH_LTE" | "VACUOUS_NEGATED_RANGE" | "VACUOUS_NEGATED_LENGTH_RANGE" | "PATH_DEPTH_EXCEEDED" | "QUANTIFIER_OVER_STATIC_LIMIT" | "UNKNOWN_CONTEXT_PROPERTY" | "NEGATION_UNDER_ANY";
229
236
  /** A single validation issue found during policy analysis. */
230
237
  type Issue = {
231
238
  severity: IssueSeverity;
232
239
  category: IssueCategory;
233
240
  groupIndex: number;
234
241
  constraintIndex: number;
235
- code: string;
242
+ code: IssueCode;
236
243
  value1: Hex;
237
244
  value2: Hex;
238
245
  message: string;
@@ -380,12 +387,6 @@ declare class PolicyBuilder {
380
387
  }
381
388
  //#endregion
382
389
  //#region src/policy-coder.d.ts
383
- /**
384
- * Parse a BE16-encoded hex path into an array of step values.
385
- * @param path - 0x-prefixed hex string containing BE16-encoded path steps.
386
- * @returns Array of numeric step values.
387
- */
388
- declare function parsePathSteps(path: Hex): number[];
389
390
  /**
390
391
  * Encode a PolicyData structure into the canonical binary format.
391
392
  * @param data - The policy data to encode.
@@ -413,6 +414,32 @@ declare const PolicyCoder: {
413
414
  inspect: typeof inspect$1;
414
415
  };
415
416
  //#endregion
417
+ //#region src/path.d.ts
418
+ /** Reserved path step values that trigger quantified evaluation over array elements. */
419
+ declare const Quantifier: {
420
+ readonly ALL: 65535;
421
+ readonly ANY: 65534;
422
+ };
423
+ /** Display metadata for a quantifier step. */
424
+ type QuantifierInfo = {
425
+ label: string;
426
+ };
427
+ /** Check whether a path step is a quantifier (ALL or ANY). */
428
+ declare function isQuantifier(step: number): boolean;
429
+ /**
430
+ * Map a quantifier path step to its display label.
431
+ * @param code - Quantifier step value.
432
+ * @returns Display metadata for the quantifier.
433
+ * @throws {CallciumError} If the code is not a recognised quantifier.
434
+ */
435
+ declare function lookupQuantifier(code: number): QuantifierInfo;
436
+ /**
437
+ * Parse a BE16-encoded hex path into an array of step values.
438
+ * @param path - 0x-prefixed hex string containing BE16-encoded path steps.
439
+ * @returns Array of numeric step values.
440
+ */
441
+ declare function parsePathSteps(path: Hex): number[];
442
+ //#endregion
416
443
  //#region src/descriptor.d.ts
417
444
  /** Structural type information extracted from a descriptor node. */
418
445
  type TypeInfo = {
@@ -589,7 +616,7 @@ declare const DescriptorCoder: {
589
616
  };
590
617
  //#endregion
591
618
  //#region src/constants.d.ts
592
- /** Binary layout constants for the Callcium policy format. */
619
+ /** Binary layout constants and normative limits for the Callcium policy format. */
593
620
  declare const PolicyFormat: {
594
621
  readonly VERSION: 2;
595
622
  readonly VERSION_MASK: 15;
@@ -637,6 +664,9 @@ declare const PolicyFormat: {
637
664
  readonly HINT_META_DYNAMIC_ARRAY: 16384;
638
665
  readonly HINT_META_RESERVED_MASK: 12288;
639
666
  readonly HINT_META_STRIDE_MASK: 4095;
667
+ readonly MAX_PATH_DEPTH: 32;
668
+ readonly MAX_QUANTIFIED_ARRAY_LENGTH: 256;
669
+ readonly MAX_SET_MEMBERS: number;
640
670
  };
641
671
  /**
642
672
  * Extract a `{ KEY: code }` map from a table with `key` and `code` fields.
@@ -646,6 +676,7 @@ type CodeMap<T extends readonly {
646
676
  readonly key: string;
647
677
  readonly code: number;
648
678
  }[]> = { readonly [E in T[number] as E["key"]]: E["code"] };
679
+ /** Build a plain `{ KEY: code }` object from a table at runtime. */
649
680
  /** Rule scope discriminant: context (EVM environment) vs. calldata (ABI payload). */
650
681
  declare const Scope: CodeMap<readonly [{
651
682
  readonly key: "CONTEXT";
@@ -689,41 +720,49 @@ declare const ContextProperty: CodeMap<readonly [{
689
720
  readonly key: "MSG_SENDER";
690
721
  readonly code: 0;
691
722
  readonly label: "msg.sender";
723
+ readonly contextKey: "msgSender";
692
724
  readonly typeCode: 65;
693
725
  }, {
694
726
  readonly key: "MSG_VALUE";
695
727
  readonly code: 1;
696
728
  readonly label: "msg.value";
729
+ readonly contextKey: "msgValue";
697
730
  readonly typeCode: 32;
698
731
  }, {
699
732
  readonly key: "BLOCK_TIMESTAMP";
700
733
  readonly code: 2;
701
734
  readonly label: "block.timestamp";
735
+ readonly contextKey: "blockTimestamp";
702
736
  readonly typeCode: 32;
703
737
  }, {
704
738
  readonly key: "BLOCK_NUMBER";
705
739
  readonly code: 3;
706
740
  readonly label: "block.number";
741
+ readonly contextKey: "blockNumber";
707
742
  readonly typeCode: 32;
708
743
  }, {
709
744
  readonly key: "CHAIN_ID";
710
745
  readonly code: 4;
711
746
  readonly label: "block.chainid";
747
+ readonly contextKey: "chainId";
712
748
  readonly typeCode: 32;
713
749
  }, {
714
750
  readonly key: "TX_ORIGIN";
715
751
  readonly code: 5;
716
752
  readonly label: "tx.origin";
753
+ readonly contextKey: "txOrigin";
717
754
  readonly typeCode: 65;
718
755
  }, {
719
756
  readonly key: "BASE_FEE";
720
757
  readonly code: 6;
721
758
  readonly label: "block.basefee";
759
+ readonly contextKey: "baseFee";
722
760
  readonly typeCode: 32;
723
761
  }, {
724
762
  readonly key: "GAS_PRICE";
725
763
  readonly code: 7;
726
764
  readonly label: "tx.gasprice";
765
+ readonly contextKey: "gasPrice";
727
766
  readonly typeCode: 32;
728
767
  }]>;
729
768
  /** Maximum valid context property ID. */
@@ -741,12 +780,6 @@ type ContextPropertyInfo = {
741
780
  * @throws {CallciumError} If the code is not a recognised context property.
742
781
  */
743
782
  declare function lookupContextProperty(code: number): ContextPropertyInfo;
744
- /** Protocol-imposed safety limits for path depth and quantifier array size. */
745
- declare const Limits: {
746
- readonly MAX_PATH_DEPTH: 32;
747
- readonly MAX_QUANTIFIED_ARRAY_LENGTH: 256;
748
- readonly MAX_SET_MEMBERS: number;
749
- };
750
783
  /** Operand count category for operator data validation. */
751
784
  type Operands = "single" | "range" | "variadic";
752
785
  /** @internal */
@@ -852,29 +885,10 @@ type OpInfo = {
852
885
  * @throws {CallciumError} If the base code is not a recognised operator.
853
886
  */
854
887
  declare function lookupOp(code: number): OpInfo;
855
- /** Reserved path step values that trigger quantified evaluation over array elements. */
856
- declare const Quantifier: CodeMap<readonly [{
857
- readonly key: "ALL";
858
- readonly code: 65535;
859
- readonly label: "all";
860
- }, {
861
- readonly key: "ANY";
862
- readonly code: 65534;
863
- readonly label: "any";
864
- }]>;
865
- /** Display metadata for a quantifier step. */
866
- type QuantifierInfo = {
867
- label: string;
868
- };
869
- /** Check whether a path step is a quantifier (ALL or ANY). */
870
- declare function isQuantifier(step: number): boolean;
871
- /**
872
- * Map a quantifier path step to its display label.
873
- * @param code - Quantifier step value.
874
- * @returns Display metadata for the quantifier.
875
- * @throws {CallciumError} If the code is not a recognised quantifier.
876
- */
877
- declare function lookupQuantifier(code: number): QuantifierInfo;
888
+ //#endregion
889
+ //#region src/operators.d.ts
890
+ /** Return true when the operator code (with or without NOT flag) is a LENGTH_* variant. */
891
+ declare function isLengthOp(opCode: number): boolean;
878
892
  /** Structural category for a descriptor type code. */
879
893
  type TypeClass = "elementary" | "tuple" | "staticArray" | "dynamicArray";
880
894
  /** Structural classification without label. */
@@ -894,10 +908,6 @@ type TypeCodeInfo = TypeClassInfo & {
894
908
  */
895
909
  declare function lookupTypeCode(code: number): TypeCodeInfo;
896
910
  //#endregion
897
- //#region src/operators.d.ts
898
- /** Return true when the operator code (with or without NOT flag) is a LENGTH_* variant. */
899
- declare function isLengthOp(opCode: number): boolean;
900
- //#endregion
901
911
  //#region src/errors.d.ts
902
912
  /**
903
913
  * Machine-readable error code for structural decoding and validation failures.
@@ -941,5 +951,5 @@ declare class PolicyViolationError extends Error {
941
951
  constructor(violations: Violation[]);
942
952
  }
943
953
  //#endregion
944
- export { type Address, CallciumError, type CallciumErrorCode, type CalldataNavigationViolation, type Constraint, type ConstraintBuilder, type Context, ContextProperty, type ContextPropertyInfo, type DecodedGroup, type DecodedParam, type DecodedPolicy, type DecodedRule, Descriptor, DescriptorCoder, type EnforceResult, type Field, type Hex, type Issue, type IssueCategory, type IssueSeverity, Limits, MAX_CONTEXT_PROPERTY_ID, type MissingContextViolation, type MissingSelectorViolation, type NavigationViolationCode, type NonCanonicalValueViolation, Op, type OpInfo, type Operands, PolicyBuilder, PolicyCoder, type PolicyData, PolicyEnforcer, PolicyFormat, PolicyValidator, PolicyViolationError, Quantifier, type QuantifierEmptyArrayViolation, type QuantifierInfo, type QuantifierLimitExceededViolation, type ScalarValue, Scope, type ScopeInfo, type SelectorMismatchViolation, type Span, type TypeClass, type TypeClassInfo, TypeCode, type TypeCodeInfo, type TypeInfo, ValidationError, type ValueMismatchViolation, type Violation, type ViolationCode, arg, baseFee, blockNumber, blockTimestamp, bytesToHex, chainId, gasPrice, hexToBytes, isLengthOp, isOpAllowed, isQuantifier, lookupContextProperty, lookupOp, lookupQuantifier, lookupScope, lookupTypeCode, msgSender, msgValue, parsePathSteps, toAddress, txOrigin };
954
+ export { type Address, CallciumError, type CallciumErrorCode, type CalldataNavigationViolation, type Constraint, type ConstraintBuilder, type Context, ContextProperty, type ContextPropertyInfo, type DecodedGroup, type DecodedParam, type DecodedPolicy, type DecodedRule, Descriptor, DescriptorCoder, type EnforceResult, type Field, type Hex, type Issue, type IssueCategory, type IssueCode, type IssueSeverity, MAX_CONTEXT_PROPERTY_ID, type MissingContextViolation, type MissingSelectorViolation, type NavigationViolationCode, type NonCanonicalValueViolation, Op, type OpInfo, type Operands, PolicyBuilder, PolicyCoder, type PolicyData, PolicyEnforcer, PolicyFormat, PolicyValidator, PolicyViolationError, Quantifier, type QuantifierEmptyArrayViolation, type QuantifierInfo, type QuantifierLimitExceededViolation, type ScalarValue, Scope, type ScopeInfo, type SelectorMismatchViolation, type Span, type TypeClass, type TypeClassInfo, TypeCode, type TypeCodeInfo, type TypeInfo, ValidationError, type ValueMismatchViolation, type Violation, type ViolationCode, arg, baseFee, blockNumber, blockTimestamp, bytesToHex, chainId, gasPrice, hexToBytes, isLengthOp, isOpAllowed, isQuantifier, lookupContextProperty, lookupOp, lookupQuantifier, lookupScope, lookupTypeCode, msgSender, msgValue, parsePathSteps, toAddress, txOrigin };
945
955
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/constraint.ts","../src/policy-builder.ts","../src/policy-coder.ts","../src/descriptor.ts","../src/policy-validator.ts","../src/policy-enforcer.ts","../src/bytes.ts","../src/descriptor-coder.ts","../src/constants.ts","../src/operators.ts","../src/errors.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/constraint.ts","../src/policy-builder.ts","../src/policy-coder.ts","../src/path.ts","../src/descriptor.ts","../src/policy-validator.ts","../src/policy-enforcer.ts","../src/bytes.ts","../src/descriptor-coder.ts","../src/constants.ts","../src/operators.ts","../src/errors.ts"],"mappings":"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"}