Goongoonalo

Release Notes

Markdown source of truth

Rendered from CHANGELOG.md

This page stays aligned with the repository changelog so release notes can be maintained in one place and viewed in the app.

Changelog

All notable releases for goongoonalo-main-backend are documented in this file.

Tagged releases currently present in Git:

  • 0.1.0
  • 0.1.1
  • 0.1.2
  • 0.2.0
  • 0.2.1
  • 0.2.2
  • 0.2.3
  • 0.2.4

[0.2.4] - 2026-05-08

Compare: 0.2.3...0.2.4

Added

  • PDL Metadata Merge: New REST endpoints to start, poll, and cancel PDL metadata merge jobs — /system/pdl-merge/start, /system/pdl-merge/status/{job_id}, and /system/pdl-merge/cancel/{job_id}.
  • In-memory job store: Merge job states and progress are tracked in memory so clients can poll for real-time status without hitting the database.
  • PDL merge logic migrated from a standalone script into the VendorUploadService, enabling S3 integration and on-the-fly CSV generation directly from the service layer.
  • Enhanced error handling and structured logging throughout the merge pipeline for better traceability when processing large PDL datasets.

Changed

  • Backend SDK bumped to 0.1.102.

[0.2.3] - 2026-05-06

Compare: 0.2.2...0.2.3

Added

  • User app settings are now auto-created on first fetch — the new get_or_create_user_settings path eliminates 404 errors on fresh accounts and removes the need for a separate creation step.
  • Artist chat token is generated and saved to the artist's profile during GetStream chat channel creation, so the token persists across sessions and is always consistent with the stored channel details.
  • Album CRUD now supports filtering by audioCreditsDistributor and audioCreditsProductionHouse — these filters query nested content audio-credit records to locate albums where a specific artist appears in those credit roles.
  • Live event artist responses now include an isLive: true flag, so clients no longer need to infer live status from context.
  • Tasks/Jobs: Subscription expiry reconciliation periodic task that runs every 10 minutes (configurable via SUBSCRIPTION_EXPIRY_RECONCILE_INTERVAL), proactively marking overdue subscriptions as Expired to keep read-time checks accurate.
  • Tasks/Jobs: Bulk review handler for content and event approvals, allowing moderators to approve or reject multiple items in a single request.
  • Tasks/Jobs: Custom notification delivery update task for tracking and persisting notification status changes.
  • Tasks/Jobs: Vendor upload processing now copies album group thumbnails and tracks source file paths through the pipeline.
  • Tasks/Jobs: Missing playlist thumbnails are now auto-generated as part of vendor upload post-processing.

Changed

  • Lead artist transformation refactored to reuse a single LeadArtistsTransformer instance and a shared artists map per request, reducing redundant database fetches when rendering live-event artist listings.
  • Backend SDK updated to 0.1.101 across both production and staging.
  • Removed the unused HundredMsWebhookService and cleaned up stale imports in the AWS webhook service.
  • Tasks/Jobs: Album upsert context added to vendor upload processing so re-uploaded albums correctly update existing records instead of creating duplicates.
  • Tasks/Jobs: Vendor upload error reporting enhanced with more detailed messages, stricter header validation, and deferred content linking to improve reliability on large batches.

Fixed

  • Corrected folder names in the workspace configuration file.

[0.2.2] - 2026-04-27

Compare: 0.2.1...0.2.2

Added

  • Added new user analytics endpoints so the admin panel can show per-user insights — including when a user listens most, how many hours they use the app, their listening habits (plays, skips, completions), top genres, favourite artists, how they discover tracks, and a content-type breakdown.
  • End dates on all analytics queries are now treated as inclusive, so filtering "up to April 27" returns data for the full day of April 27.

Changed

  • Improved invoice and payment details handling in the transaction service — tax details are now backfilled from the user's active subscription when missing from invoice data, so transaction records are more complete.
  • Improved subscription service to pull payment method details from recent transactions when they are not directly available, reducing gaps in payment history.
  • Improved Razorpay webhook handling with better error recovery and more complete payment detail fetching.
  • Added upcCode to album search fields in the album CRUD router.
  • Updated backend SDK reference requirements to 0.1.100.

Fixed

  • Fixed shared cache entries not being cleared after create, update, or delete operations, which could cause stale data to be returned.
  • Fixed idle transaction risk by committing status changes before external API calls.

[0.2.1] - 2026-04-23

Compare: 0.2.0...0.2.1

Fixed

  • Fixed a crash in the OTP request flow that occurred when no matching user was found — the service now handles this case gracefully instead of raising an error.

[0.2.0] - 2026-04-23

Compare: 0.1.2...develop-new

Added

  • Expand CRUD tooling with request context propagation, richer sorting, new filter operators, audit logging, and dedicated artist app-event CRUD support.
  • Add studio event CRUD and tracking flows, new album created_at filters, event-ticket wiring, and hard-delete cleanup for same-day contents and albums.
  • Add richer custom notification capabilities with age-group targeting, gesture playback app settings support, and starCast exposure in content and search responses.
  • Add an Alembic migration that converts users.gender from PostgreSQL enum storage to integer-backed values while repairing existing rows during the upgrade.

Changed

  • Bump the application version to 0.2.0.
  • Refactor custom notification services and tighten dashboard query handling, including user creation-date filters in consolidated statistics.
  • Move the backend SDK dependency to 0.1.99 and align backend user-gender persistence with the SDK's integer-backed model.

Fixed

  • Fix custom notification behavior after the service refactor.
  • Align staging SDK dependency updates required by the 0.2.0 branch train.
  • Fix gender demographic labeling and legacy Mongo-to-PostgreSQL user gender remapping to match the new integer representation.

[0.1.2] - 2026-04-22

Compare: 0.1.1...0.1.2

Fixed

  • Repair automated deployment after the 0.1.1 release cut.

[0.1.1] - 2026-04-22

Compare: 0.1.0...0.1.1

Added

  • Add vendor-upload ingestion and PDL processing, along with direct database checks for incomplete uploads.
  • Add featured video URL support for artists and contents, web-view token generation and verification, playlist reordering hooks, referral balance endpoints, dynamic artist referral URLs, default artist profile images, and file-browser support.
  • Introduce studio event APIs with new query parameters and schema/index work, plus bulk content and event moderation improvements and collaborator-aware content queries.

Changed

  • Refresh mobile-app details behavior and notification subscription handling while the backend SDK moved through the 0.1.96 to 0.1.98 train.
  • Improve deployment workflow automation and release version handling ahead of the 0.1.1 and 0.1.2 releases.

Fixed

  • Fix non-published content approval, media status updates, referral and refund issues, force-update logic, phone-normalization conflicts, and deployment workflow problems.

[0.1.0] - 2026-03-28

Added

  • Launch the FastAPI and SQLModel backend foundation with modular apps for auth, content, artists, studio, registry, analytics, billing, getstream, and webhooks.
  • Implement OTP authentication, token and logout flows, user CRUD, content, album, artist, studio, events, notifications, and dashboard APIs, plus health and landing pages.
  • Add MongoDB-to-PostgreSQL migration tooling, playlist caching, share-link improvements, transaction detail responses, artist app-event background tasks, media-processing utilities, and private-SDK-aware CI and deployment automation.

Changed

  • Restructure the codebase from its early monolithic layout into modular g core packages and service-specific FastAPI apps.
  • Harden deployment scripts and GitHub Actions for environment-specific releases, private dependency access, ownership fixes, and release validation.

Fixed

  • Resolve template rendering issues, payment-gateway plan validation, share-link payload handling, restore and deployment scripts, and server permission problems.