Skip to content

Commit

Permalink
explore removing aggregation from endBlock
Browse files Browse the repository at this point in the history
  • Loading branch information
akremstudy committed Nov 25, 2024
1 parent 16bbdce commit 651af1f
Show file tree
Hide file tree
Showing 17 changed files with 5,166 additions and 3,339 deletions.
634 changes: 618 additions & 16 deletions api/layer/oracle/aggregate_reporter.pulsar.go

Large diffs are not rendered by default.

589 changes: 568 additions & 21 deletions api/layer/oracle/micro_report.pulsar.go

Large diffs are not rendered by default.

6 changes: 6 additions & 0 deletions proto/layer/oracle/aggregate_reporter.proto
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,10 @@ message AggregateReporter {
string reporter = 1;
uint64 power = 2;
uint64 block_number = 3;
string value = 4;
}

message Median {
string value = 1;
uint64 crossover_weight = 2;
}
4 changes: 4 additions & 0 deletions proto/layer/oracle/micro_report.proto
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,7 @@ message MicroReport {
// block number of when the report was created
uint64 block_number = 9;
}
message ValueStored {
uint64 cumulative_power = 1;
MicroReport report = 2;
}
3,300 changes: 1,650 additions & 1,650 deletions tests/e2e/dispute_test.go

Large diffs are not rendered by default.

33 changes: 15 additions & 18 deletions tests/e2e/reporting_test.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package e2e_test

import (
"encoding/hex"
"time"

"github.com/tellor-io/layer/testutil"
Expand All @@ -12,13 +11,11 @@ import (
reporterkeeper "github.com/tellor-io/layer/x/reporter/keeper"
reportertypes "github.com/tellor-io/layer/x/reporter/types"

collections "cosmossdk.io/collections"
"cosmossdk.io/math"

secp256k1 "github.com/cosmos/cosmos-sdk/crypto/keys/secp256k1"
simtestutil "github.com/cosmos/cosmos-sdk/testutil/sims"
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/cosmos/cosmos-sdk/types/query"
authtypes "github.com/cosmos/cosmos-sdk/x/auth/types"
stakingkeeper "github.com/cosmos/cosmos-sdk/x/staking/keeper"
stakingtypes "github.com/cosmos/cosmos-sdk/x/staking/types"
Expand Down Expand Up @@ -767,27 +764,27 @@ func (s *E2ETestSuite) TestAggregateOverMultipleBlocks() {
_, err = s.Setup.App.EndBlocker(s.Setup.Ctx)
require.NoError(err)

aggregate, time, err := s.Setup.Oraclekeeper.GetCurrentAggregateReport(s.Setup.Ctx, queryId)
aggregate, _, err := s.Setup.Oraclekeeper.GetCurrentAggregateReport(s.Setup.Ctx, queryId)
require.NoError(err)
require.Equal(3, len(aggregate.Reporters))
require.Equal(aggregate.AggregateReportIndex, uint64(1))
// require.Equal(3, len(aggregate.Reporters))
// require.Equal(aggregate.AggregateReportIndex, uint64(1))
require.Equal(aggregate.AggregateValue, testutil.EncodeValue(100_000))
require.Equal(aggregate.AggregateReporter, romanAccAddr.String())
require.Equal(aggregate.Height, uint64(7))
require.Equal(aggregate.ReporterPower, uint64(850))
require.Equal(aggregate.QueryId, queryId)
require.Equal(aggregate.MetaId, uint64(2))

agg, err := s.Setup.Oraclekeeper.Aggregates.Get(s.Setup.Ctx, collections.Join(queryId, uint64(time.UnixMilli())))
require.NoError(err)
require.Equal(3, len(agg.Reporters))

oracleQuerier := oraclekeeper.NewQuerier(s.Setup.Oraclekeeper)
microreports, err := oracleQuerier.GetReportsByAggregate(s.Setup.Ctx, &oracletypes.QueryGetReportsByAggregateRequest{
QueryId: hex.EncodeToString(queryId),
Timestamp: uint64(time.UnixMilli()),
Pagination: &query.PageRequest{Limit: 100, CountTotal: true},
})
require.NoError(err)
require.Equal(3, len(microreports.MicroReports))
// agg, err := s.Setup.Oraclekeeper.Aggregates.Get(s.Setup.Ctx, collections.Join(queryId, uint64(time.UnixMilli())))
// require.NoError(err)
// require.Equal(3, len(agg.Reporters))

// oracleQuerier := oraclekeeper.NewQuerier(s.Setup.Oraclekeeper)
// microreports, err := oracleQuerier.GetReportsByAggregate(s.Setup.Ctx, &oracletypes.QueryGetReportsByAggregateRequest{
// QueryId: hex.EncodeToString(queryId),
// Timestamp: uint64(time.UnixMilli()),
// Pagination: &query.PageRequest{Limit: 100, CountTotal: true},
// })
// require.NoError(err)
// require.Equal(3, len(microreports.MicroReports))
}
Loading

0 comments on commit 651af1f

Please sign in to comment.