Commit Graph

2341 Commits

Author SHA1 Message Date
Robert Chen 986bf34bed
add audit report for v0.21.0 (#812) 2023-12-08 10:23:48 +01:00
Christian Kamm 5f8f717430
adjust token_register_trustless params (#810)
- since there's no borrowing or asset weight, don't put staleness or
  confidence restrictions on the oracle
- disable the tcs fees, they are not enabled anywhere yet
2023-12-06 16:46:57 +01:00
Christian Kamm 80c12f95b2
Changelog for v0.21 (#809) 2023-12-06 11:51:43 +01:00
Christian Kamm 42e31ae859
Deposit limits (#806)
- limit deposits (via deposit, flash loan, tcs)
- limit potential deposits via openbook settle
  by restricting placable orders via potential_serum_tokens
- introduce Serum3PlaceOrderV2 for this purpose
- account for new limits in liquidator, max_swap
2023-12-05 15:43:38 +01:00
Christian Kamm 81501837a9
Openbook token tracking and price bands (#805)
- track min bid, max ask
- track maximal token outflow from oo
- add serum3_place_order_v2 with mutable receiver bank
- placing openbook orders is restricted to a certain distance from the
  oracle
2023-12-05 15:39:24 +01:00
Christian Kamm 71f0e5cc13
client: configurable jupiter urls (#800) 2023-12-05 13:23:11 +01:00
Christian Kamm ce16d79b13
bins: Fix restarting on new or changed listings (#802)
- Don't just restart on new listings, but also on significant changes to
  old listings such as oracle changes.
- Cover the liquidator and settler in addition to the keeper.
2023-12-05 13:22:24 +01:00
Christian Kamm e2c9cf2de0 tests: drop extra debug output 2023-12-05 11:16:09 +01:00
Christian Kamm ce71c67a88 Bump program version to v0.22 2023-12-05 11:15:50 +01:00
Christian Kamm 361ba23df1
revert trustless token registration params to conservative defaults (#804)
This mostly reverts commit 33bc278a2c.
2023-12-05 10:13:55 +01:00
Christian Kamm f03944b5dd
Disable TokenAddBank instruction (#803)
It was unused for a long time and it should be reevaluated before being
used.
2023-12-05 10:12:50 +01:00
Lou-Kamades 838df8cd7c
Merge pull request #790 from blockworks-foundation/lou/fallback-oracle
Add fallback oracles
2023-12-01 12:59:38 -06:00
Lou-Kamades 25aa422e2d also log primary oracle when fallback errors 2023-12-01 12:44:35 -06:00
Britt Cyr 68944747e0
Add serum3 cancel by client order id instruction (#798) 2023-12-01 13:36:29 +01:00
Lou-Kamades ab9d3c37b4 check serum OO headers in ScanningAccountRetriever 2023-11-30 11:03:24 -06:00
Lou-Kamades b19678f874 use a Vec for fallbacks in ScannedBanksAndOracles 2023-11-29 01:03:48 -06:00
Lou-Kamades 59001b3631 reduce CU cost of fallback oracles 2023-11-28 22:55:19 -06:00
Christian Kamm e9198577f1
deposit: remove debug output (#799) 2023-11-28 14:59:40 +01:00
Christian Kamm 6d80568022
Accounts: Expect only the v3 MangoAccounts now (#783) 2023-11-27 09:30:37 +01:00
Christian Kamm feeb63dab2
ts: tcs hasData was renamed to isConfigured (#796) 2023-11-24 11:06:44 +01:00
Christian Kamm 0483faef1e
liquidator: fix token info for same-name, fix delays (#795) 2023-11-24 11:04:59 +01:00
Christian Kamm 9a68a2dd7d
liquidator: make tcs mode configurable (#794)
tcs devnet tests want borrow-buy-token
2023-11-24 11:04:48 +01:00
silas 3588017fdb
CI updates (#784)
* ci: remove trivy reporting

* ci: add codeql and remove trivy reporting

* ci: add checkout to read config
2023-11-23 09:00:08 +01:00
microwavedcola1 236aee99d8
program: optimize cu usage in token deposit, by computing health only… (#786)
* program: optimize cu usage in token deposit, by computing health only if user is being liquidated

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-11-23 08:59:33 +01:00
shuoer86 8129cf45b4
chore: fix typos (#778) 2023-11-23 08:59:19 +01:00
microwavedcola1 5429ac1962
ts: scripts for testing account shrink (#733)
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-11-23 08:58:47 +01:00
Lou-Kamades 2b0a0e3a3e add fallback CU and serum tests 2023-11-22 16:40:48 -06:00
Lou-Kamades aed2afbde4 ensure fallbacks are only used for stale or unconfident oracles 2023-11-22 11:42:32 -06:00
Lou-Kamades a0a47af6a4 ScanningAccountRetriever uses fallback oracles 2023-11-22 11:35:26 -06:00
Lou-Kamades 20261bf734 test: add fallback oracle withdrawal test 2023-11-22 11:35:26 -06:00
Lou-Kamades d4017e6038 FixedOrderAccountRetriever uses fallback oracles 2023-11-22 11:35:26 -06:00
Lou-Kamades c22db3be0c test: stubOracle is not a PDA (allow multiple with same mint) 2023-11-22 11:35:26 -06:00
Lou-Kamades 6288f2dd7d add fallback oracles to bank and mintinfo 2023-11-22 11:35:26 -06:00
Christian Kamm eceef44a96
Log emissions: Serialize to buffer on stack instead of using heap (#787)
Emitting many events could previously cause heap exhaustion.
2023-11-22 16:00:47 +01:00
Christian Kamm eeb172e44e
Bank: Close zero position when withdrawing 0 (#793) 2023-11-22 15:54:38 +01:00
Christian Kamm 57a9835aa8
Reduce HealthCache heap use (#785)
Growing these vectors is a waste, rough measurements say this saves
around 1k bytes for a 5 tokens and 4 serum account.
2023-11-20 10:15:39 +01:00
Christian Kamm 0ac930eb8d tests: fix build 2023-11-16 16:44:18 +01:00
Christian Kamm 2d1bf023c6
TokenRegister: Add arg for group insurance fund flag (#782) 2023-11-16 08:16:18 +01:00
Christian Kamm 93d85c3f71
Bank: allow maint weights to change over time (#780)
- token_edit can set it up to gradually scale to new target values
- security admin can abort an ongoing change via token_edit
- all health computations are now time dependent and get the weight
  based on it
- when the change is done, the keeper "cleans up" and moves the new
  values into the default fields
2023-11-14 14:52:04 +01:00
Christian Kamm 8e1f512639 Client: remove stray debug output 2023-11-08 13:52:12 +01:00
Christian Kamm 06dd834215 Merge remote-tracking branch 'origin/dev' into deploy 2023-11-08 13:32:08 +01:00
Christian Kamm 12d74789ef
cli: save-snapshot command (#773) 2023-11-08 10:27:55 +01:00
Christian Kamm 7af1d58558
Some clippy fixes (#776) 2023-11-08 09:51:36 +01:00
microwavedcola1 5ca5d8f78c
program: even delegate can create token position (#775)
* program: even delegate can create token position

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

* Fixes from review

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>

---------

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
2023-11-08 09:06:43 +01:00
Christian Kamm 0ad26d845f
liquidator: Allow excluding tokens from rebalance (#774) 2023-11-08 08:51:41 +01:00
Christian Kamm c49efb2213
Change conditions for perp settle incentive (#771)
- Only ever give an incentive when pnl is at least 1% of the position
  value. That way large positions (like $100k in SOL-PERP) don't get
  settled on 0.1% price fluctuations. The price now needs to change by
  1% for settlement to occur.
- For low health incentives, cap the percentual incentive at 2x the flat
  settle fee. We want to give the settler incentive to use these first,
  but the settler doesn't take on risk, so the reward doesn't need to be
  large.
2023-11-07 12:01:02 +01:00
Steve | mango 29fa27b76b
Merge pull request #757 from blockworks-foundation/groovie/readme-onchain-dev
FAQ for program development troubleshooting
2023-11-07 10:32:02 +01:00
Christian Kamm 37195b5f83 separate file, editing 2023-11-07 09:02:07 +01:00
Lou-Kamades 35bdf46c05
update getCumulativeFundingUi comment 2023-11-05 23:51:49 +01:00
Lou-Kamades ac98a56e7d
v0.19.43 2023-11-05 15:15:05 +01:00