Skip to main content

LoopOS 09.2026.01 (M, C, S, Vr, Hr, Hu)

· 13 min read
Catarina Coelho
Product Owner
Main News

Ops 23

Core gets a dedicated instance Settings page (public settings, private settings and Extra Data) plus seller-name search on items, and Validation, Handling and Hubs show a toast when an item process is cancelled, rejected or ended.

Tech Notes​

Tech Notes

What must be done before deployment:​

  • Deploy Manager 0.27.17.1, Core 0.27.16.2, Submission 0.24.36.0, Validation Rails 0.27.11.5, Handling Rails 0.27.12.3, and Hubs 0.27.11.7 together (Manager depends on LoopOS UI 1.1.68.0, Core and Validation on LoopOS UI 1.1.68.3, Handling and Hubs on LoopOS UI 1.1.68.2; Submission depends on DS SDK 2.92.4, Hubs on DS SDK 2.92.0).
  • Register the new Core release in Manager so the instance-settings scopes are available, then grant them to the operators who should manage settings from Core.
  • Core instance private settings are written back through Manager — deploy Manager 0.27.17.1 with Core 0.27.16.2 (from Core 0.27.14.6, settings changes from Manager reach Core without restarting web pods).
  • Manager 0.27.16.0 / 0.27.16.1: on AWS production and pre-production, the deploy adopts the existing Redis disk into Terraform and waits for the plan to be confirmed before apply. Redis disk is turned on per environment, so clusters without that disk keep in-memory Redis.
  • After Core 0.27.14.0, run the protocol-answer search-token data migration so seller-name search is populated (see Migrations below).
  • After Manager 0.27.15.0, run the loop_os_script_engine migrations (see Migrations below).

New settings/configs/scopes:​

  • Core (Scopes) — from 0.27.14.0
    • can_manage_instance_public_settings
      • View and edit this instance’s own public settings on Core → Settings.
    • can_manage_instance_private_settings
      • View and edit this instance’s own private settings on Core → Settings.
    • can_manage_instance_extra_data
      • View and manage app-level Extra Data records on Core → Settings.
  • Settings: no new app settings schemas in the package minors (the Core Settings page edits existing public/private settings).
  • Core (Settings) — from 0.27.16.2
    • New setting
      • Hide Reopening Days Column (Core app instance > Private Settings > Item Table Hidden Columns — item_table_hidden_columns.reopening_days)
        • Hidden by default. Disable to show the Reopening Days column in the items table and in the timers export.
  • Core (Settings) — from 0.27.15.4
    • New setting
      • Display time zone (Core app instance > Public Settings > Global Configurations — display_time_zone)
        • Time zone used for item logs, financial logs and item CSV exports, for every viewer. Leave empty to use each viewer's browser time zone.
  • Core (Settings) — from 0.27.15.2
    • New setting
      • RFI Re-request Expiration (days) (Core app instance > Public Settings — rfi_rerequest_expiration_days)
        • Days an expired RFI stays open after a new quote is requested from a rejected repairer. Default: 7.
  • Core (Settings) — from 0.27.15.0
    • New settings
      • Item Export Script ID (Core app instance > Private Settings > Feature Settings > Exports — exports.item_export.script_id)
        • ID of the active export script used on the items export.
      • Outgoing Payment Export Script ID (Core app instance > Private Settings > Feature Settings > Exports — exports.outgoing_payment_export.script_id)
        • ID of the active export script used on the outgoing payments export.
  • Core (Settings) — from 0.27.14.3
    • New setting
      • Hide Distributor Column (Core app instance > Private Settings > Item Table Hidden Columns — item_table_hidden_columns.distributor)
        • Hidden by default. Disable to show the Distributor column and filter in the items list.
  • Validation Rails (Settings) — from 0.27.11.1
    • New setting
      • Hide Distributor Column (Validation Rails app instance > Private Settings > Item Table Hidden Columns — item_table_hidden_columns.distributor)
        • Hidden by default. Disable to show the Distributor column and filter in the items list.
  • Hubs (Settings) — from 0.27.11.3
    • New setting
      • Only show items assigned to the selected store (Hubs app instance > Private Settings > Feature Settings > Strict Hub Items Filter — strict_hub_items_filter)
        • Each store only sees the items assigned to it, in any block. Items without a store are hidden. When disabled, items outside Hubs blocks and items waiting to be received show in every store. Default: false.

Migrations or Data Migrations made (to revert):​

  • Core (0.27.14.0)
    • db/migrate/20260805160000_add_search_token_bidxs_to_protocol_answers.rb — adds search_token_bidxs (text array, GIN index) on protocol_answers
    • db/data/20260805160100_backfill_protocol_answer_search_token_bidxs.rb — backfills search tokens for user-data full-name answers (revert clears search_token_bidxs)
  • Manager (0.27.15.0)
    • db/migrate/20260915170806_add_default_to_name_in_loop_os_scripts.loop_os_script_engine.rb — sets default "" on loop_os_scripts.name
    • db/migrate/20260915170807_add_block_metadata_to_loop_os_scripts.loop_os_script_engine.rb — adds block_metadata (jsonb, default {}) on loop_os_scripts
    • db/migrate/20260915170808_add_script_id_created_at_index_to_loop_os_script_logs.loop_os_script_engine.rb — concurrent index on loop_os_script_logs (loop_os_script_id, created_at DESC)
Retrocompatibility

→ Any app besides manager on version 0.27.x.x is only compatible with Manager 0.27.x.x
→ Manager 0.27.x.x is still compatible with all previous versions of the other apps
→ Manager 0.26.0.0 and Core 0.26.0.0 must be deployed together for multitenancy and virtual instances
→ To use Validation, Handling 0.25.x.x and Hubs 0.22.x.x and above, you need Core 0.25.x.x or above

Manager​

[0.27.17.1] - 2026-10-13​

Fixed​

  • Email attachments other than PDF arriving broken or missing when sent through SMTP or SendGrid providers – #869f7ah2j

[0.27.17.0] - 2026-10-13​

Added​

  • Packing slips for bulk shipments, listing origin, destination and items per shipment to the Dummy Provider – #HD-1639

[0.27.16.2] - 2026-10-09​

Fixed​

  • Deleted app instances still included in the partner ingress, so one invalid host blocked HTTPS certificate renewal for the other hosts of that partner

[0.27.16.1] - 2026-10-09​

Added​

  • (Technical) AWS production and pre-production deploys adopt the existing Redis disk into Terraform and wait for the plan to be confirmed before apply

Changed​

  • (Technical) Redis disk is turned on per environment for AWS production and pre-production, so clusters without that disk keep in-memory Redis

[0.27.16.0] - 2026-10-09​

Changed​

  • (Technical) Production Redis keeps Sidekiq queues on disk across a pod restart
  • (Technical) Network Manager web and Sidekiq pods spread across nodes and zones and stay available during rollout

[0.27.15.1] - 2026-10-06​

Fixed​

  • Monitoring scripts API returning a 400 error with an empty body when no monitoring service is configured – #869e1dq3j

[0.27.15.0] - 2026-09-30​

Fixed​

  • User import errors and skipped-duplicate warnings not shown correctly in the admin toast – #869dv1ypk
  • Token info and applications API failing when the OAuth application has no app instance – #869f6fdx4
  • (Technical) Missing loop_os_script_engine migrations

[0.27.14.1] - 2026-09-30​

Fixed​

  • Bulk shipments expiring prematurely due to validity being calculated from draft creation instead of label creation – #869f86gy2

[0.27.14.0] - 2026-09-21​

Fixed​

  • Table cells rendering twice in tables backed by an external data source – #869er7qn1

Core​

[0.27.16.2] - 2026-10-14​

Added​

  • "Días Reapertura" (Reopening Days) column in the items table and timers export, showing days since the item was last reopened; hidden by default and enabled per instance in the Manager settings – #869fgexk4

[0.27.16.1] - 2026-10-13​

Added​

  • Flex cards can show data from the item they are shown on, such as the ECORENOVE discount code on the item page – #HD-1642

[0.27.16.0] - 2026-10-13​

Added​

  • Packing slips for bulk shipments, listing origin, destination and items per shipment to the Dummy Provider – #HD-1639

[0.27.15.5] - 2026-10-13​

Fixed​

  • Status change of expired, cancelled or rejected item values – #869fevhqf
  • Catalog import of identifiers already used by another product – #869ff08kh

[0.27.15.4] - 2026-10-08​

Added​

  • Display time zone setting in the Manager's Core public settings (Global Configurations), to choose the time zone used for item logs, financial logs and item CSV exports – #869epuevr

[0.27.15.3] - 2026-10-08​

Added​

  • Instance display time zone setting, so item logs, financial logs and item CSV exports show the instance's local time instead of the viewer's browser time – #869epuevr

Fixed​

  • Date answers without a time (e.g. "Fecha de Ocurrencia") showing the previous day in time zones west of UTC – #869epuevr

[0.27.15.2] - 2026-10-01​

Added​

  • Ability to request a new RFI quote from a repairer whose previous quote was rejected – #869f2z8md

[0.27.15.1] - 2026-10-01​

Fixed​

  • Notes editor "+" button hidden inside the notes section, so files could not be attached – #869fa8dyj

[0.27.15.0] - 2026-10-01​

Added​

  • Allow export scripts for outgoing payments and item exports via instance private settings – #869f9uqfa

[0.27.14.6] - 2026-10-01​

Fixed​

  • Manager settings changes not reaching Core until its web pods restart – #869fa3aak

[0.27.14.5] - 2026-09-30​

Fixed​

  • Core instance private settings page fails to open with "uiSchema order list does not contain property 'item_table_hidden_columns.distributor'" – #869evprc1

[0.27.14.4] - 2026-09-30​

Fixed​

  • Quote amounts typed with a dot decimal (e.g. 520.40) rejected in Spanish when saving repairer answers and manual quotes – #869ed133q

[0.27.14.3] - 2026-09-30​

Added​

  • Distributor column and filter in the items list, hidden unless the instance turns it on in its settings – #869evprc1
  • (Technical) Distributor filter q[distributor][] on GET /api/v2/items and distributor list at GET /api/v2/items/distributors – #869evprc1

[0.27.14.2] - 2026-09-29​

Added​

  • Support for filtering items by several hubs at once, optionally returning only the items assigned to them – #869f3bn2t
  • (Technical) Item hub code included in hubs_origin in the items API – #869f3bn2t

Fixed​

  • Accepted re-quotes showing the repairer's first price instead of the new one – #869f3yvem

[0.27.14.1] - 2026-09-28​

Fixed​

  • Items Export Timers and other item CSV exports taking too long to complete on large partners – #869f61d4b

[0.27.14.0] - 2026-09-21​

Added​

  • Instance Settings page (/admin/settings) with Public Settings, Private Settings and Extra Data tabs, gated by dedicated permission scopes – #869dk1f83
  • Support for partial, case- and accent-insensitive item search by seller name – #869dxwzma

Changed​

  • Improved protocol configuration hints for extended submission – #869da33cp

Fixed​

  • "Manage Translations" showing Deal Breaker Message and Body fields for protocol elements that don't have those settings – #869c49a5m
  • Table cells rendering twice in tables backed by an external data source – #869er7qn1
  • Pricing rules table broken layout – #869d1vkrr
  • Categories and Products column filters on Services ignoring one filter when both were selected – #869dr3v6z
  • Report types index not showing all report types – #869dma1vp
  • Identifier value empty in Manage Identifier overlay until refresh, and stale/ghost identifiers after repopulation – #869df3844

Submission​

[0.24.36.0] - 2026-09-21​

Fixed​

  • Date range shown with "~" instead of a hyphen between the selected dates in the submission summary page – #86994xg0t

Validation Rails​

[0.27.11.5] - 2026-10-13​

Added​

  • Flex cards can show data from the item they are shown on, such as the ECORENOVE discount code – #HD-1642

[0.27.11.4] - 2026-10-06​

Fixed​

  • (Technical) Sentry noise from TalkJS CONVERSATION_NOT_FOUND and PARTICIPANT_NOT_FOUND errors when loading the item show page before the chat tab is opened in Core – #869fck2xx

[0.27.11.3] - 2026-10-05​

Fixed​

  • Incoming payments missing from the item Services tab

[0.27.11.2] - 2026-10-01​

Fixed​

  • Next button staying disabled on the budget evaluation step when the item has an RFI that was already decided – #869f9qd83
  • Notes editor "+" button hidden inside the notes section, so files could not be attached – #869fa8dyj

[0.27.11.1] - 2026-09-30​

Added​

  • Distributor column and filter in the items list, hidden unless the instance turns it on in its settings – #869evprc1

[0.27.11.0] - 2026-09-21​

Added​

  • Toast notifications when canceling, rejecting, or ending an item process – #869bge7jf

Fixed​

  • Table cells rendering twice in tables backed by an external data source – #869er7qn1

Handling Rails​

[0.27.12.3] - 2026-10-06​

Fixed​

  • (Technical) Sentry noise from TalkJS CONVERSATION_NOT_FOUND and PARTICIPANT_NOT_FOUND errors when loading the item show page before the chat tab is opened in Core – #869fck2xx

[0.27.12.2] - 2026-10-05​

Fixed​

  • Incoming payments missing from the item Services tab

[0.27.12.1] - 2026-10-01​

Fixed​

  • Notes editor "+" button hidden inside the notes section, so files could not be attached – #869fa8dyj

[0.27.12.0] - 2026-09-21​

Added​

  • Toast notifications when canceling, rejecting, or ending an item process – #869bge7jf

Fixed​

  • Table cells rendering twice in tables backed by an external data source – #869er7qn1

Hubs​

[0.27.11.7] - 2026-10-06​

Fixed​

  • (Technical) Sentry noise from TalkJS CONVERSATION_NOT_FOUND and PARTICIPANT_NOT_FOUND errors when loading the item show page before the chat tab is opened in Core – #869fck2xx

[0.27.11.6] - 2026-10-05​

Fixed​

  • Incoming payments missing from the item Services tab

[0.27.11.5] - 2026-10-01​

Fixed​

  • Notes editor "+" button hidden inside the notes section, so files could not be attached – #869fa8dyj

[0.27.11.4] - 2026-09-30​

Fixed​

  • Reverse shippings sync failing for the whole batch when one reverse shipping had an error, and overwriting item results with empty values – #869f7ek5x

[0.27.11.3] - 2026-09-29​

Added​

  • All stores option for users with access to more than one hub, showing only their hubs' data and the store of each row – #869f3bn2t
  • Setting to only show each store the items assigned to it – #869f3bn2t

Fixed​

  • Hub users seeing orders, shippings and reverse orders of other hubs – #869ezbw7k
  • RFIs of other repairers shown on All stores – #869f76p6v
  • Searching by claim number not finding received reverse orders – #869f6pbvb

[0.27.11.2] - 2026-09-29​

Fixed​

  • Reverse shippings saving duplicate and empty history versions on every sync, filling up the database – #869f53fhw

[0.27.11.1] - 2026-09-29​

Fixed​

  • Sidekiq queue limits not enforced, letting too many synchronization jobs run at the same time – #869f6zvf0

[0.27.11.0] - 2026-09-21​

Added​

  • Toast notifications when canceling, rejecting, or ending an item process – #869bge7jf

Fixed​

  • Table cells rendering twice in tables backed by an external data source – #869er7qn1