Troubleshooting
Common issues you might run into and how to resolve them.
Trade failures
"Quote expired before approval"
You took too long to approve a trade proposal. Quotes have a countdown timer -- when it hits zero, the quote is stale and can't be executed.
Fix: Request a new trade proposal in Chat. Approve faster next time, or switch to Guarded mode if you want Cabal to execute without waiting.
Telegram says an approval is expired or already resolved
Telegram buttons can outlive the approval they point to. Cabal checks the stored approval state before doing anything, so old buttons cannot execute twice or reopen a rejected action.
Fix: Open Dashboard, Activity, or the originating Chat thread to see the current state. If the approval expired, ask Cabal to prepare a fresh action.
"Position would exceed portfolio cap"
A guardrail blocked the trade. The proposed position would exceed a limit you've set in your control profile.
Fix: If the guardrail is correct, the system is working as intended. If you want to allow larger positions, open /dashboard/agents, choose the agent, and update its guardrails.
Trade shows "Failed"
The trade was submitted but failed on-chain. This can happen for several reasons:
- Slippage exceeded the allowed tolerance
- Insufficient balance
- The token's liquidity dried up between quote and execution
- Network congestion on the target chain
Fix: Check the failure reason shown on the trade card in Activity. For slippage issues, try again -- market conditions change. For balance issues, add funds.
Trade shows "Rejected"
You rejected the trade proposal. This is normal -- it means the approval flow worked correctly.
Provider issues
Chat isn't responding
Your provider connection may be broken or your API key may have expired.
Fix: Go to Settings and check your provider connection status. Reconnect with a fresh API key if needed.
If you refreshed during a chat turn, wait for the active turn state to settle. Accepted turns continue on the server and reappear in Chat when you return. If your message did not reach the server, the text is restored to the composer so you can send it again.
I typed during an active turn and it did not interrupt immediately
Typing while a turn is active creates steering for that turn. Steering is queued for after the current response boundary; it is not guaranteed to change a tool call or model response already underway.
"Default model is no longer available"
The model you had selected was removed or renamed by the provider.
Fix: Open /dashboard/agents, choose the agent, and select a new default model.
Position issues
Coverage shows "Incomplete"
Cabal can't fully account for this position from its own trading ledger. This usually means there's activity outside Cabal affecting the token balance -- a manual transfer, an airdrop, or a trade on another platform.
Fix: This is informational, not an error. Cabal is being transparent about what it can and can't reconcile.
Coverage shows "Needs repair"
The ledger can't reconcile this position at all. Something significant happened outside Cabal's trading history.
Fix: Same as Incomplete -- this is Cabal being honest about scope. Positions only tracks what Cabal executed.
Trade in Activity but not in Positions
Activity tracks all work, including research runs, rejected proposals, and failed trades. Positions only shows successfully executed holdings. A trade that failed or was rejected appears in Activity but never becomes a position.
EVM-specific issues
"Step 1 of 2: Approve USDC spending"
On EVM chains (like Base), some trades require a token approval before the swap can execute. This is standard EVM behavior.
Fix: Complete both steps. Step 1 authorizes the swap contract to use your tokens. Step 2 executes the actual trade.
Price impact warning
If a trade shows high price impact (flagged with a guardrail badge), the swap would move the market significantly -- usually because of low liquidity.
Fix: Consider trading a smaller amount, or wait for better liquidity conditions.
Setup issues
Can't start a conversation
Make sure you have a provider connected in Settings. Chat requires a model provider to function. See for setup steps.
Onboarding is done but I can't trade
Onboarding connects you to the product. Trading also requires:
- A wallet linked in Settings
- A control profile set on the selected agent page (even Suggest Only counts)
- The relevant chain's wallet funded
FAQ
Where do I see why a trade failed?
In Activity. Each trade card shows its status and, for failures, the reason. Look for the red text below the trade direction.
Can I retry a failed trade?
Not directly from the failed trade card. Ask Cabal in Chat to try again -- it will generate a fresh quote.
My system prompt doesn't seem to be working
Check that you're editing the system prompt on the correct agent. Each agent has its own system prompt. Make sure the active agent selector in Chat matches the agent you configured.
Something isn't listed here. What do I do?
Describe the issue in Chat. Cabal can often help diagnose problems directly. If it's a platform issue, the team monitors reported errors.
See also
- -- where trade outcomes show up
- -- managing execution limits
- -- initial setup and connections