openvibers/openvibe.quest CHANGELOG.md
CHANGELOG.md
Changelog
Unreleased
- Pin the released Contracts 0.406.0, SDK 0.148.0 and Shared 4.209.0 libraries for guided quests.
- Let the owning site's verified service report an opaque guided step by source event id, with idempotent progress; allow the DNS tool's guide preflight and exclude Meme from daily choices until its event feed is enabled.
- Count public Meme captions without their content, add the caption maker and Video upload controls to guided daily choices, and order personal steps from easier to harder.
- Address Chat's public composer and the DNS tool from the personal catalogue; keep Wiki edits and world publishing out of automatic choices until the person has permission or a draft.
- Catalogue Live's seventeen individually guided setup tasks, and count only the matching task event for each step.
- Keep personalized AI wording off until the person records an explicit choice and language; choose only guided step kinds for that person.
- Give guided picture, thread and calendar steps opaque per-person links and an authenticated step reader for the host page.
- Let a channel owner save a quest made from guided catalogue steps through a default-off API.
- Add the authenticated, network-origin CORS reader
GET /api/v1/quests/today; keep progress private to its person.
What changed in OpenVibe.Quest, newest first. Each site also publishes its patch notes at /updates.
0.3.0 — 2026-10-09
- Item rewards (plan T21): six quests also give one of Live's items for the person's OpenVibe.Inventory: say hello
in chat (Sparkle), follow someone (Hearts), go live (Basic Cap), stream three times (Fire Name), start a thread (Ice
Name), improve a wiki page (Rainbow Name). - How:
server/quests/items.jsgrants each in Inventory after the completion commits, with Quest's own token,
originearnedand the completion id as the idempotency key. - Failures: a failed grant is recorded (
migrations/0004_item_rewards.sql) and retried by a timer, which also
reaches completions from before this release. - Pages: the quest pages,
/meand/api/v1/questsname the item.
0.2.0 — 2026-10-08
- The product. One quest log across the whole network:
- a catalog of 12 first-party quests in code (
server/quests/catalog.js), grouped by the site whose events each
one counts, each with a badge and OpenCoins; POST /internal/events(server/events-consumer.js), exactly as OpenVibe.Space does it — raw body, signature
v2, theopenvibe-sdkinbox for once-only application, forwarding headers refused, 503 without
QUEST_EVENTS_SECRET— with the person taken from the field each event's own schema defines
(server/quests/apply.js) and an ignored outcome for anything that names nobody Quest may credit;quest_progress,quest_completions,quest_badgesand the Events receipts (migrations/0002_quest.sql), all
keyed by the canonical subject and safe under a redelivery;- OpenCoins through OpenVibe.Network's wallet (
server/quests/coins.js):idempotency_keyis the completion id,
QUEST_COINSis off by default, per-person and network-wide daily caps, a failure recorded with its reason and
retried by a timer; - the API:
GET /api/v1/quests,/quests/:id,/me/quests,/profiles/:subject/badges; - pages: home, a quest, your quest log (plain
<progress>bars), the rules, and a sitemap that lists every quest
page — all server-rendered and complete without JavaScript; - the test suite grew two files:
test/events-consumer.test.jsandtest/quests-api.test.js, and the mock
Network now serves/internal/identity/resolveand/internal/coins/creditthe way Network checks them. - The home page grew by about 9 KB with the catalog and the event list; the perf budget was raised to match
(test/perf-budget.test.js, measured 34.0 KB raw / 7.7 KB brotli). - nginx:
/internal/is answered 404 from outside; Events posts to the loopback address directly.
0.1.0 — 2026-10-08
- First release: the service starts from the OpenVibe skeleton — sign-in with OpenVibe.Network (OAuth 2 + PKCE), server-rendered pages through the OpenVibe Frame, the
/api/v1mount with per-caller limits, crawl artifacts, PostgreSQL migrations, the deploy files and the test suite.