Skip to content

chore: release main - #9790

Merged
JSONbored merged 1 commit into
mainfrom
release-please--branches--main
Aug 7, 2026
Merged

chore: release main#9790
JSONbored merged 1 commit into
mainfrom
release-please--branches--main

Conversation

@JSONbored

Copy link
Copy Markdown
Owner

🤖 I have created a release beep boop

ui: 0.17.0

0.17.0 (2026-08-07)

Features

  • api: add a positions basis to validator nominators, so dormant delegators appear (#9618) (990ab94)
  • api: keep the REASON a probe failed, not just the rate (#9624) (27d1925), closes #9622
  • api: publish how long a slot survived, from data already paired (#9745) (2efb644), closes #9742
  • api: rank every subnet by alpha-ownership concentration (#9608) (6287517)
  • api: rank every subnet by how widely its rewards are spread (#9719) (1e0037d), closes #9717
  • api: resolve what the user pasted, so the explorer finally has search (#9672) (ebc781b)
  • api: serve a per-subnet alpha holder leaderboard (#9568) (86a28c2), closes #9557
  • api: serve indexer lag, computed from a column nothing had ever read (#9621) (f96bc00), closes #9620
  • api: serve the emission pipeline as a series, not just a snapshot (#9626) (69c1e11), closes #9625
  • api: serve the emission-gate change log, written by a differ and read by nothing (#9616) (a7f2dd8), closes #9615
  • api: serve the network-wide concentration series, computed by the serving builder (#9631) (460acf2), closes #9628
  • api: serve the surface audit trail, and record which surface it is about (#9613) (137e652), closes #9612
  • api: serve the TAO/USD index, captured every minute and read by nothing (#9610) (78025c6), closes #9609
  • registry: flag surfaces whose URL names a moving target (#9777) (4dd3cb7), closes #9780
  • ui: add the search-resolve query and types (#9675) (a6fba17)
  • ui: show where a pasted identifier leads, above corpus results (#9679) (f708ff4)
  • ui: surface the alpha holder leaderboard on the subnet page (#9598) (53fe066), closes #9597
  • ui: verify the checksum in the search boxes, and recognise what they missed (#9755) (37e10a7)

Bug Fixes

  • api: declare the 65 registry routes that testnet answers 404 for (#9764) (89dbee5)
  • api: name the store that actually answers, not the retired Postgres tier (#9573) (da48c0f), closes #9571
  • registry: fail when the chain capture goes stale, with the command to fix it (#9778) (08f3418), closes #9780
  • registry: SN104 is Masx.ai, not a for-sale notice (#9780) (c65c391)
  • ui: make the mobile holders list read as a leaderboard (#9602) (4736215), closes #9601
  • ui: pin the compatibility date, which was floating to today (#9726) (182e4d9), closes #9725
  • ui: regenerate the subnet catalog, which went stale on main (#9756) (7ede386)
  • ui: take a pasted EVM address to the account it maps to (#9750) (102abf1)

Documentation

  • ui: the deep-history tier is the lakehouse, not Postgres (#9574) (1a24a9f)
platform: 1.4.0

1.4.0 (2026-08-07)

Features

  • api: add a positions basis to validator nominators, so dormant delegators appear (#9618) (990ab94)
  • api: keep the REASON a probe failed, not just the rate (#9624) (27d1925), closes #9622
  • api: let callers of tao-usd and emission-pipeline ask for less (#9727) (a37d27e), closes #9720
  • api: publish how long a slot survived, from data already paired (#9745) (2efb644), closes #9742
  • api: rank every subnet by alpha-ownership concentration (#9608) (6287517)
  • api: rank every subnet by how widely its rewards are spread (#9719) (1e0037d), closes #9717
  • api: resolve what the user pasted, so the explorer finally has search (#9672) (ebc781b)
  • api: serve a per-subnet alpha holder leaderboard (#9568) (86a28c2), closes #9557
  • api: serve indexer lag, computed from a column nothing had ever read (#9621) (f96bc00), closes #9620
  • api: serve the emission pipeline as a series, not just a snapshot (#9626) (69c1e11), closes #9625
  • api: serve the emission-gate change log, written by a differ and read by nothing (#9616) (a7f2dd8), closes #9615
  • api: serve the network-wide concentration series, computed by the serving builder (#9631) (460acf2), closes #9628
  • api: serve the surface audit trail, and record which surface it is about (#9613) (137e652), closes #9612
  • api: serve the TAO/USD index, captured every minute and read by nothing (#9610) (78025c6), closes #9609
  • ci: gate the contract prose doc against the descriptions it paraphrases (#9567) (bd34213)
  • d1: serve account_position_daily from Neon via Hyperdrive (#9593) (0487a36), closes #9592
  • firehose: tell a subscriber when its topic has no producer (#9594) (eeec79b), closes #9583
  • graphql: serve subnet_holders, so the third surface answers what REST does (#9596) (153b1b0), closes #9595
  • mcp: capture agent intent via the context argument (#9644) (a4c3ad2), closes #9642
  • mcp: cut over to the SDK envelope and declare the two missing conformance fields (#9681) (67fa1c2), closes #9680 #9647
  • mcp: declare format where it is true, and fix two wrong descriptions (#9660) (7f72745), closes #9659
  • mcp: describe every published tool parameter (#9653) (e94abe2), closes #9645 #9652
  • mcp: give every published tool parameter a worked example (#9658) (ea6e50e), closes #9657
  • mcp: record the refusals that never reach dispatch (#9640) (9ce02fd), closes #9639
  • mcp: serve /mcp through the SDK envelope behind a flag, at parity (#9677) (0625e98), closes #9676 #9647
  • mcp: serve completion/complete, so prompt and template arguments autocomplete (#9688) (8e64444), closes #9686
  • mcp: serve the MCP envelope through the SDK, proved against the current one (#9669) (b97ff97), closes #9668
  • neon: give the store a writer and a lane, before anything reads it (#9712) (7f80180)
  • neon: mirror nominator_positions, from both writers, prune included (#9733) (4bbeff4)
  • neon: mirror the three flat ledgers, completing the write side (#9739) (1d24d53)
  • neon: reconcile the two accumulating daily tables, D1 to Neon (#9752) (2ab2fd2)
  • neon: serve position history from Neon, with a writer behind it (#9768) (3ffa3b9), closes #9766
  • neon: watch each mirror against the table it mirrors (#9772) (04cfc3d), closes #9770
  • observability: give the poller's job outcomes a queryable sink (#9600) (a6d150e), closes #9599
  • pg: add a D1Runner-shaped Postgres adapter for the analytics modules (#9604) (1aa2337), closes #9603
  • queue: accept account-balances on sync-batches (#9629) (d3ed722)
  • queue: accept chain-detail's four row families in one message (#9678) (a32f692)
  • queue: accept neurons on sync-batches, pruning per netuid (#9643) (87d30c1)
  • queue: accept nominator-positions on sync-batches, with a pruning guard (#9627) (7e94e9a)
  • queue: accept validator-nominator-counts on sync-batches (#9623) (2c6f9f3)
  • queue: compress the message, so the largest lane can travel at all (#9765) (c2f3261)
  • queue: cut hotkey-alpha's writes onto sync-batches (#9619) (bcf9e59)
  • queue: deliver webhooks on a queue, replacing the hand-rolled one (#9655) (eab2080)
  • queue: read both dead-letter queues, so a lost message reaches somebody (#9731) (26493da)
  • queue: route hotkey-alpha's D1 write through sync-batches (#9614) (340d9e1), closes #348
  • queue: stand up sync-batches with a no-op consumer (#9611) (0ea6b3e), closes #347
  • queue: trigger webhooks from a Worker cron, and delete the hand-rolled system (#9662) (697875d)
  • registry: flag surfaces whose URL names a moving target (#9777) (4dd3cb7), closes #9780
  • registry: let the chain name the subnet, so renames stop needing us (#9767) (e8c9016), closes #9748
  • search: route the embedding through AI Gateway, and turn it on (#9743) (0dee882)
  • ui: add the search-resolve query and types (#9675) (a6fba17)
  • ui: show where a pasted identifier leads, above corpus results (#9679) (f708ff4)
  • ui: surface the alpha holder leaderboard on the subnet page (#9598) (53fe066), closes #9597
  • ui: verify the checksum in the search boxes, and recognise what they missed (#9755) (37e10a7)
  • watchdog: read lane_health, so a stale lane reaches somebody (#9698) (9ef2bab)
  • webhooks: give one subscriber one slot, so a hanging endpoint stops nine (#9740) (3d0fc1d)

Bug Fixes

  • accounts: unbind HYPERDRIVE, so position history stops serving 2026-08-05 (#9705) (189c6b1)
  • api: declare the 65 registry routes that testnet answers 404 for (#9764) (89dbee5)
  • api: emit the fields three sort enums advertise but no row carried (#9716) (ca44e48), closes #9710 #9715
  • api: flag derived deregistration counts as the lower bound they are (#9709) (dec0fe0), closes #9708
  • api: name the store that actually answers, not the retired Postgres tier (#9573) (da48c0f), closes #9571
  • api: proxy poller-lane-health-sync, so the route is actually reachable (#9606) (7b07bf0), closes #9605
  • api: send the contract-version header dataResponse advertises (#9667) (84bc134)
  • ci: diff the PR head, and stop firing when the prose already agrees (#9577) (235a146), closes #9575
  • ci: smoke only the GET routes, so one POST route stops failing publish (#9651) (8db3f48)
  • d1: guard the history append against the committed latest hash (#9649) (ee812a6)
  • d1: store only the alpha pools some position actually references (#9560) (44be475), closes #9558
  • graphql: give every retired-tier resolver the cascade it was missing (#9556) (fe94995), closes #9540
  • health: name each subnet in the rollup, so sort=name stops lying (#9753) (366c751), closes #9715
  • health: treat last_ok as a high-water mark the upsert cannot wipe (#9635) (2c2549b), closes #9634
  • mcp: default list_candidates' limit, which returned 7.5 MB unbounded (#9701) (667e1ef), closes #9700
  • mcp: default the page on every list tool, not just the one measured (#9736) (481c224), closes #9730
  • mcp: make the SDK envelope reproduce the handshake, and prove it (#9671) (615fa13), closes #9670
  • mcp: rank highest-emission by TAO received, not stage-1 price share (#9707) (15cbe4e), closes #9706
  • mcp: refuse an unpaginated tools/list cursor instead of ignoring it (#9661) (8e5eac2), closes #9648
  • mcp: strip Zod's safe-integer sentinel from output schemas too (#9656) (e2d489d), closes #9654
  • neon: count the backfill's backlog in dates not reached, not rows written (#9763) (f559996), closes #9762
  • neon: mirror the backfill route, which writes the same two tables (#9729) (07699cb)
  • oauth: require S256 PKCE, so an omitted method cannot select plain (#9638) (c2846ff), closes #9637
  • prober: bound how long one surface can hold a worker slot (#9774) (c15f9fd)
  • queue: count a multi-family message's rows without crashing its batch (#9718) (635e78c)
  • queue: hoist a lone group's prune key, so the largest coldkey fits (#9684) (b93cce2)
  • queue: pack sync chunks into messages that fit, key-aware where it prunes (#9636) (6edd109)
  • queue: refuse chain-detail the transport it measurably does not fit (#9757) (57fcd32)
  • queue: roll nominator-positions back — its largest coldkey exceeds the budget (#9682) (938d0c2)
  • queue: roll SYNC_QUEUE_LANES back to empty, so the stopped lanes write again (#9633) (b1ef180)
  • registry: fail when the chain capture goes stale, with the command to fix it (#9778) (08f3418), closes #9780
  • registry: refresh the chain capture, and notice when it disagrees (#9761) (7eb0908), closes #9748
  • registry: SN104 is Masx.ai, not a for-sale notice (#9780) (c65c391)
  • registry: SN53 is engy, which the chain has said since July (#9741) (3691565), closes #9737
  • search: point a pasted EVM address at the route that exists (#9722) (6913945)
  • test: anchor the tao-usd fixture clock, which had aged out and turned main red (#9690) (c5efd79), closes #9689
  • ui: make the mobile holders list read as a leaderboard (#9602) (4736215), closes #9601
  • ui: pin the compatibility date, which was floating to today (#9726) (182e4d9), closes #9725
  • ui: regenerate the subnet catalog, which went stale on main (#9756) (7ede386)
  • ui: take a pasted EVM address to the account it maps to (#9750) (102abf1)
  • watchdog: alarm the hotkey-alpha pool ledger, which shipped without one (#9582) (233a42f), closes #9576
  • watchdog: retire two lanes that watch things which were deliberately retired (#9703) (7fb3c4f)
  • webhooks: report the delivery outcome the consumer actually writes (#9721) (c1d3521)

Performance

  • mcp: stop paying for two boilerplate strings 224 times over (#9699) (5800470), closes #9696

Documentation

  • api: identity-history is a frozen lakehouse export, not a live D1 tier (#9579) (eaeb9ac), closes #9578
  • api: put the self-health producer in the past tense (#9585) (ee2ba77), closes #9584
  • api: the top-holders holdings columns are live and gated, not frozen (#9563) (fc30a9f), closes #9562
  • correct three stale facts in the block-explorer data model (#9581) (5c8d2b4), closes #9580
  • mcp: record why unknown tools answer isError, not -32602 (#9665) (ba7a5d6), closes #9646
  • readme: refresh subnet catalog (#1020) (#9749) (cec0e8f)
  • readme: refresh subnet catalog (#1020) (#9788) (735228e)
  • say what feeds the firehose now, and that only blocks arrives (#9587) (ee9776c), closes #9586
  • the firehose's head poller lives in the DO, not an ingest POST (#9589) (1c23f6a), closes #9588
  • ui: the deep-history tier is the lakehouse, not Postgres (#9574) (1a24a9f)
  • write the repo boundary down, and supersede the ADR that contradicts it (#9724) (6f24c6e)

This PR was generated with Release Please. See documentation.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 7, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
metagraphed-ui c42a00c Aug 07 2026, 10:03 AM

@superagent-security

Copy link
Copy Markdown

Superagent didn't find any vulnerabilities or security issues in this PR.

@github-actions
github-actions Bot deployed to preview/pr-9790 August 7, 2026 10:02 Active
@JSONbored JSONbored self-assigned this Aug 7, 2026
@JSONbored
JSONbored merged commit cee246b into main Aug 7, 2026
9 checks passed
@JSONbored
JSONbored deleted the release-please--branches--main branch August 7, 2026 10:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment