fix(create): $TMP 包不再误弹传输请求选择

cmd_create 在未指定 --corr_nr 时无条件调 _select_transport_request(),
未判目标包 —— $TMP 是本地包(对象不进传输),弹交互是错的,且管道/脚本
调用时 input() 直接 EOFError,报错栈指向传输选择,误导排查方向。

修法:包名规范化后等于 $TMP/TMP 则跳过选择(corr_nr=None)。
实测:create --package '$TMP' 直接成功,TADIR 落 DEVCLASS=$TMP。
This commit is contained in:
吴让宇
2026-09-15 00:17:09 +08:00
parent 66ec30fc99
commit 04efa7388a
2 changed files with 9 additions and 3 deletions
+7 -1
View File
@@ -915,7 +915,13 @@ def cmd_create(args: argparse.Namespace, client: ADTClient) -> None:
# 非交互模式:用户通过 --corr_nr 指定
print(f" ✓ 传输请求(指定): {corr_nr}")
else:
corr_nr = _select_transport_request(client)
package_for_transport = getattr(args, "package", None) or "$TMP"
if package_for_transport.strip().upper() in ("$TMP", "TMP"):
# $TMP = 本地包,对象不进传输;弹交互选择是错的(管道调用会 EOFError)
print(" ℹ 目标包为 $TMP(本地对象),跳过传输请求选择")
corr_nr = None
else:
corr_nr = _select_transport_request(client)
if obj_type == "function":
group_name = name.split("/", 1)[0]