You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/Protocol/Protocol_v2/overview.md
+5-1Lines changed: 5 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,10 @@ sidebar_position: 0
4
4
5
5
# Overview
6
6
7
+
:::info
8
+
This page documents the Protocol v2 upgrade path and its historical architecture framing. For the live decentralized sequencer-validator network, see [`DSV Mainnet`](/category/dsv-mainnet), especially [`Why DSV Exists`](/dsv-mainnet/why-dsv-exists) and [`Protocol Workflow`](/dsv-mainnet/protocol-workflow).
9
+
:::
10
+
7
11
8
12
## Necessity of an upgrade
9
13
@@ -30,7 +34,7 @@ The above approach required the snapshotter peers to send out their submissions
30
34
31
35
### Composed snapshots finality
32
36
33
-
A combination of the above couple of issues also affects the [composability principle](/Protocol/data-composition.md) of building higher order snapshots. Dropped transactions and increased delays in confirmation times of snapshot submissions ultimately affect the aggregate data points that power complex use cases like the [Uniswap V2 dashboard](/build-with-powerloom/use-cases/existing-implementations/uniswap-dashboard/)and [Aave V3 dashboard](/build-with-powerloom/use-cases/existing-implementations/aavev3-dashboard/).
37
+
A combination of the above issues also affects the [composability principle](/Protocol/data-composition.md) of building higher order snapshots. Dropped transactions and increased delays in confirmation times of snapshot submissions ultimately affect aggregate data products and downstream consumers.
Copy file name to clipboardExpand all lines: docs/Protocol/Protocol_v2/sequencer.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,10 @@ sidebar_position: 1
5
5
6
6
# Sequencer
7
7
8
+
:::info
9
+
This page describes the Protocol v2 sequencer model. For the live DSV mainnet flow, including two-level validator aggregation and VPA-based submission, see [`Protocol Workflow`](/dsv-mainnet/protocol-workflow) and [`Roles and Topology`](/dsv-mainnet/roles-and-topology).
10
+
:::
11
+
8
12
:::warning
9
13
The sequencer listening interfaces for specific data markets are listed in the following trusted sequencer JSON file hosted on the Powerloom Github repository:
Copy file name to clipboardExpand all lines: docs/Protocol/Protocol_v2/validator.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,10 @@ sidebar_position: 3
4
4
5
5
# Validator
6
6
7
+
:::info
8
+
This page describes the Protocol v2 validator flow. For the live DSV mainnet consensus path, see [`Protocol Workflow`](/dsv-mainnet/protocol-workflow), [`On-Chain Submission and Verification`](/dsv-mainnet/onchain-submission-and-verification), and [`Stability and Scale`](/dsv-mainnet/stability-and-scale).
Copy file name to clipboardExpand all lines: docs/Protocol/Specifications/Snapshotter/components.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -113,4 +113,4 @@ In the end,
113
113
114
114
Its API endpoints are used by a decoupled frontend adapter logic that ultimately support building of rich data products for smart contracts and other web3 based applications.
115
115
116
-
In our[`All about Data` section of docs](/build-with-powerloom/snapshotter-node/data), find out more about the way this API is used by a frontend adapter to serve the Uniswap V2, Uniswap V3, and Aave V3 dashboards.
116
+
In the[`All about Data` section](/build-with-powerloom/snapshotter-node/data), learn how resolver APIs serve finalized data while preserving verification metadata for applications and agents.
Copy file name to clipboardExpand all lines: docs/Protocol/Specifications/Snapshotter/snapshot-build.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@ sidebar_position: 2
7
7
## Snapshot Computation Modules
8
8
---
9
9
10
-
As briefly introduced in the section on Snapshotter implementations that [leverage Git Submodules for specific computation logic](/build-with-powerloom/snapshotter-node/architecture), the modules are specified in the configuration for project types under the key `processor`.
10
+
As briefly introduced in the section on [Snapshotter architecture](/build-with-powerloom/snapshotter-node/architecture), compute modules are pulled into the node runtime by setup scripts and are specified in the configuration for project types under the key `processor`.
Aggregate and higher-order snapshots that build on base snapshots are configured in their specific repositories, such as the following in our [Uniswap Dashboard use case](/category/uniswap-dashboard). This is where you can observe the [dependency graph of snapshot composition](/Protocol/data-composition#dependency-graph) in action.
114
+
Aggregate and higher-order snapshots that build on base snapshots are configured in market-specific repositories. This is where you can observe the [dependency graph of snapshot composition](/Protocol/data-composition#dependency-graph) in action.
-[Walkthrough of the Snapshotter Implementation for the Uniswap V2 and V3 Dashboards](/build-with-powerloom/use-cases/existing-implementations/uniswap-dashboard/)
120
+
-[BDS Data Market](/category/bds-data-market)
121
121
:::
122
122
123
123
The order and dependencies of these compositions are specified according to the `aggregate_on` key.
* For example, a base snapshot built on a project ID like `pairContract_trade_volume:0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc:UNISWAPV2` triggers the worker `AggregateTradeVolumeProcessor` as defined in the `processor` config, against the pair contract `0xb4e16d0168e52d35cacd2c6185b44281ec28c9dc`.
134
134
* The span of epochs on which corresponding base snapshots will be aggregated is determined by the logic contained in the module specified in the `processor` key.
135
135
136
-
The following implementation aggregates [trade volume snapshots](/build-with-powerloom/use-cases/existing-implementations/uniswap-dashboard/closer-look-at-snapshots.md) across a span of 24 hours worth of epochs, if available. Otherwise, it aggregates the entire span of epochs available on the protocol against the data market and reports it back.
136
+
The following implementation aggregates trade volume snapshots across a span of 24 hours worth of epochs, if available. Otherwise, it aggregates the entire span of epochs available on the protocol against the data market and reports it back.
Copy file name to clipboardExpand all lines: docs/Protocol/Specifications/state-v2.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,10 @@ sidebar_position: 1
4
4
5
5
# Protocol State: V2
6
6
7
+
:::info
8
+
This page documents the Protocol v2 state model. For the live DSV mainnet submission and verification path, see [`On-Chain Submission and Verification`](/dsv-mainnet/onchain-submission-and-verification) and [`Why DSV Exists`](/dsv-mainnet/why-dsv-exists).
9
+
:::
10
+
7
11
## Overview: Smart Contract Architecture
8
12
9
13
The smart contracts that maintain the state of the protocol V2 interact are arranged as depicted in the diagram that follows.
Copy file name to clipboardExpand all lines: docs/Protocol/data-composition.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -24,7 +24,7 @@ As defined by the data sources configuration, the protocol state collects snapsh
24
24
25
25
## Higher-Order Aggregations
26
26
27
-
An example of this can be found in the [Uniswap V2 and V3 dashboard implementation](/build-with-powerloom/use-cases/existing-implementations/uniswap-dashboard/), where a trade activity aggregation dataset is generated by:
27
+
A market can generate higher-order aggregation datasets by:
28
28
29
29
- Combining individual snapshots of trade volume and fees across multiple pair contracts.
30
30
- Spanning a specific set of epochs that satisfy a time duration (e.g., 24 hours).
Copy file name to clipboardExpand all lines: docs/Protocol/data-sources.md
+3-6Lines changed: 3 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,18 +11,15 @@ The data sources defined by a market can be static or dynamic, depending on the
11
11
12
12
## Static Data Sources
13
13
14
-
Our implementation of a data market serves datasets to render live Uniswap V2, Uniswap V3, and Aave V3 dashboards. Further details about the data source configurations and snapshot schemas can be found in the following sections of our documentation:
14
+
Static data sources are useful when a market tracks a known set of contracts. In the current BDS market, snapshotter nodes track active Uniswap V3 pools on Ethereum mainnet and submit market-specific snapshots for DSV finalization.
15
15
16
-
*[Building with Powerloom -- Uniswap V2 and V3 Dashboards](/build-with-powerloom/use-cases/existing-implementations/uniswap-dashboard/)
17
-
*[Building with Powerloom -- Aave V3 Dashboard](/build-with-powerloom/use-cases/existing-implementations/aavev3-dashboard/)
18
-
19
-
Continuing with the Uniswap V2 example, you can explore the data sources list defined as part of the Uniswap v2 specific configuration in the [`snapshotter-configs`](https://github.com/powerloom/snapshotter-configs/blob/fcf9b852bac9694258d7afcd8beeaa4cf961c65f/projects.example.json#L1-L11) repository.
16
+
You can explore an older static configuration example in the [`snapshotter-configs`](https://github.com/powerloom/snapshotter-configs/blob/fcf9b852bac9694258d7afcd8beeaa4cf961c65f/projects.example.json#L1-L11) repository.
The `projects` field in the above configuration snippet represents the Uniswap v2 pair contract addresses that are tracked, and snapshots are generated for these contracts. To further understand how snapshots on these contracts are tracked, refer to the section on [Project Types and IDs](#project-types-and-ids).
22
+
The `projects` field in the above configuration snippet represents contract addresses that are tracked, and snapshots are generated for those contracts. To further understand how snapshots on these contracts are tracked, refer to the section on [Project Types and IDs](#project-types-and-ids).
0 commit comments