Ecosystem metrics

New Repos
15
down 40.0%
Commits
877
up 19.0%
Releases
12
up 140.0%
Contributors
59
up 25.5%
Merges
12
down 53.8%

Repository Explorer

10607 commits in all time May 14, 2026 15:38 – Aug 12, 2026 15:38 UTC
Merge 2c0593a20943624402079cbc948e101dc3480710 into 68e036affd9e62d0a64dcdb3f252eb0ee2e052d3
Git Commit f786e1d6 Branch pull/6706/merge Document 1/2 ++ 2 --
Bump Version, Remove buildnumber.dat and genesistimestamp.dat files.
Git Commit 2c0593a2 Branch pull/6706/head Document 3/1 ++ 3 --
Merge remote-tracking branch 'origin/rel/stable' into relstable5.0.0-remerge
Git Commit cc413cbd Branch pull/6706/head Document 3/4 ++ 2 --
Argimirodelpozo puya-ts
Merge e0969fdc4fedc243b49bc2e6c69293e80530382b into 9306fe0d6d4c0041ab9eb7fa1a492bdbd790ec4d
Git Commit 871af42a Branch pull/401/merge Document 70/4,727 ++ 3,127 --
nullun specs
Merge f7c85b5a270b91e3112391de4d3e96cb560405b0 into b45e348a2810a366b9ae118e30779e855c9aadd0
Git Commit 34323d9c Branch pull/314/merge Document 10/89 ++ 74 --
nullun specs
docs: state the box access opt-in flags in the AVM Box Access section
The app_box_* opcodes can operate on another application's boxes, but
the AVM chapter never said this requires the accessed application's
opt-in. Add a paragraph pointing at the ForeignBoxReads and
FamilyBoxAccess parameters and the family reentrancy rule, which are
specified in the ledger's Applications chapter.
Git Commit f7c85b5a Branch pull/314/head Document 1/9 ++ 0 --
nullun specs
docs: refresh generated opcode docs from the go-algorand doc audit
Regenerated Appendix A and the auto-included opcode tables from
algorand/go-algorand#6690, which audits the AVM opcode documentation.
Notable box changes: the short descriptions now state the 64-byte name
limit, and the shared availability/authorization/reentrancy prose no
longer repeats under every box opcode, deferring to the normative
sections of this spec instead.
Git Commit 85aa8640 Branch pull/314/head Document 9/80 ++ 74 --
nullun go-algorand
Merge 70057d9fbb6ed70c68daeff3a6afffd3f158258d into 68e036affd9e62d0a64dcdb3f252eb0ee2e052d3
Git Commit 69aaf5ff Branch pull/6690/merge Document 38/2,185 ++ 3,884 --
nullun go-algorand
Doc: Move the shared box access rules out of the opcode extras
The availability, authorization, and reentrancy rules were repeated in
the extra text of all 18 box opcodes. Shared semantics belong in prose
outside the individual opcodes, as the byte math opcodes already do:
every sentence is normatively covered in the specs repo (box name
length, availability, the ClearState ban, the box-access flags, and
the family reentrancy rule), and the AVM chapter's Box Access section
gains a paragraph pointing at the authorization rules.

Keep only op-specific extra text: the zero-fill note on the creates,
the 4,096-byte advice on get/put, and the constant-length note on
splice. The improved short descriptions, including the 64-byte name
limit, are unchanged.
Git Commit 70057d9f Branch pull/6690/head Document 13/45 ++ 347 --
Close the cwd library-hijack in the loader that actually signs
There are two ctypes loaders for the same Falcon signing core:

  sdk/src/trelyan_pq/falcon.py    used by the SDK
  contracts/falcon_det1024.py    used by deploy_testnet.py and
                                 test_inscription.py

Commit eb67e4a (2026-08-10, "close two local library/module load-path
hijack vectors", pre-audit findings TF-01/TF-02) removed the cwd-relative
default. `git show --stat eb67e4a` confirms it touched only two files, both
under sdk/. contracts/falcon_det1024.py has not been modified since the
initial commit a806f63 and still read:

  _LIB_PATH = os.environ.get("FALCON_DET1024_LIB", "./libfalcondet1024.so")

A dlopen path containing a slash resolves against the process working
directory, so that default loads keygen, sign and verify out of whatever
./libfalcondet1024.so happens to be in cwd (CWE-426).

The unfixed copy is the one on the documented deployment path: README.md
tells the operator to run `python contracts/deploy_testnet.py` from the repo
root, and that script imports this module and calls keygen(),
sign_compressed() and verify_compressed() to mint a real inscription. So an
explicit pre-audit security fix was applied everywhere except the path that
signs. Two aggravating details: .gitignore excludes *.so/*.dylib/*.dll, so a
planted library never appears in `git status`; and until yesterday the CI
path filter excluded contracts/ entirely, so nothing here was ever executed.

Fix: default to "" and fail closed with the same message the SDK uses.

sdk/tests/test_loader_parity.py plants a decoy libfalcondet1024.{so,dylib,dll}
in a temp directory, runs each loader from there in a subprocess with
FALCON_DET1024_LIB unset, and requires refusal BEFORE the decoy is touched -
asserting the error names the missing variable and does NOT name the decoy.
Checking the constant alone would only prove a literal changed. A second test
guards the constant too, so a re-introduced relative default is obvious in
review.

Note the SDK case needs m.keygen(), not m.default_signer(): the loader is
lazy, so constructing the signer loads nothing and the test would pass
vacuously. Verified by mutation - restoring the old default turns both the
behavioural and the source test red; the fix turns them green.

The test lives in sdk/tests/ because that is what CI runs; contracts/ has no
test job, and a parity test parked where nothing executes it is the same
defect it exists to prevent.

Found by an adversarial claim-vs-enforcement sweep (TCE-03).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Git Commit 6ae14362 Branch fix/contracts-loader-cwd-hijack Document 2/143 ++ 1 --
joe-p js-algorand-sdk
Merge e16c50c2888a6e481ab000458033956951cc18b1 into 75c72bf720cdf08705f25d121fcce3e3150f72e6
Git Commit ed85b23c Branch pull/1115/merge Document 16/916 ++ 32 --
joe-p js-algorand-sdk
fix: empty signer auth addr check
Git Commit e16c50c2 Branch feat/v42 Document 1/1 ++ 1 --
Ganainmtech devportal
Merge 7c3ec16cd7f80798554a98e90606463cba694a48 into 3373832646a00d4285576642c42c4776cbf71f24
Git Commit 85ee4257 Branch pull/640/merge Document 1/20 ++ 0 --
Ganainmtech devportal
docs: add simulate fee estimation section
Git Commit 7c3ec16c Branch docs/simulate-usage-fees Document 1/20 ++ 0 --
sofinico gGov
wip on general re-read and micro-fixes
Git Commit 91ffba44 Branch wip/ggov-algoquarters Document 2/16 ++ 15 --
joe-p js-algorand-sdk
Merge f8eee9bba75c22d10918be9c0c36d7e64c6856cf into 75c72bf720cdf08705f25d121fcce3e3150f72e6
Git Commit efaa9247 Branch pull/1115/merge Document 16/916 ++ 32 --
joe-p js-algorand-sdk
feat: challenge discout, empty refs, and new deltas
Git Commit f8eee9bb Branch feat/v42 Document 6/133 ++ 0 --
joe-p js-algorand-sdk
Merge branch 'generate/68e0f84a' into feat/v42
Git Commit 873d2e78 Branch feat/v42 Document 1/169 ++ 0 --
joe-p js-algorand-sdk
Merge remote-tracking branch 'origin/main' into feat/v42
# Conflicts:
#	examples/falcon.ts
#	src/falcon-signer.ts
#	src/logicsig.ts
#	src/pq-signer.ts
#	src/signer.ts
#	src/signing.ts
#	tests/12.PQ.ts
#	tests/cucumber/steps/steps.js
Git Commit 686e9f29 Branch feat/v42 Document 26/726 ++ 259 --
Merge 5196f9ee568136a55964876c38c434af2f1d83a7 into c16958b8238c18f3d0762c3772e296e9b7976a02
Git Commit b172fcb7 Branch pull/30/merge Document 40/3,356 ++ 98 --
docs(migrations): document adoption in application extensions and baselining
Git Commit 5196f9ee Branch pull/30/head Document 2/158 ++ 2 --
meetthosar devportal
Merge 1d0195b41a72d3a9e9b90cabd0f2b422f489b8b6 into 3373832646a00d4285576642c42c4776cbf71f24
Git Commit b3ea7b78 Branch pull/639/merge Document 5/186 ++ 14 --
meetthosar devportal
docs: updated Sharing Boxes Between Applications links
Git Commit 1d0195b4 Branch feat/box-family-read-write Document 1/1 ++ 1 --