Home Reports May 21, 2026
Thursday, May 21, 2026
- Commits
- 266
- pushed this day
- Repositories
- 15
- with activity
- Contributors
- 17
- distinct authors
- Lines changed
- +363,318 −357,554
- additions / deletions
Thursday, May 21, 2026
266 commits were pushed across 15 repos by 17 authors. There were 363,318 additions and 357,554 deletions.
Stay up to date with the latest insights and developments on AlgoScan
Updated repos
15 repositories- go-algorand 4 commits
- go-algorand-sdk 1 commit
- java-algorand-sdk 2 commits
- js-algorand-sdk 1 commit
- algokit-lora 10 commits
- devportal 1 commit
- intermezzo 12 commits
- puya 180 commits
- puya-ts 9 commits
- wallet-provider-extensions 6 commits
- xchain-accounts 3 commits
- wen-tools 3 commits
- algonaut 30 commits
- a-day-in-my-bobalife 1 commit
- algokit-walletsdk-kmp 3 commits
Commit Log
266 commits · 15 repositories
01:00:20
go-algorand
Build 2724 Data
+1
−1
01:47:54
intermezzo
chore: add logging to exceptions filter
+11
−1
02:03:08
intermezzo
feat: vault key value store and repository
+756
−0
02:42:19
puya
fix: invalidate box cache upon box creation
+67
−1
02:48:31
puya
chore: compile all
+4980
−0
02:48:32
puya
docs: add change log
+41
−0
02:57:06
puya
docs: add change log
+41
−0
02:57:06
puya
fix: invalidate box cache upon box creation
+67
−1
02:57:06
puya
chore: compile all
+4980
−0
03:23:12
intermezzo
chore: update vault kv policy, moves .env to .env.template and updates it automatically on deployment.
+186
−18
04:03:33
puya-ts
chore: assert bindings/properties length match in lvalue and single-eval paths
+9
−0
04:08:08
intermezzo
feat: oid4vc with did:algo and device credentials
+15073
−84
04:08:15
intermezzo
chore: remove env and move starting algokit to start_development.sh
+8
−99
04:08:15
intermezzo
ci: downgrade node version and ignore engines on install
+2
−2
04:08:16
intermezzo
chore: add .yarnrc with ignore engines
+1
−0
04:11:42
puya
build: add a category option to test_cases_diff_summary.py
+11
−8
04:11:42
puya
chore: compile all
+808
−808
04:11:42
puya
fix: categorize "bury" as a stack op instead of other in .stats.txt files
+1
−0
04:11:42
puya
fix: remove duplicated description for `--output-op-statistics`
+0
−1
04:11:42
puya
chore: add changelog
+43
−0
04:13:11
intermezzo
ci: reorder lint and format steps
+5
−5
04:16:37
intermezzo
style: fix lint and format errors
+27
−49
04:20:08
puya
fix: categorize "bury" as a stack op instead of other in .stats.txt files
+1
−0
04:20:08
puya
chore: compile all
+808
−808
04:20:08
puya
build: add a category option to test_cases_diff_summary.py
+11
−8
04:20:08
puya
chore: add changelog
+43
−0
04:20:08
puya
fix: remove duplicated description for `--output-op-statistics`
+0
−1
04:21:01
puya-ts
chore: fix audit vulnerabilities
+14
−9
04:21:01
puya-ts
fix: allow destructuring into multiple aliases for scalar types
+5732
−3687
04:21:01
puya-ts
chore: assert bindings/properties length match in lvalue and single-eval paths
+9
−0
04:23:43
intermezzo
ci: copy env.template to .env
+1
−0
04:24:41
puya
feat: add TEAL optimisation to eliminate cover/uncover ops by reordering op sequences
+299
−0
04:24:41
puya
chore: compile all
+30145
−29505
04:24:41
puya
chore: add changelog
+42
−0
04:24:41
puya
feat: add additional load ops
+3
−0
04:24:41
puya
refactor: make TealOp immediates a tuple
+30
−28
04:41:40
intermezzo
ci: fix node module permissions
+3
−1
04:45:02
puya-ts
fix: include sourceLocation when reporting error for easier debugging
+84
−40
04:45:04
puya-ts
refactor: use existing utility function for consistency
+7
−17
05:33:39
puya-ts
chore: stop exporting things not used outside the file they are declared in
+56
−88
06:27:33
algonaut
docs(adr): accept landed D-series; tighten composer typestate ADR
+31
−17
06:31:55
algonaut
docs(adr): renumber composer typestate to fourth sub-ADR
+1
−1
06:53:04
algonaut
fix(composer): sign every transaction in multi-signer groups
+118
−57
07:13:15
algonaut
chore: merge main into docs/adr-atomic-transaction-composer
+1277
−455
07:17:47
xchain-accounts
chore: portal: env variable handling for indexer where makes sense
+5
−5
07:23:41
algonaut
feat(atomic_transaction_composer): MethodCall fluent builder (D6) (#305)
+550
−284
07:29:31
algonaut
chore: merge main (D6 MethodCall builder, #305) into docs/adr-atomic-transaction-composer
+550
−282
07:48:02
algonaut
refactor(atomic_transaction_composer): typestate group builder (Fourth sub-ADR)
+436
−435
07:52:08
algonaut
refactor(error): preserve source chain; drop Clone/Eq from Error
+20
−32
07:54:37
algonaut
docs(adr): accept the composer typestate ADR; reconcile with as-built API
+11
−7
07:57:35
algonaut
docs(adr): accept landed D2/D5/D6/D7 sub-ADRs; fix arkouda lint
+11
−11
08:13:07
puya
update to latest mypy version
+351
−216
08:14:36
puya
chore: compile all
+232
−229
08:14:36
puya
eliminate repeated ArrayLength nodes when the argument is a stack value
+10
−1
08:14:36
puya
GVN test cases
+185
−0
08:14:37
puya
chore: compile all
+15543
−0
08:14:37
puya
feat: implement GVN
+604
−0
08:14:37
puya
chore: compile all
+36453
−37855
08:14:38
puya
GVN refactor:
+174
−106
08:14:38
puya
refactoring
+9
−10
08:14:38
puya
fix: scope GVN tables to dominator tree to prevent potential dominance violation
+5
−2
08:14:38
puya
fix nasty potential bug with static index and VN collisions in extrac/replace ops
+18
−5
08:14:38
puya
- use ValueProviderVisitor in GVN to ensure exhaustiveness
+194
−82
08:14:38
puya
GVN refactor: remove _PhiKey
+9
−15
08:14:38
puya
add docstrings to some higher level IR models
+10
−0
08:14:38
puya
refactor
+13
−16
08:14:38
puya
chore: compile all
+3
−3
08:14:38
puya
simplify
+1
−3
08:14:38
puya
chore: compile all
+928
−995
08:14:38
puya
GVN refactoring: simplify the way we pass scope down to children
+30
−53
08:14:38
puya
refactoring: restrict "const" VN to Constant | TemplateVar - Undefined should definitely not be considered equal, and compiled refs get replaced by constants eventually anyway.
+10
−6
08:14:38
puya
extract ValueProviderVisitor from IRVisitor
+59
−53
08:14:38
puya
refactoring
+41
−125
08:14:38
puya
refactoring: VN -> register and Value -> VN mappings don't need scoping
+15
−19
08:14:39
puya
chore: compile all
+24743
−20974
08:14:39
puya
GVN refactoring (WIP)
+26
−35
08:14:39
puya
GVN refactoring (WIP)
+40
−46
08:14:39
puya
GVN: better candidate selection
+126
−102
08:14:40
puya
fix: handle irreducible control flow in GVN SCC phi congruence
+1
−4
08:14:40
puya
refactor: rewrite SCC phi congruence to operate on the replacement map
+33
−36
08:14:40
puya
GVN: refactor
+84
−73
08:14:40
puya
GVN: fix bug with back-edges
+8
−14
08:14:40
puya
GVN: simplify
+35
−47
08:14:40
puya
GVN: refactor (WIP)
+47
−59
08:14:40
puya
GVN refactoring (WIP)
+7
−6
08:14:40
puya
GVN refactoring (WIP)
+10
−3
08:14:40
puya
GVN: handle no-args intrinsics by assigning same VN but skipping replacement (due to stack shuffling impacts)
+9
−5
08:14:40
puya
GVN: refactor (WIP)
+3
−9
08:14:40
puya
chore: compile all
+102297
−137627
08:14:40
puya
GVN: refactor
+32
−32
08:14:40
puya
GVN: refactor
+26
−29
08:14:40
puya
GVN: simplify
+6
−11
08:14:40
puya
GVN: refactor (WIP)
+91
−83
08:14:40
puya
GVN: refactor (WIP)
+190
−199
08:14:41
puya
use GVN in redundant assert detection
+40
−86
08:14:41
puya
GVN global hash map (WIP)
+34
−41
08:14:41
puya
GVN: replace UInt64 constants
+57
−16
08:14:41
puya
GVN global hash map (WIP)
+57
−12
08:14:41
puya
add GVN test for AVAIL/PRE (not implemented yet)
+2432
−0
08:14:41
puya
chore: compile all
+0
−41
08:14:41
puya
chore: compile all
+6542
−7809
08:14:41
puya
add additional testing of runtime-dominance
+1734
−6
08:14:41
puya
chore: compile all
+1330
−2133
08:14:41
puya
chore: compile all
+1710
−2026
08:14:41
puya
GVN: give constants a consistent key regardless of representation
+47
−12
08:14:41
puya
GVN: refactor (WIP)
+6
−1
08:14:41
puya
GVN: intrinsic identities (WIP)
+38
−0
08:14:41
puya
chore: compile all
+8866
−22626
08:14:41
puya
GVN: refactor (WIP)
+38
−28
08:14:42
puya
GVN refactoring (partial undo, `global` is not PURE)
+3
−4
08:14:42
puya
GVN refactoring
+19
−17
08:14:42
puya
hmm
+43
−54
08:14:42
puya
chore: compile all
+465
−7676
08:14:42
puya
mostly comment updates, some minor refactoring
+16
−38
08:14:42
puya
remove byte constant restriction
+3
−4
08:14:42
puya
mostly comment updates, one minor refactor
+11
−22
08:14:43
puya
chore: compile all
+560
−93
08:14:43
puya
chore: compile all
+42
−105
08:14:43
puya
add GVN test for double-negation of comparison
+2501
−777
08:14:43
puya
refactoring, hmmm
+17
−20
08:14:43
puya
refactoring, hmmm
+23
−20
08:14:43
puya
remove binary-op identity simplifications from intrinsic_simplification, it has been subsumed and improved upon in GVN
+0
−26
08:14:43
puya
GVN: skip Value rather than just Constant for uint64 propagation
+5
−2
08:14:43
puya
chore: compile all
+198
−518
08:14:43
puya
simplify simplifier
+20
−20
08:14:43
puya
GVN: record negation comparisons even when there is a match to the un-negated version, so that double negation works
+5
−1
08:14:43
puya
chore: compile all
+63
−79
08:14:43
puya
simplify simplifier
+70
−68
08:14:43
puya
refactoring, hmmm (plus not folding)
+28
−24
08:14:43
puya
refactoring, hmmm
+39
−36
08:14:44
puya
GVN: len of const
+5
−0
08:14:44
puya
chore: compile all
+2367
−2678
08:14:44
puya
preserve encoding
+55
−29
08:14:44
puya
simplify the simplifier
+6
−11
08:14:44
puya
chore: compile all
+32
−544
08:14:44
puya
fix itertools.count type subscripting
+7
−1
08:14:44
puya
simplify the simplifier
+83
−63
08:14:44
puya
chore: compile all
+4
−6
08:14:44
puya
chore: compile all
+2
−2
08:14:44
puya
chore: compile all
+33
−138
08:14:44
puya
GVN: substring const
+18
−0
08:14:44
puya
simplify the simplifier
+73
−50
08:14:44
puya
chose best encoding for VN
+15
−0
08:14:44
puya
refactoring, hmmm
+14
−8
08:14:44
puya
GVN: len of const
+3
−7
08:14:44
puya
GVN: extract/extract3 const
+28
−0
08:14:44
puya
simplify the simplifier
+19
−11
08:14:44
puya
GVN: fold uint64 constant binary ops
+32
−4
08:14:44
puya
refactor / small bytes consts when the source is an intrinsic with register args (causing stack shuffling)
+42
−16
08:14:44
puya
re-use single const uint64 simplifications
+86
−33
08:14:44
puya
chore: compile all
+1601
−1729
08:14:44
puya
GVN: concat consts
+56
−44
08:14:45
puya
chore: compile all
+6435
−9363
08:14:45
puya
allow no-stack-args intrinsics to participate in VN coalescing, but start a new group for each one
+17
−19
08:14:45
puya
wip
+26
−40
08:14:45
puya
re-use single const bytes simplifications
+67
−11
08:14:45
puya
simplify the simplifier
+43
−41
08:14:45
puya
wip
+10
−6
08:14:45
puya
wip
+110
−15
08:14:45
puya
GVN: fold bytes constant binary ops
+137
−124
08:14:45
puya
add op sizes
+153
−0
08:14:45
puya
chore: compile all
+92
−366
08:14:45
puya
chore: compile all
+1740
−1617
08:14:45
puya
chore: compile all
+61
−657
08:14:45
puya
chore: compile all
+4
−4
08:14:45
puya
review fixes
+14
−15
08:14:45
puya
GVN: disable byte-const-inlining (for now)
+13
−11
08:14:45
puya
HMMM
+292
−121
08:14:46
puya
fix multi-target assignment in GVN??
+39
−7
08:14:46
puya
GVN: wide-math
+266
−31
08:14:46
puya
chore: compile all
+2533
−626
08:14:46
puya
hmmm
+3
−9
08:14:46
puya
review fixes
+54
−54
08:14:46
puya
fixes
+4
−2
08:14:46
puya
setbyte const folding (GVN + intrinsics)
+85
−0
08:14:46
puya
fixes
+3
−5
08:14:46
puya
chore: compile all
+3
−608
08:14:46
puya
linting
+8
−8
08:14:46
puya
chore: compile all (after rebase)
+1057
−1099
08:14:46
puya
comment rejiggering
+13
−7
08:14:46
puya
chore: compile all
+580
−261
08:14:46
puya
chore: compile all
+5948
−4000
08:14:46
puya
getbyte const folding (GVN + intrinsics)
+61
−0
08:14:46
puya
replace3 const folding (GVN + intrinsics)
+79
−2
08:14:46
puya
fix test to do what it actually claims to do
+7
−5
08:14:46
puya
chore: compile all
+1
−1
08:14:46
puya
linting
+8
−8
08:14:46
puya
chore: compile all
+2458
−325
08:14:46
puya
chore: compile all
+2460
−376
08:14:47
puya
don't need a test case per op, that's just silly
+24
−38
08:14:47
puya
simplify identity x % 1 == 0
+6
−0
08:14:47
puya
fix test to do what it actually claims to do (take #2)
+3
−7
08:14:47
puya
chore: compile all
+4842
−3521
08:14:47
puya
chore: compile all
+28872
−35010
08:14:47
puya
chore: compile all
+167
−167
08:14:47
puya
test fix - doh
+2
−2
08:14:47
puya
chore: compile all
+264
−349
08:14:47
puya
chore: compile all
+4200
−497
08:14:47
puya
chore: compile all
+633
−2393
08:14:47
puya
tests for x % 1 == 0 identity
+34
−2
08:14:47
puya
chained extract_uintN -> extract S 0 optimisation, disable binary uint64 const folding in intrinsics
+33
−1
08:14:48
puya
further shifting from intrinsic_simplification.py -> GVN
+18
−24
08:14:48
puya
refactoring
+31
−52
08:14:48
puya
chore: compile all
+2192
−3939
08:14:49
puya
refactoring
+4
−10
08:14:49
puya
refactoring
+7
−22
08:14:49
puya
refactoring
+63
−134
08:14:49
puya
refactoring
+13
−12
08:14:49
puya
preserver property that compile time constants ops should be pure
+6
−2
08:14:49
puya
chore: compile all
+250
−365
08:30:40
algokit-lora
Merge pull request #585 from algorandfoundation/chore/makerx-decoupling
+509
−768
08:35:42
algokit-lora
chore(deps-dev): bump @tailwindcss/postcss from 4.1.16 to 4.3.0
+667
−16
08:35:47
algokit-lora
Merge 4ef7b5842e56da52fc9e6ab7488d7f7a29f42704 into 8be5edfa96fa9c964ddfa516e82fc2a8f7a7793d
+667
−16
08:36:21
algokit-lora
chore(release): ref:beta 2.4.0-beta.2 [skip ci]
+3
−3
08:36:23
algokit-lora
Notes added by 'git notes add'
+1
−0
08:37:31
algokit-lora
Merge daed12d6900ecf78731f90dc13fb769a012ba008 into 0e26b4b274a282ae273b68b29140379d39803971
+63
−3
08:38:01
algokit-lora
chore(deps): bump multiformats from 13.4.1 to 14.0.0
+65
−5
08:38:05
algokit-lora
Merge efcd68e0a144be0b969e4997c12ec9395a9d1166 into 0e26b4b274a282ae273b68b29140379d39803971
+65
−5
08:41:17
algokit-lora
chore(deps-dev): bump vite from 7.3.2 to 8.0.12
+1017
−140
08:41:21
algokit-lora
Merge 19ceb6b65fbcda2951f2a6ee0db27fec1a8092a8 into 0e26b4b274a282ae273b68b29140379d39803971
+1017
−140
09:31:55
puya-ts
refactor: route module-name and decorator literals through Constants
+42
−36
09:34:43
algonaut
refactor(atomic_transaction_composer): name typestate types Atomic*Group
+67
−66
09:38:32
algonaut
docs(example): multi-transaction atomic group via the composer
+104
−0
09:59:57
puya-ts
refactor: drop dead and unnecessary code
+43
−77
10:04:56
algonaut
refactor(simulate): hide generated response behind hand-named SimulateResponse
+69
−7
10:13:56
algonaut
refactor(simulate): drop SimulateResponse raw escape hatches
+27
−21
10:26:45
algonaut
refactor(atomic_transaction_composer)!: typestate group builder + error source chaining (#307)
+1002
−487
10:50:46
algonaut
docs(adr): propose async signer trait
+227
−3
11:34:50
wallet-provider-extensions
chore(release): identities-store
+6
−1
11:34:54
wallet-provider-extensions
Notes added by 'git notes add'
+1
−0
11:35:37
wallet-provider-extensions
chore(release): identities-keystore-extension
+19
−1
11:35:40
wallet-provider-extensions
Notes added by 'git notes add'
+1
−0
11:35:48
intermezzo
docs: adds sequence diagram for DID
+261
−0
11:36:10
wallet-provider-extensions
chore(release): identities-extension
+19
−1
11:36:12
wallet-provider-extensions
Notes added by 'git notes add'
+1
−0
11:38:52
xchain-accounts
fix: portal: enable preview URLs from wrangler config
+1
−0
11:45:17
xchain-accounts
fix: portal: use wrangler output file to extract preview URL
+17
−1
12:00:17
go-algorand
Tools: Default Cloudflare DNS records to 60s TTL (#6630)
+40
−22
12:05:44
go-algorand
add Go Benchmark (go) benchmark result for 4f3f6c8e7d1331a4a01c1fb5074c82d47b24b337
+445
−1
12:50:33
algonaut
docs(adr): split out external-signature-ingress; resolve async-signer open questions
+318
−16
13:02:44
algonaut
docs(adr): make the corrected deserialize path the sole external-signature ingress
+139
−132
13:10:38
algonaut
chore: merge origin/main into docs/adr-async-signers
+1000
−485
13:13:00
algonaut
docs(adr): async, group-aware signer trait + external-signature ingress (#309)
+533
−0
13:31:14
algonaut
feat(signer): async, group-aware Signer trait + corrected external-signature ingress
+383
−83
14:24:37
algonaut
feat(signer): sign() rejects unsigned slots instead of placeholder-signing them
+85
−33
14:38:50
algonaut
feat(signer)!: async, group-aware Signer trait + external-signature ingress (#310)
+465
−113
15:00:35
algonaut
refactor(atomic): rename atomic_transaction_composer module to atomic, split into submodules
+1372
−1141
15:09:55
devportal
Merge pull request #618 from algorandfoundation/jorrin/kapa-mcp
+15
−3
15:13:36
algonaut
refactor(atomic): rename atomic_transaction_composer module to atomic, split into submodules (#311)
+1372
−1141
15:15:22
algonaut
docs(adr): structured leaf-crate errors follow-up to D8
+219
−0
16:14:07
a-day-in-my-bobalife
chore: log greeting (2026-05-21)
+1
−0
17:15:11
algonaut
docs(adr): structured leaf-crate errors follow-up to D8 (#312)
+219
−0
17:27:34
algonaut
refactor(errors)!: structured leaf-crate errors
+380
−196
17:42:37
algonaut
docs(adr): idiomatic Rust in algonaut::atomic
+550
−0
17:43:58
algonaut
style: apply cargo fmt
+50
−52
17:48:02
wen-tools
feat: implement agent marketplace page and associated leaderboard and VRF testing components
+767
−2
18:42:26
wen-tools
feat: implement Meta component for dynamic SEO tag management and update index.html social metadata
+48
−12
18:46:55
wen-tools
feat: implement BeaconDropTool for encrypted cross-wallet messaging and file transfers
+200
−8
20:20:39
algokit-walletsdk-kmp
fix: resolve iOS build issues and bump version
+37
−12
20:24:35
algokit-walletsdk-kmp
docs: update readme
+2
−2
20:48:06
go-algorand
add algod_network_p2p_gs_reject_by_topic metric
+32
−5
20:48:43
algokit-walletsdk-kmp
fix: resolve iOS build issues and bump version (#311)
+39
−14
23:40:19
java-algorand-sdk
Regenerate code from specification file
+75
−6
23:40:24
java-algorand-sdk
Merge d80306593d0b6120939c1c94c8d2f64e354954b7 into 4e38dadc4eec827ed8742c8bb272e0545c801932
+75
−6
23:41:04
go-algorand-sdk
Regenerate code from specification file
+75
−4
23:41:53
js-algorand-sdk
Regenerate code from specification file
+83
−18