{"service":"deals","entries":[{"service":"deals","sha":"c2ad40a0be8af6813fe1cf8663805bc33bddfa6d","short":"c2ad40a","subject":"The shared update system and one account UI, on the OpenVibe Frame (openvibe-shared 1.11.0, openvibe/frame): the home shows what shipped, /updates is the shared log and the footer links it; the shared navbar handles sign in and out…","author":"OpenVibers","committed_at":"2026-09-24T07:55:44Z","deployed_at":"2026-09-24T07:55:44.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/c2ad40a0be8af6813fe1cf8663805bc33bddfa6d","post_id":null},{"service":"deals","sha":"e50a4d0658184abdf9021b9ab88bde397da6680f","short":"e50a4d0","subject":"CI calls the shared test workflow (Track Q): OpenVibe.Shared .github/workflows/test.yml@f5e7e73 (install, node --check over server/ and scripts/, npm test, openvibe-contracts-check) instead of a copy of those steps","author":"OpenVibers","committed_at":"2026-09-24T05:43:53Z","deployed_at":"2026-09-24T07:55:44.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/e50a4d0658184abdf9021b9ab88bde397da6680f","post_id":null},{"service":"deals","sha":"3910b58cd10a700a22c6c7129cd4c1c1e586cc95","short":"3910b58","subject":"openvibe-publishing v0.2.2 (shares the openvibe-shared v1.5.1 copy instead of installing v1.0.0 alongside)","author":"OpenVibers","committed_at":"2026-09-24T02:33:27Z","deployed_at":"2026-09-24T02:33:27.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/3910b58cd10a700a22c6c7129cd4c1c1e586cc95","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"deals","sha":"d12cfbfb1417e5a187c197cf0b7184bf1f12e364","short":"d12cfbf","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:31Z","deployed_at":"2026-09-24T02:33:27.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/d12cfbfb1417e5a187c197cf0b7184bf1f12e364","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"deals","sha":"24d52a2674f1277f2a0237064d9f2cab8d7f5485","short":"24d52a2","subject":"Importer: deals.offer.updated names every field an observation moved (expires_at, product_id, title, status), not just 'observation', so consumers never miss a changed field","author":"OpenVibers","committed_at":"2026-09-24T02:08:59Z","deployed_at":"2026-09-24T02:33:27.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/24d52a2674f1277f2a0237064d9f2cab8d7f5485","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"deals","sha":"f453cb57a8f17f63635ddc0ce3a7b82c2a1f2ffa","short":"f453cb5","subject":"openvibe-shared v1.5.1, openvibe-contracts v0.33.0","author":"OpenVibers","committed_at":"2026-09-23T23:15:52Z","deployed_at":"2026-09-23T23:15:52.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/f453cb57a8f17f63635ddc0ce3a7b82c2a1f2ffa","post_id":null},{"service":"deals","sha":"603ff5bcafb9d37efb0eaa2cd26fdbd8cf8ed8e1","short":"603ff5b","subject":"openvibe-shared v1.5.0 (Track R release manifest), openvibe-contracts v0.32.0, openvibe-sdk v0.5.0","author":"OpenVibers","committed_at":"2026-09-23T22:26:01Z","deployed_at":"2026-09-23T22:26:01.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/603ff5bcafb9d37efb0eaa2cd26fdbd8cf8ed8e1","post_id":null},{"service":"deals","sha":"91ca2235e0a4c7018a0b0bf5f49ba1f32db6d018","short":"91ca223","subject":"CI: run the shared security workflow (gitleaks secret scan + dependency audit, Track Q)","author":"OpenVibers","committed_at":"2026-09-23T19:33:56Z","deployed_at":"2026-09-23T19:33:56.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/91ca2235e0a4c7018a0b0bf5f49ba1f32db6d018","post_id":null},{"service":"deals","sha":"e7b8da0a7c581d48298e5303c4024e68ef2c1376","short":"e7b8da0","subject":"Docs: STATUS.json and README match production (2026-09-23)","author":"OpenVibers","committed_at":"2026-09-23T18:32:45Z","deployed_at":"2026-09-23T18:32:45.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/e7b8da0a7c581d48298e5303c4024e68ef2c1376","post_id":null},{"service":"deals","sha":"e72aeeccb662d8e99cfbcb0e51c624592fc408e1","short":"e72aeec","subject":"Events webhook requires signature v2 (replay window); openvibe-sdk v0.4.0","author":"OpenVibers","committed_at":"2026-09-23T17:01:49Z","deployed_at":"2026-09-23T17:01:49.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/e72aeeccb662d8e99cfbcb0e51c624592fc408e1","post_id":null},{"service":"deals","sha":"ac82f60d2e0435390fd41220d901f261cdac1db3","short":"ac82f60","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:14Z","deployed_at":"2026-09-23T16:14:14.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/ac82f60d2e0435390fd41220d901f261cdac1db3","post_id":null},{"service":"deals","sha":"c1b58e6419ea70d5ba919a1f2c08bd237e6473f9","short":"c1b58e6","subject":"openvibe-publishing v0.2.1 (ReDoS fixes in ssr markdown)","author":"OpenVibers","committed_at":"2026-09-23T16:07:22Z","deployed_at":"2026-09-23T16:07:22.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/c1b58e6419ea70d5ba919a1f2c08bd237e6473f9","post_id":null},{"service":"deals","sha":"3f5fa5b6a5b318a6cfde36fe733780436167ae8d","short":"3f5fa5b","subject":"App and module tokens act only for their on_behalf_of person; sandbox tokens refused","author":"OpenVibers","committed_at":"2026-09-23T15:53:46Z","deployed_at":"2026-09-23T15:53:46.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/3f5fa5b6a5b318a6cfde36fe733780436167ae8d","post_id":null},{"service":"deals","sha":"22978517fe28147000cc70c40c9e1a3f11b5d2cc","short":"2297851","subject":"API: a moderator-removed deal answers 410 like its page instead of serving its title, description and link; moderators still read it","author":"OpenVibers","committed_at":"2026-09-23T15:48:05Z","deployed_at":"2026-09-23T15:48:05.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/22978517fe28147000cc70c40c9e1a3f11b5d2cc","post_id":null},{"service":"deals","sha":"dd08793e6a1166418810f4662da022fd7b31e652","short":"dd08793","subject":"openvibe-contracts v0.23.0 (deals manifest and capabilities released); contracts check is blocking","author":"OpenVibers","committed_at":"2026-09-23T03:27:28Z","deployed_at":"2026-09-23T03:27:28.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/dd08793e6a1166418810f4662da022fd7b31e652","post_id":null},{"service":"deals","sha":"94f99e945491742eac8c1620b80c36662a7431aa","short":"94f99e9","subject":"README (purpose, owns, does not own, depends on, grants, acceptance, launch rule, threat review, deploy), STATUS alpha W18, .env.example, deploy (systemd unit, nginx vhost on 4840), CI on Node 22.22.1 (contracts check continue-on-error…","author":"OpenVibers","committed_at":"2026-09-23T03:26:35Z","deployed_at":"2026-09-23T03:26:35.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/94f99e945491742eac8c1620b80c36662a7431aa","post_id":null},{"service":"deals","sha":"040cca527fa237fb94e99fde9fe3458c9e597608","short":"040cca5","subject":"OpenVibe.Deals service (Wave 18, Deals): the nine deal_* tables in its own SQLite; community submissions and Sources imports as offers whose every price, shipping, condition and availability is a timestamped observation with its source…","author":"OpenVibers","committed_at":"2026-09-23T03:26:33Z","deployed_at":"2026-09-23T03:26:33.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/040cca527fa237fb94e99fde9fe3458c9e597608","post_id":null},{"service":"deals","sha":"f58795d99a16e9e86412c0b65f8c8e6e0b6cc6e9","short":"f58795d","subject":"Charter: OpenVibe.Deals as defined in the OpenVibe realignment plan (placeholder, no code yet)","author":"OpenVibers","committed_at":"2026-09-21T16:18:58Z","deployed_at":"2026-09-21T16:18:58.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Deals/commit/f58795d99a16e9e86412c0b65f8c8e6e0b6cc6e9","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}]}