Ecosystem metrics

New Repos
22
New
Commits
825
down 21.9%
Releases
4
down 50.0%
Contributors
43
down 21.8%
Merges
34
down 19.0%

Repository Explorer

6900 commits in all time Jun 03, 2026 21:28 – Sep 01, 2026 21:28 UTC
urtho pg_algorand
2.1: planner hook so substring(note,1,N) = $x can use one prefix index
The indexer's note search is
  substring(decode(txn->'txn'->>'note','base64') from 1 for N) = $3
with N a per-request literal (7 in ~84% of cases, 3 and 6 next, tail up
to 34). PostgreSQL only matches an index when the indexed expression is a
direct operand of the operator, so no support function or opclass can
help here and the query never used an index for any N but the one baked
into an expression index.

note_prefix.c installs a planner_hook that rewrites such clauses against
any existing substring(x,1,K) btree expression index on the table:
  N > K   -> P = substring(B,1,K), original kept as recheck filter
  N = K   -> P = B (substr(), FROM 0 FOR K+1, reversed operands)
  N < K   -> P = B if len(B) < N, else B <= P < successor(B)
             (no upper bound when B is all 0xFF)
For N <= K the derived form is an exact three-valued equivalent and
replaces the clause, which keeps the row estimates honest. Works for
literals and for bound parameters in custom plans; generic plans get the
N >= K derivation only. Derived clauses are built from the query's own
expression so outer-join nulling rels are preserved. Runtime switch:
SET pg_algorand.prefix_rewrite = off. Needs the library preloaded
(shared_preload_libraries or session_preload_libraries); does nothing
otherwise.

Also adds the regression suite the Makefile already referenced (basic
function tests plus 30 plan/equivalence cases for the rewrite), the
2.0->2.1 upgrade script, and README docs for the index and the
CREATE STATISTICS object the planner needs alongside a partial index.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BAkGJyPG5VRajhBwFRPiQ2
Git Commit 538fae65 Branch main Document 11/1,445 ++ 7 --
cce go-algorand
Merge 4fb7d5a74e855225413c33831502e171122cbad8 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit 3af3c7a5 Branch pull/6659/merge Document 13/2,549 ++ 168 --
Merge 51b6a318e5c3bcd487c921d110e27a46d323f2e7 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit 8ab1e3b1 Branch pull/6722/merge Document 9/57 ++ 22 --
fix TestLedgerReloadTxTailHistoryAccess
Git Commit 51b6a318 Branch pull/6722/head Document 2/15 ++ 11 --
SergoVashakmadze vibekit
Merge fd34d8c486cc6fca0dedc597e4e3f597265e7d0f into 654c02dfc0f747e35ef9c9028c9d0eca66017df7
Git Commit 9013cc68 Branch pull/22/merge Document 4/573 ++ 0 --
SergoVashakmadze vibekit
feat(plugins): iomarkets — real-world goods over x402 on Algorand
Adds a plugin for buying mobile airtime and data top-ups in 150+ countries,
paid per order in USDC on Algorand via x402.

Everything an agent can currently buy over x402 is another API response. This
delivers a physical-world good to a phone number, which makes the merchant's
promises checkable rather than trusted: payment settles on chain before
anything is bought, a failed delivery refunds on chain automatically, every
terminal order carries an ed25519-signed receipt naming both transactions, and
the delivery ledger is public — including `stranded`, the count of payers who
were charged, received nothing, and could not be refunded. `topup_ledger` and
`verify_topup_receipt` exist so an agent can check that before trusting it.

The plugin holds no wallet. `buy_topup` returns the x402 payment challenge —
exact amount, asset, payTo, facilitator — for the host's own signer to settle,
so no key is ever custodied by the plugin. It is the only tool marked
`mutatesState`, because it is the step that precedes spending and should be
approval-gated; the other seven are queries.

Mainnet only: there is no testnet storefront, and serving one network's
catalogue to another network's agent would be worse than refusing.

No new dependencies — fetch and zod only. Not added to `defaultPlugins()`: a
merchant that spends real money should be opt-in.

Notes for reviewers, both pre-existing on main and unrelated to this change:
`bunx turbo run build typecheck test` fails in @initlabs/vibekit-tui only
because tmux is absent from the environment, and `verify:packed` fails because
packed-consumer asserts `defaultPlugins().length !== 4` while the preset now
returns five (web was added). @initlabs/vibekit itself is green: build,
typecheck, and 475 tests including the 11 added here.
Git Commit fd34d8c4 Branch pull/22/head Document 4/573 ++ 0 --
jannotti go-algorand
Merge 5122a00bf8808f1b63b607c1bca36cfa2392e349 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit 9012a2d5 Branch pull/6707/merge Document 17/2,342 ++ 60 --
jannotti go-algorand
Small corrections
Git Commit 5122a00b Branch pull/6707/head Document 2/21 ++ 8 --
algorandskiy go-algorand
Merge 767bbbddb884bae419b292186e1af0174be9ab54 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit b92c8eac Branch pull/6501/merge Document 19/1,195 ++ 268 --
algorandskiy go-algorand
Merge cca73f35eb630362f5820c3f2b3cf167201e22b4 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit d37d54c1 Branch pull/6725/merge Document 3/54 ++ 67 --
algorandskiy go-algorand
rpcs: make TestRedirectOnFullCapacity deterministic
Git Commit cca73f35 Branch pull/6725/head Document 1/48 ++ 63 --
algorandskiy go-algorand
rpcs: fix txsync double logging
Git Commit abf534e7 Branch pull/6725/head Document 1/0 ++ 4 --
algorandskiy go-algorand
catchup: handle blockAlreadyInLedger in fetchRound same way as fetchAndWrite
Git Commit 6fb431ca Branch pull/6725/head Document 1/6 ++ 0 --
jannotti go-algorand
Merge bb566a01c0faaf07ae659f9ed7d495d5c3986801 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit 4b75921e Branch pull/6707/merge Document 17/2,329 ++ 60 --
jannotti go-algorand
Add a Monero compatible map-to-curve
Git Commit bb566a01 Branch pull/6707/head Document 17/995 ++ 89 --
dependabot[bot] ARCs
Merge 3f81c21fcaf9ba384d0995e26a626488e72bed2e into f83e46c9513beeb52415168fc9ea344dea8a089d
Git Commit e6ff134b Branch pull/473/merge Document 1/55 ++ 31 --
dependabot[bot] ARCs
chore(deps-dev): bump browserslist in /assets/arc-0059
Bumps [browserslist](https://github.com/browserslist/browserslist) from 4.23.0 to 4.28.8.
- [Release notes](https://github.com/browserslist/browserslist/releases)
- [Changelog](https://github.com/browserslist/browserslist/blob/main/CHANGELOG.md)
- [Commits](https://github.com/browserslist/browserslist/compare/4.23.0...4.28.8)

---
updated-dependencies:
- dependency-name: browserslist
  dependency-version: 4.28.8
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Git Commit 3f81c21f Branch dependabot/npm_and_yarn/assets/arc-0059/browserslist-4.28.8 Document 1/55 ++ 31 --
Merge 0e111e4778d6b3ee28f9e795dcc3f50dc071a5db into b0a3e71a91adfd1dfb97b5060d054618c2a147aa
Git Commit 44e57489 Branch pull/66/merge Document 10/1,219 ++ 1,300 --
chore(deps): Update all non-major dependencies
Git Commit 0e111e47 Branch renovate/all-non-major-dependencies Document 10/1,219 ++ 1,300 --
Bhaney44 Bhaney44
Update README.md
Git Commit edf10abc Branch main Document 1/2 ++ 2 --
Bhaney44 Bhaney44
Update README.md
Git Commit 812e2b9a Branch main Document 1/4 ++ 4 --
Notes added by 'git notes add'
Git Commit e8c53210 Branch notes/semantic-release-v1.3.1 Document 1/1 ++ 0 --
algorandskiy go-algorand
Merge df9ee3ada9614b768b93365d24613ae4201cdd04 into 42f70fe22bf79c104ddc289fd1a33168009803cf
Git Commit 338c63e7 Branch pull/6724/merge Document 2/207 ++ 17 --
algorandskiy go-algorand
agreement: delete old outer.Children entries in-place
Git Commit df9ee3ad Branch pull/6724/head Document 2/207 ++ 17 --