zames_pro 2.90.4 → 2.90.5

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 CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.90.5] - 2026-10-28
11
+
12
+ ### Fixed
13
+
14
+ - **commands:** keep an explicitly empty quoted argument as a supplied position
15
+
10
16
  ## [2.90.4] - 2026-10-28
11
17
 
12
18
  ### Fixed
package/dist/commands.js CHANGED
@@ -834,6 +834,11 @@ export function splitCommandArgs(rest) {
834
834
  const DQ = String.fromCharCode(34);
835
835
  let cur = '';
836
836
  let quote = '';
837
+ // A QUOTED token exists even when it is empty: `cmd a ""` supplies an empty
838
+ // positional. Without this flag an empty `""` was dropped, so a declared
839
+ // argument the operator deliberately left blank counted as MISSING and the
840
+ // command was refused with the usage hint.
841
+ let quoted = false;
837
842
  for (let i = 0; i < s.length; i++) {
838
843
  const ch = s[i];
839
844
  if (quote) {
@@ -846,18 +851,20 @@ export function splitCommandArgs(rest) {
846
851
  }
847
852
  if (ch === SQ || ch === DQ) {
848
853
  quote = ch;
854
+ quoted = true;
849
855
  continue;
850
856
  }
851
857
  if (ch.charCodeAt(0) <= 32) {
852
- if (cur) {
858
+ if (cur || quoted) {
853
859
  out.push(cur);
854
860
  cur = '';
861
+ quoted = false;
855
862
  }
856
863
  continue;
857
864
  }
858
865
  cur += ch;
859
866
  }
860
- if (cur)
867
+ if (cur || quoted)
861
868
  out.push(cur);
862
869
  return out;
863
870
  }
@@ -957,7 +964,9 @@ export function missingCommandArgs(names, rest) {
957
964
  const parts = splitCommandArgs(rest);
958
965
  const missing = [];
959
966
  for (let i = 0; i < names.length; i++) {
960
- if (!parts[i])
967
+ // `undefined` means the position was never supplied; an EMPTY string is a
968
+ // deliberately blank value (`cmd "" second`) and must not be reported.
969
+ if (parts[i] === undefined)
961
970
  missing.push(names[i]);
962
971
  }
963
972
  return missing;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zames_pro",
3
- "version": "2.90.4",
3
+ "version": "2.90.5",
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": {