chore: remove datasets command#113
Conversation
Removing the datasets CLI surface for now. Deletes datasets.rs entirely and strips the Datasets variant from Commands, DatasetsCommands enum, the dispatch block in main.rs, and the stale cross-reference in the databases error message.
There was a problem hiding this comment.
Review
Blocking Issues
Documentation still describes the removed datasets command. The Rust code is gone, but user- and agent-facing docs continue to advertise hotdata datasets … as a working command. Since skills/ ships in the release tarball (skill.rs:49), every install will tell users (and Claude agents loading the skill) to invoke a subcommand that no longer exists.
Files that need updating in this PR:
README.md- Line 70 —
datasetsrow in the Commands catalog table - Line 149 — note in the Databases section pointing users at
hotdata datasets createfor CSV/JSON - Lines 170–188 — the entire
## Datasetssection (every example is now a dead command)
- Line 70 —
skills/hotdata/SKILL.md— 29 references, including:- Line 3 — skill
descriptionlistsdatasetsas a trigger / activation phrase - Line 23 — capabilities table row
- Line 93 — top-level subcommands list
- Lines 238–290 —
List datasets/Get/Update/Create/Refresh/Querying datasetssections (entire dataset command reference) - Line 184 — "Parquet vs datasets" note pointing to
hotdata datasets create - Line 324, 471 — saved-query → dataset workflow + CSV/JSON upload guidance
- Lines 366, 389 — sandbox/datasets interaction text
- Line 3 — skill
skills/hotdata/references/MODEL_BUILD.md— lines 31–35 (hotdata datasets list/<dataset_id>in catalog enumeration steps)skills/hotdata/references/WORKFLOWS.md— Datasets-vs-databases section and checklist steps referencedatasets create/datasets listskills/hotdata/references/DATA_MODEL.template.md— lines 65–73 (catalog template referenceshotdata datasets list/<id>)skills/hotdata-analytics/SKILL.md— lines 85–86, 97–100, 125 (Chain workflow useshotdata datasets create …)skills/hotdata-analytics/references/WORKFLOWS.md— lines 69–93 (entire Datasets section in the chain/materialization workflow)
The PR description's test plan also lists hotdata --help but doesn't verify the docs/skills are consistent with the new surface — please add a doc/skill sweep to the same PR (or split it into a follow-up PR that lands together) so a released binary doesn't ship with a skill telling Claude to call a removed command.
Non-blocking observations
- nit:
src/indexes.rsstill exposes--dataset-idscope onindexes list/indexes createand hits/datasets/{dataset_id}/indexes(indexes.rs:131-135,command.rs:294-338). That may be intentional — the dataset entity still exists server-side — but with no CLI way to discover dataset IDs, the flag is hard to use in practice. Worth a sentence in the PR description on whetherDatasetscope is staying or following in a later removal. (not blocking)
Action Required
Update README.md and the four affected skills/** files to remove the datasets command surface (or replace the guidance with the new supported path — e.g. databases tables load for parquet, and a clear note that CSV/JSON upload is no longer supported via the CLI) before merging.
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
Renames the `hotdata datasets` CLI command to `hotdata views` with a new `src/views.rs` module. The command and all user-facing terminology (help text, output messages, SQL prefix `views.`, skill docs) now use "view" / "views". Server-side API paths remain unchanged (`/datasets`). - Add `src/views.rs` (renamed from deleted `datasets.rs`) - Add `Views` / `ViewsCommands` to `command.rs` - Wire dispatch in `main.rs` - Update README, SKILL.md, WORKFLOWS.md, DATA_MODEL.template.md, MODEL_BUILD.md across hotdata and hotdata-analytics skills
| #### Create a view | ||
| ``` | ||
| hotdata datasets create --name <table_name> [--description "My Dataset"] (--sql "SELECT ..." | --query-id <saved_query_id>) [--workspace-id <workspace_id>] | ||
| hotdata views create --name <table_name> [--description “My View”] (--sql “SELECT ...” | --query-id <saved_query_id>) [--workspace-id <workspace_id>] |
There was a problem hiding this comment.
Curly quotes (“ / ”) inside a bash code block. These are not ASCII double quotes — copy-pasting this line into a shell will fail (zsh: command not found or bash: syntax error). Agents reading this skill may also propagate the curly quotes into generated commands.
| hotdata views create --name <table_name> [--description “My View”] (--sql “SELECT ...” | --query-id <saved_query_id>) [--workspace-id <workspace_id>] | |
| hotdata views create --name <table_name> [--description "My View"] (--sql "SELECT ..." | --query-id <saved_query_id>) [--workspace-id <workspace_id>] |
| Example (workspace view on `main`): | ||
| ``` | ||
| hotdata query "SELECT * FROM datasets.main.my_dataset LIMIT 10" | ||
| hotdata query “SELECT * FROM views.main.my_view LIMIT 10” |
There was a problem hiding this comment.
Curly quotes inside a code block — this command will fail when run as written. Replace with ASCII straight quotes.
| hotdata query “SELECT * FROM views.main.my_view LIMIT 10” | |
| hotdata query "SELECT * FROM views.main.my_view LIMIT 10" |
| hotdata datasets create --label "Orders" --file ./orders.csv | ||
| # or: --url "https://example.com/orders.parquet" | ||
| # or: --sql "SELECT ..." # materialize from a query | ||
| hotdata views create --name orders --sql “SELECT ...” |
There was a problem hiding this comment.
Curly quotes inside a bash code block — copy-paste will fail in a real shell.
| hotdata views create --name orders --sql “SELECT ...” | |
| hotdata views create --name orders --sql "SELECT ..." |
|
|
||
| ```bash | ||
| hotdata query "SELECT count(*) FROM datasets.main.orders" | ||
| hotdata query “SELECT count(*) FROM views.main.orders” |
There was a problem hiding this comment.
Same curly-quote issue — replace with ASCII straight quotes so this is copy-pasteable.
| hotdata query “SELECT count(*) FROM views.main.orders” | |
| hotdata query "SELECT count(*) FROM views.main.orders" |
There was a problem hiding this comment.
Review
Blocking Issues
- Curly quotes inside
bash/code-block CLI examples in 4 places introduced by this PR. These are not ASCII straight quotes, so commands copy-pasted from these skills will fail in a real shell, and agents loading these skills are likely to propagate the broken quoting into generated commands. Specific locations are flagged inline:skills/hotdata/SKILL.md:263(views create)skills/hotdata/SKILL.md:286(query example)skills/hotdata/references/WORKFLOWS.md:104(views create)skills/hotdata/references/WORKFLOWS.md:113(query example)
Action Required
- Replace all curly quotes (
“”) insidebash/code blocks with ASCII". Suggestion blocks are attached to each inline comment.
Additional note (not blocking)
- The PR title and description say this removes
hotdata datasetsand deletessrc/datasets.rs, but the diff is actually a rename ofdatasets→views(file renamed at 72% similarity, all four subcommands preserved, server endpoints unchanged). Consider updating the title and body so the commit message accurately reflects what merged.
Summary
hotdata datasetsand all subcommands (list,create,update,refresh)src/datasets.rsDatasetsfromCommandsenum andDatasetsCommandsenum fromcommand.rsmain.rsdatabases.rsthat previously pointed users tohotdata datasets createTest plan
cargo build— cleancargo test— 161 pass (3 pre-existingconfig::testsenv failures unrelated to this change)hotdata --help— nodatasetsentry