Never expose an unbounded collection field in a production API. Offset pagination is simple but becomes unstable when rows change. Cursor pagination returns an opaque position, commonly together with pageInfo such as hasNextPage and endCursor, and is better for feeds.
Filtering and sorting should be explicit schema arguments with documented limits. Enforce maximum page sizes server-side so a single request cannot force a resolver to load millions of records.