Release: adamant-tradebot v8.0.0 — technical overview and upgrade notes #54
adamantmm
started this conversation in
MarketMaking.app
Replies: 1 comment
-
|
Great update! |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Summary
adamant-tradebot v8.0.0 is now released on the
devbranch and tagged as v8.0.0.This is a major upgrade of the open-source (Basic) market-making bot. It realigns the OSS codebase with the current Premium engineering baseline while keeping OSS scope intact: REST-first, spot-focused, no Premium-only modules reintroduced.
Tracking: #109 · merged in #110
If you operate the bot for a listed token, the practical outcome is a more dependable runtime: cleaner startup, safer upgrades on existing databases, refreshed exchange connectors, and an optional private WebUI API for external clients.
What changed at a glance
7.0.1→8.0.0adamant-api3.x/api/v1+ WebSocket transport (scenario A)Architecture
Bootstrap sequence (
app.js)Startup is now explicit and ordered:
db.readymodules/dbMigrations.js)modules/startupWarmup.js)mm_*trading modulesThis reduces race conditions on cold start and makes upgrades on existing deployments safer.
Command handling
The monolithic
modules/commandTxs.jswas split into focused handlers undermodules/commands/:account,orders,trade,info,featuresbase,compose,context,helpersCommands still arrive via ADAMANT Messenger (and Telegram where configured), but the code path is easier to maintain and extend.
ADM transaction intake
Legacy modules (
modules/api.js,modules/incomingTxsParser.js,modules/checkerTransactions.js) were replaced with:modules/adamantApi.jsmodules/admTxChecker.jsmodules/admTxParser.jsThis aligns ADM command intake with
adamant-api3.x and the current socket/polling patterns used in the Premium line.Database migrations
modules/dbMigrations.jsruns one-off migrations at startup. The first included migration renames legacy order fieldtype→sidewhen safe to do so.Upgrade note: existing deployments should back up MongoDB before the first v8 start, then verify open orders and stats after migration.
Optional WebUI API (Bot API v1)
v8.0 ships the private HTTP API discussed earlier in #48 and #49.
Location:
api/Stack:
@fastify/jwt,private_webui_secret_key)params:updatedand related transport hooksCore routes (
/api/v1):GET /bot— capabilities bootstrap (installedmm_*modules + exchange feature flags)The API is optional and off by default. Enable via
private_webuisettings in config. It is designed for self-hosted graphical clients; the bot remains the only component that talks to exchanges.Security reminder: set a strong
private_webui_secret_key, restrictprivate_webui_allowed_ips, and keep the API off the public internet unless you know what you are doing.Exchange connectors (OSS)
Supported in the Basic edition:
Breaking changes for operators:
trader_fameexnet.js/fameexnet_api.js)Market-making modules (
mm_trader,mm_orderbook_builder,mm_liquidity_provider,mm_price_watcher,orderCollector,orderStats,orderUtils) were refreshed alongside trader adapters.Dependencies and tooling
Notable runtime updates:
adamant-api2.x → 3.xmongodb6 → 7axiosupdatedzod,fast-jwt,json-parse-bigintexpress,form-data,uuidfrom the WebUI pathDev/tooling:
npm run test:general,npm run test:api-webui)tsconfig.webui-api.jsonfor API typedef checksCONTRIBUTING.mdwith test workflow guidanceAt release time:
npm run lintclean;npm audit --audit-level=highreported 0 high/critical advisories.Upgrade guide (v7.x → v8.0.0)
Then:
.nvmrcin repo)config.default.jsoncinto yourconfig.jsoncprivate_webui_*security settingspm2 restart tradebotNamed configs still work:
OSS scope boundary
v8.0 brings Premium-line engineering quality into the OSS tree, but does not reintroduce Premium-only assumptions:
For advanced modules, custom CEX connectors, WebUI hosting, and setup support, see Premium features.
Further reading
Feedback
If you run v8.0 on a live pair, please share:
For bugs, open an issue. For product questions, reply here in MarketMaking.app.
Beta Was this translation helpful? Give feedback.
All reactions