{"id":"pst_01M4XPP1RWBETNRN6P58FMP1ST","url":"https://openvibe.blog/@openvibe/patch-notes-41-changes-across-16-sites","blog":{"id":"blg_01M362MF0EDJ7QHQTRD8A3Q981","handle":"openvibe","title":"The OpenVibe blog","url":"https://openvibe.blog/"},"title":"Patch notes: 41 changes across 16 sites","summary":"What shipped on OpenVibe on 2026-10-14: 41 changes to OpenVibe.Network, OpenVibe.Bot, OpenVibe.Codes, OpenVibe.Games, OpenVibe.Watch, OpenVibe.Actor and 10 more.","body_markdown":"What shipped on OpenVibe on 2026-10-14: 41 changes to OpenVibe.Network, OpenVibe.Bot, OpenVibe.Codes, OpenVibe.Games, OpenVibe.Watch, OpenVibe.Actor and 10 more. Every line below is a commit message from the OpenVibers repositories, linked to the change itself.\n\n## Highlights\n\n- **OpenVibe.Games:** Games: the casual line's kit and Vibe Heroes, an idle hero collector at /play/vibe-heroes (plan T22) (#58) ([`134dbab`](https://github.com/OpenVibers/OpenVibe.Games/commit/134dbaba837cd6b92bc15c224501d5536136f4df))\n- **OpenVibe.Codes:** Codes: run a coding task on your own machine from any browser (/run, openvibe-codes job, through OpenVibe Run); account export and deletion (#62) ([`a05ab78`](https://github.com/OpenVibers/OpenVibe.Codes/commit/a05ab784f1281fa5d5aedc8041e07294f66f45e7))\n- **OpenVibe.Services:** Route resource control requests to owning authorities with confirmations (#54) ([`5c6fed3`](https://github.com/OpenVibers/OpenVibe.Services/commit/5c6fed3fb41a8fa85da993b046fa3d0ef17c4e81))\n\n## OpenVibe.Network\n\n[openvibe.network](https://openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Network)\n\n- Network: a person's own machine stays off the public offers; Run reads it to place their jobs; grants for the worker chain (Bot, Run, Codes) (#177) ([`bfd077c`](https://github.com/OpenVibers/OpenVibe.Network/commit/bfd077c9a871e80e402d9b46163b628109fd0cb7))\n- Network: Codes may subscribe to account export and deletion events (grant events.subscription.manage) (#178) ([`5f69195`](https://github.com/OpenVibers/OpenVibe.Network/commit/5f69195ddf7033f87e42c9b30da5e32af7a52ee5))\n- Network: Codes takes part in account export and deletion (its coding tasks) (#179) ([`4166480`](https://github.com/OpenVibers/OpenVibe.Network/commit/4166480cedbda3cfa366f64d8acbf1734a4a2587))\n- Network: Actor may start, read and cancel a person's coding task on Codes (contracts 0.162) (#180) ([`4c5c87f`](https://github.com/OpenVibers/OpenVibe.Network/commit/4c5c87f08c335c787e98bce6e053374aae053b34))\n- Network: Watch may start a coding task for a watch's owner on Codes (#181) ([`7b6555a`](https://github.com/OpenVibers/OpenVibe.Network/commit/7b6555a2c927c100d461bfed6328548b307cf610))\n- Refresh T2 docs and pins to v0.153.0; mark slice-1 proposals shipped (#171) ([`8db0c95`](https://github.com/OpenVibers/OpenVibe.Network/commit/8db0c955d1d8fe313e8e8aaefe06ef5fedbe9404))\n- Serve the front door, status and updates pages on boost.js (#173) ([`b8dc50b`](https://github.com/OpenVibers/OpenVibe.Network/commit/b8dc50b82bb3567ac7ff3e26b958014b0d27fea4))\n- Network: Space and Watch may record usage with Billing (#182) ([`4ab6fd7`](https://github.com/OpenVibers/OpenVibe.Network/commit/4ab6fd7fccab32dce92f4f29646f494334cddf67))\n- Network: Services may send control requests to Watch (watch.resource.control) (#183) ([`06efd3b`](https://github.com/OpenVibers/OpenVibe.Network/commit/06efd3b8c8370dc02a6de31a259d4f14ccafd887))\n\n## OpenVibe.Bot\n\n[openvibe.bot](https://openvibe.bot) · [repository](https://github.com/OpenVibers/OpenVibe.Bot)\n\n- Bot: a person's own machines that run their jobs (/machines, worker offers to Network, only the owner's jobs reach them) (#98) ([`83b4bd5`](https://github.com/OpenVibers/OpenVibe.Bot/commit/83b4bd5ef46b5ede3357237fbfbf1bebbfa6d56d))\n- Bot: a person's worker machines are in their account export and are revoked on deletion (#99) ([`71f951f`](https://github.com/OpenVibers/OpenVibe.Bot/commit/71f951f403b0675c92e01b2e30c19498c98735fc))\n- Bot: a Network-paired Node's status is accepted (drivers as objects keep their names) (#100) ([`2fb6ee4`](https://github.com/OpenVibers/OpenVibe.Bot/commit/2fb6ee4919d89c7e6252f8bd7f6f00b150927004))\n- Bot: a community model's page shows the Node command that checks its signature (#101) ([`a4d744a`](https://github.com/OpenVibers/OpenVibe.Bot/commit/a4d744a994f151eefa29827d666f9cfab8be35e6))\n\n## OpenVibe.Codes\n\n[openvibe.codes](https://openvibe.codes) · [repository](https://github.com/OpenVibers/OpenVibe.Codes)\n\n- Codes: run a coding task on your own machine from any browser (/run, openvibe-codes job, through OpenVibe Run); account export and deletion (#62) ([`a05ab78`](https://github.com/OpenVibers/OpenVibe.Codes/commit/a05ab784f1281fa5d5aedc8041e07294f66f45e7))\n- Codes 0.3.0 (the job runner a machine runs for openvibe.codes/run) (#63) ([`88b40b4`](https://github.com/OpenVibers/OpenVibe.Codes/commit/88b40b4af8bd217f6152f49e413446b75e81edae))\n- Codes: a task's repository heading breaks only after a slash; a stream that cannot open reloads every 15 s (#64) ([`c8cfb73`](https://github.com/OpenVibers/OpenVibe.Codes/commit/c8cfb73a7bb2951f8f7d3b5021ace5f94d6fb507))\n- Codes: a service starts, reads and cancels a person's coding task (codes.task.*, for Actor) (#65) ([`07b7571`](https://github.com/OpenVibers/OpenVibe.Codes/commit/07b75710fcec938bb5f4d7f3d8774c88f5a6bbda))\n\n## OpenVibe.Games\n\n[openvibe.games](https://openvibe.games) · [repository](https://github.com/OpenVibers/OpenVibe.Games)\n\n- Games: the casual line's kit and Vibe Heroes, an idle hero collector at /play/vibe-heroes (plan T22) (#58) ([`134dbab`](https://github.com/OpenVibers/OpenVibe.Games/commit/134dbaba837cd6b92bc15c224501d5536136f4df))\n- Games: campaign numbers for the casual games (players, first battles, D1/D7 by ad source and campaign; staff only) (#59) ([`d3aee2d`](https://github.com/OpenVibers/OpenVibe.Games/commit/d3aee2d2fcde421a7ac5800839ba8057d0f64c1e))\n- Games: Vibe Heroes passes the browser check (no prohibited aria-labels; the game described without JavaScript) (#60) ([`a8ea178`](https://github.com/OpenVibers/OpenVibe.Games/commit/a8ea17895de14009c4a53e6934ecfd3e08310054))\n- Games: physics loads as a wasm file in the browser (M6: no 4.4 MB base64 chunk) (#61) ([`647ea29`](https://github.com/OpenVibers/OpenVibe.Games/commit/647ea292386b54c0b54a8b2f632757c93b1349d2))\n\n## OpenVibe.Watch\n\n[openvibe.watch](https://openvibe.watch) · [repository](https://github.com/OpenVibers/OpenVibe.Watch)\n\n- Watch: the codes-run action starts a coding task on the owner's own machine (OpenVibe.Codes) (#55) ([`7831dac`](https://github.com/OpenVibers/OpenVibe.Watch/commit/7831dacb2326f19e13b0e016859baf0452f8e0e6))\n- Watch: an event template — a channel going live, a blog post or a wiki page wakes a watch (and your Actor agent) (#56) ([`361f6a8`](https://github.com/OpenVibers/OpenVibe.Watch/commit/361f6a82115239486e8be48db214b82480043e76))\n- Queue one check-operation usage reading per completed check for Billing (#54) ([`bcae3ee`](https://github.com/OpenVibers/OpenVibe.Watch/commit/bcae3ee50e4ef849041a98ff18fd5d478dec2435))\n- Watch: the control API — Services suspends, resumes and deletes a person's watch by its OVRN (ADR-048) (#57) ([`04865f9`](https://github.com/OpenVibers/OpenVibe.Watch/commit/04865f99019ed8a3a3f8c2b9b11899c30f043d8d))\n\n## OpenVibe.Actor\n\n[openvibe.actor](https://openvibe.actor) · [repository](https://github.com/OpenVibers/OpenVibe.Actor)\n\n- Actor: coding tasks go to OpenVibe.Codes and run on the person's own machine (the codes agent) (#50) ([`454de4b`](https://github.com/OpenVibers/OpenVibe.Actor/commit/454de4b6cb7fabd6240bb2f2742fc6e936495126))\n- Actor: an approval inbox — a person's agent asks before it starts a coding task on their machine (#51) ([`268b894`](https://github.com/OpenVibers/OpenVibe.Actor/commit/268b89406586d031dfd60a2a17851b92789c656c))\n- Actor: an agent's page offers to wake it when something happens (through OpenVibe.Watch) (#52) ([`5539b03`](https://github.com/OpenVibers/OpenVibe.Actor/commit/5539b03bf6e198fb604f22acb861f552752b41b7))\n\n## OpenVibe.Search\n\n[search.openvibe.network](https://search.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Search)\n\n- Update README status and production indexing claims to 2026-10-10 ([`b975f54`](https://github.com/OpenVibers/OpenVibe.Search/commit/b975f54bbb504902eb5e4a5eea191c86fe710951))\n- Record Network saved-search notifications, current event owners and… (#51) ([`4c5c58f`](https://github.com/OpenVibers/OpenVibe.Search/commit/4c5c58fc04be9f0c0eaf60d3c940495a1efc71f0))\n\n## OpenVibe.Services\n\n[openvibe.services](https://openvibe.services) · [repository](https://github.com/OpenVibers/OpenVibe.Services)\n\n- Route resource control requests to owning authorities with confirmations (#54) ([`5c6fed3`](https://github.com/OpenVibers/OpenVibe.Services/commit/5c6fed3fb41a8fa85da993b046fa3d0ef17c4e81))\n- Services: contracts 0.165 — Watch is the first authority that takes control requests (#55) ([`5dc7c20`](https://github.com/OpenVibers/OpenVibe.Services/commit/5dc7c20c82c39d0f68e40ebab8781d9d7f40201b))\n\n## OpenVibe.Sources\n\n[sources.openvibe.network](https://sources.openvibe.network) · [repository](https://github.com/OpenVibers/OpenVibe.Sources)\n\n- Sources: 18 more Steam review-signal seeds, the same kind as Portal 2's (#44) ([`db375ea`](https://github.com/OpenVibers/OpenVibe.Sources/commit/db375eaa9483a35c7f8161ee4b6d460ea6478d66))\n- Sources: extract facts a feed's items state (coupon codes from DealNews for Coupons) (#45) ([`19aa00d`](https://github.com/OpenVibers/OpenVibe.Sources/commit/19aa00d7c4c7ff506fed9db15cde58febb225fb7))\n\n## OpenVibe.Blog\n\n[openvibe.blog](https://openvibe.blog) · [repository](https://github.com/OpenVibers/OpenVibe.Blog)\n\n- Store request telemetry in Postgres with daily retention (#42) ([`b716782`](https://github.com/OpenVibers/OpenVibe.Blog/commit/b7167827834389bd2a6e4d580fb7edd16992e7f9))\n\n## OpenVibe.Coupons\n\n[openvibe.coupons](https://openvibe.coupons) · [repository](https://github.com/OpenVibers/OpenVibe.Coupons)\n\n- Coupons: a source that names the shop (DealNews) files its code under that shop (#47) ([`d5a3953`](https://github.com/OpenVibers/OpenVibe.Coupons/commit/d5a3953a6e33c2d94261e25c595d9ef6a7b21670))\n\n## OpenVibe.MediaHub\n\n[openvibe.video](https://openvibe.video) · [repository](https://github.com/OpenVibers/OpenVibe.MediaHub)\n\n- MediaHub: Video plays Live's file_url as the file (ready for playback_url becoming the HLS playlist) (#42) ([`c245b73`](https://github.com/OpenVibers/OpenVibe.MediaHub/commit/c245b734d593427d0325a5ef33fa81babe18188d))\n\n## OpenVibe.News\n\n[openvibe.news](https://openvibe.news) · [repository](https://github.com/OpenVibers/OpenVibe.News)\n\n- News: the wire — what the sources report, grouped, on the front page and at /wire (labelled, never News' writing) (#49) ([`733706a`](https://github.com/OpenVibers/OpenVibe.News/commit/733706a9e0b24f72d8b40240ec4bd98ce6c3e1cc))\n\n## OpenVibe.Space\n\n[openvibe.space](https://openvibe.space) · [repository](https://github.com/OpenVibers/OpenVibe.Space)\n\n- Emit daily gb-month storage readings to Billing in local store mode (#43) ([`75c2944`](https://github.com/OpenVibers/OpenVibe.Space/commit/75c2944c645f76c0176352c5e4154d9b7723dbf2))\n\n## OpenVibe.Tips\n\n[openvibe.tips](https://openvibe.tips) · [repository](https://github.com/OpenVibers/OpenVibe.Tips)\n\n- Pin Shared workflows to aa570e4 and enable the docs-status CI check (#49) ([`b427d71`](https://github.com/OpenVibers/OpenVibe.Tips/commit/b427d71360e4875a493e05246085256a92fbe3bc))\n\n## OpenVibe.Wiki\n\n[openvibe.wiki](https://openvibe.wiki) · [repository](https://github.com/OpenVibers/OpenVibe.Wiki)\n\n- Pin Shared workflows to aa570e4 and enable the docs-status check (#47) ([`017b7ce`](https://github.com/OpenVibers/OpenVibe.Wiki/commit/017b7cef355ea27739937d8622e410320ff16bdd))\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-14T17:17:12.372Z","revised_at":"2026-10-14T17:17:12.357Z","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","network","bot","codes","games","watch","actor","search","services","sources","blog"],"categories":[],"series":{"title":"Patch notes","url":"https://openvibe.blog/@openvibe/series/patch-notes","position":null},"media":[],"citations":[],"indexability":{"indexable":true,"robots":"index, follow","reasons":[]}}