await_print_completion
Wait for a 3D print to finish and get its final status, including completion percentage and optional design goal matching. Avoid manual polling loops.
Instructions
Wait for the current print to finish and return the final status.
Polls the printer (or a specific queued job) until it reaches a
terminal state: completed, failed, cancelled, or the timeout is
exceeded. This lets agents fire-and-forget a print and pick up the
result later without managing their own polling loop.
Args:
job_id: Optional job ID from ``submit_job()``. When provided,
tracks that specific job through the queue/scheduler. When
omitted, monitors the printer directly for idle/error state.
timeout: Maximum seconds to wait (default 7200 = 2 hours).
poll_interval: Seconds between status checks (default 15).
brief_id: Optional saved-goal id from ``design_session``. When
the brief resolves, the terminal-outcome response gains a
``design_goal`` block with the design's duty / environment /
safety notes — so the agent surfacing the print result can
answer "did this match the goal?" without a separate
lookup. Best-effort: missing kiln-pro silently skips.
Returns a dict with ``outcome`` (completed / failed / cancelled /
timeout), final printer state, elapsed time, completion percentage
history, and (when ``brief_id`` resolves) a ``design_goal`` block.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | No | ||
| timeout | No | ||
| brief_id | No | ||
| poll_interval | No |