fix(release): 发布链 fail-open(缺 secret 时 Actions 绿但什么都没发)+ PyPI 上的 0.10.0 恰是 /forward 无鉴权的安全缺口版本
Los mantenedores suelen responder en 7 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 34/100
Línea de trabajo
Start from the workflows the issue cites — .github/workflows/pypi.yml:24-28, release-npm.yml:6-7, release-rust.yml:54-57 — and confirm the missing-secret path only warns and exits 0. Verify the security claim via git show f3aa8bd:python/tunely/server.py:1344-1347 against fix 8e1c728, then compare version files (py 0.12.0, ts 0.5.0, rust 0.6.0) with existing tags. Reconcile deploy/README.md:15 and README.md:24,89 with docs/ROLLING_UPGRADE.md:63,94. Done means workflows fail loudly without secrets, 0.11/0.12 and rust 0.5/0.6 tags exist, and docs point at git refs.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
场景 gap 单(okguitar 提报)· 优先级 P1 · 依赖:无
基线 HEAD = 020dec3。
Summary
- 三个发布 workflow 缺 secret 时只
::warning::+exit 0:release-rust.yml:54-57、release-npm.yml:6-7、pypi.yml:24-28——Actions 全绿但无产物。 - 产物落后:PyPI 最新 0.10.0(09-30 上传)、crates.io 0.5.0;代码已是 py 0.12.0 / ts 0.5.0 / rust 0.6.0;最新 python tag 是
python-v0.10.0(0.11/0.12 无 tag)。 - PyPI 0.10.0 = 安全缺口版本:
git show f3aa8bd:python/tunely/server.py:1344-1347的/forward无_check_admin_api_key(修复提交 8e1c728 在 tag 之后 16 分钟落地);T1-T7 去特征化(1950ecb)与控制台(10-01)均晚于该上传。 - 文档矛盾:
deploy/README.md:15/README.md:24,89教pip/cargo install tunely,而docs/ROLLING_UPGRADE.md:63,94明确"PyPI 不可作回滚源、一律 git ref"。
影响
按 README 部署的新机器拿到未修复 /forward 无鉴权、无 T1-T7、无控制台的服务端;cargo install tunely 拿不到 rust 0.6.0 的新代理能力;回滚纪律(tag=发布点)已腐烂(0.11/0.12 无 tag 可指)。
建议
发布 workflow 去 fail-open(缺 secret 直接 fail)或加"发布后校验"job(断言产物版本==仓内版本);补 0.11/0.12/rust 0.5/0.6/ts-* 追溯 tag;README 安装源统一改 git ref 或标注"PyPI 滞后,勿作生产源";评估 PyPI 0.10.0 yank 或紧急补发。
- Lenguaje dominante
- Python
- Estrellas
- 0
- Forks
- 0
- Merge medio
- 6 d 2 h
- PR fusionados (30 d)
- 2
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de jeffkit/tunely
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 7 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 87/100
Los mantenedores suelen responder en 7 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
jeffkit/tunely#24 · 3 comentarios ·
Los mantenedores suelen responder en 7 días
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
jeffkit/tunely#22 · 3 comentarios ·
Los mantenedores suelen responder en 7 días
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
jeffkit/tunely#21 · 3 comentarios ·
Los mantenedores suelen responder en 7 días
Todos los issues de jeffkit/tunely
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
google-agentic-commerce/AP2#388 ·
-
area:codegen backend:cuda backend:hip bug direction:input
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
CrossGL/crosstl#3061 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
rlaope/oh-my-hermes#2304 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
mochan-tk/agentic-dev-kit-for-codex#64 ·
Los mantenedores suelen responder en 1 día
-
Windows ARM memory-leakAbiertobug docs performance
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
Los mantenedores suelen responder en 3 días