0.6.7

Google ADK: push() no longer throws on live or malformed events

A patch to @silverprotocol/google-adk. The wire vocabulary is untouched (AGJSON_VERSION stays 1.0.0-draft.3), no peer versions moved, and @silverprotocol/core, @silverprotocol/claude-agent-sdk, @silverprotocol/openai-agents, @silverprotocol/vercel-ai and @silverprotocol/richtext change only their version number.

Google ADK

  • push() no longer throws on live or malformed ADK events (SPEC.md §8.0). A host that pushes the Event objects ADK yields, as the README shows, can hand the normalizer members that are not JSON: undefined, a Date, a BigInt, a cycle. Each event is now read once as plain JSON before anything maps it: a Date becomes its ISO string, a BigInt its decimal string, a repeated ancestor "[Circular]", and members JSON would drop are dropped.
  • An event that still cannot be mapped (for example, one whose parts are not a list) is dropped whole and reported once as a non-fatal core error event (message: "normalizer error", code: the error’s constructor name, no payload). Apart from that report, the stream is the same as if the event had never arrived. If flush() itself fails, it is reported the same way and still ends the open message and turn. An event with nothing serializable at all is reported once as ext.google.unparsed, with a reason in place of its content.
  • A live Error inside an event now rides as {name, message} plus its own enumerable fields (without its stack). An app tool that returns an Error as its value now folds that message into tool.done; before this release, pushing that live event threw.
  • Hardens how ADK workflow node data is carried.

The compatibility tables on each npm page are unchanged.