Skip to content

Commit 77c9e56

Browse files
authored
Respect tombstone messages (#81)
* VOids * Generate * Use a real cloudevent commit * Use a proper cloudevent tag
1 parent 22c9ed0 commit 77c9e56

11 files changed

Lines changed: 336 additions & 77 deletions

File tree

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ require (
66
github.com/99designs/gqlgen v0.17.89
77
github.com/ClickHouse/clickhouse-go/v2 v2.43.0
88
github.com/DIMO-Network/clickhouse-infra v0.0.7
9-
github.com/DIMO-Network/cloudevent v0.2.8
9+
github.com/DIMO-Network/cloudevent v0.2.9
1010
github.com/DIMO-Network/server-garage v0.1.1
1111
github.com/DIMO-Network/shared v1.1.7
1212
github.com/DIMO-Network/token-exchange-api v0.4.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7Oputl
1616
github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU=
1717
github.com/DIMO-Network/clickhouse-infra v0.0.7 h1:TAsjkFFKu3D5Xg6dwBcRBryjCVSlXsNjVbTwJ4UDlTg=
1818
github.com/DIMO-Network/clickhouse-infra v0.0.7/go.mod h1:XS80lhSJNWBWGgZ+m4j7++zFj1wAXfmtV2gJfhGlabQ=
19-
github.com/DIMO-Network/cloudevent v0.2.8 h1:Q0xGQVPlOshF2LSX/m15Qzi2n4BI0EQDgOM71gEbNsY=
20-
github.com/DIMO-Network/cloudevent v0.2.8/go.mod h1:I/9NcpMozV5Fw194WimhbkAsJtKVZf5UKYJ9hgc8Cdg=
19+
github.com/DIMO-Network/cloudevent v0.2.9 h1:8MxbZtNReMHbwPUGQc2+G5THf08dFxju+npKZFZygJc=
20+
github.com/DIMO-Network/cloudevent v0.2.9/go.mod h1:I/9NcpMozV5Fw194WimhbkAsJtKVZf5UKYJ9hgc8Cdg=
2121
github.com/DIMO-Network/server-garage v0.1.1 h1:EYmyy+Fgi2BNW0Bufn04BViDtb8BCWaN7C7BbEuoI5s=
2222
github.com/DIMO-Network/server-garage v0.1.1/go.mod h1:Z3A1KDUsXey+XhrPhmw/wyCidfrQvmEdWp7nShno7ZM=
2323
github.com/DIMO-Network/shared v1.1.7 h1:5Ex8bZ6BpOjcLj4u7n5Kih1Ho6b9BVJsKpKn4iU2EaM=

internal/fetch/rpc/rpc.go

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ func (s *Server) GetLatestIndex(ctx context.Context, req *grpc.GetLatestIndexReq
3636
var err error
3737

3838
if req.GetAdvancedOptions() != nil {
39-
index, err = s.eventService.GetLatestIndexAdvanced(ctx, req.GetAdvancedOptions())
39+
// gRPC callers see no tombstone suppression by default; the GraphQL
40+
// includeDeleted flag is the public surface for opting in.
41+
index, err = s.eventService.GetLatestIndexAdvanced(ctx, req.GetAdvancedOptions(), true)
4042
} else {
4143
index, err = s.eventService.GetLatestIndex(ctx, req.GetOptions())
4244
}
@@ -63,7 +65,7 @@ func (s *Server) ListIndexes(ctx context.Context, req *grpc.ListIndexesRequest)
6365
var err error
6466

6567
if req.GetAdvancedOptions() != nil {
66-
indexObjs, err = s.eventService.ListIndexesAdvanced(ctx, int(req.GetLimit()), req.GetAdvancedOptions())
68+
indexObjs, err = s.eventService.ListIndexesAdvanced(ctx, int(req.GetLimit()), req.GetAdvancedOptions(), true)
6769
} else {
6870
indexObjs, err = s.eventService.ListIndexes(ctx, int(req.GetLimit()), req.GetOptions())
6971
}
@@ -92,7 +94,7 @@ func (s *Server) ListCloudEvents(ctx context.Context, req *grpc.ListCloudEventsR
9294
var err error
9395

9496
if req.GetAdvancedOptions() != nil {
95-
metaList, err = s.eventService.ListIndexesAdvanced(ctx, int(req.GetLimit()), req.GetAdvancedOptions())
97+
metaList, err = s.eventService.ListIndexesAdvanced(ctx, int(req.GetLimit()), req.GetAdvancedOptions(), true)
9698
} else {
9799
metaList, err = s.eventService.ListIndexes(ctx, int(req.GetLimit()), req.GetOptions())
98100
}
@@ -121,7 +123,7 @@ func (s *Server) GetLatestCloudEvent(ctx context.Context, req *grpc.GetLatestClo
121123
var err error
122124

123125
if req.GetAdvancedOptions() != nil {
124-
metadata, err = s.eventService.GetLatestIndexAdvanced(ctx, req.GetAdvancedOptions())
126+
metadata, err = s.eventService.GetLatestIndexAdvanced(ctx, req.GetAdvancedOptions(), true)
125127
} else {
126128
metadata, err = s.eventService.GetLatestIndex(ctx, req.GetOptions())
127129
}

internal/graph/base.resolvers.go

Lines changed: 10 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/graph/convert.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,14 @@ func resolveLimit(limit *int) int {
6363
return defaultLimit
6464
}
6565

66+
// resolveIncludeDeleted maps the GraphQL `includeDeleted` argument (which has
67+
// a default of false in the schema, but may arrive as nil when the caller did
68+
// not supply a value at all) to the eventrepo flag. False means tombstoned
69+
// attestations are suppressed; true means they are returned.
70+
func resolveIncludeDeleted(p *bool) bool {
71+
return p != nil && *p
72+
}
73+
6674
// indexToModel converts a CloudEvent index entry to the GraphQL model,
6775
// using the CloudEventHeader from the library directly.
6876
func indexToModel(idx cloudevent.CloudEvent[eventrepo.ObjectInfo]) *model.CloudEventIndex {

0 commit comments

Comments
 (0)