rohitg00/ai-engineering-from-scratch · error · EventStreamError

every event needs a type

Error message

every event needs a type

What it means

Error "every event needs a type" thrown in rohitg00/ai-engineering-from-scratch.

Source

Thrown at certifications/claude/lessons/12-claude-agent-sdk-and-hooks/code/main.py:59

            "preview_text": self.preview_text,
            "complete": self.complete,
        }


def consume_managed_events(events: Iterable[dict[str, Any]]) -> EventSummary:
    """Consume persisted events and optional stream previews without network access."""
    status = "unknown"
    stop_reason: str | None = None
    messages: list[str] = []
    preview_parts: list[str] = []
    actionable: set[str] = set()
    pending: set[str] = set()
    seen: set[str] = set()
    last_event_id: str | None = None

    for event in events:
        if not isinstance(event, dict) or not isinstance(event.get("type"), str):
            raise EventStreamError("every event needs a type")
        event_type = event["type"]
        if event_type in {"event_start", "event_delta"}:
            if event_type == "event_delta" and isinstance(event.get("text"), str):
                preview_parts.append(event["text"])
            continue

        event_id = event.get("id")
        if not isinstance(event_id, str) or not event_id:
            raise EventStreamError("persisted events need a non-empty id")
        if event_id in seen:
            continue
        seen.add(event_id)
        last_event_id = event_id

        if event_type == "session.status_running":
            status = "running"
            stop_reason = None
        elif event_type == "agent.message":

View on GitHub (pinned to 39ea8a1c6d)

When it happens

Trigger: Thrown at certifications/claude/lessons/12-claude-agent-sdk-and-hooks/code/main.py:59 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of rohitg00/ai-engineering-from-scratch@39ea8a1c6d (2026-08-26). Data as JSON: /api/errors/d0c4cd57a95d3583. Report an issue: GitHub.