spectrum-ts v2.0.0
Breaking Changes
defineFusorPlatformis gone. Fusor-backed providers now use the regulardefinePlatformAPI withfusor(...); seedfa28de.
New Features
-
Added a first-class Telegram provider with inbound webhooks through Fusor and outbound Bot API support. It handles text, media, reactions, replies, typing, edits, custom calls, and lazy media downloads.
-
Added
streamText(...)for sending streaming LLM output as Spectrum content. Remote iMessage can now send the first chunk immediately and edit the message as more text arrives. 🚀 -
Added Fusor custom event channels with
fusorEvent(...). Fusor providers can now emit non-message events like presence or receipts into typedapp.<event>streams.
Bug Fixes
-
Fixed a
Spectrum.stop()deadlock that could happen when provider streams were waiting on pending reads. Shutdown now cancels streams more reliably and has a timeout safety net. -
Fixed primitive custom event payloads so strings, numbers, and booleans are wrapped safely instead of being spread into broken objects.
-
Fixed Telegram multipart encoding for array/object fields so Bot API uploads serialize those fields correctly.
-
Platform narrowing now logs structured warnings on platform mismatches instead of crashing execution.
Improvement
-
Rebuilt Telegram on the generated
@photon-ai/telegram-tsclient, replacing the hand-written Bot API client with typed generated calls. -
Telegram can auto-register its Fusor webhook on startup when cloud project metadata is available.
-
Added CI, typecheck, and test scripts, plus a cleaner
test/layout with shared fixtures.
Version: 2.0.0