vibego 0.2.29__py3-none-any.whl → 0.2.30__py3-none-any.whl
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.
Potentially problematic release.
This version of vibego might be problematic. Click here for more details.
- bot.py +4 -2
- master.py +34 -3
- scripts/start.sh +2 -1
- {vibego-0.2.29.dist-info → vibego-0.2.30.dist-info}/METADATA +1 -1
- {vibego-0.2.29.dist-info → vibego-0.2.30.dist-info}/RECORD +9 -9
- vibego_cli/__init__.py +1 -1
- {vibego-0.2.29.dist-info → vibego-0.2.30.dist-info}/WHEEL +0 -0
- {vibego-0.2.29.dist-info → vibego-0.2.30.dist-info}/entry_points.txt +0 -0
- {vibego-0.2.29.dist-info → vibego-0.2.30.dist-info}/top_level.txt +0 -0
bot.py
CHANGED
|
@@ -623,8 +623,10 @@ def _unescape_if_already_escaped(text: str) -> str:
|
|
|
623
623
|
|
|
624
624
|
def _prepare_model_payload(text: str) -> str:
|
|
625
625
|
if _IS_MARKDOWN_V2:
|
|
626
|
-
#
|
|
627
|
-
|
|
626
|
+
# 先反转义已转义的内容,避免双重转义
|
|
627
|
+
cleaned = _unescape_if_already_escaped(text)
|
|
628
|
+
# 转换标准 Markdown 格式为 Telegram 支持的格式
|
|
629
|
+
normalized = _normalize_to_telegram_markdown(cleaned)
|
|
628
630
|
# 再进行 MarkdownV2 转义
|
|
629
631
|
return _escape_markdown_v2(normalized)
|
|
630
632
|
if _IS_MARKDOWN:
|
master.py
CHANGED
|
@@ -62,9 +62,28 @@ CONFIG_DB_PATH = Path(os.environ.get("MASTER_PROJECTS_DB_PATH", ROOT_DIR / "conf
|
|
|
62
62
|
STATE_PATH = Path(os.environ.get("MASTER_STATE_PATH", ROOT_DIR / "state/state.json"))
|
|
63
63
|
RUN_SCRIPT = ROOT_DIR / "scripts/run_bot.sh"
|
|
64
64
|
STOP_SCRIPT = ROOT_DIR / "scripts/stop_bot.sh"
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
)
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
def _get_restart_signal_path() -> Path:
|
|
68
|
+
"""
|
|
69
|
+
获取重启信号文件路径,使用健壮的默认值逻辑。
|
|
70
|
+
|
|
71
|
+
优先级:
|
|
72
|
+
1. 环境变量 MASTER_RESTART_SIGNAL_PATH
|
|
73
|
+
2. 配置目录 $MASTER_CONFIG_ROOT/state/restart_signal.json
|
|
74
|
+
3. 代码目录 ROOT_DIR/state/restart_signal.json(兜底)
|
|
75
|
+
|
|
76
|
+
这样可以确保 pipx 安装的版本和源码运行的版本使用同一个信号文件。
|
|
77
|
+
"""
|
|
78
|
+
if env_path := os.environ.get("MASTER_RESTART_SIGNAL_PATH"):
|
|
79
|
+
return Path(env_path)
|
|
80
|
+
|
|
81
|
+
# 默认使用配置目录而非代码目录,确保跨安装方式的一致性
|
|
82
|
+
config_root = Path(os.environ.get("MASTER_CONFIG_ROOT", Path.home() / ".config/vibego"))
|
|
83
|
+
return config_root / "state/restart_signal.json"
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
RESTART_SIGNAL_PATH = _get_restart_signal_path()
|
|
68
87
|
RESTART_SIGNAL_TTL = int(os.environ.get("MASTER_RESTART_SIGNAL_TTL", "1800")) # 默认 30 分钟
|
|
69
88
|
LOCAL_TZ = ZoneInfo(os.environ.get("MASTER_TIMEZONE", "Asia/Shanghai"))
|
|
70
89
|
JUMP_BUTTON_TEXT_WIDTH = 40
|
|
@@ -2866,6 +2885,18 @@ async def main() -> None:
|
|
|
2866
2885
|
|
|
2867
2886
|
manager = await bootstrap_manager()
|
|
2868
2887
|
|
|
2888
|
+
# 诊断日志:记录重启信号文件路径,便于排查问题
|
|
2889
|
+
log.info(
|
|
2890
|
+
"重启信号文件路径: %s (存在: %s)",
|
|
2891
|
+
RESTART_SIGNAL_PATH,
|
|
2892
|
+
RESTART_SIGNAL_PATH.exists(),
|
|
2893
|
+
extra={
|
|
2894
|
+
"signal_path": str(RESTART_SIGNAL_PATH),
|
|
2895
|
+
"signal_exists": RESTART_SIGNAL_PATH.exists(),
|
|
2896
|
+
"env_override": os.environ.get("MASTER_RESTART_SIGNAL_PATH"),
|
|
2897
|
+
},
|
|
2898
|
+
)
|
|
2899
|
+
|
|
2869
2900
|
master_token = os.environ.get("MASTER_BOT_TOKEN")
|
|
2870
2901
|
if not master_token:
|
|
2871
2902
|
log.error("MASTER_BOT_TOKEN 未设置")
|
scripts/start.sh
CHANGED
|
@@ -256,7 +256,8 @@ if [[ -n "${MASTER_RESTART_EXPECTED:-}" ]]; then
|
|
|
256
256
|
fi
|
|
257
257
|
|
|
258
258
|
log_info "准备启动 master 进程..."
|
|
259
|
-
|
|
259
|
+
# 显式传递环境变量给 nohup 进程,确保重启信号文件路径正确
|
|
260
|
+
MASTER_RESTART_SIGNAL_PATH="$MASTER_RESTART_SIGNAL_PATH" nohup python master.py >> /dev/null 2>&1 &
|
|
260
261
|
MASTER_PID=$!
|
|
261
262
|
|
|
262
263
|
# 健壮性检查:确保进程成功启动
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
bot.py,sha256=
|
|
1
|
+
bot.py,sha256=uJcmMJmj5SlpwUXSgtnIEeNiUGkBg-lG5g6kM9BobP4,272046
|
|
2
2
|
logging_setup.py,sha256=gvxHi8mUwK3IhXJrsGNTDo-DR6ngkyav1X-tvlBF_IE,4613
|
|
3
|
-
master.py,sha256=
|
|
3
|
+
master.py,sha256=CHCsjOYAhr_gnNb1Yl7NaOsFQTbRL9CdhLLMIlrx3G0,109337
|
|
4
4
|
project_repository.py,sha256=UcthtSGOJK0cTE5bQCneo3xkomRG-kyc1N1QVqxeHIs,17577
|
|
5
5
|
scripts/__init__.py,sha256=LVrXUkvWKoc6Sb47X5G0gbIxu5aJ2ARW-qJ14vwi5vM,65
|
|
6
6
|
scripts/bump_version.sh,sha256=a4uB8V8Y5LPsoqTCdzQKsEE8HhwpBmqRaQInG52LDig,4089
|
|
@@ -9,7 +9,7 @@ scripts/master_healthcheck.py,sha256=-X0VVsZ0AXaOb7izxTO_oyu23g_1jsirNdGIcP8nrSI
|
|
|
9
9
|
scripts/publish.sh,sha256=ehLfMedcXuGKJ87jpZy3kuiFszG9Cpavp3zXPfR4h-g,3511
|
|
10
10
|
scripts/requirements.txt,sha256=QSt30DSSSHtfucTFPpc7twk9kLS5rVLNTcvDiagxrZg,62
|
|
11
11
|
scripts/run_bot.sh,sha256=rN4K1nz041XBaUJmnBBKHS2cHmQf11vPNX8wf1hbVR4,4596
|
|
12
|
-
scripts/start.sh,sha256=
|
|
12
|
+
scripts/start.sh,sha256=WxByzBXALfjcjhGPCrLHLkaD8hNYZ2WDQAZ0tpoQSeA,9996
|
|
13
13
|
scripts/start_tmux_codex.sh,sha256=xyLv29p924q-ysxvZYAP3T6VrqLPBPMBWo9QP7cuL50,4438
|
|
14
14
|
scripts/stop_all.sh,sha256=FOz07gi2CI9sMHxBb8XkqHtxRYs3jt1RYgGrEi-htVg,4086
|
|
15
15
|
scripts/stop_bot.sh,sha256=ot6Sm0IYoXuRNslUVEflQmJKu5Agm-5xIUXXudJWyTM,5588
|
|
@@ -426,14 +426,14 @@ tasks/constants.py,sha256=tS1kZxBIUm3JJUMHm25XI-KHNUZl5NhbbuzjzL_rF-c,299
|
|
|
426
426
|
tasks/fsm.py,sha256=rKXXLEieQQU4r2z_CZUvn1_70FXiZXBBugF40gpe_tQ,1476
|
|
427
427
|
tasks/models.py,sha256=N_qqRBo9xMSV0vbn4k6bLBXT8C_dp_oTFUxvdx16ZQM,2459
|
|
428
428
|
tasks/service.py,sha256=w_S_aWiVqRXzXEpimLDsuCCCX2lB5uDkff9aKThBw9c,41916
|
|
429
|
-
vibego_cli/__init__.py,sha256=
|
|
429
|
+
vibego_cli/__init__.py,sha256=cGLGVLdOGT2rC2HZZBaLnLPkoa2ofpzKfDuuMEhgNeY,311
|
|
430
430
|
vibego_cli/__main__.py,sha256=qqTrYmRRLe4361fMzbI3-CqpZ7AhTofIHmfp4ykrrBY,158
|
|
431
431
|
vibego_cli/config.py,sha256=VxkPJMq01tA3h3cOkH-z_tiP7pMgfSGGicRvUnCWkhI,3054
|
|
432
432
|
vibego_cli/deps.py,sha256=1nRXI7Dd-S1hYE8DligzK5fIluQWETRUj4_OKL0DikQ,1419
|
|
433
433
|
vibego_cli/main.py,sha256=X__NXwZnIDIFbdKSTbNyZgZHKcPlN0DQz9sqTI1aQ9E,12158
|
|
434
434
|
vibego_cli/data/worker_requirements.txt,sha256=QSt30DSSSHtfucTFPpc7twk9kLS5rVLNTcvDiagxrZg,62
|
|
435
|
-
vibego-0.2.
|
|
436
|
-
vibego-0.2.
|
|
437
|
-
vibego-0.2.
|
|
438
|
-
vibego-0.2.
|
|
439
|
-
vibego-0.2.
|
|
435
|
+
vibego-0.2.30.dist-info/METADATA,sha256=Ksc_G1L5Gn8gIEDXPTVHhQYXereR6HczAjdfEcsAdRc,10475
|
|
436
|
+
vibego-0.2.30.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
437
|
+
vibego-0.2.30.dist-info/entry_points.txt,sha256=Lsy_zm-dlyxt8-9DL9blBReIwU2k22c8-kifr46ND1M,48
|
|
438
|
+
vibego-0.2.30.dist-info/top_level.txt,sha256=R56CT3nW5H5v3ce0l3QDN4-C4qxTrNWzRTwrxnkDX4U,69
|
|
439
|
+
vibego-0.2.30.dist-info/RECORD,,
|
vibego_cli/__init__.py
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|