HOC4 Release Notes 1.22.0
LLH4v1.22.0 (Released: 04/02/2026)
Overview
This release fixes a timezone utility parsing failure when parameters contain whitespace and resolves timezone display issues in listing block calendars and forms. It also adds team member signup management to HOC4, continues the AI-assisted CMS data migration tool (Part III), and introduces redesigned CMS configuration screens for Cookie Consent Banner, Opportunity Detail Page Settings, Team Creation Requirements, Code Injection, Custom Session Variables, Sitewide Settings, URL Redirects, Global Resource Management, Page Layout Settings, AddOns Reports, Skill Documentation, and Skill Page Settings.
🐞 Bug Fixes
LHH-23031 – Timezone Utility Failing When Parameters Contain Spaces
- What was the issue?
- The ls:timezone utility failed to process date/time conversions if there was any whitespace (blank spaces) between its parameters. For example, adding a space after the comma — ls:timezone({Start_Date__c}, {Location__c}) — caused the conversion to silently fail, while the version without spaces worked correctly.
- What was solved?
- We updated the timezone utility's parsing logic to trim whitespace from each extracted parameter before processing. The replacement logic was also updated to match the timezone token in a whitespace-tolerant way. The utility now handles spaces after the comma, before the comma, and leading/trailing spaces within the parentheses.
Result: The timezone utility now processes conversions successfully regardless of spacing between parameters, with no regression to existing no-space implementations.
LHH-23049 – Timezone Not Displaying Correctly in Listing Block Calendar and Forms
- What was the issue?
- On a multi-timezone-enabled instance, the timezone field in listing block custom card templates was not displaying correctly. The timezone token format was not being handled properly in Listing CMS instances using the Custom Card Template format. Additionally, the calendar view did not indicate the timezone, and certain forms were missing timezone display entirely.
- What was solved?
- We corrected the token format handling for timezone in Listing CMS custom card templates and calendar views. The timezone token can now be used in both custom card templates and calendar view configurations with proper formatting.
Result: Timezone information now displays correctly across listing block custom card templates, calendar views, and forms on multi-timezone instances.
🆕 New Features / Enhancements
LHH-22935 – Team Member Signup Management in HOC4
- What was the issue?
- In HOC3, team leaders could visit their team page to add or remove team members from opportunities the team had signed up for. This functionality was missing in HOC4, preventing team leaders from managing team member signups.
- What was solved?
- We added the team member signup management functionality to the HOC4 package, allowing team leaders to manage their team members' participation in opportunities.
Result: Team leaders can now manage team member signups from their team page in HOC4, matching the functionality previously available in HOC3.
LHH-22957 – AI-Assisted CMS Data Migration Tool (Part III)
- What was the issue?
- Continued development was needed on the AI-assisted metadata migration tool for transitioning Salesforce configurations from HOC3 to HOC4.
- What was solved?
- We adopted a Spec-Driven Development (SDD) paradigm using AI-assisted development to build the sf-metadata-migrator tool in Python. The tool applies configurable rules derived from documented migration experience to generate new metadata consistent with the HOC4 package. The Reports module is now fully functional with a complete rule pipeline, YAML-driven configuration, and unit tests.
Result: The metadata migration tool now supports automated report migration with configurable rules, producing change manifests and visual output for validation. Remaining work includes extending the rule engine to additional Salesforce metadata types (Dashboards, Flows, Layouts, etc.).
LHH-23020 – Redesigned Cookie Consent Banner Configuration Screen
- What was the issue?
- The Cookie Consent Banner configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Cookie Consent Banner configuration screen now has a cleaner, more intuitive layout.
LHH-23021 – Redesigned Opportunity Detail Page Settings Screen
- What was the issue?
- The Opportunity Detail Page Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Opportunity Detail Page Settings screen now has a cleaner, more intuitive layout.
LHH-23022 – Redesigned Team Creation Requirements Configuration Screen
- What was the issue?
- The Team Creation Requirements configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Team Creation Requirements configuration screen now has a cleaner, more intuitive layout.
LHH-23035 – Redesigned Code Injection Configuration Screen
- What was the issue?
- The Create Code Injection configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Code Injection configuration screen now has a cleaner, more intuitive layout.
LHH-23042 – Redesigned Custom Session Variables Configuration Screen
- What was the issue?
- The Custom Session Variables configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Custom Session Variables configuration screen now has a cleaner, more intuitive layout.
LHH-23043 – Redesigned Sitewide Settings Configuration Screen
- What was the issue?
- The Sitewide Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Sitewide Settings configuration screen now has a cleaner, more intuitive layout.
LHH-23051 – Redesigned URL Redirects Configuration Screen
- What was the issue?
- The URL Redirects configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The URL Redirects configuration screen now has a cleaner, more intuitive layout.
LHH-23052 – Redesigned Global Resource Management Configuration Screen
- What was the issue?
- The Global Resource Management configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Global Resource Management configuration screen now has a cleaner, more intuitive layout.
LHH-23068 – Redesigned Page Layout Settings Configuration Screen
- What was the issue?
- The Create Page Layout Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Page Layout Settings configuration screen now has a cleaner, more intuitive layout.
LHH-23070 – Redesigned AddOns Reports Settings Configuration Screen
- What was the issue?
- The AddOns Reports Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The AddOns Reports Settings configuration screen now has a cleaner, more intuitive layout.
LHH-23071 – Redesigned Skill Documentation Page Settings Configuration Screen
- What was the issue?
- The Skill Documentation Page Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Skill Documentation Page Settings configuration screen now has a cleaner, more intuitive layout.
LHH-23072 – Redesigned Skill Page Settings Configuration Screen
- What was the issue?
- The Skill Page Settings configuration screen needed updating to match the new CMS layout design standards.
- What was solved?
- We redesigned the configuration screen, reorganizing settings by priority and applying updated visual styles.
Result: The Skill Page Settings configuration screen now has a cleaner, more intuitive layout.
LLH4v1.22.1 (Released: 04/09/2026)
Overview
This hotfix release resolves a listing block configuration issue with the secondary Salesforce view in the new CMS theme, fixes accordion listing block color and link display problems, corrects a JSON parsing error in the multilingual option value utility, addresses an application-level vulnerability related to potential attack vectors not blocked by the firewall, resolves intermittent 503 errors on App Services, and hardens custom logic criteria validation across all CMS editors to prevent stack overflow errors from invalid filter references.
🐞 Bug Fixes
LHH-23079 – Listing Block Secondary Salesforce View Not Working in New CMS Theme
- What was the issue?
- When using the new CMS theme, the "Enable dependent secondary Salesforce View (Limited)" setting in the Listing CMS block was not functioning correctly. The configuration validations for the second view functionality were missing in the new theme.
- What was solved?
- We added the missing validations for the secondary view functionality configuration in the Listing CMS block for the new CMS theme.
Result: The secondary Salesforce view setting now works correctly when using the new CMS theme.
LHH-23082 – Accordion Listing Block Colors and Links Not Displaying Correctly (Blocker)
- What was the issue?
- On a customer's FAQ page using an accordion listing block, the text color was difficult to read, and the links within the accordion sections were not functioning — users could not navigate to linked resources such as policy documents. The accordion titles lacked proper color styling in the new CMS theme.
- What was solved?
- We applied CSS styling for accordion titles via code injection and resolved the CMS listing backend issue that was preventing links from displaying properly.
Result: Accordion listing block text is now readable with proper color styling, and links within accordion sections function correctly.
LHH-23089 – Hardening Against Potential Attack Vectors Not Blocked by Firewall
- What was the issue?
- A security review identified potential attack vectors that might not be fully blocked by the existing firewall configuration.
- What was solved?
- We implemented application-level fixes to address the identified vulnerability and deployed a partial fix to production.
Result: The application is now hardened against the identified attack vectors at the application level, providing an additional layer of security beyond the firewall.
LHH-23090 – App Services Returning Intermittent 503 Errors
- What was the issue?
- Multiple App Services began returning 503 errors starting around April 3rd. The root cause was traced to a production stack overflow caused by invalid custom logic criteria in session variable settings that referenced non-existent filter IDs (e.g., criteria included 1and(2or3) when only filters 1 and 2 existed). When unresolved tokens remained in the expression, the logic evaluation kept recursing without reducing the expression, eventually causing a stack overflow that brought down the App Service.
- What was solved?
- We applied an immediate data fix to clean the affected record's criteria so it no longer referenced non-existent filter IDs. We also implemented four code-level fixes: (1) criteria reference validation before evaluation to reject invalid references, (2) safeguards in the logic evaluation to detect non-reducible expressions and stop safely instead of looping indefinitely, (3) front-end validation in the Menu Item UI to block saving invalid criteria references, and (4) localized error messages for clear user feedback.
Result: App Services are stable and no longer returning 503 errors. Invalid custom logic criteria are now validated before evaluation and blocked from being saved.
🆕 New Features / Enhancements
LHH-23101 – Hardened Custom Logic Criteria Validation Across All CMS Editors
- What was the issue?
- Following the production stack overflow fix in menu item flows, the same protection against invalid custom logic criteria references needed to be extended to all other CMS editors that support session-variable/custom-rule logic, including CMS Pages, Form Builder, Listing CMS, and all blocks using the shared visibility pattern.
- What was solved?
- We implemented comprehensive client-side and server-side validation across all CMS editors. New validation functions were added for CMS Pages, Form Builder, and Listing CMS (which use custom save flows). The shared visibility pattern — used by Basic Search, Button Block, Header Logo, HTML Editor, Image Block, QR Block, RSS Block, Slider, Social Network, Sponsor, Video, and Menu Block — is now covered via the shared/newcms validation flow. All validators parse advanced criteria numeric references, verify they exist in the configured filter list, and block save with a localized error message if a referenced filter does not exist.
Result: Invalid custom logic criteria references are now blocked across all CMS editors — Pages, Menus, Forms, Listings, and all standard blocks — with clear, localized error messages guiding users to correct the issue.
0 Comments
Add your comment