Repository navigation
Scheduled snapshot refresh, offline tests, README kept in step - #64
Draft
RahilBhavan wants to merge 1 commit into
Draft
RahilBhavan wants to merge 1 commit into
RahilBhavan wants to merge 1 commit into
Conversation
…ates in step - refresh-snapshots.yml: weekly (Mon 06:00 UTC) and on demand. Reruns the backfill scripts and snapshot-last-good, rewrites the README figures and study guide, runs tsc and npm test, and opens a PR (draft if a check fails). Needs no secrets. - npm test preloads scripts/no-network.mjs: any fetch, DNS lookup or socket connect throws. The "USDY:solana read failed" line was a simulated failure in chainSupply.check.ts whose warning was not silenced; no real call was made. - readmeSync: README snapshot dates, results table, event counts and the DefiLlama reconciliation are generated from src/data; readmeSync.check.ts fails on drift. Fixes README (event logs read 2026-10-25, 3,217,426 events) and the study guide date. - issuance.check.ts: growth-driven upper caps on OUSG and USDY mints loosened so the weekly refresh does not trip them; logVsSupply shared with the README. - README: "How this was built" section, drafted from the history for Rahil to confirm. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Four things from the request. The README said the stablecoin snapshot "is stale until someone reruns the backfill scripts", and
npm testappeared to reach the network..github/workflows/refresh-snapshots.ymlruns Mondays 06:00 UTC and on demand. It rerunsbackfill-issuance.mjs(retried once),backfill-context.mjsandsnapshot-last-good.ts, rewrites the README figures and the study guide, then runstscandnpm test. It opens or updates a PR fromdata/refresh-snapshots, as a draft if a check fails, and opens an issue if the run fails. It never pushes to main. Modelled on dat-accretion'ssnapshot.yml.npm testnow preloadsscripts/no-network.mjs, which makes anyfetch, DNS lookup or socket connect throw.issuance.jsonhasasOf2026-10-25, and the event count was 3,212,656 against 3,217,426. Dates, results table, counts and the DefiLlama reconciliation are now generated fromsrc/databynpm run sync:readme.readmeSync.check.tsfailsnpm teston drift. The study guide date had the same drift and is rebuilt.Needs Rahil
ci.yml. The refresh job runstscandnpm testitself, but lint and build need a close and reopen of the refresh PR.Finding on the offline request
The request said something still reaches the network. It does not. The
[chainSupply] USDY:solana read failed ... Error: timeoutline comes fromchainSupply.check.tssimulating a failed read withnew Error('timeout'). Its lastbuildRowscall did not silenceconsole.warn. I silenced it, and no fixtures were needed.npm testalready passed with networking removed (unshare -rn, no interfaces) before this change. The new guard makes the property enforced rather than assumed.Other changes worth a look
issuance.check.ts: the caps on OUSG mints (< $1.45B) and USDY mints (< $260M) were about to trip on normal growth (USDY is $250.1M), which would fail every weekly refresh. They are now sanity caps ($10B and $5B). The floors are unchanged. The "about $1T" headline checks (0.9 to 1.1T, and< 1.25Twith CCTP) are kept on purpose as a tripwire for the page copy. When gross volume passes $1.1T the refresh PR will be a failing draft that asks for a copy decision.docs/img/summary.pngand the USDC share card.Checks run (local, Node 26.8.1)
npx tsc --noEmitnpm run lintnpm test(8 check scripts, with the guard)unshare -rn npm test(no network interfaces)fetchandhttps.getunder the preloadbackfill-context.mjs,sync:readme,tsc,npm testNot run:
npm run build(CI does),backfill-issuance.mjs(about 25 to 40 minutes, would rewrite committed data),snapshot-last-good.ts, and the workflow itself on GitHub. The first scheduled or manual run is the real test of the workflow. YAML parses; there is noactionlinthere.I did not use the
full-sendskill's merge step, per the fixed rules: nothing is merged or deployed.🤖 Generated with Claude Code