Skip to content

v2.1.0-alpha.2

Pre-release
Pre-release

Choose a tag to compare

@mesudip mesudip released this 02 Oct 18:44
c3ba05a

The second pre-release of 2.1. GovTool now runs on a single new backend that no longer requires db-sync, and the whole stack can be tested end to end on a local devnet.


Highlights

  • New backend: the Haskell backend and the older TypeScript backend (backend-ts) are removed. The new govtool-backend replaces both and serves the full GovTool API.
  • Provider layer: the backend reads chain data through a provider-agnostic contract instead of querying db-sync directly (#4246). db-sync remains the default.
  • Koios provider (alpha): set GOVTOOL_CHAIN_DATA_PROVIDER=koios to run on the public Koios API or a self-hosted Koios instance, with no db-sync database. A Blockfrost provider is included as experimental.
  • Full integration devnet: tests/devnet runs a private Cardano devnet with the complete GovTool stack, seeds it with every governance action type, and runs the pytest and Playwright suites against it. No public network or secrets are needed, and CI publishes the report to govtool-test-reports. See tests/devnet/README.md.

Also in this release

  • Metadata validation is served by the backend, backed by a new caching metadata service, and errors name the field at fault.
  • Vote figures are no longer double counted, and totals a provider cannot supply show as unavailable instead of zero (#4260).
  • Restored: governance action details and authors (#4261), search (#4262) and CIP-179 surveys (#4263).
  • Security: rate-limited, CIP-100-only anonymous IPFS uploads (#4171) and Sentry error reporting (#2776).
  • Newsletter signup in the footer (#4249).

Known issues

  • Koios is slow to start on preview: the backend does not listen until its first DRep and proposal snapshot is warm. Preview has about 10× mainnet's DReps and governance actions, so startup there takes much longer than on mainnet (#4274).

Progress against the roadmap (#4216)

Commitment This release
Replace the Haskell backend with TypeScript Done
Make running GovTool locally easier Improved further: the full stack and integration suites now run on a local devnet. Browser wallets can't connect to it yet, so manual testing still needs a public testnet
Make contributing easier In progress: integration suites run locally
Bring all components into one repository In progress: metadata service and proposal discussion backend added
Lean less on self-hosted Cardano infrastructure Alpha shipped: Koios provider
Clean up the issue backlog Ongoing

Contributors

  • @kusssal: vote figure, proposal detail, search and survey fixes, backend reliability, image builds, newsletter signup
  • @mesudip: provider layer, integration devnet, metadata service, governance action history

View new commits or the full changelog here.