From 9b292f997b96661b7dce0d196aff8366790007e6 Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Sun, 1 Oct 2023 23:42:24 -0400 Subject: [PATCH 1/6] staking_module differences --- specs/src/specs/staking_module.md | 1 + specs/template.md | 34 ++++--------------------------- 2 files changed, 5 insertions(+), 30 deletions(-) create mode 120000 specs/src/specs/staking_module.md diff --git a/specs/src/specs/staking_module.md b/specs/src/specs/staking_module.md new file mode 120000 index 0000000000..35b615ac77 --- /dev/null +++ b/specs/src/specs/staking_module.md @@ -0,0 +1 @@ +../../template.md \ No newline at end of file diff --git a/specs/template.md b/specs/template.md index d698e5f5a2..325b6179f5 100644 --- a/specs/template.md +++ b/specs/template.md @@ -1,37 +1,11 @@ -# Protocol/Component Name +# Staking (Differences from Tendermint) ## Abstract - -Provide a concise description of the purpose of the component for which the -specification is written, along with its contribution to the rollkit or -other relevant parts of the system. Make sure to include proper references to -the relevant sections. - -## Protocol/Component Description - -Offer a comprehensive explanation of the protocol, covering aspects such as data -flow, communication mechanisms, and any other details necessary for -understanding the inner workings of this component. - -## Message Structure/Communication Format - -If this particular component is expected to communicate over the network, -outline the structure of the message protocol, including details such as field -interpretation, message format, and any other relevant information. +Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. ## Assumptions and Considerations - -If there are any assumptions required for the component's correct operation, -performance, security, or other expected features, outline them here. -Additionally, provide any relevant considerations related to security or other -concerns. +Assumes that the ABCI Application (for example, apps built with Cosmos-SDK), has correct code for the rollup's desired sequencer scheme. ## Implementation -Include a link to the location where the implementation of this protocol can be -found. Note that specific implementation details should be documented in the -rollkit repository rather than in the specification document. - -## References - -List any references used or cited in the document. +[types/header.go](https://github.com/rollkit/rollkit/blob/main/types/header.go#L86) \ No newline at end of file From 06ea4cca9d64f9f67021d60c9406f5ab11239b15 Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Mon, 2 Oct 2023 17:15:51 -0400 Subject: [PATCH 2/6] adjust assumptions section --- specs/template.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specs/template.md b/specs/template.md index 325b6179f5..eef2852c92 100644 --- a/specs/template.md +++ b/specs/template.md @@ -4,7 +4,7 @@ Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. ## Assumptions and Considerations -Assumes that the ABCI Application (for example, apps built with Cosmos-SDK), has correct code for the rollup's desired sequencer scheme. +Assumes that the ABCI Application (such as apps built with Cosmos-SDK), has correct code for setting the `Validators` field in `SignedHeader`, and `NextAggregatorsHash` `AggregatorsHash` fields in `Header`, according to the rollup's desired sequencer scheme. ## Implementation From 8713af9bcbcc26359bc38411f5452d4f3fe00eec Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Mon, 2 Oct 2023 17:17:42 -0400 Subject: [PATCH 3/6] remove accidental file --- specs/src/specs/template.md | 1 - 1 file changed, 1 deletion(-) delete mode 120000 specs/src/specs/template.md diff --git a/specs/src/specs/template.md b/specs/src/specs/template.md deleted file mode 120000 index 35b615ac77..0000000000 --- a/specs/src/specs/template.md +++ /dev/null @@ -1 +0,0 @@ -../../template.md \ No newline at end of file From 9eb63d2213ac8d092a66ae933fe619572c747143 Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Mon, 2 Oct 2023 17:27:13 -0400 Subject: [PATCH 4/6] markdown lint --- specs/template.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/specs/template.md b/specs/template.md index eef2852c92..9a8b946ea9 100644 --- a/specs/template.md +++ b/specs/template.md @@ -1,11 +1,13 @@ # Staking (Differences from Tendermint) ## Abstract + Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. ## Assumptions and Considerations + Assumes that the ABCI Application (such as apps built with Cosmos-SDK), has correct code for setting the `Validators` field in `SignedHeader`, and `NextAggregatorsHash` `AggregatorsHash` fields in `Header`, according to the rollup's desired sequencer scheme. ## Implementation -[types/header.go](https://github.com/rollkit/rollkit/blob/main/types/header.go#L86) \ No newline at end of file +[types/header.go](https://github.com/rollkit/rollkit/blob/main/types/header.go#L86) From f9b03cff7ea3cc80ab93db888aec73faf36f9ddb Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Mon, 2 Oct 2023 17:37:21 -0400 Subject: [PATCH 5/6] fix template --- specs/template.md | 32 ++++++++++++++++++++++++++++---- 1 file changed, 28 insertions(+), 4 deletions(-) diff --git a/specs/template.md b/specs/template.md index 9a8b946ea9..d698e5f5a2 100644 --- a/specs/template.md +++ b/specs/template.md @@ -1,13 +1,37 @@ -# Staking (Differences from Tendermint) +# Protocol/Component Name ## Abstract -Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. +Provide a concise description of the purpose of the component for which the +specification is written, along with its contribution to the rollkit or +other relevant parts of the system. Make sure to include proper references to +the relevant sections. + +## Protocol/Component Description + +Offer a comprehensive explanation of the protocol, covering aspects such as data +flow, communication mechanisms, and any other details necessary for +understanding the inner workings of this component. + +## Message Structure/Communication Format + +If this particular component is expected to communicate over the network, +outline the structure of the message protocol, including details such as field +interpretation, message format, and any other relevant information. ## Assumptions and Considerations -Assumes that the ABCI Application (such as apps built with Cosmos-SDK), has correct code for setting the `Validators` field in `SignedHeader`, and `NextAggregatorsHash` `AggregatorsHash` fields in `Header`, according to the rollup's desired sequencer scheme. +If there are any assumptions required for the component's correct operation, +performance, security, or other expected features, outline them here. +Additionally, provide any relevant considerations related to security or other +concerns. ## Implementation -[types/header.go](https://github.com/rollkit/rollkit/blob/main/types/header.go#L86) +Include a link to the location where the implementation of this protocol can be +found. Note that specific implementation details should be documented in the +rollkit repository rather than in the specification document. + +## References + +List any references used or cited in the document. From 513f44d7101ca3730616924b0c286cf0977fad20 Mon Sep 17 00:00:00 2001 From: Connor O'Hara Date: Mon, 2 Oct 2023 17:50:38 -0400 Subject: [PATCH 6/6] fix symlinks --- specs/src/specs/staking_module.md | 14 +++++++++++++- specs/src/specs/template.md | 1 + 2 files changed, 14 insertions(+), 1 deletion(-) mode change 120000 => 100644 specs/src/specs/staking_module.md create mode 120000 specs/src/specs/template.md diff --git a/specs/src/specs/staking_module.md b/specs/src/specs/staking_module.md deleted file mode 120000 index 35b615ac77..0000000000 --- a/specs/src/specs/staking_module.md +++ /dev/null @@ -1 +0,0 @@ -../../template.md \ No newline at end of file diff --git a/specs/src/specs/staking_module.md b/specs/src/specs/staking_module.md new file mode 100644 index 0000000000..9a8b946ea9 --- /dev/null +++ b/specs/src/specs/staking_module.md @@ -0,0 +1,13 @@ +# Staking (Differences from Tendermint) + +## Abstract + +Rollkit will support customizable functionality for verifying the correctness of a block proposer. However, it currently works by delegating this functionality to the Application, by checking that the `AggregatorsHash` of a header corresponds to the `NextAggregatorsHash` of the previous, where setting the `NextAggregtorsHash` is the responsibility of the ABCI Application. + +## Assumptions and Considerations + +Assumes that the ABCI Application (such as apps built with Cosmos-SDK), has correct code for setting the `Validators` field in `SignedHeader`, and `NextAggregatorsHash` `AggregatorsHash` fields in `Header`, according to the rollup's desired sequencer scheme. + +## Implementation + +[types/header.go](https://github.com/rollkit/rollkit/blob/main/types/header.go#L86) diff --git a/specs/src/specs/template.md b/specs/src/specs/template.md new file mode 120000 index 0000000000..35b615ac77 --- /dev/null +++ b/specs/src/specs/template.md @@ -0,0 +1 @@ +../../template.md \ No newline at end of file