Development Update — 2026-10-02

by Jamie

Share

Overview: Where Development Is Heading

The backend repo is currently focused on general improvements. Recent commit subjects include: feat(util): verify ipfs_metadata listing status against the chain; feat(close): acknowledge closeItem immediately, verify async in a worker; feat(utils): randomize collections.imageUrl from own ipfs_metadata rows; fix(logger): add missing pino-pretty devDependency; refactor(chainwatch): count -u batch backfill inserts in the run total; go.mod tidy. The work is tightening the foundation before more blockchain-facing features ship.

Overview: Where Development Is Heading

The frontend repo is currently focused on general improvements. Recent commit subjects include: fix(chains): correct Flare finality/tokenomics and Songbird status from primary sources; feat(chains): researched reference pages for all supported chains; fix(modal): give buy/sell/manage the image+meta modal's width; feat(buy): refetch after bid and poll live auctions every 30s; feat(listing): owner-aware sell/manage lifecycle + immediate close notify. The work is converging on a more stable and maintainable user experience.

Project Direction — The frontend is modernizing its architecture so future NFT marketplace features can be delivered faster.

Backend Commits

45771fe 2026-10-01 22:46:36
feat(util): verify ipfs_metadata listing status against the chain

a667974 2026-10-01 21:59:50
feat(close): acknowledge closeItem immediately, verify async in a worker

b01ff09 2026-09-30 21:44:20
feat(utils): randomize collections.imageUrl from own ipfs_metadata rows

7d0502b 2026-09-30 21:44:16
fix(logger): add missing pino-pretty devDependency

0bb8fef 2026-09-29 15:52:45
refactor(chainwatch): count -u batch backfill inserts in the run total; go.mod tidy

3056915 2026-09-29 15:52:40
feat(chainwatch): webui "Meta items fetched" tile counts this run's new items

5809c8e 2026-09-29 15:52:33
feat(chainwatch): /api/stacks goroutine dump endpoint

da0f3b8 2026-09-29 15:52:29
fix(chainwatch): deadlock in rateState.backoff (self-deadlock on rs.mu)

fd066be 2026-09-28 21:55:45
test(chainwatch): prove the rendered progress string carries the token name

f6fa7bd 2026-09-28 21:54:38
feat(chainwatch): show the token's name in a walk's progress line

370ee1f 2026-09-28 21:32:26
fix(chainwatch): iterate the chain registry in registration order, not Go's randomised map order

4cf5a1e 2026-09-28 21:32:15
fix(chainwatch): a consecutive-skip abort must leave the chunk loop, not just the inner one

ae648d1 2026-09-28 20:44:44
feat(chainwatch): start per-chain watchers even when the startup dial fails, so clients[] self-heals

6d862bd 2026-09-28 20:18:11
fix(chainwatch): range the configs map; a chain at a high index was silently unwatched

308c87e 2026-09-28 20:10:52
perf(db): add indexes for query shapes the existing ones don't cover

da787cc 2026-09-28 20:05:33
feat(chainwatch): opportunistic metadata scheduler (idle chains pick a random incomplete collection every 10m)

34faeab 2026-09-28 19:04:54
fix(chainwatch): a host-scoped stop must break the chunk loop, not just the inner one

ac34f9c 2026-09-28 16:48:54
fix(chainwatch): bound metadata fetches + per-host circuit breaker (unblocks the whole job queue)

d113eef 2026-09-27 20:47:05
docs(chainwatch): document closed-pooled-client recovery + batch ceiling 100

c9ef357 2026-09-27 20:46:43
fix(chainwatch): recover metadata walks from a closed pooled RPC client + drop batch ceiling 200->100

df0eee4 2026-09-27 19:11:59
fix(chainwatch): reconnect the new-heads subscription + buffer the head channel

57eabc6 2026-09-27 18:50:11
feat(chainwatch): report every token outcome in job progress + abandon a walk after 5 consecutive metadata skips

c9b8ff3 2026-09-27 18:13:04
feat(chainwatch): Cancel button and cancelled badge in the webui

3c22fe6 2026-09-27 18:12:53
fix(chainwatch): make a mint on a sparse collection actually reach the DB

0710cc1 2026-09-27 18:12:34
fix(chainwatch): a permanent 403 must not trigger per-chain backoff

Frontend Commits

593cc7ba9 2026-10-01 23:45:15
fix(chains): correct Flare finality/tokenomics and Songbird status from primary sources

a3c1d04fa 2026-10-01 23:32:25
feat(chains): researched reference pages for all supported chains

dcbea85b4 2026-10-01 22:30:27
fix(modal): give buy/sell/manage the image+meta modal's width

cf0d008ca 2026-10-01 22:12:31
feat(buy): refetch after bid and poll live auctions every 30s

a934c6563 2026-10-01 22:00:12
feat(listing): owner-aware sell/manage lifecycle + immediate close notify

7f2d6d06f 2026-10-01 19:36:16
chore(manifest): sync AuctionManagerCore ABI with escrow recovery functions

303f29d28 2026-10-01 19:10:55
feat(auction): add fee-settings getters to hook + sync Core ABI

796e9f6ce 2026-10-01 18:55:04
feat(auction): add getEarlyFinalizeFee read to hook + sync Core ABI

ec7496096 2026-10-01 18:48:23
feat(auction): add getRemovalFee read to useAuctionManager hook + sync Core ABI

aad143489 2026-10-01 18:43:07
feat(auction): sync AuctionManager ABI with removeListingBeforeEndTime + cancelSaleListing

782241952 2026-09-30 22:45:09
feat(collection): tappable contract address with copy/explorer menu

29af0b56b 2026-09-30 22:08:15
fix(collection): show real totalSupply instead of hardcoded 1000

ba1c342c3 2026-09-29 00:15:51
fix(minting): stop the embed spinner wedging on a lost iframe load event

3713c8d72 2026-09-28 01:55:30
fix(auction manifest): sync the six facet ABIs from market-contracts

ce32350be 2026-09-28 00:36:03
fix(auction hook): route sale listings to Sales facet; pass account on reads

db3f45a31 2026-09-27 21:10:40
fix:
buyer fee was zero because the FeeModel enum was read inverted

f6f6bc8ac 2026-09-27 21:01:28
fix:
sale modal must read the token's own chain, not the collection's name

c90781af8 2026-09-27 20:43:25
feat:
port wagmi marketplace hooks and add on-chain sale particulars modal

94cf64430 2026-09-20 01:53:52
chore:
stop tracking SQLite sidecar files (conversation.db-shm/wal)

156111045 2026-09-20 01:06:07
fix:
wallet NFT cards use shimmer placeholder for missing/broken images

e2bdd7acb 2026-09-20 00:45:34
fix:
wallet NFT image URLs use canonical CDN path with 404-fallback query

31a0692e4 2026-09-20 00:40:13
fix:
restore NFT-detail shimmer placeholder background inside modal

c07da384f 2026-09-20 00:35:07
fix:
modal placeholder min-width 33vw (was 25vw)

9fe5dc7d7 2026-09-20 00:34:25
fix:
modal placeholder at least 25vw and 1:1 aspect

dc4189209 2026-09-20 00:33:46
fix:
NftDetailModal shows shimmer placeholder when image missing/fails