Add Send Time Optimization (STO) result fields to messageProfile - #2229
Open
naveenpatil1 wants to merge 6 commits into
Open
Add Send Time Optimization (STO) result fields to messageProfile#2229naveenpatil1 wants to merge 6 commits into
naveenpatil1 wants to merge 6 commits into
Conversation
messageProfile already exposes isSendTimeOptimized, so the new stoEnabled flag in messageExecution/systemMetadata duplicated that signal. Move the remaining STO result fields (renamed to sendTimeOptimizationType and optimizedSendTime) next to isSendTimeOptimized in messageprofile.schema.json instead, and keep only entryCount under messageExecution/systemMetadata. Co-Authored-By: Claude Sonnet 5 <[email protected]>
journeyEntryCount/systemMetadata is handled by a separate workstream (SPHR-32646 epic, Step-0/2/2B/3 tickets) and doesn't belong in this PR. This PR is now scoped to the messageProfile STO result fields only. Co-Authored-By: Claude Sonnet 5 <[email protected]>
entryCount is per-lead (number of times a lead has entered/re-entered the source journey or campaign) and varies across leads within the same execution, so it can't be resolved via a messageExecutionID lookup the way journeyId/journeyNodeId/munchkinId can. Named generically rather than journeyEntryCount so campaign-based sources can reuse the same field. Co-Authored-By: Claude Sonnet 5 <[email protected]>
vedhera
approved these changes
Aug 13, 2026
vedhera
left a comment
Contributor
There was a problem hiding this comment.
LGTM!, just a qq We removed the boolean flag?
…tion-system-metadata
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Send Time Optimization (STO) result fields to the CJM
messageProfiledefinition. Non-breaking, additive only.Motivation
Downstream STO reporting needs the per-lead STO result and computed send time alongside a message execution.
messageProfilealready exposesisSendTimeOptimizedto indicate whether STO applied to a message, so the STO result fields are added alongside it there rather than introducing a new object elsewhere.Changes
extensions/adobe/experience/customerJourneyManagement/messageprofile.schema.json— newsendTimeOptimizationType(integer soft enum, documented viameta:enum) andoptimizedSendTime(date-time string) fields alongside the existingisSendTimeOptimized.extensions/adobe/experience/customerJourneyManagement/messageprofile.example.1.json— example populated for the new fields.Validation
npm test— 2408 passingnpm run lint— clean (prettier reports all files use Prettier code style)npm run validate— zero new failures vsmasterbaseline (messageprofileis not among the pre-existing failures)npm run incompatibility-check— cleanBreaking changes
None.