Skip to content

fix: optional timestamp genesis#327

Closed
joe-p wants to merge 59 commits intoalgorandecosystem:mainfrom
joe-p:fix/optional_genesis_timestamp
Closed

fix: optional timestamp genesis#327
joe-p wants to merge 59 commits intoalgorandecosystem:mainfrom
joe-p:fix/optional_genesis_timestamp

Conversation

@joe-p
Copy link
Collaborator

@joe-p joe-p commented Jan 16, 2026

Fixes the timestamp in the genesis response not being optional

Needs #323 to merge first

Copilot AI review requested due to automatic review settings January 16, 2026 20:01
@joe-p joe-p requested a review from lempira as a code owner January 16, 2026 20:01
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR makes the timestamp field optional in the genesis response model and adds comprehensive Android support to the repository, including build infrastructure, testing, and CI integration.

Changes:

  • Made the timestamp field optional in the Genesis model to match actual API behavior
  • Added Android/Kotlin package support with build scripts, tests, and CI workflow
  • Improved error handling across all API clients by integrating serde_path_to_error for better deserialization error messages
  • Fixed handling of msgpack string/binary data that may contain non-UTF-8 bytes

Reviewed changes

Copilot reviewed 158 out of 167 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
crates/algod_client/src/models/genesis.rs Made timestamp field optional in Genesis model
api/specs/algod.oas3.json Removed timestamp from required fields in Genesis schema
tools/build_pkgs/src/android.rs Added Android build script for generating AAR packages
.github/workflows/android_ci.yml Added CI workflow for Android builds and tests
crates//src/apis/.rs Updated all API clients to use serde_path_to_error for better error messages
crates/algokit_transact/src/error.rs Updated error types to include deserialization path information
packages/android/algokit_transact/* Added complete Android package with tests and configuration

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

assert!(
msg == "Transaction fee 2470 µALGO is greater than max fee 1000 µALGO",
"Unexpected error message: {}",
"Unexpected error err_msg:{}",
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected 'err_msg:' to 'message:' to maintain consistency with the original error message format.

Suggested change
"Unexpected error err_msg:{}",
"Unexpected error message:{}",

Copilot uses AI. Check for mistakes.
}
if threshold == 0 || threshold as usize > subsignatures.len() {
return Err(AlgoKitTransactError::InvalidMultisigSignature { message: "Threshold must be greater than zero and less than or equal to the number of sub-signers".to_string() });
return Err(AlgoKitTransactError::InvalidMultisigSignature { err_msg:"Threshold must be greater than zero and less than or equal to the number of sub-signers".to_string() });
Copy link

Copilot AI Jan 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Missing space after colon in field initialization. Should be err_msg: instead of err_msg:.

Suggested change
return Err(AlgoKitTransactError::InvalidMultisigSignature { err_msg:"Threshold must be greater than zero and less than or equal to the number of sub-signers".to_string() });
return Err(AlgoKitTransactError::InvalidMultisigSignature { err_msg: "Threshold must be greater than zero and less than or equal to the number of sub-signers".to_string() });

Copilot uses AI. Check for mistakes.
@joe-p
Copy link
Collaborator Author

joe-p commented Jan 31, 2026

Closing in favor of #332

@joe-p joe-p closed this Jan 31, 2026
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.

3 participants