zames_pro 2.90.2 → 2.90.4
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.
- package/CHANGELOG.md +12 -0
- package/dist/input/layout.js +13 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [2.90.4] - 2026-10-28
|
|
11
|
+
|
|
12
|
+
### Fixed
|
|
13
|
+
|
|
14
|
+
- **ui:** safeJson(undefined) returns a string, not the value undefined
|
|
15
|
+
|
|
16
|
+
## [2.90.3] - 2026-10-28
|
|
17
|
+
|
|
18
|
+
### Fixed
|
|
19
|
+
|
|
20
|
+
- **ui:** keep a tool detail on a negative clip budget instead of a lone ellipsis
|
|
21
|
+
|
|
10
22
|
## [2.90.2] - 2026-10-28
|
|
11
23
|
|
|
12
24
|
### Fixed
|
package/dist/input/layout.js
CHANGED
|
@@ -141,7 +141,11 @@ export function expandPastes(pastes, text, deletedIndex) {
|
|
|
141
141
|
}
|
|
142
142
|
function safeJson(v) {
|
|
143
143
|
try {
|
|
144
|
-
|
|
144
|
+
// `JSON.stringify(undefined)` returns the VALUE `undefined`, not a string:
|
|
145
|
+
// the typed-as-string result then broke `truncateToWidth` and the
|
|
146
|
+
// `detail ? …` branches (a REPL/args-less tool printed nothing useful).
|
|
147
|
+
const s = JSON.stringify(v);
|
|
148
|
+
return s === undefined ? String(v) : s;
|
|
145
149
|
}
|
|
146
150
|
catch {
|
|
147
151
|
return String(v);
|
|
@@ -314,7 +318,14 @@ export function wrapToWidth(s, maxCols) {
|
|
|
314
318
|
return out.join(NL);
|
|
315
319
|
}
|
|
316
320
|
export function truncateToWidth(s, maxCols) {
|
|
317
|
-
|
|
321
|
+
// The callers derive the budget from the row width MINUS the tool name
|
|
322
|
+
// (`contentWidth() - name.length - 6`), so a long name (an MCP tool id) on a
|
|
323
|
+
// narrow pane produced a NEGATIVE budget and the whole detail collapsed to a
|
|
324
|
+
// lone `…` — the operator saw no argument at all. A budget below 1 (the
|
|
325
|
+
// ellipsis itself) is lifted to 2, so the head keeps ONE character next to
|
|
326
|
+
// the marker instead of disappearing entirely.
|
|
327
|
+
const requested = Number.isFinite(maxCols) ? Math.floor(maxCols) : 1;
|
|
328
|
+
const width = requested < 1 ? 2 : requested;
|
|
318
329
|
const text = String(s ?? '');
|
|
319
330
|
if (visLen(text) <= width)
|
|
320
331
|
return text;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zames_pro",
|
|
3
|
-
"version": "2.90.
|
|
3
|
+
"version": "2.90.4",
|
|
4
4
|
"description": "Terminal coding agent that drives a real browser to chat with DeepSeek, Qwen or GLM — no API key required. Reads and edits files, runs commands, commits to git, like Claude Code / Codex CLI.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|