diff --git a/contrib/local-testnet.sh b/contrib/local-testnet.sh
index a321bfe7f1..8d12664a5d 100755
--- a/contrib/local-testnet.sh
+++ b/contrib/local-testnet.sh
@@ -69,7 +69,7 @@ do
sleep 1
- # Create account keypair
+ # Create account key pair
interchain-security-pd keys add $PROV_KEY --home ${PROV_NODE_DIR} --keyring-backend test --output json > ${PROV_NODE_DIR}/${PROV_KEY}.json 2>&1
sleep 1
@@ -394,7 +394,7 @@ do
sleep 1
- # Create account keypair
+ # Create account key pair
interchain-security-cd keys add $PROV_KEY --home ${CONS_NODE_DIR} --keyring-backend test --output json > ${CONS_NODE_DIR}/${PROV_KEY}.json 2>&1
sleep 1
diff --git a/docs/figures/hypha-consumer-start-process.excalidraw b/docs/figures/hypha-consumer-start-process.excalidraw
index 72a1b05445..387ad9b059 100644
--- a/docs/figures/hypha-consumer-start-process.excalidraw
+++ b/docs/figures/hypha-consumer-start-process.excalidraw
@@ -6117,11 +6117,11 @@
"locked": false,
"fontSize": 20,
"fontFamily": 1,
- "text": "Hz\nwe get the \nevidence and \nslash",
+ "text": "Hz\new get the \nevidence and \nslash",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "V2uHp_TDQ8ihrS_8j9zZZ",
- "originalText": "Hz\nwe get the evidence and slash",
+ "originalText": "Hz\new get the evidence and slash",
"autoResize": true,
"lineHeight": 1.25
},
@@ -7482,7 +7482,7 @@
"locked": false,
"fontSize": 16,
"fontFamily": 1,
- "text": "height at which \nwe receive\nthe evidence",
+ "text": "height at which \new receive\nthe evidence",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "s48-4wXmB4eSn25hza5zD",
@@ -17350,11 +17350,11 @@
"locked": false,
"fontSize": 16,
"fontFamily": 1,
- "text": "LC figures\nout that\nconsumer chain\nbecame\nunsecore on\ntimestamp T\n\nThen, LC would need to\n\"deactivate\"\nof all headers that\nhave timestamp >= T.\n\nWe can keep getting\nupdates but not use \ntheir Merkle root. ",
+ "text": "LC figures\nout that\nconsumer chain\nbecame\nunsecore on\ntimestamp T\n\nThen, LC would need to\n\"deactivate\"\nof all headers that\nhave timestamp >= T.\n\new can keep getting\nupdates but not use \ntheir Merkle root. ",
"textAlign": "left",
"verticalAlign": "top",
"containerId": null,
- "originalText": "LC figures\nout that\nconsumer chain\nbecame\nunsecore on\ntimestamp T\n\nThen, LC would need to\n\"deactivate\"\nof all headers that\nhave timestamp >= T.\n\nWe can keep getting\nupdates but not use \ntheir Merkle root. ",
+ "originalText": "LC figures\nout that\nconsumer chain\nbecame\nunsecore on\ntimestamp T\n\nThen, LC would need to\n\"deactivate\"\nof all headers that\nhave timestamp >= T.\n\new can keep getting\nupdates but not use \ntheir Merkle root. ",
"autoResize": true,
"lineHeight": 1.25
},
@@ -33824,11 +33824,11 @@
"locked": false,
"fontSize": 16,
"fontFamily": 1,
- "text": "bogus header\n4. Febuary 2023\nsigned by Vm",
+ "text": "bogus header\n4. February 2023\nsigned by Vm",
"textAlign": "center",
"verticalAlign": "middle",
"containerId": "dr-C5qJTTjNBk139hzYmq",
- "originalText": "bogus header\n4. Febuary 2023\nsigned by Vm",
+ "originalText": "bogus header\n4. February 2023\nsigned by Vm",
"autoResize": true,
"lineHeight": 1.25
},
@@ -39079,11 +39079,11 @@
"locked": false,
"fontSize": 36,
"fontFamily": 1,
- "text": "powers and consumer\npublic keys the validators\nhad when they actually\nopted in to a\nconsumer chain at the\nbeginning of an epoch\nCurrently used by consumer\nchain.\nWE STORE THOSE for\neach validator",
+ "text": "powers and consumer\npublic keys the validators\nhad when they actually\nopted in to a\nconsumer chain at the\nbeginning of an epoch\nCurrently used by consumer\nchain.\new STORE THOSE for\neach validator",
"textAlign": "center",
"verticalAlign": "top",
"containerId": null,
- "originalText": "powers and consumer\npublic keys the validators\nhad when they actually\nopted in to a\nconsumer chain at the\nbeginning of an epoch\nCurrently used by consumer\nchain.\nWE STORE THOSE for\neach validator",
+ "originalText": "powers and consumer\npublic keys the validators\nhad when they actually\nopted in to a\nconsumer chain at the\nbeginning of an epoch\nCurrently used by consumer\nchain.\new STORE THOSE for\neach validator",
"autoResize": true,
"lineHeight": 1.25
},
diff --git a/scripts/test_doc/test_documentation.md b/scripts/test_doc/test_documentation.md
index 016e9cefe6..a2327888a0 100644
--- a/scripts/test_doc/test_documentation.md
+++ b/scripts/test_doc/test_documentation.md
@@ -84,7 +84,7 @@
|----------|-------------------|
[TestRelayAndApplyDowntimePacket](../../tests/integration/slashing.go#L50) | TestRelayAndApplyDowntimePacket tests that downtime slash packets can be properly relayed from consumer to provider, handled by provider, with a VSC and jailing eventually effective on consumer and provider.Details
* Set up CCV channels and retrieve consumer validators.
* Select a validator and create its consensus address.
* Retrieve the provider consensus address that corresponds to the consumer consensus address of the validator.
* The validator's current state is also retrieved, including its token balance,
* Set validator's signing information is to ensure it will be jailed for downtime.
* Create the slashing packet and send it from the consumer chain to the provider chain with a specified timeout.
* Receive the packet and verify that the validator was removed from the provider validator set.
* Relay VSC packets from the provider chain to each consumer chain and verify that the consumer chains correctly process these packets.
* Check the validator's balance and status on the provider chain to ensure it was jailed correctly but not slashed,
and its unjailing time is updated.
* Reset the outstanding downtime flag on the consumer chain, and ensure that the consumer
chain acknowledges receipt of the packet from the provider chain.
Note: This method does not test the actual slash packet sending logic for downtime
and double-signing, see TestValidatorDowntime and TestValidatorDoubleSigning for
those types of tests. |
[TestSlashPacketAcknowledgement](../../tests/integration/slashing.go#L185) | TestSlashPacketAcknowledgement tests the handling of a slash packet acknowledgement.Details
* Set up a provider and consumer chain, with channel initialization between them performed.
* Send a slash packet with randomized fields from the consumer to the provider.
* The provider processes the packet |
- [TestHandleSlashPacketDowntime](../../tests/integration/slashing.go#L236) | TestHandleSlashPacketDowntime tests the handling of a downtime related slash packet, with integration tests.Details
* Retrieve a validator from provider chain's validators and checks if it's bonded.
* Set tThe signing information for the validator.
* The provider processes the downtime slashing packet from the consumer.
* Check that the validator has been jailed as a result of the downtime slashing packet being processed.
* Verify that the validator’s signing information is updated and that the jailing duration is set correctly.
Note that only downtime slash packets are processed by HandleSlashPacket. |
+ [TestHandleSlashPacketDowntime](../../tests/integration/slashing.go#L236) | TestHandleSlashPacketDowntime tests the handling of a downtime related slash packet, with integration tests.Details
* Retrieve a validator from provider chain's validators and checks if it's bonded.
* Set the signing information for the validator.
* The provider processes the downtime slashing packet from the consumer.
* Check that the validator has been jailed as a result of the downtime slashing packet being processed.
* Verify that the validator’s signing information is updated and that the jailing duration is set correctly.
Note that only downtime slash packets are processed by HandleSlashPacket. |
[TestOnRecvSlashPacketErrors](../../tests/integration/slashing.go#L283) | TestOnRecvSlashPacketErrors tests errors for the OnRecvSlashPacket method in an integration testing setting.Details
* Set up all CCV channels and expect panic if the channel is not established via dest channel of packet.
* After the correct channelID is added to the packet, a panic shouldn't occur anymore.
* Create an instance of SlashPacketData and then verify correct processing and error handling
for slashing packets received by the provider chain.
TODO: Move to unit tests. |
[TestValidatorDowntime](../../tests/integration/slashing.go#L412) | TestValidatorDowntime tests if a slash packet is sent and if the outstanding slashing flag is switched when a validator has downtime on the slashing module.Details
* Set up all CCV channel and send an empty VSC packet, then retrieve the address of a validator.
* Validator signs blocks for the duration of the signedBlocksWindow and a slash packet is constructed to be sent and committed.
* Simulate the validator missing blocks and then verify that the validator is jailed and the jailed time is correctly updated.
* Ensure that the missed block counters are reset.
* Check that there is a pending slash packet in the queue, and then send the pending packets.
* Check if slash record is created and verify that the consumer queue still contains the packet since no
acknowledgment has been received from the provider.
* Verify that the slash packet was sent and check that the outstanding slashing flag prevents the jailed validator to keep missing block. |
[TestQueueAndSendSlashPacket](../../tests/integration/slashing.go#L533) | TestQueueAndSendSlashPacket tests the integration of QueueSlashPacket with SendPackets. In normal operation slash packets are queued in BeginBlock and sent in EndBlock.Details
* Set up all CCV channels and then queue slash packets for both downtime and double-signing infractions.
* Check that the correct number of slash requests are stored in the queue, including duplicates for downtime infractions.
* Prepare the CCV channel for sending actual slash packets.
* Send the slash packets and check that the outstanding downtime flags are correctly set for validators that were slashed
for downtime infractions.
* Ensure that the pending data packets queue is empty.
TODO: Move to unit tests. |
diff --git a/tests/integration/slashing.go b/tests/integration/slashing.go
index 840821b12c..7c51ad9e96 100644
--- a/tests/integration/slashing.go
+++ b/tests/integration/slashing.go
@@ -227,7 +227,7 @@ func (s *CCVTestSuite) TestSlashPacketAcknowledgement() {
// TestHandleSlashPacketDowntime tests the handling of a downtime related slash packet, with integration tests.
// @Long Description@
// * Retrieve a validator from provider chain's validators and checks if it's bonded.
-// * Set tThe signing information for the validator.
+// * Set the signing information for the validator.
// * The provider processes the downtime slashing packet from the consumer.
// * Check that the validator has been jailed as a result of the downtime slashing packet being processed.
// * Verify that the validator’s signing information is updated and that the jailing duration is set correctly.