- plans/parts/plugin-upgrade-guide.md gains a "Storage: the DAG
message store (transparent to plugins)" section. Highlights the
two things plugin authors actually need to know: provider_metadata
is part of message identity (so echo it verbatim), and floats in
provider_metadata are rejected at hash time.
- plans/dag-schema.md's "Suggested implementation sequence" is
replaced with an "Implementation status" section reflecting what
actually shipped across the five commits, plus a Deferred section
listing llm logs tree view, full provider-adapter DAG reads, and
the eventual drop of responses writes.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add notes about: requiring response.add_tool_call() alongside StreamEvents
for tool calls, yield from limitation in async generators, filtering empty
text chunks, and astream_events() vs stream_events() for async.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Covers: importing StreamEvent, converting yield str to yield
StreamEvent for text/reasoning/tool calls/server-side tools, part
index tracking, handling opaque reasoning tokens, testing patterns,
and the special case of plugins that inherit from built-in models.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>