Commits
-
Add a promo allowance ledger that never becomes creator money (#7)OpenVibers · 4 Oct 2026
578a21b -
Record usage readings under billing.usage.record (#6)OpenVibers · 4 Oct 2026
75f86b6 -
Bump openvibe-shared v2.3.1 → v2.5.0 (#4)OpenVibers · 3 Oct 2026
691d538 -
The SQLite era is gone (on PostgreSQL since 2026-09-28; no compatibility kept): the one-time migrate-to-postgres script, the *_DB_PATH settings (config, .env.example, systemd unit, test helpers), the unused better-sqlite3 dependency and its lockfile entries, and docs, docstrings and STATUS lines about SQLite or its rollback window. Reviewed independently (VERDICT: SHIP). npm test 19/19 test files passed.OpenVibers · 29 Sept 2026
fe4ff08 -
Billing on PostgreSQL (ADR-035, roadmap WS-X2): openvibe-sdk/db, async throughout, every money movement serializable.OpenVibers · 28 Sept 2026
5fc1af3 -
npm test no longer counts a skipped test as passed (roadmap WS-Q task 7; openvibe-shared/test-runner, Shared v1.25.0). test/run.js counted every file that exited 0 as passed, so a file that printed that it skipped its work and checked nothing still read as green. It is now the shared runner (same files, one at a time as before, 60 s timeout per file): a test prints "<label>: skipped (<why>)" for what it could not run, and that file is listed with ○ and its reasons and not counted as passed; --strict makes a skip fail the run. No test here skips anything. openvibe-shared is pinned at v1.25.0 (from v1.22.0; 1.23 and 1.24 add the web runtime, release-watch fixes and the readiness skip, and /api/ready answers as before because its db check really runs; the README follows). npm test (Node 22) 19/19.OpenVibers · 28 Sept 2026
1f9df56 -
README and STATUS.json are current (roadmap WS-U task 3): the README gains Owns, Does not own, Depends on, Capabilities (the eight billing.* capabilities, their callers, and the grants Billing uses at Events and Network), Acceptance (what each test file proves), Security (SECURITY.md, auth, money integrity, webhooks, secrets by name, egress) and Deploy (sudo ovhost deploy billing, unit, port, env file, state, vhost, rollback) sections; the launch rule counts the public /policy page. STATUS.json gains deployed, contracts and features, drops a stale release sha and old pins from the deployment note, and is updated 2026-09-28.OpenVibers · 28 Sept 2026
f24684b -
Per-person rate limits on Billing's money-creating routes (roadmap WS-R task 4; openvibe-sdk v0.12.0 is now a dependency). Every /api/v1 caller is a first-party service (Live, Tips, VIP) acting for many people, so server/api/actor-limits.js never counts per service. A request counts against the person its body names (the buyer, the payer, the creator, the subscriber), whichever service sends it, and a refund counts against the payer of the transfer it gives back. The limit runs after the capability and freeze checks (a request refused while frozen is not counted) and before the idempotency store and the ledger. A refusal therefore stores nothing, and the same Idempotency-Key works after Retry-After. Past a limit a route answers 429 problem+json rate_limited with Retry-After, logs one line and counts billing_rate_limited_total{limit,window}. BILLING_LIMITS=off turns every limit off, as a rollback lever that needs no deploy.OpenVibers · 28 Sept 2026
80f97aa -
EXTERNAL PowerChat tips reach Tips; hourly reconciliation; /metrics; overflow and race hardeningOpenVibers · 23 Sept 2026
b774c5c -
Docs: STATUS.json and README match production (2026-09-23)OpenVibers · 23 Sept 2026
403c732 -
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 proxied, /api/v1 denied on the public host, /webhooks/* public), STATUS, manifest proposal adds billing.staff.actionOpenVibers · 23 Sept 2026
8af6e69 -
Live as a Billing client: docs/live-patch.diff (BILLING_AUTHORITY=live|billing, off by default; money_writes_frozen) and the cutover sequence in docs/live-cutover.mdOpenVibers · 23 Sept 2026
5833546 -
OpenVibe.Billing W8: balanced append-only journal, provider receipts, subscriptions, payouts, freeze, reconciliation and the Live import (ADR-012)OpenVibers · 23 Sept 2026
ab5ae81 -
Charter: OpenVibe.Billing as defined in the OpenVibe realignment plan (placeholder, no code yet)OpenVibers · 21 Sept 2026
7f719ce