Skip to content

Releases: blockful/anticapture

v1.4.0

19 Dec 17:52
49c323d

Choose a tag to compare

ADDED

  • Token Holders & Delegates Section: Complete implementation with filterable tables, charts, and detailed drawer views
  • Balance History Feature: Charts and tables showing token holder balance changes over time
  • Delegation History Tracking: Historical view of delegation changes with voting power variation graphs
  • Voting Power Analytics: Charts and tables showing voting power distribution and changes
  • Top Interactions Feature: Pie chart and table showing most frequent delegation interactions
  • New Tooltip System: Redesigned tooltip component with better UX, mobile support, and animations
  • Storybook Configuration: Added branding, dark theme, and component stories for the design system
  • ENS Data Integration: ENS name and avatar resolution using Viem
  • Query Parameter Persistence: Filters, tabs, and drawer states now persist in URL

CHANGED

  • Table Components: Major refactor for better performance with virtualization and improved loading states
  • Navigation: Sidebar buttons now show labels and improved hover states
  • UI Components: Multiple design updates including progress bars, charts, badges, and icons
  • Data Fetching: Improved ENS resolution with better fallback handling
  • Circulating Supply: Now properly saved in the indexer for Nouns and other DAOs
  • Design System: Enhanced consistency across buttons, dividers, tooltips, and other components

FIXED

  • Tooltip overflow and z-index issues
  • Safari mobile tooltip interactions
  • Sidebar button hover states
  • Table hydration errors
  • Button-within-button accessibility issues
  • Chart rendering for edge cases with no data
  • CSV data formatting
  • Countdown display formatting
  • Proposal voting period calculations

REMOVED

  • Old TooltipPlain component (replaced with new Tooltip system)
  • Unused commented code and dependencies
  • Redundant filter logic

v1.3.1

15 Dec 18:04
1f56bd5

Choose a tag to compare

ADDED

  • Fetch app version from the github API

v1.3.0

11 Dec 18:10
6ccf2e4

Choose a tag to compare

ADDED

  • 404 Not Found Page - Comprehensive error page with custom design, animations, and user-friendly messaging including links to dashboard and bug reporting
  • Dynamic URL Parameter Management - Query parameter handling for token distribution and transaction filters using nuqs library
  • Proposal Filtering Capability - New includeOptimisticProposals parameter for querying proposals with configurable enum values (TRUE/FALSE)
  • ProposalType Tracking - New proposal type field added to schema and indexer for proposal categorization
  • Interaction Analytics - Filter by address and sort by volume on the interaction endpoint
  • DAO Config Enhancements - Proposal link configuration and Anticapture added as governance option for ENS DAO

CHANGED

  • Query Parameter Architecture - Refactored to structured approach with nuqs for cleaner URL state management
  • Proposal Link Handling - Updated to use configurable governance platform URLs instead of hardcoded Tally links
  • Button Component - Enhanced to support asChild prop for better composition flexibility
  • Service Layer - Decoupled services for improved modularity
  • Filter Logic - Consolidated transaction filter logic into unified useTransactionsTableParams hook

FIXED

  • Chart Rendering - Added fallback domain values to prevent crashes when chart data is empty
  • Interaction Count - Corrected total count calculation in interaction queries
  • Initial Metrics - Fixed metrics not being properly applied on initialization
  • Self-Transfer Filtering - Moved filtering to query level for more efficient data handling
  • Date Parsing - Proper parsing and handling of startDate/endDate parameters

REMOVED

  • Old not-found page implementation (replaced by new unified version)
  • Unused transaction parameter hook

v1.2.0

10 Dec 11:39
5fd324c

Choose a tag to compare

🆕 ADDED

  • Security Alerts Page: New dedicated page featuring real-time governance alert integrations for Telegram and Slack
  • ENS Label Support: Added ENS labels to address search functionality
  • Obol Stage Assignment: Set to NO STAGE

🔧 CHANGED

  • Next.js Version: Upgraded to v15.3.6
  • Turbo Dev Script: Added turbo to development workflow
  • Proposal Timing Calculation: Vote timing now calculated from proposal start timestamp instead of creation timestamp, with voting delay consideration
  • Badge Styling: Updated designs with improved text formatting and hover states
  • Transactions Table: Disabled for all DAOs

🐛 FIXED

  • Voting Power Indexing: Corrected historical voting power calculations
  • Proposal Activity: Fixed missing proposals by accounting for voting period and voting delay in activity calculations
  • Mobile UI Issues: Resolved menu overlay conflicts with table headers
  • Icon Rendering: Fixed Nouns icon fill rule problem

v1.1.1

03 Dec 19:34
1a3dcfc

Choose a tag to compare

🆕 ADDED

  • New API fields / endpoint additions for account interactions: A GraphQL query accountInteractions(...) was added (with filters for days, limit, accountId, min/max amount) allowing retrieval of account transfer history.
  • Additional filters for “variations”: The update adds support for filtering by amount in API queries (e.g. for transactions / variations), giving more granular querying capabilities.
  • Dashboard UI enhancements: On the transactions table, a new “metrics / supply-type” system was added — allowing users to filter by supply type (e.g. CEX, DEX, LENDING, TOTAL).
  • New endpoints / controllers in the indexer backend covering a wide set of data: account balances, historical balances, assets, DAO metadata, proposals, token distributions, governance activity, voting-power history and variations. Essentially — a much richer foundation for indexing and querying DAO + token + transaction + governance data.

🔧 CHANGED

  • Major refactoring / reorganization of API packages: many files have been moved / renamed or reorganized to clarify architecture and separate concerns.
  • Dashboard front-end code (e.g. the transactions table) refactored: logic for supply metrics, filtering, state/props handling, and rendering now aligns with the new filtering system (simpler/cleaner supply-type handling).
  • The schema of GraphQL API updated: the GraphQL schema file was extended to include new query types (accountInteractions, accountBalanceVariations, etc.), changing the overall API contract.

🐛 FIXED

  • Fixes around transaction table pagination and token-distribution / supply-filtering logic in the dashboard to avoid bugs when filtering or paginating data.
  • Schema / resolver fixes to ensure newly added endpoints work without error (e.g. GraphQL schema adjustments, endpoint ID reference corrections).

v1.1.0

15 Nov 11:57
e8f6a0e

Choose a tag to compare

Added

  • Support for quorum logic in “nouns” DAOs (EIP-721 token-based DAOs) — enables governance for token types beyond standard fungible tokens. code
  • A new token info query endpoint/UI element to surface detailed token metadata in-app. code
  • Introduced a chain icon component (to visually distinguish different blockchain networks) in the UI. code
  • Panel V2 UI updates (header above the panel, mobile display improvements) — improving layout and responsiveness of the dashboard. code

Changed

  • Terminology for supply types in transactions was updated (e.g., “unassigned supply” label changed) for clarity. code
  • Adjusted dashboard overview units and value parsing (added decimals in DAO config) — improved accuracy of metrics presentation. code
  • Expanded the proposals API request limit from 100 to 1000 — better handling of high-volume governance contexts. code

Fixed

  • Corrected multi-line chart capability so that all token types (including ERC-721) are properly accounted for. code
  • Fixed calculations for “total” and “treasury” supplies to ensure accurate figures. code
  • Handled zero-address delegation cases by treating them as self-delegation — prevents incorrect state in governance delegation flows. code
  • Improved display and type checking on tokens, delegation history, mobile views, and various dashboard elements for smoother user experience across devices. code

Removed

  • Dropped the “DAO index” from the panel — simplifying the UI and removing legacy navigation or listing elements. code
  • Removed use of unused components (for example, MultilineChartTokenDistribution) to clean up codebase. code

v1.0.0

03 Nov 12:23
eebef34

Choose a tag to compare

ADDED

  • Dashboard enhancements: a dedicated DAO Overview section with metrics (treasury stats, token distribution chart, top accounts chart).
  • Integration of a new DAO (Obol DAO) into both indexing pipeline and frontend metadata (images/icons/configs).

CHANGED

  • Refactored multiple hooks, components, and layouts for better readability and performance (e.g., DAO hooks, token-data handling).
  • Consolidated DAO configuration metadata (removal of redundant display names, unified naming conventions).
  • Updated schema and GraphQL client code to support new requirements (e.g., token properties, indexing configs).
  • Redesign of section/page structure: splitting sections into pages, limiting screen widths, improving spacing/layout.
    • UI/UX improvements: loading skeletons for pages, charts, components; connect-wallet custom button; responsive layouts for mobile and large screens.

FIXED

  • Resolved numerous mobile layout issues (tables truncating, voters tab, proposal page for other DAOs).
  • Fixed data calculation issues (e.g., duplicate quorum percentage, NAN on percentages when no votes, vote summitted toast color, missing typing errors).
  • Improved UI interactions: scrollbar styling, modal closing behavior, vote modal disable when no option selected.

v0.7.3

28 Oct 13:26
da3461f

Choose a tag to compare

ADDED

  • Nouns DAO support (ERC-721): end-to-end indexers (token, governor, auction) with proposal/vote handling, noun transfers/delegations, and auction settlement → tokenPrice recording.
  • NFT price service: NFTPriceService that fuses on-chain auction prices with CoinGecko ETH USD data to return historical USD series and current NFT price.
  • Metrics subsystem: modular metric updaters for total supply, delegated supply, circulating supply, and category supplies (CEX/DEX/Lending/Treasury) with daily bucket writes; truncateTimestampTime and getCurrentDayTimestamp helpers.
  • Constants & wiring updates: tokenType per DAO (ERC20 vs ERC721); Nouns contract addresses; TreasuryAddresses set (incl. Nouns).

CHANGED

  • Environment contract: COINGECKO_API_URL and COINGECKO_API_KEY are now required; Dune vars remain optional.
  • Event flow architecture:
    • tokenTransfer, delegateChanged, and delegatedVotesChanged are decoupled from metrics/flag logic.
    • Indexers (UNI/ENS/ARB/OP/SCR/GTC) now pass categorized address lists to compute flags and call the shared metrics updaters explicitly.
  • Transactions service: simplified to use repository-level aggregate queries

FIXED

  • Safer delegation counters: guards against negative delegationsCount and uses idempotent upserts.
  • More reliable transaction flags: flags computed once in DAO-specific indexers using explicit address sets, reducing misclassification/double work.
  • Consistent circulating supply: now always derived as totalSupply − treasury via a single metric path (prevents drift across handlers).

v0.7.2

20 Oct 18:57
c9a9112

Choose a tag to compare

Changelog Summary

ADDED

  • Scroll (SCR) DAO Integration: Full support for Scroll DAO including token indexing, governance tracking, and UI components
  • Voting Power Variations API: New endpoint (/voting-power/variations) to track and rank the biggest changes in voting power over time periods
  • Account Balance Variations API: New endpoint (/account-balance/variations) to track and rank the biggest balance changes over time periods
  • Token Data Hook: useTokenData hook for fetching comprehensive token properties (supply, price, delegations)
  • Quorum Calculation Types: Standardized constants for different quorum calculation methods across DAOs
  • Partial Delegation Support: Infrastructure to handle Scroll's partial delegation feature where users can delegate to multiple addresses with different weights

CHANGED

  • Quorum Calculation System: Refactored to support DAO-specific quorum logic (Delegate Supply, Total Supply, or custom calculations like Scroll's fixed 0.21%)
  • Block Time Architecture: Moved from hardcoded Ethereum block time constant to DAO-specific configuration values stored in dao-config
  • Panel Section: Removed time interval selector, now shows current delegated supply without time-based filtering
  • GraphQL Schema: Reorganized with better documentation, added variation tracking types, and made vote reasons optional
  • Proposal Non-Voters Endpoint: Enhanced to accept address filtering via new addresses parameter

FIXED

  • Token Distribution Change Rate: Prevented division by zero errors when baseline value is zero
  • Number Formatting Precision: Format function now properly respects the fixed parameter for decimal places
  • Token Distribution Tooltip: Removed improper flooring that caused precision loss in displayed values

REMOVED

  • Historical Block Number Utilities: Eliminated unused blockchain block calculation helpers
  • Hardcoded Block Time Constants: Removed ETHEREUM_BLOCK_TIME_SECONDS in favor of chain-specific configuration
  • Unused Type Definitions: Cleaned up empty shared/types/index.ts file

v0.7.1

13 Oct 18:39
e4957c9

Choose a tag to compare

ADDED

  • Proposal Non-Voters Feature: New API endpoint and service layer to identify and track active delegates who didn't vote on specific proposals, including voting power variations and last vote timestamps
  • Token Price Integration: Coingecko API integration for real-time token pricing with support for multiple currencies (ETH/USD)
  • Token Properties API: New endpoint exposing comprehensive token metrics (total supply, delegated supply, CEX/DEX/lending supply, circulating supply, treasury)
  • CSV Export System: Universal data export functionality across all tables and charts with proper serialization handling
  • Historical Date Range Flexibility: Added fromDate parameter to historical queries for arbitrary time range analysis
  • Voting Power Variation Tracking: Infrastructure to calculate and track changes in voting power over configurable time periods

CHANGED

  • Pagination Architecture: System-wide migration from page-based pagination to cursor-based infinite scroll with hasMore/onLoadMore patterns
  • Data Fetching Strategy: Enhanced with aggressive caching, deduplication logic, and proper merge strategies in GraphQL query updates
  • Storybook Infrastructure: Upgraded from v8 to v9 with new addon system and Next.js 15 compatibility fixes
  • Loading State Management: Unified approach using Apollo's NetworkStatus for consistent loading indicators across all queries
  • Table Data Access Pattern: Shifted from traditional page navigation to continuous data loading with sentinel-based intersection observers
  • Query Response Handling: Improved with better accumulation strategies preventing duplicate data in infinite scroll scenarios

FIXED

  • Data Consistency: Resolved duplicate entries in paginated results through proper merge logic in updateQuery handlers
  • Build System: Fixed Storybook production builds failing due to circular dependencies and webpack hooks
  • State Synchronization: Corrected stale closure issues in hooks causing incorrect data rendering
  • Query Performance: Optimized historical data fetching with proper memoization and cache invalidation

REMOVED

  • Page-Based Navigation: Eliminated fetchPreviousPage, page counters, and total page calculations
  • Traditional Pagination UI: Removed pagination controls in favor of scroll-based loading
  • Legacy Table System: Deprecated old table infrastructure in favor of modern implementation
  • Redundant State Management: Cleaned up duplicate loading and pagination state tracking across multiple hooks
  • Default Storybook Content: Removed boilerplate documentation stories