Backend 7.1.2 - Full Changelog

Released 2026-09-04 · v7.1.2.a · 71 issues · 9 features · 53 fixes

The complete record: every commit in the release, grouped by type, including work that never reaches a customer-facing note. The external changelog is the readable summary of the same release.

Jira References

  • DEV-1464 - Angular Project > Management portal > Settings > System settings > SMS server > Input fields are missing

  • DEV-1670 - Angular Project > USP > Wi-Fi management plus > Diagnostics > Trace diagnostics > "Diagnostics result" column is empty

  • DEV-1956 - Angular Project > Management portal > Monitoring / Automation > Сondition > Criterion = "Uptime" > "Compare" is more than > Save > "No suitable devices detected" message displayed

  • DEV-2013 - Angular Project > System settings > SMS Server > Token length more than 255 > An error occurred

  • DEV-2076 - Angular Project > Oracle > Specific domain user > Login > An unexpected error occurred

  • DEV-2083 - Angular Project > Login > An unexpected error occurred

  • DEV-2116 - Angular Project > USP > Group update > Diagnostics > Download > Reactivation = 1 minute > Save and activate > Group update status is "Not Active"

  • DEV-2182 - AI API > Change Postgres DB default username and password

  • DEV-2220 - Angular Project > Management Portal > Specific domain > Device profile > Profiles related to other domains are present in the list

  • DEV-2221 - Angular Project > Management Portal > Specific domain > Device profile > Add > "DEFAULT" manufacturer is absent from list

  • DEV-2244 - Angular Project > Settings > Management > Unused models > Unused model is absent from the list

  • DEV-2318 - Angular Project > Management Portal> USP > Find Device > Download > Firmware > Operate > Command with incorrect instance is sent to the device

  • DEV-2323 - Angular Project > Management Portal > USP > Device with upload / download > Group update > "Backup" / "Restore" task is absent

  • DEV-2327 - Angular Project > USP > Device profile > Add > Monitor for any parameter > Save > Activate > Irrelevant task is generated

  • DEV-2526 - Angular Project > "ISP = 1 / 2" > Device in specific domain > Upload task > Default upload URL > File not uploaded to domain folder

  • DEV-2537 - Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Sub domain > File management > Add file > File added to super domain

  • DEV-2606 - Angular Project > Management Portal > TR-181 > Find device > File upload > "Vendor Configuration File <i>" > "Instance" drop-down is unclickable

  • DEV-2607 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Specific domain > Super domain is applied

  • DEV-2614 - B: Angular Project > Management Portal > TR-181 > Find device > File upload > "Vendor Configuration File <i>" > "Instance" drop-down is unclickable

  • DEV-2648 - Angular Project > Management Portal > TR-069 / USP > Find device > File upload > Any type > Enter URL manually > Send > Uploading not performed

  • DEV-2651 - Angular > OneIoT backend > Doc portal > Folder structure unification request

  • DEV-2664 - Angular Project > Management Portal > TR-069 > Automation > Automation parameters > Any parameter > Add task > File download > Task is not generated

  • DEV-2733 - Angular project > File server with authorization > Find device > Download > The credential value is missing

  • DEV-2739 - Angular Project > Management Portal > ISP = 2 > Settings > Protocols > TR-069 > Add login to specific domain > Save > Login created with Super domain

  • DEV-2741 - update group - import file - only one cpe shows

  • DEV-2742 - SCG -→ update group --→ actual cpes excuted is less than sum of cpes in list

  • DEV-2744 - update group - period display in activation details is affected by clicking "get amount"

  • DEV-2750 - Angular Project > Management Portal > ISP = 2 > Specific domain > Settings > System Settings > Email Server > Create > An error occurred

  • DEV-2753 - Angular Management Portal > ISP = 1 / 2 > Specific domain > Settings > System Settings > SNMP server > Separate settings > Changes applied to other domains

  • DEV-2760 - Angular Project > "ISP= 1/2" > Specific domain user > Find device > Device domain changed to unavailable domain > User logout performed

  • DEV-2767 - Angular Project > "ISP= 1/2" > Specific domain user > Settings > System settings > External system > Edit > An error occurred

  • DEV-2777 - Angular Project > "ISP = 1/2" > Domain with subdomain > Settings > User management > Add > User with the same name > User created

  • DEV-2780 - B: Angular Management Portal > ISP = 1 / 2 > Specific domain > Settings > System Settings > SNMP server > Separate settings > Changes applied to other domains

  • DEV-2781 - Angular Project > Management Portal > ISP = 1/ 2 > Specific domain with monitor / profile / automation / group update > Settings > Domains > "Delete" specific domain > Domain deleted

  • DEV-2790 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > Domain absent from file > User created

  • DEV-2792 - Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Settings > Alert and Events > Events > The settings are not inherited from the Super domain

  • DEV-2794 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > File with specific domain user > User created with super domain

  • DEV-2796 - B: Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Settings > Alert and Events > Events > The settings are not inherited from the Super domain

  • DEV-2800 - Angular Project > Support Portal > IspEnable=2 > Settings > User management > It is possible to create level 2 domain user with particular name already created in level 1 parent domain

  • DEV-2810 - Angular Project > Management Portal > ISP = 1 / 2 > File Management > Super domain > "Newest" firmware > Specific domain> Add newest firmware for the same model > "Newest" marked for Super domain

  • DEV-2823 - Angular Project > "ISP = 1/2" > Specific domain > Update group > Filter by condition > Show list > Devices from other domains are present

  • DEV-2826 - Angular Management Portal > "ISP = 1 / 2" > File Server > Super Domain default config > Specific domain non-default config > Specific domain > File Management > Upload file > Incorrect URL

  • DEV-2828 - Angular Project > Support Portal > Multi-Domain > Reports > User activity report > System > Password change > Incorrect user name displayed

  • DEV-2829 - Angular Project > "ISP = 1/2" > Super domain > File management > Add any file > "Domain" is empty

  • DEV-2831 - Angular Project > "ISP = 1/2" > Group update in specific domain > Super domain user > Edit update > Show list > Devices from other domains are present

  • DEV-2838 - Angular Management Portal > ISP = 1 / 2 > Specific domain > Kafka settings differ from Super domain > Generate data delivery > Message is not sent

  • DEV-2840 - B: Angular Management Portal > ISP = 1 / 2 > Specific domain > Kafka settings differ from Super domain > Generate data delivery > Message is not sent

  • DEV-2853 - Angular Project > Management Portal > Several domains > Settings > Alerts and Events > Events > URL > URLs from other domains are present

  • DEV-2864 - B: Angular Project > Management Portal > Several domains > Settings > Alerts and Events > Events > URL > URLs from other domains are present

  • DEV-2869 - Implement history-like API for getting Diagnostics results by dates range

  • DEV-2870 - Implement history-like API for getting Reboot Events by date range

  • DEV-2871 - Sending /iot-webservice/iotw/Device/parameters/directly with names only results in 3 tasks including values get

  • DEV-2874 - Angular Project > Group update > Add > File upload > Default upload URL > Save > Page is stuck

  • DEV-2879 - Angular Project > "ISP = 1" > Settings > Protocols > TR-069 > Import > No user added and no error occurred

  • DEV-2880 - Angular Project > TR-069 / USP > "ISP = 1 / 2" > Specific domain > File server settings differ from super domain > Device profile > Backup task > Incorrect URL is generated for backup

  • DEV-2888 - Angular Project > TR-181 > Group update > File upload > Default upload URL > File type > Any value with instance > "Instance" drop-down inactive

  • DEV-2897 - Angular Project > Management Portal > ISP = 1/ 2 > Specific domain > Sub-domain > Device with automation > Settings > Domains > "Delete" specific domain > Domain deleted

  • DEV-2905 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > File without domain > Incorrect error message is present

  • DEV-2906 - Angular Project > ISP = 1 / 2 > Specific domain > Single user in domain > First-time login > An unexpected error occurred

  • DEV-2911 - Angular Project > ISP = 2 > Management Portal > Settings > Protocols > TR-069 > Import > "Super domain" security configuration > Import failed

  • DEV-2912 - Angular Project > ISP = 0 / 1 > Management Portal > Settings > Protocols > TR-069 > Import > "cpe_login" table > "location_id" value is "NULL"

  • DEV-2914 - Angular Project > "ISP = 1/2" > Specific domain > Automation > Super domain > Edit > Save > Show list > Devices from other domains are present

  • DEV-2930 - Angular Project > "ISP = 1/2" > Specific domain > Automation > Super domain > Edit > Save > Automation domain is changed

  • DEV-2939 - Angular Project > ISP = 1 / 2 > Absent specific domain folder from file server > Specific domain device > Any upload task > File is absent from file server

  • DEV-2941 - Angular Project > Devices with equal manufacturer and model name and different protocols > Find device > "Model" column > Protocol names are absent

  • DEV-2942 - Angular Project > ISP = 1 / 2 > Management Portal > Specific domain > File management > Files from other domains are present

  • DEV-2944 - Angular Project > ISP = 1 / 2 > Any download task for device > Select from the list > Specific domain file > Incorrect URL is generated

  • DEV-480 - Angular Project > Find device > View device trace > Export log with long response > Response is corrupted

  • DEV-623 - Angular Project > Device under monitor > Find device > Device Info > "QoE activated" parameter with "Yes" state is absent

  • DEV-645 - Angular Project > ISP= 1 / 2 > Specific domain user > Automation > Create event > Automation created without domain

  • DEV-733 - Angular Project > TR-181 > Monitoring > Add > VoIP settings > VoiceProfile.{i} > Irrelevant parameter present

Features

  • DEV-2116 - Angular Project > USP > Group update > Diagnostics > Download > Reactivation = 1 minute > Save and activate > Group update status is "Not Active"

  • DEV-2614 - B: Angular Project > Management Portal > TR-181 > Find device > File upload > "Vendor Configuration File <i>" > "Instance" drop-down is unclickable

  • DEV-2780 - B: Angular Management Portal > ISP = 1 / 2 > Specific domain > Settings > System Settings > SNMP server > Separate settings > Changes applied to other domains

  • DEV-2796 - B: Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Settings > Alert and Events > Events > The settings are not inherited from the Super domain

  • DEV-2840 - B: Angular Management Portal > ISP = 1 / 2 > Specific domain > Kafka settings differ from Super domain > Generate data delivery > Message is not sent

  • DEV-2871 - Sending /iot-webservice/iotw/Device/parameters/directly with names only results in 3 tasks including values get

  • DEV-2869 - Implement history-like API for getting Diagnostics results by dates range

  • DEV-2870 - Implement history-like API for getting Reboot Events by date range

  • DEV-2182 - AI API > Change Postgres DB default username and password

Bug Fixes

  • Fix NPE

  • Fix build

  • DEV-645 - Angular Project > ISP= 1 / 2 > Specific domain user > Automation > Create event > Automation created without domain

  • DEV-2013 - Angular Project > System settings > SMS Server > Token length more than 255 > An error occurred

  • DEV-2083 - Angular Project > Login > An unexpected error occurred

  • DEV-2076 - Angular Project > Oracle > Specific domain user > Login > An unexpected error occurred

  • DEV-1670 - Angular Project > USP > Wi-Fi management plus > Diagnostics > Trace diagnostics > "Diagnostics result" column is empty

  • DEV-2244 - Angular Project > Settings > Management > Unused models > Unused model is absent from the list

  • DEV-1956 - Angular Project > Management portal > Monitoring / Automation > Сondition > Criterion = "Uptime" > "Compare" is more than > Save > "No suitable devices detected" message displayed

  • DEV-2323 - Angular Project > Management Portal > USP > Device with upload / download > Group update > "Backup" / "Restore" task is absent

  • DEV-623 - Angular Project > Device under monitor > Find device > Device Info > "QoE activated" parameter with "Yes" state is absent

  • DEV-733 - Angular Project > TR-181 > Monitoring > Add > VoIP settings > VoiceProfile.{i} > Irrelevant parameter present

  • DEV-480 - Angular Project > Find device > View device trace > Export log with long response > Response is corrupted

  • DEV-2750 - Angular Project > Management Portal > ISP = 2 > Specific domain > Settings > System Settings > Email Server > Create > An error occurred

  • DEV-2744 - update group - period display in activation details is affected by clicking "get amount"

  • DEV-2741 - update group - import file - only one cpe shows

  • DEV-2767 - Angular Project > "ISP= 1/2" > Specific domain user > Settings > System settings > External system > Edit > An error occurred

  • DEV-2781 - Angular Project > Management Portal > ISP = 1/ 2 > Specific domain with monitor / profile / automation / group update > Settings > Domains > "Delete" specific domain > Domain deleted

  • DEV-2742 - SCG -→ update group --→ actual cpes excuted is less than sum of cpes in list

  • DEV-2777 - Angular Project > "ISP = 1/2" > Domain with subdomain > Settings > User management > Add > User with the same name > User created

  • DEV-2760 - Angular Project > "ISP= 1/2" > Specific domain user > Find device > Device domain changed to unavailable domain > User logout performed

  • DEV-2800 - Angular Project > Support Portal > IspEnable=2 > Settings > User management > It is possible to create level 2 domain user with particular name already created in level 1 parent domain

  • DEV-2810 - Angular Project > Management Portal > ISP = 1 / 2 > File Management > Super domain > "Newest" firmware > Specific domain> Add newest firmware for the same model > "Newest" marked for Super domain

  • DEV-2220 - Angular Project > Management Portal > Specific domain > Device profile > Profiles related to other domains are present in the list

  • DEV-2823 - Angular Project > "ISP = 1/2" > Specific domain > Update group > Filter by condition > Show list > Devices from other domains are present

  • DEV-2792 - Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Settings > Alert and Events > Events > The settings are not inherited from the Super domain

  • DEV-2828 - Angular Project > Support Portal > Multi-Domain > Reports > User activity report > System > Password change > Incorrect user name displayed

  • DEV-2829 - Angular Project > "ISP = 1/2" > Super domain > File management > Add any file > "Domain" is empty

  • DEV-2826 - Angular Management Portal > "ISP = 1 / 2" > File Server > Super Domain default config > Specific domain non-default config > Specific domain > File Management > Upload file > Incorrect URL

  • DEV-2831 - Angular Project > "ISP = 1/2" > Group update in specific domain > Super domain user > Edit update > Show list > Devices from other domains are present

  • DEV-2607 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Specific domain > Super domain is applied

  • DEV-2739 - Angular Project > Management Portal > ISP = 2 > Settings > Protocols > TR-069 > Add login to specific domain > Save > Login created with Super domain

  • DEV-2790 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > Domain absent from file > User created

  • DEV-2794 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > File with specific domain user > User created with super domain

  • DEV-2864 - B: Angular Project > Management Portal > Several domains > Settings > Alerts and Events > Events > URL > URLs from other domains are present

  • DEV-2221 - Angular Project > Management Portal > Specific domain > Device profile > Add > "DEFAULT" manufacturer is absent from list

  • DEV-2880 - Angular Project > TR-069 / USP > "ISP = 1 / 2" > Specific domain > File server settings differ from super domain > Device profile > Backup task > Incorrect URL is generated for backup

  • DEV-2879 - Angular Project > "ISP = 1" > Settings > Protocols > TR-069 > Import > No user added and no error occurred

  • DEV-2537 - Angular Project > Management Portal > ISP = 1 / 2 > Specific domain > Sub domain > File management > Add file > File added to super domain

  • DEV-2897 - Angular Project > Management Portal > ISP = 1/ 2 > Specific domain > Sub-domain > Device with automation > Settings > Domains > "Delete" specific domain > Domain deleted

  • DEV-2888 - Angular Project > TR-181 > Group update > File upload > Default upload URL > File type > Any value with instance > "Instance" drop-down inactive

  • DEV-2906 - Angular Project > ISP = 1 / 2 > Specific domain > Single user in domain > First-time login > An unexpected error occurred

  • DEV-2914 - Angular Project > "ISP = 1/2" > Specific domain > Automation > Super domain > Edit > Save > Show list > Devices from other domains are present

  • DEV-2911 - Angular Project > ISP = 2 > Management Portal > Settings > Protocols > TR-069 > Import > "Super domain" security configuration > Import failed

  • DEV-2912 - Angular Project > ISP = 0 / 1 > Management Portal > Settings > Protocols > TR-069 > Import > "cpe_login" table > "location_id" value is "NULL"

  • DEV-2905 - Angular Project > "ISP = 2" > Settings > Protocols > TR-069 > Import > File without domain > Incorrect error message is present

  • DEV-2930 - Angular Project > "ISP = 1/2" > Specific domain > Automation > Super domain > Edit > Save > Automation domain is changed

  • DEV-2327 - Angular Project > USP > Device profile > Add > Monitor for any parameter > Save > Activate > Irrelevant task is generated

  • DEV-2733 - Angular project > File server with authorization > Find device > Download > The credential value is missing

  • DEV-2939 - Angular Project > ISP = 1 / 2 > Absent specific domain folder from file server > Specific domain device > Any upload task > File is absent from file server

  • DEV-2944 - Angular Project > ISP = 1 / 2 > Any download task for device > Select from the list > Specific domain file > Incorrect URL is generated

  • DEV-2942 - Angular Project > ISP = 1 / 2 > Management Portal > Specific domain > File management > Files from other domains are present

  • DEV-2941 - Angular Project > Devices with equal manufacturer and model name and different protocols > Find device > "Model" column > Protocol names are absent

Documentation

  • Restructure UI Backend deployment to unified style

    Rewrite separate-host-deployment.adoc to document only the UI Backend service (Spring Boot REST API) following the FTACS installation skeleton. Portals and AI agent are now referenced as companions/prerequisites, not deployed here. Sync nav.adoc and index.adoc labels to the new H1. Add docs/decisions/LOG.md recording repo/env discrepancies.

  • Update antora version to 7.1.2 (dev)

  • Regenerate changelog for release 7.1.1

  • Regenerate changelog for release 1.0.4

  • Align nav with the ACS structure, rename the guide to Installation & Deployment

  • Unify structure, dependencies table and ClickHouse 26.2

  • Fix cross-references and residual consistency findings

  • Correct environment and mount facts

  • Enable section numbering to match the other install guides

  • Drop the Overview property table

    No other install guide carries it and every fact it listed is stated in the section that owns it. The Spring Boot version, its only unique fact, moved to the runtime note.

  • Align Registry Authentication with the reference format

  • State the read-only registry credentials

    Matches the other install guides, which publish the pull-only account values directly.

  • Set the install root by cd, not by exporting DATA_FOLDER

    Compose writes every volume as ${DATA_FOLDER:-.}, so the working directory already fixes the mounts. An exported shell variable does not survive the next login shell and env_file does not feed interpolation.

  • Use the literal install root in copy-paste commands

  • Use the platform directory layout

    The full-system deployment guide defines one directory per service directly under /usr/local/ft-system. Neither the ft-data level nor the ft-services root exists there; the divergence from the shipped compose and .env is recorded in docs/decisions/LOG.md.

  • Use one brace-expanded mkdir per service

    Matches the layout command in the full-system deployment guide: create the service directory under /usr/local/ft-system and work from the stack root.

  • Document the platform directory layout and env file split

  • Fix defects found in the documentation audit

  • Correct the truncated shared backend keyword

    The value must match FT_UI_BACKEND_KEYWORD in the deployed environment; the repository .env files ship ft12Internal#$Auth%^.

  • Use ft12Internal%^ as the shared backend keyword

  • DEV-2651 - Angular > OneIoT backend > Doc portal > Folder structure unification request

  • Update new structure for ONE-IOT-UI services, deployment guide, and Docker volumes

  • Update ui-backend healthcheck

  • Add separate portals deployment

  • Add separate ft-device-network-service deployment

  • Move device-network module to OneIot Web services topic and refactor guide details

  • Update

  • Add LDAP and Windows mappers creation for domains

  • Update add Azure attributes mappers for user

  • Update antora version to 7.1.2

  • Add changelog for release 7.1.2 (backend)

  • Add changelog for release 1.0.5 (ai-agent)

  • Update antora version to 7.1.3 (dev)

Chores

  • Add deployment.yaml contract for Deployment Manager

    Deployment Manager reads this file from the tip of this branch to know the service’s image, ports, volumes, clustering pattern and the variables an operator must fill in. It was previously vendored in ft-internal-tools (deployment-manager/catalogue/contracts/ui-backend.yaml); this repository now owns it.

  • Add the deployment/ config tree Deployment Manager mounts

    These are the application config files a generated Compose bundle mounts into this service’s container. They were vendored in ft-internal-tools (deployment-manager/catalogue/services/); this repository now owns them, and Deployment Manager reads them from the tip of this branch.

    Private key material is deliberately NOT here: keys and keystores stay in the one place they already live and are laid over this tree at generation time, so the same private key does not gain a copy per repository.

  • Add the key material this service’s bundle mounts

    Completes the deployment/ tree: the keystores and TLS private key a generated Compose bundle mounts into this container, which were held back from the previous commit while their placement was decided.

    They are tracked here rather than in ft-internal-tools so a service’s install payload is one thing in one place. Rotating a key is now a commit in this repository — the same file was previously copied across two repositories, and a rotation had to find both.

Docker Images

backend

Image

hub.friendly-tech.com/ui/backend:v7.1.2-b0.0.1

SHA256

sha256:b1ab660b2b3c53d72c7aa46614a0313532af2e883edddd6efc3d63e52a857087

Pull from Registry

docker pull hub.friendly-tech.com/ui/backend:v7.1.2-b0.0.1

Download for Offline Use

docker pull hub.friendly-tech.com/ui/backend:v7.1.2-b0.0.1
docker save hub.friendly-tech.com/ui/backend:v7.1.2-b0.0.1 -o backend-v7.1.2-b0.0.1.tar

gzip backend-v7.1.2-b0.0.1.tar

Load on Closed Network

gunzip backend-v7.1.2-b0.0.1.tar.gz
docker load -i backend-v7.1.2-b0.0.1.tar

Dependencies

  • ACS → FT Configs Service v1.0.2-b0.0.1

  • UI Backend → ACS v7.1.2-b0.0.1

  • UI Portals → UI Backend v7.1.2-b0.0.1

  • FT Device Network → ACS v7.1.2-b0.0.1

  • UI AI Agent → UI Backend v7.1.2-b0.0.1

  • UI AI Agent → FT Device Network v1.0.3-b0.0.1