Ecosystem metrics

New Repos
17
down 32.0%
Commits
776
up 5.3%
Releases
12
up 200.0%
Contributors
61
up 24.5%
Merges
13
down 53.6%

Repository Explorer

10660 commits in all time May 13, 2026 14:33 – Aug 11, 2026 14:34 UTC
Ganainmtech devportal
Merge b60d7a6bbad5c6756581271bd035e01034cbb4cc into 3373832646a00d4285576642c42c4776cbf71f24
Git Commit 785d0a13 Branch pull/637/merge Document 1/0 ++ 1 --
Ganainmtech devportal
docs: remove tealdbg from developer tools list
Git Commit b60d7a6b Branch docs/remove-tealdbg Document 1/0 ++ 1 --
ipaleka frontend
Implemented HogSwap router user widget
Git Commit 8861e3a4 Branch main Document 2/2 ++ 2 --
Ganainmtech devportal
Merge 8de5b1aeed76f98e33c8eaefc59414244580df1d into 3373832646a00d4285576642c42c4776cbf71f24
Git Commit 0910449a Branch pull/636/merge Document 7/83 ++ 59 --
Ganainmtech devportal
docs: clarify lsig standard limit is pooled
Git Commit 8de5b1ae Branch docs/larger-txns Document 1/6 ++ 6 --
ipaleka widgets
Implemented HogSwap router user widget
Git Commit 41fa499f Branch main Document 25/1,430 ++ 4 --
Ganainmtech devportal
Merge f5a71f5c3993a408d0f874a8774f88ad94da68eb into 3373832646a00d4285576642c42c4776cbf71f24
Git Commit 0712fe49 Branch pull/636/merge Document 7/83 ++ 59 --
ipaleka widgets
Implemented HogSwap router user widget
Git Commit fc89e5da Branch development Document 22/1,426 ++ 3 --
Ganainmtech devportal
docs: address review feedback, clarify standard vs paid limits
Git Commit f5a71f5c Branch docs/larger-txns Document 5/27 ++ 27 --
sofinico gGov
Merge b5bc9cd7a4ccb0683b2abd6cf7fa6c594a74bd0e into 5359afaf2e9c92cc13d3240aaf88724e1772bd38
Git Commit fc8543e7 Branch pull/104/merge Document 48/15,165 ++ 10,255 --
Ganainmtech devportal
docs: document fee-based size limits for larger transactions
Git Commit 9a545497 Branch docs/larger-txns Document 7/83 ++ 59 --
sofinico gGov
chore: test: cover getVoters and getAccounts box-name scans
- Neither reader had a single test. Both scan box names by prefix, so a contract-side prefix change made them return [] with nothing going red — and `getVoters` feeds the frontend's voter list, so that silence reached the UI.

- `getVoters` asserts empty before any vote, then exactly the govs who voted. The period's 'o'/'t' boxes already exist at that point, so it also pins that the 'v' filter excludes them.

- Verified by sabotage: flipping 'v' to 0x77 and 'a' to 'b' fails both.
Git Commit 032b35f5 Branch feat/live-voting-mbr Document 2/33 ++ 0 --
sofinico gGov
chore: collapse sdk generated clients on github diffs
Git Commit b5bc9cd7 Branch feat/live-voting-mbr Document 1/1 ++ 0 --
sofinico gGov
refactor: sdk: hardcode box names in both SDKs, guarded by a spec-derived test
- Converges frac-delegation-sdk on ggov-sdk's style. `instanceBoxName` was deriving prefix + key encoding from the ARC-56 spec at call time; it now hardcodes 'i' + big-endian uint16, matching gGov's `periodBoxName`/`topicBodyBoxName`. Drops the ABIType, APP_SPEC and Buffer dependencies from the util.

- New `smart_contracts/boxNames.spec.ts` derives the expected bytes from the compiled specs and compares them against every helper, at 0 / 1 / key-type max. Deriving there and nowhere in the SDKs is what makes drift visible. Plain `.spec.ts`, no contract code and no chain.

- Also guards the cross-app near-collision: the period app's `periodBody` key is 'P', the registry's `periodApprovalBox` key is 'Pap'. Same leading byte, different apps, and `asciiBoxName` is single-byte by construction.

- Stops four places re-implementing the helpers by hand — `getPeriodBody` and `getTopicBody` in ggov-sdk's period reader were building 'P' and 'T' + uint32 inline, and both vote e2e tests were assembling the expected box name byte by byte. The e2e tests keep their own job: proving the ref is emitted on both the top-up and no-top-up branches.
Git Commit 3af193d8 Branch feat/live-voting-mbr Document 5/93 ++ 26 --
sofinico gGov
feat: sdk: ggov MBR vault support for live voting, with tests
Git Commit ce44d728 Branch feat/live-voting-mbr Document 8/338 ++ 3 --
sofinico gGov
feat: contracts: periods self-fund MBR from the registry on vote
Analogous to fractional delegation. Same registry as a vault + MBR post-condition pattern.
Git Commit 943be49a Branch feat/live-voting-mbr Document 14/7,066 ++ 5,217 --
sofinico gGov
test: cover delegated-vote MBR top-up on both registries
Git Commit f298d46e Branch feat/live-voting-mbr Document 2/48 ++ 0 --
sofinico gGov
feat: sdk: frac MBR vault support for live voting, with tests
- `makeVoteTxns` now names the frac registry app and its `instances` box on every vote, top-up or not, given the state-conditional inner call on `checkNeedMBR`.

- Ref-slot padding goes `numEscrows * 5 + 20` -> `+ 21` for the extra box.

- `extraFee` is deliberately unchanged. Both MBR hops pay their own fee, so the voter's group fee is invariant to whether the top-up fires.

- New `instanceBoxName` in util/boxes.ts, deriving prefix and key encoding from the ARC-56 spec rather than hardcoding 'i' + uint16.

- Test coverage includes regression-like cases for the whole MBR top-up flow.
Git Commit b0372a83 Branch feat/live-voting-mbr Document 8/297 ++ 9 --
sofinico gGov
feat: contracts: instances self-fund MBR from the registry on vote
- The registry becomes an MBR vault. `vote()` ends with `checkNeedMBR()` subroutine: if the instance app account is at or below its minimum balance, it inner-calls the registry's new `requestMBR`, which pays it `mbrTopUp` (new global, 5 A, settable via `setMBRTopUp`). Users never pay vote-record MBR, and instances no longer need hand-funding.

- Post-condition, not a threshold. The AVM updates `min_balance` the instant a box is allocated but enforces the requirement only after each (outer) transaction, so the account may sit underwater mid-execution as long as the top-up lands first. However, MBR do is enforced between intermediate states of a group transaction, so a sibling payment later in the same group would be too late.

Nits: `checkNeedMBR()` could sit in more than one place:
- periodVoteCache is always an overwrite, so the call could go before it
- on a re-vote the record write is an overwrite too, so the call could be skipped

Left plain at the end for clarity; the saving would be a handful of opcodes. What is not flexible is that it must stay after the vote record write - that write is the allocation it repairs.
Git Commit 93b63eb0 Branch feat/live-voting-mbr Document 14/7,307 ++ 5,018 --
sofinico gGov
Merge 8ecc5660d749b1d109bd40826e519ee739d562bb into e083edbb6b85d08ad32c2c575f69b62d129387da
Git Commit 5359afaf Branch pull/103/merge Document 15/269 ++ 133 --
sofinico gGov
fix(deps): clear high audit advisories for js-yaml and nanoid
Git Commit 8ecc5660 Branch chore/improvements-on-manage-ui Document 2/10 ++ 12 --
docs(PINNED_BUILD): the pin is the network's release, not staleness
Corrects the note added earlier on this branch, which was misleading in three
ways. All three were found by follow-up verification and adversarial review
after that note was written.

1. It said the pin is "several commits behind main" without the decisive fact:
   go-algorand's go.mod requires github.com/algorand/falcon v0.1.0, and that
   tag dereferences to exactly ce15e75b. It is the repo's ONLY tag. The pin is
   alignment with the code defining on-chain falcon_verify behaviour - which is
   the point for a signer whose output must be accepted by that verifier.
   main (956d9bc0) is 7 ahead / 0 behind, and UNRELEASED.

2. It called the PR #16 change "a malleability gap". Wrong term. Signature
   malleability means distinct valid signatures for one (key, message) pair;
   that does not occur on either build. It is non-canonical input acceptance in
   a parser. The original wording would have pointed an auditor at the wrong
   invariant.

3. It warned that TRELYAN's off-chain accept/reject "can diverge from what the
   chain accepts". Misleading: falcon_det1024_convert_compressed_to_ct is not
   bound by this SDK at all - trelyan_pq.falcon binds only
   shake256_init_prng_from_system, keygen, sign_compressed and
   verify_compressed. The affected function is unreachable from TRELYAN. It IS
   reachable in go-algorand via GetFixedLengthHashableRepresentation ->
   ConvertToCT, making it an upstream report rather than a local divergence.

Also records that bumping was tested, not assumed: both trees built with
FALCON_FPEMU=1 and compared over 120 signatures (12 keypairs x 10 message
shapes) plus the committed KAT - byte-identical throughout, each build
accepting the other's output. A bump would be safe but would make this repo
stricter than the deployed verifier for no reachable benefit.

Adds the more precise description of the underflow: sig_compressed_len - 2
wraps to SIZE_MAX on a 1-byte input, so the decoder receives a pointer past the
buffer with a claimed length of 2^64-1.

Docs only. Pinned commit and both digests unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Git Commit e7baeea0 Branch docs/claims-accuracy Document 1/29 ++ 10 --
sofinico gGov
Merge 35b7772c7c20686e4701ea6ece8994335d2c75fa into e083edbb6b85d08ad32c2c575f69b62d129387da
Git Commit b698739d Branch pull/103/merge Document 13/259 ++ 121 --
sofinico gGov
fix: frontend: tooltip focus + title loading state in manage periods
Git Commit 35b7772c Branch chore/improvements-on-manage-ui Document 2/15 ++ 6 --