Difficulty: Hard
Type: Bug
Summary
Ensure all service methods pass request options such as timeoutMs, retry, and signal through to HttpClient consistently.
Current Behaviour
Some service methods spread or pass request options differently. For example, one access method passes only timeoutMs and retry, while another spreads the options object. This can cause cancellation signals or future request options to work in some methods but not others.
Expected Behaviour
All service methods should accept a common request options type and forward supported options consistently to the HTTP layer.
Suggested Implementation
Create one shared RequestOptions type and use it across access, membership, roles, and guild services. Ensure each method forwards timeoutMs, retry, signal, and any future safe request-level options.
Files or Areas Likely Affected
src/access/access.service.ts
src/membership/membership.service.ts
src/roles/roles.service.ts
src/guilds/guilds.service.ts
src/http/http.types.ts
src/types/common.ts
tests/
Acceptance Criteria
Additional Notes
This should avoid changing the public service method names or response types.
Difficulty: Hard
Type: Bug
Summary
Ensure all service methods pass request options such as
timeoutMs,retry, andsignalthrough toHttpClientconsistently.Current Behaviour
Some service methods spread or pass request options differently. For example, one access method passes only
timeoutMsandretry, while another spreads the options object. This can cause cancellation signals or future request options to work in some methods but not others.Expected Behaviour
All service methods should accept a common request options type and forward supported options consistently to the HTTP layer.
Suggested Implementation
Create one shared
RequestOptionstype and use it across access, membership, roles, and guild services. Ensure each method forwardstimeoutMs,retry,signal, and any future safe request-level options.Files or Areas Likely Affected
src/access/access.service.tssrc/membership/membership.service.tssrc/roles/roles.service.tssrc/guilds/guilds.service.tssrc/http/http.types.tssrc/types/common.tstests/Acceptance Criteria
signalis forwarded toHttpClientfrom every supported service methodtimeoutMsis forwarded consistentlyRequestOptionsimports are removedAdditional Notes
This should avoid changing the public service method names or response types.