You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit b994d60
Browse filesBrowse the repository at this point in the historyBrowse files
fix(ingest): isolate tests from a variable the CLI actually reads
The isolation helper cleared HOTDATA_WORKSPACE_ID, which the CLI does not
read -- the variable that locks a workspace is HOTDATA_WORKSPACE. So half the
isolation did nothing, and a developer with that set got different results
from CI, which is the failure the helper was added to prevent.
Also pins the multi-line --sql fix, which nothing asserted: every parse_select
test was single-line, so a refactor moving the keyword search ahead of the
whitespace collapse would have stayed green while indented SQL broke again.
And `datasource fields` rendered a blank section for a oneOf whose branches
are $refs -- which is sql's selector, the one family whose selector most needs
explaining. The branch is resolved against $defs before rendering now.
### Ingest external data (`datasource`, `ingest`, `run`)
238
238
239
-
Pull data from external sources (SQL databases, APIs, S3/GCS/Azure buckets, Iceberg catalogs, Kafka) into managed databases. **Three nouns, three ids, and the id is always the argument** — display names are shown but never resolved against:
239
+
Pull data from external sources (SQL databases, APIs, S3/GCS/Azure buckets, Iceberg catalogs, Kafka) into managed databases. **Three nouns, three ids, and an id is always what goes on the wire** — the service has no name lookup, because a display name is a label and nothing stops two rows sharing one:
240
240
241
241
-**datasource** (`ds_…`) — what a credential opens: a server, a bucket root, a catalog, a cluster. Holds config + credentials, loads no data.
242
242
-**ingest** (`ing_…`) — a saved load definition: `datasource + selector + destination + type/schedule`. One datasource can back many ingests.
243
243
-**run** (`run_…`) — one execution attempt, with snapshots of the config version, selector, and destination it used.
244
244
245
+
One flag softens that for typing, and only for typing: `ingest create --source` accepts a display name and resolves it to an id **client-side, before the request**, erroring with both ids if the name matches two datasources rather than picking one. Every other argument, and every request the CLI sends, takes ids only.
246
+
245
247
Read commands (`datasource list|show|types|fields`, `ingest list|show|runs`, `run show`) work with a login session JWT. Commands that persist a credential (`datasource create`, `datasource update-config`, `ingest create`) **require a workspace API key** (`HOTDATA_API_KEY` / `--api-key`, `hd_...`) — the run outlives the 5-minute JWT.
0 commit comments