Release Notes: Snippet reordering, multi-selection, and status decoupling · June 19, 2026

Reorder quote and engagement snippets with new directional controls. Link multiple snippets at once via a searchable dialog. Includes 4 reliability fixes.

These changes are currently in testing and will be published in the next release.

New Features

  • Snippet Reordering: You can now easily reorder both engagement and quote snippets using the up and down arrows on each card. The system automatically manages their sequence.
  • Quote Snippet Protections: Quote snippets now feature a safety confirmation dialog to prevent accidental deletions, and display a visual loading indicator while saving edits.
  • Multi-Snippet Selection: You can now link multiple snippets to an engagement simultaneously. The new multi-selection dialog includes visual checkmarks, a selected count indicator, and a search filter that activates when you have more than four items.
  • Document Template Redirects: Creating a new document template now instantly redirects you to its configuration workspace, streamlining the setup process.
  • Engagement Snippet States: Snippet cards now track and display distinct AI generation statuses independently of the document’s main lifecycle status. If a snippet fails to build, a clear error message is shown, allowing you to easily retry generation.
  • Inline Note Editing: You can now edit existing notes directly on their card in the Notes tab. Simply click into the text and type — changes auto-save in the background, indicated by a small loading spinner.
  • Secure Status Updates: Resource plan status changes are now securely processed through a dedicated backend callable function (updateStatusCallable), displaying a loading spinner in the UI and safely reverting if an error occurs.
  • On-Demand Actuals Reconciliation: Added a new backend callable function (reconcile_actuals_callable) to allow triggering actual hours reconciliation on-demand directly from the client.
  • Resilient Secret Management: The core Salesforce integration and reconcile_actuals.py CLI script now securely fetch authentication credentials dynamically from Google Cloud Secret Manager with fallback environments, ensuring reliable API syncs.

Fixes & Improvements

  • Batch Snippet Processing: Linking multiple snippets now processes asynchronously in parallel, preventing UI sluggishness, and features robust error boundary handling to display clear diagnostics if a link fails.
  • Snippet Data Isolation: Refactored snippet statuses on the backend (generation_status) to ensure they do not collide with or trigger primary document lifecycle engine transitions.
  • Resource Planning Filters: Fixed an issue where the “Show only underutilized” resource planning toggle would sometimes fail to calculate the correct planned totals for resources across the view.
  • CLI Usability & Reliability: The reconcile_actuals.py script now correctly resolves module imports when loading core integration functions, and provides clear error messaging if required Python environment dependencies are missing.
  • CLI Storage Config: The reconcile_actuals.py management script now correctly initializes Firebase Admin with the required storage bucket configuration, preventing potential file access errors.

Need more help?

Our support team is available to assist you.

Contact Support