{"id":"pst_01M44YXG4AW2VJTD52R9080EAJ","url":"https://openvibe.blog/@openvibe/patch-notes-route-lives-chat-producers-through-chats-ingress-behind-a-flag","blog":{"id":"blg_01M362MF0EDJ7QHQTRD8A3Q981","handle":"openvibe","title":"The OpenVibe blog","url":"https://openvibe.blog/"},"title":"Patch notes: Route Live's chat producers through Chat's ingress behind a flag","summary":"What shipped on OpenVibe from 2026-10-04 to 2026-10-05: 76 changes to OpenVibe.Live, OpenVibe.Bot, OpenVibe.Network, OpenVibe.Billing, OpenVibe.Chat, OpenVibe.VIP and 17 more.","body_markdown":"What shipped on OpenVibe from 2026-10-04 to 2026-10-05: 76 changes to OpenVibe.Live, OpenVibe.Bot, OpenVibe.Network, OpenVibe.Billing, OpenVibe.Chat, OpenVibe.VIP and 17 more. Every line below is a commit message from the OpenVibers repositories, linked to the change itself.\n\n## Highlights\n\n- **OpenVibe.Live:** Route Live's chat producers through Chat's ingress behind a flag ([`14ef378`](https://github.com/OpenVibers/OpenVibe.Live/commit/14ef37813f346cac03f4142e40d44592a355cce0))\n- **OpenVibe.Network:** Document that usage rollups are counts, never money, and guard it ([`5c18e5e`](https://github.com/OpenVibers/OpenVibe.Network/commit/5c18e5e6b9c4ee15e149189ec8af329addb5031e))\n- **OpenVibe.Network:** Load the admin panel and account hub from deferred modules ([`b0f1adb`](https://github.com/OpenVibers/OpenVibe.Network/commit/b0f1adb860533e7bf4c15e90a6803737f78a514f))\n- **OpenVibe.Live:** Deliver chat only through Chat's ingress and drop the bridge outbox (#21) ([`c1bd342`](https://github.com/OpenVibers/OpenVibe.Live/commit/c1bd342ca513683782f9d88ab5521baaf1c3b9be))\n- **OpenVibe.Chat:** Retire the Live chat bridge receiver and bridge deploy notices ([`a861c94`](https://github.com/OpenVibers/OpenVibe.Chat/commit/a861c94c20d12f003fd4e52929549355b5213ae3))\n- **OpenVibe.Events:** Move pruned events into a replay tier and read both with one cursor ([`84ec8d9`](https://github.com/OpenVibers/OpenVibe.Events/commit/84ec8d97aacd73781745c6f3ebee25b25ee53889))\n\n## OpenVibe.Live\n\n[openvibe.live](https://openvibe.live) · [repository](https://github.com/OpenVibers/OpenVibe.Live)\n\n- Record n-1 after deploy (auto-finish) ([`1494fd2`](https://github.com/OpenVibers/OpenVibe.Live/commit/1494fd2ae6917475c6224d6eb2d9dcfa42dab666))\n- Route Live's chat producers through Chat's ingress behind a flag ([`14ef378`](https://github.com/OpenVibers/OpenVibe.Live/commit/14ef37813f346cac03f4142e40d44592a355cce0))\n- Stub chat delivery in the global-ban cascade test sandbox ([`26ad801`](https://github.com/OpenVibers/OpenVibe.Live/commit/26ad8019ecebae125c79a388a5a9b426b95a8dca))\n- Record n-1 after deploy (auto-finish) ([`5f71ca6`](https://github.com/OpenVibers/OpenVibe.Live/commit/5f71ca6053b331cb6f6f8ee286db66d19d6d920c))\n- Bind a channel to a Bot robot and expose botembed behind LIVEBOTEMBED (#22) ([`587d1c9`](https://github.com/OpenVibers/OpenVibe.Live/commit/587d1c9e42b2669cc1fe20aefe1cb958f927de94))\n- Record n-1 after deploy (auto-finish) ([`154af01`](https://github.com/OpenVibers/OpenVibe.Live/commit/154af01d1541790f5855067b801036428245e55c))\n- Render the Bot robot panel iframe on bound channel pages ([`53e60b1`](https://github.com/OpenVibers/OpenVibe.Live/commit/53e60b11e3dad7207e538911ace69950a23db665))\n- Allow the Bot origin in frame-src when the channel embed is enabled ([`de82d9b`](https://github.com/OpenVibers/OpenVibe.Live/commit/de82d9bd4ad4d735bfa2a516c70347fbe1e1eee5))\n- Record n-1 after deploy (auto-finish) ([`addb090`](https://github.com/OpenVibers/OpenVibe.Live/commit/addb090b31c8cd2c66c257e4477cf70b694ded72))\n- Deliver chat only through Chat's ingress and drop the bridge outbox (#21) ([`c1bd342`](https://github.com/OpenVibers/OpenVibe.Live/commit/c1bd342ca513683782f9d88ab5521baaf1c3b9be))\n- Record n-1 after deploy (auto-finish) ([`9f6d16d`](https://github.com/OpenVibers/OpenVibe.Live/commit/9f6d16deb002530a81d7dc24f500f6af75d43218))\n- Stop Live through openvibe-sdk gracefulStop and pin the SDK at v0.26.0 ([`37c2907`](https://github.com/OpenVibers/OpenVibe.Live/commit/37c2907ad40d16dd97534badc7501b1772446ca5))\n- Record n-1 after deploy (auto-finish) ([`e2abf7d`](https://github.com/OpenVibers/OpenVibe.Live/commit/e2abf7df8b4583e335b465b92d637822e8018def))\n- Refuse WHIP, browser and JSMPEG ingest for slots on OpenRe ([`9eb8262`](https://github.com/OpenVibers/OpenVibe.Live/commit/9eb8262b0218e965514c6d3d0b13f90d365820d1))\n- Point Go Live WHIP and JSMPEG URLs at OpenRe for switched slots ([`a9cbf04`](https://github.com/OpenVibers/OpenVibe.Live/commit/a9cbf04d1a73c1b5528fe1fa9db31a85477fb15d))\n\n## OpenVibe.Bot\n\n[openvibe.bot](https://openvibe.bot) · [repository](https://github.com/OpenVibers/OpenVibe.Bot)\n\n- Serve the embeddable panel and an anonymous read-only /watch socket ([`91ca8e1`](https://github.com/OpenVibers/OpenVibe.Bot/commit/91ca8e1af456350fab22172603f2972e03cac25c))\n- Add the cutover runbook for the embed panel and watch socket ([`95e3394`](https://github.com/OpenVibers/OpenVibe.Bot/commit/95e33945f09725d8a3b62cb9dcf4f52f1a4da24a))\n- Document the device panel path and profile-driver mapping in README ([`1c9b233`](https://github.com/OpenVibers/OpenVibe.Bot/commit/1c9b2337422f2b1a787703d21cb3f508a42b4aad))\n- Document the two-sided framing contract for the embed panel ([`08a6866`](https://github.com/OpenVibers/OpenVibe.Bot/commit/08a686634dd88e4bc5f1c79101c78b856c7b6f23))\n- Add the cutover runbook for the embed framing contract docs ([`aab2746`](https://github.com/OpenVibers/OpenVibe.Bot/commit/aab2746f279cae9435d4c0cc3a73d09b59f5a087))\n- Serve the internal bot.job.dispatch jobs API for Run ([`824b4d2`](https://github.com/OpenVibers/OpenVibe.Bot/commit/824b4d2c331a7a459dc771eac92800a4a3a4bafb))\n- Add the cutover runbook for the internal jobs dispatch API ([`ee98edc`](https://github.com/OpenVibers/OpenVibe.Bot/commit/ee98edc695344948c9674712d376bfc6926151a1))\n- Pin contracts v0.96.0 and share one jobs service for socket and API (#27) ([`de62736`](https://github.com/OpenVibers/OpenVibe.Bot/commit/de6273603a3a68768c7b973edd760d5bdbedb20e))\n\n## OpenVibe.Network\n\n[openvibe.network](https://openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Network)\n\n- Grant Search identity resolve and notification push on Network ([`b8bd3bb`](https://github.com/OpenVibers/OpenVibe.Network/commit/b8bd3bb971be80203d2b5d27c046f930295dae7c))\n- Document that usage rollups are counts, never money, and guard it ([`5c18e5e`](https://github.com/OpenVibers/OpenVibe.Network/commit/5c18e5e6b9c4ee15e149189ec8af329addb5031e))\n- Serve the sign-in page script from /js/login.js ([`0d22936`](https://github.com/OpenVibers/OpenVibe.Network/commit/0d229362a2d1766048b7cca0e212f0fd88c831c2))\n- Load the admin panel and account hub from deferred modules ([`b0f1adb`](https://github.com/OpenVibers/OpenVibe.Network/commit/b0f1adb860533e7bf4c15e90a6803737f78a514f))\n- Serve llms-full.txt and IndexNow key, grant Trade event manage ([`e82af32`](https://github.com/OpenVibers/OpenVibe.Network/commit/e82af326c81e2e082acc17f3a72328d82c6277ec))\n- Notify an agent's owner when a confirmation waits for their approval (#47) ([`fbd6312`](https://github.com/OpenVibers/OpenVibe.Network/commit/fbd63129e1f472e2fb9c3f43c38f6add07282052))\n- Add an Approvals section to the account hub for agent confirmations (#48) ([`f83dbda`](https://github.com/OpenVibers/OpenVibe.Network/commit/f83dbdaf06debf34e0f834d173c1b242d29f7bbd))\n\n## OpenVibe.Billing\n\n[billing.openvibe.network](https://billing.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Billing)\n\n- Guard declared capabilities exist in the pinned contracts and routes ([`1f473f0`](https://github.com/OpenVibers/OpenVibe.Billing/commit/1f473f02150f76ee89c1d4876d89a9198bdc0da3))\n- Retry failed credit renewals in a pastdue grace before ending them (#12) ([`defae23`](https://github.com/OpenVibers/OpenVibe.Billing/commit/defae23b71571d82fb2db65efeda7f0aa8d52fd4))\n- Refund credit-paid subscription periods and reconcile every paid period ([`ffea53c`](https://github.com/OpenVibers/OpenVibe.Billing/commit/ffea53c89cc281e4123098d16e59bd3cdc57aa41))\n- Turn the 3-day renewal grace on by default ([`e4c4f8a`](https://github.com/OpenVibers/OpenVibe.Billing/commit/e4c4f8aee541eb5791491049e8395303f3e5584a))\n- Move Billing's shutdown onto openvibe-sdk/service gracefulStop (#15) ([`cd637bc`](https://github.com/OpenVibers/OpenVibe.Billing/commit/cd637bcee4c45dac9cddd035203e80666a407d11))\n\n## OpenVibe.Chat\n\n[openvibe.chat](https://openvibe.chat) · [repository](https://github.com/OpenVibers/OpenVibe.Chat)\n\n- Send arena-command replies returned by the effect to the sender ([`b990738`](https://github.com/OpenVibers/OpenVibe.Chat/commit/b9907383110b0fb66c7f1607fa76bb8cc9cbb9a6))\n- Retire the Live chat bridge receiver and bridge deploy notices ([`a861c94`](https://github.com/OpenVibers/OpenVibe.Chat/commit/a861c94c20d12f003fd4e52929549355b5213ae3))\n- Add Chat T3 cutover closeout evidence doc and guard test ([`76aed60`](https://github.com/OpenVibers/OpenVibe.Chat/commit/76aed60cbe14b5518c274c1d12b59f51b16b511b))\n- Run the cutover evidence guard test and assert the PostgreSQL README… ([`facfed1`](https://github.com/OpenVibers/OpenVibe.Chat/commit/facfed12f0ebd291f4ed18d5af45d9781773098d))\n- Serve Live's chat stats, message, timeline, queue and sound reads (#21) ([`9e36de5`](https://github.com/OpenVibers/OpenVibe.Chat/commit/9e36de5bc30a3005c33436c4d1edcd28faeb4436))\n\n## OpenVibe.VIP\n\n[openvibe.vip](https://openvibe.vip) · [repository](https://github.com/OpenVibers/OpenVibe.VIP)\n\n- Record each paid period's charge and expose renewal grace ([`36987e9`](https://github.com/OpenVibers/OpenVibe.VIP/commit/36987e94072ba9320829940938b970cdfead35f3))\n- Document 0002 cutover with backup, verification and rehearsal checks ([`19a9084`](https://github.com/OpenVibers/OpenVibe.VIP/commit/19a9084ce2fb4ab0cd3ee7b16581dcb7a808e4ce))\n- Route VIP's Billing client through openvibe-sdk/commerce ([`1df4c98`](https://github.com/OpenVibers/OpenVibe.VIP/commit/1df4c98c5f26ecb4cddf86699a21528caaff3b34))\n- Give VIP /llms-full.txt and IndexNow (#10) ([`1ffc90c`](https://github.com/OpenVibers/OpenVibe.VIP/commit/1ffc90cda8c6dbbf5f828391ea3a8d45c7bdf320))\n\n## OpenVibe.Media\n\n[openvibe.media](https://openvibe.media) · [repository](https://github.com/OpenVibers/OpenVibe.Media)\n\n- Document the object backfill as a boot-time module and the drift report ([`29cf553`](https://github.com/OpenVibers/OpenVibe.Media/commit/29cf5536bd048e7f255cef6878ca20bda6554313))\n- Queue the CMAF timeline at finalize and sign playlists for longer ([`76f8590`](https://github.com/OpenVibers/OpenVibe.Media/commit/76f859053bda0487aef4e90dcf5d4bc11f66f6fe))\n- Serve clips as virtual windows over the source's timeline (#30) ([`2a55cab`](https://github.com/OpenVibers/OpenVibe.Media/commit/2a55caba9318477783655b6e38526b09b29dd30b))\n\n## OpenVibe.News\n\n[openvibe.news](https://openvibe.news) · [repository](https://github.com/OpenVibers/OpenVibe.News)\n\n- Add /llms-full.txt for indexable stories and adopt publishing v1.3.0 ([`6f9ea2a`](https://github.com/OpenVibers/OpenVibe.News/commit/6f9ea2a267b612bea378f2b6d002f0a7c6762b58))\n- Document openvibe-publishing v1.3.0 and the /llms-full.txt route in… ([`cce86ad`](https://github.com/OpenVibers/OpenVibe.News/commit/cce86adc99db97cecc269c09ebadd916a641af25))\n- The News home opens with what OpenVibe.News is for (plan T11, openvibe-shared/showcase) (#9) ([`a89a510`](https://github.com/OpenVibers/OpenVibe.News/commit/a89a510fc4922169f5e77b0dddaf5b289f57d02c))\n\n## OpenVibe.Search\n\n[search.openvibe.network](https://search.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Search)\n\n- Serve /llms-full.txt route index and the IndexNow key file ([`fe1f83c`](https://github.com/OpenVibers/OpenVibe.Search/commit/fe1f83cf918524e597ceb42cd6dcd44cd1af8566))\n- Proxy /llms-full.txt and the IndexNow key file; tolerate a bad key ([`4c18c00`](https://github.com/OpenVibers/OpenVibe.Search/commit/4c18c006dc56d53bec1df13e5cca682fd5e632bd))\n- Pin openvibe-contracts v0.96.0 and fix the stale OAuth-client note (#11) ([`78379c7`](https://github.com/OpenVibers/OpenVibe.Search/commit/78379c7155a32fc14638c8f21c39740bea2f4202))\n\n## OpenVibe.Tips\n\n[openvibe.tips](https://openvibe.tips) · [repository](https://github.com/OpenVibers/OpenVibe.Tips)\n\n- Add /llms-full.txt with the full text of the public pages ([`ec0a3bf`](https://github.com/OpenVibers/OpenVibe.Tips/commit/ec0a3bf6da43bc7c7ae9f8b237b25d64efd595bb))\n- Add IndexNow key file and ping creator pages on change ([`0a46cb1`](https://github.com/OpenVibers/OpenVibe.Tips/commit/0a46cb150c5feec92d9f32b5b15b91163434d1ce))\n- Build the Billing client on openvibe-sdk/commerce v0.28.0 ([`0481857`](https://github.com/OpenVibers/OpenVibe.Tips/commit/0481857fae7a5246e658368358a1a63e2ea31a81))\n\n## OpenVibe.Wiki\n\n[openvibe.wiki](https://openvibe.wiki) · [repository](https://github.com/OpenVibers/OpenVibe.Wiki)\n\n- Adopt openvibe-publishing v1.3.0 and add /llms-full.txt ([`63e5bdf`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/63e5bdf412d0818293ddc346738e8a6c14e8d4a3))\n- Keep Wiki up when INDEXNOWKEY is invalid and warn instead ([`d1bf414`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/d1bf414bb72837b886d9ee7320f2f35420dcf706))\n- Pin openvibe-contracts v0.96.0 and refresh the docs it names (#9) ([`d44239e`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/d44239e6a7e811e900cca3dcfa46572eb3c6cfbb))\n\n## OpenVibe.Codes\n\n[openvibe.codes](https://openvibe.codes) · [repository](https://github.com/OpenVibers/OpenVibe.Codes)\n\n- Add the opencode harness to the registry and update its tests (#13) ([`a0219da`](https://github.com/OpenVibers/OpenVibe.Codes/commit/a0219da04ac46804a36a914aa2fc88d2165d3a28))\n- Add Codes' /llms-full.txt (#14) ([`49c7fc7`](https://github.com/OpenVibers/OpenVibe.Codes/commit/49c7fc71d19aa8ea922412f708a7fe11112afbb1))\n\n## OpenVibe.Events\n\n[events.openvibe.network](https://events.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Events)\n\n- Move pruned events into a replay tier and read both with one cursor ([`84ec8d9`](https://github.com/OpenVibers/OpenVibe.Events/commit/84ec8d97aacd73781745c6f3ebee25b25ee53889))\n- Post hourly queue-operation readings per project to Billing (#13) ([`12d2aae`](https://github.com/OpenVibers/OpenVibe.Events/commit/12d2aae9b6c540c6ce8f500025ab1a0007a4549c))\n\n## OpenVibe.Host\n\n[openvibe.host](https://openvibe.host) · [repository](https://github.com/OpenVibers/OpenVibe.Host)\n\n- Compose Host's own pages with shell.page and serve llms.txt files ([`0b3f7c7`](https://github.com/OpenVibers/OpenVibe.Host/commit/0b3f7c7575bbbff478a5ae91a4261f51f582efcf))\n- Raise home page JS budgets for the openvibe-shared 2.6.0 scripts ([`ba31aed`](https://github.com/OpenVibers/OpenVibe.Host/commit/ba31aeda451666af87698d1d570950099c570041))\n\n## OpenVibe.Reviews\n\n[openvibe.reviews](https://openvibe.reviews) · [repository](https://github.com/OpenVibers/OpenVibe.Reviews)\n\n- Adopt openvibe-publishing 1.3.0 and add /llms-full.txt with the site… ([`b21ffb8`](https://github.com/OpenVibers/OpenVibe.Reviews/commit/b21ffb8c593af54855125eedb3b44b491150c89c))\n- Pin openvibe-contracts v0.96.0 and drop the proposed-capability fallback (#10) ([`440a865`](https://github.com/OpenVibers/OpenVibe.Reviews/commit/440a865e52f675794ed19177d878c27113058635))\n\n## OpenVibe.Tools\n\n[openvibe.tools](https://openvibe.tools) · [repository](https://github.com/OpenVibers/OpenVibe.Tools)\n\n- Send Billing usage readings under the tools manifest id ([`38f0791`](https://github.com/OpenVibers/OpenVibe.Tools/commit/38f07919863797e9959c248e45b3877be606ff29))\n- Bump openvibe-shared to v2.6.0; add llms-full.txt and IndexNow key file ([`c6fead1`](https://github.com/OpenVibers/OpenVibe.Tools/commit/c6fead1196f6e51916d994ec938930a2cb26220d))\n\n## OpenVibe.AI\n\n[ai.openvibe.network](https://ai.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.AI)\n\n- Add an OpenAI Responses API provider kind (#18) ([`524b9b9`](https://github.com/OpenVibers/OpenVibe.AI/commit/524b9b9165f3a88582cb18f4f7f92981ec626bf1))\n\n## OpenVibe.Blog\n\n[openvibe.blog](https://openvibe.blog) · [repository](https://github.com/OpenVibers/OpenVibe.Blog)\n\n- Add /llms-full.txt and the home AI summary, bump openvibe-publishing… ([`de148d0`](https://github.com/OpenVibers/OpenVibe.Blog/commit/de148d0bedc38f4ce8658a87eba22ed8ddef2377))\n\n## OpenVibe.Coupons\n\n[openvibe.coupons](https://openvibe.coupons) · [repository](https://github.com/OpenVibers/OpenVibe.Coupons)\n\n- Adopt openvibe-publishing v1.3.0 and serve /llms-full.txt ([`b02c7b5`](https://github.com/OpenVibers/OpenVibe.Coupons/commit/b02c7b5e1fd5811977fe8cf3075248fb7b5a84ab))\n\n## OpenVibe.Deals\n\n[openvibe.deals](https://openvibe.deals) · [repository](https://github.com/OpenVibers/OpenVibe.Deals)\n\n- Adopt openvibe-publishing v1.3.0 and serve /llms-full.txt ([`75a7bf7`](https://github.com/OpenVibers/OpenVibe.Deals/commit/75a7bf783e73669bc675cecc81cecbe743cf10ee))\n\n## OpenVibe.Games\n\n[openvibe.games](https://openvibe.games) · [repository](https://github.com/OpenVibers/OpenVibe.Games)\n\n- Adopt openvibe-shared v2.6.0 and serve llms-full.txt plus IndexNow key ([`e277d63`](https://github.com/OpenVibers/OpenVibe.Games/commit/e277d63d6e9b346ea7a30e825d74da10b3b38a73))\n\n## OpenVibe.Sources\n\n[sources.openvibe.network](https://sources.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Sources)\n\n- Pin openvibe-contracts v0.96.0 and close the capability shim (#5) ([`9747246`](https://github.com/OpenVibers/OpenVibe.Sources/commit/9747246a20e6d4648cbd76f06c0798aa46ead005))\n\n## OpenVibe.Trade\n\n[openvibe.trade](https://openvibe.trade) · [repository](https://github.com/OpenVibers/OpenVibe.Trade)\n\n- Adopt openvibe-publishing 1.3.0 and add llms-full.txt ([`8801cd2`](https://github.com/OpenVibers/OpenVibe.Trade/commit/8801cd2ef0e1bef4578527294bbe69a656083305))\n\n---\n\nPatch notes are put together automatically when enough changes have shipped, or when a large feature lands. See every site's own updates page for the live list.","revision":1,"state":"published","visibility":"public","published_at":"2026-10-05T02:40:04.250Z","revised_at":"2026-10-05T02:40:04.239Z","author":{"subject":"usr_01KKT9AC60KM7CRTB3WN1Z8P56","name":"goosely","username":"goosely"},"authorship":{"mode":"imported","workflow":null,"reviewed":false,"disclosure":{"mode":"imported","short":"Imported","long":"Imported from Commit messages from the OpenVibers repositories on GitHub; originally by OpenVibers."}},"tags":["patch-notes","live","bot","network","billing","chat","vip","media","news","search","tips"],"categories":[],"series":{"title":"Patch notes","url":"https://openvibe.blog/@openvibe/series/patch-notes","position":null},"media":[],"citations":[],"indexability":{"indexable":true,"robots":"index, follow","reasons":[]}}