Skip to main content

TL;DR: The Six Trust Assumptions

Every interaction with ArcX requires you to trust ArcX with specific things.
#What You Trust ArcX WithWhat Could Go WrongHow You Can VerifyDecentralization Path
1NAV reportingArcX misreports strategy value to favor certain depositorsCompare reported NAV against exchange position dashboardsThird-party attestation / audits
2Credit rate accuracyArcX manipulates creditRate to shift points allocationcreditRate derives from observable OI/volume on exchangesOn-chain verifiable activity feeds
3Points reportingArcX underreports total points at finalizationPoints visible on exchange dashboards. Community can cross-referenceOn-chain points verification
4Points backingArcX over-mints PointsTokens beyond real points heldLimited. Exchange points are per-account, not publicly queryableExchange APIs or third-party attestation
5Strategy executionBugs, negligence, or malfeasance causing unexpected lossesStrategy PnL reflected in NAV. Performance is observable over timeIsolated vaults, insurance mechanisms
6Cross-chain escrowMultisig misappropriates locked USDC during bridge transitOn-chain escrow balances are publicly visibleTrustless bridge integration
ArcX trades trustlessness for speed to market. Every trust assumption is documented here, and every oracle is operated by ArcX. Decentralization is planned, but today, you are trusting ArcX. Green = on-chain, fully verifiable. Yellow = off-chain, trust required.

Trust Assumptions In Detail

Trust Assumption 1: NAV Oracle

What It Does

The NAV oracle reports the total USDC value of the strategy’s positions every 5 minutes. This number determines:
  • How many ST shares you receive when you deposit (shares = netUSDC x totalShares / currentNAV)
  • How much USDC you receive when you redeem ST after finalization (usdcOut = shares x finalNAV / totalShares)
NAV is the single most important number in the protocol. If it’s wrong, deposits and redemptions are mispriced.

What Could Go Wrong

Scenario: Inflated NAV. ArcX reports NAV higher than reality. Late depositors receive fewer shares than they should (they’re buying in at an inflated price). Early depositors benefit. Their shares are worth more relative to the actual underlying.Scenario: Deflated NAV. ArcX reports NAV lower than reality. Late depositors receive more shares than they should (bargain entry). Existing holders are diluted.Scenario: Stale NAV. The oracle stops updating. If the strategy’s value changes while the oracle is stale, deposits happen at an outdated price.

Mitigations

  1. NAV freshness check. The contract enforces MAX_NAV_STALENESS = 30 minutes. If the oracle hasn’t updated in 30 minutes, all deposits automatically revert. Your USDC stays in your wallet. You can’t be harmed by stale data.
  2. Partial verifiability. NAV is derived from positions on perp DEXes (Pacifica, Hyperliquid, Extended, etc.). These exchanges have public dashboards showing account positions. While you can’t see ArcX’s exact account, the strategy’s expected exposure (e.g., “funding arb with $500K OI”) is checkable against on-chain and exchange data.
  3. Reputation enforcement. ArcX’s business depends on accurate reporting. Systematic misreporting would be detectable over time (depositors comparing expected vs. actual returns) and would be visible and would end the protocol.
  4. Bounded impact per epoch. Each epoch is independent. Even if NAV is slightly off for a few oracle updates, the final NAV at finalization determines actual redemptions. A single bad update doesn’t compound.

Decentralization Path

Third-party attestation or audits. A future system could have independent auditors verify ArcX’s exchange positions periodically, providing external validation of reported NAV without requiring ArcX to reveal account details publicly.
ArcX controls the oracles that determine deposit pricing and redemption values. In theory, ArcX could misreport NAV to extract value. In practice, this would be detectable (strategy returns that don’t match exchange data) and would destroy the protocol’s reputation. Cross-chain USDC has an additional protection: the refund timeout lets you self-rescue if anything goes wrong during bridging.
ArcX publishes NAV on-chain every 5 minutes. If ArcX were trading against its own NAV updates (e.g., depositing before publishing a favorable NAV), the pattern would be visible in on-chain transaction timing. Additionally, ArcX already knows the NAV in real-time (it runs the strategy). This informational advantage is used for market-making (setting fair spreads), which benefits users, not for exploiting deposits.

Attack Vectors and Analysis

Attack 1: NAV Sandwich

The attack: Deposit a large amount right before epoch end to capture strategy upside from a stale NAV reading.
1. Strategy gains 0.5% in the last 30 minutes
2. NAV oracle last updated 25 minutes ago (still "fresh" under the 30-min threshold)
3. Attacker deposits at the stale (lower) NAV
4. Epoch ends → attacker's shares are worth more than they paid
5. Profit = |finalNAV - staleNAV| / staleNAV × depositAmount - depositFee
Why it’s hard to profit:
Strategy Type30-min NAV VolatilityMinimum Fee to Neutralize
Funding arbVery low (~0.005%). Funding rates move slowly.~0.01% (any reasonable fee works)
Market makingModerate (0.1-0.5%). Inventory risk + spread capture.0.3-0.5%
The deposit fee is calibrated per strategy to exceed the worst-case sandwich profit. Combined with the 30-minute NAV staleness window, the attack is economically unprofitable for typical strategies. Additional defenses:
  • DEPOSIT_CUTOFF parameter can close deposits before epoch end (configurable, default: 0)
  • If empirical data shows the arb is profitable, the fee or cutoff can be adjusted

Attack 2: Credit Manipulation via EPT Timing

The attack: If an attacker knows when creditRate will spike (e.g., the strategy is about to open large positions), they deposit right before the spike to accrue extra credits. Why it’s bounded:
  • creditRate is published by ArcX’s oracle. An external attacker doesn’t know future creditRate values.
  • Even if someone front-runs a creditRate update, their credit advantage is limited to the time they held EPT during the spike, typically minutes or hours out of a multi-week epoch. The credit share gained is proportionally small.
  • The credit accrual formula is continuous and time-weighted. Brief holding periods produce minimal credits relative to full-epoch holders.

Attack 3: PointsToken Over-Minting

The attack: ArcX mints more PointsTokens than real points, creating a fractional reserve. Why it’s detectable:
  • Each epoch’s totalPoints is reported at finalization. This is a public, on-chain number.
  • Cumulative PointsToken supply is also on-chain.
  • Anyone can sum all epoch totalPoints and compare against PointsToken totalSupply.
  • A discrepancy (supply > sum of reported points) is immediate evidence of over-minting.
The limitation: You can verify PointsToken supply against reported points, but you can’t independently verify that reported points match real points held by ArcX on the exchange. This is Trust Assumption 3 (Points Reporting).

Attack 4: Oracle Liveness Failure

The scenario: The NAV oracle stops updating mid-epoch. Impact and response:
ComponentBehavior During Oracle Outage
DepositsAutomatically revert after 30 minutes of staleness (on-chain check)
Existing positionsUnaffected. ST and EPT balances don’t change
Credit accrualContinues at the last known creditRate
Trading on ArcX AMMContinues normally (the AMM is a separate on-chain contract)
FinalizationDelayed until oracle recovers and submits final NAV
Admin actionCan pause deposits as an additional safeguard
The 30-minute freshness check is the key defense. New capital cannot enter at a stale price. Deposits revert automatically if the oracle is stale.

Attack 5: Cross-Chain Double-Spend

The attack: Deposit via cross-chain, receive ST + EPT on Starknet, then cancel on the source chain and get a refund. Why it’s impossible:
  1. The cancel() function requires that no acknowledgment has been received and that REFUND_TIMEOUT has elapsed.
  2. If the deposit succeeded on Starknet, an acknowledgment is sent back to the source chain, marking the depositId as complete.
  3. A completed depositId cannot be cancelled.
  4. If the acknowledgment is delayed past REFUND_TIMEOUT and the user cancels first, the late-arriving deposit message on Starknet is rejected (depositId is marked cancelled on the source chain, and the Starknet contract checks this state).
Idempotency is enforced at the protocol level across both chains.

What’s On-Chain vs. Off-Chain

Understanding what lives where helps you assess what’s verifiable:
ComponentLocationVerifiable?
ST token balancesStarknet (on-chain)Fully verifiable
EPT token balancesStarknet (on-chain)Fully verifiable
PointsToken supplyStarknet (on-chain)Fully verifiable
Credit balances (per user)Starknet (on-chain, via globalCreditIndex)Fully verifiable
Deposit/redeem transactionsStarknet (on-chain)Fully verifiable
Escrow balancesSource chain (on-chain)Fully verifiable
NAV valuePublished on-chain by oracleValue verifiable, accuracy trust-dependent
creditRatePublished on-chain by oracleValue verifiable, accuracy trust-dependent
totalPoints per epochPublished on-chain by oracleValue verifiable, accuracy trust-dependent
Strategy positionsPerp DEX exchange accounts (off-chain)Partially verifiable via exchange dashboards
Real exchange pointsExchange accounts (off-chain)Not independently verifiable
Strategy execution logicArcX servers (off-chain)Not verifiable
The pattern: Token mechanics (minting, burning, credit accrual, redemption) are fully on-chain and verifiable. The inputs to those mechanics (NAV, creditRate, totalPoints) are reported by ArcX and require trust.
Contract addresses and verification status will be published at launch. On-chain contracts on Starknet are verifiable through standard block explorer tools.

Maximum Loss Scenarios

Scenario 1: Strategy Loses Everything

The strategy loses 100% of capital. Final NAV = $0.
TokenOutcome
STRedeems for $0. Total loss of deposited USDC.
EPTUnaffected. Credits accrued normally during the epoch.
PointsTokensClaimable as usual. Points were earned during strategy execution regardless of PnL.
Maximum loss = your deposit. ST can never go negative. There is no margin call. EPT provides a partial offset. You still receive points even if the strategy collapses.

Scenario 2: ArcX Misreports Final NAV

ArcX reports a final NAV lower than reality, extracting the difference.
Who is harmedHow
All ST holdersRedeem for less USDC than they’re owed
EPT holdersNot directly affected (points allocation is separate from NAV)
Detection: Depositors who independently tracked the strategy’s performance (via exchange dashboards, historical NAV updates) would notice the discrepancy. This is a reputational attack, detectable but not preventable on-chain.

Scenario 3: Exchange Never Conducts TGE

You hold PointsTokens, but the exchange never launches a token.
TokenOutcome
PointsTokensRemain as tradeable ERC20s with no redemption path. Their value is whatever the secondary market assigns.
STUnaffected. USDC redemption is independent of TGE.
EPTAlready converted to PointsTokens at finalization.
This is an exchange-level risk, not an ArcX protocol risk. ArcX cannot guarantee that any exchange will conduct a TGE.

Scenario 4: Cross-Chain Bridge Outage

LayerZero goes down for an extended period. Your USDC is locked in the escrow.
What happensTimeline
Your USDC is lockedImmediately upon deposit
You wait for delivery1—5 minutes typical, up to 30 minutes
If message never arrivesWait for REFUND_TIMEOUT to expire
Self-rescueCall cancel(depositId) --- USDC refunded
You are never permanently locked out. The refund timeout is your escape hatch.
Your ST can go to zero if the strategy loses 100% of capital. This is the absolute worst case. Your EPT (points) is unaffected. You still claim PointsTokens regardless of strategy performance. There is no scenario where you owe more than your deposit.

Emergency Procedures

Deposit Pause

The admin can pause new deposits into the current epoch. This is the primary emergency tool.
What pause doesWhat pause does NOT do
Blocks new depositsDoes not freeze trading on the ArcX AMM
Prevents new capital from entering at potentially bad pricesDoes not stop credit accrual
Signals to the community that something needs attentionDoes not trigger early maturity
Does not affect existing positions
Pause is conservative. It stops new money from entering while existing positions continue unchanged. The admin can unpause if the issue is resolved while the deposit window is still open.

No Early Termination

There is no mechanism to terminate an epoch early. Once an epoch starts, it runs to its scheduled end. This is a deliberate design choice:
  • Avoids the complexity of mid-epoch unwinds
  • Prevents admin abuse (can’t terminate to lock in favorable NAV)
  • Ensures all participants experience the same epoch duration
  • Simplifies the contract model
The tradeoff: in a genuine emergency, the only tool is pausing deposits. Existing positions ride out the epoch.
If ArcX disappears entirely: deposits in progress can be refunded via escrow timeout. Existing ST and EPT tokens remain on-chain and tradeable on the ArcX AMM. Finalization would be stuck (no oracle to report final NAV/points). In this extreme scenario, the community would need to coordinate recovery. The contracts exist on Starknet regardless of ArcX’s operational status.
All ArcX contracts live on Starknet. A Starknet outage would pause all on-chain activity (deposits, trading, redemptions). Strategy execution continues off-chain (perp DEX trades don’t depend on Starknet). Once Starknet recovers, the protocol resumes. Cross-chain escrow on source chains (Ethereum, Arbitrum, Solana) is unaffected by Starknet outages. Refund timeouts still work.

How to Verify ArcX’s Behavior

If you want to independently audit ArcX’s reporting, here’s what you can check:
These verification steps can be performed by anyone with access to a block explorer and basic knowledge of the exchange’s points program. No special tools or permissions are required.
1

Track NAV Over Time

  • NAV is published on-chain every 5 minutes
  • Record NAV updates throughout the epoch
  • Compare the trajectory against expected strategy performance (e.g., if funding rates on Pacifica average 0.01%/8h, a $500K strategy should return a predictable amount per epoch)
  • Flag any unexplained jumps or discrepancies
Check the on-chain NAV oracle contract directly via a Starknet block explorer to see the full history of NAV updates and their timestamps.
2

Cross-Reference Points

  • At finalization, totalPoints is published on-chain
  • Compare against the exchange’s published points program rules
  • If Pacifica grants X points per $1 of OI per day, and the strategy maintained $500K OI for the epoch, expected points are estimable
  • Significant discrepancies warrant investigation
Review the exchange’s points documentation to understand the accrual formula, then estimate expected points based on the strategy’s known OI and epoch duration.
3

Monitor PointsToken Supply

  • PointsToken totalSupply is on-chain
  • Sum all totalPoints from every finalized epoch for that exchange
  • If totalSupply > sum of reported points, PointsTokens may be over-minted
Query the PointsToken ERC20 contract’s totalSupply() and compare it against the cumulative totalPoints values emitted during each epoch’s finalization event.
4

Watch Escrow Balances

  • Cross-chain escrow balances are on-chain on the source chain
  • Track deposits, acknowledgments, and refunds
  • Escrow balance should trend toward zero as deposits are acknowledged
  • Persistent large balances may indicate stuck messages
5

Compare ST Redemption Values

  • At finalization, compute expected redemption: shares x finalNAV / totalShares
  • Compare against what you actually receive
  • Any shortfall is evidence of a contract bug or misconfigured finalization
Verify the finalNAV and totalShares values from the finalization transaction, then compute your expected USDC payout before redeeming.

Comparison: ArcX Trust Model vs. Alternatives

ArcX (Current)PendleTypical Yield Aggregator (e.g., Yearn)CEX Earn Products
Strategy executionTrust ArcXN/A (no strategy)Trust strategist/governanceTrust exchange
Price oracleTrust ArcXOn-chain (AMM-based)Chainlink/on-chainTrust exchange
Yield/points reportingTrust ArcXOn-chain (SY wrapper)On-chain (vault share price)Trust exchange
Asset custodySmart contract (Starknet) + ArcX exchange accountsSmart contract onlySmart contract onlyFull exchange custody
Early exitSell ST on ArcX AMM (no redemption)Sell on Pendle AMM or redeemWithdraw from vaultDepends on product
Worst-case lossDeposit (ST --- $0)Opportunity cost (PT/YT mispricing)Deposit (vault --- $0)Full balance (exchange hack)
VerifiabilityPartial (oracles trust-dependent)Full (all on-chain)Full (all on-chain)None
ArcX’s trust model is closer to a managed fund than a pure DeFi protocol. Off-chain strategy execution (perp DEX trading) requires off-chain data feeds. Fully on-chain alternatives (Pendle, Yearn) work because their underlying yield sources are themselves on-chain.
Different risk profile. Pendle is fully on-chain. You trust only smart contract risk. ArcX adds oracle risk (trusting ArcX’s data feeds) and strategy risk (trusting ArcX’s execution). In exchange, ArcX gives you access to perp DEX strategy returns and pre-TGE points markets that Pendle doesn’t offer. Accessing off-chain yield means accepting additional trust.

Decentralization Roadmap

ArcX plans to decentralize these components over time. Each trust assumption has a planned path toward trustless verification:
Trust AssumptionCurrentNext StepEnd State
NAV reportingArcX oracleCommunity monitoring dashboardsThird-party attestation / audits
Credit rateArcX oracleOn-chain staleness checks (MAX_CREDIT_STALENESS)Verifiable activity feeds from exchanges
Points reportingArcX oraclePublic attestation of points balancesExchange-native on-chain points
Points backingTrust + reputationThird-party attestation / auditsDirect exchange --- contract distribution
Strategy executionTrust ArcXStrategy constraints enforced on-chainIsolated vaults with insurance
Cross-chain escrowMultisig + timeoutReduced signer threshold, monitoringTrustless bridge integration
The order reflects feasibility. Community monitoring dashboards and on-chain staleness checks are near-term. Trustless bridge integration is a longer-term goal.