Bug: Subprocess logs not captured - cannot debug model start failures #8
Labels
No labels
blocked:lint-failed
blocked:needs-decision
blocked:no-changes
blocked:no-procedure
blocked:preflight
blocked:verify-failed
bug
feature-request
in-progress
lint-cleanup
ops-task
quickfix
security/high
security/medium
test-coverage
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/vllm_mm#8
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Bug: Subprocess logs not captured - can't debug model start failures
Description:
After refactoring to use subprocess-only architecture (no Docker containers for model serving), error debugging is broken. When models fail to start, container logs only show:
llama.cpp not ready after 600sWorker 0 error: invalid stateThe actual subprocess stdout/stderr is never captured or exposed. This makes it impossible to debug why models fail to start.
Steps to reproduce:
Expected:
Impact:
Additional context:
⏸ Needs Decision
Blocking factors:
Scope: small Risk: medium Spec: aligned Type: bug
Summary: Fix subprocess stdout/stderr capture in process_manager.py so model start failures produce debuggable logs instead of silent timeouts
Suggestion: Redirect subprocess.Popen stdout/stderr to timestamped log files in a dedicated directory, expose log file paths via the model status API, and add a GET /api/models/{id}/logs endpoint to fetch subprocess output
Rationale: Small scope: the fix is concentrated in process_manager.py (log redirection) plus a lightweight log-serving endpoint and a status response field. Medium risk because it touches the core process lifecycle code where any regression would silently break model serving. Fully aligned with the project's subprocess-only architecture and the explicit AGENTS.md Process Management docstring.
Action: Review each blocking factor above. Remove
blocked:needs-decisionlabel to route back to triage.