{"service":"ai","entries":[{"service":"ai","sha":"b2ea9d1560268eda02b1a96a29899ea84976efba","short":"b2ea9d1","subject":"ai.run.* events (W13 gate): queued, cached, succeeded and failed runs each queue their openvibe-contracts ai.run.<status>@1 event in the same transaction as the state change (succeeded with its citations; interrupted runs at boot too)…","author":"OpenVibers","committed_at":"2026-09-24T06:23:34Z","deployed_at":"2026-09-24T06:23:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/b2ea9d1560268eda02b1a96a29899ea84976efba","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"ai","sha":"bc26762f15106b7fce52dd70eaca16f22128cdd3","short":"bc26762","subject":"One W3C trace across services (Track O): openvibe-shared v1.7.0 trace.install(app) keeps each request's traceparent and puts it on the calls made while serving it, to loopback and OpenVibe hosts only","author":"OpenVibers","committed_at":"2026-09-24T06:16:05Z","deployed_at":"2026-09-24T06:23:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/bc26762f15106b7fce52dd70eaca16f22128cdd3","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"ai","sha":"beee29446455ce7f14b5f952a4969f44e45d66e5","short":"beee294","subject":"CI calls the shared test workflow (Track Q): OpenVibe.Shared test.yml@e8b0caf (install, node --check, npm test, openvibe-contracts-check; ffmpeg where the tests need it) instead of a copy of those steps","author":"OpenVibers","committed_at":"2026-09-24T05:46:42Z","deployed_at":"2026-09-24T06:23:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/beee29446455ce7f14b5f952a4969f44e45d66e5","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"ai","sha":"a6d4f39b6562dbd70a343a7d1c61ad46f57c3826","short":"a6d4f39","subject":"SECURITY.md: how to report a vulnerability (contact@openvibe.network, 7-day reply, scope, supported versions)","author":"OpenVibers","committed_at":"2026-09-24T02:27:21Z","deployed_at":"2026-09-24T06:23:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/a6d4f39b6562dbd70a343a7d1c61ad46f57c3826","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"ai","sha":"f034a9f869c0e5feaf86d22d4092b6c944d7538f","short":"f034a9f","subject":"openvibe-shared v1.5.1, openvibe-contracts v0.33.0","author":"OpenVibers","committed_at":"2026-09-23T23:18:34Z","deployed_at":"2026-09-23T23:18:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/f034a9f869c0e5feaf86d22d4092b6c944d7538f","post_id":null},{"service":"ai","sha":"772262c303dc595b1e065005dee77cd08629f298","short":"772262c","subject":"openvibe-shared v1.5.0 (Track R release manifest), openvibe-contracts v0.32.0","author":"OpenVibers","committed_at":"2026-09-23T22:18:49Z","deployed_at":"2026-09-23T22:18:49.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/772262c303dc595b1e065005dee77cd08629f298","post_id":null},{"service":"ai","sha":"3a480ac9f20ca018f5c2c8973f92d32dbe1a44cd","short":"3a480ac","subject":"CI: run the shared security workflow (gitleaks secret scan + dependency audit, Track Q)","author":"OpenVibers","committed_at":"2026-09-23T19:33:55Z","deployed_at":"2026-09-23T19:33:55.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/3a480ac9f20ca018f5c2c8973f92d32dbe1a44cd","post_id":null},{"service":"ai","sha":"96dc8a3d9c563e2aa11db2f2e04427f4e1b14797","short":"96dc8a3","subject":"Track O: /metrics for direct loopback callers and a truthful /api/ready (openvibe-shared v1.3.0)","author":"OpenVibers","committed_at":"2026-09-23T18:56:06Z","deployed_at":"2026-09-23T18:56:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/96dc8a3d9c563e2aa11db2f2e04427f4e1b14797","post_id":null},{"service":"ai","sha":"b92f5ef0e0d96dc5273888ab18d2a98b0eb2ec71","short":"b92f5ef","subject":"Docs: STATUS.json and README match production (2026-09-23)","author":"OpenVibers","committed_at":"2026-09-23T18:33:39Z","deployed_at":"2026-09-23T18:33:39.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/b92f5ef0e0d96dc5273888ab18d2a98b0eb2ec71","post_id":null},{"service":"ai","sha":"bdca064a8204a4feba9399563489408d33b4cc0e","short":"bdca064","subject":"Run queue caps: a run that would wait for a slot is refused 429 queue.full (problem+json, Retry-After) once its caller already has AI_MAX_QUEUED_RUNS_PER_CALLER runs waiting (default 50) or the queue holds AI_MAX_QUEUED_RUNS (default 200)…","author":"OpenVibers","committed_at":"2026-09-23T16:37:39Z","deployed_at":"2026-09-23T16:37:39.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/bdca064a8204a4feba9399563489408d33b4cc0e","post_id":null},{"service":"ai","sha":"549ec14b29373e13e9745feb53e485c91c53b30f","short":"549ec14","subject":"Schema cache: the compiled-validator cache shared by every caller (ai.extract/ai.enrich schemas are caller-supplied) is an LRU capped by entry count and total schema bytes (AI_SCHEMA_CACHE_MAX=500, AI_SCHEMA_CACHE_MAX_BYTES=8 MiB); evicted…","author":"OpenVibers","committed_at":"2026-09-23T16:36:04Z","deployed_at":"2026-09-23T16:36:04.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/549ec14b29373e13e9745feb53e485c91c53b30f","post_id":null},{"service":"ai","sha":"690b06820c0d0d22567a18c93d57cb344fb91b08","short":"690b068","subject":"Fetcher: a redirect from a public allow-listed host may not reach the internal Media origin. Every hop was judged, but judge() let the internal origin through on any hop, so an allow-listed host that redirects could make the service fetch…","author":"OpenVibers","committed_at":"2026-09-23T16:34:23Z","deployed_at":"2026-09-23T16:34:23.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/690b06820c0d0d22567a18c93d57cb344fb91b08","post_id":null},{"service":"ai","sha":"f75c66b5085cd80726cb504a80bdd48b11aa1798","short":"f75c66b","subject":"Namespaces fail closed: a token without an ns claim no longer runs every namespace's workflows. A service token (svc:<id>) without ns falls back to its AI_NS_FALLBACK entry (default live=live.*|network.site_copy, since Network grants…","author":"OpenVibers","committed_at":"2026-09-23T16:33:34Z","deployed_at":"2026-09-23T16:33:34.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/f75c66b5085cd80726cb504a80bdd48b11aa1798","post_id":null},{"service":"ai","sha":"8928289b72118c5d67ab0f57e5c521d850e32999","short":"8928289","subject":"nginx: client address headers only from $remote_addr (realip). X-Forwarded-For was appended to and CF-Connecting-IP passed through from the client, so a request reaching the origin without Cloudflare (DNS-only host or the bare IP) chose…","author":"OpenVibers","committed_at":"2026-09-23T16:14:07Z","deployed_at":"2026-09-23T16:14:07.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/8928289b72118c5d67ab0f57e5c521d850e32999","post_id":null},{"service":"ai","sha":"ef314f7b24c1fc8246fe15253d08b239085b325e","short":"ef314f7","subject":"Provider circuit breaker ignores caller-caused 4xx: a few malformed requests from one caller (bad image, oversized max_tokens, invalid schema) no longer open the circuit and take the shared provider away from every other caller","author":"OpenVibers","committed_at":"2026-09-23T15:51:57Z","deployed_at":"2026-09-23T15:51:57.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/ef314f7b24c1fc8246fe15253d08b239085b325e","post_id":null},{"service":"ai","sha":"2e7b6fdf0975303c059523348bf4cf45bec7be5a","short":"2e7b6fd","subject":"openvibe-contracts v0.29.0 (ai manifest and capabilities released); contracts check is blocking","author":"OpenVibers","committed_at":"2026-09-23T14:47:49Z","deployed_at":"2026-09-23T14:47:49.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/2e7b6fdf0975303c059523348bf4cf45bec7be5a","post_id":null},{"service":"ai","sha":"3d9e0fa0d3e10e0854d8330bc0d1f038b681393d","short":"3d9e0fa","subject":"Move Live's AI here: import script for its AI records, migration plan, and the Live patch that adds AI_SERVICE=remote","author":"OpenVibers","committed_at":"2026-09-23T14:46:08Z","deployed_at":"2026-09-23T14:46:08.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/3d9e0fa0d3e10e0854d8330bc0d1f038b681393d","post_id":null},{"service":"ai","sha":"87d38e314fc4db7d43f4d48b192faa4fbbd84530","short":"87d38e3","subject":"Capability proposals (ai.run.create, ai.run.read, ai.workflow.manage, ai.provider.manage, ai.usage.read) and the ai service manifest; README, .env.example, systemd unit, nginx vhost, CI on Node 22.22.1, STATUS alpha W13","author":"OpenVibers","committed_at":"2026-09-23T14:46:08Z","deployed_at":"2026-09-23T14:46:08.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/87d38e314fc4db7d43f4d48b192faa4fbbd84530","post_id":null},{"service":"ai","sha":"8ecc6746363c12a2afeb28205d14d6927f7c0921","short":"8ecc674","subject":"AI service: providers, routing with fallback and circuit breaker, versioned templates/workflows/routes, runs, request log, citations, scoped cache, quotas and audit","author":"OpenVibers","committed_at":"2026-09-23T14:46:02Z","deployed_at":"2026-09-23T14:46:02.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/8ecc6746363c12a2afeb28205d14d6927f7c0921","post_id":null},{"service":"ai","sha":"3813e51bed8c624683fbf140974c9ee7c3b922e1","short":"3813e51","subject":"Charter: OpenVibe.AI as defined in the OpenVibe realignment plan (placeholder, no code yet)","author":"OpenVibers","committed_at":"2026-09-21T16:18:20Z","deployed_at":"2026-09-21T16:18:20.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.AI/commit/3813e51bed8c624683fbf140974c9ee7c3b922e1","post_id":null}],"next":null,"latest_post":{"id":"pst_01M39313D833G8QVPQ9FGEEF5E","title":"Patch notes: 120 changes across 18 sites","url":"https://openvibe.blog/@openvibe/patch-notes-120-changes-across-18-sites","published_at":1790232792495,"entries":120},"posts":[{"id":"pst_01M39313D833G8QVPQ9FGEEF5E","title":"Patch notes: 120 changes across 18 sites","url":"https://openvibe.blog/@openvibe/patch-notes-120-changes-across-18-sites","published_at":1790232792495,"entries":120}]}