Development Update — 2026-09-28

by Jamie

Share

Overview: Where Development Is Heading

The backend repo is currently focused on general improvements. Recent commit subjects include: docs(chainwatch): document closed-pooled-client recovery + batch ceiling 100; fix(chainwatch): recover metadata walks from a closed pooled RPC client + drop batch ceiling 200->100; fix(chainwatch): reconnect the new-heads subscription + buffer the head channel; feat(chainwatch): report every token outcome in job progress + abandon a walk after 5 consecutive metadata skips; feat(chainwatch): Cancel button and cancelled badge in the webui. The work is tightening the foundation before more blockchain-facing features ship.

Overview: Where Development Is Heading

The frontend repo is currently focused on bug fixes, new features, maintenance tasks. Several fixes are landing to stabilize the existing flows. New feature work is progressing in parallel. Recent commit subjects include: fix(auction manifest): sync the six facet ABIs from market-contracts; fix(auction hook): route sale listings to Sales facet; pass account on reads; fix: buyer fee was zero because the FeeModel enum was read inverted; fix: sale modal must read the token's own chain, not the collection's name; feat: port wagmi marketplace hooks and add on-chain sale particulars modal. 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

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

f3faf7d 2026-09-27 18:12:27
fix(chainwatch): add the cooperative job-cancellation module

697ec56 2026-09-27 17:42:54
fix(chainwatch): do not re-walk a collection whose discovered ids are all stored

092eabb 2026-09-27 17:13:40
fix(chainwatch): backfill blank name/symbol/imageUrl/metaBaseUrl on collection refresh

da1510e 2026-09-27 17:03:35
fix(chainwatch): unblock frozen metadata walks (lock-order inversion) + read standard from the DB

33975d1 2026-09-27 16:50:39
fix(chainwatch): reuse the pooled WebSocket clients for metadata reads

d8d8ced 2026-09-27 16:39:48
feat(chainwatch): discover real ERC-721 token ids instead of walking 1..totalSupply

50b8745 2026-09-27 14:57:39
feat(chainwatch): full token-fail detail + skip IPFS timeouts + ERC-721 baseURI fallback

ba4cb04 2026-09-27 14:12:43
feat(chainwatch): wire Multicall3 batching into the per-token metadata walk

26d1759 2026-09-27 13:54:39
feat(chains): add multicall3 address to every chain

37179c6 2026-09-27 13:54:34
feat(chainwatch): add Multicall3 config + verified aggregate3 batch helper

a42fe81 2026-09-27 12:43:40
docs(chainwatch): record the jobRank display order for the webui jobs table

2af8073 2026-09-27 12:43:23
fix(chainwatch): rank indexing jobs above queued/detecting in the webui jobs table

b142cc9 2026-09-27 12:34:08
style(chainwatch): gofmt the /api/log handler comment

fce4331 2026-09-27 12:33:41
feat(chainwatch): webui "View logs" button streams the runtime .log files

c734a0c 2026-09-26 22:35:12
feat(chainwatch): purge also un-lists collections with zero ipfs_metadata rows

06724d3 2026-09-26 21:20:20
feat(chainwatch): add meta.log audit trail for metadata ingestion + fix lexicographic watermark MAX

3889f09 2026-09-26 13:10:59
fix(chainwatch): make webui index-jobs pager sticky across the 2s poll

3797197 2026-09-26 00:10:24
fix(chainwatch): route public-gateway http(s) tokenURIs (e.g. pinata) through local IPFS node + reject non-JSON metadata.

Frontend Commits

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

7793c29b2 2026-09-20 00:13:35
feat:
extract reusable NftDetailModal; use for collection + wallet owned-NFT cards

245793808 2026-09-19 23:25:11
feat:
restyle wallet page to web3 style guide + fix collection View link

0b39d9e43 2026-09-19 22:04:00
collection page: render tokens with no metadata yet + 'for sale' banner

2bf8246fb 2026-09-14 10:18:55
chore:
remove preloader shell from index.html

728d644d3 2026-09-14 10:18:07
chore:
regenerate sitemap index timestamps (build artifact)

244c28071 2026-09-14 09:13:39
feat:
SSR prepopulates collection grid img src with CDN cache URL

2ef330778 2026-09-14 09:03:23
feat:
SSR prepopulates collection card img src with CDN cache URL

6d2a502f9 2026-09-13 23:27:30
perf:
reuse grid metadata in item modal to skip backend fetch

7b5ba168a 2026-09-13 23:16:42
fix:
clicking outside the open mobile nav panel collapses it

e029cd8b3 2026-09-13 23:05:54
fix:
collapse mobile nav panel when an item or sub-item is selected

3ea57eee5 2026-09-13 22:59:57
perf:
reuse grid image URL in item modal to avoid duplicate CDN fetch

dec994c51 2026-09-13 22:52:47
feat:
fade+slide transition on mobile nav show/hide

d6882e7e9 2026-09-13 22:50:51
fix:
mobile nav top offset calc(var(--header-height) - 20px)