Overview: Where Development Is Heading
The backend repo is currently focused on general improvements. Recent commit subjects include: fix: accept frontend base64(nacl.hash(plaintext)) in /signup and /signin schemas; fix: align password normalization with frontend base64(nacl.hash(plaintext)); fix: re-try legacy/base64/sha256 password encodings in /signin restore compatibility with passwords stored before normalization, while keeping the normalized path for newly created accounts.; fix: normalize auth password paths and harden signin/validation; fix: normalize password formats across auth flows and harden validation/password-change paths. 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: refactor: remove window upload/nft globals in favor of uploadproxy; refactor: migrate signin, validate, and secnavitem to useauth/window-shim; feat: add lightweight client-side errorboundary; fix: update footer and signup secondary form; updates. The work is converging on a more stable and maintainable user experience.
Project Direction — The project is progressing across both backend and frontend toward a clean, maintainable multi-chain NFT marketplace.
Backend Commits
bfc2b4a 2026-08-07 00:12:35 accept frontend base64(nacl.hash(plaintext)) in /signup and /signin schemas
fix:51b200e 2026-08-06 23:57:40 align password normalization with frontend base64(nacl.hash(plaintext))
fix:82523ba 2026-08-06 23:40:07 re-try legacy/base64/sha256 password encodings in /signin
fix:
Restore compatibility with passwords stored before normalization,
while keeping the normalized path for newly created accounts.3446958 2026-08-06 22:22:52 normalize auth password paths and harden signin/validation
fix:a0579fc 2026-08-06 21:21:39 normalize password formats across auth flows and harden validation/password-change paths
fix:34d1786 2026-08-06 18:12:21 lookup validated account by email instead of relying on returning id
fix:b69c2e5 2026-08-06 18:08:22 remove duplicate insert catch and safely use returning id
fix:b533d68 2026-08-06 18:08:03 handle returning id properly after validating account
fix:1e999cb 2026-08-06 18:02:08 improve database error visibility and prevent invalid validation payloads
feat:5bef17b 2026-08-06 17:37:26 populate error message and stack trace in server-error template
fix:027e443 2026-08-06 17:29:02 guard empty token lookup in /validate
fix:5995502 2026-08-06 16:58:22 use named template imports in email template registry
fix:0408510 2026-08-06 16:56:50 correct email template import path in utils/email.js
fix:99344f5 2026-08-06 16:53:19 add HTML/plaintext email templates for auth, admin, and contact emails
feat:e51cea5 2026-08-06 16:38:22 make accounts.bmp an integer instead of boolean
fix:05261ba 2026-08-06 16:37:34 add migrations for accounts.bmp and profile_visibility
feat:7f6b750 2026-08-06 16:34:33 add migration for accounts.lastact column
feat:22ed1ab 2026-08-06 16:33:03 ignore missing accounts.lastact column during successful auth
fix:7fc9cd8 2026-08-06 16:26:10 guard bcrypt.compare in checkAuth when session or token is missing
fix:ca5ccf4 2026-08-06 16:19:04 reset lastpwReset to 0 on successful password change
fix:cb5244c 2026-08-06 16:16:20 serialize profile socials and improve registration/reset email responses
fix:ad306f0 2026-08-06 15:56:21 treat null lastpwReset as no prior password reset request
fix:65cda5a 2026-08-06 15:53:41 add lastpwReset timestamp to accounts for password reset rate limiting
fix:670a533 2026-08-06 15:50:09 add isReset tinyint column to unregistered table
fix:6b40ee0 2026-08-05 22:45:08 allow walletassoc.siteid=0 sentinel for unassociated wallets
fix:
Frontend Commits
9eac361 2026-08-08 00:41:54 remove window upload/nft globals in favor of uploadProxy
refactor:ac41e57 2026-08-08 00:33:34 migrate SignIn, Validate, and SecNavItem to useAuth/window-shim
refactor:0df3ce1 2026-08-08 00:23:37 add lightweight client-side ErrorBoundary
feat:8119822 2026-08-07 20:18:40 update footer and signup secondary form
fix:c19ed01 2026-08-06 22:16:17
updatesebcf8e8 2026-08-06 21:47:05 remove dead validate refs and use stable reset route query
fix:84eaf30 2026-08-06 21:30:51
Merge remote-tracking branch 'origin/hermes' into hermes673a300 2026-08-06 21:30:03
updatescd8df1a 2026-08-06 20:39:11 bring latest routeTree/admin auth changes onto build-host history
merge:abe0a4b 2026-08-06 20:38:24 regenerate routeTree and minor AdminMintingDapps auth header fix
chore:817084d 2026-08-06 17:17:32 regenerate routeTree after validate layout refactor
chore:04a67a6 2026-08-06 17:15:17 make /validate a layout route so /validate/$token renders and backend is contacted
fix:2d54a93 2026-08-06 15:39:56 pass forgot-password mode via /validate search params instead of location state
fix:2199137 2026-08-06 15:36:31 bring local routeTree/chunk-limit changes onto build-host history
merge:ea9c24b 2026-08-06 15:36:02 regenerate routeTree after adding /validate/ route
chore:76a66ad 2026-08-06 15:25:48 reduce chunk-size build noise by raising warning limit
chore:f3b3fa7 2026-08-06 15:24:07 remove tanstack from manualChunks to avoid SSR external conflict
fix:f7b6398 2026-08-06 15:13:46 commit generated routeTree and lockfile after validate route fix
chore:19cbc7a 2026-08-06 15:19:20 split large client chunks and raise chunk warning limit
chore:f8d3891 2026-08-06 15:03:28 avoid invariant by passing auth token from /validate/$authInfo route
fix:08e49cc 2026-08-06 01:40:17 use relative import for ValidateContainer in /validate/ route
fix:5e2ffce 2026-08-06 01:38:15 correct ValidateContainer import alias in /validate/ route
fix:55f3659 2026-08-06 01:35:18 restore /validate/ route for SSR validation links
fix:215274f 2026-08-06 01:22:58 extract validation token from URL pathname in SSR mode
fix:24b3bc7 2026-08-06 01:13:16 redirect /validate to /validate/ for tokenized validation links
fix: