basecamp / basecamp/basecamp-sdk

OAuth stack: pre-go-live hardening follow-ups (deferred review findings)

Open
#501 3 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
49
Forks
12
Avg merge
20h 47m
Merged PRs (30d)
89

Description

Landing zone for **consequence-assessed nonblocking findings** from reviews of the #370/#376/#478 stack — items whose impact assessment shows no security, contract, data-loss, or declared-platform failure. Severity is determined by impact, not a reviewer's P1/P2 badge; unresolved release defects never land here. Current intentional holds (each has a PR thread with full rationale, pending owner acceptance):

- **Faraday headers-time classification** (#370, the long-held thread): injected clients classify a stalled skip-status body as a bounded transport timeout instead of header-time api_error — Faraday exposes no headers-time callback. Bounded since the Timeout.timeout wall-clock wrap; classification-quality gap remains.
- **Python worker join grace** (#376): the +1s cleanup grace extends the caller's worst-case block to timeout+1s by design; pulling it inside the budget would tax every healthy request.
- **Launchpad-only legacy token providers** (Ruby/Python, #478): pinned to Launchpad's endpoint, no RFC 8707 resource; BC5 flows use TokenManager/AuthManager/CLI. Docstrings now warn.
- **Kotlin JVM binary compatibility for appended params** (#478): pre-1.0 SDK, source-level append-only contract only; synthetic default-arg descriptors change arity regardless, so bridges deliver partial coverage at best.

Contributor guide

Open the contributing guide

Research direction

Start by reading the linked review threads for #370, #376, and #478; the issue names no files or tests. Treat each item as an intentional hold and verify its impact assessment and owner acceptance before proposing any work; done means the relevant PR thread records an accepted resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin, python, ruby
Domain
api, authentication, security
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.