{"service":"billing","entries":[{"service":"billing","sha":"9f51b11210bf347efeea162a5c1d7397cd9380d2","short":"9f51b11","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:06Z","deployed_at":"2026-09-24T06:16:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/9f51b11210bf347efeea162a5c1d7397cd9380d2","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"billing","sha":"069c53ecf062421ba3fbe715f7fd5cb47ec19f48","short":"069c53e","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:45Z","deployed_at":"2026-09-24T06:16:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/069c53ecf062421ba3fbe715f7fd5cb47ec19f48","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"billing","sha":"94f115938ff0854c393fd9113efa116bfdc5d7d9","short":"94f1159","subject":"Truthful readiness and status: /api/ready answers in the openvibe-shared/ready shape (named db and network_jwks checks, money_writes shown without failing it, release) instead of a bare {ready:true}; STATUS.json describes what production…","author":"OpenVibers","committed_at":"2026-09-24T05:24:55Z","deployed_at":"2026-09-24T06:16:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/94f115938ff0854c393fd9113efa116bfdc5d7d9","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"billing","sha":"421beb42db61128c64ece7d2abb46dc6bcbf5f79","short":"421beb4","subject":"Serve the release manifest (Track R, D43): GET /release.json and POST /release-metrics through openvibe-shared release.mount; the manifest was built but never mounted, so billing.openvibe.network answered 404","author":"OpenVibers","committed_at":"2026-09-24T04:58:22Z","deployed_at":"2026-09-24T06:16:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/421beb42db61128c64ece7d2abb46dc6bcbf5f79","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"billing","sha":"42ad547a34d098e28e1ad9abb4ad6759fbac5bdb","short":"42ad547","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:22Z","deployed_at":"2026-09-24T06:16:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/42ad547a34d098e28e1ad9abb4ad6759fbac5bdb","post_id":"pst_01M39313D833G8QVPQ9FGEEF5E"},{"service":"billing","sha":"d9add4c064b28d890fb69dc371ee9619379d2f23","short":"d9add4c","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.Billing/commit/d9add4c064b28d890fb69dc371ee9619379d2f23","post_id":null},{"service":"billing","sha":"ba81008518f4061fbaf9fc108a908e1de9130398","short":"ba81008","subject":"openvibe-shared v1.5.0, openvibe-contracts v0.32.0","author":"OpenVibers","committed_at":"2026-09-23T22:13:02Z","deployed_at":"2026-09-23T22:13:02.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/ba81008518f4061fbaf9fc108a908e1de9130398","post_id":null},{"service":"billing","sha":"aa445d0c8b7351afae910b9572a2f9ae674e0914","short":"aa445d0","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.Billing/commit/aa445d0c8b7351afae910b9572a2f9ae674e0914","post_id":null},{"service":"billing","sha":"c6462798de1b109a9a86a70eb6d2ffa6b27db18e","short":"c646279","subject":"Cashout events carry the payout method's type only: the address (e.g. a PayPal email) stays in Billing for the staff console instead of travelling on the retained event stream","author":"OpenVibers","committed_at":"2026-09-23T19:03:18Z","deployed_at":"2026-09-23T19:03:18.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/c6462798de1b109a9a86a70eb6d2ffa6b27db18e","post_id":null},{"service":"billing","sha":"2169593a4fa70ab242419e667f126989a3b67280","short":"2169593","subject":"Cutover runbook checked against production, and Live's money tables mapped to Billing","author":"OpenVibers","committed_at":"2026-09-23T18:52:21Z","deployed_at":"2026-09-23T18:52:21.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/2169593a4fa70ab242419e667f126989a3b67280","post_id":null},{"service":"billing","sha":"b774c5c62fdccdf6674575c1f804a7d9d3b79255","short":"b774c5c","subject":"EXTERNAL PowerChat tips reach Tips; hourly reconciliation; /metrics; overflow and race hardening","author":"OpenVibers","committed_at":"2026-09-23T18:52:13Z","deployed_at":"2026-09-23T18:52:13.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/b774c5c62fdccdf6674575c1f804a7d9d3b79255","post_id":null},{"service":"billing","sha":"403c732aea5cf27591300ffa582a97778496b5e9","short":"403c732","subject":"Docs: STATUS.json and README match production (2026-09-23)","author":"OpenVibers","committed_at":"2026-09-23T18:33:29Z","deployed_at":"2026-09-23T18:33:29.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/403c732aea5cf27591300ffa582a97778496b5e9","post_id":null},{"service":"billing","sha":"b59725e4aa1b64fcf5a100deacd5ede2c6963ca6","short":"b59725e","subject":"Direct PowerChat subscriptions settle only on the streamer's own account: intents need receiving_account (imported ones take it from Live's powerchat_connections); a pcsub ref on a tip to any other account (e.g. the subscriber's own)…","author":"OpenVibers","committed_at":"2026-09-23T16:31:11Z","deployed_at":"2026-09-23T16:31:11.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/b59725e4aa1b64fcf5a100deacd5ede2c6963ca6","post_id":null},{"service":"billing","sha":"300109447737c0163a6a00449c81d68cbc058ecf","short":"3001094","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:08Z","deployed_at":"2026-09-23T16:14:08.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/300109447737c0163a6a00449c81d68cbc058ecf","post_id":null},{"service":"billing","sha":"839da1bd84cd88709f2c39a10c085700e87ee382","short":"839da1b","subject":".env.example: POWERCHAT_SITE_USERNAME is required for PowerChat site-routed settlement","author":"OpenVibers","committed_at":"2026-09-23T15:54:06Z","deployed_at":"2026-09-23T15:54:06.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/839da1bd84cd88709f2c39a10c085700e87ee382","post_id":null},{"service":"billing","sha":"627303c06d44103369cc72a368b5b63ef327c340","short":"627303c","subject":"Security: PowerChat site-routed refs only settle when paid to the site account; case-sensitive routing","author":"OpenVibers","committed_at":"2026-09-23T15:50:55Z","deployed_at":"2026-09-23T15:50:55.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/627303c06d44103369cc72a368b5b63ef327c340","post_id":null},{"service":"billing","sha":"36268f1c600e99afd4f408356e783cc050660c19","short":"36268f1","subject":"nginx: billing.openvibe.network uses the openvibe.network wildcard certificate (like events)","author":"OpenVibers","committed_at":"2026-09-23T02:48:00Z","deployed_at":"2026-09-23T02:48:00.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/36268f1c600e99afd4f408356e783cc050660c19","post_id":null},{"service":"billing","sha":"5936807faef036b168559ac7c5a7971f9c421333","short":"5936807","subject":"openvibe-contracts v0.19.0 (this service's manifest and capabilities are released); contracts check is blocking","author":"OpenVibers","committed_at":"2026-09-23T02:47:37Z","deployed_at":"2026-09-23T02:47:37.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/5936807faef036b168559ac7c5a7971f9c421333","post_id":null},{"service":"billing","sha":"fbbb0f36888a6866b68cef9d5d9cbb58d49741dd","short":"fbbb0f3","subject":"Staff console: Network SSO (authorization code + PKCE S256, client billing) for Network admins listed in BILLING_STAFF_SUBJECTS; server-rendered, no JS, noindex, no-store, strict CSP; host-only HttpOnly Secure SameSite=Strict short session…","author":"OpenVibers","committed_at":"2026-09-23T02:44:29Z","deployed_at":"2026-09-23T02:44:29.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/fbbb0f36888a6866b68cef9d5d9cbb58d49741dd","post_id":null},{"service":"billing","sha":"8af6e69ae66f95e8aa37030e1c246f07ffe986c5","short":"8af6e69","subject":"Docs and deploy for the staff console: README section, cutover runbook (the console replaces Live's cashout admin; Network redirect URI for client billing), .env.example (BILLING_STAFF_SUBJECTS, BILLING_SESSION_SECRET), nginx (console…","author":"OpenVibers","committed_at":"2026-09-23T02:44:29Z","deployed_at":"2026-09-23T02:44:29.000Z","major":false,"url":"https://github.com/OpenVibers/OpenVibe.Billing/commit/8af6e69ae66f95e8aa37030e1c246f07ffe986c5","post_id":null}],"next":"MjAyNi0wOS0yM1QwMjo0NDoyOS4wMDBafDIwMg","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}]}