trace-froward: better handle the error cases
Nov 07, 2-3 PM (45)
Nov 07, 3-4 PM (37)
Nov 07, 4-5 PM (43)
Nov 07, 5-6 PM (21)
Nov 07, 6-7 PM (11)
Nov 07, 7-8 PM (7)
Nov 07, 8-9 PM (14)
Nov 07, 9-10 PM (6)
Nov 07, 10-11 PM (32)
Nov 07, 11-12 AM (23)
Nov 08, 12-1 AM (5)
Nov 08, 1-2 AM (5)
Nov 08, 2-3 AM (6)
Nov 08, 3-4 AM (2)
Nov 08, 4-5 AM (3)
Nov 08, 5-6 AM (0)
Nov 08, 6-7 AM (0)
Nov 08, 7-8 AM (4)
Nov 08, 8-9 AM (2)
Nov 08, 9-10 AM (1)
Nov 08, 10-11 AM (2)
Nov 08, 11-12 PM (5)
Nov 08, 12-1 PM (10)
Nov 08, 1-2 PM (10)
Nov 08, 2-3 PM (9)
Nov 08, 3-4 PM (4)
Nov 08, 4-5 PM (11)
Nov 08, 5-6 PM (23)
Nov 08, 6-7 PM (6)
Nov 08, 7-8 PM (11)
Nov 08, 8-9 PM (4)
Nov 08, 9-10 PM (1)
Nov 08, 10-11 PM (32)
Nov 08, 11-12 AM (27)
Nov 09, 12-1 AM (8)
Nov 09, 1-2 AM (4)
Nov 09, 2-3 AM (4)
Nov 09, 3-4 AM (8)
Nov 09, 4-5 AM (2)
Nov 09, 5-6 AM (0)
Nov 09, 6-7 AM (6)
Nov 09, 7-8 AM (14)
Nov 09, 8-9 AM (5)
Nov 09, 9-10 AM (2)
Nov 09, 10-11 AM (2)
Nov 09, 11-12 PM (3)
Nov 09, 12-1 PM (1)
Nov 09, 1-2 PM (5)
Nov 09, 2-3 PM (2)
Nov 09, 3-4 PM (30)
Nov 09, 4-5 PM (4)
Nov 09, 5-6 PM (5)
Nov 09, 6-7 PM (6)
Nov 09, 7-8 PM (3)
Nov 09, 8-9 PM (5)
Nov 09, 9-10 PM (4)
Nov 09, 10-11 PM (25)
Nov 09, 11-12 AM (21)
Nov 10, 12-1 AM (6)
Nov 10, 1-2 AM (17)
Nov 10, 2-3 AM (15)
Nov 10, 3-4 AM (13)
Nov 10, 4-5 AM (9)
Nov 10, 5-6 AM (11)
Nov 10, 6-7 AM (7)
Nov 10, 7-8 AM (39)
Nov 10, 8-9 AM (78)
Nov 10, 9-10 AM (32)
Nov 10, 10-11 AM (32)
Nov 10, 11-12 PM (46)
Nov 10, 12-1 PM (26)
Nov 10, 1-2 PM (53)
Nov 10, 2-3 PM (41)
Nov 10, 3-4 PM (23)
Nov 10, 4-5 PM (39)
Nov 10, 5-6 PM (35)
Nov 10, 6-7 PM (15)
Nov 10, 7-8 PM (12)
Nov 10, 8-9 PM (21)
Nov 10, 9-10 PM (80)
Nov 10, 10-11 PM (34)
Nov 10, 11-12 AM (56)
Nov 11, 12-1 AM (17)
Nov 11, 1-2 AM (3)
Nov 11, 2-3 AM (14)
Nov 11, 3-4 AM (17)
Nov 11, 4-5 AM (6)
Nov 11, 5-6 AM (4)
Nov 11, 6-7 AM (13)
Nov 11, 7-8 AM (11)
Nov 11, 8-9 AM (29)
Nov 11, 9-10 AM (33)
Nov 11, 10-11 AM (23)
Nov 11, 11-12 PM (10)
Nov 11, 12-1 PM (119)
Nov 11, 1-2 PM (50)
Nov 11, 2-3 PM (43)
Nov 11, 3-4 PM (33)
Nov 11, 4-5 PM (22)
Nov 11, 5-6 PM (31)
Nov 11, 6-7 PM (68)
Nov 11, 7-8 PM (31)
Nov 11, 8-9 PM (17)
Nov 11, 9-10 PM (24)
Nov 11, 10-11 PM (34)
Nov 11, 11-12 AM (20)
Nov 12, 12-1 AM (4)
Nov 12, 1-2 AM (2)
Nov 12, 2-3 AM (6)
Nov 12, 3-4 AM (5)
Nov 12, 4-5 AM (5)
Nov 12, 5-6 AM (3)
Nov 12, 6-7 AM (15)
Nov 12, 7-8 AM (36)
Nov 12, 8-9 AM (51)
Nov 12, 9-10 AM (53)
Nov 12, 10-11 AM (32)
Nov 12, 11-12 PM (46)
Nov 12, 12-1 PM (56)
Nov 12, 1-2 PM (48)
Nov 12, 2-3 PM (21)
Nov 12, 3-4 PM (29)
Nov 12, 4-5 PM (59)
Nov 12, 5-6 PM (15)
Nov 12, 6-7 PM (15)
Nov 12, 7-8 PM (16)
Nov 12, 8-9 PM (10)
Nov 12, 9-10 PM (15)
Nov 12, 10-11 PM (33)
Nov 12, 11-12 AM (14)
Nov 13, 12-1 AM (12)
Nov 13, 1-2 AM (8)
Nov 13, 2-3 AM (6)
Nov 13, 3-4 AM (8)
Nov 13, 4-5 AM (2)
Nov 13, 5-6 AM (3)
Nov 13, 6-7 AM (27)
Nov 13, 7-8 AM (28)
Nov 13, 8-9 AM (55)
Nov 13, 9-10 AM (69)
Nov 13, 10-11 AM (53)
Nov 13, 11-12 PM (42)
Nov 13, 12-1 PM (40)
Nov 13, 1-2 PM (107)
Nov 13, 2-3 PM (36)
Nov 13, 3-4 PM (36)
Nov 13, 4-5 PM (26)
Nov 13, 5-6 PM (58)
Nov 13, 6-7 PM (14)
Nov 13, 7-8 PM (14)
Nov 13, 8-9 PM (32)
Nov 13, 9-10 PM (13)
Nov 13, 10-11 PM (23)
Nov 13, 11-12 AM (19)
Nov 14, 12-1 AM (3)
Nov 14, 1-2 AM (3)
Nov 14, 2-3 AM (2)
Nov 14, 3-4 AM (3)
Nov 14, 4-5 AM (26)
Nov 14, 5-6 AM (2)
Nov 14, 6-7 AM (10)
Nov 14, 7-8 AM (11)
Nov 14, 8-9 AM (27)
Nov 14, 9-10 AM (28)
Nov 14, 10-11 AM (48)
Nov 14, 11-12 PM (39)
Nov 14, 12-1 PM (38)
Nov 14, 1-2 PM (26)
Nov 14, 2-3 PM (15)
3,575 commits this week
Nov 07, 2025
-
Nov 14, 2025
trace-forward: make the STM queue not a TVar
trace-forward: remove unused wasUsed flag
trace-forward: readFromSink optimizations and code cleaning
trace-forward: optimize writeToSink, remove grow / copying behaviour
Reverse order of application frames in CEK return rule of case
Add missing empty list in CEK compute rule of constr
Add the Consensus fortnightly update for 2025-11-14 (#686)
perf(bench): optimize worst-case Value benchmark generation
Optimize generateConstrainedValueWithMaxPolicy to minimize off-path map sizes while maintaining worst-case lookup guarantees: 1. Sort keys explicitly to establish predictable BST structure 2. Select maximum keys (last in sorted order) for worst-case depth 3. Populate only target policy with full token set (tokensPerPolicy) 4. Use minimal maps (1 token) for all other policies Impact: - 99.7% reduction in benchmark value size (524K → 1.5K entries) - ~340× faster map construction during benchmark generation - ~99.7% memory reduction (52 MB → 150 KB per value) - Zero change to cost measurements (worst-case preserved) Affects: LookupCoin, ValueContains benchmarks Formula: totalEntries = tokensPerPolicy + (numPolicies - 1) Example: 1024 policies × 512 tokens = 1,535 entries (was 524,288) Rationale: BST lookups only traverse one path from root to leaf. Off-path policies are never visited, so their inner map sizes don't affect measurement. Reducing off-path maps from tokensPerPolicy to 1 eliminates 99.7% of irrelevant data without changing worst-case cost. Technical details: - ByteString keys already use worst-case comparison (28-byte prefix) - Sorting + last selection guarantees maximum BST depth (rightmost leaf) - Target policy still has full token set for worst-case inner lookup - Validates correct behavior: build succeeds, benchmarks run normally
trace-forward: make the STM queue not a TVar
trace-forward: remove unused wasUsed flag
trace-forward: readFromSink optimizations and code cleaning
trace-froward: better handle the error cases
trace-forward: optimize writeToSink, remove grow / copying behaviour
WIP casing constants docs
Merge remote-tracking branch 'origin/develop' into feat/VT20-2279-Swiping-notifications
trace-dispatcher: rework formatting; add binlog/CBOR formatter