User Tools

Site Tools


changelog

Changelog

Every release carries a single version number: MAJOR.MINOR.PATCH.BUILD. A full release raises the third part (the second or the first for a larger change), intermediate builds raise only the fourth. The same number appears in the interface, in the applications and in the database.

2.0.41.0

2026-09-07 17:53

New features

  • script: update transcription handling to support multiple truthy values
  • script: simplify merge procedure to always perform full catalog merges
  • report: update report merge procedure to include full merge option and timestamp handling
  • script: update archive restore process to activate new assets and improve merging
  • script: update archive operations to handle asset restoration and purging
  • script: enhance archive process with transcription and error handling
  • script: add archive worker for processing asset archiving tasks
  • archive: update archive status labels for clarity and consistency
  • api: add function to remove Zetta asset by UUID
  • script: add incremental merge functionality for report generation
  • core: retire the BroAdminPlayout engine
  • archive: add never-archive lock, delete marking and sortable columns
  • report: add asset creation and modification timestamps
  • archive: add view switcher and update archive functionality
  • news: update audio generation to use voice API instead of soundgen
  • script: add soundgen.ps1 for generating news audio from descriptions
  • library: add assetKeep flag to manage never-archive status for assets (BroAdminApi)

Fixes

  • track: ensure notice is cleared when track data is successfully loaded
  • library: update allowed transitions and archive status handling for assets (BroAdminApi)

Refactoring

  • library: clarify archive status descriptions and update query conditions (BroAdminApi)
  • api: remove unused parameters and simplify access endpoint (BroAdminApi)

2.0.40.0

2026-09-07 11:22

New features

  • page: add default value handling for select inputs in admin config
  • page: optimize save operation by awaiting API calls directly
  • database: add retry logic for deadlocked SQL operations (BroAdminApi)

2.0.39.0

2026-09-02 23:45

New features

  • upload: update image path handling for FTP uploads

Fixes

  • api: ensure only active shows and presenters are returned in queries (BroAdminApi)

2.0.38.0

2026-09-02 23:05

New features

  • upload: add FTP upload for web images with error handling

2.0.37.0

2026-09-02 21:19

New features

  • music: reduce the link catalog to search, artist, title, runtime and year
  • api: add public API endpoints for broadcasts, grids, presenters, shows, and stations (BroAdminApi)

2.0.36.0

2026-09-02 20:18

New features

  • core: point paid service relays at renamed broadmin.hu endpoints
  • core: rename radio to web and library to archive, reduce music to findmeta and link
  • script: add force option to treat all music links as pending
  • generate: add fault chips and tag column for enhanced error display
  • api: rename radio to web and library to archive, keep only the link music endpoints (BroAdminApi)

Fixes

  • music: update Hungarian translation for current rules check message

Refactoring

  • linkzetta: streamline asset attribute value handling in stored procedure

2.0.35.0

2026-08-19 02:54

New features

  • generate: add new funnel and stage metrics for improved tracking
  • script: add saving feedback messages during music generation process
  • music: add quota-related messages for better user feedback
  • track: enhance event response handling in trackEvents procedure
  • web: store the exported broadcast audio in daily subfolders
  • library: add the archive page for pulling assets into offline storage
  • generate: show localized rule names with their tags in violation details
  • component: add shared UI components for consistent dialogs and notifications
  • music: add candidate picker for linking songs to FindMeta records
  • core: add checksum handling for audio file uploads and playback ranges
  • library: add the archive endpoint for offline asset storage (BroAdminApi)

Fixes

  • rotation: append tag picker dialog to document body instead of music rotation
  • track: update response label to reason in event report
  • admin: prevent deletion of the latest finished task runs in purge trigger
  • generate: re-check saved days against the current rules when loading the week
  • music: update daypart validation and replace daypartCron with daypartWindow (BroAdminApi)
  • music: enforce policy weight to be between 1 and 9 (BroAdminApi)
  • track: change eventResponse type from double to string for consistency (BroAdminApi)

Refactoring

  • generate: simplify repair functions and update announcer for better clarity
  • generate: update class names for hour delta indicators and clean up unused styles
  • generate: remove seed input and update to use generated seed for runs
  • music: rename daypartCron to daypartWindow for clarity
  • script: remove unused generateExact variable from script context
  • radio: remove unused links from the radio section in the sidebar
  • rotation: adjust dialog form styling and lift modal size cap
  • core: update text color fallback for processing strip in both shells
  • core: remove unused import button styling and update audio handling messages
  • news: remove unused voice tag configuration and style duration display
  • music: remove unused deactivateOthers method and related calls (BroAdminApi)

2.0.34.0

2026-08-17 03:09

New features

  • script: add save button busy state handling during save actions
  • script: add handling for missing tags and airtime adjustments in selector logic
  • tag: add formula display logic for improved tag search functionality
  • music: update music export logic to include preschedule and error handling
  • tag: update tag display logic to include formula indicators and improve filtering
  • script: update musicLink handling to resync based on cloud record modifications
  • music: add linkModify column to musicLink table for tracking modifications
  • script: enhance import script to clean dead links and update local mirror
  • music: rerun the report merge after imports and rename the categorize sync button
  • findmeta: add import button styling and enhance link handling logic
  • music: add import functionality with confirmation and success messages
  • admin: update Hungarian translations and add new fields for better user guidance
  • music: refine supertag validation to allow specific keywords and improve security (BroAdminApi)
  • music: enhance tag grouping to support formula tags and their clauses (BroAdminApi)
  • music: add support for formula tags and their computed memberships (BroAdminApi)
  • music: add endpoint to retrieve links for a specific findmeta record (BroAdminApi)

Fixes

  • purger: keep purging a folder when one file cannot be deleted
  • track: use the ping threshold default for external checks
  • script: change join type in SQL query to left join for asset retrieval
  • music: require airtime for all rows in flatfile validation (BroAdminApi)

Refactoring

  • core: rewrite code comments and script headers to match current behaviour
  • api: rewrite code comments to match current behaviour (BroAdminApi)

2.0.33.0

2026-08-16 01:28

New features

  • page: add segment station column and update tag filter pill functionality
  • page: add tag filter bar with pill functionality for improved filtering
  • page: add center alignment option for segment section
  • worker: add logging functionality and improve error handling
  • news: add new rss-worker with AI enhanced category select and more complex dedup method
  • news: rename worker-rss to worker-rss-old
  • news: add AI news generation feature for article links
  • script: add recipe editor for managing content tags and segments
  • news: include date in headline segment title for better clarity
  • news: enable audio generation for news segments based on station configuration
  • news: add configurable news tag types for voice and content

2.0.32.0

2026-08-15 14:18

New features

  • worker: enhance final round worker to handle search queries and update statuses
  • worker: add final round worker for independent web search corrections
  • advert: confirm a campaign delete that would take its fulfilment report with it
  • core: report a failed post-save script instead of showing the save as successful
  • advert: unschedule a campaign from every upcoming block, whatever type it is
  • advert: implement weekly hour-window scheduling functionality
  • advert: update zoneWindow column to allow larger string values
  • advert: add tierAdvert column to advertTier table for advertising indication
  • admin: mark blockDuration step as required for validation
  • request: include station code in backup file naming for better identification
  • advert: add tierAdvert flag to indicate advertising time count
  • broadcast: add inactive show/presenter indication in broadcast list
  • script: add one-off recovery script for restoring deleted spot files
  • advert: replace zoneSchedule with zoneWindow for availability window management (BroAdminApi)
  • validate: add window field validation for weekly hour windows (BroAdminApi)
  • advert: refuse to delete or deactivate anything still scheduled in the future (BroAdminApi)
  • advert: add tierAdvert property to Tier model and update related queries (BroAdminApi)
  • script: add active status handling for script entries in configuration (BroAdminX)

Fixes

  • soundform: correct click-to-seek offset for user display discrepancies
  • soundform: restrict status updates to admins for certain conditions
  • advert: remove unnecessary whitespace check in campaignSpot update condition

Refactoring

  • worker: remove locking mechanism for cleaner execution flow

2.0.31.0

2026-08-14 15:27

New features

  • nav: add help link to wiki in navigation bar
  • tag: add shift-click functionality to duplicate tags in the editor
  • worker: rename cleanup worker script to worker-cleaner for clarity
  • worker: add scripts for analyzing and categorizing FindMeta records
  • worker: add cleanup worker to delete unclaimed audio files
  • admin: increase tagFormula length to max for better flexibility
  • tag: enable global tags and improve tag creation interface
  • admin: add new user management features for enhanced control
  • category: add script for filling missing tags in FindMeta records
  • findmeta: add a web-search correction round when no discogs release is found

Fixes

  • script: clarify campaignSpot usage in advertCampaign updates
  • advert: clarify comments regarding dispatched campaigns and syncing spots
  • language: update new tag translation for clarity
  • menu: update English labels for menu items to be more concise
  • script: correct script directory path in analyze.ps1
  • tag: remove validation for tagFormula in tag creation (BroAdminApi)
  • logging: add fixed loggers for all background services (BroAdminService)

Refactoring

  • tag: update tag hints for clarity and consistency
  • tag: remove unused tag columns and improve variable handling
  • git: reject a docs scope on non-docs types and keep such commits out of the changelog
  • worker: run the metadata search only through the native endpoint

2.0.30.0

2026-08-13 18:33

New features

  • plan: prepend '~' to time for unfulfilled rows in plan results
  • order: add eventActive sorting to order configuration
  • download: prepend '~' to time for unfulfilled rows in download data
  • table: highlight unsaved rows with caution background and add class for pending inserts
  • track: add default placeholder for track run output in page configuration
  • object: change type to enum and add options for improved selection
  • design: enhance design layout and improve input handling with new styles and translations
  • statistics: show the peak hourly advertising time of every period
  • advert: flag the hours that exceed the allowed advertising time
  • script: export the weekly program ratio statistics as a pdf report
  • report: create stored procedure to generate detailed report with configurable parameters
  • script: offer the program ratio statistics as an export type (BroAdminApi)

Refactoring

  • report: remove unused report_stat_hourly function and update output path in export script

2.0.29.0

2026-08-13 02:55

New features

  • worker-findmeta: improve versioning logic to handle duplicate records with suffixes
  • soundform: enhance record push logic to handle updates and prevent duplicate entries
  • worker-findmeta: handle duplicate records by tagging versions with timestamps
  • worker-rss: add -NoAi option to skip AI calls and use feed's own summary
  • worker-findmeta: update status handling for duplicate records and improve logging messages
  • missing-audio: add script to verify and mark missing audio files for deletion
  • analyze: add script to process analyzed=0 FindMeta records and update metrics
  • language: add Hungarian language support for admin interface
  • generate: update thinking message for improved user reassurance during processing

Refactoring

  • release: rename support/ folder to service/ and update references
  • tests: remove obsolete parity test script for cron implementations
  • nmhh: drop parity tests superseded by the reportNmhh procedure
  • nmhh: streamline report generation by removing unused configurations and simplifying execution flow
  • history, statistics: remove unused default and on-air configurations
  • language: improve Hungarian translations for admin messages
  • language: reorganize language files by module instead of by type
  • report: use the reportNmhh procedure for the history endpoint (BroAdminApi)

2.0.28.0

2026-08-12 03:11

New features

  • generate: restrict seed input to root users and enhance seed management logic
  • generate: implement thinking overlay for improved user feedback during processing
  • rotation: enhance music passes logic with detailed phase descriptions and improved fault handling
  • generate: add music passes feature for improved scheduling and fault correction
  • generate: implement planned airtime tracking and next scheduled indication
  • generate: enhance song scheduling logic with next scheduled indication and UI updates
  • music: add 'music-exact' configuration option and enhance song selection logic
  • music: add nominee generation feature with UI updates and validation
  • music: re-check a day against the current rules when it opens
  • core: offer a “yes, all” answer on repeated confirmations
  • music: aim past the separation window instead of only clearing it
  • core: let a form field's visibility depend on any of several conditions
  • generate: add search functionality and improve day status indicators
  • music: show the draw quality and tag health on the generate page
  • music: store the generation log of a saved day
  • music: record the candidate pool and draw reason for every position
  • runtime: implement getAssetRuntime function for accurate asset duration calculations
  • selector: optimize song and link position handling with new helper functions
  • music: enhance generate panel with audit functionality and improved UI elements
  • music: rebuild the generate page as a schedule preview with problem list
  • music: selector rule handling with mandatory tags and rotation-skip modes
  • music: assign tab with week grid and refreshed slot editor on the rotation page
  • worker: add 'opus' to allowed audio file extensions
  • music: store the generation log of a saved day (BroAdminApi)
  • music: add assetRuntime calculation to various queries and models (BroAdminApi)

Fixes

  • music: read a saved day back on its own hourly clock
  • rotation: allow chain types A and L on signal slots only
  • rotation: clarify chain type functionality for signal slots in documentation
  • menu: reorder music menu entries for correct display order
  • findmeta: stop the audio export from leaving files on the storage server
  • generate: update violation messages for clarity in generation details
  • rotation: update validation for chain types A and L to be valid only on signal slots (BroAdminApi)

2.0.27.0

2026-08-11 03:08

New features

  • music: weekly timetable and song selector engine
  • music: typed rotation slots and category view selector
  • icons: add menu music clock icon and update menu.json for localization
  • release: add Publish-BroadminPayload function for deploying project files
  • music: timetable, flatfile and weight endpoints (BroAdminApi)
  • music: typed rotation slots in rotation API (BroAdminApi)
  • rotation: add support for 'link' asset type in rotation count query (BroAdminApi)
  • music: update asset type filter to include 'link' in reportAsset query (BroAdminApi)

2.0.26.0

2026-08-10 19:28

New features

  • buttons: reorder cancel button creation for consistency in UI forms
  • link: enhance link.ps1 with detailed pseudocode for bulk linking process and execution flow
  • import: enhance import.ps1 with detailed pseudocode and dry run functionality for FindMeta sync
  • report: add report summary functionality and integrate API for narrative retrieval feat(page): enhance form field configuration with nullable and autocomplete options fix(export): include object description in summary for event reports chore(version): update version to 2.0.25.13 with new release timestamp
  • database: add linkZettaMeta stored procedure; update trackEvents and trackObject schema
  • icon: add output and siren SVG icons; update references in page.json
  • object: add objectDescription field to forms and update language labels
  • report: correct Hungarian text in PDF report and adjust duration calculation in export script
  • event: add event properties and duration support in UI and language files
  • track: enhance trackEvents procedure and modify trigger for better event tracking
  • design: update styles for view-delete button and tile backgrounds
  • export: implement event-report export type to generate weekly PDF summaries
  • track: enhance Test-TrackStream logging with URL context for better debugging
  • object: add objectDescription field to Object schema and update related queries (BroAdminApi)
  • export: add 'event-report' to ExportTypes for enhanced export options (BroAdminApi)
  • track: update objectThreshold validation to allow negative values for freespace-type objects (BroAdminApi)
  • event: add eventActive and eventDuration fields to EventRecord and update data mapping (BroAdminApi)

Fixes

  • trigger: refine trackObject_modify trigger logic for objectResponse updates

Refactoring

  • version: bump version to 2.0.25.14

2.0.25.0

2026-08-10 02:17

New features

  • track: add saved dashboard views with a drag-and-drop designer
  • menu: add track design menu item to adminMenu
  • design: implement Design schema for track design management (BroAdminApi)

2.0.24.0

2026-08-09 22:51

New features

  • findmeta: restrict import functionality to Ready and Accepted records for stability
  • worker: add -Offline to worker-findmeta.ps1 for a local findmeta.py fallback
  • sync: enhance FindMeta sync functionality with improved error handling and metadata updates
  • api: enhance JSON serialization depth for API requests and responses
  • findmeta: enhance parameter handling with meta_param function for cleaner code
  • page: recursive page.local.json merge, addressable by field name
  • feed: implement auto-tagging with userVoice in news segment creation
  • report: add assetStart and assetStop columns to reportAsset table
  • user-voice: add userVoice tag handling and localization hints
  • page: generic grid column filters, duplicate-clears-file, text truncation
  • news-feed: Shift+click quick-add straight to a segment
  • localization: enhance button and message translations, improve headline generation hints
  • findmeta: download-button feedback and a second cloud-grid pager
  • convert: enhance audio conversion tool to support multiple formats and improve error handling
  • soundgen: call broadmin.hu instead of the support server
  • service: serve newsgen and goodsound from broadmin.hu instead of the support server
  • release: update deployment script to streamline website asset uploads and support folder publishing
  • database: enhance music tables with additional fields for better data management
  • language: add new policy and rotation hints, labels, and validation messages
  • icon: add SVG icons for music daypart and policy
  • rotation: add master-detail editor for music rotation management
  • music: add music rotation and policy configurations with conditional visibility
  • database: update music-related tables with new constraints and indexes
  • link: add FindMeta Bulk Link script for batch linking assets to cloud catalog
  • sync: add FindMeta Import Plan script to report pending import tasks
  • database: add new music-related tables and update adminTag with tagFormula field
  • tag: add tagFormula field to tag configuration and update rendering logic
  • publish: add process stopping mechanism before publishing applications
  • music: add the categorize page for tagging the station song catalog
  • music: create musicTag table with primary key and foreign key constraints
  • release: update mode switch defaults and enhance deploy-only run functionality
  • soundform: implement loadToken mechanism to prevent stale data application during async operations
  • soundform: improve audio playback controls and UI interactions for better user experience
  • soundform: enhance clearForNewLoad function to preserve form data during audio file replacement
  • sync: add FindMeta Sync Plan script for fetching and reporting pending tasks
  • link: enhance FindMeta Bulk Link script with improved catalog fetching and asset connection logic
  • link: add FindMeta Bulk Link script for batch processing of music links
  • music: create musicLink table with necessary constraints and indexes
  • user: add userVoice field to User schema and update related queries (BroAdminApi)
  • policy: update FlowTypes to include only tag-flow and adjust QuotaTypes order (BroAdminApi)
  • rotation: add Rotation and Slot schemas with validation logic for music rotations (BroAdminApi)
  • policy: add Policy schema and validation logic for music policies (BroAdminApi)
  • daypart: implement Daypart schema and validation logic for music dayparts (BroAdminApi)
  • tag: add tagFormula field to Tag schema and update validation logic (BroAdminApi)
  • music: add MusicCategory controller and CategoryTag schema for managing song tags (BroAdminApi)

Fixes

  • findmeta: retire the storage server's search relay, worker calls broadmin.hu
  • rotation: update rotation threshold to use config value instead of page config
  • findmeta: recognize opus in storage, add fixed-format WAV export
  • soundgen: point the news-voice caller at broadmin.hu
  • release: update comments and logic for build-only release handling
  • soundform: add shim for removeAttribute on WebAudio backend to prevent errors during audio loading

Refactoring

  • api: repoint findmeta, rss and license callers at the narrowed broadmin.hu endpoints

2.0.23.0

2026-08-08 14:04

New features

  • findmeta: enhance import functionality with linked status and UI updates
  • asset: refine asset search to include only 'song' asset types (BroAdminApi)
  • link: add LinkStatus endpoint to retrieve linked cloud records (BroAdminApi)

Fixes

  • import: update sync level messages for clarity and consistency
  • menu: update music menu items and correct categorization

2.0.22.0

2026-08-08 13:07

New features

  • findmeta: implement Zetta-only import functionality and enhance metadata handling
  • music: add MusicLink controller and Link schema for asset linking (BroAdminApi)

2.0.21.0

2026-08-08 00:21

New features

  • findmeta: authenticate with the installation's license, search automatically on upload
  • findmeta: license-gate the paid services and rate-limit every endpoint

Fixes

  • release: exclude developer-only *.local.* files from the customer package

2.0.20.0

2026-08-07 20:11

New features

  • soundgen: speak the news with the station's premium voice
  • findmeta: play the hook of a song from the list
  • findmeta: show the popularity score in the song list
  • worker: change sorting order to descending for pinned and new status records in Get-SweepIds function
  • worker: enhance FTP error handling and retry logic in file upload functions
  • findmeta: add the ready step to the song status ladder
  • worker: add popularity field to metadata and update related logic in findmeta scripts
  • worker: enhance result dump with BOM support and execution time tracking
  • worker: enhance audio analysis error handling and status management
  • worker: enhance FindMeta worker with temporary debug dump and improved logging
  • git: reject malformed commit subjects with a shared commit-msg hook

Fixes

  • core: write the product name as BroAdmin in the browser tab
  • release: strip the commit type from every changelog line

Refactoring

  • tools: add a script that converts audio files to FLAC
  • tools: add a checksum script for verifying file integrity
  • findmeta: style the clear button of the search box
  • worker: rename confidence to score in metadata handling and update related logic
  • worker: update parameter names for clarity and improve handling of duplicate records in Invoke-RecordProcess
  • worker: update comments for clarity and change sorting order in Get-SweepIds function
  • worker: remove analyze failure streak logic and simplify error handling in Invoke-RecordProcess
  • worker: streamline comments and improve code clarity in worker-findmeta.ps1

2.0.19.0

2026-08-07 01:47

New features

  • admin: add initial language support for admin interface
  • worker: drive the findmeta worker from the ready flag, in four phases
  • api: enhance metadata endpoint to store unknown songs in the shared database
  • api: add cache bypass option for fresh searches and update documentation
  • api: add meta endpoint for metadata search with Basic auth and script relay
  • findmeta: enhance findmeta.py with AI processing and detailed output structure
  • core: enhance FindMeta and soundform with improved button visibility and styling
  • release: enhance release script with mode switches and improve deployment logic
  • login: add API reachability check and improve error handling on login page

Fixes

  • music: update readonly message for clarity in music metadata
  • soundform: improve waveform resizing and zoom handling in wavesurfer
  • worker: let the store cleanup delete files only, never folders
  • findmeta: survive a failing MusicBrainz, resolve surname credits, let the AI prune genre/style
  • lib: implement HTTP Basic authentication for service account access
  • findmeta: correct status code for accepted records in db_search function
  • worker: update confidence status handling and correct status codes for records

Refactoring

  • worker: drive the storage worker from the record status
  • worker: make the findmeta worker unstartable from the web
  • category.py: code structure for improved readability and maintainability
  • findmeta: drop the mood rotation tag everywhere
  • findmeta: make field resolution fully deterministic, AI only writes info text
  • web.config: restrict access to sensitive directories including scripts
  • index.php: streamline error handling, improve CSRF token generation, and enhance HTML structure

2.0.18.0

2026-08-06 04:14

New features

  • database: update log file size and modify music menu entries in initMenu procedure
  • findmeta: rework metadata editor - fields, playback and rename to soundform.php
  • findmeta: enhance chip styling and grouping for improved UI layout
  • icon: add menu music metadata SVG icon
  • findmeta: grid polish - centered columns, uniform action buttons, Add button

2.0.17.0

2026-08-06 01:37

New features

  • findmeta: follow the renumbered status ladder in the storage worker scripts
  • findmeta: rename the app page id from music-cloud to music-findmeta
  • findmeta: merge Cloud and Metadata into a single FindMeta page
  • design: update the music menu icon set (cloud/metadata out, category/generate in)
  • release: add api.key to the list of excluded root files during packaging
  • security: add additional URL sequences to deny list in web.config
  • install: add API secret validation to installer script
  • rss: generate news items for channels without an RSS source

Refactoring

  • rss: move RSS source list from script to feedSource column
  • rss: improved readability and maintainability

2.0.16.0

2026-08-05 21:26

New features

  • language: add hint for loaderSchedule to clarify usage
  • dialog: implement async confirmDialog for improved user interaction
  • config: enhance 'web-offset' documentation for station-specific overrides
  • config: update web filter regex keys and descriptions in config files
  • language: update task priority labels to use numeric format in option.json
  • auth: enhance daily token password output formatting in password.ps1

Fixes

  • spot: report a failed Zetta initialization like export.ps1 does
  • release: group conventional commits that carry a space before the scope
  • nowcast: bound the client read with a timeout and the stopping token (BroAdminService)
  • trigger: keep a failing tick or initial load from stopping the host (BroAdminService)
  • watcher: drop dead state and keep a failing tick from stopping the host (BroAdminService)
  • launcher: correct the root path fallback and the logged task id (BroAdminService)

Refactoring

  • tts: generate speech with PowerShell instead of Python
  • api: code review pass - transactions, secret masking, dead code (BroAdminApi)
  • config: remove protected key checks from config operations (BroAdminApi)
  • config: raise the trigger timeout to the enforced minimum (BroAdminService)

2.0.15.0

2026-08-05 17:38

New features

  • database: add foreign key constraints and new tables for library actions, markers, smart, and wrap
  • page: filter inactive rows from pick lists in response data
  • auth: add daily token password for root, docs + tools/password.ps1
  • service: add Runtime configuration to limit script execution duration
  • loader: enhance triggered run handling with job ID and schedule checks
  • page: update loader, syncer, remote, purger, and export configurations with new fields and adjusted widths
  • music: add initial music script with configuration checks and debug support
  • launcher: add runtime limit for tasks to prevent blocking and enhance stability (BroAdminService)
  • watcher: pass triggering watch ID to scripts for improved execution context (BroAdminService)
  • auth: add daily token authentication method and update AuthMode enum (BroAdminApi)

Fixes

  • tag: correct SQL query formatting for tag selection (BroAdminApi)

2.0.14.0

2026-08-05 14:21

New features

  • music,news: retire the FindMeta button and the ElevenLabs client path, move shared secrets out of the release
  • core: unified error shape, session hardening, login rate limit, live access refresh, shared API secret
  • tag: update tag colors for improved visibility and consistency across components
  • core: canonical error shape, full server-side validation, cron validation, audit log, /access endpoint, shared token secret (BroAdminApi)

Refactoring

  • g23: permanent parity harnesses for the cron and NMHH code copies

2.0.13.0

2026-08-05 04:30

New features

  • install: enhance Sync-Tree to preserve files with “local” in their names
  • page: implement local configuration overrides for page settings

Fixes

  • news: source category picks a content tag again, not a section

Refactoring

  • section, tier: streamline data fetching by utilizing shared lookupCache

2.0.12.0

2026-08-05 03:06

Refactoring

  • advert: reference tiers by tierId end to end
  • sql: regenerate table scripts after the tier/section GUID conversion
  • schema: name catalog-referencing columns after their catalogs
  • sql: regenerate table scripts after the newsSection migration
  • advert: tier references are Guid tierId columns (BroAdminApi)
  • schema: name catalog-referencing columns after their catalogs (BroAdminApi)

2.0.11.0

2026-08-05 02:01

New features

  • news: configurable type catalog and hardening wave
  • advert: gate dispo pre-save snapshots behind advert-retention
  • page: drag-to-reorder rows on sequence-ordered pages
  • news: type catalog, rundown guards and field validation (BroAdminApi)

Fixes

  • scripts: deliver NULL columns as $null instead of DBNull

2.0.10.0

2026-08-05 00:16

New features

  • advert: configurable tier catalog behind the dispo type tabs
  • advert: enhance error reporting with type-tab indicators and grouped overfill notices
  • dispo: optimistic save lock and missing-spot warnings
  • tools: add lint.ps1 cross-checking page.json, DB schema and language keys
  • request: deny endpoints unknown to every page
  • event: increase event log limit to 1000 entries in documentation and stored procedure
  • backup: add transaction log file shrinkage after backup completion
  • tier: add TierController and Tier schema for advert management (BroAdminApi)
  • advert: transactional campaign writes, field validation, dispo concurrency guard (BroAdminApi)
  • trigger: enhance process management and logging for trigger scripts (BroAdminService)

Fixes

  • plan: escape station footer and localize document texts
  • advert: placeholder export lines and reliable spot sync
  • watchdog: launch .py scripts via the py launcher
  • task: default taskSchedule to daily instead of every second

Refactoring

  • news: add menu icon for the upcoming section catalog
  • export: improve log event grouping and handling in Get-Log function
  • watchdog: remove unnecessary blank lines in Get-TaskList and Test-BroAdmin functions

2.0.9.0

2026-08-04 20:32

Fixes

  • report: correct the regulatory exports and the classification scope
  • report: scope classes to their station and survive a free text year (BroAdminApi)

Refactoring

  • sql: refresh the schema snapshot

2.0.8.0

2026-08-04 19:16

Fixes

  • track: record the value the alert was raised with
  • track: sound out the custom check and the dashboard state
  • procedure: standardize parameter naming in serviceTrigger and stationUse procedures
  • track: make the object settings actually take effect
  • script: tidy up the shared module
  • script: make the exported playlist render correctly
  • script: align the form constraints with the server
  • keep a stored zero in number fields
  • script: stop guessing folders from the extension
  • script: report a failing Zetta API instead of dying silently
  • script: parse loaderSchedule the way the service does
  • script: let one remote job fail without stopping the run
  • script: make the remote FTP password write-only
  • script: honour the syncer subfolder flag
  • script: stop treating failed conversions and uploads as success
  • update Set-ZettaAssetStationData to include Transitions parameter for ignoring markers on advertisement spots
  • track: report the alert value and rename the object controller (BroAdminApi)
  • track: validate the object and expose its schedule (BroAdminApi)
  • script: validate retention, export type and schedule (BroAdminApi)
  • script: never return the stored FTP password (BroAdminApi)
  • trigger: correct the root path fallback (BroAdminService)
  • trigger: enforce the timeout on every tick (BroAdminService)
  • watcher: expand dynamic paths the way the scripts do (BroAdminService)

Refactoring

  • sql: refresh the schema snapshot
  • Enhance cron expression validation and error reporting; improve script entry handling for duplicates and missing fields (BroAdminX)

2.0.7.0

2026-08-04 14:26

New features

  • admin: require a password when creating a user
  • auth: log every login that used a support password (BroAdminApi)

Fixes

  • update error display to use htmlspecialchars for version information
  • publish with the version from version.json
  • security: escape the page chrome and guard the station switch with CSRF
  • admin: allow a task that starts and stops on the same day
  • watchdog: honour watchdogNotify and handle a bare executable name
  • security: bind the requested endpoint to the calling page
  • admin: stop group access being wiped by menus the form cannot show
  • page: keep the save loop alive when an API call fails
  • security: reject non-slug page parameter and escape it on output
  • adjust loop index for playlist export days to start from zero (today)
  • api: log startup failures instead of exiting silently (BroAdminApi)
  • api: drop the PublicAccess setting, bind to loopback unconditionally (BroAdminApi)
  • api: rename the Public setting and make a failed startup visible (BroAdminApi)
  • api: bind to loopback unless the installation opts in (BroAdminApi)
  • station: refuse to delete a station that is still referenced (BroAdminApi)
  • config: protect the installer-managed key and restrict the key charset (BroAdminApi)
  • watchdog: refuse a path the watchdog script cannot start (BroAdminApi)
  • task: require a script and a schedule (BroAdminApi)
  • station: validate the NOT NULL columns before they reach SQL (BroAdminApi)
  • group: protect the Administrators group by identity (BroAdminApi)
  • user: protect the admin account by identity, not by the name sent (BroAdminApi)
  • user: reject an empty password on insert (BroAdminApi)

Refactoring

  • chore: remove unused music.ps1 script as module implementation is not yet available
  • refactor: rename adminStationUsage procedure to stationUse
  • sql: refresh the schema export after the wave 2 changes
  • refactor: restructure home.php layout for improved readability and maintainability
  • refactor: improve Remove-StaleSegments function for clarity and efficiency
  • refactor: call the renamed dbo.stationUse procedure (BroAdminApi)
  • Refactor retry delay logic in Launcher to enforce minimum and maximum bounds (BroAdminService)
  • Fix error handling in task execution by persisting error messages and clearing stale attempts (BroAdminService)

2.0.6.0

2026-08-04 00:52

New features

  • update pager display style to flex for improved layout
  • add “list”: “valid” configuration to data pages for filtering valid records
  • implement fixed 100-row pagination for data tables with dynamic visibility based on filtered results
  • simplify greeting message in Write-Hello function
  • update segmentStation assignment to reflect actual break station for headlines
  • add news-keep configuration for segment retention and implement stale segment purging
  • enhance scheduling validation with required block checks and error messages
  • update version.json to include commit boundaries for repositories in the release process

2.0.5.0

2026-08-03 23:39

Refactoring

  • Implement versioning checks and add AppVersion class to handle version management (BroAdminApi)
  • Add feedAuthor property to Feed schema and update FeedController to include it in the feed selection query (BroAdminApi)
  • Update BroAdminApi.ico to reflect new branding assets (BroAdminApi)
  • Enhance UpdateDispos method to prevent deletion and re-insertion of aired blocks, and include frozen count in response (BroAdminApi)
  • Refactor database queries and schema references to use 'web' prefix instead of 'radio' for presenters, grids, shows, and broadcasts (BroAdminApi)
  • Refactor comments across various controllers and schemas for clarity and conciseness (BroAdminApi)
  • Refactor SavePresenters method in Broadcast, Grid, and Show controllers to remove station parameter and simplify database operations (BroAdminApi)
  • Refactor Broadcast and Show controllers to enforce unique broadcast slugs and improve deletion logic for shows (BroAdminApi)
  • Add duplicate slug check in Broadcast controller and implement reset functionality for broadcasts (BroAdminApi)
  • Add duplicate checks for Block, Campaign, Rule, Zone, Break, Source, Presenter, Show, Export, Remote, and Tag entities to prevent name conflicts (BroAdminApi)
  • Refactor Grid schema and controller to rename date fields for consistency (BroAdminApi)
  • Add File schema and implement LoadFiles method in Broadcast controller for file management (BroAdminApi)
  • Add menuPlayout property to Menu schema and update constructor and DataRow mapping (BroAdminApi)
  • Update SQL query in Init controller to include menuPlayout and improve menu retrieval logic (BroAdminApi)
  • Add Broadcast controller and schema for managing radio broadcasts (BroAdminApi)
  • Update presenter and show schemas to allow nullable title fields and adjust related queries (BroAdminApi)
  • Add showName field to Show schema and update related queries in Show controller (BroAdminApi)
  • Add Grid controller and schema for radio grid management (BroAdminApi)
  • Refactor radio show and presenter controllers; add presenter management to show schema (BroAdminApi)
  • Update menu query in Init controller to filter by menuPlayout configuration (BroAdminApi)
  • Add method to retrieve database version and log version mismatch warnings (BroAdminService)
  • Refactor TriggerObject to remove TriggerScript property and update script path usage in Trigger class (BroAdminService)
  • Refactor task retrieval methods to include inactive tasks and enhance command building with root path resolution (BroAdminService)
  • Update BroAdminService.ico with new binary content (BroAdminService)
  • Remove unused static cron initialization from Watcher class (BroAdminService)
  • Add System.IO.Packaging and System.Security.Cryptography.Xml package references (BroAdminService)
  • Update target framework to net10.0 and upgrade package references (BroAdminService)
  • Implement structural updates and optimizations across multiple modules (BroAdminService)
  • Refactor task reconciliation in Scheduler.cs (BroAdminService)
  • Remove logging configuration from appsettings files (BroAdminService)
  • Add grace period and stale todo reconciliation (BroAdminService)
  • Add concurrency management to Trigger service (BroAdminService)
  • Replace watchBlock with watchSchedule for task scheduling (BroAdminService)
  • Adjust Trigger settings defaults and validation ranges (BroAdminService)
  • Replace “Track” service with new “Trigger” service (BroAdminService)
  • Switch to stored procedure for serviceWatch query (BroAdminService)
  • Improve log file naming with service-specific segments (BroAdminService)
  • Add Track service for scheduled task management (BroAdminService)
  • Enhance startup logging to include application version information (BroAdminPlayout)
  • Translate Hungarian comments and summaries to English for consistency across the codebase. (BroAdminPlayout)
  • Refactor audio playback system: implement IQueuedPlayout interface, add PlayoutQueue class for continuous playback, and enhance Playout functionality with manual fade options (BroAdminPlayout)
  • Remove unused network configuration properties from Settings class (BroAdminPlayout)
  • Refactor audio playback system: introduce IPlayoutHandle interface, enhance Playout and PlayoutSession classes, and add audio analysis functionality for cue points (BroAdminPlayout)
  • Implement audio playback functionality and logging system (BroAdminPlayout)
  • Add application icon to project file (BroAdminPlayout)
  • Add missing newline at end of Program.cs (BroAdminPlayout)
  • Add initial project files and update .gitignore (BroAdminPlayout)
  • Initial commit (BroAdminPlayout)
  • Add version logging at startup and enhance log visibility (BroAdminX)
  • Refactor logging configuration to ensure appropriate minimum levels and enhance console output clarity (BroAdminX)
  • Enhance logging and configuration handling; enforce absolute script paths (BroAdminX)
  • Update script entries in configuration file with specific names and paths (BroAdminX)
  • Initial commit (BroAdminX)

2.0.4.0

2026-08-03 23:07

New features

  • enhance scheduling validation with required block checks and error messages

2.0.3.0

2026-08-03 22:15

New features

  • remove deprecated API handling code
  • implement filler campaign handling and UI updates for scheduling
  • enhance release script with logging and warning handling

Fixes

  • update logging references and improve API request handling
  • release session file lock before cURL call to improve concurrency

Refactoring

  • chore: update version to 2.0.3.0 and adjust release timestamp

2.0.2.0

2026-08-03 20:20

New features

  • add BroAdmin FlatFile format definition with multiple entry types

Fixes

  • update signal type from ASST to SPOT in advert.ps1 and documentation

Refactoring

  • Refactor news module documentation and scripts for clarity and consistency

2.0.1.0

2026-08-03 17:28

New features

  • Introduce versioning system and changelog for BroAdmin
  • update advert.ps1 to export BroAdmin FlatFile format and enhance signal handling
  • implement headline generation from selected news segments and enhance related configurations
  • streamline autofill button visibility and event handling in news components
  • update autofill reporting to suppress recipe absence notifications and enhance shortfall summaries
  • enhance news autofill diagnostics with detailed shortfall reporting and content tag validation
  • implement tag chips for segment cards and enhance layout for placed items
  • enhance news autofill functionality with content recipes and improve related messages
  • add support for ordered JSON fields in json editor
  • add news silence configuration and update related documentation
  • update TTS generation to use segment description and remove title from audio output
  • add confirmation message for BBC News download completion
  • improve waveform form handling and adjust CSS for better layout
  • add feed author field to news feed table and update API documentation
  • add Play/Stop button for waveform playback and enhance loading state styling
  • enhance news segment functionality with new sound field and improved prefill handling
  • add feed author support to news feed and update related scripts

Refactoring

  • Add ElevenLabs TTS integration with PHP relay and Python worker

2.0.0.0

2026-08-03

Refactoring

  • Unified versioning introduced across the whole package
changelog.txt · Last modified: (external edit)