@kehtus/proportion-sdk 0.5.0 → 1.1.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 (95) hide show
  1. package/dist/abi/challengeAccount.d.ts +1855 -0
  2. package/dist/abi/challengeAccount.d.ts.map +1 -0
  3. package/dist/abi/challengeAccount.js +2365 -0
  4. package/dist/abi/challengeAccount.js.map +1 -0
  5. package/dist/abi/challengeFactory.d.ts +1351 -0
  6. package/dist/abi/challengeFactory.d.ts.map +1 -0
  7. package/dist/abi/challengeFactory.js +1727 -0
  8. package/dist/abi/challengeFactory.js.map +1 -0
  9. package/dist/abi/challengeVault.d.ts +1392 -0
  10. package/dist/abi/challengeVault.d.ts.map +1 -0
  11. package/dist/abi/challengeVault.js +1793 -0
  12. package/dist/abi/challengeVault.js.map +1 -0
  13. package/dist/abi/factory.d.ts +4 -0
  14. package/dist/abi/factory.d.ts.map +1 -1
  15. package/dist/abi/factory.js +5 -0
  16. package/dist/abi/factory.js.map +1 -1
  17. package/dist/abi/fundedAccount.d.ts +49 -10
  18. package/dist/abi/fundedAccount.d.ts.map +1 -1
  19. package/dist/abi/fundedAccount.js +62 -13
  20. package/dist/abi/fundedAccount.js.map +1 -1
  21. package/dist/abi/mainVault.d.ts +409 -20
  22. package/dist/abi/mainVault.d.ts.map +1 -1
  23. package/dist/abi/mainVault.js +523 -20
  24. package/dist/abi/mainVault.js.map +1 -1
  25. package/dist/abi/priceOracle.d.ts +497 -0
  26. package/dist/abi/priceOracle.d.ts.map +1 -0
  27. package/dist/abi/priceOracle.js +644 -0
  28. package/dist/abi/priceOracle.js.map +1 -0
  29. package/dist/account.d.ts.map +1 -1
  30. package/dist/account.js +6 -0
  31. package/dist/account.js.map +1 -1
  32. package/dist/challenge/account.d.ts +95 -0
  33. package/dist/challenge/account.d.ts.map +1 -0
  34. package/dist/challenge/account.js +375 -0
  35. package/dist/challenge/account.js.map +1 -0
  36. package/dist/challenge/api.d.ts +49 -0
  37. package/dist/challenge/api.d.ts.map +1 -0
  38. package/dist/challenge/api.js +173 -0
  39. package/dist/challenge/api.js.map +1 -0
  40. package/dist/challenge/factory.d.ts +151 -0
  41. package/dist/challenge/factory.d.ts.map +1 -0
  42. package/dist/challenge/factory.js +355 -0
  43. package/dist/challenge/factory.js.map +1 -0
  44. package/dist/challenge/intents.d.ts +137 -0
  45. package/dist/challenge/intents.d.ts.map +1 -0
  46. package/dist/challenge/intents.js +218 -0
  47. package/dist/challenge/intents.js.map +1 -0
  48. package/dist/challenge/oracle.d.ts +50 -0
  49. package/dist/challenge/oracle.d.ts.map +1 -0
  50. package/dist/challenge/oracle.js +117 -0
  51. package/dist/challenge/oracle.js.map +1 -0
  52. package/dist/challenge/types.d.ts +652 -0
  53. package/dist/challenge/types.d.ts.map +1 -0
  54. package/dist/challenge/types.js +64 -0
  55. package/dist/challenge/types.js.map +1 -0
  56. package/dist/challenge/vault.d.ts +87 -0
  57. package/dist/challenge/vault.d.ts.map +1 -0
  58. package/dist/challenge/vault.js +299 -0
  59. package/dist/challenge/vault.js.map +1 -0
  60. package/dist/constants.d.ts +13 -3
  61. package/dist/constants.d.ts.map +1 -1
  62. package/dist/constants.js +22 -3
  63. package/dist/constants.js.map +1 -1
  64. package/dist/factory.d.ts +1 -1
  65. package/dist/factory.d.ts.map +1 -1
  66. package/dist/factory.js +12 -0
  67. package/dist/factory.js.map +1 -1
  68. package/dist/forwarder.d.ts +58 -0
  69. package/dist/forwarder.d.ts.map +1 -0
  70. package/dist/forwarder.js +145 -0
  71. package/dist/forwarder.js.map +1 -0
  72. package/dist/index.d.ts +13 -0
  73. package/dist/index.d.ts.map +1 -1
  74. package/dist/index.js +14 -0
  75. package/dist/index.js.map +1 -1
  76. package/dist/indexer.d.ts +52 -0
  77. package/dist/indexer.d.ts.map +1 -1
  78. package/dist/indexer.js +204 -0
  79. package/dist/indexer.js.map +1 -1
  80. package/dist/sdk.d.ts +18 -1
  81. package/dist/sdk.d.ts.map +1 -1
  82. package/dist/sdk.js +85 -32
  83. package/dist/sdk.js.map +1 -1
  84. package/dist/types.d.ts +48 -0
  85. package/dist/types.d.ts.map +1 -1
  86. package/dist/types.js.map +1 -1
  87. package/dist/utils.d.ts +35 -2
  88. package/dist/utils.d.ts.map +1 -1
  89. package/dist/utils.js +86 -7
  90. package/dist/utils.js.map +1 -1
  91. package/dist/vault.d.ts +44 -4
  92. package/dist/vault.d.ts.map +1 -1
  93. package/dist/vault.js +143 -9
  94. package/dist/vault.js.map +1 -1
  95. package/package.json +42 -42
package/dist/types.d.ts CHANGED
@@ -4,11 +4,17 @@ export interface SDKAddresses {
4
4
  FACTORY?: Address;
5
5
  FORWARDER?: Address;
6
6
  USDC?: Address;
7
+ /** Challenge/B-book root. Vault/oracle default to on-chain reads from the factory. */
8
+ CHALLENGE_FACTORY?: Address;
9
+ CHALLENGE_VAULT?: Address;
10
+ CHALLENGE_PRICE_ORACLE?: Address;
7
11
  }
8
12
  export interface SDKConfig {
9
13
  rpcUrl?: string;
10
14
  graphqlUrl: string;
11
15
  graphqlWsUrl?: string;
16
+ /** Base URL of the challenge-service public API; enables prop.challengeApi when set. */
17
+ challengeApiUrl?: string;
12
18
  walletClient?: WalletClient;
13
19
  fetchFn?: typeof fetch;
14
20
  webSocketCtor?: WebSocketConstructor;
@@ -72,6 +78,42 @@ export interface VaultStats {
72
78
  dailyDdDiscountBps: number;
73
79
  pendingFactory: Address;
74
80
  factoryActivationTime: bigint;
81
+ /** Challenge vault authorized to call activateFundedFor (zero address if unset). */
82
+ challengeVault: Address;
83
+ /** Kill switch. When false the split is the legacy 80/13/7 and no builder fee applies. */
84
+ builderProfitFeeEnabled: boolean;
85
+ /** Builder's profit cut (bps) during payback, e.g. 1400 = 14%. */
86
+ builderProfitBps: bigint;
87
+ /** Protocol's profit cut (bps) during payback, e.g. 300 = 3% (vs 700 normally). */
88
+ builderPaybackProtocolBps: bigint;
89
+ /** Per-FA payback target = activationFee * this / 10000, e.g. 5000 = recoup 50% of the fee. */
90
+ builderPaybackFractionBps: bigint;
91
+ /** Builder's permanent profit cut (bps) after the payback target is recouped, e.g. 500 = 5%. */
92
+ builderCarryBps: bigint;
93
+ /** Protocol's profit cut (bps) after payback, e.g. 300 = 3% (vs 700 in the legacy split). */
94
+ builderCarryProtocolBps: bigint;
95
+ }
96
+ /** A whitelisted perp with its max allowed leverage (maxLeverage 0 = not allowed). */
97
+ export interface AllowedPerpConfig {
98
+ perpIndex: number;
99
+ maxLeverage: number;
100
+ }
101
+ /** Inputs for computing the builder-aware 4-way profit split off-chain. */
102
+ export interface BuilderSplitConfig {
103
+ /** Vault.builderProfitFeeEnabled. */
104
+ feeEnabled: boolean;
105
+ /** Vault.builderProfitBps (payback builder cut). */
106
+ builderProfitBps: bigint;
107
+ /** Vault.builderPaybackProtocolBps (payback protocol cut). */
108
+ builderPaybackProtocolBps: bigint;
109
+ /** Vault.builderCarryBps (builder's permanent carry after payback, e.g. 500 = 5%). */
110
+ builderCarryBps: bigint;
111
+ /** Vault.builderCarryProtocolBps (protocol's cut after payback, e.g. 300 = 3%). */
112
+ builderCarryProtocolBps: bigint;
113
+ /** FundedAccount.builderPayoutTarget (0 = no builder fee for this account). */
114
+ builderPayoutTarget: bigint;
115
+ /** FundedAccount.builderProfitPaid (cumulative paid so far). */
116
+ builderProfitPaid: bigint;
75
117
  }
76
118
  export interface LPPosition {
77
119
  shares: bigint;
@@ -105,6 +147,8 @@ export interface AccountDetails {
105
147
  lastCheckpointValue: bigint;
106
148
  lastCheckpointDay: bigint;
107
149
  returnInitiatedAt: number;
150
+ /** USDC (8dec) snapshotted at closeAndReturn; sanity-checked in finalizeReturn. 0 unless Returning. */
151
+ bridgedUsdc: bigint;
108
152
  pendingWithdrawal: {
109
153
  profit: bigint;
110
154
  };
@@ -122,6 +166,10 @@ export interface AccountDetails {
122
166
  instantWithdrawProfitBps: number;
123
167
  /** Per-contract: minimum absolute profit amount required for withdrawal (6dec USDC). */
124
168
  minWithdrawAmount: bigint;
169
+ /** Builder profit-share payback target for this account (6dec; 0 = no builder fee). Frozen at activation. */
170
+ builderPayoutTarget: bigint;
171
+ /** Cumulative profit (6dec) already paid to the builder. Payback regime ends once this reaches the target. */
172
+ builderProfitPaid: bigint;
125
173
  }
126
174
  export interface GqlVault {
127
175
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAmCA,uDAAuD;AACvD,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,iEAAa,CAAA;IACb,6DAAW,CAAA;IACX,mDAAM,CAAA;IACN,yEAAiB,CAAA;IACjB,qDAAO,CAAA;IACP,yDAAS,CAAA;IACT,mDAAM,CAAA;AACR,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAyCA,uDAAuD;AACvD,MAAM,CAAN,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,iEAAa,CAAA;IACb,6DAAW,CAAA;IACX,mDAAM,CAAA;IACN,yEAAiB,CAAA;IACjB,qDAAO,CAAA;IACP,yDAAS,CAAA;IACT,mDAAM,CAAA;AACR,CAAC,EARW,YAAY,KAAZ,YAAY,QAQvB"}
package/dist/utils.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { AccountState, type AccountStateLabel } from "./types.js";
1
+ import { AccountState, type AccountStateLabel, type BuilderSplitConfig } from "./types.js";
2
2
  type MulticallResult = readonly {
3
3
  status: string;
4
4
  result?: unknown;
@@ -15,7 +15,7 @@ export declare function trailingFloor(hwm: bigint, drawdownBps: number): bigint;
15
15
  export declare function dailyFloor(dayStartValue: bigint, drawdownBps: number): bigint;
16
16
  export declare function isTrailingBreached(value: bigint, hwm: bigint, bps: number): boolean;
17
17
  export declare function isDailyBreached(value: bigint, dsv: bigint, bps: number): boolean;
18
- export declare function activationFee(accountSize: bigint, drawdownBps: number, dailyDD: boolean, feeMultiplier?: number, dailyDdDiscountBps?: number): bigint;
18
+ export declare function activationFee(accountSize: bigint, drawdownBps: number, dailyDD: boolean, feeMultiplier?: number): bigint;
19
19
  export declare function subscriptionFee(accountSize: bigint, subFeeMultiplier: number): bigint;
20
20
  export declare function subscriptionFee(accountSize: bigint, _drawdownBps: number, _dailyDD: boolean, subFeeMultiplier: number): bigint;
21
21
  export declare function splitProfit(profit: bigint): {
@@ -23,6 +23,39 @@ export declare function splitProfit(profit: bigint): {
23
23
  vault: bigint;
24
24
  protocol: bigint;
25
25
  };
26
+ /**
27
+ * Builder-aware 4-way profit split, mirroring FundedAccount._splitProfit exactly.
28
+ *
29
+ * The trader (owner) always keeps OWNER_PROFIT_BPS (80%). With the fee disabled (or
30
+ * builderPayoutTarget = 0) the split is the legacy 80/13/7. Otherwise, while
31
+ * builderProfitPaid < builderPayoutTarget the builder earns `builderProfitBps` and the protocol
32
+ * `builderPaybackProtocolBps` on the payback slice of the profit — the slice is capped so the
33
+ * builder never receives more than the remaining payback; any excess profit above that slice,
34
+ * and ALL profit once the target is recouped, pays the permanent carry
35
+ * (`builderCarryBps` / `builderCarryProtocolBps`). Everything is carved from the 20% non-owner
36
+ * pool; the vault absorbs the residual (and any rounding dust). Integer math, caps, and clamps
37
+ * match the contract bit-for-bit, so the four parts always sum to exactly `profit`.
38
+ * Feed `cfg` from live on-chain config (`vault.getStats()` + the FA's payout fields).
39
+ */
40
+ export declare function splitProfitWithBuilder(profit: bigint, cfg: BuilderSplitConfig): {
41
+ owner: bigint;
42
+ builder: bigint;
43
+ vault: bigint;
44
+ protocol: bigint;
45
+ };
46
+ /**
47
+ * Split a claimed subscription fee the way FundedAccount.claimSubscriptionFee() does:
48
+ * protocol takes SUBSCRIPTION_PROTOCOL_BPS (15%), the remainder goes to the vault.
49
+ */
50
+ export declare function splitSubscriptionFee(fee: bigint): {
51
+ vault: bigint;
52
+ protocol: bigint;
53
+ };
54
+ export declare const PERP_ID_SPACE_OFFSET = 100000;
55
+ /** True if `id` is in the API/order space (HIP-3 perp on a non-default dex). */
56
+ export declare function isApiPerpId(id: number): boolean;
57
+ /** Normalize any perp id to the CORE/precompile space used by the on-chain whitelist. Idempotent. */
58
+ export declare function toCorePerpId(id: number): number;
26
59
  export declare function stateToLabel(state: AccountState): AccountStateLabel;
27
60
  export declare function labelToState(label: AccountStateLabel): AccountState;
28
61
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAIlE,KAAK,eAAe,GAAG,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,KAAK,CAAA;CAAE,EAAE,CAAC;AAEtF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,OAAO,EAAE,CAQxG;AAID,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE7C;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEjD;AAED,wBAAgB,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAG7E;AAID,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,wBAAgB,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAG7E;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnF;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAEhF;AAeD,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,OAAO,EAChB,aAAa,GAAE,MAAY,EAC3B,kBAAkB,GAAE,MAAsC,GACzD,MAAM,CAMR;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;AACvF,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,OAAO,EACjB,gBAAgB,EAAE,MAAM,GACvB,MAAM,CAAC;AAcV,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB,CAKA;AAwBD,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,GAAG,iBAAiB,CAEnE;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,YAAY,CAEnE"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/utils.js CHANGED
@@ -1,4 +1,4 @@
1
- import { BPS, DAILY_DD_DISCOUNT_BPS, DECIMALS_MULTIPLIER, OWNER_PROFIT_BPS, PROTOCOL_PROFIT_BPS, USDC_DECIMALS, } from "./constants.js";
1
+ import { BPS, DECIMALS_MULTIPLIER, OWNER_PROFIT_BPS, PROTOCOL_PROFIT_BPS, SUBSCRIPTION_PROTOCOL_BPS, USDC_DECIMALS, } from "./constants.js";
2
2
  import { AccountState } from "./types.js";
3
3
  export function assertAllSuccess(results, names) {
4
4
  for (let i = 0; i < results.length; i++) {
@@ -49,13 +49,10 @@ const USDC_UNIT = 1000000n;
49
49
  function roundUpUsdc(fee) {
50
50
  return ((fee + USDC_UNIT - 1n) / USDC_UNIT) * USDC_UNIT;
51
51
  }
52
- function applyDailyDiscount(fee, discountBps) {
53
- return (fee * (BPS - discountBps)) / BPS;
54
- }
55
- export function activationFee(accountSize, drawdownBps, dailyDD, feeMultiplier = 120, dailyDdDiscountBps = Number(DAILY_DD_DISCOUNT_BPS)) {
52
+ export function activationFee(accountSize, drawdownBps, dailyDD, feeMultiplier = 120) {
56
53
  let fee = (accountSize * BigInt(drawdownBps) * BigInt(feeMultiplier)) / FEE_DIVISOR;
57
- if (dailyDD) {
58
- fee = applyDailyDiscount(fee, BigInt(dailyDdDiscountBps));
54
+ if (!dailyDD && feeMultiplier > 100) {
55
+ fee += (accountSize * BigInt(drawdownBps) * BigInt(feeMultiplier - 100)) / FEE_DIVISOR;
59
56
  }
60
57
  return roundUpUsdc(fee);
61
58
  }
@@ -71,6 +68,88 @@ export function splitProfit(profit) {
71
68
  const vault = profit - owner - protocol;
72
69
  return { owner, vault, protocol };
73
70
  }
71
+ /**
72
+ * Builder-aware 4-way profit split, mirroring FundedAccount._splitProfit exactly.
73
+ *
74
+ * The trader (owner) always keeps OWNER_PROFIT_BPS (80%). With the fee disabled (or
75
+ * builderPayoutTarget = 0) the split is the legacy 80/13/7. Otherwise, while
76
+ * builderProfitPaid < builderPayoutTarget the builder earns `builderProfitBps` and the protocol
77
+ * `builderPaybackProtocolBps` on the payback slice of the profit — the slice is capped so the
78
+ * builder never receives more than the remaining payback; any excess profit above that slice,
79
+ * and ALL profit once the target is recouped, pays the permanent carry
80
+ * (`builderCarryBps` / `builderCarryProtocolBps`). Everything is carved from the 20% non-owner
81
+ * pool; the vault absorbs the residual (and any rounding dust). Integer math, caps, and clamps
82
+ * match the contract bit-for-bit, so the four parts always sum to exactly `profit`.
83
+ * Feed `cfg` from live on-chain config (`vault.getStats()` + the FA's payout fields).
84
+ */
85
+ export function splitProfitWithBuilder(profit, cfg) {
86
+ const owner = (profit * OWNER_PROFIT_BPS) / BPS;
87
+ const nonOwner = profit - owner;
88
+ let { builder, protocol } = builderProtocolProfitAmounts(profit, cfg);
89
+ // Defensive clamps (contract _splitProfit): non-owner shares can never exceed the pool.
90
+ if (builder > nonOwner)
91
+ builder = nonOwner;
92
+ if (protocol > nonOwner - builder)
93
+ protocol = nonOwner - builder;
94
+ const vault = nonOwner - builder - protocol;
95
+ return { owner, builder, vault, protocol };
96
+ }
97
+ /** Mirrors FundedAccount._builderProtocolProfitAmounts + _paybackProfitAmounts. */
98
+ function builderProtocolProfitAmounts(profit, cfg) {
99
+ if (cfg.builderPayoutTarget === 0n || !cfg.feeEnabled) {
100
+ return { builder: 0n, protocol: (profit * PROTOCOL_PROFIT_BPS) / BPS };
101
+ }
102
+ let builder = 0n;
103
+ let protocol = 0n;
104
+ let carryProfit = profit;
105
+ if (cfg.builderProfitPaid < cfg.builderPayoutTarget) {
106
+ if (cfg.builderProfitBps === 0n) {
107
+ // Contract returns carryProfit = 0 here — no carry is paid on this claim.
108
+ return { builder: 0n, protocol: (profit * cfg.builderPaybackProtocolBps) / BPS };
109
+ }
110
+ const remainingPayback = cfg.builderPayoutTarget - cfg.builderProfitPaid;
111
+ let paybackProfit = (remainingPayback * BPS + cfg.builderProfitBps - 1n) / cfg.builderProfitBps;
112
+ if (paybackProfit > profit)
113
+ paybackProfit = profit;
114
+ builder = (paybackProfit * cfg.builderProfitBps) / BPS;
115
+ if (builder > remainingPayback)
116
+ builder = remainingPayback;
117
+ protocol = (paybackProfit * cfg.builderPaybackProtocolBps) / BPS;
118
+ carryProfit = profit - paybackProfit;
119
+ }
120
+ if (carryProfit > 0n) {
121
+ builder += (carryProfit * cfg.builderCarryBps) / BPS;
122
+ protocol += (carryProfit * cfg.builderCarryProtocolBps) / BPS;
123
+ }
124
+ return { builder, protocol };
125
+ }
126
+ /**
127
+ * Split a claimed subscription fee the way FundedAccount.claimSubscriptionFee() does:
128
+ * protocol takes SUBSCRIPTION_PROTOCOL_BPS (15%), the remainder goes to the vault.
129
+ */
130
+ export function splitSubscriptionFee(fee) {
131
+ const protocol = (fee * SUBSCRIPTION_PROTOCOL_BPS) / BPS;
132
+ const vault = fee - protocol;
133
+ return { vault, protocol };
134
+ }
135
+ // ── HIP-3 perp-id spaces ────────────────────────────
136
+ // Hyperliquid exposes perps in two id spaces that differ by exactly 100000:
137
+ // - API/order space (HL /info, orders, updateLeverage, keeper position reads)
138
+ // - Core/precompile space (MainVault.allowedPerps, FundedAccount.initiateClose(perpIndex),
139
+ // position2, accountMarginSummary)
140
+ // The on-chain whitelist MUST hold CORE ids. Storing an API id breaks per-asset breach
141
+ // enforcement and — because initiateClose(uint32) is permissionless — enables a false-close
142
+ // griefing vector against compliant accounts. For the default dex (index 0) both spaces
143
+ // coincide. `toCorePerpId` is idempotent (core ids are < OFFSET, so they pass through).
144
+ export const PERP_ID_SPACE_OFFSET = 100_000;
145
+ /** True if `id` is in the API/order space (HIP-3 perp on a non-default dex). */
146
+ export function isApiPerpId(id) {
147
+ return id >= PERP_ID_SPACE_OFFSET;
148
+ }
149
+ /** Normalize any perp id to the CORE/precompile space used by the on-chain whitelist. Idempotent. */
150
+ export function toCorePerpId(id) {
151
+ return id >= PERP_ID_SPACE_OFFSET ? id - PERP_ID_SPACE_OFFSET : id;
152
+ }
74
153
  // ── Enum mapping ────────────────────────────────────
75
154
  const stateLabels = {
76
155
  [AccountState.Uninitialized]: "UNINITIALIZED",
package/dist/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,mBAAmB,EACnB,gBAAgB,EAChB,mBAAmB,EACnB,yBAAyB,EACzB,aAAa,GACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,YAAY,EAAmD,MAAM,YAAY,CAAC;AAM3F,MAAM,UAAU,gBAAgB,CAAC,OAAwB,EAAE,KAAyB;IAClF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,KAAM,OAAO,CAAC,CAAC,CAAuB,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;QAC3H,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,uDAAuD;AAEvD,MAAM,UAAU,QAAQ,CAAC,MAAc;IACrC,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,aAAa,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,MAAc;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE,IAAI,aAAa,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,SAAiB;IACvC,OAAO,SAAS,GAAG,mBAAmB,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,SAAiB;IACtC,OAAO,SAAS,GAAG,mBAAmB,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,MAAc,EAAE,MAAc,aAAa;IACnE,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC;IACvC,OAAO,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,WAAmB;IAC5D,OAAO,GAAG,GAAG,CAAC,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,GAAG,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,aAAqB,EAAE,WAAmB;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;IAC1C,OAAO,aAAa,GAAG,CAAC,aAAa,GAAG,QAAQ,CAAC,GAAG,GAAG,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IACxE,OAAO,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IACrE,OAAO,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACtC,CAAC;AAED,uDAAuD;AAEvD,MAAM,WAAW,GAAG,QAAU,CAAC;AAC/B,MAAM,SAAS,GAAG,QAAU,CAAC;AAE7B,SAAS,WAAW,CAAC,GAAW;IAC9B,OAAO,CAAC,CAAC,GAAG,GAAG,SAAS,GAAG,EAAE,CAAC,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,WAAmB,EACnB,OAAgB,EAChB,gBAAwB,GAAG;IAE3B,IAAI,GAAG,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,WAAW,CAAC;IACpF,IAAI,CAAC,OAAO,IAAI,aAAa,GAAG,GAAG,EAAE,CAAC;QACpC,GAAG,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC;IACzF,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AASD,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,CAAS,EACT,EAAY,EACZ,CAAU;IAEV,MAAM,gBAAgB,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,GAAG,CAAC;IAC3D,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAED,uDAAuD;AAEvD,MAAM,UAAU,WAAW,CAAC,MAAc;IAKxC,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,GAAG,CAAC;IAChD,MAAM,QAAQ,GAAG,CAAC,MAAM,GAAG,mBAAmB,CAAC,GAAG,GAAG,CAAC;IACtD,MAAM,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IACxC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAc,EACd,GAAuB;IAEvB,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,gBAAgB,CAAC,GAAG,GAAG,CAAC;IAChD,MAAM,QAAQ,GAAG,MAAM,GAAG,KAAK,CAAC;IAEhC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,4BAA4B,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACtE,wFAAwF;IACxF,IAAI,OAAO,GAAG,QAAQ;QAAE,OAAO,GAAG,QAAQ,CAAC;IAC3C,IAAI,QAAQ,GAAG,QAAQ,GAAG,OAAO;QAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACjE,MAAM,KAAK,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAE5C,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7C,CAAC;AAED,mFAAmF;AACnF,SAAS,4BAA4B,CACnC,MAAc,EACd,GAAuB;IAEvB,IAAI,GAAG,CAAC,mBAAmB,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;QACtD,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,GAAG,mBAAmB,CAAC,GAAG,GAAG,EAAE,CAAC;IACzE,CAAC;IAED,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,WAAW,GAAG,MAAM,CAAC;IAEzB,IAAI,GAAG,CAAC,iBAAiB,GAAG,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACpD,IAAI,GAAG,CAAC,gBAAgB,KAAK,EAAE,EAAE,CAAC;YAChC,0EAA0E;YAC1E,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,GAAG,GAAG,CAAC,yBAAyB,CAAC,GAAG,GAAG,EAAE,CAAC;QACnF,CAAC;QACD,MAAM,gBAAgB,GAAG,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC,iBAAiB,CAAC;QACzE,IAAI,aAAa,GAAG,CAAC,gBAAgB,GAAG,GAAG,GAAG,GAAG,CAAC,gBAAgB,GAAG,EAAE,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC;QAChG,IAAI,aAAa,GAAG,MAAM;YAAE,aAAa,GAAG,MAAM,CAAC;QAEnD,OAAO,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,gBAAgB,CAAC,GAAG,GAAG,CAAC;QACvD,IAAI,OAAO,GAAG,gBAAgB;YAAE,OAAO,GAAG,gBAAgB,CAAC;QAC3D,QAAQ,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,yBAAyB,CAAC,GAAG,GAAG,CAAC;QACjE,WAAW,GAAG,MAAM,GAAG,aAAa,CAAC;IACvC,CAAC;IAED,IAAI,WAAW,GAAG,EAAE,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,eAAe,CAAC,GAAG,GAAG,CAAC;QACrD,QAAQ,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,uBAAuB,CAAC,GAAG,GAAG,CAAC;IAChE,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAW;IAC9C,MAAM,QAAQ,GAAG,CAAC,GAAG,GAAG,yBAAyB,CAAC,GAAG,GAAG,CAAC;IACzD,MAAM,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC;IAC7B,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC;AAED,uDAAuD;AACvD,4EAA4E;AAC5E,gFAAgF;AAChF,6FAA6F;AAC7F,uCAAuC;AACvC,uFAAuF;AACvF,4FAA4F;AAC5F,wFAAwF;AACxF,wFAAwF;AACxF,MAAM,CAAC,MAAM,oBAAoB,GAAG,OAAO,CAAC;AAE5C,gFAAgF;AAChF,MAAM,UAAU,WAAW,CAAC,EAAU;IACpC,OAAO,EAAE,IAAI,oBAAoB,CAAC;AACpC,CAAC;AAED,qGAAqG;AACrG,MAAM,UAAU,YAAY,CAAC,EAAU;IACrC,OAAO,EAAE,IAAI,oBAAoB,CAAC,CAAC,CAAC,EAAE,GAAG,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;AACrE,CAAC;AAED,uDAAuD;AAEvD,MAAM,WAAW,GAA4C;IAC3D,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,eAAe;IAC7C,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,aAAa;IACzC,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,QAAQ;IAC/B,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,oBAAoB;IACtD,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,SAAS;IACjC,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,WAAW;IACrC,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,QAAQ;CAChC,CAAC;AAEF,MAAM,WAAW,GAA4C;IAC3D,aAAa,EAAE,YAAY,CAAC,aAAa;IACzC,WAAW,EAAE,YAAY,CAAC,WAAW;IACrC,MAAM,EAAE,YAAY,CAAC,MAAM;IAC3B,kBAAkB,EAAE,YAAY,CAAC,iBAAiB;IAClD,OAAO,EAAE,YAAY,CAAC,OAAO;IAC7B,SAAS,EAAE,YAAY,CAAC,SAAS;IACjC,MAAM,EAAE,YAAY,CAAC,MAAM;CAC5B,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,KAAmB;IAC9C,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,CAAC"}
package/dist/vault.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { Address, Chain, Hash, PublicClient, WalletClient } from "viem";
2
- import type { BuilderInfo, LPPosition, VaultStats } from "./types.js";
2
+ import type { AllowedPerpConfig, BuilderInfo, LPPosition, VaultStats } from "./types.js";
3
3
  export declare class VaultModule {
4
4
  private publicClient;
5
5
  private walletClient;
@@ -14,7 +14,12 @@ export declare class VaultModule {
14
14
  getStats(): Promise<VaultStats>;
15
15
  getLPPosition(account: Address): Promise<LPPosition>;
16
16
  getBuilderInfo(builder: Address): Promise<BuilderInfo>;
17
- getAllowedPerps(): Promise<number[]>;
17
+ /** All whitelisted perps with their max-leverage caps. `perpIndex` is in CORE id space. */
18
+ getAllowedPerps(): Promise<AllowedPerpConfig[]>;
19
+ /** Whitelist config for a single perp ({perpIndex:0, maxLeverage:0} if not allowed). */
20
+ getAllowedPerp(index: number): Promise<AllowedPerpConfig>;
21
+ /** Per-perp max leverage cap (0 if not allowed). */
22
+ maxAllowedLeverage(index: number): Promise<number>;
18
23
  isAllowedPerp(index: number): Promise<boolean>;
19
24
  calculateFee(size: bigint, bps: number, dailyDD: boolean): Promise<bigint>;
20
25
  isPaused(): Promise<boolean>;
@@ -24,7 +29,11 @@ export declare class VaultModule {
24
29
  getHypeForSpot(): Promise<bigint>;
25
30
  isFundedAccount(account: Address): Promise<boolean>;
26
31
  getDelegateBuilder(delegate: Address): Promise<Address>;
32
+ /** Challenge vault authorized to call activateFundedFor (B-book challenge integration). */
33
+ getChallengeVault(): Promise<Address>;
27
34
  deposit(amount: bigint): Promise<Hash>;
35
+ /** Deposit USDC and mint vault shares to another account (e.g. credit a builder on B-book challenge purchase). */
36
+ depositFor(account: Address, amount: bigint): Promise<Hash>;
28
37
  withdraw(shares: bigint): Promise<Hash>;
29
38
  approveUsdc(amount: bigint): Promise<Hash>;
30
39
  registerBuilder(): Promise<Hash>;
@@ -36,11 +45,31 @@ export declare class VaultModule {
36
45
  drawdownBps: number;
37
46
  dailyDrawdownEnabled: boolean;
38
47
  }): Promise<Hash>;
48
+ /**
49
+ * Activate a funded account on behalf of a builder. Only callable by the configured
50
+ * challengeVault (B-book challenge integration); the fee is paid by the caller.
51
+ */
52
+ activateFundedFor(p: {
53
+ builder: Address;
54
+ trader: Address;
55
+ accountSize: bigint;
56
+ drawdownBps: number;
57
+ dailyDrawdownEnabled: boolean;
58
+ }): Promise<Hash>;
39
59
  pause(): Promise<Hash>;
40
60
  unpause(): Promise<Hash>;
41
- addAllowedPerp(index: number): Promise<Hash>;
61
+ /**
62
+ * Whitelist a perp with its max-leverage cap. The index is normalized to the CORE id space the
63
+ * contract stores (HIP-3 API ids ≥ 100000 are converted; default-dex ids pass through). Storing
64
+ * an API id would break breach enforcement and enable a false-close griefing vector.
65
+ * `maxLeverage` must be > 0 (the contract reverts otherwise).
66
+ */
67
+ addAllowedPerp(index: number, maxLeverage: number): Promise<Hash>;
68
+ /** Update the max-leverage cap of an already-whitelisted perp (maxLeverage > 0). */
69
+ setAllowedPerpLeverage(index: number, maxLeverage: number): Promise<Hash>;
42
70
  removeAllowedPerp(index: number): Promise<Hash>;
43
71
  setRelayer(addr: Address): Promise<Hash>;
72
+ setChallengeVault(addr: Address): Promise<Hash>;
44
73
  queueFactoryChange(addr: Address): Promise<Hash>;
45
74
  executeFactoryChange(): Promise<Hash>;
46
75
  cancelFactoryChange(): Promise<Hash>;
@@ -62,7 +91,18 @@ export declare class VaultModule {
62
91
  setMaxDrawdownBps(value: number): Promise<Hash>;
63
92
  setMaxUtilizationBps(value: bigint): Promise<Hash>;
64
93
  setMaxSingleAccountBps(value: bigint): Promise<Hash>;
65
- setDailyDdDiscountBps(value: number): Promise<Hash>;
94
+ /** Kill switch for the builder profit-share. When off, the split is the legacy 80/13/7. */
95
+ setBuilderProfitFeeEnabled(enabled: boolean): Promise<Hash>;
96
+ /** Builder's profit cut (bps) during payback. On-chain: builderProfitBps + paybackProtocolBps ≤ 2000. */
97
+ setBuilderProfitBps(bps: bigint): Promise<Hash>;
98
+ /** Protocol's profit cut (bps) during payback. On-chain: builderProfitBps + paybackProtocolBps ≤ 2000. */
99
+ setBuilderPaybackProtocolBps(bps: bigint): Promise<Hash>;
100
+ /** Per-FA payback target as a fraction (bps) of the activation fee. On-chain: ≤ 10000. */
101
+ setBuilderPaybackFractionBps(bps: bigint): Promise<Hash>;
102
+ /** Builder's permanent profit carry (bps) after payback. On-chain: carryBps + carryProtocolBps ≤ 2000. */
103
+ setBuilderCarryBps(bps: bigint): Promise<Hash>;
104
+ /** Protocol's profit cut (bps) after payback. On-chain: carryBps + carryProtocolBps ≤ 2000. */
105
+ setBuilderCarryProtocolBps(bps: bigint): Promise<Hash>;
66
106
  withdrawHype(amount: bigint): Promise<Hash>;
67
107
  }
68
108
  //# sourceMappingURL=vault.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../src/vault.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vault.d.ts","sourceRoot":"","sources":["../src/vault.ts"],"names":[],"mappings":"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"}