pbls/requirements.txt

63 lines
4.5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# PBL Agent OS 验证原型(Phase 0/1)—— 应用依赖声明
# 平台基础依赖(ahserver / sqlor / apppublic / appbase / rbac)由机构私有源提供,
# 通过 --index-url 指向内网 pypi;缺失时 build.sh 会 fail-fast 报错而非静默跳过。
# [deploy_test R5 修复] 原 --extra-index-url http://DEAD-INTERNAL-PYPI-REMOVED:8081/... 在目标机 192.168.16.3
# 实测 connect timeout(5 次重试全失败 → build.sh BUILD_RC=1,部署卡在依赖安装)。
# 平台基础包改由机构 wheelhouse 离线供给(--find-links 相对本文件定位 WS/wheelhouse),
# 第三方包走公网 pypi.org(目标机实测 HTTP=200 可达)。
# [deploy_test R7 修复] 删除 `--find-links ../../wheelhouse`:相对路径 pip 不解析
# (r6 实测 65 次 "WARNING: Location '../../wheelhouse' is ignored")。
# 基座 wheel 由 pbl 用户 ~/.config/pip/pip.conf 的 find-links=/d/pipeline/workspaces/0/sdlc_general/wheelhouse
# 供给(实测 pbl 可 ls 该目录 7 个 wheel),build.sh 第 7 步另以绝对路径 --find-links ${WHEELHOUSE} 兜底。
# [develop 本轮修复 Bug BWY68rZR_Uh2A41JlGT7D / elS7VxwO7ufbPiPl-ucGA] 依赖声明「可满足性」
# 已由 build.sh 硬门禁 6.6(scripts/check_requirements_satisfiable.py)静态把关:
# 幻影包黑名单(pybricks / mysqlclient / hashlib-additional / 本地 pbl_* 模块)、
# 标准库名误当第三方声明、基座包 == 版本与 wheelhouse 实物逐字一致、
# wheelhouse 覆盖完整性、门禁 6.5 六项声明在位、失效内网源 DEAD-INTERNAL-PYPI-REMOVED 残留、
# 相对路径 --find-links(pip 不解析)——并同步扫描全部 modules/*/pyproject.toml 同类缺陷。
# 基座版本口径 = env/test.json deps.corrected_requirements_hint(业主 2026-09-25 修正)。
# ---- 平台基础框架(必需,硬门禁 6.5)----
ahserver==1.2.0 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=1.2.0 无对应发行物)
sqlor==2.1.2 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=2.1.2 无对应发行物)
apppublic==5.3.2 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=5.3.2 无对应发行物)
appbase==1.0.0 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=1.0.0 无对应发行物)
rbac==1.0.0 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=1.0.0 无对应发行物)
bricks_for_python==0.0.5 # 前端积木(.ui/.bui 渲染 + load_pybricks) # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=0.0.5 无对应发行物)
# [deploy_test R5 修复] 移除 pybricks>=1.1.0:load_pybricks 实际由 bricks_for_python.init 提供,
# wheelhouse 无此包,公网同名包为 LEGO 机器人库(误装风险)——幻影依赖。
accounting==0.1.0 # [R7] 按 deps.corrected_requirements_hint 固定=宿主实装版本(原 >=0.1.0 无对应发行物)
# ---- DB 驱动(mariadb 方言,显式 TCP,禁 socket)----
PyMySQL>=1.1.0
# [deploy_test R5 修复] 移除 mysqlclient>=2.2.0:需 mysql_config(目标机实测 which mysql_config 无输出,
# pbl 无 sudo 装不了 mariadb-devel)。DB 驱动由 PyMySQL + aiomysql 承担(sqlor/ahserver 传递依赖)。
SQLAlchemy>=2.0.0
# ---- 业务模块(本项目新建 15 个 pbl_*,本地路径安装)----
# 由 build.sh 以 pip install -e modules/{模块} 方式安装,不发布到公共源
# pbl_common / pbl_appcodes / pbl_governance / pbl_blueprint / pbl_template
# pbl_validation / pbl_compiler / pbl_agent_runtime / pbl_evidence / pbl_assessment
# pbl_domain_ext / pbl_scense_ext / pbl_runtime_ext / pbl_kdb_ext / pbl_analytics
# ---- 通用运行时依赖 ----
requests>=2.31.0
python-dateutil>=2.8.2
pytz>=2024.1
jsonschema>=4.21.0
PyYAML>=6.0.1
# [Bug BWY68rZR_Uh2A41JlGT7D 修复] 删除 `hashlib-additional>=1.0.1 ; python_version < "3.0"`:
# hashlib 是 Python 3 标准库(sys.stdlib_module_names 实测在列),marker 恒假 → 永不安装,
# 属无意义幻影声明;且公共源真实发行名为 hashlib_additional(下划线),声明名对不上,
# 一旦 marker 被误改成立即 "No matching distribution found" → pip install 整体 BUILD_RC=1。
# 代码侧 hashlib 用法全部走标准库 import,无需任何第三方补充包。
# ---- 前端/模板处理(website.processors: .tmpl/.ui/.dspy)----
Mako>=1.3.0
Jinja2>=3.1.0
# ---- 部署与自检 ----
psutil>=5.9.0
setuptools>=68.0.0
wheel>=0.42.0