Changelog
All notable changes to Kubuli are documented here.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- Docs site restructure — Audience-first navigation replacing the generic
Guideentry point. New top-level sections:Start,Admins,Developers,API Reference,Integrations,Changelog. Admin and developer journeys now have dedicated content tracks. Integrations section consolidates admin-ingestion and cross-app contract material. (KUB-196)apps/docs/start/index.md— Site orientation pageapps/docs/admins/— Admin and operator runbooksapps/docs/developers/— Developer setup, monorepo orientation, and workflow guidesapps/docs/integrations/— Admin-ingestion and cross-app contract guidance
- Tours API — New core endpoints covering tour generation, navigation, stop preview, direction fetching, completion, and video generation/status. All external services (directions, TTS, video, busy rating, review enrichment, storage) are behind typed adapter interfaces swappable via env vars. (KUB-181 epic — sub-stories KUB-182 through KUB-190)
POST /api/v1/tours/generate— Generate a personalised tour from a type and durationGET /api/v1/tours/GET /api/v1/tours/:tourId— List and fetch toursGET /api/v1/tours/:tourId/preview— Per-stop preview with hero image and the currently stored busy-rating value (unknownwhen unset)GET /api/v1/tours/:tourId/stops/:stopId/directions— Return cached directions when presentPOST /api/v1/tours/:tourId/complete— Mark a tour completePOST /api/v1/tours/:tourId/video/generate— Return a queued placeholder response for completed toursGET /api/v1/tours/:tourId/video/status— Video status plus any URL already stored on the tour- See Tours API reference
- Reviews API — Universal polymorphic review system replacing the legacy
nitm_ratingstable. Supports in-app reviews with aspect ratings, review votes, and moderation flags; aggregate summaries and external-enrichment badges remain follow-up work. (KUB-185)POST /api/v1/tours/:tourId/stops/:stopId/reviews— Create a review for a stop's entityGET /api/v1/tours/:tourId/stops/:stopId/reviews— List published reviews for the stop's underlying entityPOST /api/v1/reviews/:reviewId/votes— Votehelpful/not_helpful(once per user per review)POST /api/v1/reviews/:reviewId/flag— Flag a review for admin moderation- See Reviews API reference
- Initial VitePress documentation site (
apps/docs) — KUB-96, introduced on 2026-03-28 in commit47c6ed0 - Planned Registration API reference page at
apps/docs/api/registration.md - Docs deployment assets:
apps/docs/Dockerfileandapps/docs/docker-compose.ymlfor nginx-based container deployment
Changed
- Removed the obsolete POI Legacy Paths API page from the docs sidebar and repointed the Discovery and Cultural Explorer guides to the current Places and Culture references
- Reordered the API Reference sidebar to show Overview first, then Registration, then Authentication, and updated the API overview to match
- Documented docs-container deployment, external network requirements, and Traefik host routing in the docs app README
- Expanded the API Reference sidebar to include the full planned API page set and clarified that the overview and app/onboarding payload examples describe planned
/api/v1contracts, including the KUB-153 error-code set
This file is updated with every release. For in-progress fixes and improvements, see the monthly fix logs in each app's docs/fixes/ folder.