Skip to content

Comments

feat: implement canonical warmup cords (kick + status)#43

Open
Dairus01 wants to merge 1 commit intochutesai:mainfrom
Dairus01:warmup-cords
Open

feat: implement canonical warmup cords (kick + status)#43
Dairus01 wants to merge 1 commit intochutesai:mainfrom
Dairus01:warmup-cords

Conversation

@Dairus01
Copy link

@Dairus01 Dairus01 commented Dec 9, 2025

Summary

This PR implements the "Canonical Warmup Cords" as requested in Issue #31. It adds a standardized, versioned interface for operators to trigger and monitor the warmup process for Chutes deployments.

Changes

  • chutes/chute/base.py:
    • Added WarmupState Pydantic model with versioned schema chutes.warmup.status.v1.
    • Updated Chute class to include background warmup logic (_do_warmup).
    • Added endpoints:
      • POST /warmup/kick: Triggers the warmup process (idempotent). Returns 202 Accepted.
      • GET /warmup/status: Returns the current warmup status, phase, and progress.
    • Implemented a readiness bridge that polls /v1/models to confirm when the model is truly ready before reporting state: ready.

Related Issue

Closes #31

Verification

  • Added a new test file tests/test_warmup_cords.py to verify the state transitions and schema compliance.
  • Verified that /warmup/kick correctly initiates the background task.
  • Verified that /warmup/status returns the correct JSON schema and advances through phases (pulling, loading, tokenizer, tiny_infer, ready).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Request: Canonical warmup cords (kick + status) with versioned schema and readiness bridge

1 participant