openvibers/openvibe.vip STATUS.json
STATUS.json
| 1 | { |
| 2 | "repository": "OpenVibers/OpenVibe.VIP", |
| 3 | "stage": "alpha", |
| 4 | "code": true, |
| 5 | "deployed": true, |
| 6 | "deployment": "Launched 2026-10-17 at https://openvibe.vip (openvibe-contracts 0.200.0 made VIP live; vhost deploy/nginx/openvibe.vip.conf installed): deployed with `sudo ovhost deploy vip`, /opt/openvibe.vip, unit openvibe-vip, 127.0.0.1:4620 behind nginx. Principal vip; three Events subscriptions for Billing's events. Checkout open since the Billing cutover (VIP_CHECKOUT_PROVIDERS=powerchat,credit): 43 plans imported from Live, 0 memberships sold on launch day.", |
| 7 | "contracts": "openvibe-contracts v0.419.0", |
| 8 | "sdk": "openvibe-sdk v0.161.0", |
| 9 | "shared": "openvibe-shared v4.237.0", |
| 10 | "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026)", |
| 11 | "roadmap": "Wave 10", |
| 12 | "works": [ |
| 13 | "plans, immutable plan versions, perks, product bindings, member preferences and gated-resource rules in VIP's own PostgreSQL", |
| 14 | "entitlement projection fed by Billing events (signed webhook + openvibe-sdk inbox) with valid_until, grace and a direct Billing fallback; 'unknown' never authorizes", |
| 15 | "checkout hand-off and cancellation through OpenVibe.Billing; the membership is filed under the plan version chosen", |
| 16 | "API /api/v1 for service and user tokens; consumer client openvibe-vip/client that fails closed, with createVipCache (the product cache and its convergence bound, test/convergence.test.js)", |
| 17 | "the product's default gate (evaluate fallback, honouring product bindings such as blog gated_post) and entitlements/check product perks (Chat's badge); Chat, Community, Blog and Wiki consume them in code", |
| 18 | "server-rendered creator plan pages, terms history, member status and creator dashboard with the shared chrome", |
| 19 | "outbox events vip.plan.published and vip.membership.changed (openvibe-sdk)", |
| 20 | "the Live subscription offering in VIP, memberships from Billing entitlements", |
| 21 | "deployed on the host (loopback only) with truthful /api/ready and /metrics; restore drill passed on the host 2026-09-23 05:23 UTC", |
| 22 | "reusable membership card (GET /embed/:username/card.json, GET /api/v1/creators/:ref/card), badge (/embed/:username/badge.svg) and embeddable widget (/embed/:username/widget): public data only, no cookies, the widget's CSP frame-ancestors configurable (VIP_WIDGET_FRAME_ANCESTORS), member count from Billing that the creator can hide (not deployed yet)", |
| 23 | "the Live subscription import has run: 43 plans and plan versions, 44 creators, 87 migration maps (production, 2026-09-23)", |
| 24 | "Chat (subscriber badge, vip.entitlement.check), Community (members-only spaces and threads) and Blog (members-only posts) call VIP in production (vip.resource.policy.evaluate grants for Community and Blog)", |
| 25 | "14 vip.* capabilities, the service manifest and its events registered in openvibe-contracts v0.19.0 (this repository pins v0.92.0)", |
| 26 | "per-actor limits on /api/v1 (openvibe-sdk/limits)", |
| 27 | "the Billing client (server/billing-client.js) is a thin wrapper over openvibe-sdk/commerce (openvibe-sdk v0.74.0), shared with Tips: same capabilities, idempotency keys and retry-once-on-401", |
| 28 | "renewal/refund convergence via Billing events: a per-period charge ledger (vip_membership_periods, unique per Billing transaction; reversals and reversal-before-grant tombstones), a past_due renewal grace that never authorizes (answer.grace), and a period audit that doubts a paid period without a record (migration 0002; docs/cutover-0002-renewal-periods.md)", |
| 29 | "crawler and AI-reader artifacts: /llms-full.txt serves the full text of the home, public creator and plan-terms pages (openvibe-shared/seo, cached 3600 s), and IndexNow (openvibe-shared/indexnow, INDEXNOW_KEY) serves its key file at /<key>.txt and pings the creator page, terms page and sitemap when a plan is published, edited or archived" |
| 30 | ], |
| 31 | "not_yet": [ |
| 32 | "no membership sold yet: the first real purchase through Billing (PowerChat or Vibes credit) is the end-to-end proof still due", |
| 33 | "revocations reach Chat and Community through vip.membership.changed subscriptions (2026-09-24); Blog and Live still converge by the cache TTL (30-60 s)", |
| 34 | "no network membership product on Billing yet (OpenVibe Premium sold on openvibe.vip): a network plan is terms only" |
| 35 | ], |
| 36 | "features": [ |
| 37 | "plans with immutable versions, perks and product bindings", |
| 38 | "tiers: one plan per tier (1-10), each priced by the creator on Billing (billing.tier.manage); a member holds one tier at a time", |
| 39 | "entitlement projection from Billing events with valid_until, grace and a Billing fallback; unknown never authorizes", |
| 40 | "checkout and cancel through OpenVibe.Billing", |
| 41 | "gated-resource policy evaluation for products (fails closed)", |
| 42 | "openvibe-vip/client with the product cache and its convergence bound", |
| 43 | "creator plan pages, terms history, member status and creator dashboard", |
| 44 | "public membership card, badge and embeddable widget", |
| 45 | "/llms.txt and /llms-full.txt for language-model crawlers, cached an hour", |
| 46 | "IndexNow: a key serves /<key>.txt and pings plan page changes and the sitemap", |
| 47 | "SDK outbox events vip.plan.published and vip.membership.changed", |
| 48 | "per-actor limits (openvibe-sdk/limits)" |
| 49 | ], |
| 50 | "runtime": "", |
| 51 | "updated": "2026-11-13" |
| 52 | } |
| 53 |