Skip to content

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 07 Oct 14:51
· 66 commits to f8111faa3a2ee5c4b812fb9f95190f38ae615401 since this release

Release: v0.6.0

Release Date: 2026-10-06

⚠️ Breaking Changes:

  • CDR vendor columns are renamed everywhere: the former Vendor (<Operator>_<Vendor>) is now Operator_Vendor and the former Vendor_Only (the vendor alone) is now Vendor. Operators without a vendor show <Operator> - All in both columns (for example EE - All). Workspaces are migrated once at startup (processed CDRs, combined tables, catalogues and stored filter values), every filter and aggregation of CDR Analysis, Network Insights, E2E Dashboards, Scoring, Query Builder, Non-Qualified Calls and Reporting uses the new names, and files exported with the former names are still read with their former meaning. Report Templates are converted once so their charts stay identical: groupings and legends by Vendor become Operator_Vendor, and Vendor_Only filters become Vendor; templates written for earlier versions are converted the same way when imported, but exported templates cannot be imported by earlier versions. Review saved SQL in Query Builder that names Vendor_Only.
  • Every PowerPoint and Word export (CDR Analysis, Network Insights, E2E Dashboards, Scoring & GAP Analysis, Non-Qualified Calls) and every Reporting Job artifact is named yyyymmdd_hhmmss - <Module> - <report name> (the timestamp appears once) and the download of a run is yyyymmdd_hhmmss - Reporting - <job name>.zip.
  • Dashboard Analytic is now DriveTest Analyzer: the application, its header, browser title, login, emails and exports, the macOS launcher (DriveTest Analyzer.app and DriveTest Analyzer Installer.pkg), the GitHub repository (DriveTestAnalyzer), the FastAPI module (src.DriveTestAnalyzer:app), the Docker image (jaimetur/drivetest-analyzer), the environment variables (DRIVETEST_ANALYZER_*), the export, backup and temporary file names (drivetest-analyzer-*) and the launcher folders (.drivetest-analyzer-runtime, .drivetest-analyzer-venv) use the new name. Docker deployments must point IMAGE_REPOSITORY to the new image. Former DASHBOARD_ANALYTIC_* variables are still read when the new one is not set, export packages, JSON exports and backups created with the former name are still imported and restored, browser preferences are kept, and the launcher remembers the project folder chosen before the rename.
  • Mappings & Reference Data replaces the Operator & Vendor Maps component of Import/Export, transfers and Backup (component mappings-reference-data, file mappings-reference-data.json with the Operator and Vendor Maps, Spectrum Holdings and Campaign Maps); packages and backups with the former Operator & Vendor Maps component are no longer accepted.
  • Scoring aggregation hierarchy: the hierarchy is an application setting shared by every workspace and methodology, ordered from the Aggregation levels of Scoring & GAP Analysis and kept in the Application database backup. Methodologies no longer store it (a hierarchy in an imported methodology is ignored) and Workspace Config no longer has the Methodology Aggregation Hierarchy panel; hierarchies saved in methodologies are not migrated.

🌟 New Features:

  • Non-Qualified Calls lists every Voice and Speech call and every Data test whose result is not Completed in the ready CDRs of the workspace, indexed automatically when CDRs are added, reprocessed or deleted. An executive summary (totals, open, closed, attended, with team, commented, and breakdowns by Service, Result, Status, Team, Root Domain, Failure Classification, Campaign, Operator, Vendor, Region, Cluster and City) drills down into a filterable, sortable and paginated table — every indicator card and value of the Summary, Progress and Root Cause Analysis panels filters it — where editors set each call's status, responsible team and assignee in place or in bulk. The Filters panel (CDRs, Campaign, Operator, Operator_Vendor, Vendor, Region, Cluster, City with Main Cities, Service, Technology, Test Name, Result, failures, Status, Team and Assignee) is shared by every user of the workspace and restored in every session. A Progress View adds donut charts by Status, Team, Assignee, Service and Result, and per week, month, quarter or year the calls detected, attended, commented, closed and reopened, status changes, the open backlog and the average days to close, the age of open calls and the workload of teams and assignees. A side panel shows every CDR field of the call and an activity timeline of shared comments and changes with their author and time; comments can be edited or deleted by their author or an admin while the history keeps every previous value, and concurrent changes are detected instead of overwritten. Statuses and teams are configurable with colours in Statuses & Teams, where the Members of each team open a dialog to choose its users (a user can belong to several teams); a call of a team with members can only be assigned to one of them. The follow-up stays with each call when its CDR is reprocessed or uploaded again, admins and super-admins can delete single history entries, the history of a call or that of the selected calls, Export Excel downloads the filtered calls with their comments and history, Reporting Jobs include a Non-Qualified Calls artifact (Executive Summary and Progress Status in PowerPoint, Word or Excel, with its own filters, period and open-calls option), and the follow-up with teams and members travels as NQ Call Tracking with Import/Export, transfers, Full Workspace/Environment packages and backups.
  • Workspace access by role and group: besides individual users, each workspace can be granted to roles and user groups when it is created or saved in Workspace → Access (super-admins) and in the new Admin → Workspace Access panel. The Users table of Admin chooses the user groups of each account in a new Groups column, and its Workspaces column also lists the workspaces an account opens through its groups and its role.
  • CDR type of a workspace: Workspace Config and the creation of a workspace choose the CDR files the workspace handles. NetCheck CDR is the default and the only type supported today; Umlaut CDR is listed as coming soon.
  • Most Reliable Network scoring: besides the Best Network scoring, Scoring & GAP Analysis calculates the NetCheck Most Reliable scoring, which rates the KPIs whose KPI Type is Reliable (call success, POLQA < 1.6, transfer success, throughput above 2/1 Mbit/s, browsing and video success) with its own maximum points and the same thresholds. Each methodology sets the Most Reliable points of its Reliable KPIs per environment in its KPI table (1,000 points in NetCheck 2026: 650 Drive - City and 350 Drive - Connecting Roads; Voice 350 and Data 650); points copied with two decimals that miss an environment's total by up to 0.1 points (1,000.04) are scaled to it exactly. Every job whose methodology has Most Reliable points shows both scorings with the same CDRs, filters, aggregation and GAP reference: a Scoring selector beside Environment switches the tables, charts, GAP analysis and notes, and the Scoring and GAP CSV follow it. The PowerPoint and Word exports and the Scoring artifact of Reporting Jobs contain both scorings in one document, a Best Network block followed by a Most Reliable block. Most Reliable points travel with the methodology in its JSON export and import, transfers and backups.
  • NetCheck-style Scoring insights: for both scorings, in the web results and in the PowerPoint and Word exports (All Environments block or the exported environment), Scoring & GAP Analysis adds Scoring per City / Cluster / Region cards when that level has 2 to 12 values (each operator's Voice and Data points and total, labelled with the operator names of the mapping table and with tooltips on the web, scaled to the full maximum when a location is measured in fewer environments, with a dark blue summary panel), a Scoring Trend line chart when Campaign has more than four campaigns, a KPI GAP Profile per compared operator and per selected City, Cluster or Region (Gap to Maximum and Gap to the reference per KPI and environment, sorted, with gradient data bars in every column; the Most Reliable KPIs underlined in Best Network; on the web it follows the operator chosen in GAP comparison, and the reverse), a Points Lost Map per compared operator (on the web, chosen by location and by one or more operators shown side by side (all by default), both shared with the KPI GAP Profile, and by the analysis per City, Region or Cluster (disabled without data); each map zooms into a dragged rectangle or with floating zoom buttons shown while the pointer is over it; the UK ITL3/NUTS3 areas coloured by the points lost, with the bundled ONS boundaries, and the cities and Connecting Roads routes that lose most; per Cluster and per Region on the workspace's Clusters and Region Mapping polygons; each KPI's lost points are shared among the tests that cause them) and a Campaign Comparison of each KPI's value and points in the two latest campaigns with the total Scoring Points Gap. Scoring slide titles are blue with their focus in bold, the third chart is called Scoring per Category (Breakdown), and cover titles wider than the slide are reduced to one line.
  • Scoring report scenarios: Generate Scoring Report (PPT/Word) of Scoring & GAP Analysis (from the CDRs, NR Mode, methodology and GAP reference selected in the Calculation panel), and the Scoring artifact of Reporting Jobs (Configure report…, required: its filters and aggregation levels are those of the scenarios), open a report editor with one or more scenarios (for example National, London, Main Cities and per Vendor), each with its own filters (with a search box, Select All / None for the listed values, Main Cities, which checks the workspace main cities and follows that list at each run, and an All option, which follows the values of the CDRs at each run; the values stay editable, in every list; a list shows one chosen value by name and several by their number, such as 2/4 selected or Main Cities (5/12)) and aggregation levels (a level with a single value, such as one Campaign, is left out of the scenario and of every Scoring chart, table and document) on the job's CDRs, NR Mode, methodology and GAP reference, calculated or reused when the document is generated. Each scenario chooses, for the Best Network and the Most Reliable Network scoring: All Environments only (default, and its subtitles omit it) or each environment too, the scoring charts (per Service, per Category, per Category (Breakdown), per City/Cluster/Region cards and trend), the tables (Category and Breakdown, KPI values in the PowerPoint Breakdown tables, GAP values and Campaign comparison) and the GAP analysis (operators to compare, Vodafone and Three by default; all-operators table, individual tables, KPI GAP Profile and Points lost per City map). Configurations are saved and deleted by name and loaded by choosing them in the selector, which opens on the configuration in use (Default included; unsaved changes ask to cancel, discard them or save them first), export and import as JSON, the last one used reopens in later sessions, and they travel with the Scoring & GAP Analysis Configuration in Import / Export, transfers and backups.
  • Non-Qualified Calls root causes: each call can be labelled with a root cause from a configurable taxonomy of domains (RF, RAN, Core 2G/4G/5G, Core EPSFB, IMS/E2E, AAA, Protocol, Device) and causes, in the row, the call details or for several selected calls at once. Keywords of each domain and cause, matched as whole words in their configured order, suggest a root cause from the CDR Failure Classification, Category, Subcategory and Comment and, when the CDR leaves the cause unresolved, from the comments of the call, following a suggestion rule that every user can see and admins and super-admins can change (fields, steps and keyword matching); a click (or Apply suggestions on the selected calls) applies it, Add missing defaults restores missing default values, and a workspace setting can require a root cause to close a call. The Root Cause Analysis panel, the PowerPoint and Word exports and the Reporting Jobs artifact show the calls per root domain and cause, Classic vs WhatsApp, NSA vs SA, technology and the eNB/gNB of their last cell with its site, host and vendor from the cell mappings; the Root Domain and Root Cause filters, the Excel export, Database Management (NQ Root Causes) and the NQ Call Tracking import, export, transfers and backups include them.
  • Vendor_Operator: every CDR offers Vendor_Operator, the Operator_Vendor identity the other way round (<Vendor>_<Operator>, <Operator> - All without a vendor), as a filter in CDR Analysis, E2E Dashboards, Network Insights, Scoring & GAP Analysis, Non-Qualified Calls and Reporting Jobs and as a chart dimension; it is derived when the CDRs are read, so existing CDRs have it too. The Operator_Vendor and Vendor_Operator filters stay in sync: selecting values in one selects the same identities in the other. Vendor_Operator is ordered by Vendor and then Operator, with Ericsson_Mixed beside Ericsson for each Operator and Non-Ericsson_Mixed last of all, after the operators without a vendor.

🚀 Enhancements:

  • Select All per section: the content selectors of Import / Export / Transfer, of the backup and of the backup restore show a Select All button beside every section with several options (for example Workspace Content), which turns into Select None once the whole section is selected.
  • Backup content: the backup selector lists Configuration Content, then the Workspaces to back up by name (replacing the separate Workspaces to include field), then the Workspace Content kept of the selected workspaces; a green card under Backup Now summarises what the backup keeps (for example UK: full workspace without Input or UK: 5 of 12 parts) and an amber one explains selections that leave content out. The Input and Output folders can only be selected together with the Workspace Database they belong to, are listed last (Output, then Input) in the backup and restore selections, and schedules saved without the database leave them out. Saved Queries are called Query Builder Queries in backups, as in Import / Export.
  • Export / Transfer: the workspace content section is called Current Workspace Content, the Full Workspace section notes that it includes the Input and Output folders, and exporting or transferring a Full Workspace asks whether to include its Output folder and, new, its Input folder (original CDR files, needed to reprocess datasets); both are included by default.
  • Module tabs: Admin → Interface Settings sets, for every main module, the position of its tab (dragging the row or with arrows), its title and short title for narrow windows, its icon and its colour, besides its label, with a preview of each tab; the Modules menu, the Help navigation and Features Activation follow the same order, and the Help names renamed modules with their new title. Every Help navigation chapter shows an icon: its module tab icon and colour, or a document icon for the General and Reference chapters. These settings travel with App Config in Import / Export, transfers and backups. The default order is Workspace, CDR Analysis, E2E Dashboards, Reporting (old), Scoring & GAP Analysis, Network Insights, Non-Qualified Calls, Reporting and Builders. The tabs use a slightly smaller title and padding when that keeps them on one row, and return to their default size on two rows when even the compact size does not fit; the administrative tabs sit just above them, leaving room for the module labels.
  • Colour pickers (Operator and Vendor Maps, module labels) show their value in hexadecimal beside them, to copy it or paste a new colour.
  • Features Activation highlights the modules active for Nobody by default.
  • Operator and Vendor order everywhere: whenever Vendor or Operator_Vendor is a row or column aggregation (CDR Analysis, E2E Dashboards, Reporting, Chart Builder, Scoring & GAP Analysis tables and exports, Network Insights groups and CDF curves, Non-Qualified Calls breakdowns), Vendors follow the Vendor Maps table and Operator_Vendor values follow the Operator Maps table and, within one Operator, the Vendor Maps table; Vendors missing from the map follow the mapped ones and Operators without a Vendor come last. Previously the Scoring Vendor level and the Vendor field were ordered alphabetically.
  • Network Insights: opening or reloading the page with the selection of the last analysis shows that analysis again at once, from the results kept by the workspace, without pressing Analyse Network.
  • Scoring & GAP Analysis: Scoring Charts is the first tab of the results panel and the one opened by default.
  • Scoring & GAP Analysis: when the filters leave an environment without results in every series (for example City = London, only in Drive - City), the Combined scores scale the environments with results to the full maximum scoring, the same for every operator, and an orange card explains it; the maximum-score donuts show the configured points struck through beside the allocated ones, and the PowerPoint and Word exports show the notice in orange. Saved jobs are scaled when opened, without recalculating. Calculation notes group the series with the same missing contributions into short notes.
  • Scoring & GAP Analysis: reloading the page keeps the selected results tab and the location, operators and analysis of the KPI GAP Profile and Points Lost Map, while opening the page again from another page or calculating a new scoring always opens Scoring Charts.
  • E2E Dashboards: PPT Generation Jobs are listed newest first, so a relaunched job moves to the top; selecting a job in the table shows its charts in the Charts Panel, and the Charts Panel offers View as Dashboard to open the Dashboard of the selected job.
  • Operator and Vendor Maps: groups with unsaved changes are highlighted with their save button, a counter above each table shows how many there are, Save all changes saves them together (groups that cannot be saved keep their edits and are listed), and leaving the page with unsaved changes asks for confirmation (with the application's dialog when following one of its links; reloading, closing the tab or going back can only use the browser's own).
  • Administration: every panel describes its purpose under its title, Workspace Access is listed before Features Activation without the empty space above their tables, and the bulk dataset actions share the row of Apply Changes in Datasets Management.
  • Main tabs: Non-Qualified Calls uses a raspberry palette, Network Insights an electric indigo palette, and Scoring & GAP Analysis shows its selected tab with the gradient of its header. Module tabs show their stage in a small label in the corner: a red ALPHA while in development (Network Insights and Non-Qualified Calls), a yellow BETA while being validated (Reporting and Builders), a blue NEW with a star once consolidated (Scoring & GAP Analysis) and a green STABLE for established modules (Workspace, CDR Analysis and E2E Dashboards). In Admin → Interface Settings, super-admins choose the label of each main module (any short text, or none), its colour and an optional predefined icon in front of it (star, sparkle, lightning bolt, rocket, flame, trending up, heart, crown, check mark, flask, warning, information, cross, bug, wrench, clock, lock, shield or dot) with its own colour, preview them live, reset them to the defaults or hide every label. Unselected module tabs are light and neutral, with their module colour on the icon and a thin top line, and take a tint of that colour on hover. The administrative tabs have icons and the same visible height as the main tabs. Every module header has a subtle decoration that represents the module: data layers (Workspace), CDF curves beside a bar benchmark (CDR Analysis), an antenna with radio waves, a drive-test coverage map and a site inventory (Network Insights), a dashboard slide with KPI tiles, bars, CDF curves and a donut (E2E Dashboards), a trophy beside ranked bars with a GAP bracket (Scoring), a failed call beside an executive follow-up dashboard (Non-Qualified Calls), report pages and a paper plane (Reporting), slides (Reporting (old)), a chart canvas with a pencil (Chart Builder), a database with SQL and a magnifier (Query Builder), a shield (Admin), meshing gears (Config) and a log sheet with a magnifier (App Logs). Module headers fit their content with the same spacing and text sizes, their decoration fills the header height and their descriptions wrap before it. Workspace and CDR Analysis show their selectors in a separate panel below the header (Select Workspace and Select CDR to Analyze, with the colour of the header), and the badges and actions of Workspace, Scoring & GAP Analysis and Non-Qualified Calls move to the first panel below the header with stronger contrast; Admin and App Logs headers no longer show a badge.
  • Cluster is available after Region in the filters of CDR Analysis, Network Insights, E2E Dashboards, Scoring, Non-Qualified Calls and the Reporting Job artifacts, as a Network Insights grouping and column of its inventory tables, and as a Scoring aggregation level shown in Scoring job names and in the name of the generated PowerPoint. Saved Scoring methodologies keep their calculated jobs and place Cluster after Region.
  • Filter order: Operator_Vendor and Vendor follow Operator in every filter panel, E2E Dashboards list Operator, Operator_Vendor and Vendor before the location filters and Campaign, and Main Cities is the first option of every City selector. The Network Insights artifact shows its filters in one row.
  • CDR Analysis offers only measurements in its metric selector: the service KPIs and the radio and service measurements of each CDR (RSRP, RSRQ, SINR, CQI, MCS, BLER, transmit power, throughput, delays and RTT), without identifiers, timestamps, durations, bands or minimum and maximum columns, and every metric is selected by default.
  • Reporting is available to every user, Reporting Job filter and metric dropdowns open one at a time, close when clicking elsewhere and show their name above them, list only the values of the CDRs each entry uses (its selected CDRs or those of its NR Mode), read All when every value or none is selected and offer Select All / None, all job actions share one row and the last run status has its own column. The Job Editor unfolds inside the jobs table, right below the edited job (or at the top for a new one), and folds away on Cancel, its × button or Save, asking before discarding unsaved changes and reopening with them after a page reload; it starts with the job name and a Job enabled switch, then the schedule and the delivery, and then the artifacts; disabled jobs keep their actions at full colour; each artifact checkbox reads as the title of its panel, every row of choices (formats, aggregation, CDF comparison, grouping, levels and weekdays) uses green chips, and at least one output format always stays selected.
  • Startup: while the active workspace is opened and its database upgraded after an update, the application answers with a page that reports the progress and opens the login as soon as it is ready, instead of a blank screen.
  • Workspace dialogs: Reprocess Datasets and Clear Mappings are wider and list the CDRs in Data, Voice and Speech panels with Select All/None, like Map CDR fields.
  • Datasets Analysis is now CDR Analysis in the tabs, menus, Reporting Job artifacts, summary exports and documentation; its address (/datasets-analysis) and its Features Activation key are unchanged. Open Dataset shows the analysis at once, and the last metrics and Adaptive Filters applied to each CDR are shared by every user of the workspace and restored in every session (Reset clears them). Filters follow Source Sheet, Operator, Operator_Vendor, Vendor, Market, Region, Cluster, City and Test Name. CDF comparisons group by Operator by default with Operator listed first, charts have floating zoom controls, rectangle zoom as in E2E Dashboards and hover tooltips and rotate bar labels that do not fit, the CDF Visible X Range has a start and an end handle and starts by default where the first curve reaches 5% of its samples, mirroring the 95% end, Export PowerPoint and Export Word export the open CDR as on screen (with each chart's comparisons and visible range) or a summary of the selected CDRs from one dialog with CDR Data, Voice and Speech panels, PowerPoint exports use the PowerPoint template in assets with a title slide listing the filters, tables, percentiles, bars and CDF curves by Operator, Vendor or Operator_Vendor follow the order of the Operator and Vendor Maps of Workspace Config, grouped percentiles and Processed Metrics (with Cluster after Region) show two decimals, metric cards keep their sample count inside the card, and analysing many metrics is about twice as fast.
  • Vendor filters list their values in the same order everywhere: pure vendors, then mixed, other and all-vendor groups, then operators without a vendor, each block alphabetically.
  • Reporting Jobs: the CDR Analysis artifact chooses the metrics of each CDR type (Data, Voice and Speech; all by default), the Network Insights filters and single-choice Global Comparison and Global CDF Comparison rows, and Network Insights artifacts keep Operator in their grouping unless Vendor is checked, as in the module. CDR Analysis, Network Insights, Dashboard and Scoring artifacts choose their CDRs by hand or, at each run, with Newest complete set of Data, Voice and Speech CDRs or All complete sets of Data, Voice and Speech CDRs (every CDR whose campaigns have Data, Voice and Speech CDRs of the NR Mode; CDR Analysis applies them in each NR Mode), which replace every ready CDR (jobs saved with it use All complete sets); the locked CDR list shows the CDRs the chosen option selects now.
  • Faster pages: Workspace and CDR Analysis open without rescanning the CDRs: which metrics have values in each CDR and the row count of each combined table are kept in the workspace until that CDR or table changes. CDR Analysis shows its first four metrics at once and loads the rest in the background in small batches, computes what every metric shares once, copies only the columns each metric uses and keeps the recent analyses of several CDRs in memory.
  • Network Insights exports follow the order and layout of the page, each section on its own slide or page: the Overview cards of every group, RF Quality with the RSRP and SINR CDFs side by side above the table with the class bars, the Coverage and Interference maps of every group side by side with their areas tables under them (one slide per technology and group), Network Deployment with Vodafone beside Three, Cluster Sites Density and Spectrum; a progress dialog stays open while the document is prepared. Its Observed Sites/Cells tables list Cluster after Region, and the Export CSV, Export All to CSV and Previous/Next buttons stand out.
  • Non-Qualified Calls exports the Executive Summary and Progress Status of the filtered calls to PowerPoint and Word from its page, with a progress dialog while the document is prepared (the PowerPoint and Word buttons of Non-Qualified Calls and Network Insights have their own colours and icons), and its Progress View timeline and donut charts show interactive tooltips (a click on a donut slice filters the calls).
  • Reporting Job Editor: the Reporting Jobs and Run History tables list artifacts by module (the module in bold and, when it has several entries, its entries indented below it, with PPT, Word and Excel each in its own colour and, in Run History, each format linking to its file); Run History also shows how long each finished run took next to its status; artifacts are organised in tabs on top of the artifact's panel (the selected tab joins it), one per artifact type in the colour and with the icon of its module and a check after its name when it is included, and each artifact and entry is a white card with that colour; the Scoring artifact is generated in PowerPoint and/or Word, and Non-Qualified Calls always generates PowerPoint or Word, with Excel (the calls detail) as an optional extra explained by its tooltip.
  • Scoring & GAP Analysis exports the selected job to Word as well as PowerPoint, from new buttons beside NR Mode, with a progress dialog while the document is generated; each Word page shows a slide exactly as in PowerPoint when LibreOffice is available (it is included in the Docker image), otherwise the slide tables and charts are rebuilt; PowerPoint and Word export buttons of CDR Analysis, Network Insights, Non-Qualified Calls and Scoring share their colours and icons.
  • Non-Qualified Calls PowerPoint and Word show the Executive Summary (on one slide) and Progress View with the look of the page: indicator cards, breakdown bars, donuts with legends, the timeline with the open backlog, age and workload cards and styled detail tables, with the report selection on the cover.
  • Word exports of CDR Analysis (current analysis and summary) and Scoring & GAP Analysis show every slide of their PowerPoint report, one landscape page per slide, when LibreOffice is available (the Docker image includes it); Network Insights tables in PowerPoint and Word use the style of the page (light teal header, lavender alternate rows, thin lines, right-aligned numbers, the colour swatch of each group in RF Quality and the cells bar of each Network Deployment group).
  • Generated documents are grouped by module below output/reports/ of each workspace: dashboards (E2E Dashboards), cdr-analysis (CDR Analysis), network-insights (Network Insights), reports-old and reports-charts-old (Reporting (old) reports and Chart Sets) and reporting-jobs (Reporting Job runs). Documents of existing workspaces, backups and transfer packages are moved there the first time the workspace is opened, and their jobs keep finding them.
  • Dataset actions of Workspace and Admin show an eye on Preview Dataset, centred in its button, and the CDR Analysis tab icon on Show Analysis.
  • Workspace no longer offers Recalculate Scoring among the actions of each CDR: a Scoring needs one CDR of each type, so Scoring jobs are launched from Scoring & GAP Analysis (CDRs still queue the default Operator scoring automatically when compatible companions are available).
  • Scoring charts leave out of the bottom axis the hierarchy levels that have the same value under every bar (such as a single campaign), and long axis labels wrap at _, - and / or are shortened instead of overlapping their neighbours; bar tooltips keep the complete path.
  • Campaign Maps: a new Workspace Config → Mappings & Reference Data subpanel (the former Operator & Vendor Maps panel, with Campaign Maps below Vendor Maps) sets how every chart, table, legend, filter and PowerPoint or Word report names and orders campaigns: a label format with markers ({year}, {yy}, {quarter}, {mode}, {market}), the order of the modes inside a quarter and exceptions for campaigns outside the pattern, with a live preview. New campaigns follow the format without editing the map; the default shows 2026-Q2, 2026-Q2-NSA and 2026-Q2-SA in chronological order with the plain, NSA and SA campaigns of a quarter in that order. Filters, saved filters and exports keep the original campaign values, and the map travels with the Mappings & Reference Data in Import/Export, transfers and backups.
  • Mapped values everywhere: Operators, Vendors and Operator_Vendor values are listed, filtered and shown with their Operator and Vendor Maps labels in every module (CDR Analysis, E2E Dashboards, Network Insights, Scoring & GAP Analysis and its report editor, Non-Qualified Calls and Reporting Jobs), in the order of the maps (Operator_Vendor by Operator and then Vendor, Vendor_Operator by Vendor and then Operator, and Operators without a Vendor last in both); choosing a mapped label selects every source spelling, and selections saved with a source spelling keep working. Only Preview Dataset shows the source values.
  • Vendor mapping for every spelling of an Operator: the VFUK and 3UK mapping files also assign the Vendor of tests named in another mode (for example Vodafone SA, Vodafone VoNR or VF_SA), which share the same cells; their Operator_Vendor keeps their own name (for example Vodafone VoNR_Ericsson). CDRs mapped before need to be mapped again.
  • Scoring results toolbar: the Calculation and Results toolbars offer Scoring Methodologies and, respectively, Generate Scoring Report (PPT/Word) (the report editor) and Export Selected Scoring Report (PPT/Word) (the selected job as calculated; it only asks for PowerPoint, in orange, or Word, in blue), which replace the former PowerPoint and Word buttons beside NR Mode, Aggregation hierarchy, in the Aggregation levels panel, opens a dialog to reorder the hierarchy, each Export to CSV sits above its Scoring or GAP table and exports the table shown, and the job selector takes the free width of the header; the Scoring Charts, Scoring Tables and GAP Analysis tabs, each in its own colour and with an icon, sit on a panel that holds the results.
  • Scoring per Category (Breakdown) slides keep every category on one slide up to 50 bars and only split above that, into balanced pages, in PowerPoint and Word.
  • Scoring & GAP Analysis charts, maps and tables: double-clicking a chart, a map or a table of Scoring Tables and GAP Analysis opens it larger, taking the whole screen but 5% on each side, and every Scoring chart and map zooms into a dragged rectangle or with floating zoom buttons, also in the larger view.

🐛 Bug fixes:

  • Administration panels that show saved settings (Users, User Groups, Workspace Access, Features Activation and Interface Settings) always show what the server saved. The browser restored its own last copy of their fields after every reload, and every checkbox of one Allowed or Forbidden picker shared that copy, so reloading could tick or untick a whole picker and the next save stored it (for example removing the super-admin role from Reporting (old)).
  • Vendor labels containing an underscore (such as Ericsson_Mixed) are no longer matched by their last part (Mixed), which gave them the order and colour of another Vendor Map group in CDR Analysis; an Operator_Vendor value is split after its Operator (3_Ericsson_Mixed is Operator 3, Vendor Ericsson_Mixed).
  • Saving, moving, deleting or adding an Operator or Vendor Map group in Workspace Config updates its table in place again, without reloading the page or scrolling to the top, and keeps the unsaved edits of the other groups and of the new-group form (a rejected save also keeps what was typed in its own row). Since the tables moved to Workspace Config every save reloaded the page and discarded those edits.
  • Backups are written under a hidden temporary name and get their backup name only once complete, so a backup interrupted mid-write (application stopped or restarted, computer shut down) is no longer listed, counted in the retention or offered for restore; finished backups also delete those leftovers after six hours. The Restore list marks ZIP files that were cut short before this version as incomplete and does not let them be selected.
  • Application Config can be imported, transferred or restored from a backup of another server without breaking access or backups there. Packages list the name of each workspace id, so the user grants and the role and group access rules of each workspace follow the workspace with the same name on the destination; grants of workspaces the destination does not have are dropped, and those of workspaces only the destination has are kept. The backup schedule, its folder, workspaces and retention, and the runtime settings (background task limit, event time filtering, timezone) of the destination are kept as well, so a smaller retention can no longer delete its older backups.
  • Selecting a Full Workspace in Export / Transfer no longer clears only some Workspace Content options: the Full Workspace of the active workspace replaces every kind of workspace content (all of it is inside that package), and the Full Workspace of another workspace keeps the content of the active one, which it does not contain.
  • The incoming server transfer dialog is wider and lists each transferred content once, in two columns, with the proper names of Query Builder Queries, Reporting Jobs and NQ Call Tracking.
  • Reporting Jobs brought by a backup restore, an import or a server transfer keep the owner they had on the source server when that user exists and is active here, and otherwise belong to the user who restores, imports or accepts them. They were previously owned by a placeholder import user with the default role, so their artifacts of modules limited to some roles (for example Network Insights and Non-Qualified Calls) failed with "import no longer has access". Jobs already imported that way get their owner on the next import of the same jobs.
  • Backups delete, once they finish, the database snapshot folders (drivetest-analyzer-export-* and the former dashboard-analytic-export-*) that backups killed mid-copy (container stopped, computer shut down) left in the backup folder; folders changed in the last six hours are kept in case another backup is still using them.
  • Column filter menus of Network Insights inventories and other Excel-style tables stay attached to their column while the page or the table scrolls.
  • Non-Qualified Calls filter dropdowns are no longer clipped, and the Progress View legends show complete names.
  • Tables in the Help show their first column without splitting words.
  • Partial CDR catalogues (rows holding only some filter universes after the vendor migration) are detected and rebuilt from the CDR rows; Reporting Jobs rebuild them in the background and opens its editor at once.
  • CDR Analysis CDF comparisons draw one curve for every value of the chosen dimension when its filter lists every value, instead of only the values whose mapped name equals the source name.
  • Exports that draw charts (Network Insights, E2E Dashboards and Reporting) retry starting the chart renderer once and, if it still cannot start, show the reason instead of a generic message.
  • Network Deployment counts the cells of inventories identified by GCID, Cid__ECI, ECI, Cell_ID or Global CI, as the inventory exports already did, and shapely (used to place sites in Region and Cluster polygons) is a declared dependency.
  • CDR Analysis PowerPoint exports no longer fail when a Group Benchmark has negative means (RSRP, SINR…): bars are drawn above or below a zero line. Failed PowerPoint and Word exports show their reason in the application's error dialog instead of a bare status code.
  • Help pages show & in link texts (for example Scoring & GAP Analysis) instead of &amp;. CDR Analysis and Non-Qualified Calls covers keep the report title, the analysed CDR and the filters readable, with long filter lists summarised; CDR Analysis content slides use the white layout of the template, CDR Summary names the analysed CDR as subtitle, and its bars and CDF curves keep the Operator and Vendor colours of the page.
  • Opening CDR Analysis with a long saved selection (many metrics and filters) behind a reverse proxy such as Synology's showed the proxy's error page instead of the analysis: the selection was restored through a redirect whose address exceeded the proxy's header limit. The page now shows the saved selection directly.
  • Importing, transferring or restoring Auto-calculated Fields identical to those of the workspace no longer materializes the whole workspace again, which kept it busy for minutes after a transfer.
  • While the Auto-calculated Fields of the active workspace are being materialized, every page says so, since analyses and exports may be slower or fail until it finishes.
  • Failed requests answered by a reverse proxy or by a server error (for example a timeout) show their cause, such as The server did not answer in time (HTTP 504), instead of a generic message like Unable to analyse the selected CDRs.
  • An incoming transfer left receiving or importing when the server stopped is marked as interrupted when it starts again, instead of being shown as a running task that could not be stopped; nothing is imported again without approval.
  • Dashboard charts are prepared in the background again once nobody uses the application for five minutes: the periodic checks of incoming transfers and backups that pages make on their own counted as use, so with any page open the charts were only prepared when a Dashboard was opened.
  • Scoring & GAP Analysis: jobs aggregated by Cluster showed every cluster as Not specified and mixed their scores in the result tables, charts and exports; each cluster now has its own columns, and the Scoring and GAP CSV add a cluster column.
  • E2E Dashboards: Hide, Hide All and Keep only on an axis value (for example the Operator O2) now hide it everywhere even after a legend entry that contains it, such as O2 · 2026-Q1 of a CDF chart, was shown or hidden on its own; before, those series and columns stayed visible.
  • Reporting Jobs with CDR Analysis in PowerPoint and Word: building the Word document no longer removes the PowerPoint of the same run, and Run History links only the files of each run that still exist.
  • Scoring PowerPoint and Word titles keep the template's size while they fit the 27.5 cm title placeholder (such as Best Network Scoring per Category (Breakdown)); only longer ones are made smaller to stay on one line, so they no longer cover the subtitle or the Page x of y note; the part that tells consecutive slides apart (after the dash, such as GAP Analysis — 3 vs EE, or the per … focus) is in bold, in the colour of the rest of the title.
  • After Region or Cluster polygons were used (Network Insights, CDR mapping), the server could no longer start processes (dataset workers, Word and PDF conversions), which ended with a crash on macOS; the polygon libraries are now loaded at startup.

📚 Documentation:

  • Added the Non-Qualified Calls guide and updated the overview, web interface, administrator, workspace, CDR Analysis, Network Insights, E2E Dashboards, Scoring, Reporting, Query Builder, project structure and roadmap documents.