openvibers/openvibe.blog STATUS.json
STATUS.json
| 1 | { |
| 2 | "repository": "OpenVibers/OpenVibe.Blog", |
| 3 | "stage": "alpha", |
| 4 | "code": true, |
| 5 | "wave": "W16", |
| 6 | "plan": "OpenVibe End-to-End Realignment & Implementation Plan, revision 3 (20 Sep 2026)", |
| 7 | "runtime": "node 22, express 4, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9", |
| 8 | "port": 4810, |
| 9 | "domain": "openvibe.blog", |
| 10 | "contracts": "openvibe-contracts v0.419.0", |
| 11 | "sdk": "openvibe-sdk v0.161.0", |
| 12 | "shared": "openvibe-shared v4.235.0", |
| 13 | "packages": [ |
| 14 | "openvibe-publishing v1.7.0", |
| 15 | "openvibe-contracts v0.419.0", |
| 16 | "openvibe-shared v4.235.0", |
| 17 | "openvibe-sdk v0.161.0" |
| 18 | ], |
| 19 | "capabilities": [ |
| 20 | "blog.blog.create", |
| 21 | "blog.blog.configure", |
| 22 | "blog.theme.set", |
| 23 | "blog.member.manage", |
| 24 | "blog.post.create", |
| 25 | "blog.post.read", |
| 26 | "blog.post.update", |
| 27 | "blog.post.publish", |
| 28 | "blog.post.schedule", |
| 29 | "blog.post.unpublish", |
| 30 | "blog.post.delete", |
| 31 | "blog.feed.read" |
| 32 | ], |
| 33 | "capabilitiesRegistered": true, |
| 34 | "serviceManifestRegistered": true, |
| 35 | "entitlements": "OpenVibe.VIP in code (policies/evaluate with the blog owner and the blog:gated_post default gate, cached 30 s; teaser and join link otherwise). It needs the Network grant [blog, vip.resource.policy.evaluate, openvibe.vip]; without it, or when VIP is unreachable, members-only posts admit only the blog's members and staff (the gate fails closed)", |
| 36 | "seedPost": "a draft (verbatim quotes; not reviewed by a person)", |
| 37 | "deployed": true, |
| 38 | "deployment": "Public at https://openvibe.blog since 2026-09-23 (~03:00 UTC): deployed with `sudo ovhost deploy blog`, /opt/openvibe.blog, unit openvibe-blog on 127.0.0.1:4810 behind the openvibe.blog nginx vhost, principal blog. The network changelog publishes Patch notes posts on the official blog. Restore drill passed 2026-09-23.", |
| 39 | "placeholderInSites": false, |
| 40 | "deployedAt": "2026-09-23", |
| 41 | "features": [ |
| 42 | "the official blog and a blog for every member, with owners, editors and authors", |
| 43 | "drafts and immutable revisions with conflict detection, diff and revert", |
| 44 | "publish, unpublish, soft delete and scheduled publishing", |
| 45 | "tags, categories, series and 301s on slug changes", |
| 46 | "Media-backed covers, inline figures and galleries", |
| 47 | "six theme presets", |
| 48 | "Community comment threads", |
| 49 | "AI drafts that need a person's review", |
| 50 | "members-only posts gated by OpenVibe.VIP (fails closed)", |
| 51 | "network changelog feed and Patch notes posts", |
| 52 | "feeds, sitemaps and server-rendered pages useful without JavaScript", |
| 53 | "/api/v1 by capability", |
| 54 | "SDK outbox events and Search index documents", |
| 55 | "per-actor limits (openvibe-sdk/limits)" |
| 56 | ], |
| 57 | "database": "PostgreSQL ov_blog (ADR-035), schema migrations/0001_initial.sql applied at boot", |
| 58 | "updated": "2026-11-13" |
| 59 | } |
| 60 |