Skip to content

v0.2.8

Choose a tag to compare

@javrrr javrrr released this 04 May 16:15
· 13 commits to main since this release

Runtime overrides and JSDoc for discovered API quirks

Discovered via live-org validation from a downstream consumer. The spec is technically correct about types but silent about server-side constraints and edge cases.

Behavior changes

  • dataModelObjects.listMappings — soft-lands the `Object Source Target Map not found` 404 as an empty collection. Unrelated 404s and other errors still throw.
  • dataGraphs.list / listAll — new convenience wrappers over `getMetadata` (the Connect API has no dedicated list endpoint).

Documentation (JSDoc)

  • connections.list — `connectorType` casing caveats: CamelCase (`IngestApi`, `SalesforceDotCom`, `AwsS3`) vs UPPERCASE (`SNOWFLAKE`, `BIGQUERY`, `GCS`, `SFTP`). No blanket rule; enumerate via `connectors.list`.
  • connections.listSchema — only a subset of connector types is supported. `AwsS3`, `Databricks`, and `SalesforceDotCom` reject with `400 ILLEGAL_QUERY_PARAMETER_VALUE`.
  • connectors — class-level note on casing variance and the `connectorInfoList` collection key.
  • dataKits.list / listAvailableComponents — documented known tenant-side timeouts and 500s with Metadata API fallback.
  • dataModelObjects — note on the singular `dataModelObject` response key (spec oddity).
  • identityResolutions — class-level JSDoc clarifying that `get`/`delete`/`patch`/`runNow` require the id, not `developerName`.

Tests

  • 3 new cases locking the `listMappings` 404 soft-landing behavior (happy path, unrelated 404 rethrow, 400 rethrow).
  • 3 new cases for `dataGraphs.list()` / `listAll()`.
  • Fixed pre-existing `createMappings` and `getData` call shapes.

215 tests passing (+6), typecheck clean, build clean.

Full Changelog: v0.2.7...v0.2.8