Salesforce Winter '27 (API 68.0) adds Python batch transformations on zero-copy data, Business Rules Engine actions in Agentforce, and virtual-object writeback.
What's new
1. Run Python transformations on zero-copy data
Run Custom Python Transformations on Zero-Copy Data adds custom Python batch transformations for data lake objects backed by zero-copy connectors or mapped data model objects. Transformations run directly on the data without duplicating it.
**Developer:** Check a planned Python batch workload against the supported DLOs or DMOs. If you planned a separate copy solely for transformation, reassess whether you need it.
2. Use business rules in agent conversations
Run Business Rules Engine Logic in Agentforce makes activated expression sets and decision tables available as API reference actions in Agentforce Studio. Agents can call them for eligibility checks, calculations, and other business logic during a conversation.
Both Business Rules Engine and Agentforce must be enabled. Expression sets built with a context definition aren't eligible; only activated sets built without one are available as actions.
**Architect:** Check eligibility before designing an agent around existing rules. Identify which conversational checks can use those rules and which expression sets need another approach.
3. Write transformation results to virtual objects
Send Data Transformation Results to Virtual Objects extends Data Processing Engine output beyond standard and custom objects. Definitions using the CRM Analytics and Data 360 runtimes can now write to Apache HBase-backed virtual objects.
**Developer:** Add a Writeback object node targeting the virtual object and map its external ID field. Test that mapping with representative transformation results before adopting the destination.
4. Use custom CA certificates for outbound authentication
Custom CA Certificate Support for Named Credentials adds support for custom Certificate Authority certificates in named credentials for outbound authentication.
**Developer:** Check outbound integrations that require a custom CA. Identify the certificate each integration needs, then test authentication with it.
5. Search backup history and retry failed child-object restores
Backup and Recover Next Improvements lets admins search backup history for specific records, download metadata, and reload child objects that fail during preview restore.
**Admin:** Add record-specific searches and metadata download to the recovery runbook. If a child object fails during a preview restore drill, test the reload operation and record the steps.
What to know
6. Flow retries once after a record lock error at initialization
Reduce Flow Failures Caused by Record Lock Contention adds an automatic retry when a flow encounters a record lock error during transaction initialization. It waits 10 seconds and tries once more. No configuration is required.
This can reduce UNABLE_TO_LOCK_ROW failures when a flow and another process update the same record concurrently. It is not a retry policy for every Flow operation.
**Developer:** Reproduce known contention scenarios with flows and other writers. Check whether the error occurs during transaction initialization and whether the single retry resolves it. Keep unresolved scenarios on the work list.
7. Data Graph governance changes what consumers receive
Enhance Data Security with Granular Governance for Data Graphs applies governance policies automatically to Data Graphs. Restricted fields are pruned, data is masked, and unauthorized child DMOs are excluded.
A defined field or child DMO isn't a guarantee that a consumer will receive it unchanged.
**Architect:** Test consumers against the applicable policies. Check how they handle missing restricted fields, masked values, and excluded child DMOs. Specify the expected behavior for each response.
What needs your attention
8. Remove dependencies on immediate sharing recalculation
Update Apex Code and Flows for Changed Sharing Recalculation Behavior is a **breaking change** for custom logic that relies on immediate synchronous sharing updates. Sharing recalculations after large group or role updates are now asynchronous.
The initiating update can finish before sharing recalculation does. Logic that assumes recalculated access is already available may fail.
**Developer:** Find Apex and Flow paths that perform large group or role updates, then depend on the resulting access. Test those paths under asynchronous recalculation and revise workflows that require sharing to be recalculated immediately.
9. Plan migration of packaged connected apps
Migrate Packaged Connected Apps to External Client Apps recommends moving packaged and distributed connected apps to packaged external client apps to reduce security risks.
No migration deadline is specified. The recommendation concerns packaged and distributed apps.
**Architect:** Inventory those apps and give each an accountable migration owner. Work through package and authentication dependencies with the owners before agreeing on migration tasks and validation tests.
10. Review guest masking separately from portal masking
Conceal Personal Information Fields from Guest Users (Release Update) decouples guest-user field masking from portal-user masking.
With **Independent Guest Field Masking** enabled, Guest_PersonalInfo_EPIM governs personal information visible to unauthenticated guests. Portal users remain governed by PersonalInfo_EPIM.
Enforcement is scheduled for Spring '27. A portal-user test does not validate guest visibility.
**Admin:** Confirm intended personal-information visibility for guests and portal users with the business owner. Review both Guest_PersonalInfo_EPIM and PersonalInfo_EPIM. Activate the update through **Setup > Release Updates** before enforcement, then test unauthenticated guest visibility separately from portal-user visibility.
