Home / Reports / May 22, 2026

Explore daily commit reports from the Algorand ecosystem. Stay updated with the latest code changes, repository activity, and developer contributions, refreshed every day.

May 21, 2026 Arrow Back Arrow Forward May 23, 2026
M
T
W
T
F
S
S
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7

Friday, May 22, 2026

209 commits were pushed across 18 repos by 17 authors. There were 578,777 additions and 562,370 deletions.

Stay up to date with the latest insights and developments on AlgoScan

Authors

Updated Repos

...

Commit Log

gabrielkuet… 00:00:51 feat: convert puya examples contracts to puyats (puya-ts)
- 01:00:22 Build 2725 Data (go-algorand)
- 01:00:22 FI from master (go-algorand)
boblat 01:15:25 chore: stop exporting things not used outside the file they are declared in (puya-ts)
boblat 01:17:21 fix: use the correct alias class for each UintN registration (puya-ts)
boblat 01:18:01 Merge b50d7f33d8bb0f117cc5fcd81ff7aa313f199fea into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
boblat 01:18:37 refactor: extract proxyField helper function to reduce repetition (puya-ts)
boblat 01:18:37 refactor: extract optional chaining warning message into a const (puya-ts)
boblat 01:18:37 refactor: extract contract class hierarchy iterator for consistency in build context (puya-ts)
boblat 01:22:59 Merge ac15aebc539f55429a5614e826abcf25bfa087a0 into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
boblat 01:23:03 refactor: extract ToFixedStrategy type and helper function to parse it (puya-ts)
boblat 01:23:05 refactor: extract base tuple PType (puya-ts)
boblat 01:23:05 refactor: extract base PType of intrinsic function group and function types (puya-ts)
boblat 01:23:05 refactor: extract helper function to construct wtype of object ptypes (puya-ts)
boblat 01:23:05 refactor: extract base PType for array and readonly array types (puya-ts)
boblat 01:23:05 refactor: hoist unspecifiedDefaults const to module scope to avoid repeated construction (puya-ts)
boblat 01:23:05 refactor: extract base type of LibFunction, LibClass and LibObj as LibPType (puya-ts)
boblat 01:23:05 refactor: extract base StateProxy and StateMapProxy ptypes (puya-ts)
boblat 01:23:12 Merge d1f78ff7be3da35abb1bdb721c6b3c098f96ffc4 into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
boblat 01:26:15 Merge d5d2eeae4c8cdf11d9ba9dee313cdcfc3accce01 into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
boblat 01:27:39 refactor: hoist lValueNodes array to module scope to avoid repeated construction (puya-ts)
boblat 01:27:41 refactor: cache programRoot once on AwstBuildContext (puya-ts)
boblat 01:28:44 Merge b8c083d3944d03be96ed2b64098b1ee0012f5599 into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
Argimirodel… 01:37:38 refactor: address review comment (algokit-avm-vscode-debugger)
aorumbayev 01:38:38 Merge ecae3d5925e2aba76fdd8094040eddbaf8f81a65 into 3bf1157b95555887deec818841b5654d76849938 (algokit-avm-vscode-debugger)
aorumbayev 01:51:37 refactor: replace algosdk with algokit-utils (algokit-avm-vscode-debugger)
aorumbayev 01:51:38 fix: import hash from crypto package (algokit-avm-vscode-debugger)
aorumbayev 01:51:39 fix: use published debugger beta in CI (algokit-avm-vscode-debugger)
Argimirodel… 01:51:39 refactor: address review comment (algokit-avm-vscode-debugger)
LoafPickleWW 02:00:53 feat: add AgentLeaderboard component to track agent volume and transaction activity (wen-tools)
Argimirodel… 02:01:28 Merge pull request #108 from algorandfoundation/decoupling (algokit-avm-vscode-debugger)
boblat 02:01:39 build: add if condition to release job to prevent falling back to default `success()` check (puya-ts)
boblat 02:02:11 Merge 5f027562820e0b2a4ba8a686d8b1be2c4f2ba89d into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
LoafPickleWW 02:02:43 feat: add AgentLeaderboard component to track and display agent performance metrics (wen-tools)
semantic-re… 02:05:10 Notes added by 'git notes add' (algokit-avm-vscode-debugger)
achidlow 02:13:37 chore: compile all (after rebase) (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (plus safe-guard against repeated ValueTuple substitutions) (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 minor (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:13:38 refactoring (puya)
achidlow 02:55:41 refactor multi-value folding in GVN to show that it only handles uint64 for now (puya)
achidlow 02:55:57 split up intrinsic_simplification (WIP) (puya)
achidlow 02:56:06 chore: compile all (puya)
achidlow 03:01:25 split up intrinsic_simplification (WIP) (puya)
achidlow 03:01:29 chore: compile all (puya)
mrcointreau 03:03:05 Merge 79b2c8ea1f814e5ccba27ce49ba0b6a003af87c0 into 66ce96a61b8c0a9b31555b2157675eba0e5608c6 (puya-ts)
achidlow 03:03:36 split up intrinsic_simplification (puya)
achidlow 03:04:02 Merge 32ad010764ee35714f6979b6829f13d6cd3697ec into 8bae5e35ab2344588eb532e22ad70dc5f59f0c38 (puya)
Argimirodel… 03:23:31 fix: simulate trace json parsing issue with large uint64 values (use utils parseJson instead) (algokit-avm-vscode-debugger)
boblat 03:35:54 build: add if condition to release job to prevent falling back to default `success()` check (puya-ts)
Argimirodel… 03:36:40 Merge 9e4534b444243da3f68f04267b5dca2db9c58451 into 44d17b075b5e9fc3cd210c55fb88919650761233 (algokit-avm-vscode-debugger)
boblat 04:19:28 fix: add one of the status check functions to avoid default `success()` (puya-ts)
dependabot[… 04:23:52 chore(deps): bump the all group across 1 directory with 11 updates (algokit-utils-ts-debug)
dependabot[… 04:23:55 Merge e2ad8ec24a9b9a7dc1464c16351ce2a0bee0037c into 570a064b612901d825ef4eb7b3ac3b62456a555f (algokit-utils-ts-debug)
iglosiggio 04:26:08 feat: Add a new AWST serializer that replaces duplicate objects with references (puya-ts)
iglosiggio 04:27:47 feat: Add reference deserialization to our JSON format (puya)
boblat 04:35:23 fix: add one of the status check functions to avoid default `success()` (puya-ts)
semantic-re… 04:46:38 Notes added by 'git notes add' (puya-ts)
boblat 05:37:52 chore: update puya ts dependency version (algorand-typescript-testing)
boblat 05:38:47 Merge 3cbaa64646adcb6dc1e38b17d7af667770fb64f3 into cabd8e241c736a6417f0199cbd5c4346ab1edbdb (algorand-typescript-testing)
boblat 05:47:21 fix: use the correct alias class for each UintN registration (puya-ts)
boblat 05:52:45 refactor: route module-name and decorator literals through Constants (puya-ts)
boblat 06:01:28 fix: include sourceLocation when reporting error for easier debugging (puya-ts)
boblat 06:01:28 refactor: use existing utility function for consistency (puya-ts)
semantic-re… 06:22:31 Notes added by 'git notes add' (puya-ts)
achidlow 06:51:44 simplify convert_stack_args_to_immediates (puya)
achidlow 06:51:44 split up intrinsic_simplification (puya)
achidlow 06:51:44 simplify convert_stack_args_to_immediates (puya)
achidlow 06:52:02 Merge 0b37b2a66b116c1b8242cc8561bb281859e03ac4 into 8bae5e35ab2344588eb532e22ad70dc5f59f0c38 (puya)
manuelmauro 07:24:00 refactor(errors)!: structured leaf-crate errors (#314) (algonaut)
boblat 07:29:32 refactor: drop dead and unnecessary code (puya-ts)
boblat 07:30:35 refactor: extract optional chaining warning message into a const (puya-ts)
boblat 07:30:35 refactor: extract proxyField helper function to reduce repetition (puya-ts)
boblat 07:30:35 refactor: extract ToFixedStrategy type and helper function to parse it (puya-ts)
boblat 07:30:35 refactor: extract contract class hierarchy iterator for consistency in build context (puya-ts)
manuelmauro 07:31:45 docs(adr): idiomatic Rust in algonaut::atomic (#313) (algonaut)
semantic-re… 07:40:59 Notes added by 'git notes add' (puya-ts)
manuelmauro 07:54:27 refactor(atomic): idiomatic Rust pass on the atomic module (algonaut)
manuelmauro 08:09:23 fix(atomic): truncate ABI args before wrapping overflow into a tuple (algonaut)
manuelmauro 08:09:38 Merge cbd8bd593ee06d64c204297dbe6a411b6522ceaf into 776138268ad543889774b395161c2afbaf6c7176 (algonaut)
manuelmauro 08:20:50 docs(adr): transaction naming convention (algonaut)
manuelmauro 08:22:57 Merge 039ecfbcdc95d04f475ad55fa065cc0fe5bab477 into 776138268ad543889774b395161c2afbaf6c7176 (algonaut)
boblat 08:26:48 refactor: cache programRoot once on AwstBuildContext (puya-ts)
boblat 08:26:48 refactor: extract base PType of intrinsic function group and function types (puya-ts)
boblat 08:26:48 refactor: extract base StateProxy and StateMapProxy ptypes (puya-ts)
boblat 08:26:48 refactor: extract helper function to construct wtype of object ptypes (puya-ts)
boblat 08:26:48 refactor: extract base PType for array and readonly array types (puya-ts)
boblat 08:26:48 refactor: extract base tuple PType (puya-ts)
boblat 08:26:48 refactor: extract base type of LibFunction, LibClass and LibObj as LibPType (puya-ts)
boblat 08:26:48 refactor: hoist lValueNodes array to module scope to avoid repeated construction (puya-ts)
boblat 08:27:02 Merge 21bb51a2e6619ec51b41b986678bb201f13f3191 into 0982629cb2e415bb82386d7c4a25d5348a91a6e9 (puya-ts)
manuelmauro 08:42:13 docs(adr): compile-time checked ABI method calls via a format-style macro (algonaut)
manuelmauro 08:44:00 Merge 5cdb219da7beea70371e4c9eee67f6611d87227f into 776138268ad543889774b395161c2afbaf6c7176 (algonaut)
boblat 08:49:55 refactor: extract base tuple PType (puya-ts)
boblat 08:49:55 refactor: extract helper function to construct wtype of object ptypes (puya-ts)
boblat 08:49:55 refactor: extract contract class hierarchy iterator for consistency in build context (puya-ts)
boblat 08:49:55 refactor: extract base PType of intrinsic function group and function types (puya-ts)
boblat 08:49:55 refactor: extract optional chaining warning message into a const (puya-ts)
boblat 08:49:55 refactor: extract proxyField helper function to reduce repetition (puya-ts)
boblat 08:49:55 refactor: cache programRoot once on AwstBuildContext (puya-ts)
boblat 08:49:55 refactor: extract ToFixedStrategy type and helper function to parse it (puya-ts)
boblat 08:49:55 refactor: hoist lValueNodes array to module scope to avoid repeated construction (puya-ts)
boblat 08:49:55 refactor: extract base type of LibFunction, LibClass and LibObj as LibPType (puya-ts)
boblat 08:49:55 refactor: extract base PType for array and readonly array types (puya-ts)
boblat 08:49:55 refactor: extract base StateProxy and StateMapProxy ptypes (puya-ts)
boblat 08:50:24 refactor: fix typos in error messages (puya-ts)
boblat 08:50:24 refactor: add source location to invariant checks (puya-ts)
boblat 08:50:24 refactor: use name property in error messages instead of hardcoding type name (puya-ts)
boblat 08:55:28 Merge 1c60f65ac9742723097aeb8bbee504ae976732bc into dcf9d7735d824b8bcf1f25a7e32c694067a03195 (puya-ts)
semantic-re… 09:00:44 Notes added by 'git notes add' (puya-ts)
manuelmauro 09:15:26 refactor(atomic): inline empty-vec-to-Option with then_some (algonaut)
manuelmauro 09:16:20 Merge 08b0844e32d6f6c89a3755db33683dc3cf7f6350 into 776138268ad543889774b395161c2afbaf6c7176 (algonaut)
manuelmauro 09:18:30 refactor(atomic): model u64 ref-arg extraction as a TryFrom impl (algonaut)
manuelmauro 09:21:37 refactor(atomic)!: idiomatic Rust pass on the atomic module (#315) (algonaut)
manuelmauro 09:22:01 docs(adr): compile-time checked ABI method calls via a format-style macro (#317) (algonaut)
manuelmauro 09:55:44 feat(abi): compile-time checked ABI method calls via abi_call!/abi_method! (algonaut)
manuelmauro 09:56:53 Merge 22159933b43a125f15908dac9131cb797a105362 into a8d8ada22968599a2b0e2e541c1a3d1ed50e25bb (algonaut)
manuelmauro 09:59:49 docs(adr): Pera Wallet signer for the atomic composer (algonaut)
manuelmauro 10:01:34 Merge 79002289aefd87f27e489b9e06a742bd847e88de into a8d8ada22968599a2b0e2e541c1a3d1ed50e25bb (algonaut)
manuelmauro 10:03:52 ci: allow the "!" breaking-change marker in the commit-msg hook (algonaut)
manuelmauro 10:05:27 Merge 2a5007b12c5a3d555c5693f26d216f7c74886611 into a8d8ada22968599a2b0e2e541c1a3d1ed50e25bb (algonaut)
mrcointreau 10:18:21 ci: pin action SHAs, tighten permissions and drop decoupling refs (algokit-utils-ts)
manuelmauro 10:20:19 chore(abi): drop inherited author from new ABI crates (algonaut)
mrcointreau 10:22:03 Merge 0814b67441c274aa63093925d6ec07e0d18ada17 into 5ac2cb8d1102eacf74f3747b8a0559423290dae1 (algokit-utils-ts)
manuelmauro 10:24:53 feat(abi)!: compile-time checked ABI method calls via a format-style macro (#318) (algonaut)
manuelmauro 10:27:15 docs(adr): speed up integration CI by caching the test harness images (algonaut)
manuelmauro 10:28:41 Merge 0bd12e7d228f9d5fec54d72a2bdb384b9554fb02 into 1d3a559684b5ad09f74c6c57e53e6361504bc86c (algonaut)
manuelmauro 10:40:37 ci: allow the "!" breaking-change marker in the commit-msg hook (#320) (algonaut)
manuelmauro 10:41:25 docs(adr): transaction naming convention (#316) (algonaut)
manuelmauro 10:43:12 docs(readme): showcase the atomic group composer and evolution since 0.4.2 (algonaut)
manuelmauro 10:44:31 Merge 40f77273b3733a9d5a47bad8f9df38e67650fb15 into 79b38ba4ca355a631ad5b5e58916c6ed476a04b1 (algonaut)
jannotti 10:49:48 Clearer comment (go-algorand)
jannotti 10:50:02 Merge bab375d7c93ddd8fd3f444ac3257d9cd2a307a17 into 4f3f6c8e7d1331a4a01c1fb5074c82d47b24b337 (go-algorand)
manuelmauro 10:53:43 docs(readme): showcase the atomic group composer and evolution since 0.4.2 (#322) (algonaut)
manuelmauro 11:21:55 refactor(naming)!: adopt the transaction-naming convention (algonaut)
AlekseiBY 11:24:30 add create_dark_order for spot + perp dark pool (ultrade-python-sdk)
AlekseiBY 11:36:07 randomize dark order chunks via Dirichlet split (ultrade-python-sdk)
manuelmauro 11:42:12 chore: merge origin/main into docs/adr-transaction-naming-impl (algonaut)
manuelmauro 11:48:27 refactor(naming): name the transaction-group module `group` (algonaut)
manuelmauro 11:49:42 refactor(naming)!: adopt the transaction-naming convention (#323) (algonaut)
achidlow 11:57:25 GVN: brute-force per-component fold decision in _materialize_constants (puya)
achidlow 11:57:48 chore: compile all (puya)
manuelmauro 12:12:09 docs(adr): cargo feature gates for the client modules (algonaut)
manuelmauro 12:12:30 Merge be919f460a67ccf48da69eb9d5a8d03b8cbdf8b2 into 981b016dda2639b2ec37cb5d7d4d55728552261c (algonaut)
manuelmauro 12:49:51 Merge branch 'main' into docs/adr-client-feature-gates (algonaut)
manuelmauro 12:50:03 docs(adr): cargo feature gates for the client modules (#324) (algonaut)
achidlow 12:51:47 GVN: replace _materialize_constants greedy with Schlesinger-Flach min-cut (puya)
achidlow 12:52:54 chore: compile all (puya)
manuelmauro 13:20:18 feat(features)!: gate algod, indexer, and kmd clients behind cargo features (algonaut)
manuelmauro 13:20:24 Merge d219ed8beedf8ba15f7a0a6e87889d8780855848 into 942a7d6ed893d31c0cbe85b259d6db244aa5812d (algonaut)
mrcointreau 13:27:49 ci: pin action SHAs, tighten permissions and drop decoupling refs (algokit-utils-ts)
mrcointreau 13:28:04 Merge 4f037871140af1dfcd75c55c7692aeaa904f2ec1 into 5ac2cb8d1102eacf74f3747b8a0559423290dae1 (algokit-utils-ts)
manuelmauro 13:33:42 feat(features)!: gate algod, indexer, and kmd clients behind cargo features (#325) (algonaut)
AlekseiBY 13:37:10 dark pool: add privacy invariant tests; surface signin JSON errors (ultrade-python-sdk)
mrcointreau 13:52:23 ci: pin action SHAs, tighten permissions and drop decoupling refs (algokit-utils-ts)
mrcointreau 13:52:56 Merge 2d5a0bb463f17bb18c2495c7b4a5d4b17131044b into 5ac2cb8d1102eacf74f3747b8a0559423290dae1 (algokit-utils-ts)
JBScaled 14:13:56 Merge pull request #619 from algorandfoundation/jorrin/agents-md-test (devportal)
mrcointreau 14:41:23 chore: bump algokit-utils to beta.3, harden workflows and retire alpha channel (algokit-subscriber-ts)
mrcointreau 14:42:59 Merge 40cad2433e0f63af6eec90f6c92701a216d98bdf into 60c950d7dc9f99aed06d0e2d318eee74288dfa0f (algokit-subscriber-ts)
manuelmauro 15:00:18 docs(adr): relocate generated models into algonaut_model (algonaut)
manuelmauro 15:00:37 docs(adr): relocate generated models into algonaut_model (#326) (algonaut)
manuelmauro 15:26:48 docs(adr): record that the kmd client stays hand-written (algonaut)
manuelmauro 15:28:30 Merge 0e846a1e96aa7fe70b7031c8aea4f61d4a3556a2 into e2b149580ebeea2155bba62ae8a65eb368992907 (algonaut)
manuelmauro 15:44:45 refactor(model)!: relocate generated models into algonaut_model (algonaut)
manuelmauro 15:45:29 Merge 4e38ab414ee809ddfa4e646a0192dcd7eb2d0a71 into e2b149580ebeea2155bba62ae8a65eb368992907 (algonaut)
mrcointreau 15:50:29 chore: replace @makerx deps with local implementation and algokit-shadred-config workflows (puya-ts)
mrcointreau 15:50:31 ci: point algokit-shared-config workflow references to main (puya-ts)
mrcointreau 15:50:32 chore: add 7-day npm release cooldown via .npmrc and dependabot (puya-ts)
mrcointreau 15:50:32 chore: bump deps (puya-ts)
mrcointreau 15:51:12 chore: drop node 20, bump support to node 22/24/26 and remove unnecessary polyfills (puya-ts)
mrcointreau 15:56:03 Merge 9ac866d09064260f353be96724663a2b0b91b12a into dcf9d7735d824b8bcf1f25a7e32c694067a03195 (puya-ts)
michaeltchu… 15:59:53 chore: log greeting (2026-05-22) (a-day-in-my-bobalife)
mrcointreau 16:07:05 Merge pull request #368 from algorandfoundation/chore/makerx-decoupling (puya-ts)
renovate[bo… 16:13:23 fix(deps): update all non-major dependencies (algorealm-cli)
renovate[bo… 16:13:28 Merge 73da298f5714ac8e267c30e9d4b6577ce84e16a5 into 361d3066ffaca4241991cc6563403417bf562ecf (algorealm-cli)
Argimirodel… 16:13:37 Merge pull request #110 from algorandfoundation/fix/int-parse-bug (algokit-avm-vscode-debugger)
semantic-re… 16:16:56 Notes added by 'git notes add' (algokit-avm-vscode-debugger)
semantic-re… 16:18:28 Notes added by 'git notes add' (puya-ts)
LoafPickleWW 17:01:51 feat: implement comprehensive tool suite interface and navigation components (wen-tools)
LoafPickleWW 17:28:15 feat: create SelectToolComponent for browsing and filtering tool suites (wen-tools)
renovate[bo… 17:57:16 fix(deps): update all non-major dependencies (algoworld-explorer)
renovate[bo… 17:57:20 Merge 1dc2923279e222ca6170e1a5a36254123a05dd8f into 04bb54c18a9859d876122eb6ed6d4baf60ee4904 (algoworld-explorer)
manuelmauro 18:52:19 fix!: ABI return-value and dryrun decoding bugs surfaced by the integration suite (algonaut)
manuelmauro 18:53:22 Merge 46fd465dc3e5c6e27f9b10ff18fd13261d21630e into e2b149580ebeea2155bba62ae8a65eb368992907 (algonaut)
LoafPickleWW 18:54:17 feat: implement BatchMint, CollectionDataDownloader, and DistributionSuite page components (wen-tools)
dependabot[… 19:07:30 Bump qs, express and body-parser (js-algorand-sdk)
dependabot[… 19:07:34 Merge 1cea60838e476b77ae2eaeb89ae723a334270ce6 into 63d2296fabd68535ead93b531bb45a9f7a4099f5 (js-algorand-sdk)
LoafPickleWW 20:21:14 feat: initialize Bonfire project workspace and scaffold new batch tool pages (wen-tools)
LoafPickleWW 20:26:39 feat: add Meta component for dynamic SEO and social metadata management (wen-tools)
renovate[bo… 21:29:09 chore(deps): update non-major dependencies (use-wallet)
renovate[bo… 21:29:13 Merge e46e5324c048e69849ed6df04dca3104d2d3b3e8 into 5073ca134b7c4c5721fcfbe976d5c364a5cc777a (use-wallet)
dependabot[… 21:33:01 build(deps): bump qs and express (StablecoinWatch)
dependabot[… 21:33:04 Merge 2aa333dcae326a9bca526e6413fd0a58662c9827 into 406e6102bcf789e4b1381d4aede87c8b3458c87e (StablecoinWatch)