GS: Linked-sheet resource and ClickHouse binding storage
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Quiet
- Tech stack
- clickhouse, typescript
Research direction
Start with parent issue #398 and dependency #399, then read the three design documents: docs/design/google-sheets/resource-model.md, configuration.md, and sharing-security.md. Trace the existing workspace, query, binding, and ClickHouse connection entry points before planning the resource, services, storage, and UI changes. Done means the listed acceptance criteria are met without implementing the stated non-goals.
Written by the indexing model from the issue text.
Description
Parent: #398
Depends on: #399
Design:
docs/design/google-sheets/resource-model.mddocs/design/google-sheets/configuration.mddocs/design/google-sheets/sharing-security.md
Scope
Add the versioned linked-sheet workspace resource, strict configuration parsing, configured ClickHouse binding and refresh-log services, pinned saved-query snapshots, and binding management UI.
Acceptance criteria
- Bindings have stable IDs and versioned canonical codecs.
- One saved query may own multiple bindings.
- Binding versions are appended through the current authenticated ClickHouse connection.
- Configured table identifiers are parsed and quoted strictly; no DDL or migration is attempted.
- Table conformance and privileges produce clear diagnostics.
- Editing a workspace query does not silently alter a binding.
- Updating a binding to the current query is explicit and versioned.
- Workspace export/import preserves non-secret portable metadata and requires revalidation.
- ClickHouse grants and row policies remain the only binding ACL.
Non-goals
Refresh execution, append cursor logic, application-managed ACLs, or storing credentials.
- Dominant language
- TypeScript
- Stars
- 8
- Forks
- 2
- Avg merge
- 1h 34m
- Merged PRs (30d)
- 6
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.
More from Altinity/altinity-sql-browser
-
inbox
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Altinity/altinity-sql-browser#605 ·
-
inbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Altinity/altinity-sql-browser#509 ·
-
inbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Altinity/altinity-sql-browser#489 ·
-
flamegraph Openenhancement
Difficulty 5/5 Over a week Newbie friendliness 25/100
Altinity/altinity-sql-browser#684 ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 68/100
Altinity/altinity-sql-browser#680 · 2 comments ·
All issues in Altinity/altinity-sql-browser
Similar issues
-
blocklist removal
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
pastelsky/bundlephobia#1122 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
category/development priority/P2 scope/file-operations scope/testing type/enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Open
Difficulty 2/5 1-3 hours Newbie friendliness 75/100