Skip to content

Conversation

@cboh4
Copy link
Contributor

@cboh4 cboh4 commented Nov 17, 2025

No description provided.

@cboh4 cboh4 force-pushed the enable-cron-module branch from f010f62 to e8863ae Compare November 25, 2025 11:52
Major refactoring of the cron module to remove ExecutionStage distinction
and consolidate all scheduled transactions through a single execution path.

BREAKING CHANGES:
- Removed ExecutionStage enum (BEGIN_BLOCKER/END_BLOCKER)
- All scheduled messages now execute via EndBlock → Tendermint
- Changed cron module authority from cron module address to gov module address

Refactoring:
- Moved encryption logic to separate encryption.go file
- Changed from deterministic to fixed Curve25519 keypair encryption
- Updated module private key to new hardcoded value
- Simplified GetScheduledMsgs signature (removed execution_stage parameter)
- Removed BeginBlock execution code from compute module

Fixes:
- Fix LastExecuteHeight to record execution block (N+1) instead of prep block (N)
- Auto-create cron module account if missing (prevents consensus failures)
- Fix sequence number handling for multiple transactions per block
- Improve error handling in EndBlock (log errors instead of failing consensus)

Improvements:
- Set hardcoded gas limit (5M) and zero fees for scheduled transactions
- Change several logs to debug level for cleaner output
- Re-enable authority validation in message handlers

Scheduled transactions can now be decrypted using standard secretcli commands thanks to the fixed keypair approach.
@cboh4 cboh4 force-pushed the enable-cron-module branch from 1b21f27 to b8c6b29 Compare December 29, 2025 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants