What's Changed
- improves crash reporting, rollbar support, and exception messages
- improves hyperdrive deploy to rely on pypechain generated objects
- reformats interface API into read_only and read_write versions
- adds ability for an interactive agent to liquidate all trades
- improves testing coverage
- improvements and bugfixes in hyperdrive invariance checks and fuzz tests
- support hyperdrive 0.4.0
PRs
* check postgres status by wakamex in https://github.com/delvtech/agent0/pull/1124
* lint with ruff by wakamex in https://github.com/delvtech/agent0/pull/1116
* Minor updates on interactive example by slundqui in https://github.com/delvtech/agent0/pull/1126
* Docs linting by slundqui in https://github.com/delvtech/agent0/pull/1127
* update docstring style guide by wakamex in https://github.com/delvtech/agent0/pull/1129
* ensure random trades have successful status in random bot test by dpaiton in https://github.com/delvtech/agent0/pull/1131
* add eth config test by dpaiton in https://github.com/delvtech/agent0/pull/1133
* update hypertypes by dpaiton in https://github.com/delvtech/agent0/pull/1134
* Test speedup and cleanup by slundqui in https://github.com/delvtech/agent0/pull/1132
* Removing budget from policy by slundqui in https://github.com/delvtech/agent0/pull/1135
* Global rng spawns children rng for plicies by slundqui in https://github.com/delvtech/agent0/pull/1137
* agent0 known first party by wakamex in https://github.com/delvtech/agent0/pull/1139
* Policy config rework by slundqui in https://github.com/delvtech/agent0/pull/1140
* rename hyperdrive to interface by dpaiton in https://github.com/delvtech/agent0/pull/1141
* add functions to hyperdrive interface api by dpaiton in https://github.com/delvtech/agent0/pull/1142
* Allowing policies in interactive hyperdrive agents by slundqui in https://github.com/delvtech/agent0/pull/1143
* make block number optional in get_gov_fees_accrued by wakamex in https://github.com/delvtech/agent0/pull/1145
* Load/save snapshots using interactive hyperdrive by slundqui in https://github.com/delvtech/agent0/pull/1146
* fix get max short docstring by wakamex in https://github.com/delvtech/agent0/pull/1147
* invariant tests by dpaiton in https://github.com/delvtech/agent0/pull/1138
* Pool state snapshot test by slundqui in https://github.com/delvtech/agent0/pull/1153
* simplifies run_agents; adds ability to bump bot funds by dpaiton in https://github.com/delvtech/agent0/pull/1154
* Adjusting path independence script to run by slundqui in https://github.com/delvtech/agent0/pull/1150
* Add rollbar logging to fuzzbots. by sentilesdal in https://github.com/delvtech/agent0/pull/1152
* Minting from deploy account by slundqui in https://github.com/delvtech/agent0/pull/1157
* Adding set variable rate to interactive hyperdrive by slundqui in https://github.com/delvtech/agent0/pull/1156
* Updating interactive fuzz scripts to run and assert (some are failing currently) by slundqui in https://github.com/delvtech/agent0/pull/1158
* Fixing create checkpoint call in interface by slundqui in https://github.com/delvtech/agent0/pull/1159
* moves setup_logging function up a level by dpaiton in https://github.com/delvtech/agent0/pull/1160
* add logging to path independence test by dpaiton in https://github.com/delvtech/agent0/pull/1161
* regenreate types by sentilesdal in https://github.com/delvtech/agent0/pull/1168
* Adding flag to advance time to create intermediate checkpoints as needed by slundqui in https://github.com/delvtech/agent0/pull/1163
* rename set_rate to set_variable_rate in the Interface by dpaiton in https://github.com/delvtech/agent0/pull/1167
* make preview calls only when necessary for slippage by wakamex in https://github.com/delvtech/agent0/pull/1149
* Running data pipeline in a thread for performance in interactive hyperdrive by slundqui in https://github.com/delvtech/agent0/pull/1169
* allow private key to be passed to interactive agent by wakamex in https://github.com/delvtech/agent0/pull/1144
* Fix up some interactive fuzz tests to unify logging & format by dpaiton in https://github.com/delvtech/agent0/pull/1170
* Add close positions past maturity fuzz tests by sentilesdal in https://github.com/delvtech/agent0/pull/1162
* Making pool cleanup private in favor of calling chain.cleanup() by slundqui in https://github.com/delvtech/agent0/pull/1172
* reorganize interactive fuzz tests to use shared functions by dpaiton in https://github.com/delvtech/agent0/pull/1171
* Adding save_state function by slundqui in https://github.com/delvtech/agent0/pull/1173
* fuzz profit check bugfix by dpaiton in https://github.com/delvtech/agent0/pull/1174
* Add dump state to fuzz tests by slundqui in https://github.com/delvtech/agent0/pull/1175
* Automate Interactive Fuzz Tests by sentilesdal in https://github.com/delvtech/agent0/pull/1176
* Adding assertion checks to fuzz_long_short by slundqui in https://github.com/delvtech/agent0/pull/1177
* Changing checkpoint default by slundqui in https://github.com/delvtech/agent0/pull/1178
* Fuzz bot add logs by slundqui in https://github.com/delvtech/agent0/pull/1179
* Reworking index bookkeeping for chainsync by slundqui in https://github.com/delvtech/agent0/pull/1180
* fuzz command args bugfix & more fuzz logging by dpaiton in https://github.com/delvtech/agent0/pull/1182
* Removing debug prints by slundqui in https://github.com/delvtech/agent0/pull/1183
* remove old function by wakamex in https://github.com/delvtech/agent0/pull/1181
* test interactive get config by wakamex in https://github.com/delvtech/agent0/pull/1136
* add interface tests by wakamex in https://github.com/delvtech/agent0/pull/1184
* Allow advance time with checkpoints without data pipeline for speedup by slundqui in https://github.com/delvtech/agent0/pull/1186
* rename api to interface by wakamex in https://github.com/delvtech/agent0/pull/1185
* Fuzz bot invariant checks logging rework by slundqui in https://github.com/delvtech/agent0/pull/1187
* Fuzz inv hotfix by slundqui in https://github.com/delvtech/agent0/pull/1189
* Adding experimental flag to chain to allow for slow but won't crash mode by slundqui in https://github.com/delvtech/agent0/pull/1190
* add optional command line arg to run_all_fuzz_tests by dpaiton in https://github.com/delvtech/agent0/pull/1188
* increment project version by dpaiton in https://github.com/delvtech/agent0/pull/1191
* create hyperdrive interface fixture by wakamex in https://github.com/delvtech/agent0/pull/1192
* move chain fixture to agent0.test_fixtures by wakamex in https://github.com/delvtech/agent0/pull/1193
* add retry_utils test by wakamex in https://github.com/delvtech/agent0/pull/1194
* Non-experimental mode runs data pipeline synchronously by slundqui in https://github.com/delvtech/agent0/pull/1195
* Logging failed variables in fuzz tests to rollbar by slundqui in https://github.com/delvtech/agent0/pull/1197
* add liquidate to interactive hyperdrive by wakamex in https://github.com/delvtech/agent0/pull/1198
* add transaction unit tests by dpaiton in https://github.com/delvtech/agent0/pull/1196
* add liquidate test by wakamex in https://github.com/delvtech/agent0/pull/1200
* econ experiment by wakamex in https://github.com/delvtech/agent0/pull/1148
* Fixing exception message and adding todos by slundqui in https://github.com/delvtech/agent0/pull/1202
* Adjusting default timeout to account for block mining mode by slundqui in https://github.com/delvtech/agent0/pull/1203
* Removing invariance checks that shouldn't be checked, and being explicit about checking effective share reserves by slundqui in https://github.com/delvtech/agent0/pull/1205
* Minimum txn amount check and test by slundqui in https://github.com/delvtech/agent0/pull/1204
* Path independence tests turns off fees by slundqui in https://github.com/delvtech/agent0/pull/1208
* Adding assertions to long_short_maturity_values by slundqui in https://github.com/delvtech/agent0/pull/1209
* add minimum_transaction_amount to get_liquidation_trades by wakamex in https://github.com/delvtech/agent0/pull/1210
* Custom exceptions subclasses from Exception instead of BaseException by slundqui in https://github.com/delvtech/agent0/pull/1211
* Better rollbar logging by slundqui in https://github.com/delvtech/agent0/pull/1212
* Adding checkpoint_id to checkpoint info field for crash reporting by slundqui in https://github.com/delvtech/agent0/pull/1215
* regenerate hypertypes by sentilesdal in https://github.com/delvtech/agent0/pull/1217
* Explicit checks of checkpoint duration and position durations by slundqui in https://github.com/delvtech/agent0/pull/1219
* split hyperdrive interface into read & readwrite versions by dpaiton in https://github.com/delvtech/agent0/pull/1220
* Adds interface endpoints for building Trade objects by dpaiton in https://github.com/delvtech/agent0/pull/1221
* Randomize liquidation by slundqui in https://github.com/delvtech/agent0/pull/1222
* Use pypechain's new deploy method by sentilesdal in https://github.com/delvtech/agent0/pull/1218
* Setting fixedpointmath requirements to be from pypi by slundqui in https://github.com/delvtech/agent0/pull/1224
* additional interactive hyperdrive tests by wakamex in https://github.com/delvtech/agent0/pull/1223
* New best effort for getting block number on crash by slundqui in https://github.com/delvtech/agent0/pull/1227
* update for latest hyperdrive and hyperdrivepy by dpaiton in https://github.com/delvtech/agent0/pull/1214
* update version to 0.11.0 by dpaiton in https://github.com/delvtech/agent0/pull/1229
**Full Changelog**: https://github.com/delvtech/agent0/compare/v0.10.0...v0.12.0