@salesforce/afv-skills 1.65.0 → 1.65.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/package.json +1 -1
  2. package/skills/field-service-data-capture-form-deployer-configure/SKILL.md +2 -23
  3. package/skills/field-service-data-capture-form-designer-configure/SKILL.md +3 -13
  4. package/skills/field-service-mobile-branding-configure/SKILL.md +3 -17
  5. package/skills/field-service-objective-designer-configure/SKILL.md +379 -72
  6. package/skills/field-service-prework-brief-deployer-configure/SKILL.md +537 -10
  7. package/skills/field-service-scheduling-policy-designer-query/SKILL.md +1093 -65
  8. package/skills/field-service-sobject-create-configure/SKILL.md +213 -13
  9. package/skills/field-service-voice-to-form-configure/SKILL.md +11 -40
  10. package/skills/field-service-work-rule-designer-configure/SKILL.md +95 -121
  11. package/skills/agentforce-gpt-email-generation-configure/SKILL.md +0 -312
  12. package/skills/agentforce-wizard-ui-forecasting-analytics-components-configure/SKILL.md +0 -64
  13. package/skills/agentforce-wizard-ui-sales-einstein-components-configure/SKILL.md +0 -46
  14. package/skills/automation-company-profile-info-query/SKILL.md +0 -51
  15. package/skills/automation-digital-wallet-configure/SKILL.md +0 -689
  16. package/skills/automation-flow-coordinate/SKILL.md +0 -95
  17. package/skills/automation-flow-coordinate/references/elements/action-call/action-call.md +0 -1569
  18. package/skills/automation-flow-coordinate/references/elements/action-call/conversation-messaging.md +0 -96
  19. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-sms-message.json +0 -23
  20. package/skills/automation-flow-coordinate/references/elements/action-call/examples/send-to-journey-no-fields.json +0 -31
  21. package/skills/automation-flow-coordinate/references/elements/action-call/send-to-journey.md +0 -179
  22. package/skills/automation-flow-coordinate/references/elements/exit-rule/examples/event-email-link-click.json +0 -13
  23. package/skills/automation-flow-coordinate/references/elements/exit-rule/exit-rule.md +0 -83
  24. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/examples/forward-to-bot-or-agent.json +0 -69
  25. package/skills/automation-flow-coordinate/references/elements/forward-to-bot-or-agent/forward-to-bot-or-agent.md +0 -274
  26. package/skills/automation-flow-coordinate/references/elements/start/audience-common.md +0 -192
  27. package/skills/automation-flow-coordinate/references/elements/start/automation-event-triggered.md +0 -130
  28. package/skills/automation-flow-coordinate/references/elements/start/data-cloud-data-change-triggered.md +0 -92
  29. package/skills/automation-flow-coordinate/references/elements/start/form-submission-triggered.md +0 -88
  30. package/skills/automation-flow-coordinate/references/elements/start/segment-triggered.md +0 -152
  31. package/skills/automation-flow-coordinate/references/elements/start/start.md +0 -539
  32. package/skills/automation-flow-coordinate/references/elements/subflow/subflow.md +0 -152
  33. package/skills/automation-flow-coordinate/references/elements/wait/wait.md +0 -497
  34. package/skills/automation-flow-coordinate/references/recipes/author/author.md +0 -868
  35. package/skills/automation-flow-coordinate/references/recipes/summarize/element-generic.md +0 -300
  36. package/skills/automation-flow-coordinate/references/recipes/summarize/reference-resolution.md +0 -292
  37. package/skills/automation-flow-coordinate/references/recipes/summarize/summarize.md +0 -323
  38. package/skills/automation-flow-coordinate/references/recipes/testing/examples/debug-output-template.md +0 -109
  39. package/skills/automation-flow-coordinate/references/recipes/testing/shape.md +0 -219
  40. package/skills/automation-flow-coordinate/references/recipes/testing/shared-stages/intent-analyzer.md +0 -180
  41. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/debug.md +0 -175
  42. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/promote.md +0 -255
  43. package/skills/automation-flow-coordinate/references/recipes/testing/workflows/save-debug.md +0 -212
  44. package/skills/automation-flow-coordinate/references/resources/variable/variable.md +0 -171
  45. package/skills/automation-flow-coordinate/references/shared/anti-patterns.md +0 -786
  46. package/skills/automation-flow-coordinate/references/shared/end/end.md +0 -267
  47. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/README.md +0 -69
  48. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/predictions.jsonl +0 -80
  49. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/eval/prompts.jsonl +0 -116
  50. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/flow-type-resolver.md +0 -321
  51. package/skills/automation-flow-coordinate/references/shared/flow-type-resolver/taxonomy.json +0 -320
  52. package/skills/automation-flow-coordinate/references/shared/server-functions.md +0 -597
  53. package/skills/automotive-cloud-appraisal-management-settings-configure/SKILL.md +0 -69
  54. package/skills/automotive-cloud-dealer-essentials-configure/SKILL.md +0 -78
  55. package/skills/automotive-cloud-ground-agent-data-pipelines-configure/SKILL.md +0 -373
  56. package/skills/automotive-cloud-ground-mfg-agent-data-pipelines-configure/SKILL.md +0 -273
  57. package/skills/automotive-cloud-mfg-agent-data-pipelines-configure/SKILL.md +0 -259
  58. package/skills/automotive-cloud-mfg-sales-concierge-agent-create/SKILL.md +0 -369
  59. package/skills/automotive-cloud-mfg-sales-concierge-foundation-configure/SKILL.md +0 -542
  60. package/skills/automotive-cloud-mfg-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  61. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-agent-create/SKILL.md +0 -349
  62. package/skills/automotive-cloud-mfg-sales-concierge-orchestrator-configure/SKILL.md +0 -505
  63. package/skills/automotive-cloud-sales-concierge-agent-create/SKILL.md +0 -380
  64. package/skills/automotive-cloud-sales-concierge-foundation-configure/SKILL.md +0 -567
  65. package/skills/automotive-cloud-sales-concierge-foundation-coordinate/SKILL.md +0 -159
  66. package/skills/automotive-cloud-sales-concierge-orchestrator-agent-create/SKILL.md +0 -360
  67. package/skills/automotive-cloud-sales-concierge-orchestrator-configure/SKILL.md +0 -539
  68. package/skills/automotive-cloud-sales-concierge-search-grounding-configure/SKILL.md +0 -358
  69. package/skills/commerce-b2b-merchant-quote-configure/SKILL.md +0 -602
  70. package/skills/commerce-b2b-store-configure/SKILL.md +0 -251
  71. package/skills/commerce-credit-memo-create/SKILL.md +0 -139
  72. package/skills/commerce-delivery-business-hours-configure/SKILL.md +0 -277
  73. package/skills/commerce-delivery-estimation-apply/SKILL.md +0 -155
  74. package/skills/commerce-delivery-estimation-configure/SKILL.md +0 -377
  75. package/skills/commerce-delivery-routing-specs-integrate/SKILL.md +0 -174
  76. package/skills/commerce-estimate-bopis-query/SKILL.md +0 -279
  77. package/skills/commerce-estimate-delivery-date-query/SKILL.md +0 -349
  78. package/skills/commerce-fees-apply/SKILL.md +0 -227
  79. package/skills/commerce-fulfillment-routing-analyze/SKILL.md +0 -200
  80. package/skills/commerce-guest-buyer-create/SKILL.md +0 -173
  81. package/skills/commerce-location-bopis-configure/SKILL.md +0 -378
  82. package/skills/commerce-location-business-hours-configure/SKILL.md +0 -235
  83. package/skills/commerce-location-delivery-processing-time-configure/SKILL.md +0 -309
  84. package/skills/commerce-location-graph-integrate/SKILL.md +0 -131
  85. package/skills/commerce-location-shipping-carrier-method-configure/SKILL.md +0 -755
  86. package/skills/commerce-location-temporary-operating-hours-configure/SKILL.md +0 -331
  87. package/skills/commerce-merchant-buyer-groups-configure/SKILL.md +0 -579
  88. package/skills/commerce-merchant-buyer-user-onboarding-create/SKILL.md +0 -626
  89. package/skills/commerce-merchant-catalog-configure/SKILL.md +0 -614
  90. package/skills/commerce-merchant-extension-provider-configure/SKILL.md +0 -368
  91. package/skills/commerce-merchant-insights-account-health-churn-analyze/SKILL.md +0 -118
  92. package/skills/commerce-merchant-insights-inventory-returns-analyze/SKILL.md +0 -65
  93. package/skills/commerce-merchant-insights-order-shopper-get/SKILL.md +0 -90
  94. package/skills/commerce-merchant-insights-product-performance-analyze/SKILL.md +0 -72
  95. package/skills/commerce-merchant-insights-query/SKILL.md +0 -279
  96. package/skills/commerce-merchant-storefront-guest-access-configure/SKILL.md +0 -656
  97. package/skills/commerce-order-summary-change-apply/SKILL.md +0 -375
  98. package/skills/commerce-product-details-get/SKILL.md +0 -363
  99. package/skills/commerce-product-search/SKILL.md +0 -563
  100. package/skills/commerce-react-storefront-create/SKILL.md +0 -350
  101. package/skills/commerce-return-order-summary-create/SKILL.md +0 -513
  102. package/skills/commerce-search-relevance-analyze/SKILL.md +0 -757
  103. package/skills/commerce-temporary-processing-time-override-create/SKILL.md +0 -274
  104. package/skills/communications-initial-setup-configure/SKILL.md +0 -630
  105. package/skills/communications-multisite-configure/SKILL.md +0 -571
  106. package/skills/communications-revenue-cloud-settings-configure/SKILL.md +0 -74
  107. package/skills/communications-smb-fiber-catalog-create/SKILL.md +0 -413
  108. package/skills/communications-tmf-integrate/SKILL.md +0 -1368
  109. package/skills/consumer-goods-visit-activity-act4-questions-assign/SKILL.md +0 -448
  110. package/skills/consumer-goods-visit-activity-act5-standard-create/SKILL.md +0 -269
  111. package/skills/consumer-goods-visit-activity-act6-assortment-configure/SKILL.md +0 -271
  112. package/skills/consumer-goods-visit-activity-act7-account-scoping-create/SKILL.md +0 -382
  113. package/skills/consumer-goods-visit-activity-act8-plan-attach-create/SKILL.md +0 -373
  114. package/skills/consumer-goods-visit-activity-act9-proof-validate/SKILL.md +0 -389
  115. package/skills/consumer-goods-visit-and-activity-act1-specification-create/SKILL.md +0 -338
  116. package/skills/consumer-goods-visit-and-activity-act2-template-create/SKILL.md +0 -547
  117. package/skills/consumer-goods-visit-and-activity-act3-definition-create/SKILL.md +0 -346
  118. package/skills/consumer-goods-visit-and-activity-configure/SKILL.md +0 -1110
  119. package/skills/crm-analytics-adoption-insights-configure/SKILL.md +0 -224
  120. package/skills/crm-analytics-custom-report-type-lightning-configure/SKILL.md +0 -418
  121. package/skills/crm-analytics-dashboards-configure/SKILL.md +0 -731
  122. package/skills/crm-analytics-operational-analytics-metadata-bridge-migrate/SKILL.md +0 -233
  123. package/skills/crm-analytics-report-notifications-ui-configure/SKILL.md +0 -184
  124. package/skills/crm-analytics-sharing-inheritance-coverage-analyze/SKILL.md +0 -167
  125. package/skills/crm-analytics-sonic-getting-started-configure/SKILL.md +0 -55
  126. package/skills/crm-analytics-tableau-next-app-deploy/SKILL.md +0 -1350
  127. package/skills/crm-analytics-tableau-next-c360-basemodel-validate/SKILL.md +0 -1862
  128. package/skills/crm-analytics-tableau-next-datacloud-validate/SKILL.md +0 -83
  129. package/skills/crm-analytics-tableau-next-provisioning-validate/SKILL.md +0 -81
  130. package/skills/data360-activation-create/SKILL.md +0 -104
  131. package/skills/data360-activation-external-platform-get/SKILL.md +0 -49
  132. package/skills/data360-activation-target-create/SKILL.md +0 -93
  133. package/skills/data360-activation-v2-create/SKILL.md +0 -456
  134. package/skills/data360-audience-dmo-get/SKILL.md +0 -38
  135. package/skills/data360-calculated-affinity-create/SKILL.md +0 -82
  136. package/skills/data360-calculated-insight-create/SKILL.md +0 -148
  137. package/skills/data360-catalog-metadata-create/SKILL.md +0 -183
  138. package/skills/data360-code-extension-create/SKILL.md +0 -115
  139. package/skills/data360-communication-capping-create/SKILL.md +0 -227
  140. package/skills/data360-connection-create/SKILL.md +0 -491
  141. package/skills/data360-content-lens-create/SKILL.md +0 -181
  142. package/skills/data360-data-action-create/SKILL.md +0 -126
  143. package/skills/data360-data-action-target-create/SKILL.md +0 -181
  144. package/skills/data360-data-clean-room-create/SKILL.md +0 -238
  145. package/skills/data360-data-governance-create/SKILL.md +0 -746
  146. package/skills/data360-data-graph-create/SKILL.md +0 -82
  147. package/skills/data360-data-harmonized-model-object-reference-create/SKILL.md +0 -38
  148. package/skills/data360-data-lake-object-create/SKILL.md +0 -207
  149. package/skills/data360-data-model-object-catalog-get/SKILL.md +0 -49
  150. package/skills/data360-data-model-object-create/SKILL.md +0 -128
  151. package/skills/data360-data-model-object-mapping-create/SKILL.md +0 -106
  152. package/skills/data360-data-space-create/SKILL.md +0 -161
  153. package/skills/data360-data-streams-create/SKILL.md +0 -324
  154. package/skills/data360-engagement-signal-get/SKILL.md +0 -38
  155. package/skills/data360-experiment-create/SKILL.md +0 -82
  156. package/skills/data360-goal-based-campaign-create/SKILL.md +0 -192
  157. package/skills/data360-harmonization-process-history-get/SKILL.md +0 -38
  158. package/skills/data360-harmonized-unstructured-dmo-create/SKILL.md +0 -84
  159. package/skills/data360-identity-resolution-create/SKILL.md +0 -115
  160. package/skills/data360-intelligent-document-processing-create/SKILL.md +0 -148
  161. package/skills/data360-knowledge-graph-construction-create/SKILL.md +0 -93
  162. package/skills/data360-knowledge-graph-create/SKILL.md +0 -216
  163. package/skills/data360-knowledge-space-mcp-configure/SKILL.md +0 -475
  164. package/skills/data360-machine-learning-mcp-configure/SKILL.md +0 -697
  165. package/skills/data360-multi-org-mcp-configure/SKILL.md +0 -117
  166. package/skills/data360-secondary-index-mcp-configure/SKILL.md +0 -126
  167. package/skills/data360-segment-mcp-configure/SKILL.md +0 -159
  168. package/skills/data360-semantic-calculated-dimension-mcp-configure/SKILL.md +0 -93
  169. package/skills/data360-semantic-calculated-measurement-mcp-configure/SKILL.md +0 -93
  170. package/skills/data360-semantic-data-object-mcp-configure/SKILL.md +0 -93
  171. package/skills/data360-semantic-dimension-mcp-configure/SKILL.md +0 -38
  172. package/skills/data360-semantic-engine-mcp-configure/SKILL.md +0 -62
  173. package/skills/data360-semantic-measurement-mcp-configure/SKILL.md +0 -38
  174. package/skills/data360-semantic-metric-mcp-configure/SKILL.md +0 -93
  175. package/skills/data360-semantic-model-mcp-configure/SKILL.md +0 -115
  176. package/skills/data360-standard-mapping-mcp-configure/SKILL.md +0 -38
  177. package/skills/data360-tenant-lifecycle-mcp-configure/SKILL.md +0 -73
  178. package/skills/experience-afv-query/SKILL.md +0 -234
  179. package/skills/experience-agentforce-vibes-in-react-configure/SKILL.md +0 -63
  180. package/skills/experience-apex-components-configure/SKILL.md +0 -69
  181. package/skills/experience-apex-pages-configure/SKILL.md +0 -107
  182. package/skills/experience-app-home-configure/SKILL.md +0 -76
  183. package/skills/experience-aura-lightning-out-access-configure/SKILL.md +0 -58
  184. package/skills/experience-briefcase-configure/SKILL.md +0 -287
  185. package/skills/experience-community-flexi-page-list-create/SKILL.md +0 -74
  186. package/skills/experience-community-template-definition-list-query/SKILL.md +0 -48
  187. package/skills/experience-community-theme-definition-list-query/SKILL.md +0 -38
  188. package/skills/experience-content-assets-configure/SKILL.md +0 -86
  189. package/skills/experience-custom-domain-create/SKILL.md +0 -727
  190. package/skills/experience-defer-rendering-workspace-page-setup-configure/SKILL.md +0 -41
  191. package/skills/experience-field-service-app-builder-configure/SKILL.md +0 -187
  192. package/skills/experience-flow-category-configure/SKILL.md +0 -117
  193. package/skills/experience-formula-configure/SKILL.md +0 -358
  194. package/skills/experience-global-actions-configure/SKILL.md +0 -69
  195. package/skills/experience-global-publisher-layouts-configure/SKILL.md +0 -79
  196. package/skills/experience-instrumentation-configure/SKILL.md +0 -64
  197. package/skills/experience-lex-engagement-configure/SKILL.md +0 -50
  198. package/skills/experience-lightning-bolt-open/SKILL.md +0 -12
  199. package/skills/experience-lightning-out-configure/SKILL.md +0 -129
  200. package/skills/experience-lightning-preview-configure/SKILL.md +0 -67
  201. package/skills/experience-lightning-types-query/SKILL.md +0 -98
  202. package/skills/experience-malware-scan-configure/SKILL.md +0 -71
  203. package/skills/experience-my-salesforce-configure/SKILL.md +0 -126
  204. package/skills/experience-navigation-menus-configure/SKILL.md +0 -235
  205. package/skills/experience-notification-types-configure/SKILL.md +0 -206
  206. package/skills/experience-notifications-configure/SKILL.md +0 -75
  207. package/skills/experience-record-discovery-query/SKILL.md +0 -227
  208. package/skills/experience-regenerate-previews-open/SKILL.md +0 -94
  209. package/skills/experience-sales-cloud-mab-configure/SKILL.md +0 -254
  210. package/skills/experience-schema-builder-open/SKILL.md +0 -38
  211. package/skills/experience-simple-record-home-configure/SKILL.md +0 -110
  212. package/skills/experience-static-resources-configure/SKILL.md +0 -74
  213. package/skills/field-service-setup-coordinate/SKILL.md +0 -62
  214. package/skills/field-service-work-plan-configure/SKILL.md +0 -253
  215. package/skills/fsc-actionable-segmentation-settings-configure/SKILL.md +0 -180
  216. package/skills/fsc-digital-origination-bre-decision-matrix-foundation-create/SKILL.md +0 -196
  217. package/skills/fsc-digital-origination-bre-disclosures-consent-configure/SKILL.md +0 -106
  218. package/skills/fsc-digital-origination-bre-document-upload-configure/SKILL.md +0 -96
  219. package/skills/fsc-digital-origination-bre-permissions-assign/SKILL.md +0 -111
  220. package/skills/fsc-digital-origination-bre-setup-coordinate/SKILL.md +0 -250
  221. package/skills/fsc-digital-origination-bre-stp-eligibility-configure/SKILL.md +0 -122
  222. package/skills/fsc-digital-origination-coordinate/SKILL.md +0 -653
  223. package/skills/fsc-digital-origination-demo-run/SKILL.md +0 -225
  224. package/skills/fsc-digital-origination-execution-guardrails-validate/SKILL.md +0 -112
  225. package/skills/fsc-digital-origination-initial-setup-configure/SKILL.md +0 -396
  226. package/skills/fsc-digital-origination-pricing-setup-coordinate/SKILL.md +0 -336
  227. package/skills/fsc-digital-origination-pricing-setup-data-foundation-create/SKILL.md +0 -208
  228. package/skills/fsc-digital-origination-pricing-setup-procedure-create/SKILL.md +0 -375
  229. package/skills/fsc-digital-origination-product-setup-act1-permissions-assign/SKILL.md +0 -83
  230. package/skills/fsc-digital-origination-product-setup-coordinate/SKILL.md +0 -248
  231. package/skills/fsc-digital-origination-sample-data-create/SKILL.md +0 -206
  232. package/skills/fsc-document-checklist-settings-configure/SKILL.md +0 -57
  233. package/skills/fsc-flexible-hierarchy-configure/SKILL.md +0 -148
  234. package/skills/fsc-flexible-hierarchy-foundation-configure/SKILL.md +0 -1430
  235. package/skills/fsc-flexible-hierarchy-graph-config-create/SKILL.md +0 -471
  236. package/skills/fsc-flexible-hierarchy-rule-based-graph-deploy/SKILL.md +0 -429
  237. package/skills/fsc-pricing-product-configurator-configure/SKILL.md +0 -150
  238. package/skills/fsc-pricing-salesforce-omnistudio-switch/SKILL.md +0 -123
  239. package/skills/fsc-product-act2-catalog-categories-create/SKILL.md +0 -82
  240. package/skills/fsc-product-act3-attributes-create/SKILL.md +0 -249
  241. package/skills/fsc-product-act4-classification-assignment-create/SKILL.md +0 -196
  242. package/skills/fsc-product-act5-considerations-get/SKILL.md +0 -44
  243. package/skills/fsc-stage-management-apex-flow-deploy/SKILL.md +0 -384
  244. package/skills/fsc-stage-management-compliant-data-sharing-configure/SKILL.md +0 -144
  245. package/skills/fsc-stage-management-decision-matrices-create/SKILL.md +0 -107
  246. package/skills/fsc-stage-management-definition-assignments-create/SKILL.md +0 -189
  247. package/skills/fsc-stage-management-definition-create/SKILL.md +0 -108
  248. package/skills/fsc-stage-management-permissions-assign/SKILL.md +0 -143
  249. package/skills/fsc-stage-management-transitions-configure/SKILL.md +0 -139
  250. package/skills/health-cloud-appt-booking-config-configure/SKILL.md +0 -135
  251. package/skills/health-cloud-appt-booking-url-config-configure/SKILL.md +0 -134
  252. package/skills/health-cloud-care-provider-affl-role-config-configure/SKILL.md +0 -136
  253. package/skills/health-cloud-care-provider-search-config-configure/SKILL.md +0 -134
  254. package/skills/health-cloud-care-requests-create/SKILL.md +0 -178
  255. package/skills/health-cloud-initial-configure/SKILL.md +0 -511
  256. package/skills/health-cloud-patient-appointment-scheduling-configure/SKILL.md +0 -1374
  257. package/skills/health-cloud-provider-search-settings-configure/SKILL.md +0 -924
  258. package/skills/health-cloud-referral-management-coordinate/SKILL.md +0 -513
  259. package/skills/health-cloud-timeline-configure/SKILL.md +0 -622
  260. package/skills/health-cloud-virtual-visit-config-configure/SKILL.md +0 -135
  261. package/skills/industries-account-score-settings-query/SKILL.md +0 -78
  262. package/skills/industries-actionable-list-data-sources-dmo-configure/SKILL.md +0 -177
  263. package/skills/industries-ad-product-availability-search/SKILL.md +0 -399
  264. package/skills/industries-advanced-account-forecast-settings-configure/SKILL.md +0 -628
  265. package/skills/industries-advanced-therapy-management-settings-configure/SKILL.md +0 -73
  266. package/skills/industries-atm-settings-starter-configure/SKILL.md +0 -76
  267. package/skills/industries-batch-document-ai-configure/SKILL.md +0 -196
  268. package/skills/industries-behavioral-health-app-settings-configure/SKILL.md +0 -71
  269. package/skills/industries-branch-management-settings-configure/SKILL.md +0 -89
  270. package/skills/industries-bre-decision-table-access-configure/SKILL.md +0 -367
  271. package/skills/industries-brokerage-settings-configure/SKILL.md +0 -41
  272. package/skills/industries-calendar-sync-settings-configure/SKILL.md +0 -89
  273. package/skills/industries-care-request-settings-configure/SKILL.md +0 -218
  274. package/skills/industries-case-management-intelligence-settings-configure/SKILL.md +0 -54
  275. package/skills/industries-catalog-process-attributes-products-configure/SKILL.md +0 -380
  276. package/skills/industries-catalog-process-fulfillment-configure/SKILL.md +0 -216
  277. package/skills/industries-catalog-process-intake-configure/SKILL.md +0 -219
  278. package/skills/industries-catalog-process-knowledge-configure/SKILL.md +0 -153
  279. package/skills/industries-catalog-process-preprocessor-configure/SKILL.md +0 -168
  280. package/skills/industries-cds-general-settings-configure/SKILL.md +0 -69
  281. package/skills/industries-claim-financial-settings-configure/SKILL.md +0 -169
  282. package/skills/industries-clinical-data-model-settings-configure/SKILL.md +0 -136
  283. package/skills/industries-clinical-data-model-settings-starter-configure/SKILL.md +0 -105
  284. package/skills/industries-collection-plan-settings-configure/SKILL.md +0 -132
  285. package/skills/industries-comms-service-console-settings-configure/SKILL.md +0 -159
  286. package/skills/industries-compliance-configure/SKILL.md +0 -102
  287. package/skills/industries-compliance-document-extraction-setup-configure/SKILL.md +0 -76
  288. package/skills/industries-contact-center-app-layout-configure/SKILL.md +0 -88
  289. package/skills/industries-contact-center-components-configure/SKILL.md +0 -96
  290. package/skills/industries-contact-center-path-knowledge-configure/SKILL.md +0 -95
  291. package/skills/industries-contact-center-user-access-assign/SKILL.md +0 -96
  292. package/skills/industries-course-waitlist-config-configure/SKILL.md +0 -162
  293. package/skills/industries-crisis-center-settings-configure/SKILL.md +0 -84
  294. package/skills/industries-custom-object-settings-configure/SKILL.md +0 -94
  295. package/skills/industries-data-cloud-integration-configure/SKILL.md +0 -88
  296. package/skills/industries-data-space-feature-mappings-configure/SKILL.md +0 -245
  297. package/skills/industries-decision-matrix-builder-configure/SKILL.md +0 -78
  298. package/skills/industries-decision-table-hbase-configure/SKILL.md +0 -87
  299. package/skills/industries-decision-table-version-configure/SKILL.md +0 -74
  300. package/skills/industries-decision-tables-builder-configure/SKILL.md +0 -253
  301. package/skills/industries-decision-tables-configure/SKILL.md +0 -439
  302. package/skills/industries-energy-utilities-configure/SKILL.md +0 -251
  303. package/skills/industries-eu-cloud-multisite-configure/SKILL.md +0 -1008
  304. package/skills/industries-eu-new-connections-configure/SKILL.md +0 -30
  305. package/skills/industries-explainability-msg-template-configure/SKILL.md +0 -135
  306. package/skills/industries-expression-set-message-token-configure/SKILL.md +0 -135
  307. package/skills/industries-field-service-settings-configure/SKILL.md +0 -82
  308. package/skills/industries-form-framework-settings-configure/SKILL.md +0 -30
  309. package/skills/industries-fsc-ai-settings-configure/SKILL.md +0 -57
  310. package/skills/industries-fsc-association-engine-settings-configure/SKILL.md +0 -172
  311. package/skills/industries-fsc-b2b-settings-configure/SKILL.md +0 -61
  312. package/skills/industries-fsc-insurance-settings-configure/SKILL.md +0 -58
  313. package/skills/industries-fsc-visa-fulfillment-setup-configure/SKILL.md +0 -103
  314. package/skills/industries-fsc-wealth-agent-settings-configure/SKILL.md +0 -117
  315. package/skills/industries-fsc-wealth-settings-configure/SKILL.md +0 -99
  316. package/skills/industries-fundraising-gift-entry-settings-configure/SKILL.md +0 -120
  317. package/skills/industries-fundraising-rfm-configure/SKILL.md +0 -128
  318. package/skills/industries-fundraising-settings-configure/SKILL.md +0 -145
  319. package/skills/industries-fundraising-source-code-gen-configure/SKILL.md +0 -299
  320. package/skills/industries-google-maps-api-key-settings-configure/SKILL.md +0 -87
  321. package/skills/industries-grantmaking-intelligence-settings-open/SKILL.md +0 -58
  322. package/skills/industries-hc-score-category-settings-configure/SKILL.md +0 -167
  323. package/skills/industries-health-engagement-settings-configure/SKILL.md +0 -218
  324. package/skills/industries-home-health-agentforce-setup-configure/SKILL.md +0 -131
  325. package/skills/industries-home-health-bundling-policy-create/SKILL.md +0 -50
  326. package/skills/industries-home-health-entity-labels-configure/SKILL.md +0 -29
  327. package/skills/industries-home-health-fsl-package-deploy/SKILL.md +0 -71
  328. package/skills/industries-home-health-fsl-settings-validate/SKILL.md +0 -27
  329. package/skills/industries-home-health-guided-setup-care-and-skill-get/SKILL.md +0 -80
  330. package/skills/industries-home-health-guided-setup-configure/SKILL.md +0 -836
  331. package/skills/industries-home-health-guided-setup-enable-org-fsl-get/SKILL.md +0 -55
  332. package/skills/industries-home-health-guided-setup-get-org-ready-get/SKILL.md +0 -61
  333. package/skills/industries-home-health-licenses-assign/SKILL.md +0 -27
  334. package/skills/industries-home-health-operating-hours-create/SKILL.md +0 -40
  335. package/skills/industries-home-health-scheduling-policy-create/SKILL.md +0 -41
  336. package/skills/industries-home-health-service-objective-create/SKILL.md +0 -22
  337. package/skills/industries-home-health-skills-create/SKILL.md +0 -31
  338. package/skills/industries-home-health-users-create/SKILL.md +0 -29
  339. package/skills/industries-icm-act3-toggles-configure/SKILL.md +0 -198
  340. package/skills/industries-icm-act5-genai-suggested-assessments-configure/SKILL.md +0 -361
  341. package/skills/industries-icm-act6-mcg-integration-configure/SKILL.md +0 -550
  342. package/skills/industries-integrated-care-management-configure/SKILL.md +0 -168
  343. package/skills/industries-object-enablement-configure/SKILL.md +0 -86
  344. package/skills/industries-tpm-system-processing-service-configure/SKILL.md +0 -64
  345. package/skills/integration-apex-settings-configure/SKILL.md +0 -61
  346. package/skills/marketing-e360-email-archiving-configure/SKILL.md +0 -73
  347. package/skills/platform-custom-permissions-configure/SKILL.md +0 -687
  348. package/skills/platform-label-workbench-import-create/SKILL.md +0 -67
  349. package/skills/platform-privacy-agent-settings-configure/SKILL.md +0 -752
@@ -1,755 +0,0 @@
1
- ---
2
- name: commerce-location-shipping-carrier-method-configure
3
- description: "Use this skill when users want to use this workflow when an admin wants to configure WHICH shipping carrier methods are available at a location (or a whole location group) and HOW LONG they take. Trigger when users mention update, location, shipping, carrier, method."
4
- metadata:
5
- version: "1.0"
6
- accessCheck: "(CommerceDelivery.orgHasDeliveryEstimationEnabled) || (ShippingCarrier.exists)"
7
- ---
8
-
9
- # Managing Update Location Shipping Carrier Method
10
-
11
- ## When to Use This Skill
12
-
13
- Use this workflow when an admin wants to configure WHICH shipping carrier methods are
14
- available at a location (or a whole location group) and HOW LONG they take. Two
15
- independent choices drive the flow:
16
-
17
- method_action — CREATE a brand-new ShippingCarrierMethod under an existing
18
- ShippingCarrier, or use/UPDATE an EXISTING one.
19
- assign_to — assign to a single Location, or to a LocationGroup (every location
20
- currently in the group inherits the assignment).
21
-
22
- These two choices are independent but NOT optional to combine: this skill never
23
- creates or updates a ShippingCarrierMethod without also creating/updating its
24
- LocationShippingCarrierMethod assignment in the SAME run — a method with no
25
- assignment (unreachable by any location) is not a supported end-state here.
26
- method_action / assign_to decide HOW the method is created/updated and WHERE it's
27
- assigned, never WHETHER it's assigned.
28
-
29
- ENTITIES (all confirmed live against the platform's own entity definitions, NOT the
30
- cached Data-API docs, which were found stale for this object):
31
- - ShippingCarrierMethod (keyPrefix 2A1) — the reusable carrier+transit-time
32
- definition. Name (REQUIRED — live-confirmed, not in any cached field
33
- reference), ExternalReference (required, unique together with ShippingCarrierId),
34
- ShippingCarrierId (required FK, keyPrefix 2A2), MinTransitTime (REQUIRED BY THIS
35
- SKILL — platform itself treats it as an optional int; see RANGE below),
36
- MaxTransitTime (REQUIRED int), TransitTimeUnit (REQUIRED enum
37
- Hours|Days|Weeks), ProcessingTime (optional int), ProcessingTimeUnit (optional
38
- enum Hours|Days|Weeks — same TimeUnitEnum as TransitTimeUnit). Treat
39
- ProcessingTime and ProcessingTimeUnit as BOTH-OR-NEITHER — live-confirmed the
40
- platform does NOT actually enforce this (a lone ProcessingTime saves fine with
41
- ProcessingTimeUnit left null), but a processing time with no unit is
42
- meaningless partial data, so this skill collects both together anyway. This is
43
- the METHOD-level processing time —
44
- shared across every location the method is assigned to — and NOT the same
45
- field as either of the other "default processing time" fields the platform
46
- also has (see SCOPE LEVELS below).
47
- - LocationShippingCarrierMethod (keyPrefix 2A3) — the assignment/junction row
48
- linking a method to a Location OR LocationGroup (LocationSourceId is a
49
- polymorphic lookup over both, resolved by the Id's keyPrefix — no separate
50
- discriminator field). PickupTime (optional Time) lives HERE, per location/group
51
- PER METHOD — not on the method, and NOT the same field as either of the two
52
- OTHER "default pickup time" fields the platform also has (see SCOPE
53
- LEVELS below — confirm scope with the admin before setting it). DB-ENFORCED
54
- UNIQUE INDEX on (LocationSourceId, ShippingCarrierMethodId) — a location/group can
55
- have at most ONE assignment row per method; a duplicate POST hard-fails at the
56
- platform level. Always resolve the existing row first (check-existing-assignment)
57
- and POST vs PATCH accordingly.
58
-
59
- SCOPE LEVELS — pickup time and processing time each exist at MULTIPLE levels on
60
- the platform; only ONE level of each is this skill's field. An admin saying "set
61
- the pickup/processing time" doesn't by itself say which level they mean — consult
62
- this before setting either:
63
-
64
- Pickup time (2 levels):
65
- - SETUP — DeliveryEstimationSetup.DefaultPickupTime. Per-channel default
66
- applying across the whole delivery estimation configuration. A DIFFERENT
67
- skill (Delivery Estimation Setup) — NOT settable here.
68
- - LOCATION-PER-METHOD — LocationShippingCarrierMethod.PickupTime. THIS skill's
69
- field, and the correct entity for a location-level carrier pickup time.
70
- Scoped to one (Location-or-LocationGroup × ShippingCarrierMethod) assignment;
71
- set by create-assignment / update-assignment below.
72
- Unrelated decoys (real fields, NOT either scope above, NOT settable by this
73
- skill): Location.DefaultPickupTime (location-WIDE, not carrier- or
74
- method-specific — applies regardless of which carrier method is used);
75
- Location.EarliestPickupTimeOffset / LatestPickupTimeOffset (BOPIS
76
- customer-pickup-window offsets, minutes before end of business hours — about
77
- when a CUSTOMER picks up an order, not when a CARRIER picks one up from the
78
- location — different concept and use case entirely).
79
-
80
- Processing time (4 levels — live-org validation added the 4th; earlier authoring
81
- incorrectly assumed the assignment row had none):
82
- - SETUP — DeliveryEstimationSetup.DefaultProcessingTime / DefaultProcessingTimeUnit.
83
- Per-channel default. A DIFFERENT skill — NOT settable here.
84
- - LOCATION-WIDE — Location.DefaultProcessingTime / DefaultProcessingTimeUnit.
85
- Location-wide, independent of any specific carrier method (requires Order
86
- Management; hidden by field-level security by default). NOT settable by this
87
- skill.
88
- - METHOD — ShippingCarrierMethod.ProcessingTime / ProcessingTimeUnit. THIS
89
- skill's field, set by create-shipping-carrier-method /
90
- update-shipping-carrier-method above. Shared by every location/group the
91
- method ends up assigned to — NOT per-location.
92
- - ASSIGNMENT — LocationShippingCarrierMethod.ProcessingTime / ProcessingTimeUnit.
93
- A per-(location-or-group × method) override, more specific than the
94
- method-level field above. THIS skill's field too — set by create-assignment /
95
- update-assignment below, independent of the method-level ProcessingTime.
96
- Unrelated decoy: Location.PickupProcessingTime — the processing time for BOPIS
97
- (customer pickup) orders at a location. Unrelated to a carrier method's
98
- processing time. NOT settable by this skill.
99
-
100
- DISAMBIGUATION BEHAVIOR — step 1, IN SCOPE OR NOT (pickup time and processing time
101
- both work this way): if the admin's ask names a specific carrier or shipping
102
- method ("pickup time for FedEx Ground at the downtown store", "processing time
103
- for FedEx Ground"), that's in scope for this skill — proceed to step 2 below. If
104
- it's ambiguous or reads as a store-wide/channel-wide setup default (no carrier or
105
- method mentioned), ask which level they mean before setting anything; if they
106
- mean a level this skill doesn't own (setup-level for either; location-wide for
107
- processing time), tell them plainly and point them to a different skill.
108
-
109
- DISAMBIGUATION BEHAVIOR — step 2, WHICH of this skill's levels (pickup time has
110
- only ONE settable level here, so step 2 only applies to processing time):
111
- pickup time is always assignment-level (LocationShippingCarrierMethod.PickupTime,
112
- set by create-assignment / update-assignment) — there is no method-level pickup
113
- time, so no further question once step 1 confirms it's in scope. Processing time
114
- has TWO settable levels here, and an in-scope ask does NOT by itself say which:
115
- if the admin wants the value to apply everywhere this method is assigned
116
- (method-level — "set FedEx Ground's processing time to 2 days"), use
117
- create-shipping-carrier-method / update-shipping-carrier-method. If they want it
118
- to apply ONLY at one specific location or group (assignment-level override —
119
- "for the downtown store's FedEx Ground assignment, use a 1-day processing time
120
- instead"), use create-assignment / update-assignment's processingTime /
121
- processingTimeUnit. If the ask doesn't make the scope clear ("set the processing
122
- time for FedEx Ground" with no location/group context and no "for this location"
123
- qualifier), ask the admin whether they mean the method everywhere it's used or
124
- just this one assignment before calling either.
125
-
126
- EXCLUDED BY DESIGN (confirmed to exist but out of scope for this skill):
127
- - ShippingCarrierMethod.ShippingAreaType — platform-required but
128
- apiAccess/createAccess/editAccess="isSfdcInternal": NOT settable via the public
129
- API. Never attempt to set it; the platform applies its own default.
130
- - ShippingCarrierMethod.ManagedShippingCarrierMethod and .ShippingScope —
131
- optional enums for Salesforce-managed carrier integrations / shipping-scope
132
- classification; the customer did not ask to set these here. Leave unset.
133
- - Per-day pickup-time fields — BOTH ShippingCarrierMethod and
134
- LocationShippingCarrierMethod additionally carry seven day-specific fields
135
- (MondayPickUpTime..SundayPickUpTime, minApiVersion=262). This skill exposes only
136
- the single generic LocationShippingCarrierMethod.PickupTime the customer asked
137
- for ("a pickup time"). If an admin wants a per-day pickup schedule instead, that
138
- is a natural follow-up enhancement to this skill, not covered here.
139
- - Every non-settable field listed under SCOPE LEVELS above (the setup-level and
140
- location-wide defaults, and both BOPIS decoys) — none of those are settable
141
- by this skill; if the admin actually wants one of them, say so plainly instead
142
- of silently setting this skill's own field in its place. (The
143
- ASSIGNMENT-level processing-time override IS settable by this skill — see
144
- SCOPE LEVELS above; it is not excluded.)
145
- - Creating a new ShippingCarrier, or expanding a LocationGroup's membership — both
146
- out of scope; the carrier and the target Location/LocationGroup must already
147
- exist (see preconditions).
148
-
149
- API VERSION: every call is pinned to /services/data/v68.0/ (release 264).
150
- This is comfortably above the v67.0 minimum actually needed
151
- for ProcessingTime/ProcessingTimeUnit (minApiVersion=262 → public API v67.0, derived
152
- from the same file's ManagedShippingCarrierMethod/ShippingScope fields at
153
- minApiVersion=258 → confirmed v65.0 in the cached Data-API doc, and
154
- LocationShippingCarrierMethod.PickupTime at minApiVersion=260 → confirmed v66.0 in
155
- the same doc — a consistent +2-release = +1-API-version step).
156
-
157
- FEATURE GATES (from the entity definitions, more specific than "B2B/D2C Commerce
158
- license"): ShippingCarrierMethod / ShippingCarrier require
159
- CommerceDelivery.orgHasDeliveryEstimationEnabled OR
160
- CommerceStore.orgHasCommerceStoreEnabledOrRepricingEnabled. LocationShippingCarrierMethod
161
- requires the NARROWER CommerceDelivery.orgHasDeliveryEstimationEnabled only (no
162
- CommerceStore fallback) — so the binding precondition for this whole skill is delivery
163
- estimation being enabled.
164
-
165
- ADMIN-FACING WORDING: name the carrier method / location / group in plain language;
166
- don't surface sObject or field API names, Ids, or raw HTTP codes.
167
-
168
- ## Workflow
169
-
170
- Flow:
171
-
172
- ### Phase 1: method_action (create vs existing) and assign_to (location vs...
173
-
174
- method_action (create vs existing) and assign_to (location vs group) are
175
- independent choices — ask both up front.
176
- 2a. CREATE path: resolve-shipping-carrier (validate the carrier exists) →
177
- create-shipping-carrier-method (Name[required], ExternalReference[required],
178
- MinTransitTime[required by this skill — platform itself treats it as
179
- optional], MaxTransitTime[required], TransitTimeUnit[required],
180
- ProcessingTime[optional],
181
- ProcessingTimeUnit[optional, both-or-neither with ProcessingTime] — this is
182
- the METHOD-level processing time, shared by every location the method ends up
183
- assigned to, and not either of the two other "default processing time" fields
184
- on Location / DeliveryEstimationSetup — see SCOPE LEVELS and
185
- EXCLUDED BY DESIGN below; confirm scope with the admin first if their ask
186
- doesn't clearly name a carrier/method).
187
- 2b. EXISTING path: resolve-shipping-carrier-method (by Id, captures baseline) →
188
- update-shipping-carrier-method (partial-merge PATCH; skip the call entirely
189
- if the admin wants no field changes on the method itself — UNLESS the
190
- captured baseline's MinTransitTime is already null, which forces a
191
- minTransitTime on this call regardless; see BASELINE MINIMUM in that step's
192
- agent_guidance).
193
-
194
- ### Phase 2: verify-shipping-carrier-method — ALWAYS runs (regardless of method_action)
195
-
196
- verify-shipping-carrier-method — ALWAYS runs (regardless of method_action).
197
- Re-reads the method and confirms its transit/processing time fields.
198
- 4a. LOCATION path: resolve-location (by Id/ExternalReference/Name).
199
- 4b. GROUP path: resolve-location-group (by Id/Name) — every location currently in
200
- the group inherits the assignment.
201
-
202
- ### Phase 3: check-existing-assignment — ALWAYS runs. LocationShippingCarrierMethod has a
203
-
204
- check-existing-assignment — ALWAYS runs. LocationShippingCarrierMethod has a
205
- DB-enforced unique index on (LocationSourceId, ShippingCarrierMethodId); this read
206
- decides create-assignment (no existing row) vs update-assignment (existing
207
- row) — never both.
208
-
209
- ### Phase 4: create-assignment OR update-assignment — sets PickupTime (the customer's...
210
-
211
- create-assignment OR update-assignment — sets PickupTime (the customer's "a
212
- pickup time" ask; the single generic LocationShippingCarrierMethod.PickupTime
213
- field, not the separate day-of-week fields, and not either of the two other
214
- "default pickup time" fields on Location / DeliveryEstimationSetup) and,
215
- independently, an optional ASSIGNMENT-level ProcessingTime/ProcessingTimeUnit
216
- override (more granular than the method-level field from step 2a; both-or
217
- -neither, same convention) — see SCOPE LEVELS and EXCLUDED BY DESIGN below;
218
- confirm scope with the admin first if their ask doesn't clearly name a
219
- carrier/method.
220
-
221
- ### Phase 5: verify-assignment — re-read and confirm. INTERIM status, not...
222
-
223
- verify-assignment — re-read and confirm. INTERIM status, not final — step 8 still has to run.
224
-
225
- ### Phase 6: sync-location-graph (ALWAYS runs automatically, immediately after BOTH verify...
226
-
227
- sync-location-graph (ALWAYS runs automatically, immediately after BOTH verify steps succeed
228
- — no ask, no choice) -> delegates_to the shared sync-location-graph SOR, which publishes
229
- the location graph AND polls it to terminal success before returning. This carries
230
- LOCATION-level data. It does NOT carry the transit/processing/pickup times this SOR writes
231
- into delivery estimates — step 10 does. Necessary, not sufficient.
232
-
233
- ### Phase 7: resolve-estimation-setup-for-location (LOCATION path) OR resolve-estimation-setup-for-group
234
-
235
- resolve-estimation-setup-for-location (LOCATION path) OR resolve-estimation-setup-for-group
236
- (GROUP path) — read-only lookup of the DeliveryEstimationSetup(s) covering the target, so
237
- step 10 knows which configuration to push. Zero results is a normal, non-error answer.
238
-
239
- ### Phase 8: push-delivery-estimation (ALWAYS runs automatically when a covering ENABLED...
240
-
241
- push-delivery-estimation (ALWAYS runs automatically when a covering ENABLED setup was found
242
- — no ask, no choice) -> delegates_to enable-and-push-delivery-estimation-setup, once per
243
- enabled setup. THIS is the step that makes the change reach a delivery estimate; measured
244
- on 2026-08-26, nothing this SOR writes shows up in an estimate until it runs. Skip
245
- a setup whose IsEnabled is false rather than silently re-enabling it.
246
-
247
- ## Critical Constraints
248
-
249
- **Preconditions:**
250
-
251
- - Delivery Estimation must be enabled for LocationShippingCarrierMethod
252
- (CommerceDelivery.orgHasDeliveryEstimationEnabled). ShippingCarrierMethod /
253
- ShippingCarrier additionally allow a CommerceStore fallback gate, but the
254
- assignment object does not — treat delivery estimation as the binding gate for
255
- this whole skill. (check: `CommerceDelivery.orgHasDeliveryEstimationEnabled`)
256
- - The running user needs Create/Edit access on ShippingCarrierMethod and
257
- LocationShippingCarrierMethod, plus field-level Edit on the fields being set.
258
- Without it, calls return 403 or the fields are silently dropped. (check: `UserPermissions create/edit on ShippingCarrierMethod + LocationShippingCarrierMethod`)
259
- - The ShippingCarrier the new/existing method belongs to must already exist. This
260
- skill does not create ShippingCarrier records — resolve-shipping-carrier stops
261
- with a friendly message if the given carrier can't be found. (check: `ShippingCarrier.exists`)
262
- - The target Location or LocationGroup must already exist. This skill does not
263
- create locations or groups, or expand a group's membership. (check: `Location.exists OR LocationGroup.exists`)
264
-
265
- **Operational rules:**
266
-
267
- - EXCLUDED BY DESIGN: ShippingAreaType (internal-only, never settable via the public
268
- API), ManagedShippingCarrierMethod / ShippingScope (optional, unrequested, left
269
- unset), the seven day-of-week PickUpTime fields on both entities (customer asked
270
- for a single generic pickup time — LocationShippingCarrierMethod.PickupTime — not a
271
- per-day schedule; flag this as a possible future enhancement if the admin wants
272
- more granularity), DeliveryEstimationSetup.DefaultPickupTime (the setup-level
273
- carrier pickup time — a different skill's job), Location.DefaultPickupTime (a
274
- location-wide, non-carrier-specific default), and Location.EarliestPickupTimeOffset
275
- / LatestPickupTimeOffset (BOPIS customer-pickup-window offsets — unrelated to
276
- carrier pickup at all; see SCOPE LEVELS above),
277
- DeliveryEstimationSetup.DefaultProcessingTime / DefaultProcessingTimeUnit (the
278
- setup-level processing-time default — a different skill's job),
279
- Location.DefaultProcessingTime / DefaultProcessingTimeUnit (a location-wide,
280
- non-carrier-specific default), and Location.PickupProcessingTime (BOPIS
281
- customer-pickup processing time — unrelated to carrier processing time; see
282
- SCOPE LEVELS above), creating a ShippingCarrier, and expanding
283
- LocationGroup membership.
284
- - API VERSION: pinned to /services/data/v68.0/ (release 264) throughout — above the
285
- v67.0 minimum actually required for ProcessingTime.
286
- - CUSTOMER-FACING WORDING: the canonical closing line "Your change has been saved and synced."
287
- requires ALL FOUR of verify-shipping-carrier-method, verify-assignment, sync-location-graph's
288
- delegate reaching TERMINAL SUCCESS (not merely its enqueue returning), AND
289
- push-delivery-estimation reporting success. The push is the one that determines whether the
290
- change actually reaches a delivery estimate, so a graph sync that succeeded on its own does NOT
291
- earn this line. The one exception is a target no delivery estimation configuration covers
292
- (setup_count == 0): there the save and the graph sync ARE the whole of what can be done, so say
293
- the canonical line and add that no delivery estimate is configured for this location/group yet.
294
- Then a compact recap:
295
- - The ShippingCarrierMethod's Name (+ ExternalReference if you have it) — CREATE path: echo
296
- the exact name/externalReference values you sent (the create API doesn't echo them back);
297
- EXISTING path: the resolved method's own Name and ExternalReference, already captured by
298
- resolve-shipping-carrier-method. Either path has the Id (create-shipping-carrier-method.
299
- method_id or resolve-shipping-carrier-method.matched[0].Id) — add a best-effort link:
300
- [<Name>](<orgHost>/lightning/r/ShippingCarrierMethod/<Id>/view), where <orgHost> is
301
- https://<instance>, the org host this request was issued against. Always absolute — never a
302
- bare /lightning/r/... path. This flow holds the Id directly, so no reference-to-Id join is
303
- needed here (unlike the estimate skills, whose responses carry references only); still, if
304
- the Id is somehow absent, name the method plainly rather than inventing a URL.
305
- - What it's assigned to: the target Location (resolve-location.location_names +
306
- .location_external_references, at the index the admin chose when the lookup matched more
307
- than one — if blank/null, just leave the reference out; best-effort
308
- link [<Name>](<orgHost>/lightning/r/Location/<Id>/view)) or LocationGroup
309
- (resolve-location-group.location_group_names + .location_group_external_references, at
310
- the chosen index, if set — LocationGroup's ExternalReference is org-optional and often
311
- blank, so leave it out rather than inventing one; no standard record page confirmed to
312
- link here, so name it plainly).
313
- - What changed, in plain language (e.g. "transit time: 2-5 Days", "pickup time: 2:30pm",
314
- "processing time: 1 Day") — never the raw field names (MinTransitTime/MaxTransitTime/
315
- ProcessingTime/PickupTime).
316
- RECAP LAYOUT — ONE method/target changed (the common case): the sentence form above. If the
317
- customer asked for the SAME method assigned to MULTIPLE Locations/Groups in this conversation
318
- (this SOR runs once per target, so that's multiple invocations), give ONE consolidated table
319
- at the end instead of a repeated sentence per target —
320
- | Method | Target | Reference | Changed |
321
- |---|---|---|---|
322
- | [<Name>](<orgHost>/lightning/r/ShippingCarrierMethod/<Id>/view) | <target Location/Group name> | <target ExternalReference> | transit time: 2-5 Days |
323
- One row per target; the Reference cell is the TARGET's ExternalReference, matching the sibling
324
- per-location SORs' | ... | Reference | Changed | shape. In a table, every row needs the same
325
- number of cells — use "—" for an individual row's missing value (e.g. a LocationGroup target,
326
- whose ExternalReference is org-optional and often blank) rather than dropping the cell; only
327
- drop the Reference column entirely if every row lacks it. Still say the canonical line
328
- once, before the table, if every row synced successfully; if any row ended in TERMINAL
329
- FAILURE (see below), that row's own failure wording goes in the table's Changed cell instead
330
- of a plain "changed" description, and the canonical line is omitted (or only covers the rows
331
- that actually succeeded, named separately from the failed ones).
332
- If sync-location-graph's delegate ends in TERMINAL FAILURE, do NOT say "saved and synced". IF
333
- the delegate's poll_status is 'Error' AND poll_error is non-empty: it carries a plain-enough,
334
- per-location explanation already designed to be shown to end users (e.g. "Location 'X' has
335
- invalid country code"). COMPARE the location it names against the Location/LocationGroup THIS
336
- flow just assigned: if DIFFERENT, make that clear — "Your change was saved, but the sync
337
- couldn't complete because of an unrelated issue elsewhere — <what poll_error says>. It can be
338
- retried once that's fixed." (no link here — poll_error names that OTHER location by text/
339
- message only, not an Id this flow resolved, so there's nothing to link safely). If it names the
340
- SAME location this flow just assigned (or you can't tell — treat "can't tell" the same as
341
- "same"), do NOT say "elsewhere" — report the issue against that location, and this IS a case a
342
- link is possible: this flow already resolved that exact Location's Id for the recap above
343
- (resolve-location), so reuse it instead of naming the location in plain text — "Your change was
344
- saved, but the sync couldn't complete for [<Name>](<orgHost>/lightning/r/Location/<Id>/view):
345
- <issue from poll_error>. It can be retried once that's fixed." — keep the `]` and `(` adjacent
346
- with no space/break, or the Markdown link renders broken. If the target was a LocationGroup
347
- instead (no confirmed record-page link for that entity — see the recap link guidance above),
348
- fall back to naming it plainly rather than attempting a link. IF poll_status is
349
- 'ServiceException', poll_error is empty/absent, or the delegate exhausts its bounded poll
350
- attempts still in progress: do NOT relay raw poll_error content — fall back to the generic
351
- "saved but could not be synced (or still taking effect); retry shortly" without inventing
352
- detail.
353
- If push-delivery-estimation fails or is skipped, the wording differs by cause and must not be
354
- collapsed into the graph-sync wording above — the record change succeeded in every one of these
355
- cases, so never imply the save was lost. Push reported failure: "Your change was saved, but it
356
- couldn't be published to delivery estimates yet — it can be retried shortly." Covering setup
357
- DISABLED: "Your change was saved. Delivery estimates are currently turned off for this
358
- location/group, so it won't appear in an estimate until they're turned back on." NO covering
359
- setup: the canonical line plus "no delivery estimate is set up for this location/group yet."
360
- In all three, keep the plain-language rule — no raw error text, codes, Ids, or field names.
361
- Keep the closing + recap under ~200 characters of VISIBLE text where possible (soft target — the
362
- link URL doesn't count; prioritize the recap content over strict truncation). Never say "CDS",
363
- "Commerce Delivery Service", or otherwise imply two separate systems — this is one seamless
364
- save. Still don't surface sObject/field API names, Ids, the Connect path, or raw HTTP codes.
365
- Never echo this guidance's own internal vocabulary either: "Core", "SOR" and "corpus" are
366
- reasoning terms for you ("Core" separates the platform's own records from the delivery service's
367
- retained copy; "SOR" and "corpus" name this workflow and the catalog it lives in). Say
368
- "Salesforce" or "your org" for the platform side, and "this workflow" for the recipe itself.
369
-
370
- ## Verification Checklist
371
-
372
- After every write operation, confirm the effect by re-reading state:
373
-
374
- - After `create-shipping-carrier-method`, `update-shipping-carrier-method`: call `verify-shipping-carrier-method`
375
- - After `check-existing-assignment`, `create-assignment`, `update-assignment`: call `verify-assignment`
376
-
377
- ## Operations Reference
378
-
379
- Operations grouped by purpose. Use these as the building blocks for the workflows above.
380
-
381
- ### Summary
382
-
383
- | Operation | Purpose | Status | Call | Depends on |
384
- |-----------|---------|--------|------|------------|
385
- | `resolve-shipping-carrier` | read | implemented | `querySoql` | — |
386
- | `create-shipping-carrier-method` | write | implemented | `createShippingCarrierMethod` | `resolve-shipping-carrier` |
387
- | `resolve-shipping-carrier-method` | read | implemented | `querySoql` | — |
388
- | `update-shipping-carrier-method` | write | implemented | `updateShippingCarrierMethod` | `resolve-shipping-carrier-method` |
389
- | `verify-shipping-carrier-method` | verify | implemented | `querySoql` | `create-shipping-carrier-method`, `update-shipping-carrier-method` |
390
- | `resolve-location` | read | implemented | `querySoql` | — |
391
- | `resolve-location-group` | read | implemented | `querySoql` | — |
392
- | `check-existing-assignment` | read | implemented | `querySoql` | — |
393
- | `create-assignment` | write | implemented | `createLocationShippingCarrierMethod` | `check-existing-assignment` |
394
- | `update-assignment` | write | implemented | `updateLocationShippingCarrierMethod` | `check-existing-assignment` |
395
- | `verify-assignment` | verify | implemented | `querySoql` | `check-existing-assignment`, `create-assignment`, `update-assignment` |
396
- | `sync-location-graph` | write | — | → `cc-om-fast-and-furious/sync-location-graph` | `verify-shipping-carrier-method`, `verify-assignment` |
397
- | `resolve-estimation-setup-for-location` | read | implemented | `querySoql` | `resolve-location` |
398
- | `resolve-estimation-setup-for-group` | read | implemented | `querySoql` | `resolve-location-group` |
399
- | `push-delivery-estimation` | write | — | → `cc-om-fast-and-furious/enable-and-push-delivery-estimation-setup` | `sync-location-graph`, `resolve-estimation-setup-for-location`, `resolve-estimation-setup-for-group` |
400
-
401
- ### Dependency graph
402
-
403
- ```mermaid
404
- graph TD
405
- resolve_shipping_carrier["resolve-shipping-carrier (read)"]
406
- create_shipping_carrier_method["create-shipping-carrier-method (write)"]
407
- resolve_shipping_carrier_method["resolve-shipping-carrier-method (read)"]
408
- update_shipping_carrier_method["update-shipping-carrier-method (write)"]
409
- verify_shipping_carrier_method["verify-shipping-carrier-method (verify)"]
410
- resolve_location["resolve-location (read)"]
411
- resolve_location_group["resolve-location-group (read)"]
412
- check_existing_assignment["check-existing-assignment (read)"]
413
- create_assignment["create-assignment (write)"]
414
- update_assignment["update-assignment (write)"]
415
- verify_assignment["verify-assignment (verify)"]
416
- sync_location_graph["sync-location-graph (write)"]
417
- resolve_estimation_setup_for_location["resolve-estimation-setup-for-location (read)"]
418
- resolve_estimation_setup_for_group["resolve-estimation-setup-for-group (read)"]
419
- push_delivery_estimation["push-delivery-estimation (write)"]
420
- resolve_shipping_carrier --> create_shipping_carrier_method
421
- resolve_shipping_carrier_method --> update_shipping_carrier_method
422
- create_shipping_carrier_method --> verify_shipping_carrier_method
423
- update_shipping_carrier_method --> verify_shipping_carrier_method
424
- check_existing_assignment --> create_assignment
425
- check_existing_assignment --> update_assignment
426
- check_existing_assignment --> verify_assignment
427
- create_assignment --> verify_assignment
428
- update_assignment --> verify_assignment
429
- verify_shipping_carrier_method --> sync_location_graph
430
- verify_assignment --> sync_location_graph
431
- resolve_location --> resolve_estimation_setup_for_location
432
- resolve_location_group --> resolve_estimation_setup_for_group
433
- sync_location_graph --> push_delivery_estimation
434
- resolve_estimation_setup_for_location --> push_delivery_estimation
435
- resolve_estimation_setup_for_group --> push_delivery_estimation
436
- ```
437
-
438
- ### Read operations
439
-
440
- #### `resolve-shipping-carrier`
441
-
442
- Resolve the ShippingCarrier the new method will belong to, by Id or
443
- ExternalReference. Runs only when creating a new method — an existing method
444
- already has its carrier set.
445
-
446
- **Call:** `querySoql` — status: `implemented`
447
-
448
- **Inputs:**
449
-
450
- - `carrierIdOrExternalReference` *(`String`)* — The ShippingCarrier's Id (2A2...) or ExternalReference. Source: user_input.
451
-
452
- #### `resolve-shipping-carrier-method`
453
-
454
- Resolve an existing ShippingCarrierMethod by Id and capture its current field
455
- values as a baseline for a partial-merge PATCH and for rollback.
456
-
457
- **Call:** `querySoql` — status: `implemented`
458
-
459
- **Inputs:**
460
-
461
- - `methodId` *(`String`)* — ShippingCarrierMethod Id (2A1...). Source: user_input.
462
-
463
- #### `resolve-location`
464
-
465
- Resolve the target Location by Id, ExternalReference, or Name.
466
-
467
- **Call:** `querySoql` — status: `implemented`
468
-
469
- **Inputs:**
470
-
471
- - `locationIdOrRef` *(`String`)* — Location Id (131...), ExternalReference, or Name. Source: user_input.
472
-
473
- #### `resolve-location-group`
474
-
475
- Resolve the target LocationGroup by Id or LocationGroupName.
476
-
477
- **Call:** `querySoql` — status: `implemented`
478
-
479
- **Inputs:**
480
-
481
- - `groupIdOrName` *(`String`)* — LocationGroup Id (0gh...) or LocationGroupName. Source: user_input.
482
-
483
- #### `check-existing-assignment`
484
-
485
- Check whether this Location/LocationGroup already has an assignment row for this
486
- ShippingCarrierMethod. LocationShippingCarrierMethod has a DB-enforced unique
487
- index on (LocationSourceId, ShippingCarrierMethodId) — a location/group can have at
488
- most one assignment per method — so this determines whether the next step must
489
- be a create or an update (a duplicate POST hard-fails at the platform level, not
490
- merely creates redundant data).
491
-
492
- **Call:** `querySoql` — status: `implemented`
493
-
494
- **Inputs:**
495
-
496
- - `locationSourceId` *(`String`)* — The Location or LocationGroup Id. Source: resolve-location.location_source_ids when
497
- assign_to=location, or resolve-location-group.location_source_id (ID SHORTCUT path) or
498
- .location_source_ids (query path) when assign_to=group — in every array case, at the
499
- index the admin picked when the lookup matched more than one.
500
- - `methodId` *(`String`)* — The ShippingCarrierMethod Id. Source: create-shipping-carrier-method.method_id
501
- when method_action=create, or resolve-shipping-carrier-method.method_id when
502
- method_action=existing.
503
-
504
- #### `resolve-estimation-setup-for-location`
505
-
506
- LOCATION path only. Find the DeliveryEstimationSetup(s) covering the target Location, so
507
- push-delivery-estimation knows which configuration to push. A Location reaches a setup
508
- indirectly: setup -> LocationGroup -> LocationGroupAssignment -> Location.
509
-
510
- **Call:** `querySoql` — status: `implemented`
511
-
512
- **Inputs:**
513
-
514
- - `locationId` *(`String`)* — Source: resolve-location.matched[0].Id (the Location Id chosen by the admin when the lookup
515
- matched more than one). The 131-prefixed Location Id, never an ExternalReference or Name.
516
-
517
- **Depends on:** `resolve-location`
518
-
519
- #### `resolve-estimation-setup-for-group`
520
-
521
- GROUP path only. Find the DeliveryEstimationSetup(s) whose LocationGroup is the target group,
522
- so push-delivery-estimation knows which configuration to push.
523
-
524
- **Call:** `querySoql` — status: `implemented`
525
-
526
- **Inputs:**
527
-
528
- - `locationGroupId` *(`String`)* — Source: resolve-location-group.matched[0].Id (the LocationGroup Id chosen by the admin when
529
- the lookup matched more than one). The 0gh-prefixed LocationGroup Id, never a name.
530
-
531
- **Depends on:** `resolve-location-group`
532
-
533
- ### Write operations
534
-
535
- #### `create-shipping-carrier-method`
536
-
537
- Create the new ShippingCarrierMethod. Name, MaxTransitTime, and TransitTimeUnit
538
- are platform-required; MinTransitTime is platform-optional but REQUIRED by this
539
- skill (every method must carry a real transit-time range, not just a max).
540
- ProcessingTime and ProcessingTimeUnit remain optional, treated as both-or-neither
541
- by this skill (the platform itself does not enforce that pairing).
542
-
543
- **Call:** `createShippingCarrierMethod` — status: `implemented`
544
-
545
- **Inputs:**
546
-
547
- - `shippingCarrierId` *(`String`)* — ShippingCarrier Id. Source: resolve-shipping-carrier.carrier_id (ID SHORTCUT path — the
548
- input was already Id-shaped) or .carrier_ids at the chosen index (query path — the one the
549
- admin picked when the lookup matched more than one).
550
- - `name` *(`String`)* — Display name for this method (Name, distinct from externalReference — the
551
- platform requires Name on every ShippingCarrierMethod insert; live-confirmed,
552
- not documented in the cached field reference). If the admin has no preference,
553
- default to the same value as externalReference. Source: user_input.
554
- - `externalReference` *(`String`)* — A unique identifier for this method (unique together with shippingCarrierId —
555
- a duplicate pair is rejected by the platform's own unique index, not merely
556
- discouraged). Source: user_input.
557
- - `minTransitTime` *(`Integer`)* — Minimum transit time (whole number of transitTimeUnit units). REQUIRED by this
558
- skill — the platform itself treats MinTransitTime as optional, but this skill
559
- always collects it alongside maxTransitTime so every method carries a real
560
- transit-time range, not just an upper bound. Source: user_input.
561
- - `maxTransitTime` *(`Integer`)* — Maximum transit time (whole number of transitTimeUnit units). REQUIRED by the
562
- platform. Source: user_input.
563
- - `transitTimeUnit` *(`String`)* — Unit for minTransitTime/maxTransitTime. REQUIRED by the platform. One of Hours,
564
- Days, Weeks (Days is the platform default when a unit must be assumed, but this
565
- field itself cannot be omitted here). Source: user_input.
566
- - `processingTime` *(`Integer`)* — Optional processing time (whole number of processingTimeUnit units) — time the
567
- carrier needs before transit starts. This is the METHOD-level processing time
568
- (ShippingCarrierMethod.ProcessingTime), shared by every location this method
569
- ends up assigned to — NOT Location's or DeliveryEstimationSetup's own
570
- processing-time default (see SCOPE LEVELS in the top-level
571
- agent_description if the admin's ask doesn't clearly name a carrier/method). Must
572
- be given together with processingTimeUnit (both-or-neither); omit both if not
573
- needed. Source: user_input.
574
- - `processingTimeUnit` *(`String`)* — Unit for processingTime — Hours, Days, or Weeks. Required WHENEVER
575
- processingTime is given (both-or-neither); omit both if not needed. Source:
576
- user_input.
577
-
578
- **Depends on:** `resolve-shipping-carrier`
579
-
580
- #### `update-shipping-carrier-method`
581
-
582
- PATCH the fields the admin wants changed on an existing ShippingCarrierMethod.
583
- Partial merge — include only the fields being changed, with one exception:
584
- MinTransitTime must be explicitly settled on every update (show the current
585
- value, keep or change it) rather than silently skipped, and must be supplied
586
- outright when the stored value is null. MaxTransitTime, TransitTimeUnit, and
587
- (per this skill's own rule) MinTransitTime must never be nulled; ProcessingTime
588
- and ProcessingTimeUnit may still be explicitly nulled to clear
589
- (both-or-neither).
590
-
591
- **Call:** `updateShippingCarrierMethod` — status: `implemented`
592
-
593
- **Inputs:**
594
-
595
- - `methodId` *(`String`)* — Source: resolve-shipping-carrier-method.method_id.
596
- - `name` *(`String`)* — New display name (Name). Optional — omit to leave unchanged; Name itself is
597
- platform-required so it can never be nulled. Source: user_input.
598
- - `externalReference` *(`String`)* — New ExternalReference. Optional — omit to leave unchanged. Must stay unique
599
- together with the method's ShippingCarrierId. Source: user_input.
600
- - `minTransitTime` *(`Integer`)* — New minimum transit time. Not optional in the "may be left unspoken" sense —
601
- it must be SETTLED on every update, but settled is not the same as retyped:
602
- show the admin the current value from
603
- resolve-shipping-carrier-method's method_before[MinTransitTime] and let them keep
604
- it or replace it. Keeping it means OMITTING this input, which preserves the
605
- stored value under partial merge; changing it means supplying the new number
606
- (see SETTLE THE MINIMUM in this step's agent_guidance). When
607
- method_before.MinTransitTime is null there is nothing to keep, so a value is
608
- mandatory here even if the admin never mentioned transit time (see BASELINE
609
- MINIMUM). Never send null for this field. The platform itself treats
610
- MinTransitTime as nillable; this skill enforces it as always-set because every
611
- method it manages must carry both a min and a max transit time, and because a
612
- null minimum breaks the downstream delivery-estimation push. Source:
613
- user_input.
614
- - `maxTransitTime` *(`Integer`)* — New maximum transit time. Optional to CHANGE (omit to leave unchanged) but
615
- platform-required overall — never send null for this field. Source:
616
- user_input.
617
- - `transitTimeUnit` *(`String`)* — New transit time unit. Optional to CHANGE (omit to leave unchanged) but
618
- platform-required overall — never send null for this field. Source:
619
- user_input.
620
- - `processingTime` *(`Integer`)* — New processing time. This is the METHOD-level processing time
621
- (ShippingCarrierMethod.ProcessingTime), shared by every location this method
622
- ends up assigned to — NOT Location's or DeliveryEstimationSetup's own
623
- processing-time default (see SCOPE LEVELS in the top-level
624
- agent_description if the admin's ask doesn't clearly name a carrier/method).
625
- Optional — omit to leave unchanged; send explicit JSON null (together with
626
- processingTimeUnit null) to clear the override entirely. Source: user_input.
627
- - `processingTimeUnit` *(`String`)* — New processing time unit. Optional — omit to leave unchanged; send explicit
628
- JSON null (together with processingTime null) to clear. Source: user_input.
629
-
630
- **Depends on:** `resolve-shipping-carrier-method`
631
-
632
- **Rollback:** {'operation': 'updateShippingCarrierMethod', 'invocation': {'kind': 'rest', 'method': 'PATCH', 'path': '/services/data/v68.0/sobjects/ShippingCarrierMethod/{methodId}', 'body': {'Name': '{resolve-shipping-carrier-method.method_before[Name]}', 'ExternalReference': '{resolve-shipping-carrier-method.method_before[ExternalReference]}', 'MinTransitTime': '{resolve-shipping-carrier-method.method_before[MinTransitTime]}', 'MaxTransitTime': '{resolve-shipping-carrier-method.method_before[MaxTransitTime]}', 'TransitTimeUnit': '{resolve-shipping-carrier-method.method_before[TransitTimeUnit]}', 'ProcessingTime': '{resolve-shipping-carrier-method.method_before[ProcessingTime]}', 'ProcessingTimeUnit': '{resolve-shipping-carrier-method.method_before[ProcessingTimeUnit]}'}}}
633
-
634
- #### `create-assignment`
635
-
636
- Create the LocationShippingCarrierMethod assignment row. Run ONLY when
637
- check-existing-assignment found no existing row (match_count == 0) — never run
638
- both create-assignment and update-assignment in the same execution. PickupTime
639
- and the ASSIGNMENT-level ProcessingTime/ProcessingTimeUnit override (see SCOPE
640
- LEVELS in the top-level agent_description) are both optional and independent.
641
-
642
- **Call:** `createLocationShippingCarrierMethod` — status: `implemented`
643
-
644
- **Inputs:**
645
-
646
- - `locationSourceId` *(`String`)* — Source: check-existing-assignment.locationSourceId (the resolved Location/LocationGroup Id).
647
- - `methodId` *(`String`)* — Source: check-existing-assignment.methodId (the resolved ShippingCarrierMethod Id).
648
- - `pickupTime` *(`String`)* — Pickup time for THIS location/group + THIS method
649
- (LocationShippingCarrierMethod.PickupTime) — NOT the location's own default
650
- pickup time, and NOT the delivery estimation setup's default (see SCOPE
651
- LEVELS in the top-level agent_description if the admin's ask doesn't clearly
652
- name a carrier/method). e.g. "14:30:00.000Z" (Salesforce Time wire format).
653
- Optional — omit if the admin doesn't want to set one. Source: user_input.
654
- - `processingTime` *(`Integer`)* — ASSIGNMENT-level processing-time override for THIS location/group + THIS
655
- method (LocationShippingCarrierMethod.ProcessingTime) — more specific than
656
- ShippingCarrierMethod's own method-level ProcessingTime (see SCOPE LEVELS in
657
- the top-level agent_description). Only set this when the admin's ask is
658
- scoped to this one location/group assignment, not the method as a whole.
659
- Both-or-neither with processingTimeUnit; omit both if the admin doesn't want
660
- an assignment-level override. Source: user_input.
661
- - `processingTimeUnit` *(`String`)* — Unit for the ASSIGNMENT-level processingTime override — Hours, Days, or
662
- Weeks. Required WHENEVER processingTime is given (both-or-neither); omit both
663
- if not needed. Source: user_input.
664
-
665
- **Depends on:** `check-existing-assignment`
666
-
667
- #### `update-assignment`
668
-
669
- Update the existing LocationShippingCarrierMethod assignment row's PickupTime
670
- and/or its ASSIGNMENT-level ProcessingTime/ProcessingTimeUnit override. Partial
671
- merge — include only the fields being changed. Run ONLY when
672
- check-existing-assignment found an existing row (match_count > 0) — never run
673
- both create-assignment and update-assignment in the same execution.
674
-
675
- **Call:** `updateLocationShippingCarrierMethod` — status: `implemented`
676
-
677
- **Inputs:**
678
-
679
- - `assignmentId` *(`String`)* — Source: check-existing-assignment.existing_assignment_id.
680
- - `pickupTime` *(`String`)* — New pickup time for THIS assignment row (LocationShippingCarrierMethod.
681
- PickupTime) — NOT the location's own default pickup time, and NOT the delivery
682
- estimation setup's default (see SCOPE LEVELS in the top-level
683
- agent_description if the admin's ask doesn't clearly name a carrier/method). e.g.
684
- "14:30:00.000Z" (Salesforce Time wire format). Optional — omit to leave
685
- unchanged; send explicit JSON null to clear an existing pickup time.
686
- Source: user_input.
687
- - `processingTime` *(`Integer`)* — New ASSIGNMENT-level processing-time override for THIS assignment row
688
- (LocationShippingCarrierMethod.ProcessingTime) — more specific than
689
- ShippingCarrierMethod's own method-level ProcessingTime (see SCOPE LEVELS in
690
- the top-level agent_description). Optional — omit to leave unchanged; send
691
- explicit JSON null (together with processingTimeUnit null) to clear the
692
- override entirely. Source: user_input.
693
- - `processingTimeUnit` *(`String`)* — New unit for the ASSIGNMENT-level processingTime override. Optional — omit to
694
- leave unchanged; send explicit JSON null (together with processingTime null)
695
- to clear. Source: user_input.
696
-
697
- **Depends on:** `check-existing-assignment`
698
-
699
- **Rollback:** {'operation': 'updateLocationShippingCarrierMethod', 'invocation': {'kind': 'rest', 'method': 'PATCH', 'path': '/services/data/v68.0/sobjects/LocationShippingCarrierMethod/{assignmentId}', 'body': {'PickupTime': '{check-existing-assignment.assignment_before[PickupTime]}', 'ProcessingTime': '{check-existing-assignment.assignment_before[ProcessingTime]}', 'ProcessingTimeUnit': '{check-existing-assignment.assignment_before[ProcessingTimeUnit]}'}}}
700
-
701
- #### `sync-location-graph`
702
-
703
- Publish the location graph, which carries LOCATION-level data (pickup eligibility, business
704
- hours, addresses) to the downstream services. It does NOT carry the ShippingCarrierMethod /
705
- LocationShippingCarrierMethod fields this SOR writes into delivery estimates — that is
706
- push-delivery-estimation's job, two steps later. Runs automatically, unconditionally, after
707
- both verify steps succeed — never gated on a customer choice.
708
-
709
- **Delegates to:** `cc-om-fast-and-furious/sync-location-graph`
710
-
711
- **Depends on:** `verify-shipping-carrier-method`, `verify-assignment`
712
-
713
- #### `push-delivery-estimation`
714
-
715
- Push the covering delivery estimation configuration so the transit / processing / pickup times
716
- this SOR just wrote actually reach delivery estimates. This — not sync-location-graph — is the
717
- step that makes the change visible to an estimate. Runs automatically after the graph sync,
718
- for each ENABLED covering setup.
719
-
720
- **Delegates to:** `cc-om-fast-and-furious/enable-and-push-delivery-estimation-setup`
721
-
722
- **Depends on:** `sync-location-graph`, `resolve-estimation-setup-for-location`, `resolve-estimation-setup-for-group`
723
-
724
- ### Verify operations
725
-
726
- #### `verify-shipping-carrier-method`
727
-
728
- Re-read the ShippingCarrierMethod and confirm its transit/processing time
729
- fields reflect what was requested — whether it was just created or just
730
- updated (or left unchanged). Always runs, regardless of method_action.
731
-
732
- **Call:** `querySoql` — status: `implemented`
733
-
734
- **Inputs:**
735
-
736
- - `methodId` *(`String`)* — Source: create-shipping-carrier-method.method_id when method_action=create,
737
- or resolve-shipping-carrier-method.method_id when method_action=existing.
738
-
739
- **Depends on:** `create-shipping-carrier-method`, `update-shipping-carrier-method`
740
-
741
- #### `verify-assignment`
742
-
743
- Re-read the assignment row and confirm it links the intended
744
- Location/LocationGroup to the intended ShippingCarrierMethod with the requested
745
- pickup time and/or assignment-level processing-time override.
746
-
747
- **Call:** `querySoql` — status: `implemented`
748
-
749
- **Inputs:**
750
-
751
- - `assignmentId` *(`String`)* — Source: create-assignment.assignment_id when a new row was created, or
752
- check-existing-assignment.existing_assignment_id /
753
- update-assignment.assignmentId when an existing row was updated.
754
-
755
- **Depends on:** `check-existing-assignment`, `create-assignment`, `update-assignment`