These notes are generated from the published package changelogs. The four
@agg-build packages are version-linked, so a release usually bumps them
together. Tags below show which packages shipped each version.- Improve live trading and resolved-market handling across the AGG React packages.
@agg-build/hooks- invalidate and optimistically refresh cached market, balance, position, and activity data when
market_resolvedWebSocket events arrive - export venue-attributed live best-price candidate helpers/hooks so UI surfaces can keep the displayed venue logo aligned with the freshest live price
- invalidate and optimistically refresh cached market, balance, position, and activity data when
@agg-build/ui- add shared claim-winnings and resolved-market claim hooks for resolved positions
- show the new resolved-market earnings/claim state in the event market flow
- add
onBeforePrimaryActionso partners can run a pre-submit gate before normal order execution - keep market detail outcome prices and venue logos in sync with live best-price updates
@agg-build/sdk- no direct SDK source or API changes landed in this push
- patch bump only to keep the linked public package versions aligned for release/publishing with the updated hooks and UI peers
-
Add provider-level AGG UI trading execution mode config.
AggProvidernow acceptsconfig.trading.executionModeso hosted UI surfaces can share a global live or paper trading mode without threadingexecutionModethrough every page or order panel.PlaceOrder,HomePage,EventMarketPage, andUserProfilePageuse the configured mode by default while preserving explicit component-level overrides. The shared balance provider now also uses the configured paper mode, soConnectButtonheader totals andUserProfilePagebalance/positions value cards read paper balances instead of falling back to live-mode zeroes. Paper balances are labeled as Paper in the user profile network breakdown, use a shared paper-mode icon, and show a tooltip warning when the app is running with simulated paper funds.
-
Add safe midpoint batching for component-driven market pages.
AggClient.getMidpointsnow splits large/midpointsGET requests into smaller batches and merges the responses, defaulting to 75 venue market IDs per request to stay below common CDN URL limits. React hooks and UI components read the same default throughconfig.market.maxMidpointIdsPerRequest, and direct hook/SDK callers can override the cap when needed.
-
sdk, hooks: Narrow recurrence filters to the documented public cadence enum and expose the full supported venue-event cadence list through
RECURRENCE_CADENCES, includingPT10M,P1M, andP1Y. Migration guidance: replace dynamic recurrence-catalog calls with the SDKRECURRENCE_CADENCESexport or the OpenAPI enum. Pass the literal"null"only when filtering one-off venue events.listRecurringCryptoMarketsremains limited to deterministic crypto durations:PT5M,PT15M,PT1H, andP1D.
- Frontend feature round-up since the last release: live arbitrage signals, nested category navigation, event-tile price gaps, paper-trading mode, and position/redeem fixes.
- Live arbitrage (
@agg-build/sdk,@agg-build/hooks,@agg-build/ui)- SDK added
subscribeArbandsubscribeArbFeed, with the supporting wire types (WsArbMarketUpdate,WsArbFeedBatch,WsArbFeedEntry), socket dispatch, reconnect, and refcount handling, and documented the new arb actions in theWsClientMessageunion. - Hooks added
useMarketArb(live per-market arb) anduseArbFeed(event-level MAX rollup), exported with theirUseMarketArbResult/UseArbFeedResulttypes. - UI brought back the arbitrage sort option and added event-list filters; event tiles and lists now surface arb-driven ordering.
- SDK added
- Nested categories (
@agg-build/hooks,@agg-build/ui)- Hooks added
useCategoryChildren(withUseCategoryChildrenOptions) for fetching subcategories. - UI renders the category
displayNameon home tabs and event-list filters, supports nested subcategories, andEventListPropsgainedonCategoryRootChange.HomePageCategorynow carries an optionaldisplayName.
- Hooks added
- Event-tile price gaps (
@agg-build/hooks,@agg-build/ui)- Hooks exported the
computePriceGapshelper plusMAX_PRICE_GAP_PCT/MIN_PRICE_GAP_PCTand theComputePriceGapsOptions/PriceGapValuetypes. - A new
enablePriceGapfeature flag andpriceGaplabel gate compact price-gap signals on aggregated event tiles; tiles wait for midpoints before computing gaps to avoid flicker.
- Hooks exported the
- Paper-trading mode (
@agg-build/sdk,@agg-build/hooks,@agg-build/ui)- SDK introduced the
ExecutionMode("live" | "paper") type and threaded an optionalmodethroughExecuteManagedParams, smart-route params, positions/orders queries, andManagedBalancesParams. - UI’s place-order panel accepts an
executionModeprop and reports the chosenmodeback throughonPrimaryAction.
- SDK introduced the
- Positions, redeem, and claim fixes (
@agg-build/hooks,@agg-build/ui)- Hooks exported
invalidateUserClaimStateand now walk the active bucket when counting redeem-eligible positions; auto-settled HL winners are reported as redeemed rather than ineligible. - UI user-profile tabs trust server-provided position buckets, redeem payout renders from the 6-decimal
totalPayoutRaw(no longer derived fromlegs[0]decimals), and a new partner-overridableclaimlabel group powers claim lifecycle notifications.
- Hooks exported
- Withdrawals & misc (
@agg-build/sdk,@agg-build/ui)- SDK added the
WithdrawalSourceTokenSymboltype to support pUSD withdrawal sources;WithdrawManagedSourceItem.tokenSymbolnow acceptspUSD. - UI event-list skeletons can render the discovery sidebar (
withSidebar), with refreshed event-tile coloring, volume sort, and updatedsort-volume-24hr/shield-trusticons.
- SDK added the
- Live arbitrage (
- Add
email: string | nullto the typedaccounts.createdwebhook event payload so partners can read email addresses supplied by magic-link or OAuth sign-in.
-
Expand the trading labels surface with 9 new partner-overridable keys
for execution failure messaging (
sellNoOnchainPosition,venueQuoteUnfillable,venueMinOrderSize,sourceBalanceChanged,venueMarketResolved,dflowWalletUnverified,venueNoQuotePath,solanaBlockhashExpired,venueRateLimited,serviceBlockedOrder), and wire matching patterns intonormalizePlaceOrderErrorMessageso the SDK renders friendly copy for everyUserActionableStepErrorreason code the trade-executor now emits. Also rewrites the venue-terminated pattern coverage to handle Limitless’sFAILED/UNMATCHEDsettlement statuses with dedicated friendly copy ("Order didn't settle on-chain"and"No liquidity matched your order at the quoted price"), and extends the min-order-size pattern to recognize predict.fun’s existingpredict_min_quantityuser-actionable copy. - Centralize execution failure labels and clean up place-order error normalization for venue outages and expired submission deadlines.
- Deposit & withdraw UX overhaul:
- New
useWithdrawEstimatehook surfaces per-route fee and ETA estimates before submit. - Refreshed deposit and withdraw flows, including new amount/method/success screens, transfer fee summary, and friendly error states.
WithdrawManagedResponsenow exposescompletedAmountRaw, and the WSWithdrawalLifecycleEventincludesrequestedAmountRawandcompletedAmountRawso consumers can render the terminal settled amount.- New balance/activity invalidation helpers (
invalidateUserActivityQueries,invalidateUserMoneyState,userActivityQueryKeys) exported from@agg-build/hooks. - User profile activity rows and balance cards updated with refined states; new
spinnerandcircle-xmarkicons; tooltip primitive tweaks.
- New
- Fix a bug in geo-blocking behavior for order splitting
- UI updates for Positions tab and removed hardcoded colors
- Added new prop in tooltip for gap and UI adjustments
- Fix a bug in geo-blocking behavior for order splitting
- UI updates in the withdraw modal and claim flow for design QA
- Bug fix for nullable venueMarketOutcomeId
- Bug fix for nullable venueMarketOutcomeId
- Update network chain logos to prediction-markets CDN paths; fix Solana missing from deposit modal network list
- removed redundant div from venue selection
- Sorting user positions
- Market details UX updates
-
Added smart-route fee breakdown support across AGG packages.
@agg-build/sdknow includes optionalfeeBreakdowndata on smart-route quote responses so integrators can display venue fees, bridge fees, execution gas, and total fees.@agg-build/hooksaddsfeatures.showFeesBreakdownto UI config and new label keys for fees and updated positions table/status copy.@agg-build/uiadds optional fee breakdown display in the place-order flow, updates route ordering to prioritize better executable value, improves mobile event-market trade opening from outcome selection, and upgrades positions UX (active/closed filtering, status/result badges, and claim-state handling).
showFeesBreakdown).
- Added xs size for icons and geo block updates for order
-
Refresh published package metadata and fixes for the AGG SDK package stack.
Updates:
- @agg-build/hooks: fix midpoint price calculation in
useViewportMidpoints; minor adjustments to UI-config labels and theuseWithdrawFlowhook. - @agg-build/ui: settlement formatting refactor (new
settlement-text-renderer+settlement-text.utils);PlaceOrderflow updates including default amount, sell-tab default, partially-filled state, best-price wiring, max label, and a sign-in-to-trade flow; refreshed typography variants; newappsandcircle-overlapicons; customSelectmigration for TBAs; connect-button view rewrite; event-list search/filter improvements. - @agg-build/auth: updates to the SIWE adapter and shared auth utils.
- @agg-build/hooks: fix midpoint price calculation in
-
sdk: Add withdrawal lifecycle WebSocket support — new
WsWithdrawalLifecycleEventmessage type,onWithdrawalLifecycleSDK callback, and associated types (WsWithdrawalLifecycleStatus,WsWithdrawalLegStatus,WsWithdrawalLifecycleLeg). hooks: AdduseWithdrawFlow,useWithdrawalLifecycle, anduseOnWithdrawalLifecyclehooks with full withdrawal lifecycle tracking via WebSocket. Fix live outcome price fallback so REST midpoints surface when no WS midpoint exists. ImproveuseMidpointsto prefer the venue with the lower YES midpoint for better buyer pricing. Fix hooks package exports to use format-specific type declarations (.d.mtsfor ESM consumers). ui: Add wallet withdrawal flow — recipient address input, amount/token/network selection, confirmation step, and an order-style execution timeline showing per-leg bridge/transfer progress with live lifecycle status. AddCopyButtonprimitive. Show wallet address on card-payment pending step in the deposit flow. Surface best-price venue indicators in the event list, market details, and orderbook. Fix cluster-aware market deduplication to collapse cross-page duplicates.
- Initial v1.0.0 release of the AGG client libraries on npm under the
@agg-buildscope.