[bug]: speech recognize --timeout 未作用于临时 OSS 上传(固定 120 秒)
Los mantenedores suelen responder en 1 día
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 82/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- node.js, typescript
Línea de trabajo
Empieza por packages/core/src/client/client.ts y sigue las opciones de carga a través de resolveFileUrl() hasta packages/core/src/files/upload.ts y uploadToOSS(). Comprueba las pruebas de carga existentes o añade cobertura para un timeout proporcionado y el valor predeterminado de 120 segundos cuando no se proporcione ninguno. Se considera terminado cuando la carga de archivos OSS sigue el timeout configurado, mientras que la obtención de credenciales conserva su límite independiente de 15 segundos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
我在排查录音转写的超时问题时,发现 speech recognize --timeout 没有传到临时 OSS 文件上传这一步。上传仍固定等待120秒,而报错提示会建议增大 --timeout,因此调整这个参数对上传阶段没有效果。
已搜索现有 Issue,并核对官方 v2.1.0 和当前 main 的实现,相关代码一致。
环境
- BL、core、commands、runtime:2.1.0
- Node.js:v24.21.0
- Windows 11 x64,北京地域
问题位置
-
packages/core/src/client/client.ts的Client.uploadFile()调用resolveFileUrl()时没有传入有效配置中的settings.timeout:return resolveFileUrl(source, this.requireApi().token, model, { ...opts, identity: this.deps.identity, }); -
packages/core/src/files/upload.ts的uploadToOSS()则直接使用固定计时器:const uploadSignal = combineWithTimeout(120_000, signal);
因此,即使 CLI 指定 --timeout 3600,OSS 上传也不会使用这个值;上传耗时超过120秒时仍会被中止。
建议修改
沿现有调用链传递 timeout 即可:
- 在
Client.uploadFile()的上传选项中加入timeout: this.deps.settings.timeout。 - 在
resolveFileUrl()的选项类型及UploadOptions中增加等待秒数,并经uploadFile()传入uploadToOSS()。 - 将 OSS 上传计时器改为
combineWithTimeout(timeout * 1000, signal)。直接调用 SDK 且未传 timeout 时,可以保留原有120秒默认值。
获取上传凭证的15秒计时器与文件上传是两个阶段;本次建议针对实际文件上传。
本机核对结果
用合成凭据及模拟响应记录原生计时器:设置 timeout: 1 时,原版的文件上传计时器仍为120000毫秒。按上述方式透传后变为1000毫秒。另用延迟上传合约核对,一秒设置下300毫秒上传可完成,0.1秒设置下会按时中止。
希望文件上传也能遵循已解析的 timeout,让参数和超时提示的行为一致。
- Lenguaje dominante
- TypeScript
- Estrellas
- 527
- Forks
- 33
- Merge medio
- 6 h 11 min
- PR fusionados (30 d)
- 26
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la 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 modelstudioai/cli
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
modelstudioai/cli#242 ·
Los mantenedores suelen responder en 1 día
-
[bug] vision describe: default base URL is the Coding Plan endpoint → HTTP 404 for all VL/OCR modelsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
modelstudioai/cli#241 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
[bug] bl update: darwin-arm64 binary ships invalid ad-hoc signature, killed by macOS (Killed: 9)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
modelstudioai/cli#223 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
modelstudioai/cli#240 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 57/100
modelstudioai/cli#239 ·
Los mantenedores suelen responder en 1 día
Todos los issues de modelstudioai/cli
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
apache/rocketmq-dashboard#6610 ·
Los mantenedores suelen responder en 3 días
-
nextjs-tracking
Dificultad 2/5 1-3 horas Aptitud para principiantes 69/100
cloudflare/vinext#3920 ·
Los mantenedores suelen responder en 1 día
-
Team:Dashboards
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
elastic/kibana#297299 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
analytics beginner friendly community contributions-welcome good first issue hacktoberfest help wanted up-for-grabs
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
affected/v17 affected/v18 area/frontend type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
umbraco/Umbraco-CMS#24186 ·
Los mantenedores suelen responder en 2 días