From d705cc35e186fe14b183edda555540b790359f62 Mon Sep 17 00:00:00 2001 From: Zach Hayes Date: Fri, 20 Mar 2026 15:35:31 -0700 Subject: [PATCH 1/2] decode to string instead of uint --- ingestors/csfloat/csfloat.go | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/ingestors/csfloat/csfloat.go b/ingestors/csfloat/csfloat.go index fa99bbd..76a8d7b 100644 --- a/ingestors/csfloat/csfloat.go +++ b/ingestors/csfloat/csfloat.go @@ -6,6 +6,7 @@ import ( "fmt" "hash/fnv" "net/http" + "strconv" "time" "reverse-watch/config" @@ -54,7 +55,7 @@ type slimWarning struct { type responseData struct { Data []*slimWarning `json:"data"` - NextCursor *uint `json:"next_cursor"` + NextCursor *string `json:"next_cursor"` } type errorResponse struct { @@ -70,7 +71,7 @@ func (i *csfloatIngestor) fetch(ctx context.Context, cursor *uint) ([]*slimWarni limit := 1000 url := fmt.Sprintf("%s/api/v1/warnings/reversals?start_time_ms=%d&end_time_ms=%d&limit=%d", i.cfg.Ingestors.CSFloat.BaseURL, startTime.UnixMilli(), endTime.UnixMilli(), limit) if cursor != nil { - url = fmt.Sprintf("%s&cursor=%d", url, *cursor) + url = fmt.Sprintf("%s&cursor=%s", url, *cursor) } r, err := http.NewRequest("GET", url, nil) @@ -102,7 +103,16 @@ func (i *csfloatIngestor) fetch(ctx context.Context, cursor *uint) ([]*slimWarni return nil, nil, errors.New(errors.JSONDecode, err.Error()) } - return data.Data, data.NextCursor, nil + var nextCursor *uint + if data.NextCursor != nil { + next, err := strconv.ParseUint(*data.NextCursor, 10, 64) + if err != nil { + return nil, nil, errors.New(errors.JSONDecode, err.Error()) + } + nextCursor = util.Ptr(uint(next)) + } + + return data.Data, nextCursor, nil } // process warnings and create reversals, returns the most recent reversal From 2db8a0c140e77c865dfeec05531775efe77d749f Mon Sep 17 00:00:00 2001 From: Zach Hayes Date: Fri, 20 Mar 2026 15:37:06 -0700 Subject: [PATCH 2/2] use correct format verb --- ingestors/csfloat/csfloat.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ingestors/csfloat/csfloat.go b/ingestors/csfloat/csfloat.go index 76a8d7b..fb300ae 100644 --- a/ingestors/csfloat/csfloat.go +++ b/ingestors/csfloat/csfloat.go @@ -71,7 +71,7 @@ func (i *csfloatIngestor) fetch(ctx context.Context, cursor *uint) ([]*slimWarni limit := 1000 url := fmt.Sprintf("%s/api/v1/warnings/reversals?start_time_ms=%d&end_time_ms=%d&limit=%d", i.cfg.Ingestors.CSFloat.BaseURL, startTime.UnixMilli(), endTime.UnixMilli(), limit) if cursor != nil { - url = fmt.Sprintf("%s&cursor=%s", url, *cursor) + url = fmt.Sprintf("%s&cursor=%d", url, *cursor) } r, err := http.NewRequest("GET", url, nil)