Implement RECEIPT_CLAIM transaction type
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Successful in 4s
Documentation Validation / validate-docs (push) Successful in 12s
Documentation Validation / validate-policies-strict (push) Successful in 3s
Integration Tests / test-service-integration (push) Failing after 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 10s
Security Scanning / security-scan (push) Successful in 31s
Some checks failed
Blockchain Synchronization Verification / sync-verification (push) Successful in 4s
Documentation Validation / validate-docs (push) Successful in 12s
Documentation Validation / validate-policies-strict (push) Successful in 3s
Integration Tests / test-service-integration (push) Failing after 12s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 3s
P2P Network Verification / p2p-verification (push) Successful in 2s
Python Tests / test-python (push) Successful in 10s
Security Scanning / security-scan (push) Successful in 31s
- Add status fields to Receipt model (status, claimed_at, claimed_by) - Add RECEIPT_CLAIM handling to state_transition.py with validation and reward minting - Add type field to Transaction model for reliable transaction type storage - Update router to use TransactionRequest model to preserve type field - Update poa.py to extract type from mempool transaction content and store only original payload - Add RECEIPT_CLAIM to GasType enum with gas schedule
This commit is contained in:
@@ -42,16 +42,19 @@ openclaw execute --agent GenesisAgent --task update_genesis_config || {
|
||||
cp /etc/aitbc/blockchain.env /etc/aitbc/blockchain.env.aitbc.backup 2>/dev/null || true
|
||||
|
||||
# Update .env for aitbc genesis authority configuration
|
||||
sed -i 's|proposer_id=.*|proposer_id=aitbcgenesis|g' /etc/aitbc/.env
|
||||
# Note: Don't overwrite auto-generated proposer_id - it will be updated with actual genesis address after wallet generation
|
||||
# Note: Don't overwrite auto-generated p2p_node_id - it must remain unique for P2P networking
|
||||
sed -i 's|keystore_path=/opt/aitbc/apps/blockchain-node/keystore|keystore_path=/var/lib/aitbc/keystore|g' /etc/aitbc/.env
|
||||
sed -i 's|keystore_password_file=/opt/aitbc/apps/blockchain-node/keystore/.password|keystore_password_file=/var/lib/aitbc/keystore/.password|g' /etc/aitbc/.env
|
||||
sed -i 's|db_path=./data/ait-mainnet/chain.db|db_path=/var/lib/aitbc/data/ait-mainnet/chain.db|g' /etc/aitbc/.env
|
||||
sed -i 's|enable_block_production=true|enable_block_production=true|g' /etc/aitbc/.env
|
||||
sed -i 's|gossip_broadcast_url=redis://127.0.0.1:6379|gossip_broadcast_url=redis://localhost:6379|g' /etc/aitbc/.env
|
||||
sed -i 's|p2p_bind_port=8005|p2p_bind_port=7070|g' /etc/aitbc/.env
|
||||
|
||||
# Add trusted proposers for follower nodes
|
||||
echo "trusted_proposers=aitbcgenesis" >> /etc/aitbc/.env
|
||||
|
||||
# Ensure p2p_node_id exists in node.env (preserve if already set)
|
||||
if ! grep -q "^p2p_node_id=" /etc/aitbc/node.env; then
|
||||
echo "p2p_node_id=node-$(cat /proc/sys/kernel/random/uuid | tr -d '-')" >> /etc/aitbc/node.env
|
||||
fi
|
||||
}
|
||||
|
||||
# 6. Create genesis block with wallets (via OpenClaw)
|
||||
|
||||
@@ -52,14 +52,17 @@ openclaw execute --agent FollowerAgent --task update_follower_config --node aitb
|
||||
ssh aitbc1 'cp /etc/aitbc/blockchain.env /etc/aitbc/blockchain.env.aitbc1.backup 2>/dev/null || true'
|
||||
|
||||
# Update .env for aitbc1 follower configuration
|
||||
ssh aitbc1 'sed -i "s|proposer_id=.*|proposer_id=aitbc1follower|g" /etc/aitbc/.env'
|
||||
# Note: Don't overwrite auto-generated proposer_id or p2p_node_id - they must remain unique for P2P networking
|
||||
ssh aitbc1 'sed -i "s|keystore_path=/opt/aitbc/apps/blockchain-node/keystore|keystore_path=/var/lib/aitbc/keystore|g" /etc/aitbc/.env'
|
||||
ssh aitbc1 'sed -i "s|keystore_password_file=/opt/aitbc/apps/blockchain-node/keystore/.password|keystore_password_file=/var/lib/aitbc/keystore/.password|g" /etc/aitbc/.env'
|
||||
ssh aitbc1 'sed -i "s|db_path=./data/ait-mainnet/chain.db|db_path=/var/lib/aitbc/data/ait-mainnet/chain.db|g" /etc/aitbc/.env'
|
||||
ssh aitbc1 'sed -i "s|enable_block_production=true|enable_block_production=false|g" /etc/aitbc/.env'
|
||||
ssh aitbc1 'sed -i "s|gossip_broadcast_url=redis://127.0.0.1:6379|gossip_broadcast_url=redis://localhost:6379|g" /etc/aitbc/.env'
|
||||
ssh aitbc1 'sed -i "s|p2p_bind_port=8005|p2p_bind_port=7071|g" /etc/aitbc/.env'
|
||||
|
||||
|
||||
# Ensure p2p_node_id exists in node.env (preserve if already set)
|
||||
ssh aitbc1 'if ! grep -q "^p2p_node_id=" /etc/aitbc/node.env; then echo "p2p_node_id=node-$(cat /proc/sys/kernel/random/uuid | tr -d '-')" >> /etc/aitbc/node.env; fi'
|
||||
|
||||
# Add genesis node connection
|
||||
ssh aitbc1 'echo "genesis_node=aitbc:8006" >> /etc/aitbc/.env'
|
||||
ssh aitbc1 'echo "trusted_proposers=aitbcgenesis" >> /etc/aitbc/.env'
|
||||
|
||||
Reference in New Issue
Block a user