openvibers/openvibe.inventory STATUS.json
STATUS.json
| 1 | { |
| 2 | "repository": "OpenVibers/OpenVibe.Inventory", |
| 3 | "stage": "alpha", |
| 4 | "code": true, |
| 5 | "wave": "W20", |
| 6 | "plan": "Plan track T21 (the OpenVibe inventory), ADR-054: step 2, the authority with Live's cosmetics as the first kinds", |
| 7 | "runtime": "node 22, express 4, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9", |
| 8 | "port": "5030", |
| 9 | "domain": "inventory.openvibe.network", |
| 10 | "contracts": "openvibe-contracts v0.419.0", |
| 11 | "sdk": "openvibe-sdk v0.161.0", |
| 12 | "shared": "openvibe-shared v4.237.0", |
| 13 | "packages": [ |
| 14 | "openvibe-contracts v0.419.0", |
| 15 | "openvibe-sdk v0.161.0", |
| 16 | "openvibe-shared v4.237.0", |
| 17 | "openvibe-publishing v1.7.0" |
| 18 | ], |
| 19 | "summary": "OpenVibe.Inventory — one inventory for an OpenVibe account (ADR-054). Item kinds (a contract plus a renderer per surface), definitions, instances, the equipped set and an append-only ledger in its own PostgreSQL database. Issuers (services, apps) grant only within their namespace; people see and equip what they own; every movement is a ledger row and an inventory.* event. Nothing is sold, bought, traded or converted. Live's name effects, particles, hats and voices are the first kinds (70 definitions seeded at boot), and scripts/import-live.js moves Live's unlocks and equipped slots here, row for row.", |
| 20 | "works": [ |
| 21 | "Kinds and definitions seeded at boot from data/kinds.json and data/live-definitions.json (Live's catalog, its item ids kept as aliases)", |
| 22 | "Grants by an issuer within its namespace: idempotent per key, supply caps with serial numbers, a non-stackable item answers the one already owned; consume and revoke", |
| 23 | "Grantors (ADR-054 §3 amendment): Live names OpenVibe.Quest on six of its items (quest rewards) and OpenVibe.Games on six more (achievements); a grantor may grant those and nothing more", |
| 24 | "Equip one item per slot (a person, or a service acting for them with X-OV-Subject); a batch read of up to 100 equipped sets in one query", |
| 25 | "Public reads (kinds, definitions, a person's inventory and equipped set) and the person's own full inventory", |
| 26 | "Definitions created and edited by their issuer; rarity, attributes and supply fixed once published; attributes validated against the kind's schema", |
| 27 | "Pages: home, every item by kind, one item, your inventory with plain equip forms, a person's public inventory, /updates", |
| 28 | "Events (inventory.item.granted/consumed/revoked/equipped/unequipped, inventory.definition.published) through the openvibe-sdk outbox", |
| 29 | "Account export and deletion (ADR-033) at the loopback POST /internal/events, subscriptions created at boot", |
| 30 | "scripts/import-live.js: dry run, --apply (origin migrated, unlock times kept, idempotent) and --verify (row for row)", |
| 31 | "The Workshop (ADR-054 §6): community badges anyone can make, shown only after staff publish them, with staff takedown", |
| 32 | "Live reads and writes cosmetics only here since 2026-10-09 (INVENTORY_AUTHORITY=inventory); Live's migration 0005_drop_live_cosmetics dropped its tables on 2026-10-15", |
| 33 | "Item pages in OpenVibe.Search through openvibe-publishing/search-feed, IndexNow and the sitemap" |
| 34 | ], |
| 35 | "notYet": [ |
| 36 | "Profiles on Network showing the showcase; equip in Chat, Community and Games", |
| 37 | "Trading and a market: not before a money ADR (ADR-054 §5)" |
| 38 | ], |
| 39 | "capabilitiesRegistered": true, |
| 40 | "serviceManifestRegistered": true, |
| 41 | "deployed": true, |
| 42 | "placeholderInSites": false, |
| 43 | "features": [ |
| 44 | "item kinds", |
| 45 | "definitions", |
| 46 | "grants", |
| 47 | "grantors", |
| 48 | "equip", |
| 49 | "public inventory", |
| 50 | "the Workshop (community badges, staff review)", |
| 51 | "Search feed", |
| 52 | "Live migration", |
| 53 | "account export and deletion" |
| 54 | ], |
| 55 | "deployment": "openvibe-ovh: unit openvibe-inventory.service on 127.0.0.1:5030 (git checkout /opt/inventory.openvibe.network, env /etc/openvibe/inventory.env, database ov_inventory), deployed with `sudo ovhost deploy inventory`; public at https://inventory.openvibe.network since 2026-10-09.", |
| 56 | "updated": "2026-11-13" |
| 57 | } |
| 58 |