Progress: Scenario A-3 — operator dashboard, safety events, Config, and fleet polish in the private WebUI #77
massivedev0
started this conversation in
MarketMaking.app
Replies: 0 comments
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.
Context
This is a progress update for scenario A (private self-hosted WebUI,
directHttptransport) from the original proposal in Proposal: Modern graphical WebUI for ADAMANT TradeBot.Scenario A is delivered in three increments. Increments #2 (fleet, market, commands, logs, 2FA) and #3 (live situation, MM health dots, params UX) are closed. This post covers increment 3 — the operator dashboard, safety stitching, admin Config, and fleet shell polish.
Tracking: adamant-tradebot-webui#1 (parent), adamant-tradebot-webui#4 (this increment, closed). Companion bot API work: adamant-tradebot#136.
Rule unchanged: the WebUI never connects to exchanges. All market, account, and parameter data flows from the bot
/api/v1API.What shipped in scenario A-3
Operator dashboard
The per-bot Dashboard is now the primary landing view after you pick a bot tab:
GET /api/v1/status, 24h price/volume, and a feature edition badge (Basic → Custom → Advanced → Premium → Full) derived from installed bot capabilities, not from which modules happen to be ON right nowDashboard — one screen for “is MM running, what edition is this bot, and what is configured right now?”
Market polish
{ id, market, side }; already-gone orders are treated as success for the operatorMarket — monitor liquidity placement, spread, and balances without leaving the WebUI
Parameters: live situation + safety
Parameters — edit strategy live; the situation strip shows how inventory and order mix evolved over the last 12 hours
Events board: audit + safety actions
Events — who changed what, when, with balance context; safety stops are visible and actionable
Config (admin)
tradeParams_*.jstree) at equal heightconfig.jsonSummary (Identity, Market, WebUI & API, Messaging, Modules, Limits) and raw JSON tabssocketEnabled !== trueConfig (admin) — runtime health, pair metadata, and a sanitized config snapshot without secrets
Fleet shell and registry
{Exchange}-{tb|liq}frombot_id) and Account (defaultconfig.account); Transport, Version, Branch, Pair balance ${label}+{account}; offline rows are muted, connected-but-stopped bots stay full contrastWhat this means if you operate a token MM bot
config.jsonworking/degraded/stopped) from/statuswith a 10-minute grace period after startYou still self-host everything: WebUI behind your reverse proxy, bots on your infrastructure, no exchange API keys in the WebUI, mandatory 2FA for operators (email / ADM / ETH wallet).
Stack reminder
GET /api/v1/bot,/status,/params,/account/*, WSparams:updatedDirectHttpTransportonly (scenario B relay is not started)Repo: Adamant-im/adamant-tradebot-webui
What is next
Scenario B (public subscription WebUI via outbound relay + license token) remains on the parent issue #1. Scenario A private self-host is feature-complete for the MVP scope defined in discussion #49; further A work is polish and bot API alignment, not new deployment models.
Questions and feedback welcome — especially from token teams running the free bot today and considering the private WebUI edition.
All reactions