Skip to content

fix: codex auth chain — un.defined.fi + utls + sidecar fallback - #1819

Merged
Flotapponnier merged 51 commits into
mainfrom
dev
Aug 10, 2026
Merged

fix: codex auth chain — un.defined.fi + utls + sidecar fallback#1819
Flotapponnier merged 51 commits into
mainfrom
dev

Conversation

@Flotapponnier

Copy link
Copy Markdown
Collaborator

Summary

  • Adds utls Chrome TLS fingerprint scraper to the Codex auth chain
  • un.defined.fi/api createApiTokens works without cookies or CSRF (single POST via utls)
  • Priority chain: CODEX_JWT → in-process → utls(un.defined.fi) → utls(www CSRF flow) → direct → sidecar → cache → generateToken(un.defined.fi)
  • GitHub Actions cron (every 5 min) as additional fallback token push
  • generateDefinedJWTToken now targets un.defined.fi/api (www.defined.fi/api is dead)

Fixes Railway services showing "No data" for Codex (createApiTokens on www.defined.fi dead since 2026-08).

Test plan

  • Railway redeploy picks up new code
  • Logs show [DEFINED-AUTH] Got token via utls scraper or sidecar path
  • Codex WS connects and shows lag data

…tachain, haqq, etherlink, chiliz, wemix, songbird, etc-classic, telos, pulsechain, warden, oraichain, peaq)
* fix: remove dead providers (BlastAPI shutdown, Ankr key-gated, dRPC/1RPC not supported)

* feat: add wave 7 chains to /chains hub (fantom, kusama, hydration, zetachain, haqq, etherlink, chiliz, wemix, songbird, etc-classic, telos, pulsechain, warden, oraichain, peaq)
fix: remove drift/variational from perp venue meta
fix: answers product links + bridge in footer
fix: drop dead RPC providers + add wave 7 chain pages
* feat: add /apps leaderboard foundation — specs, Go harness, Postgres schema, alerting

* fix: interface ctx type, float-free toMicroUSDC, goroutine error capture, pagination cursor
feat: /apps leaderboard foundation + dYdX collector
feat: Hyperliquid collector (DeFiLlama, 590 days, .47B)
feat: /apps leaderboard page (Hyperliquid $45M/30d, dYdX)
…1801)

* feat(apps): switch HL collector to node fills, add hl-fills-agg

Replace DeFiLlama proxy with first-party Hyperliquid node fills.
- Reads fee/builderFee from node_fills_by_block on SGP (15.235.224.14)
- hl-fills-agg.py aggregates daily totals, runs as pm2 on SGP:2116
- net_usdc = gross - builder = amount flowing to AF + HLP + deployers
- Fills archive starts 2026-06-01, backfill runs automatically

* feat(apps): add GMX v2 collector (Arbitrum + Avalanche) via Subsquid

First-party data from GMX-operated Subsquid GraphQL endpoint.
Position fees (63% LP / 37% protocol) + swap fees split per governance.
Borrowing fees classified as LP revenue (pool-only, no protocol cut).
Amounts in GMX internal 1e30 precision, stored with Decimals=30.
…ration

fix: codex/defined auth cookie migration
…ama (#1803)

- Generic DeFiLlama collector (defillama_generic.go): daily fees + revenue split into treasury/lp events
- Correct DeFiLlama slugs: drift-trade, jupiter-perpetual-exchange, vertex-perps
- Fix h24 window to 2 days so daily-bucket protocols show data (was missing for HL/GMX/dYdX)
- Add new deployments to materializer and API meta
- Frontend VENUE map updated with logos for all 3 new protocols
* feat: add Drift, Jupiter Perps, Vertex to apps leaderboard via DeFiLlama

- Generic DeFiLlama collector (defillama_generic.go): daily fees + revenue split into treasury/lp events
- Correct DeFiLlama slugs: drift-trade, jupiter-perpetual-exchange, vertex-perps
- Fix h24 window to 2 days so daily-bucket protocols show data (was missing for HL/GMX/dYdX)
- Add new deployments to materializer and API meta
- Frontend VENUE map updated with logos for all 3 new protocols

* fix: dYdX fee rate 5bps -> 3.5bps (blended effective rate)
* feat: add Drift, Jupiter Perps, Vertex to apps leaderboard via DeFiLlama

- Generic DeFiLlama collector (defillama_generic.go): daily fees + revenue split into treasury/lp events
- Correct DeFiLlama slugs: drift-trade, jupiter-perpetual-exchange, vertex-perps
- Fix h24 window to 2 days so daily-bucket protocols show data (was missing for HL/GMX/dYdX)
- Add new deployments to materializer and API meta
- Frontend VENUE map updated with logos for all 3 new protocols

* fix: dYdX fee rate 5bps -> 3.5bps (blended effective rate)

* fix: dYdX full history backfill — limit 90d -> 1000d (covers Nov 2023 launch)
perf: Prometheus recording rules for lz/bridge histogram queries
fix: tron/token-quote methodology too long, telos em-dash
perf: recording rules for hyperlane histogram queries
* fix(agg-head-lag): update Codex mint to new /api/codex/token endpoint

www.defined.fi/api (createApiTokens GraphQL mutation) is dead as of 2026-08.
New endpoint is /api/codex/token which returns JWE directly.
Still blocked by Vercel TLS checkpoint for Go HTTP — use CODEX_JWT env var
or DEFINED_TOKEN_SERVICE_URL sidecar (Paris box) for automatic refresh.

scrape-cookie: add awaitPromise fix, diagnostic headers, in-browser fetch test.

* revert: layerzero back to raw queries (lz rate24h rule too expensive for VPS)
* fix(agg-head-lag): update Codex mint to new /api/codex/token endpoint

www.defined.fi/api (createApiTokens GraphQL mutation) is dead as of 2026-08.
New endpoint is /api/codex/token which returns JWE directly.
Still blocked by Vercel TLS checkpoint for Go HTTP — use CODEX_JWT env var
or DEFINED_TOKEN_SERVICE_URL sidecar (Paris box) for automatic refresh.

scrape-cookie: add awaitPromise fix, diagnostic headers, in-browser fetch test.

* revert: layerzero back to raw queries (lz rate24h rule too expensive for VPS)

* fix: agg head-lag uses DEFINED_TOKEN_SERVICE_URL sidecar for Codex JWE

* feat: add solana-exec harness (pump.fun passive collector) + /apps/exec page

* fix: materializer includes current hour, collector skips failed sigs, api 24h window correct

* fix: remove em dashes in kaia-rpc and aurora-rpc findings
* fix(agg-head-lag): update Codex mint to new /api/codex/token endpoint

www.defined.fi/api (createApiTokens GraphQL mutation) is dead as of 2026-08.
New endpoint is /api/codex/token which returns JWE directly.
Still blocked by Vercel TLS checkpoint for Go HTTP — use CODEX_JWT env var
or DEFINED_TOKEN_SERVICE_URL sidecar (Paris box) for automatic refresh.

scrape-cookie: add awaitPromise fix, diagnostic headers, in-browser fetch test.

* revert: layerzero back to raw queries (lz rate24h rule too expensive for VPS)

* fix: agg head-lag uses DEFINED_TOKEN_SERVICE_URL sidecar for Codex JWE

* feat: add solana-exec harness (pump.fun passive collector) + /apps/exec page

* fix: materializer includes current hour, collector skips failed sigs, api 24h window correct

* fix: remove em dashes in kaia-rpc and aurora-rpc findings

* fix(codex-ws): direct dialer + local JWE mint to fix 4403 IP mismatch

* fix: weighted avg for fee/jito metrics across hourly buckets
* fix(agg-head-lag): update Codex mint to new /api/codex/token endpoint

www.defined.fi/api (createApiTokens GraphQL mutation) is dead as of 2026-08.
New endpoint is /api/codex/token which returns JWE directly.
Still blocked by Vercel TLS checkpoint for Go HTTP — use CODEX_JWT env var
or DEFINED_TOKEN_SERVICE_URL sidecar (Paris box) for automatic refresh.

scrape-cookie: add awaitPromise fix, diagnostic headers, in-browser fetch test.

* revert: layerzero back to raw queries (lz rate24h rule too expensive for VPS)

* fix: agg head-lag uses DEFINED_TOKEN_SERVICE_URL sidecar for Codex JWE

* feat: add solana-exec harness (pump.fun passive collector) + /apps/exec page

* fix: materializer includes current hour, collector skips failed sigs, api 24h window correct

* fix: remove em dashes in kaia-rpc and aurora-rpc findings

* fix(codex-ws): direct dialer + local JWE mint to fix 4403 IP mismatch

* fix: weighted avg for fee/jito metrics across hourly buckets

* fix(codex-ws): resolve merge conflict in defined_auth

* fix: log warning when sig limit hit on incremental poll
* feat: paginate getSignaturesForAddress for complete tx coverage

* fix(codex-ws): in-process chromedp scraper for fresh JWE every 5min

* fix: remove dead providers from xdc/etc-rpc, allow optional p90/p99 in load.ts
* feat: paginate getSignaturesForAddress for complete tx coverage

* fix(codex-ws): in-process chromedp scraper for fresh JWE every 5min

* fix: remove dead providers from xdc/etc-rpc, allow optional p90/p99 in load.ts

* feat(solana-exec): accurate tx volume via raw sig pagination + 100-sig enhanced cap

* remove: delete indexing-freshness bench (no data)
* feat: paginate getSignaturesForAddress for complete tx coverage

* fix(codex-ws): in-process chromedp scraper for fresh JWE every 5min

* fix: remove dead providers from xdc/etc-rpc, allow optional p90/p99 in load.ts

* feat(solana-exec): accurate tx volume via raw sig pagination + 100-sig enhanced cap

* remove: delete indexing-freshness bench (no data)
* fix(codex): utls scraper + GitHub Actions token push

* fix: use un.defined.fi legacy API for codex JWE minting

un.defined.fi/api createApiTokens still returns valid JWE tokens
without requiring session cookies or CSRF. Try this first via utls,
fall back to www.defined.fi/api/codex/token (needs page visit + CSRF).
generateDefinedJWTToken also switched to un.defined.fi.
@Flotapponnier
Flotapponnier merged commit 1c4af0f into main Aug 10, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant