Altinity / Altinity/altinity-sql-browser
GS: Google OAuth, Picker, and snapshot export
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 8
- Forks
- 2
- Avg merge
- 1h 34m
- Merged PRs (30d)
- 6
Description
Parent: #398
Design:
docs/design/google-sheets/authentication.mddocs/design/google-sheets/snapshot-export.mddocs/design/google-sheets/large-results.md
Scope
Add deployment-gated Google Identity Services authentication, Google Picker create/select flow, and one-time snapshot export using the canonical streaming/type-conversion pipeline.
Acceptance criteria
- Google actions are absent when configuration is missing.
- Tokens remain in browser memory and never enter URLs, logs, persistence, or exports.
- New and existing spreadsheets can be selected with edit-permission validation.
- Snapshot export creates no binding, refresh link, checkpoint, or history row.
- Values use RAW input semantics and precision-safe ClickHouse type mapping.
- Upload uses explicit byte-bounded ranges with progress, cancellation, quota backoff, and no silent truncation.
- OAuth popup/account/permission failures are actionable and non-destructive.
- Unit, fake-Google, browser, and scale tests cover the flow.
Non-goals
Linked refresh, server binding storage, scheduling, Apps Script, service accounts, and Google Docs.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with docs/design/google-sheets/authentication.md, docs/design/google-sheets/snapshot-export.md, and docs/design/google-sheets/large-results.md, then locate the existing streaming and type-conversion entry points. Done means the gated OAuth, Picker selection, and one-time export satisfy the listed security, upload, error-handling, and unit, fake-Google, browser, and scale-test criteria.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- google-cloud, typescript
- Domain
- authentication, data, frontend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100