@altimateai/altimate-code 0.5.16 → 0.5.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/package.json +13 -13
package/CHANGELOG.md CHANGED
@@ -5,6 +5,34 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.5.18] - 2026-04-04
9
+
10
+ ### Added
11
+
12
+ - **Native GitLab MR review** — review merge requests directly from your terminal with `altimate gitlab review <MR_URL>`. Supports self-hosted GitLab instances, nested group paths, and comment deduplication (updates existing review instead of posting duplicates). Requires `GITLAB_PERSONAL_ACCESS_TOKEN` or `GITLAB_TOKEN` env var. (#622)
13
+ - **Altimate LLM Gateway provider** — connect to Altimate's managed model gateway via the TUI provider dialog (`/connect` → Altimate). Credentials validated before save, stored at `~/.altimate/altimate.json` with `0600` permissions. (#606)
14
+
15
+ ### Fixed
16
+
17
+ - **Glob tool: timeout, home/root blocking, default exclusions** — glob searches now timeout after 30s (returning partial results) instead of hanging indefinitely. Scanning `/` or `~` is blocked with a helpful message. Common directories (`node_modules`, `.git`, `dist`, `.venv`) are excluded by default. (#637)
18
+ - **MCP config normalization** — configs using `mcpServers` (Claude Code, Cursor format) are auto-converted to `mcp` at load time. External server entries with `command` + `args` + `env` are transformed to altimate-code's native format. (#639)
19
+ - **Light theme readability** — fixed white-on-white text in light terminal themes by adding explicit foreground colors to markdown and code blocks. (#640)
20
+
21
+ ## [0.5.17] - 2026-04-02
22
+
23
+ ### Added
24
+
25
+ - **Custom dbt `profiles.yml` path resolution** — Altimate Code now resolves `profiles.yml` using dbt's standard priority: explicit path → `DBT_PROFILES_DIR` env var → project-local `profiles.yml` → `~/.dbt/profiles.yml`. Teams using `DBT_PROFILES_DIR` in CI get zero-friction auto-discovery. Jinja `{{ env_var('NAME') }}` patterns are resolved automatically. A warning is shown when `DBT_PROFILES_DIR` is set but the file is not found. (#605)
26
+
27
+ ### Fixed
28
+
29
+ - **ClickHouse: SQL comment injection bypass** — Comments could previously mask write statements from the read-only LIMIT guard. String literals are now stripped before comment removal to prevent false matches. (#591)
30
+ - **ClickHouse: `LowCardinality(Nullable(...))` nullability** — Schema inspection previously reported these columns as non-nullable; now correctly detected as nullable. (#591)
31
+ - **ClickHouse: connection lifecycle guards** — All query methods now throw a clear error if called before `connect()`, preventing cryptic TypeErrors. (#591)
32
+ - **ClickHouse: `binds` parameter handling** — Queries with parameterized binds no longer throw a driver error; the parameter is safely ignored (ClickHouse uses `query_params` natively). (#591)
33
+ - **Stale file retry loops on WSL and network drives** — `FileTime.read()` now uses filesystem mtime instead of wall-clock, eliminating 782-iteration retry loops caused by clock skew on WSL (NTFS-over-9P), NFS, and CIFS mounts. Set `OPENCODE_DISABLE_FILETIME_CHECK=true` as escape hatch if needed. (#611)
34
+ - **Error classification: `file_stale` split and keyword fix** — `file_stale` is now a distinct error class; HTTP 4xx errors no longer misclassify as validation failures; restored `"does not exist"` keyword for SQL errors like `"column foo does not exist"`. (#611, #614)
35
+
8
36
  ## [0.5.16] - 2026-03-30
9
37
 
10
38
  ### Added
package/package.json CHANGED
@@ -7,24 +7,24 @@
7
7
  "scripts": {
8
8
  "postinstall": "bun ./postinstall.mjs || node ./postinstall.mjs"
9
9
  },
10
- "version": "0.5.16",
10
+ "version": "0.5.18",
11
11
  "license": "MIT",
12
12
  "dependencies": {
13
13
  "@altimateai/altimate-core": "0.2.6"
14
14
  },
15
15
  "optionalDependencies": {
16
- "@altimateai/altimate-code-linux-arm64": "0.5.16",
17
- "@altimateai/altimate-code-windows-x64": "0.5.16",
18
- "@altimateai/altimate-code-windows-x64-baseline": "0.5.16",
19
- "@altimateai/altimate-code-darwin-x64": "0.5.16",
20
- "@altimateai/altimate-code-windows-arm64": "0.5.16",
21
- "@altimateai/altimate-code-linux-x64-baseline": "0.5.16",
22
- "@altimateai/altimate-code-linux-arm64-musl": "0.5.16",
23
- "@altimateai/altimate-code-linux-x64-musl": "0.5.16",
24
- "@altimateai/altimate-code-linux-x64": "0.5.16",
25
- "@altimateai/altimate-code-darwin-x64-baseline": "0.5.16",
26
- "@altimateai/altimate-code-linux-x64-baseline-musl": "0.5.16",
27
- "@altimateai/altimate-code-darwin-arm64": "0.5.16"
16
+ "@altimateai/altimate-code-linux-arm64": "0.5.18",
17
+ "@altimateai/altimate-code-windows-x64": "0.5.18",
18
+ "@altimateai/altimate-code-windows-x64-baseline": "0.5.18",
19
+ "@altimateai/altimate-code-darwin-x64": "0.5.18",
20
+ "@altimateai/altimate-code-windows-arm64": "0.5.18",
21
+ "@altimateai/altimate-code-linux-x64-baseline": "0.5.18",
22
+ "@altimateai/altimate-code-linux-arm64-musl": "0.5.18",
23
+ "@altimateai/altimate-code-linux-x64-musl": "0.5.18",
24
+ "@altimateai/altimate-code-linux-x64": "0.5.18",
25
+ "@altimateai/altimate-code-darwin-x64-baseline": "0.5.18",
26
+ "@altimateai/altimate-code-linux-x64-baseline-musl": "0.5.18",
27
+ "@altimateai/altimate-code-darwin-arm64": "0.5.18"
28
28
  },
29
29
  "peerDependencies": {
30
30
  "pg": ">=8",