HKUDS/DeepTutor · error · PathBindingError
No mastery path {path_id!r} exists. Call mastery_paths for t
Error message
No mastery path {path_id!r} exists. Call mastery_paths for the ids you can switch to, or mastery_build to create one here. What it means
Error "No mastery path {path_id!r} exists. Call mastery_paths for the ids you can switch to, or mastery_build to create one here." thrown in HKUDS/DeepTutor.
Source
Thrown at deeptutor/capabilities/mastery/binding.py:63
session_id: str,
turn_id: str,
bind_turn: PathBinder | None,
require_existing: bool = True,
) -> str:
"""Move this turn (and the conversation) onto ``path_id``.
Returns the resolved path id. Raises :class:`PathBindingError` when the
target does not exist or is busy in another conversation.
"""
from deeptutor.learning.storage import (
LearningStore,
PathLeaseConflictError,
)
target = sanitize_mastery_path_id(path_id)
store = LearningStore()
if require_existing and not await asyncio.to_thread(store.exists, target):
raise PathBindingError(
f"No mastery path {path_id!r} exists. Call mastery_paths for the "
"ids you can switch to, or mastery_build to create one here."
)
# One lease row per turn: the old one has to go before the new one can be
# taken, and both are scoped to this turn so a concurrent conversation on
# either path is never disturbed.
released = await asyncio.to_thread(store.release_leases_for_turn, turn_id)
try:
await asyncio.to_thread(store.acquire_path_lease, target, session_id, turn_id)
except PathLeaseConflictError as exc:
# Put the learner back where they were rather than stranding the turn
# with no lease at all.
if released and released != target:
with contextlib.suppress(Exception):
await asyncio.to_thread(store.acquire_path_lease, released, session_id, turn_id)
raise PathBindingError(
f"Mastery path {target!r} is being tutored in another conversation "View on GitHub (pinned to 3e82f13042)
When it happens
Trigger: Thrown at deeptutor/capabilities/mastery/binding.py:63 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of HKUDS/DeepTutor@3e82f13042 (2026-08-27).
Data as JSON: /api/errors/d66c2b821690fca9.
Report an issue: GitHub.