@salesforce/afv-skills 1.22.0 → 1.23.0

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 (1668) hide show
  1. package/package.json +1 -1
  2. package/skills/activating-datacloud/README.md +0 -39
  3. package/skills/activating-datacloud/SKILL.md +0 -117
  4. package/skills/analyzing-omnistudio-dependencies/CREDITS.md +0 -5
  5. package/skills/analyzing-omnistudio-dependencies/SKILL.md +0 -476
  6. package/skills/analyzing-omnistudio-dependencies/references/dependency-patterns.md +0 -508
  7. package/skills/analyzing-omnistudio-dependencies/references/namespace-guide.md +0 -300
  8. package/skills/applying-cms-brand/SKILL.md +0 -170
  9. package/skills/applying-slds/SKILL.md +0 -322
  10. package/skills/applying-slds/checklists.md +0 -83
  11. package/skills/applying-slds/examples.md +0 -283
  12. package/skills/applying-slds/guidance/README.md +0 -83
  13. package/skills/applying-slds/guidance/blueprints-index.md +0 -213
  14. package/skills/applying-slds/guidance/icons-guidance.md +0 -186
  15. package/skills/applying-slds/guidance/overviews/borders.md +0 -236
  16. package/skills/applying-slds/guidance/overviews/color.md +0 -266
  17. package/skills/applying-slds/guidance/overviews/display-density.md +0 -366
  18. package/skills/applying-slds/guidance/overviews/icons.md +0 -240
  19. package/skills/applying-slds/guidance/overviews/illustrations.md +0 -235
  20. package/skills/applying-slds/guidance/overviews/shadows.md +0 -176
  21. package/skills/applying-slds/guidance/overviews/spacing.md +0 -216
  22. package/skills/applying-slds/guidance/overviews/typography.md +0 -323
  23. package/skills/applying-slds/guidance/overviews/utilities.md +0 -542
  24. package/skills/applying-slds/guidance/slds-development-guide.md +0 -288
  25. package/skills/applying-slds/guidance/styling-hooks/borders.md +0 -202
  26. package/skills/applying-slds/guidance/styling-hooks/color/expressive-palette-hooks.md +0 -153
  27. package/skills/applying-slds/guidance/styling-hooks/color/index.md +0 -171
  28. package/skills/applying-slds/guidance/styling-hooks/color/semantic/accent-hooks.md +0 -204
  29. package/skills/applying-slds/guidance/styling-hooks/color/semantic/feedback-hooks.md +0 -768
  30. package/skills/applying-slds/guidance/styling-hooks/color/semantic/surface-hooks.md +0 -337
  31. package/skills/applying-slds/guidance/styling-hooks/color/system-hooks.md +0 -132
  32. package/skills/applying-slds/guidance/styling-hooks/index.md +0 -327
  33. package/skills/applying-slds/guidance/styling-hooks/shadows.md +0 -238
  34. package/skills/applying-slds/guidance/styling-hooks/spacing.md +0 -254
  35. package/skills/applying-slds/guidance/styling-hooks/typography.md +0 -448
  36. package/skills/applying-slds/guidance/utilities/alignment.md +0 -119
  37. package/skills/applying-slds/guidance/utilities/borders.md +0 -131
  38. package/skills/applying-slds/guidance/utilities/box.md +0 -125
  39. package/skills/applying-slds/guidance/utilities/color.md +0 -165
  40. package/skills/applying-slds/guidance/utilities/dark-mode.md +0 -111
  41. package/skills/applying-slds/guidance/utilities/description-list.md +0 -168
  42. package/skills/applying-slds/guidance/utilities/floats.md +0 -117
  43. package/skills/applying-slds/guidance/utilities/grid.md +0 -264
  44. package/skills/applying-slds/guidance/utilities/horizontal-list.md +0 -110
  45. package/skills/applying-slds/guidance/utilities/hyphenation.md +0 -84
  46. package/skills/applying-slds/guidance/utilities/index.md +0 -205
  47. package/skills/applying-slds/guidance/utilities/interactions.md +0 -89
  48. package/skills/applying-slds/guidance/utilities/layout.md +0 -109
  49. package/skills/applying-slds/guidance/utilities/line-clamp.md +0 -131
  50. package/skills/applying-slds/guidance/utilities/margin.md +0 -155
  51. package/skills/applying-slds/guidance/utilities/media-object.md +0 -161
  52. package/skills/applying-slds/guidance/utilities/name-value-list.md +0 -152
  53. package/skills/applying-slds/guidance/utilities/padding.md +0 -155
  54. package/skills/applying-slds/guidance/utilities/position.md +0 -177
  55. package/skills/applying-slds/guidance/utilities/print.md +0 -114
  56. package/skills/applying-slds/guidance/utilities/scrollable.md +0 -126
  57. package/skills/applying-slds/guidance/utilities/sizing.md +0 -190
  58. package/skills/applying-slds/guidance/utilities/themes.md +0 -121
  59. package/skills/applying-slds/guidance/utilities/truncate.md +0 -127
  60. package/skills/applying-slds/guidance/utilities/typography.md +0 -166
  61. package/skills/applying-slds/guidance/utilities/vertical-list.md +0 -166
  62. package/skills/applying-slds/guidance/utilities/visibility.md +0 -228
  63. package/skills/applying-slds/metadata/README.md +0 -84
  64. package/skills/applying-slds/metadata/blueprints/components/accordion.yaml +0 -304
  65. package/skills/applying-slds/metadata/blueprints/components/activity-timeline.yaml +0 -92
  66. package/skills/applying-slds/metadata/blueprints/components/alert.yaml +0 -103
  67. package/skills/applying-slds/metadata/blueprints/components/app-launcher.yaml +0 -94
  68. package/skills/applying-slds/metadata/blueprints/components/avatar-group.yaml +0 -81
  69. package/skills/applying-slds/metadata/blueprints/components/avatar.yaml +0 -97
  70. package/skills/applying-slds/metadata/blueprints/components/badges.yaml +0 -102
  71. package/skills/applying-slds/metadata/blueprints/components/brand-band.yaml +0 -198
  72. package/skills/applying-slds/metadata/blueprints/components/breadcrumbs.yaml +0 -95
  73. package/skills/applying-slds/metadata/blueprints/components/builder-header.yaml +0 -192
  74. package/skills/applying-slds/metadata/blueprints/components/button-groups.yaml +0 -82
  75. package/skills/applying-slds/metadata/blueprints/components/button-icons.yaml +0 -295
  76. package/skills/applying-slds/metadata/blueprints/components/buttons.yaml +0 -230
  77. package/skills/applying-slds/metadata/blueprints/components/cards.yaml +0 -124
  78. package/skills/applying-slds/metadata/blueprints/components/carousel.yaml +0 -140
  79. package/skills/applying-slds/metadata/blueprints/components/chat.yaml +0 -179
  80. package/skills/applying-slds/metadata/blueprints/components/checkbox-button-group.yaml +0 -192
  81. package/skills/applying-slds/metadata/blueprints/components/checkbox-button.yaml +0 -204
  82. package/skills/applying-slds/metadata/blueprints/components/checkbox-toggle.yaml +0 -177
  83. package/skills/applying-slds/metadata/blueprints/components/checkbox.yaml +0 -108
  84. package/skills/applying-slds/metadata/blueprints/components/color-picker.yaml +0 -172
  85. package/skills/applying-slds/metadata/blueprints/components/combobox.yaml +0 -136
  86. package/skills/applying-slds/metadata/blueprints/components/counter.yaml +0 -147
  87. package/skills/applying-slds/metadata/blueprints/components/data-tables.yaml +0 -157
  88. package/skills/applying-slds/metadata/blueprints/components/datepickers.yaml +0 -130
  89. package/skills/applying-slds/metadata/blueprints/components/datetime-picker.yaml +0 -155
  90. package/skills/applying-slds/metadata/blueprints/components/docked-composer.yaml +0 -201
  91. package/skills/applying-slds/metadata/blueprints/components/docked-form-footer.yaml +0 -161
  92. package/skills/applying-slds/metadata/blueprints/components/docked-utility-bar.yaml +0 -175
  93. package/skills/applying-slds/metadata/blueprints/components/drop-zone.yaml +0 -115
  94. package/skills/applying-slds/metadata/blueprints/components/dueling-picklist.yaml +0 -196
  95. package/skills/applying-slds/metadata/blueprints/components/dynamic-icons.yaml +0 -128
  96. package/skills/applying-slds/metadata/blueprints/components/dynamic-menu.yaml +0 -141
  97. package/skills/applying-slds/metadata/blueprints/components/expandable-section.yaml +0 -115
  98. package/skills/applying-slds/metadata/blueprints/components/expression.yaml +0 -143
  99. package/skills/applying-slds/metadata/blueprints/components/feeds.yaml +0 -125
  100. package/skills/applying-slds/metadata/blueprints/components/file-selector.yaml +0 -154
  101. package/skills/applying-slds/metadata/blueprints/components/files.yaml +0 -119
  102. package/skills/applying-slds/metadata/blueprints/components/form-element.yaml +0 -145
  103. package/skills/applying-slds/metadata/blueprints/components/global-header.yaml +0 -120
  104. package/skills/applying-slds/metadata/blueprints/components/global-navigation.yaml +0 -100
  105. package/skills/applying-slds/metadata/blueprints/components/icons.yaml +0 -138
  106. package/skills/applying-slds/metadata/blueprints/components/illustration.yaml +0 -205
  107. package/skills/applying-slds/metadata/blueprints/components/input.yaml +0 -151
  108. package/skills/applying-slds/metadata/blueprints/components/list-builder.yaml +0 -127
  109. package/skills/applying-slds/metadata/blueprints/components/lookups.yaml +0 -132
  110. package/skills/applying-slds/metadata/blueprints/components/map.yaml +0 -118
  111. package/skills/applying-slds/metadata/blueprints/components/menus.yaml +0 -134
  112. package/skills/applying-slds/metadata/blueprints/components/modals.yaml +0 -152
  113. package/skills/applying-slds/metadata/blueprints/components/notifications.yaml +0 -88
  114. package/skills/applying-slds/metadata/blueprints/components/page-headers.yaml +0 -135
  115. package/skills/applying-slds/metadata/blueprints/components/panels.yaml +0 -149
  116. package/skills/applying-slds/metadata/blueprints/components/path.yaml +0 -154
  117. package/skills/applying-slds/metadata/blueprints/components/picklist.yaml +0 -125
  118. package/skills/applying-slds/metadata/blueprints/components/pills.yaml +0 -154
  119. package/skills/applying-slds/metadata/blueprints/components/popovers.yaml +0 -120
  120. package/skills/applying-slds/metadata/blueprints/components/progress-bar.yaml +0 -110
  121. package/skills/applying-slds/metadata/blueprints/components/progress-indicator.yaml +0 -133
  122. package/skills/applying-slds/metadata/blueprints/components/progress-ring.yaml +0 -102
  123. package/skills/applying-slds/metadata/blueprints/components/prompt.yaml +0 -126
  124. package/skills/applying-slds/metadata/blueprints/components/publishers.yaml +0 -178
  125. package/skills/applying-slds/metadata/blueprints/components/radio-button-group.yaml +0 -172
  126. package/skills/applying-slds/metadata/blueprints/components/radio-group.yaml +0 -112
  127. package/skills/applying-slds/metadata/blueprints/components/rich-text-editor.yaml +0 -135
  128. package/skills/applying-slds/metadata/blueprints/components/scoped-notifications.yaml +0 -188
  129. package/skills/applying-slds/metadata/blueprints/components/scoped-tabs.yaml +0 -97
  130. package/skills/applying-slds/metadata/blueprints/components/select.yaml +0 -127
  131. package/skills/applying-slds/metadata/blueprints/components/setup-assistant.yaml +0 -152
  132. package/skills/applying-slds/metadata/blueprints/components/slider.yaml +0 -111
  133. package/skills/applying-slds/metadata/blueprints/components/spinners.yaml +0 -135
  134. package/skills/applying-slds/metadata/blueprints/components/split-view.yaml +0 -112
  135. package/skills/applying-slds/metadata/blueprints/components/summary-detail.yaml +0 -103
  136. package/skills/applying-slds/metadata/blueprints/components/tabs.yaml +0 -138
  137. package/skills/applying-slds/metadata/blueprints/components/textarea.yaml +0 -116
  138. package/skills/applying-slds/metadata/blueprints/components/tiles.yaml +0 -108
  139. package/skills/applying-slds/metadata/blueprints/components/timepicker.yaml +0 -111
  140. package/skills/applying-slds/metadata/blueprints/components/toast.yaml +0 -154
  141. package/skills/applying-slds/metadata/blueprints/components/tooltips.yaml +0 -107
  142. package/skills/applying-slds/metadata/blueprints/components/tree-grid.yaml +0 -116
  143. package/skills/applying-slds/metadata/blueprints/components/trees.yaml +0 -116
  144. package/skills/applying-slds/metadata/blueprints/components/trial-bar.yaml +0 -112
  145. package/skills/applying-slds/metadata/blueprints/components/vertical-navigation.yaml +0 -130
  146. package/skills/applying-slds/metadata/blueprints/components/vertical-tabs.yaml +0 -140
  147. package/skills/applying-slds/metadata/blueprints/components/visual-picker.yaml +0 -150
  148. package/skills/applying-slds/metadata/blueprints/components/welcome-mat.yaml +0 -136
  149. package/skills/applying-slds/metadata/hooks-index.json +0 -6272
  150. package/skills/applying-slds/metadata/icon-metadata.json +0 -38466
  151. package/skills/applying-slds/metadata/utilities-index.json +0 -21912
  152. package/skills/applying-slds/references/component-selection.md +0 -112
  153. package/skills/applying-slds/references/icons-decision-guide.md +0 -124
  154. package/skills/applying-slds/references/styling-decision-guide.md +0 -228
  155. package/skills/applying-slds/references/utilities-quick-ref.md +0 -125
  156. package/skills/applying-slds/scripts/search-blueprints.cjs +0 -117
  157. package/skills/applying-slds/scripts/search-hooks.cjs +0 -139
  158. package/skills/applying-slds/scripts/search-icons.cjs +0 -174
  159. package/skills/applying-slds/scripts/search-utilities.cjs +0 -161
  160. package/skills/building-mobile-apps/SKILL.md +0 -69
  161. package/skills/building-omnistudio-callable-apex/CREDITS.md +0 -9
  162. package/skills/building-omnistudio-callable-apex/README.md +0 -80
  163. package/skills/building-omnistudio-callable-apex/SKILL.md +0 -275
  164. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_openinterface.cls +0 -40
  165. package/skills/building-omnistudio-callable-apex/assets/pattern_callable_vanilla.cls +0 -32
  166. package/skills/building-omnistudio-callable-apex/assets/pattern_migration.cls +0 -54
  167. package/skills/building-omnistudio-callable-apex/assets/pattern_openinterface.cls +0 -45
  168. package/skills/building-omnistudio-callable-apex/assets/pattern_test_class.cls +0 -65
  169. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/IndustriesCallableException.cls +0 -7
  170. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallable.cls +0 -115
  171. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/Industries_QuoteByProductCallableTest.cls +0 -189
  172. package/skills/building-omnistudio-callable-apex/examples/Test_QuoteByProductCallable/TRANSCRIPT.md +0 -115
  173. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/IndustriesCallableException.cls +0 -7
  174. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallable.cls +0 -74
  175. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomCallableTest.cls +0 -146
  176. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/MyCustomRemoteClass.cls +0 -16
  177. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterface2Conversion/TRANSCRIPT.md +0 -120
  178. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/IndustriesCallableException.cls +0 -7
  179. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallable.cls +0 -73
  180. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomCallableTest.cls +0 -128
  181. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/MyCustomVlocityOpenInterface2.cls +0 -23
  182. package/skills/building-omnistudio-callable-apex/examples/Test_VlocityOpenInterfaceConversion/TRANSCRIPT.md +0 -75
  183. package/skills/building-omnistudio-datamapper/CREDITS.md +0 -5
  184. package/skills/building-omnistudio-datamapper/SKILL.md +0 -269
  185. package/skills/building-omnistudio-datamapper/assets/completion-summary-template.md +0 -28
  186. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-extract.json +0 -6
  187. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-item.json +0 -12
  188. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-load.json +0 -6
  189. package/skills/building-omnistudio-datamapper/assets/omni-data-transform-transform.json +0 -6
  190. package/skills/building-omnistudio-datamapper/references/best-practices.md +0 -277
  191. package/skills/building-omnistudio-datamapper/references/naming-conventions.md +0 -145
  192. package/skills/building-omnistudio-flexcard/CREDITS.md +0 -5
  193. package/skills/building-omnistudio-flexcard/SKILL.md +0 -324
  194. package/skills/building-omnistudio-flexcard/assets/omni-ui-card.json +0 -10
  195. package/skills/building-omnistudio-flexcard/references/best-practices.md +0 -291
  196. package/skills/building-omnistudio-flexcard/references/data-binding-guide.md +0 -311
  197. package/skills/building-omnistudio-flexcard/references/scoring-rubric.md +0 -66
  198. package/skills/building-omnistudio-flexcard/scripts/flexcard-commands.sh +0 -24
  199. package/skills/building-omnistudio-integration-procedure/CREDITS.md +0 -5
  200. package/skills/building-omnistudio-integration-procedure/SKILL.md +0 -274
  201. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-dr-extract.json +0 -10
  202. package/skills/building-omnistudio-integration-procedure/assets/omni-process-element-set-values.json +0 -10
  203. package/skills/building-omnistudio-integration-procedure/assets/omni-process-ip.json +0 -12
  204. package/skills/building-omnistudio-integration-procedure/assets/scoring-report-format.txt +0 -14
  205. package/skills/building-omnistudio-integration-procedure/references/best-practices.md +0 -388
  206. package/skills/building-omnistudio-integration-procedure/references/element-types.md +0 -588
  207. package/skills/building-omnistudio-integration-procedure/scripts/cli-commands.sh +0 -18
  208. package/skills/building-omnistudio-omniscript/CREDITS.md +0 -5
  209. package/skills/building-omnistudio-omniscript/SKILL.md +0 -366
  210. package/skills/building-omnistudio-omniscript/assets/omni-process-element-step.json +0 -10
  211. package/skills/building-omnistudio-omniscript/assets/omni-process-element-text-block.json +0 -11
  212. package/skills/building-omnistudio-omniscript/assets/omni-process-omniscript.json +0 -12
  213. package/skills/building-omnistudio-omniscript/references/best-practices.md +0 -480
  214. package/skills/building-omnistudio-omniscript/references/element-types.md +0 -1172
  215. package/skills/building-omnistudio-omniscript/scripts/check-duplicate-omniscript.sh +0 -13
  216. package/skills/building-omnistudio-omniscript/scripts/cli-reference.sh +0 -21
  217. package/skills/building-omnistudio-omniscript/scripts/deploy-omniscript.sh +0 -29
  218. package/skills/building-sf-integrations/CREDITS.md +0 -5
  219. package/skills/building-sf-integrations/README.md +0 -95
  220. package/skills/building-sf-integrations/SKILL.md +0 -191
  221. package/skills/building-sf-integrations/assets/callouts/callout-retry-handler.cls +0 -167
  222. package/skills/building-sf-integrations/assets/callouts/http-response-handler.cls +0 -257
  223. package/skills/building-sf-integrations/assets/callouts/rest-queueable-callout.cls +0 -262
  224. package/skills/building-sf-integrations/assets/callouts/rest-sync-callout.cls +0 -211
  225. package/skills/building-sf-integrations/assets/cdc/cdc-handler.cls +0 -246
  226. package/skills/building-sf-integrations/assets/cdc/cdc-subscriber-trigger.trigger +0 -139
  227. package/skills/building-sf-integrations/assets/endpoint-security/example.cspTrustedSite-meta.xml +0 -58
  228. package/skills/building-sf-integrations/assets/endpoint-security/example.remoteSite-meta.xml +0 -39
  229. package/skills/building-sf-integrations/assets/external-credentials/jwt-external-credential.externalCredential-meta.xml +0 -90
  230. package/skills/building-sf-integrations/assets/external-credentials/oauth-external-credential.externalCredential-meta.xml +0 -87
  231. package/skills/building-sf-integrations/assets/external-services/external-service-operations.md +0 -221
  232. package/skills/building-sf-integrations/assets/external-services/openapi-registration.externalServiceRegistration-meta.xml +0 -193
  233. package/skills/building-sf-integrations/assets/named-credentials/certificate-auth.namedCredential-meta.xml +0 -62
  234. package/skills/building-sf-integrations/assets/named-credentials/custom-auth.namedCredential-meta.xml +0 -71
  235. package/skills/building-sf-integrations/assets/named-credentials/oauth-client-credentials.namedCredential-meta.xml +0 -51
  236. package/skills/building-sf-integrations/assets/named-credentials/oauth-jwt-bearer.namedCredential-meta.xml +0 -67
  237. package/skills/building-sf-integrations/assets/platform-events/event-publisher.cls +0 -191
  238. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-action.cls +0 -295
  239. package/skills/building-sf-integrations/assets/platform-events/event-subscriber-trigger.trigger +0 -108
  240. package/skills/building-sf-integrations/assets/platform-events/platform-event-definition.object-meta.xml +0 -124
  241. package/skills/building-sf-integrations/assets/soap/soap-callout-service.cls +0 -186
  242. package/skills/building-sf-integrations/assets/soap/wsdl2apex-guide.md +0 -213
  243. package/skills/building-sf-integrations/hooks/scripts/suggest_credential_setup.py +0 -271
  244. package/skills/building-sf-integrations/hooks/scripts/validate_integration.py +0 -363
  245. package/skills/building-sf-integrations/references/callout-patterns.md +0 -719
  246. package/skills/building-sf-integrations/references/cdc-guide.md +0 -288
  247. package/skills/building-sf-integrations/references/cli-reference.md +0 -94
  248. package/skills/building-sf-integrations/references/event-driven-architecture-guide.md +0 -266
  249. package/skills/building-sf-integrations/references/event-patterns.md +0 -838
  250. package/skills/building-sf-integrations/references/external-services-guide.md +0 -303
  251. package/skills/building-sf-integrations/references/messaging-api-v2.md +0 -609
  252. package/skills/building-sf-integrations/references/named-credentials-automation.md +0 -201
  253. package/skills/building-sf-integrations/references/named-credentials-guide.md +0 -173
  254. package/skills/building-sf-integrations/references/platform-events-guide.md +0 -288
  255. package/skills/building-sf-integrations/references/rest-callout-patterns.md +0 -288
  256. package/skills/building-sf-integrations/references/scoring-rubric.md +0 -59
  257. package/skills/building-sf-integrations/references/security-best-practices.md +0 -248
  258. package/skills/building-sf-integrations/scripts/README.md +0 -100
  259. package/skills/building-sf-integrations/scripts/configure-named-credential.sh +0 -236
  260. package/skills/building-sf-integrations/scripts/set-api-credential.sh +0 -146
  261. package/skills/building-sf-integrations/scripts/templates/setup-credentials-with-csp.sh +0 -158
  262. package/skills/building-ui-bundle-app/SKILL.md +0 -350
  263. package/skills/building-ui-bundle-frontend/SKILL.md +0 -135
  264. package/skills/building-ui-bundle-frontend/implementation/component.md +0 -78
  265. package/skills/building-ui-bundle-frontend/implementation/header-footer.md +0 -132
  266. package/skills/building-ui-bundle-frontend/implementation/page.md +0 -93
  267. package/skills/configuring-code-analyzer/SKILL.md +0 -482
  268. package/skills/configuring-code-analyzer/examples/apex-project-config.yml +0 -41
  269. package/skills/configuring-code-analyzer/examples/ci-github-actions.yml +0 -96
  270. package/skills/configuring-code-analyzer/examples/fullstack-project-config.yml +0 -46
  271. package/skills/configuring-code-analyzer/examples/lwc-project-config.yml +0 -26
  272. package/skills/configuring-code-analyzer/references/ci-cd-templates.md +0 -648
  273. package/skills/configuring-code-analyzer/references/config-schema.md +0 -257
  274. package/skills/configuring-code-analyzer/references/diagnostic-flow.md +0 -70
  275. package/skills/configuring-code-analyzer/references/engine-prerequisites.md +0 -276
  276. package/skills/configuring-code-analyzer/references/rule-name-resolution.md +0 -67
  277. package/skills/configuring-code-analyzer/references/troubleshooting.md +0 -298
  278. package/skills/configuring-code-analyzer/scripts/check-prerequisites.sh +0 -189
  279. package/skills/configuring-code-analyzer/scripts/generate-config.sh +0 -143
  280. package/skills/configuring-code-analyzer/scripts/validate-config.sh +0 -153
  281. package/skills/configuring-connected-apps/CREDITS.md +0 -3
  282. package/skills/configuring-connected-apps/README.md +0 -99
  283. package/skills/configuring-connected-apps/SKILL.md +0 -223
  284. package/skills/configuring-connected-apps/assets/connected-app-basic.xml +0 -29
  285. package/skills/configuring-connected-apps/assets/connected-app-canvas.xml +0 -62
  286. package/skills/configuring-connected-apps/assets/connected-app-jwt.xml +0 -49
  287. package/skills/configuring-connected-apps/assets/connected-app-oauth.xml +0 -65
  288. package/skills/configuring-connected-apps/assets/eca-global-oauth.xml +0 -36
  289. package/skills/configuring-connected-apps/assets/eca-oauth-settings.xml +0 -36
  290. package/skills/configuring-connected-apps/assets/eca-policies.xml +0 -36
  291. package/skills/configuring-connected-apps/assets/external-client-app.xml +0 -35
  292. package/skills/configuring-connected-apps/references/example-usage.md +0 -256
  293. package/skills/configuring-connected-apps/references/migration-guide.md +0 -328
  294. package/skills/configuring-connected-apps/references/oauth-flows-reference.md +0 -660
  295. package/skills/configuring-connected-apps/references/security-checklist.md +0 -209
  296. package/skills/configuring-connected-apps/references/testing-validation-guide.md +0 -275
  297. package/skills/connecting-datacloud/CREDITS.md +0 -5
  298. package/skills/connecting-datacloud/README.md +0 -59
  299. package/skills/connecting-datacloud/SKILL.md +0 -154
  300. package/skills/connecting-datacloud/examples/connections/heroku-postgres.json +0 -15
  301. package/skills/connecting-datacloud/examples/connections/ingest-api-connection.json +0 -5
  302. package/skills/connecting-datacloud/examples/connections/ingest-api-schema.json +0 -31
  303. package/skills/connecting-datacloud/examples/connections/redshift.json +0 -16
  304. package/skills/connecting-datacloud/examples/connections/sharepoint-unstructured.json +0 -20
  305. package/skills/connecting-datacloud/examples/connections/snowflake-connection.json +0 -42
  306. package/skills/creating-b2b-commerce-store/SKILL.md +0 -167
  307. package/skills/creating-b2b-commerce-store/references/store-vs-storefront.md +0 -169
  308. package/skills/debugging-apex-logs/CREDITS.md +0 -22
  309. package/skills/debugging-apex-logs/README.md +0 -74
  310. package/skills/debugging-apex-logs/SKILL.md +0 -171
  311. package/skills/debugging-apex-logs/assets/benchmarking-template.cls +0 -327
  312. package/skills/debugging-apex-logs/assets/cpu-heap-optimization.cls +0 -307
  313. package/skills/debugging-apex-logs/assets/dml-in-loop-fix.cls +0 -219
  314. package/skills/debugging-apex-logs/assets/null-pointer-fix.cls +0 -252
  315. package/skills/debugging-apex-logs/assets/soql-in-loop-fix.cls +0 -157
  316. package/skills/debugging-apex-logs/references/analysis-playbook.md +0 -53
  317. package/skills/debugging-apex-logs/references/benchmarking-guide.md +0 -287
  318. package/skills/debugging-apex-logs/references/cli-commands.md +0 -368
  319. package/skills/debugging-apex-logs/references/common-issues.md +0 -68
  320. package/skills/debugging-apex-logs/references/debug-log-reference.md +0 -328
  321. package/skills/debugging-apex-logs/references/log-analysis-tools.md +0 -248
  322. package/skills/debugging-apex-logs/references/scoring-rubric.md +0 -21
  323. package/skills/deploying-metadata/CREDITS.md +0 -25
  324. package/skills/deploying-metadata/README.md +0 -104
  325. package/skills/deploying-metadata/SKILL.md +0 -213
  326. package/skills/deploying-metadata/assets/destructiveChanges.xml +0 -143
  327. package/skills/deploying-metadata/assets/package.xml +0 -121
  328. package/skills/deploying-metadata/references/agent-deployment-guide.md +0 -628
  329. package/skills/deploying-metadata/references/deploy.sh +0 -73
  330. package/skills/deploying-metadata/references/deployment-report-template.md +0 -89
  331. package/skills/deploying-metadata/references/deployment-workflows.md +0 -395
  332. package/skills/deploying-metadata/references/orchestration.md +0 -183
  333. package/skills/deploying-metadata/references/trigger-deployment-safety.md +0 -376
  334. package/skills/deploying-omnistudio-datapacks/CREDITS.md +0 -5
  335. package/skills/deploying-omnistudio-datapacks/README.md +0 -88
  336. package/skills/deploying-omnistudio-datapacks/SKILL.md +0 -173
  337. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -124
  338. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle/deploy-business-internet-plus-bundle.yaml +0 -11
  339. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/TRANSCRIPT.md +0 -142
  340. package/skills/deploying-omnistudio-datapacks/examples/business-internet-plus-bundle-deploy/deploy-business-internet-plus-bundle.yaml +0 -10
  341. package/skills/deploying-omnistudio-datapacks/references/job-file-template.md +0 -42
  342. package/skills/deploying-omnistudio-datapacks/references/troubleshooting-matrix.md +0 -24
  343. package/skills/deploying-ui-bundle/SKILL.md +0 -79
  344. package/skills/developing-agentforce/README.md +0 -112
  345. package/skills/developing-agentforce/SKILL.md +0 -518
  346. package/skills/developing-agentforce/assets/README-legacy.md +0 -89
  347. package/skills/developing-agentforce/assets/agent-spec-template.md +0 -90
  348. package/skills/developing-agentforce/assets/agents/README.md +0 -45
  349. package/skills/developing-agentforce/assets/agents/hello-world.agent +0 -60
  350. package/skills/developing-agentforce/assets/agents/multi-subagent.agent +0 -105
  351. package/skills/developing-agentforce/assets/agents/order-service.agent +0 -272
  352. package/skills/developing-agentforce/assets/agents/production-faq.agent +0 -101
  353. package/skills/developing-agentforce/assets/agents/production-faq.bundle-meta.xml +0 -4
  354. package/skills/developing-agentforce/assets/agents/simple-qa.agent +0 -72
  355. package/skills/developing-agentforce/assets/agents/verification-gate.agent +0 -280
  356. package/skills/developing-agentforce/assets/apex/models-api-queueable.cls +0 -225
  357. package/skills/developing-agentforce/assets/bundle-meta.xml +0 -23
  358. package/skills/developing-agentforce/assets/components/apex-action.agent +0 -52
  359. package/skills/developing-agentforce/assets/components/error-handling.agent +0 -58
  360. package/skills/developing-agentforce/assets/components/escalation-setup.agent +0 -169
  361. package/skills/developing-agentforce/assets/components/flow-action.agent +0 -66
  362. package/skills/developing-agentforce/assets/components/n-ary-conditions.agent +0 -110
  363. package/skills/developing-agentforce/assets/components/subagent-with-actions.agent +0 -40
  364. package/skills/developing-agentforce/assets/deterministic-routing.agent +0 -166
  365. package/skills/developing-agentforce/assets/escalation-pattern.agent +0 -209
  366. package/skills/developing-agentforce/assets/flow-action-lookup.agent +0 -115
  367. package/skills/developing-agentforce/assets/hub-and-spoke.agent +0 -104
  368. package/skills/developing-agentforce/assets/invocable-apex-template.cls +0 -187
  369. package/skills/developing-agentforce/assets/local-info-agent-annotated.agent +0 -355
  370. package/skills/developing-agentforce/assets/metadata/basic-prompt-template.promptTemplate-meta.xml +0 -109
  371. package/skills/developing-agentforce/assets/metadata/genai-function-apex.xml +0 -92
  372. package/skills/developing-agentforce/assets/metadata/genai-function-flow.xml +0 -57
  373. package/skills/developing-agentforce/assets/metadata/genai-plugin.xml +0 -72
  374. package/skills/developing-agentforce/assets/metadata/http-callout-flow.flow-meta.xml +0 -348
  375. package/skills/developing-agentforce/assets/metadata/record-grounded-prompt.promptTemplate-meta.xml +0 -136
  376. package/skills/developing-agentforce/assets/minimal-starter.agent +0 -42
  377. package/skills/developing-agentforce/assets/patterns/README.md +0 -254
  378. package/skills/developing-agentforce/assets/patterns/action-callbacks.agent +0 -178
  379. package/skills/developing-agentforce/assets/patterns/advanced-input-bindings.agent +0 -141
  380. package/skills/developing-agentforce/assets/patterns/bidirectional-routing.agent +0 -156
  381. package/skills/developing-agentforce/assets/patterns/critical-input-collection.agent +0 -244
  382. package/skills/developing-agentforce/assets/patterns/delegation-routing.agent +0 -89
  383. package/skills/developing-agentforce/assets/patterns/lifecycle-events.agent +0 -127
  384. package/skills/developing-agentforce/assets/patterns/llm-controlled-actions.agent +0 -184
  385. package/skills/developing-agentforce/assets/patterns/multi-step-workflow.agent +0 -282
  386. package/skills/developing-agentforce/assets/patterns/open-gate-routing.agent +0 -287
  387. package/skills/developing-agentforce/assets/patterns/procedural-instructions.agent +0 -273
  388. package/skills/developing-agentforce/assets/patterns/prompt-template-action.agent +0 -188
  389. package/skills/developing-agentforce/assets/patterns/system-instruction-overrides.agent +0 -293
  390. package/skills/developing-agentforce/assets/prompt-rag-search.agent +0 -131
  391. package/skills/developing-agentforce/assets/template-multi-subagent.agent +0 -160
  392. package/skills/developing-agentforce/assets/template-single-subagent.agent +0 -81
  393. package/skills/developing-agentforce/assets/verification-gate.agent +0 -208
  394. package/skills/developing-agentforce/references/action-prompt-templates.md +0 -164
  395. package/skills/developing-agentforce/references/actions-reference.md +0 -612
  396. package/skills/developing-agentforce/references/agent-access-guide.md +0 -72
  397. package/skills/developing-agentforce/references/agent-design-and-spec-creation.md +0 -1010
  398. package/skills/developing-agentforce/references/agent-metadata-and-lifecycle.md +0 -575
  399. package/skills/developing-agentforce/references/agent-script-core-language.md +0 -1255
  400. package/skills/developing-agentforce/references/agent-subagent-map-diagrams.md +0 -323
  401. package/skills/developing-agentforce/references/agent-user-setup.md +0 -529
  402. package/skills/developing-agentforce/references/agent-validation-and-debugging.md +0 -805
  403. package/skills/developing-agentforce/references/architecture-patterns.md +0 -158
  404. package/skills/developing-agentforce/references/complex-data-types.md +0 -57
  405. package/skills/developing-agentforce/references/deploy-reference.md +0 -134
  406. package/skills/developing-agentforce/references/discover-reference.md +0 -102
  407. package/skills/developing-agentforce/references/examples.md +0 -350
  408. package/skills/developing-agentforce/references/feature-validity.md +0 -43
  409. package/skills/developing-agentforce/references/instruction-resolution.md +0 -545
  410. package/skills/developing-agentforce/references/known-issues.md +0 -353
  411. package/skills/developing-agentforce/references/minimal-examples.md +0 -67
  412. package/skills/developing-agentforce/references/production-gotchas.md +0 -300
  413. package/skills/developing-agentforce/references/safety-review-reference.md +0 -145
  414. package/skills/developing-agentforce/references/salesforce-cli-for-agents.md +0 -395
  415. package/skills/developing-agentforce/references/scaffold-reference.md +0 -153
  416. package/skills/developing-agentforce/references/scoring-rubric.md +0 -24
  417. package/skills/developing-agentforce/references/version-history.md +0 -23
  418. package/skills/dx-app-analytics-use/SKILL.md +0 -135
  419. package/skills/fetching-salesforce-docs/README.md +0 -66
  420. package/skills/fetching-salesforce-docs/SKILL.md +0 -208
  421. package/skills/fetching-salesforce-docs/requirements.txt +0 -2
  422. package/skills/fetching-salesforce-docs/scripts/extract_help_salesforce.py +0 -497
  423. package/skills/fetching-salesforce-docs/scripts/extract_salesforce_doc.py +0 -357
  424. package/skills/fetching-salesforce-docs/scripts/runtime_bootstrap.py +0 -58
  425. package/skills/generating-apex/CREDITS.md +0 -5
  426. package/skills/generating-apex/SKILL.md +0 -409
  427. package/skills/generating-apex/assets/abstract.cls +0 -131
  428. package/skills/generating-apex/assets/batch.cls +0 -124
  429. package/skills/generating-apex/assets/domain.cls +0 -101
  430. package/skills/generating-apex/assets/dto.cls +0 -107
  431. package/skills/generating-apex/assets/exception.cls +0 -50
  432. package/skills/generating-apex/assets/interface.cls +0 -24
  433. package/skills/generating-apex/assets/invocable.cls +0 -114
  434. package/skills/generating-apex/assets/queueable.cls +0 -91
  435. package/skills/generating-apex/assets/rest-resource.cls +0 -300
  436. package/skills/generating-apex/assets/schedulable.cls +0 -74
  437. package/skills/generating-apex/assets/selector.cls +0 -91
  438. package/skills/generating-apex/assets/service.cls +0 -68
  439. package/skills/generating-apex/assets/trigger.cls +0 -45
  440. package/skills/generating-apex/assets/utility.cls +0 -96
  441. package/skills/generating-apex/references/AccountDeduplicationBatch.cls +0 -147
  442. package/skills/generating-apex/references/AccountSelector.cls +0 -192
  443. package/skills/generating-apex/references/AccountService.cls +0 -200
  444. package/skills/generating-apex-test/CREDITS.md +0 -5
  445. package/skills/generating-apex-test/SKILL.md +0 -201
  446. package/skills/generating-apex-test/assets/test-class-template.cls +0 -93
  447. package/skills/generating-apex-test/assets/test-data-factory-template.cls +0 -111
  448. package/skills/generating-apex-test/references/assertion-patterns.md +0 -108
  449. package/skills/generating-apex-test/references/async-testing.md +0 -193
  450. package/skills/generating-apex-test/references/mocking-patterns.md +0 -220
  451. package/skills/generating-apex-test/references/test-data-factory.md +0 -75
  452. package/skills/generating-custom-application/SKILL.md +0 -211
  453. package/skills/generating-custom-field/SKILL.md +0 -503
  454. package/skills/generating-custom-lightning-type/SKILL.md +0 -180
  455. package/skills/generating-custom-lightning-type/assets/primitive-types-and-constraints.md +0 -41
  456. package/skills/generating-custom-lightning-type/references/widget-rendition.md +0 -124
  457. package/skills/generating-custom-object/SKILL.md +0 -240
  458. package/skills/generating-custom-tab/SKILL.md +0 -156
  459. package/skills/generating-flexipage/SKILL.md +0 -522
  460. package/skills/generating-flow/SKILL.md +0 -372
  461. package/skills/generating-lightning-app/SKILL.md +0 -423
  462. package/skills/generating-list-view/SKILL.md +0 -218
  463. package/skills/generating-lwc-components/CREDITS.md +0 -5
  464. package/skills/generating-lwc-components/README.md +0 -126
  465. package/skills/generating-lwc-components/SKILL.md +0 -190
  466. package/skills/generating-lwc-components/assets/apex-controller/LwcController.cls +0 -327
  467. package/skills/generating-lwc-components/assets/basic-component/basicComponent.css +0 -72
  468. package/skills/generating-lwc-components/assets/basic-component/basicComponent.html +0 -111
  469. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js +0 -163
  470. package/skills/generating-lwc-components/assets/basic-component/basicComponent.js-meta.xml +0 -137
  471. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.html +0 -111
  472. package/skills/generating-lwc-components/assets/datatable-component/datatableComponent.js +0 -367
  473. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.css +0 -63
  474. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.html +0 -154
  475. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js +0 -348
  476. package/skills/generating-lwc-components/assets/flow-screen-component/flowScreenComponent.js-meta.xml +0 -87
  477. package/skills/generating-lwc-components/assets/form-component/formComponent.html +0 -165
  478. package/skills/generating-lwc-components/assets/form-component/formComponent.js +0 -275
  479. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.html +0 -100
  480. package/skills/generating-lwc-components/assets/graphql-component/graphqlComponent.js +0 -336
  481. package/skills/generating-lwc-components/assets/jest-test/componentName.test.js.example +0 -371
  482. package/skills/generating-lwc-components/assets/message-channel/RecordSelected.messageChannel-meta.xml +0 -71
  483. package/skills/generating-lwc-components/assets/message-channel/lmsPublisher.js +0 -103
  484. package/skills/generating-lwc-components/assets/message-channel/lmsSubscriber.js +0 -181
  485. package/skills/generating-lwc-components/assets/modal-component/modalComponent.html +0 -85
  486. package/skills/generating-lwc-components/assets/modal-component/modalComponent.js +0 -199
  487. package/skills/generating-lwc-components/assets/record-picker/recordPicker.html +0 -55
  488. package/skills/generating-lwc-components/assets/record-picker/recordPicker.js +0 -199
  489. package/skills/generating-lwc-components/assets/state-store/store.js +0 -282
  490. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.css +0 -65
  491. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.html +0 -95
  492. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.js-meta.xml +0 -75
  493. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.test.ts.example +0 -301
  494. package/skills/generating-lwc-components/assets/typescript-component/typescriptComponent.ts +0 -295
  495. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.html +0 -71
  496. package/skills/generating-lwc-components/assets/workspace-api/workspaceComponent.js +0 -316
  497. package/skills/generating-lwc-components/hooks/scripts/lwc-lsp-validate.py +0 -295
  498. package/skills/generating-lwc-components/hooks/scripts/post-tool-validate.py +0 -347
  499. package/skills/generating-lwc-components/hooks/scripts/slds_data/deprecated_patterns.json +0 -74
  500. package/skills/generating-lwc-components/hooks/scripts/slds_data/styling_hooks.json +0 -111
  501. package/skills/generating-lwc-components/hooks/scripts/slds_data/valid_slds_classes.json +0 -127
  502. package/skills/generating-lwc-components/hooks/scripts/slds_linter_wrapper.py +0 -294
  503. package/skills/generating-lwc-components/hooks/scripts/slds_rules/__init__.py +0 -22
  504. package/skills/generating-lwc-components/hooks/scripts/template_validator.py +0 -332
  505. package/skills/generating-lwc-components/hooks/scripts/validate_slds.py +0 -595
  506. package/skills/generating-lwc-components/references/accessibility-guide.md +0 -843
  507. package/skills/generating-lwc-components/references/advanced-features.md +0 -108
  508. package/skills/generating-lwc-components/references/async-notification-patterns.md +0 -661
  509. package/skills/generating-lwc-components/references/cli-commands.md +0 -545
  510. package/skills/generating-lwc-components/references/component-patterns.md +0 -1476
  511. package/skills/generating-lwc-components/references/flow-integration-guide.md +0 -675
  512. package/skills/generating-lwc-components/references/jest-testing.md +0 -1011
  513. package/skills/generating-lwc-components/references/lms-guide.md +0 -860
  514. package/skills/generating-lwc-components/references/lwc-best-practices.md +0 -1310
  515. package/skills/generating-lwc-components/references/performance-guide.md +0 -861
  516. package/skills/generating-lwc-components/references/scoring-and-testing.md +0 -116
  517. package/skills/generating-lwc-components/references/slds-blueprints.json +0 -14389
  518. package/skills/generating-lwc-components/references/slds-design-guide.md +0 -166
  519. package/skills/generating-lwc-components/references/state-management.md +0 -642
  520. package/skills/generating-lwc-components/references/template-anti-patterns.md +0 -948
  521. package/skills/generating-lwc-components/references/triangle-pattern.md +0 -365
  522. package/skills/generating-lwc-components/scripts/local-dev-preview.sh +0 -34
  523. package/skills/generating-mermaid-diagrams/CREDITS.md +0 -46
  524. package/skills/generating-mermaid-diagrams/README.md +0 -114
  525. package/skills/generating-mermaid-diagrams/SKILL.md +0 -217
  526. package/skills/generating-mermaid-diagrams/assets/agentforce/agent-flow.md +0 -313
  527. package/skills/generating-mermaid-diagrams/assets/architecture/system-landscape.md +0 -351
  528. package/skills/generating-mermaid-diagrams/assets/datamodel/b2b-commerce-erd.md +0 -317
  529. package/skills/generating-mermaid-diagrams/assets/datamodel/campaigns-erd.md +0 -195
  530. package/skills/generating-mermaid-diagrams/assets/datamodel/consent-erd.md +0 -262
  531. package/skills/generating-mermaid-diagrams/assets/datamodel/files-erd.md +0 -266
  532. package/skills/generating-mermaid-diagrams/assets/datamodel/forecasting-erd.md +0 -261
  533. package/skills/generating-mermaid-diagrams/assets/datamodel/fsl-erd.md +0 -332
  534. package/skills/generating-mermaid-diagrams/assets/datamodel/party-model-erd.md +0 -237
  535. package/skills/generating-mermaid-diagrams/assets/datamodel/quote-order-erd.md +0 -277
  536. package/skills/generating-mermaid-diagrams/assets/datamodel/revenue-cloud-erd.md +0 -343
  537. package/skills/generating-mermaid-diagrams/assets/datamodel/sales-cloud-erd.md +0 -192
  538. package/skills/generating-mermaid-diagrams/assets/datamodel/salesforce-erd.md +0 -209
  539. package/skills/generating-mermaid-diagrams/assets/datamodel/scheduler-erd.md +0 -276
  540. package/skills/generating-mermaid-diagrams/assets/datamodel/service-cloud-erd.md +0 -217
  541. package/skills/generating-mermaid-diagrams/assets/datamodel/territory-management-erd.md +0 -241
  542. package/skills/generating-mermaid-diagrams/assets/integration/api-sequence.md +0 -387
  543. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code-pkce.md +0 -197
  544. package/skills/generating-mermaid-diagrams/assets/oauth/authorization-code.md +0 -152
  545. package/skills/generating-mermaid-diagrams/assets/oauth/client-credentials.md +0 -233
  546. package/skills/generating-mermaid-diagrams/assets/oauth/device-authorization.md +0 -295
  547. package/skills/generating-mermaid-diagrams/assets/oauth/jwt-bearer.md +0 -256
  548. package/skills/generating-mermaid-diagrams/assets/oauth/refresh-token.md +0 -281
  549. package/skills/generating-mermaid-diagrams/assets/oauth/user-agent-social-sign-on.md +0 -281
  550. package/skills/generating-mermaid-diagrams/assets/role-hierarchy/user-hierarchy.md +0 -322
  551. package/skills/generating-mermaid-diagrams/references/color-palette.md +0 -464
  552. package/skills/generating-mermaid-diagrams/references/diagram-conventions.md +0 -313
  553. package/skills/generating-mermaid-diagrams/references/erd-conventions.md +0 -320
  554. package/skills/generating-mermaid-diagrams/references/mermaid-reference.md +0 -434
  555. package/skills/generating-mermaid-diagrams/references/mermaid-styling.md +0 -81
  556. package/skills/generating-mermaid-diagrams/references/preview-guide.md +0 -46
  557. package/skills/generating-mermaid-diagrams/references/usage-examples.md +0 -340
  558. package/skills/generating-mermaid-diagrams/scripts/README.md +0 -160
  559. package/skills/generating-mermaid-diagrams/scripts/mermaid_preview.py +0 -654
  560. package/skills/generating-mermaid-diagrams/scripts/query-org-metadata.py +0 -293
  561. package/skills/generating-permission-set/SKILL.md +0 -189
  562. package/skills/generating-ui-bundle-custom-app/SKILL.md +0 -93
  563. package/skills/generating-ui-bundle-custom-app/docs/configure-metadata-custom-application.md +0 -70
  564. package/skills/generating-ui-bundle-features/SKILL.md +0 -47
  565. package/skills/generating-ui-bundle-metadata/SKILL.md +0 -153
  566. package/skills/generating-ui-bundle-metadata/implementation/csp-metadata-format.md +0 -281
  567. package/skills/generating-ui-bundle-site/SKILL.md +0 -92
  568. package/skills/generating-ui-bundle-site/docs/configure-metadata-custom-site.md +0 -41
  569. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-bundle.md +0 -17
  570. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience-config.md +0 -21
  571. package/skills/generating-ui-bundle-site/docs/configure-metadata-digital-experience.md +0 -40
  572. package/skills/generating-ui-bundle-site/docs/configure-metadata-network.md +0 -72
  573. package/skills/generating-ui-bundle-site/docs/update-site-urls.md +0 -100
  574. package/skills/generating-validation-rule/SKILL.md +0 -74
  575. package/skills/generating-visual-diagrams/CREDITS.md +0 -80
  576. package/skills/generating-visual-diagrams/README.md +0 -83
  577. package/skills/generating-visual-diagrams/SKILL.md +0 -207
  578. package/skills/generating-visual-diagrams/assets/architecture/integration-flow.md +0 -55
  579. package/skills/generating-visual-diagrams/assets/erd/core-objects.md +0 -131
  580. package/skills/generating-visual-diagrams/assets/erd/custom-objects.md +0 -60
  581. package/skills/generating-visual-diagrams/assets/lwc/dashboard-card.md +0 -45
  582. package/skills/generating-visual-diagrams/assets/lwc/data-table.md +0 -57
  583. package/skills/generating-visual-diagrams/assets/lwc/record-form.md +0 -60
  584. package/skills/generating-visual-diagrams/assets/review/apex-review.md +0 -57
  585. package/skills/generating-visual-diagrams/assets/review/lwc-review.md +0 -48
  586. package/skills/generating-visual-diagrams/references/architect-aesthetic-guide.md +0 -257
  587. package/skills/generating-visual-diagrams/references/examples-index.md +0 -35
  588. package/skills/generating-visual-diagrams/references/gemini-cli-setup.md +0 -65
  589. package/skills/generating-visual-diagrams/references/interview-questions.md +0 -529
  590. package/skills/generating-visual-diagrams/references/iteration-workflow.md +0 -173
  591. package/skills/generating-visual-diagrams/scripts/check-prerequisites.sh +0 -101
  592. package/skills/generating-visual-diagrams/scripts/generate_image.py +0 -243
  593. package/skills/getting-metadata-api-context/README.md +0 -79
  594. package/skills/getting-metadata-api-context/SKILL.md +0 -466
  595. package/skills/getting-metadata-api-context/data/metadata_api/AIApplication.json +0 -37
  596. package/skills/getting-metadata-api-context/data/metadata_api/AIApplicationConfig.json +0 -53
  597. package/skills/getting-metadata-api-context/data/metadata_api/AIReplyRecommendationsSettings.json +0 -40
  598. package/skills/getting-metadata-api-context/data/metadata_api/AIScoringModelDefinition.json +0 -87
  599. package/skills/getting-metadata-api-context/data/metadata_api/AIUsecaseDefinition.json +0 -215
  600. package/skills/getting-metadata-api-context/data/metadata_api/AccountInsightsSettings.json +0 -30
  601. package/skills/getting-metadata-api-context/data/metadata_api/AccountIntelligenceSettings.json +0 -40
  602. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanObjMeasCalcDef.json +0 -86
  603. package/skills/getting-metadata-api-context/data/metadata_api/AccountPlanSettings.json +0 -32
  604. package/skills/getting-metadata-api-context/data/metadata_api/AccountRelationshipShareRule.json +0 -56
  605. package/skills/getting-metadata-api-context/data/metadata_api/AccountSettings.json +0 -64
  606. package/skills/getting-metadata-api-context/data/metadata_api/AccountingFieldMapping.json +0 -70
  607. package/skills/getting-metadata-api-context/data/metadata_api/AccountingModelConfig.json +0 -94
  608. package/skills/getting-metadata-api-context/data/metadata_api/AccountingSettings.json +0 -53
  609. package/skills/getting-metadata-api-context/data/metadata_api/ActionLinkGroupTemplate.json +0 -118
  610. package/skills/getting-metadata-api-context/data/metadata_api/ActionOverride.json +0 -70
  611. package/skills/getting-metadata-api-context/data/metadata_api/ActionPlanTemplate.json +0 -166
  612. package/skills/getting-metadata-api-context/data/metadata_api/ActionableListDefinition.json +0 -114
  613. package/skills/getting-metadata-api-context/data/metadata_api/ActionsSettings.json +0 -44
  614. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatform.json +0 -95
  615. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformActvAttr.json +0 -8
  616. package/skills/getting-metadata-api-context/data/metadata_api/ActivationPlatformField.json +0 -55
  617. package/skills/getting-metadata-api-context/data/metadata_api/ActivitiesSettings.json +0 -136
  618. package/skills/getting-metadata-api-context/data/metadata_api/ActvPfrmDataConnectorS3.json +0 -41
  619. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformAdncIdentifier.json +0 -46
  620. package/skills/getting-metadata-api-context/data/metadata_api/ActvPlatformFieldValue.json +0 -50
  621. package/skills/getting-metadata-api-context/data/metadata_api/AddressSettings.json +0 -90
  622. package/skills/getting-metadata-api-context/data/metadata_api/AdvAccountForecastSet.json +0 -261
  623. package/skills/getting-metadata-api-context/data/metadata_api/AffinityScoreDefinition.json +0 -74
  624. package/skills/getting-metadata-api-context/data/metadata_api/AgentPlatformSettings.json +0 -32
  625. package/skills/getting-metadata-api-context/data/metadata_api/AgentforceForDevelopersSettings.json +0 -32
  626. package/skills/getting-metadata-api-context/data/metadata_api/AiAuthoringBundle.json +0 -44
  627. package/skills/getting-metadata-api-context/data/metadata_api/AiEvaluationDefinition.json +0 -153
  628. package/skills/getting-metadata-api-context/data/metadata_api/AiPluginUtteranceDef.json +0 -40
  629. package/skills/getting-metadata-api-context/data/metadata_api/AllOrNoneHeader.json +0 -17
  630. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticSnapshot.json +0 -80
  631. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsDashboard.json +0 -369
  632. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsSettings.json +0 -488
  633. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsVisualization.json +0 -180
  634. package/skills/getting-metadata-api-context/data/metadata_api/AnalyticsWorkspace.json +0 -71
  635. package/skills/getting-metadata-api-context/data/metadata_api/AnimationRule.json +0 -71
  636. package/skills/getting-metadata-api-context/data/metadata_api/ApexClass.json +0 -70
  637. package/skills/getting-metadata-api-context/data/metadata_api/ApexComponent.json +0 -44
  638. package/skills/getting-metadata-api-context/data/metadata_api/ApexEmailNotifications.json +0 -49
  639. package/skills/getting-metadata-api-context/data/metadata_api/ApexPage.json +0 -64
  640. package/skills/getting-metadata-api-context/data/metadata_api/ApexSettings.json +0 -96
  641. package/skills/getting-metadata-api-context/data/metadata_api/ApexTestSuite.json +0 -32
  642. package/skills/getting-metadata-api-context/data/metadata_api/ApexTrigger.json +0 -52
  643. package/skills/getting-metadata-api-context/data/metadata_api/AppAnalyticsSettings.json +0 -36
  644. package/skills/getting-metadata-api-context/data/metadata_api/AppExperienceSettings.json +0 -32
  645. package/skills/getting-metadata-api-context/data/metadata_api/AppFrameworkTemplateBundle.json +0 -52
  646. package/skills/getting-metadata-api-context/data/metadata_api/AppMenu.json +0 -10
  647. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentAssignmentPolicy.json +0 -48
  648. package/skills/getting-metadata-api-context/data/metadata_api/AppointmentSchedulingPolicy.json +0 -102
  649. package/skills/getting-metadata-api-context/data/metadata_api/ApprovalProcess.json +0 -234
  650. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType.json +0 -81
  651. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_CustomField.json +0 -88
  652. package/skills/getting-metadata-api-context/data/metadata_api/ArticleType_Layout.json +0 -63
  653. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestion.json +0 -117
  654. package/skills/getting-metadata-api-context/data/metadata_api/AssessmentQuestionSet.json +0 -41
  655. package/skills/getting-metadata-api-context/data/metadata_api/AssignmentRules.json +0 -87
  656. package/skills/getting-metadata-api-context/data/metadata_api/AssociationEngineSettings.json +0 -32
  657. package/skills/getting-metadata-api-context/data/metadata_api/AsyncResult.json +0 -89
  658. package/skills/getting-metadata-api-context/data/metadata_api/Audience.json +0 -172
  659. package/skills/getting-metadata-api-context/data/metadata_api/AuraDefinitionBundle.json +0 -94
  660. package/skills/getting-metadata-api-context/data/metadata_api/AuthProvider.json +0 -169
  661. package/skills/getting-metadata-api-context/data/metadata_api/AutoResponseRules.json +0 -79
  662. package/skills/getting-metadata-api-context/data/metadata_api/AutomatedContactsSettings.json +0 -44
  663. package/skills/getting-metadata-api-context/data/metadata_api/BaseSharingRule.json +0 -24
  664. package/skills/getting-metadata-api-context/data/metadata_api/BatchCalcJobDefinition.json +0 -849
  665. package/skills/getting-metadata-api-context/data/metadata_api/BatchProcessJobDefinition.json +0 -175
  666. package/skills/getting-metadata-api-context/data/metadata_api/BillingSettings.json +0 -152
  667. package/skills/getting-metadata-api-context/data/metadata_api/BlacklistedConsumer.json +0 -47
  668. package/skills/getting-metadata-api-context/data/metadata_api/Bot.json +0 -197
  669. package/skills/getting-metadata-api-context/data/metadata_api/BotBlock.json +0 -86
  670. package/skills/getting-metadata-api-context/data/metadata_api/BotSettings.json +0 -32
  671. package/skills/getting-metadata-api-context/data/metadata_api/BotTemplate.json +0 -96
  672. package/skills/getting-metadata-api-context/data/metadata_api/BotVersion.json +0 -667
  673. package/skills/getting-metadata-api-context/data/metadata_api/BranchManagementSettings.json +0 -32
  674. package/skills/getting-metadata-api-context/data/metadata_api/BrandingSet.json +0 -146
  675. package/skills/getting-metadata-api-context/data/metadata_api/BriefcaseDefinition.json +0 -127
  676. package/skills/getting-metadata-api-context/data/metadata_api/BusinessHoursSettings.json +0 -175
  677. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcess.json +0 -47
  678. package/skills/getting-metadata-api-context/data/metadata_api/BusinessProcessGroup.json +0 -91
  679. package/skills/getting-metadata-api-context/data/metadata_api/CMSConnectSource.json +0 -197
  680. package/skills/getting-metadata-api-context/data/metadata_api/CallCenter.json +0 -124
  681. package/skills/getting-metadata-api-context/data/metadata_api/CallCenterRoutingMap.json +0 -58
  682. package/skills/getting-metadata-api-context/data/metadata_api/CallCoachingMediaProvider.json +0 -40
  683. package/skills/getting-metadata-api-context/data/metadata_api/CallOptions.json +0 -17
  684. package/skills/getting-metadata-api-context/data/metadata_api/CampaignInfluenceModel.json +0 -59
  685. package/skills/getting-metadata-api-context/data/metadata_api/CampaignSettings.json +0 -71
  686. package/skills/getting-metadata-api-context/data/metadata_api/CancelDeployResult.json +0 -10
  687. package/skills/getting-metadata-api-context/data/metadata_api/CareBenefitVerifySettings.json +0 -70
  688. package/skills/getting-metadata-api-context/data/metadata_api/CareLimitType.json +0 -46
  689. package/skills/getting-metadata-api-context/data/metadata_api/CareProviderSearchConfig.json +0 -54
  690. package/skills/getting-metadata-api-context/data/metadata_api/CareRequestConfiguration.json +0 -57
  691. package/skills/getting-metadata-api-context/data/metadata_api/CareSystemFieldMapping.json +0 -58
  692. package/skills/getting-metadata-api-context/data/metadata_api/CaseSettings.json +0 -423
  693. package/skills/getting-metadata-api-context/data/metadata_api/CaseSubjectParticle.json +0 -35
  694. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApi.json +0 -97
  695. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiArtifactVersionInfo.json +0 -46
  696. package/skills/getting-metadata-api-context/data/metadata_api/CatalogedApiVersion.json +0 -51
  697. package/skills/getting-metadata-api-context/data/metadata_api/Certificate.json +0 -54
  698. package/skills/getting-metadata-api-context/data/metadata_api/ChannelLayout.json +0 -63
  699. package/skills/getting-metadata-api-context/data/metadata_api/ChatterAnswersSettings.json +0 -76
  700. package/skills/getting-metadata-api-context/data/metadata_api/ChatterEmailsMDSettings.json +0 -68
  701. package/skills/getting-metadata-api-context/data/metadata_api/ChatterExtension.json +0 -64
  702. package/skills/getting-metadata-api-context/data/metadata_api/ChatterSettings.json +0 -92
  703. package/skills/getting-metadata-api-context/data/metadata_api/ChoiceList.json +0 -66
  704. package/skills/getting-metadata-api-context/data/metadata_api/ClaimFinancialSettings.json +0 -51
  705. package/skills/getting-metadata-api-context/data/metadata_api/ClauseCatgConfiguration.json +0 -45
  706. package/skills/getting-metadata-api-context/data/metadata_api/CleanDataService.json +0 -166
  707. package/skills/getting-metadata-api-context/data/metadata_api/CodeBuilderSettings.json +0 -32
  708. package/skills/getting-metadata-api-context/data/metadata_api/CollectionsDashboardSettings.json +0 -32
  709. package/skills/getting-metadata-api-context/data/metadata_api/CommerceSettings.json +0 -80
  710. package/skills/getting-metadata-api-context/data/metadata_api/CommunitiesSettings.json +0 -116
  711. package/skills/getting-metadata-api-context/data/metadata_api/Community.json +0 -121
  712. package/skills/getting-metadata-api-context/data/metadata_api/CommunityTemplateDefinition.json +0 -116
  713. package/skills/getting-metadata-api-context/data/metadata_api/CommunityThemeDefinition.json +0 -146
  714. package/skills/getting-metadata-api-context/data/metadata_api/CompactLayout.json +0 -32
  715. package/skills/getting-metadata-api-context/data/metadata_api/CompanySettings.json +0 -49
  716. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedApp.json +0 -384
  717. package/skills/getting-metadata-api-context/data/metadata_api/ConnectedAppSettings.json +0 -40
  718. package/skills/getting-metadata-api-context/data/metadata_api/ContentAsset.json +0 -121
  719. package/skills/getting-metadata-api-context/data/metadata_api/ContentSettings.json +0 -116
  720. package/skills/getting-metadata-api-context/data/metadata_api/ContentTypeBundle.json +0 -64
  721. package/skills/getting-metadata-api-context/data/metadata_api/ContextDefinition.json +0 -340
  722. package/skills/getting-metadata-api-context/data/metadata_api/ContractSettings.json +0 -36
  723. package/skills/getting-metadata-api-context/data/metadata_api/ConvIntelligenceSignalRule.json +0 -106
  724. package/skills/getting-metadata-api-context/data/metadata_api/ConversationChannelDefinition.json +0 -140
  725. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinition.json +0 -380
  726. package/skills/getting-metadata-api-context/data/metadata_api/ConversationMessageDefinitionTranslation.json +0 -49
  727. package/skills/getting-metadata-api-context/data/metadata_api/ConversationVendorInfo.json +0 -148
  728. package/skills/getting-metadata-api-context/data/metadata_api/ConversationalIntelligenceSettings.json +0 -76
  729. package/skills/getting-metadata-api-context/data/metadata_api/CorsWhitelistOrigin.json +0 -32
  730. package/skills/getting-metadata-api-context/data/metadata_api/CriteriaBasedSharingRule.json +0 -206
  731. package/skills/getting-metadata-api-context/data/metadata_api/CspTrustedSite.json +0 -82
  732. package/skills/getting-metadata-api-context/data/metadata_api/CurrencySettings.json +0 -48
  733. package/skills/getting-metadata-api-context/data/metadata_api/CustomAddressFieldSettings.json +0 -32
  734. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplication.json +0 -453
  735. package/skills/getting-metadata-api-context/data/metadata_api/CustomApplicationComponent.json +0 -72
  736. package/skills/getting-metadata-api-context/data/metadata_api/CustomFeedFilter.json +0 -63
  737. package/skills/getting-metadata-api-context/data/metadata_api/CustomField.json +0 -392
  738. package/skills/getting-metadata-api-context/data/metadata_api/CustomFieldDisplay.json +0 -45
  739. package/skills/getting-metadata-api-context/data/metadata_api/CustomHelpMenuSection.json +0 -57
  740. package/skills/getting-metadata-api-context/data/metadata_api/CustomIndex.json +0 -36
  741. package/skills/getting-metadata-api-context/data/metadata_api/CustomLabels.json +0 -69
  742. package/skills/getting-metadata-api-context/data/metadata_api/CustomMetadata.json +0 -90
  743. package/skills/getting-metadata-api-context/data/metadata_api/CustomNotificationType.json +0 -94
  744. package/skills/getting-metadata-api-context/data/metadata_api/CustomObject.json +0 -313
  745. package/skills/getting-metadata-api-context/data/metadata_api/CustomObjectTranslation.json +0 -319
  746. package/skills/getting-metadata-api-context/data/metadata_api/CustomPageWebLink.json +0 -121
  747. package/skills/getting-metadata-api-context/data/metadata_api/CustomPermission.json +0 -65
  748. package/skills/getting-metadata-api-context/data/metadata_api/CustomSite.json +0 -288
  749. package/skills/getting-metadata-api-context/data/metadata_api/CustomTab.json +0 -97
  750. package/skills/getting-metadata-api-context/data/metadata_api/CustomValue.json +0 -85
  751. package/skills/getting-metadata-api-context/data/metadata_api/CustomerDataPlatformSettings.json +0 -32
  752. package/skills/getting-metadata-api-context/data/metadata_api/Dashboard.json +0 -584
  753. package/skills/getting-metadata-api-context/data/metadata_api/DataCategoryGroup.json +0 -81
  754. package/skills/getting-metadata-api-context/data/metadata_api/DataConnector.json +0 -230
  755. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorIngestApi.json +0 -41
  756. package/skills/getting-metadata-api-context/data/metadata_api/DataConnectorS3.json +0 -44
  757. package/skills/getting-metadata-api-context/data/metadata_api/DataDotComSettings.json +0 -56
  758. package/skills/getting-metadata-api-context/data/metadata_api/DataImportManagementSettings.json +0 -32
  759. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectDependency.json +0 -49
  760. package/skills/getting-metadata-api-context/data/metadata_api/DataKitObjectTemplate.json +0 -59
  761. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectBuildOrgTemplate.json +0 -61
  762. package/skills/getting-metadata-api-context/data/metadata_api/DataObjectSearchIndexConf.json +0 -62
  763. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitDefinition.json +0 -74
  764. package/skills/getting-metadata-api-context/data/metadata_api/DataPackageKitObject.json +0 -47
  765. package/skills/getting-metadata-api-context/data/metadata_api/DataSource.json +0 -29
  766. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceBundleDefinition.json +0 -57
  767. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceField.json +0 -115
  768. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceObject.json +0 -93
  769. package/skills/getting-metadata-api-context/data/metadata_api/DataSourceTenant.json +0 -8
  770. package/skills/getting-metadata-api-context/data/metadata_api/DataSrcDataModelFieldMap.json +0 -69
  771. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamDefinition.json +0 -105
  772. package/skills/getting-metadata-api-context/data/metadata_api/DataStreamTemplate.json +0 -99
  773. package/skills/getting-metadata-api-context/data/metadata_api/DataWeaveResource.json +0 -46
  774. package/skills/getting-metadata-api-context/data/metadata_api/DebuggingHeader.json +0 -20
  775. package/skills/getting-metadata-api-context/data/metadata_api/DecisionMatrixDefinition.json +0 -140
  776. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTable.json +0 -211
  777. package/skills/getting-metadata-api-context/data/metadata_api/DecisionTableDatasetLink.json +0 -72
  778. package/skills/getting-metadata-api-context/data/metadata_api/DelegateGroup.json +0 -62
  779. package/skills/getting-metadata-api-context/data/metadata_api/DeleteResult.json +0 -22
  780. package/skills/getting-metadata-api-context/data/metadata_api/DeployResult.json +0 -253
  781. package/skills/getting-metadata-api-context/data/metadata_api/DeploymentSettings.json +0 -32
  782. package/skills/getting-metadata-api-context/data/metadata_api/DescribeMetadataResult.json +0 -31
  783. package/skills/getting-metadata-api-context/data/metadata_api/DescribeValueTypeResult.json +0 -56
  784. package/skills/getting-metadata-api-context/data/metadata_api/DevHubSettings.json +0 -60
  785. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtProvider.json +0 -43
  786. package/skills/getting-metadata-api-context/data/metadata_api/DgtAssetMgmtPrvdLghtCpnt.json +0 -48
  787. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle.json +0 -102
  788. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Marketing_Workspace_Bundle_and_Folders.json +0 -8
  789. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceBundle_Site_Workspace_Bundle_and_Folders.json +0 -541
  790. package/skills/getting-metadata-api-context/data/metadata_api/DigitalExperienceConfig.json +0 -51
  791. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinition.json +0 -45
  792. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureDefinitionVersion.json +0 -78
  793. package/skills/getting-metadata-api-context/data/metadata_api/DisclosureType.json +0 -53
  794. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryAIModel.json +0 -263
  795. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryGoal.json +0 -361
  796. package/skills/getting-metadata-api-context/data/metadata_api/DiscoveryStory.json +0 -98
  797. package/skills/getting-metadata-api-context/data/metadata_api/Document.json +0 -54
  798. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategory.json +0 -42
  799. package/skills/getting-metadata-api-context/data/metadata_api/DocumentCategoryDocumentType.json +0 -48
  800. package/skills/getting-metadata-api-context/data/metadata_api/DocumentChecklistSettings.json +0 -36
  801. package/skills/getting-metadata-api-context/data/metadata_api/DocumentGenerationSetting.json +0 -60
  802. package/skills/getting-metadata-api-context/data/metadata_api/DocumentType.json +0 -43
  803. package/skills/getting-metadata-api-context/data/metadata_api/DuplicateRule.json +0 -160
  804. package/skills/getting-metadata-api-context/data/metadata_api/DynamicFormsSettings.json +0 -32
  805. package/skills/getting-metadata-api-context/data/metadata_api/EACSettings.json +0 -112
  806. package/skills/getting-metadata-api-context/data/metadata_api/EclairGeoData.json +0 -73
  807. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAISettings.json +0 -45
  808. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinAgentSettings.json +0 -40
  809. package/skills/getting-metadata-api-context/data/metadata_api/EinsteinGptSettings.json +0 -64
  810. package/skills/getting-metadata-api-context/data/metadata_api/EmailAdministrationSettings.json +0 -104
  811. package/skills/getting-metadata-api-context/data/metadata_api/EmailAuthorizationSettings.json +0 -32
  812. package/skills/getting-metadata-api-context/data/metadata_api/EmailIntegrationSettings.json +0 -92
  813. package/skills/getting-metadata-api-context/data/metadata_api/EmailServicesFunction.json +0 -116
  814. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplate.json +0 -116
  815. package/skills/getting-metadata-api-context/data/metadata_api/EmailTemplateSettings.json +0 -32
  816. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceBranding.json +0 -78
  817. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceConfig.json +0 -318
  818. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFieldService.json +0 -73
  819. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceFlowConfig.json +0 -32
  820. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceLiveAgent.json +0 -141
  821. package/skills/getting-metadata-api-context/data/metadata_api/EmbeddedServiceMenuSettings.json +0 -165
  822. package/skills/getting-metadata-api-context/data/metadata_api/EmployeeUserSettings.json +0 -54
  823. package/skills/getting-metadata-api-context/data/metadata_api/EnablementMeasureDefinition.json +0 -139
  824. package/skills/getting-metadata-api-context/data/metadata_api/EnablementProgramDefinition.json +0 -241
  825. package/skills/getting-metadata-api-context/data/metadata_api/EnblProgramTaskSubCategory.json +0 -47
  826. package/skills/getting-metadata-api-context/data/metadata_api/EncryptionKeySettings.json +0 -51
  827. package/skills/getting-metadata-api-context/data/metadata_api/EnhancedNotesSettings.json +0 -36
  828. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementProcess.json +0 -147
  829. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementSettings.json +0 -80
  830. package/skills/getting-metadata-api-context/data/metadata_api/EntitlementTemplate.json +0 -52
  831. package/skills/getting-metadata-api-context/data/metadata_api/Error.json +0 -25
  832. package/skills/getting-metadata-api-context/data/metadata_api/EscalationRules.json +0 -117
  833. package/skills/getting-metadata-api-context/data/metadata_api/EventDelivery.json +0 -57
  834. package/skills/getting-metadata-api-context/data/metadata_api/EventRelayConfig.json +0 -55
  835. package/skills/getting-metadata-api-context/data/metadata_api/EventSettings.json +0 -76
  836. package/skills/getting-metadata-api-context/data/metadata_api/EventSubscription.json +0 -62
  837. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundle.json +0 -387
  838. package/skills/getting-metadata-api-context/data/metadata_api/ExperienceBundleSettings.json +0 -25
  839. package/skills/getting-metadata-api-context/data/metadata_api/ExperiencePropertyTypeBundle.json +0 -68
  840. package/skills/getting-metadata-api-context/data/metadata_api/ExplainabilityMsgTemplate.json +0 -56
  841. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetDefinition.json +0 -496
  842. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetMessageToken.json +0 -42
  843. package/skills/getting-metadata-api-context/data/metadata_api/ExpressionSetObjectAlias.json +0 -61
  844. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAIModel.json +0 -54
  845. package/skills/getting-metadata-api-context/data/metadata_api/ExternalAuthIdentityProvider.json +0 -79
  846. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientAppSettings.json +0 -40
  847. package/skills/getting-metadata-api-context/data/metadata_api/ExternalClientApplication.json +0 -72
  848. package/skills/getting-metadata-api-context/data/metadata_api/ExternalCredential.json +0 -94
  849. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataConnector.json +0 -51
  850. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataSource.json +0 -162
  851. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTranObject.json +0 -191
  852. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportFieldTemplate.json +0 -8
  853. package/skills/getting-metadata-api-context/data/metadata_api/ExternalDataTransportObjectTemplate.json +0 -8
  854. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServiceRegistration.json +0 -121
  855. package/skills/getting-metadata-api-context/data/metadata_api/ExternalServicesSettings.json +0 -34
  856. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppCanvasSettings.json +0 -63
  857. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppConfigurablePolicies.json +0 -75
  858. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppGlobalOauthSettings.json +0 -135
  859. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileConfigurablePolicies.json +0 -34
  860. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppMobileSettings.json +0 -35
  861. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppNotificationSettings.json +0 -49
  862. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthConfigurablePolicies.json +0 -153
  863. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppOauthSettings.json +0 -120
  864. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushConfigurablePolicies.json +0 -35
  865. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppPushSettings.json +0 -93
  866. package/skills/getting-metadata-api-context/data/metadata_api/ExtlClntAppSamlConfigurablePolicies.json +0 -119
  867. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterBoolean.json +0 -47
  868. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterDate.json +0 -47
  869. package/skills/getting-metadata-api-context/data/metadata_api/FeatureParameterInteger.json +0 -47
  870. package/skills/getting-metadata-api-context/data/metadata_api/FieldMappingConfig.json +0 -43
  871. package/skills/getting-metadata-api-context/data/metadata_api/FieldRestrictionRule.json +0 -80
  872. package/skills/getting-metadata-api-context/data/metadata_api/FieldServiceSettings.json +0 -226
  873. package/skills/getting-metadata-api-context/data/metadata_api/FieldSet.json +0 -60
  874. package/skills/getting-metadata-api-context/data/metadata_api/FieldSrcTrgtRelationship.json +0 -56
  875. package/skills/getting-metadata-api-context/data/metadata_api/FileUploadAndDownloadSecuritySettings.json +0 -53
  876. package/skills/getting-metadata-api-context/data/metadata_api/FilesConnectSettings.json +0 -40
  877. package/skills/getting-metadata-api-context/data/metadata_api/FlexiPage.json +0 -355
  878. package/skills/getting-metadata-api-context/data/metadata_api/Flow.json +0 -2377
  879. package/skills/getting-metadata-api-context/data/metadata_api/FlowCategory.json +0 -51
  880. package/skills/getting-metadata-api-context/data/metadata_api/FlowDefinition.json +0 -37
  881. package/skills/getting-metadata-api-context/data/metadata_api/FlowSettings.json +0 -124
  882. package/skills/getting-metadata-api-context/data/metadata_api/FlowTest.json +0 -205
  883. package/skills/getting-metadata-api-context/data/metadata_api/FlowValueMap.json +0 -68
  884. package/skills/getting-metadata-api-context/data/metadata_api/Folder.json +0 -50
  885. package/skills/getting-metadata-api-context/data/metadata_api/FolderShare.json +0 -45
  886. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilter.json +0 -48
  887. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingFilterCondition.json +0 -62
  888. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingObjectListSettings.json +0 -77
  889. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSettings.json +0 -303
  890. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingSourceDefinition.json +0 -62
  891. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingType.json +0 -100
  892. package/skills/getting-metadata-api-context/data/metadata_api/ForecastingTypeSource.json +0 -60
  893. package/skills/getting-metadata-api-context/data/metadata_api/FuelType.json +0 -52
  894. package/skills/getting-metadata-api-context/data/metadata_api/FuelTypeSustnUom.json +0 -45
  895. package/skills/getting-metadata-api-context/data/metadata_api/FunctionReference.json +0 -31
  896. package/skills/getting-metadata-api-context/data/metadata_api/FundraisingConfig.json +0 -86
  897. package/skills/getting-metadata-api-context/data/metadata_api/GatewayProviderPaymentMethodType.json +0 -50
  898. package/skills/getting-metadata-api-context/data/metadata_api/GenAiFunction.json +0 -171
  899. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlanner.json +0 -215
  900. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlannerBundle.json +0 -220
  901. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPlugin.json +0 -87
  902. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPluginInstructionDef.json +0 -42
  903. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplate.json +0 -183
  904. package/skills/getting-metadata-api-context/data/metadata_api/GenAiPromptTemplateActv.json +0 -42
  905. package/skills/getting-metadata-api-context/data/metadata_api/GiftEntryGridTemplate.json +0 -42
  906. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklist.json +0 -43
  907. package/skills/getting-metadata-api-context/data/metadata_api/GlobalPicklistValue.json +0 -81
  908. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSet.json +0 -46
  909. package/skills/getting-metadata-api-context/data/metadata_api/GlobalValueSetTranslation.json +0 -44
  910. package/skills/getting-metadata-api-context/data/metadata_api/GoogleAppsSettings.json +0 -56
  911. package/skills/getting-metadata-api-context/data/metadata_api/Group.json +0 -46
  912. package/skills/getting-metadata-api-context/data/metadata_api/HighVelocitySalesSettings.json +0 -96
  913. package/skills/getting-metadata-api-context/data/metadata_api/HistoryRetentionPolicy.json +0 -41
  914. package/skills/getting-metadata-api-context/data/metadata_api/HomePageComponent.json +0 -66
  915. package/skills/getting-metadata-api-context/data/metadata_api/HomePageLayout.json +0 -40
  916. package/skills/getting-metadata-api-context/data/metadata_api/IPAddressRange.json +0 -60
  917. package/skills/getting-metadata-api-context/data/metadata_api/IdeasSettings.json +0 -52
  918. package/skills/getting-metadata-api-context/data/metadata_api/IdentityProviderSettings.json +0 -39
  919. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDef.json +0 -173
  920. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcDtl.json +0 -136
  921. package/skills/getting-metadata-api-context/data/metadata_api/IdentityVerificationProcFld.json +0 -76
  922. package/skills/getting-metadata-api-context/data/metadata_api/IframeWhiteListUrlSettings.json +0 -46
  923. package/skills/getting-metadata-api-context/data/metadata_api/InboundCertificate.json +0 -48
  924. package/skills/getting-metadata-api-context/data/metadata_api/InboundNetworkConnection.json +0 -72
  925. package/skills/getting-metadata-api-context/data/metadata_api/IncidentMgmtSettings.json +0 -140
  926. package/skills/getting-metadata-api-context/data/metadata_api/Index.json +0 -48
  927. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesEinsteinFeatureSettings.json +0 -34
  928. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesLoyaltySettings.json +0 -108
  929. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesPricingSettings.json +0 -61
  930. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesRatingSettings.json +0 -40
  931. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesSettings.json +0 -731
  932. package/skills/getting-metadata-api-context/data/metadata_api/IndustriesUnifiedInventorySettings.json +0 -40
  933. package/skills/getting-metadata-api-context/data/metadata_api/InsPlcyLimitConsumptionRule.json +0 -46
  934. package/skills/getting-metadata-api-context/data/metadata_api/InstalledPackage.json +0 -46
  935. package/skills/getting-metadata-api-context/data/metadata_api/IntegArtifactDef.json +0 -10
  936. package/skills/getting-metadata-api-context/data/metadata_api/IntegrationProviderDef.json +0 -155
  937. package/skills/getting-metadata-api-context/data/metadata_api/InterestTaggingSettings.json +0 -32
  938. package/skills/getting-metadata-api-context/data/metadata_api/InternalDataConnector.json +0 -8
  939. package/skills/getting-metadata-api-context/data/metadata_api/InvLatePymntRiskCalcSettings.json +0 -32
  940. package/skills/getting-metadata-api-context/data/metadata_api/InventorySettings.json +0 -36
  941. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionExtension.json +0 -84
  942. package/skills/getting-metadata-api-context/data/metadata_api/InvocableActionSettings.json +0 -28
  943. package/skills/getting-metadata-api-context/data/metadata_api/KeywordList.json +0 -51
  944. package/skills/getting-metadata-api-context/data/metadata_api/KnowledgeSettings.json +0 -280
  945. package/skills/getting-metadata-api-context/data/metadata_api/LanguageSettings.json +0 -68
  946. package/skills/getting-metadata-api-context/data/metadata_api/Layout.json +0 -659
  947. package/skills/getting-metadata-api-context/data/metadata_api/LeadConfigSettings.json +0 -64
  948. package/skills/getting-metadata-api-context/data/metadata_api/LeadConvertSettings.json +0 -71
  949. package/skills/getting-metadata-api-context/data/metadata_api/LearningItemType.json +0 -65
  950. package/skills/getting-metadata-api-context/data/metadata_api/Letterhead.json +0 -119
  951. package/skills/getting-metadata-api-context/data/metadata_api/LightningBolt.json +0 -103
  952. package/skills/getting-metadata-api-context/data/metadata_api/LightningComponentBundle.json +0 -109
  953. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceSettings.json +0 -191
  954. package/skills/getting-metadata-api-context/data/metadata_api/LightningExperienceTheme.json +0 -54
  955. package/skills/getting-metadata-api-context/data/metadata_api/LightningMessageChannel.json +0 -63
  956. package/skills/getting-metadata-api-context/data/metadata_api/LightningOnboardingConfig.json +0 -62
  957. package/skills/getting-metadata-api-context/data/metadata_api/LightningTypeBundle.json +0 -88
  958. package/skills/getting-metadata-api-context/data/metadata_api/ListMetadataQuery.json +0 -10
  959. package/skills/getting-metadata-api-context/data/metadata_api/ListView.json +0 -86
  960. package/skills/getting-metadata-api-context/data/metadata_api/LiveAgentSettings.json +0 -44
  961. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatAgentConfig.json +0 -188
  962. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatButton.json +0 -188
  963. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatDeployment.json +0 -81
  964. package/skills/getting-metadata-api-context/data/metadata_api/LiveChatSensitiveDataRule.json +0 -56
  965. package/skills/getting-metadata-api-context/data/metadata_api/LiveMessageSettings.json +0 -36
  966. package/skills/getting-metadata-api-context/data/metadata_api/LoyaltyProgramSetup.json +0 -297
  967. package/skills/getting-metadata-api-context/data/metadata_api/MLDataDefinition.json +0 -146
  968. package/skills/getting-metadata-api-context/data/metadata_api/MLPredictionDefinition.json +0 -67
  969. package/skills/getting-metadata-api-context/data/metadata_api/MacroSettings.json +0 -36
  970. package/skills/getting-metadata-api-context/data/metadata_api/MailMergeSettings.json +0 -36
  971. package/skills/getting-metadata-api-context/data/metadata_api/ManagedContentType.json +0 -86
  972. package/skills/getting-metadata-api-context/data/metadata_api/ManagedEventSubscription.json +0 -52
  973. package/skills/getting-metadata-api-context/data/metadata_api/ManagedTopics.json +0 -57
  974. package/skills/getting-metadata-api-context/data/metadata_api/MapAndLocationSettings.json +0 -34
  975. package/skills/getting-metadata-api-context/data/metadata_api/MarketSegmentDefinition.json +0 -58
  976. package/skills/getting-metadata-api-context/data/metadata_api/MarketingAppExtension.json +0 -139
  977. package/skills/getting-metadata-api-context/data/metadata_api/MatchingRule.json +0 -69
  978. package/skills/getting-metadata-api-context/data/metadata_api/MeetingsSettings.json +0 -36
  979. package/skills/getting-metadata-api-context/data/metadata_api/MessagingChannel.json +0 -278
  980. package/skills/getting-metadata-api-context/data/metadata_api/MetadataWithContent.json +0 -24
  981. package/skills/getting-metadata-api-context/data/metadata_api/Metadata_Type_Limits.json +0 -8
  982. package/skills/getting-metadata-api-context/data/metadata_api/MfgProgramTemplate.json +0 -88
  983. package/skills/getting-metadata-api-context/data/metadata_api/MfgServiceConsoleSettings.json +0 -32
  984. package/skills/getting-metadata-api-context/data/metadata_api/MilestoneType.json +0 -36
  985. package/skills/getting-metadata-api-context/data/metadata_api/MktCalcInsightObjectDef.json +0 -54
  986. package/skills/getting-metadata-api-context/data/metadata_api/MktDataTranObject.json +0 -99
  987. package/skills/getting-metadata-api-context/data/metadata_api/MlDomain.json +0 -136
  988. package/skills/getting-metadata-api-context/data/metadata_api/MobSecurityCertPinConfig.json +0 -76
  989. package/skills/getting-metadata-api-context/data/metadata_api/MobileApplicationDetail.json +0 -71
  990. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityAssignment.json +0 -44
  991. package/skills/getting-metadata-api-context/data/metadata_api/MobileSecurityPolicy.json +0 -75
  992. package/skills/getting-metadata-api-context/data/metadata_api/MobileSettings.json +0 -121
  993. package/skills/getting-metadata-api-context/data/metadata_api/ModerationRule.json +0 -99
  994. package/skills/getting-metadata-api-context/data/metadata_api/MutingPermissionSet.json +0 -33
  995. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainDiscoverableLogin.json +0 -41
  996. package/skills/getting-metadata-api-context/data/metadata_api/MyDomainSettings.json +0 -140
  997. package/skills/getting-metadata-api-context/data/metadata_api/NameSettings.json +0 -40
  998. package/skills/getting-metadata-api-context/data/metadata_api/NamedCredential.json +0 -205
  999. package/skills/getting-metadata-api-context/data/metadata_api/NamedFilter.json +0 -89
  1000. package/skills/getting-metadata-api-context/data/metadata_api/NavigationMenu.json +0 -101
  1001. package/skills/getting-metadata-api-context/data/metadata_api/Network.json +0 -606
  1002. package/skills/getting-metadata-api-context/data/metadata_api/NetworkBranding.json +0 -117
  1003. package/skills/getting-metadata-api-context/data/metadata_api/NotificationTypeConfig.json +0 -75
  1004. package/skills/getting-metadata-api-context/data/metadata_api/NotificationsSettings.json +0 -40
  1005. package/skills/getting-metadata-api-context/data/metadata_api/OauthCustomScope.json +0 -56
  1006. package/skills/getting-metadata-api-context/data/metadata_api/OauthOidcSettings.json +0 -52
  1007. package/skills/getting-metadata-api-context/data/metadata_api/OauthTokenExchangeHandler.json +0 -119
  1008. package/skills/getting-metadata-api-context/data/metadata_api/ObjectHierarchyRelationship.json +0 -108
  1009. package/skills/getting-metadata-api-context/data/metadata_api/ObjectLinkingSettings.json +0 -32
  1010. package/skills/getting-metadata-api-context/data/metadata_api/ObjectSourceTargetMap.json +0 -85
  1011. package/skills/getting-metadata-api-context/data/metadata_api/OcrSampleDocument.json +0 -158
  1012. package/skills/getting-metadata-api-context/data/metadata_api/OcrTemplate.json +0 -180
  1013. package/skills/getting-metadata-api-context/data/metadata_api/OmniChannelSettings.json +0 -48
  1014. package/skills/getting-metadata-api-context/data/metadata_api/OmniExtTrackingDef.json +0 -66
  1015. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionAccessConfig.json +0 -90
  1016. package/skills/getting-metadata-api-context/data/metadata_api/OmniInteractionConfig.json +0 -37
  1017. package/skills/getting-metadata-api-context/data/metadata_api/OmniScript.json +0 -204
  1018. package/skills/getting-metadata-api-context/data/metadata_api/OmniSupervisorConfig.json +0 -156
  1019. package/skills/getting-metadata-api-context/data/metadata_api/OmniTrackingGroup.json +0 -77
  1020. package/skills/getting-metadata-api-context/data/metadata_api/OnboardingDataObjectGroup.json +0 -131
  1021. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityInsightsSettings.json +0 -30
  1022. package/skills/getting-metadata-api-context/data/metadata_api/OpportunityScoreSettings.json +0 -32
  1023. package/skills/getting-metadata-api-context/data/metadata_api/OpportunitySettings.json +0 -132
  1024. package/skills/getting-metadata-api-context/data/metadata_api/OrchestrationPlanCtxMapping.json +0 -63
  1025. package/skills/getting-metadata-api-context/data/metadata_api/OrderManagementSettings.json +0 -52
  1026. package/skills/getting-metadata-api-context/data/metadata_api/OrderSettings.json +0 -60
  1027. package/skills/getting-metadata-api-context/data/metadata_api/OrgPreferenceSettings.json +0 -43
  1028. package/skills/getting-metadata-api-context/data/metadata_api/OrgSettings.json +0 -40
  1029. package/skills/getting-metadata-api-context/data/metadata_api/OutboundNetworkConnection.json +0 -71
  1030. package/skills/getting-metadata-api-context/data/metadata_api/OwnerSharingRule.json +0 -206
  1031. package/skills/getting-metadata-api-context/data/metadata_api/Package.json +0 -19
  1032. package/skills/getting-metadata-api-context/data/metadata_api/PardotEinsteinSettings.json +0 -36
  1033. package/skills/getting-metadata-api-context/data/metadata_api/PardotSettings.json +0 -72
  1034. package/skills/getting-metadata-api-context/data/metadata_api/ParticipantRole.json +0 -48
  1035. package/skills/getting-metadata-api-context/data/metadata_api/PartyDataModelSettings.json +0 -40
  1036. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistant.json +0 -74
  1037. package/skills/getting-metadata-api-context/data/metadata_api/PathAssistantSettings.json +0 -40
  1038. package/skills/getting-metadata-api-context/data/metadata_api/PaymentGatewayProvider.json +0 -50
  1039. package/skills/getting-metadata-api-context/data/metadata_api/PaymentsSettings.json +0 -32
  1040. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSet.json +0 -372
  1041. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetGroup.json +0 -57
  1042. package/skills/getting-metadata-api-context/data/metadata_api/PermissionSetLicenseDefinition.json +0 -58
  1043. package/skills/getting-metadata-api-context/data/metadata_api/PersonAccountOwnerPowerUser.json +0 -38
  1044. package/skills/getting-metadata-api-context/data/metadata_api/Picklist.json +0 -43
  1045. package/skills/getting-metadata-api-context/data/metadata_api/PicklistSettings.json +0 -32
  1046. package/skills/getting-metadata-api-context/data/metadata_api/PipelineInspMetricConfig.json +0 -48
  1047. package/skills/getting-metadata-api-context/data/metadata_api/PlatformCachePartition.json +0 -79
  1048. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEncryptionSettings.json +0 -51
  1049. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannel.json +0 -56
  1050. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventChannelMember.json +0 -71
  1051. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventMigration.json +0 -39
  1052. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSettings.json +0 -32
  1053. package/skills/getting-metadata-api-context/data/metadata_api/PlatformEventSubscriberConfig.json +0 -58
  1054. package/skills/getting-metadata-api-context/data/metadata_api/Portal.json +0 -137
  1055. package/skills/getting-metadata-api-context/data/metadata_api/PortalDelegablePermissionSet.json +0 -48
  1056. package/skills/getting-metadata-api-context/data/metadata_api/PostTemplate.json +0 -47
  1057. package/skills/getting-metadata-api-context/data/metadata_api/PredictionBuilderSettings.json +0 -36
  1058. package/skills/getting-metadata-api-context/data/metadata_api/PresenceDeclineReason.json +0 -32
  1059. package/skills/getting-metadata-api-context/data/metadata_api/PresenceUserConfig.json +0 -122
  1060. package/skills/getting-metadata-api-context/data/metadata_api/PricingActionParameters.json +0 -64
  1061. package/skills/getting-metadata-api-context/data/metadata_api/PricingRecipe.json +0 -117
  1062. package/skills/getting-metadata-api-context/data/metadata_api/PrivacySettings.json +0 -80
  1063. package/skills/getting-metadata-api-context/data/metadata_api/ProcessFlowMigration.json +0 -58
  1064. package/skills/getting-metadata-api-context/data/metadata_api/ProductAttributeSet.json +0 -33
  1065. package/skills/getting-metadata-api-context/data/metadata_api/ProductSettings.json +0 -44
  1066. package/skills/getting-metadata-api-context/data/metadata_api/Profile.json +0 -492
  1067. package/skills/getting-metadata-api-context/data/metadata_api/ProfileActionOverride.json +0 -48
  1068. package/skills/getting-metadata-api-context/data/metadata_api/ProfilePasswordPolicy.json +0 -80
  1069. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSearchLayouts.json +0 -32
  1070. package/skills/getting-metadata-api-context/data/metadata_api/ProfileSessionSetting.json +0 -55
  1071. package/skills/getting-metadata-api-context/data/metadata_api/Prompt.json +0 -255
  1072. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificate.json +0 -50
  1073. package/skills/getting-metadata-api-context/data/metadata_api/PublicKeyCertificateSet.json +0 -65
  1074. package/skills/getting-metadata-api-context/data/metadata_api/Queue.json +0 -123
  1075. package/skills/getting-metadata-api-context/data/metadata_api/QueueRoutingConfig.json +0 -96
  1076. package/skills/getting-metadata-api-context/data/metadata_api/QuickAction.json +0 -175
  1077. package/skills/getting-metadata-api-context/data/metadata_api/QuoteSettings.json +0 -36
  1078. package/skills/getting-metadata-api-context/data/metadata_api/ReadResult.json +0 -16
  1079. package/skills/getting-metadata-api-context/data/metadata_api/RealTimeEventSettings.json +0 -45
  1080. package/skills/getting-metadata-api-context/data/metadata_api/RecommendationStrategy.json +0 -327
  1081. package/skills/getting-metadata-api-context/data/metadata_api/RecordActionDeployment.json +0 -184
  1082. package/skills/getting-metadata-api-context/data/metadata_api/RecordAggregationDefinition.json +0 -148
  1083. package/skills/getting-metadata-api-context/data/metadata_api/RecordAlertCategory.json +0 -42
  1084. package/skills/getting-metadata-api-context/data/metadata_api/RecordPageSettings.json +0 -40
  1085. package/skills/getting-metadata-api-context/data/metadata_api/RecordType.json +0 -68
  1086. package/skills/getting-metadata-api-context/data/metadata_api/RedirectWhitelistUrl.json +0 -26
  1087. package/skills/getting-metadata-api-context/data/metadata_api/ReferencedDashboard.json +0 -55
  1088. package/skills/getting-metadata-api-context/data/metadata_api/RegisteredExternalService.json +0 -72
  1089. package/skills/getting-metadata-api-context/data/metadata_api/RelatedRecordAssocCriteria.json +0 -75
  1090. package/skills/getting-metadata-api-context/data/metadata_api/RelationshipGraphDefinition.json +0 -63
  1091. package/skills/getting-metadata-api-context/data/metadata_api/RemoteSiteSetting.json +0 -51
  1092. package/skills/getting-metadata-api-context/data/metadata_api/Report.json +0 -715
  1093. package/skills/getting-metadata-api-context/data/metadata_api/ReportType.json +0 -118
  1094. package/skills/getting-metadata-api-context/data/metadata_api/RestrictionRule.json +0 -71
  1095. package/skills/getting-metadata-api-context/data/metadata_api/RetailExecutionSettings.json +0 -40
  1096. package/skills/getting-metadata-api-context/data/metadata_api/RetrievalSummaryDefinition.json +0 -76
  1097. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveRequest.json +0 -35
  1098. package/skills/getting-metadata-api-context/data/metadata_api/RetrieveResult.json +0 -103
  1099. package/skills/getting-metadata-api-context/data/metadata_api/Role.json +0 -35
  1100. package/skills/getting-metadata-api-context/data/metadata_api/RoleOrTerritory.json +0 -57
  1101. package/skills/getting-metadata-api-context/data/metadata_api/SalesAgreementSettings.json +0 -180
  1102. package/skills/getting-metadata-api-context/data/metadata_api/SalesWorkQueueSettings.json +0 -40
  1103. package/skills/getting-metadata-api-context/data/metadata_api/SamlSsoConfig.json +0 -128
  1104. package/skills/getting-metadata-api-context/data/metadata_api/SandboxSettings.json +0 -32
  1105. package/skills/getting-metadata-api-context/data/metadata_api/SaveResult.json +0 -22
  1106. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingObjective.json +0 -66
  1107. package/skills/getting-metadata-api-context/data/metadata_api/SchedulingRule.json +0 -66
  1108. package/skills/getting-metadata-api-context/data/metadata_api/SchemaSettings.json +0 -44
  1109. package/skills/getting-metadata-api-context/data/metadata_api/Scontrol.json +0 -72
  1110. package/skills/getting-metadata-api-context/data/metadata_api/SearchCustomization.json +0 -120
  1111. package/skills/getting-metadata-api-context/data/metadata_api/SearchLayouts.json +0 -64
  1112. package/skills/getting-metadata-api-context/data/metadata_api/SearchOrgWideObjectConfig.json +0 -61
  1113. package/skills/getting-metadata-api-context/data/metadata_api/SearchSettings.json +0 -155
  1114. package/skills/getting-metadata-api-context/data/metadata_api/SecuritySettings.json +0 -437
  1115. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupDefinition.json +0 -48
  1116. package/skills/getting-metadata-api-context/data/metadata_api/ServiceAISetupField.json +0 -58
  1117. package/skills/getting-metadata-api-context/data/metadata_api/ServiceChannel.json +0 -123
  1118. package/skills/getting-metadata-api-context/data/metadata_api/ServiceCloudVoiceSettings.json +0 -83
  1119. package/skills/getting-metadata-api-context/data/metadata_api/ServicePresenceStatus.json +0 -45
  1120. package/skills/getting-metadata-api-context/data/metadata_api/ServiceProcess.json +0 -141
  1121. package/skills/getting-metadata-api-context/data/metadata_api/ServiceSetupAssistantSettings.json +0 -32
  1122. package/skills/getting-metadata-api-context/data/metadata_api/SessionHeader.json +0 -17
  1123. package/skills/getting-metadata-api-context/data/metadata_api/SharedTo.json +0 -105
  1124. package/skills/getting-metadata-api-context/data/metadata_api/SharingBaseRule.json +0 -60
  1125. package/skills/getting-metadata-api-context/data/metadata_api/SharingReason.json +0 -34
  1126. package/skills/getting-metadata-api-context/data/metadata_api/SharingRecalculation.json +0 -29
  1127. package/skills/getting-metadata-api-context/data/metadata_api/SharingRules.json +0 -186
  1128. package/skills/getting-metadata-api-context/data/metadata_api/SharingSet.json +0 -78
  1129. package/skills/getting-metadata-api-context/data/metadata_api/SharingSettings.json +0 -92
  1130. package/skills/getting-metadata-api-context/data/metadata_api/SiteDotCom.json +0 -37
  1131. package/skills/getting-metadata-api-context/data/metadata_api/SiteSettings.json +0 -60
  1132. package/skills/getting-metadata-api-context/data/metadata_api/Skill.json +0 -69
  1133. package/skills/getting-metadata-api-context/data/metadata_api/SocialCustomerServiceSettings.json +0 -61
  1134. package/skills/getting-metadata-api-context/data/metadata_api/SocialProfileSettings.json +0 -35
  1135. package/skills/getting-metadata-api-context/data/metadata_api/SourceTrackingSettings.json +0 -32
  1136. package/skills/getting-metadata-api-context/data/metadata_api/StageAssignment.json +0 -113
  1137. package/skills/getting-metadata-api-context/data/metadata_api/StageDefinition.json +0 -237
  1138. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSet.json +0 -41
  1139. package/skills/getting-metadata-api-context/data/metadata_api/StandardValueSetTranslation.json +0 -32
  1140. package/skills/getting-metadata-api-context/data/metadata_api/StaticResource.json +0 -49
  1141. package/skills/getting-metadata-api-context/data/metadata_api/StreamingAppDataConnector.json +0 -51
  1142. package/skills/getting-metadata-api-context/data/metadata_api/SubscriptionManagementSettings.json +0 -56
  1143. package/skills/getting-metadata-api-context/data/metadata_api/SurveySettings.json +0 -44
  1144. package/skills/getting-metadata-api-context/data/metadata_api/SustainabilityUom.json +0 -61
  1145. package/skills/getting-metadata-api-context/data/metadata_api/SustnUomConversion.json +0 -58
  1146. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogCategory.json +0 -54
  1147. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogFulfillmentFlow.json +0 -99
  1148. package/skills/getting-metadata-api-context/data/metadata_api/SvcCatalogItemDef.json +0 -202
  1149. package/skills/getting-metadata-api-context/data/metadata_api/SynonymDictionary.json +0 -56
  1150. package/skills/getting-metadata-api-context/data/metadata_api/Tag.json +0 -70
  1151. package/skills/getting-metadata-api-context/data/metadata_api/TagSet.json +0 -47
  1152. package/skills/getting-metadata-api-context/data/metadata_api/Territory.json +0 -39
  1153. package/skills/getting-metadata-api-context/data/metadata_api/Territory2.json +0 -112
  1154. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Model.json +0 -41
  1155. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Rule.json +0 -68
  1156. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Settings.json +0 -111
  1157. package/skills/getting-metadata-api-context/data/metadata_api/Territory2Type.json +0 -42
  1158. package/skills/getting-metadata-api-context/data/metadata_api/TimeSheetTemplate.json +0 -75
  1159. package/skills/getting-metadata-api-context/data/metadata_api/TimelineObjectDefinition.json +0 -48
  1160. package/skills/getting-metadata-api-context/data/metadata_api/TopicsForObjects.json +0 -38
  1161. package/skills/getting-metadata-api-context/data/metadata_api/TrailheadSettings.json +0 -40
  1162. package/skills/getting-metadata-api-context/data/metadata_api/TransactionSecurityPolicy.json +0 -127
  1163. package/skills/getting-metadata-api-context/data/metadata_api/Translations.json +0 -976
  1164. package/skills/getting-metadata-api-context/data/metadata_api/TrialOrgSettings.json +0 -32
  1165. package/skills/getting-metadata-api-context/data/metadata_api/UIBundle.json +0 -54
  1166. package/skills/getting-metadata-api-context/data/metadata_api/UIObjectRelationConfig.json +0 -101
  1167. package/skills/getting-metadata-api-context/data/metadata_api/UiFormatSpecificationSet.json +0 -103
  1168. package/skills/getting-metadata-api-context/data/metadata_api/UiPreviewMessageTabDef.json +0 -70
  1169. package/skills/getting-metadata-api-context/data/metadata_api/UpsertResult.json +0 -25
  1170. package/skills/getting-metadata-api-context/data/metadata_api/UserAccessPolicy.json +0 -120
  1171. package/skills/getting-metadata-api-context/data/metadata_api/UserAuthCertificate.json +0 -57
  1172. package/skills/getting-metadata-api-context/data/metadata_api/UserCriteria.json +0 -48
  1173. package/skills/getting-metadata-api-context/data/metadata_api/UserEngagementSettings.json +0 -136
  1174. package/skills/getting-metadata-api-context/data/metadata_api/UserInterfaceSettings.json +0 -96
  1175. package/skills/getting-metadata-api-context/data/metadata_api/UserManagementSettings.json +0 -108
  1176. package/skills/getting-metadata-api-context/data/metadata_api/UserProfileSearchScope.json +0 -8
  1177. package/skills/getting-metadata-api-context/data/metadata_api/UserProvisioningConfig.json +0 -72
  1178. package/skills/getting-metadata-api-context/data/metadata_api/ValidationRule.json +0 -51
  1179. package/skills/getting-metadata-api-context/data/metadata_api/VirtualVisitConfig.json +0 -97
  1180. package/skills/getting-metadata-api-context/data/metadata_api/VoiceSettings.json +0 -68
  1181. package/skills/getting-metadata-api-context/data/metadata_api/WarrantyLifeCycleMgmtSettings.json +0 -32
  1182. package/skills/getting-metadata-api-context/data/metadata_api/WaveAnalyticAssetCollection.json +0 -73
  1183. package/skills/getting-metadata-api-context/data/metadata_api/WaveApplication.json +0 -56
  1184. package/skills/getting-metadata-api-context/data/metadata_api/WaveComponent.json +0 -46
  1185. package/skills/getting-metadata-api-context/data/metadata_api/WaveDashboard.json +0 -50
  1186. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataflow.json +0 -45
  1187. package/skills/getting-metadata-api-context/data/metadata_api/WaveDataset.json +0 -50
  1188. package/skills/getting-metadata-api-context/data/metadata_api/WaveLens.json +0 -59
  1189. package/skills/getting-metadata-api-context/data/metadata_api/WaveRecipe.json +0 -58
  1190. package/skills/getting-metadata-api-context/data/metadata_api/WaveTemplateBundle.json +0 -37
  1191. package/skills/getting-metadata-api-context/data/metadata_api/WaveXmd.json +0 -567
  1192. package/skills/getting-metadata-api-context/data/metadata_api/WebLink.json +0 -117
  1193. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreBundle.json +0 -10
  1194. package/skills/getting-metadata-api-context/data/metadata_api/WebStoreTemplate.json +0 -166
  1195. package/skills/getting-metadata-api-context/data/metadata_api/WorkDotComSettings.json +0 -76
  1196. package/skills/getting-metadata-api-context/data/metadata_api/WorkSkillRouting.json +0 -76
  1197. package/skills/getting-metadata-api-context/data/metadata_api/Workflow.json +0 -415
  1198. package/skills/getting-metadata-api-context/data/metadata_api/WorkforceEngagementSettings.json +0 -56
  1199. package/skills/getting-metadata-api-context/examples/README.md +0 -169
  1200. package/skills/getting-metadata-api-context/examples/bash_section_loading.sh +0 -142
  1201. package/skills/getting-metadata-api-context/examples/javascript_section_loading.js +0 -162
  1202. package/skills/getting-metadata-api-context/examples/python_section_loading.py +0 -112
  1203. package/skills/getting-metadata-api-context/references/metadata_index_table.md +0 -654
  1204. package/skills/getting-metadata-api-context/references/usage_guide.md +0 -420
  1205. package/skills/handling-sf-data/CREDITS.md +0 -5
  1206. package/skills/handling-sf-data/README.md +0 -112
  1207. package/skills/handling-sf-data/SKILL.md +0 -234
  1208. package/skills/handling-sf-data/assets/bulk/bulk-insert-10000.apex +0 -293
  1209. package/skills/handling-sf-data/assets/bulk/bulk-insert-200.apex +0 -208
  1210. package/skills/handling-sf-data/assets/bulk/bulk-insert-500.apex +0 -219
  1211. package/skills/handling-sf-data/assets/bulk/bulk-upsert-external-id.apex +0 -324
  1212. package/skills/handling-sf-data/assets/cleanup/delete-by-created-date.apex +0 -319
  1213. package/skills/handling-sf-data/assets/cleanup/delete-by-name.apex +0 -240
  1214. package/skills/handling-sf-data/assets/cleanup/delete-test-data.apex +0 -311
  1215. package/skills/handling-sf-data/assets/cleanup/rollback-transaction.apex +0 -266
  1216. package/skills/handling-sf-data/assets/csv/account-import.csv +0 -11
  1217. package/skills/handling-sf-data/assets/csv/contact-import.csv +0 -11
  1218. package/skills/handling-sf-data/assets/csv/custom-object-import.csv +0 -11
  1219. package/skills/handling-sf-data/assets/csv/opportunity-import.csv +0 -11
  1220. package/skills/handling-sf-data/assets/factories/account-factory.apex +0 -165
  1221. package/skills/handling-sf-data/assets/factories/case-factory.apex +0 -237
  1222. package/skills/handling-sf-data/assets/factories/contact-factory.apex +0 -168
  1223. package/skills/handling-sf-data/assets/factories/custom-object-factory.apex +0 -260
  1224. package/skills/handling-sf-data/assets/factories/event-factory.apex +0 -275
  1225. package/skills/handling-sf-data/assets/factories/hierarchy-factory.apex +0 -372
  1226. package/skills/handling-sf-data/assets/factories/lead-factory.apex +0 -190
  1227. package/skills/handling-sf-data/assets/factories/opportunity-factory.apex +0 -206
  1228. package/skills/handling-sf-data/assets/factories/task-factory.apex +0 -246
  1229. package/skills/handling-sf-data/assets/factories/user-factory.apex +0 -278
  1230. package/skills/handling-sf-data/assets/json/account-contact-tree.json +0 -130
  1231. package/skills/handling-sf-data/assets/json/account-opportunity-tree.json +0 -110
  1232. package/skills/handling-sf-data/assets/json/full-hierarchy-tree.json +0 -188
  1233. package/skills/handling-sf-data/assets/soql/aggregate.soql +0 -226
  1234. package/skills/handling-sf-data/assets/soql/child-to-parent.soql +0 -162
  1235. package/skills/handling-sf-data/assets/soql/parent-to-child.soql +0 -153
  1236. package/skills/handling-sf-data/assets/soql/polymorphic.soql +0 -198
  1237. package/skills/handling-sf-data/assets/soql/subquery.soql +0 -287
  1238. package/skills/handling-sf-data/references/anonymous-apex-guide.md +0 -98
  1239. package/skills/handling-sf-data/references/bulk-operations-guide.md +0 -94
  1240. package/skills/handling-sf-data/references/bulk-testing-example.md +0 -194
  1241. package/skills/handling-sf-data/references/cleanup-rollback-example.md +0 -322
  1242. package/skills/handling-sf-data/references/cleanup-rollback-guide.md +0 -84
  1243. package/skills/handling-sf-data/references/crud-workflow-example.md +0 -183
  1244. package/skills/handling-sf-data/references/governor-limits-reference.md +0 -74
  1245. package/skills/handling-sf-data/references/orchestration.md +0 -174
  1246. package/skills/handling-sf-data/references/relationship-query-examples.md +0 -249
  1247. package/skills/handling-sf-data/references/sf-cli-data-commands.md +0 -158
  1248. package/skills/handling-sf-data/references/soql-relationship-guide.md +0 -84
  1249. package/skills/handling-sf-data/references/test-data-best-practices.md +0 -104
  1250. package/skills/handling-sf-data/references/test-data-factory-usage.md +0 -290
  1251. package/skills/handling-sf-data/references/test-data-patterns.md +0 -98
  1252. package/skills/handling-sf-data/scripts/soql_validator.py +0 -292
  1253. package/skills/handling-sf-data/scripts/validate_data_operation.py +0 -379
  1254. package/skills/harmonizing-datacloud/CREDITS.md +0 -3
  1255. package/skills/harmonizing-datacloud/README.md +0 -31
  1256. package/skills/harmonizing-datacloud/SKILL.md +0 -116
  1257. package/skills/implementing-ui-bundle-agentforce-conversation-client/SKILL.md +0 -280
  1258. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/agent-id-resolution.md +0 -46
  1259. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/constraints.md +0 -134
  1260. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/examples.md +0 -132
  1261. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/style-tokens.md +0 -260
  1262. package/skills/implementing-ui-bundle-agentforce-conversation-client/references/troubleshooting.md +0 -57
  1263. package/skills/implementing-ui-bundle-file-upload/SKILL.md +0 -398
  1264. package/skills/integrating-b2b-commerce-open-code-components/SKILL.md +0 -165
  1265. package/skills/investigating-agentforce-architecture/README.md +0 -156
  1266. package/skills/investigating-agentforce-architecture/SKILL.md +0 -230
  1267. package/skills/investigating-agentforce-architecture/assets/cli/describe_sobject.yaml +0 -16
  1268. package/skills/investigating-agentforce-architecture/assets/cli/describe_tooling_sobject.yaml +0 -17
  1269. package/skills/investigating-agentforce-architecture/assets/cli/list_metadata_genaiprompttemplate.yaml +0 -17
  1270. package/skills/investigating-agentforce-architecture/assets/cli/org_display.yaml +0 -15
  1271. package/skills/investigating-agentforce-architecture/assets/cli/retrieve_genai_plugin.yaml +0 -18
  1272. package/skills/investigating-agentforce-architecture/assets/cli/show_access_token.yaml +0 -27
  1273. package/skills/investigating-agentforce-architecture/assets/mermaid/action_tree.mmd +0 -20
  1274. package/skills/investigating-agentforce-architecture/assets/mermaid/data_flow.mmd +0 -19
  1275. package/skills/investigating-agentforce-architecture/assets/mermaid/dependency_graph.mmd +0 -19
  1276. package/skills/investigating-agentforce-architecture/assets/mermaid/invocation_sequence.mmd +0 -20
  1277. package/skills/investigating-agentforce-architecture/assets/mermaid/planner_state.mmd +0 -18
  1278. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_ids.soql +0 -3
  1279. package/skills/investigating-agentforce-architecture/assets/soql/apex_class_bodies_by_names.soql +0 -3
  1280. package/skills/investigating-agentforce-architecture/assets/soql/bot_definition_details.soql +0 -3
  1281. package/skills/investigating-agentforce-architecture/assets/soql/bot_version_lookup.soql +0 -4
  1282. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_by_ids.soql +0 -3
  1283. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_ids_by_names.soql +0 -3
  1284. package/skills/investigating-agentforce-architecture/assets/soql/flow_definition_view_by_durable_ids.soql +0 -4
  1285. package/skills/investigating-agentforce-architecture/assets/soql/flow_metadata_by_id.soql +0 -3
  1286. package/skills/investigating-agentforce-architecture/assets/soql/functions_by_plugins.soql +0 -5
  1287. package/skills/investigating-agentforce-architecture/assets/soql/planner_attrs_by_parent_ids.soql +0 -3
  1288. package/skills/investigating-agentforce-architecture/assets/soql/planner_bundle_functions.soql +0 -3
  1289. package/skills/investigating-agentforce-architecture/assets/soql/planner_definition_by_agent_chain.soql +0 -3
  1290. package/skills/investigating-agentforce-architecture/assets/soql/plugin_functions_by_plugin_ids.soql +0 -3
  1291. package/skills/investigating-agentforce-architecture/assets/soql/plugin_instructions_by_plugin_ids.soql +0 -3
  1292. package/skills/investigating-agentforce-architecture/assets/soql/plugins_by_planner.soql +0 -4
  1293. package/skills/investigating-agentforce-architecture/references/architecture_sections.md +0 -243
  1294. package/skills/investigating-agentforce-architecture/references/contract.json +0 -244
  1295. package/skills/investigating-agentforce-architecture/references/soql_fields.md +0 -512
  1296. package/skills/investigating-agentforce-architecture/scripts/_shared/__init__.py +0 -1
  1297. package/skills/investigating-agentforce-architecture/scripts/_shared/fs_guard.py +0 -329
  1298. package/skills/investigating-agentforce-architecture/scripts/_shared/paths.py +0 -110
  1299. package/skills/investigating-agentforce-architecture/scripts/_shared/runtime.py +0 -59
  1300. package/skills/investigating-agentforce-architecture/scripts/_shared/sql.py +0 -10
  1301. package/skills/investigating-agentforce-architecture/scripts/cache_check.py +0 -234
  1302. package/skills/investigating-agentforce-architecture/scripts/config.py +0 -131
  1303. package/skills/investigating-agentforce-architecture/scripts/fetch_soql.py +0 -689
  1304. package/skills/investigating-agentforce-architecture/scripts/finalize.py +0 -295
  1305. package/skills/investigating-agentforce-architecture/scripts/main.py +0 -2835
  1306. package/skills/investigating-agentforce-architecture/scripts/metadata_listing.py +0 -265
  1307. package/skills/investigating-agentforce-architecture/scripts/parallel_retrieve.py +0 -69
  1308. package/skills/investigating-agentforce-architecture/scripts/parse_bundle.py +0 -215
  1309. package/skills/investigating-agentforce-architecture/scripts/parse_wave.py +0 -845
  1310. package/skills/investigating-agentforce-architecture/scripts/probe_channels.py +0 -302
  1311. package/skills/investigating-agentforce-architecture/scripts/render_architecture.py +0 -1043
  1312. package/skills/investigating-agentforce-architecture/scripts/resolve_bot.py +0 -255
  1313. package/skills/investigating-agentforce-architecture/scripts/resolve_invocation_target.py +0 -130
  1314. package/skills/investigating-agentforce-architecture/scripts/rest_client.py +0 -763
  1315. package/skills/investigating-agentforce-architecture/scripts/retrieve_planner.py +0 -13
  1316. package/skills/investigating-agentforce-architecture/scripts/sf_cli.py +0 -242
  1317. package/skills/investigating-agentforce-architecture/scripts/soql_loader.py +0 -253
  1318. package/skills/investigating-agentforce-architecture/scripts/summarize_tree.py +0 -143
  1319. package/skills/investigating-agentforce-architecture/scripts/tests/__init__.py +0 -0
  1320. package/skills/investigating-agentforce-architecture/scripts/tests/_bootstrap.py +0 -23
  1321. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/__init__.py +0 -0
  1322. package/skills/investigating-agentforce-architecture/scripts/tests/fixtures/genai_payloads.py +0 -400
  1323. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check.py +0 -307
  1324. package/skills/investigating-agentforce-architecture/scripts/tests/test_cache_check_main.py +0 -283
  1325. package/skills/investigating-agentforce-architecture/scripts/tests/test_config.py +0 -115
  1326. package/skills/investigating-agentforce-architecture/scripts/tests/test_end_to_end_fixture.py +0 -651
  1327. package/skills/investigating-agentforce-architecture/scripts/tests/test_finalize.py +0 -278
  1328. package/skills/investigating-agentforce-architecture/scripts/tests/test_flow_children_inflation.py +0 -582
  1329. package/skills/investigating-agentforce-architecture/scripts/tests/test_fs_guard.py +0 -113
  1330. package/skills/investigating-agentforce-architecture/scripts/tests/test_iterative_wave_b.py +0 -478
  1331. package/skills/investigating-agentforce-architecture/scripts/tests/test_main_pipeline.py +0 -3359
  1332. package/skills/investigating-agentforce-architecture/scripts/tests/test_parallel_retrieve.py +0 -131
  1333. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_bundle.py +0 -400
  1334. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave.py +0 -644
  1335. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_classifiers.py +0 -224
  1336. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_helpers.py +0 -380
  1337. package/skills/investigating-agentforce-architecture/scripts/tests/test_parse_wave_main.py +0 -397
  1338. package/skills/investigating-agentforce-architecture/scripts/tests/test_per_branch_visited.py +0 -244
  1339. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_channels.py +0 -359
  1340. package/skills/investigating-agentforce-architecture/scripts/tests/test_probe_cli_recipes.py +0 -185
  1341. package/skills/investigating-agentforce-architecture/scripts/tests/test_render_architecture.py +0 -810
  1342. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_bot.py +0 -203
  1343. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_creds.py +0 -157
  1344. package/skills/investigating-agentforce-architecture/scripts/tests/test_resolve_invocation_target.py +0 -145
  1345. package/skills/investigating-agentforce-architecture/scripts/tests/test_rest_client.py +0 -1253
  1346. package/skills/investigating-agentforce-architecture/scripts/tests/test_runtime_override.py +0 -100
  1347. package/skills/investigating-agentforce-architecture/scripts/tests/test_sf_cli.py +0 -261
  1348. package/skills/investigating-agentforce-architecture/scripts/tests/test_signature_stamping.py +0 -466
  1349. package/skills/investigating-agentforce-architecture/scripts/tests/test_soql_loader.py +0 -501
  1350. package/skills/investigating-agentforce-architecture/scripts/tests/test_summarize_tree.py +0 -241
  1351. package/skills/investigating-agentforce-architecture/scripts/tests/test_write_emit_ctx.py +0 -480
  1352. package/skills/investigating-agentforce-architecture/tools/emit_env.py +0 -157
  1353. package/skills/investigating-agentforce-architecture/tools/emit_result.py +0 -262
  1354. package/skills/investigating-agentforce-architecture/tools/sanitize.py +0 -33
  1355. package/skills/investigating-agentforce-architecture/tools/write_emit_ctx.py +0 -332
  1356. package/skills/investigating-agentforce-d360/README.md +0 -123
  1357. package/skills/investigating-agentforce-d360/SKILL.md +0 -163
  1358. package/skills/investigating-agentforce-d360/assets/dc/app_generation.sql +0 -51
  1359. package/skills/investigating-agentforce-d360/assets/dc/content_category.sql +0 -44
  1360. package/skills/investigating-agentforce-d360/assets/dc/content_quality.sql +0 -41
  1361. package/skills/investigating-agentforce-d360/assets/dc/discover_sessions.sql +0 -36
  1362. package/skills/investigating-agentforce-d360/assets/dc/feedback.sql +0 -47
  1363. package/skills/investigating-agentforce-d360/assets/dc/feedback_details.sql +0 -38
  1364. package/skills/investigating-agentforce-d360/assets/dc/gateway_records.sql +0 -45
  1365. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_llm.sql +0 -50
  1366. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_metadata.sql +0 -44
  1367. package/skills/investigating-agentforce-d360/assets/dc/gateway_request_tags.sql +0 -42
  1368. package/skills/investigating-agentforce-d360/assets/dc/gateway_requests.sql +0 -89
  1369. package/skills/investigating-agentforce-d360/assets/dc/gateway_responses.sql +0 -43
  1370. package/skills/investigating-agentforce-d360/assets/dc/generations.sql +0 -52
  1371. package/skills/investigating-agentforce-d360/assets/dc/interactions.sql +0 -53
  1372. package/skills/investigating-agentforce-d360/assets/dc/messages.sql +0 -53
  1373. package/skills/investigating-agentforce-d360/assets/dc/messaging_session.sql +0 -37
  1374. package/skills/investigating-agentforce-d360/assets/dc/moment_interactions.sql +0 -34
  1375. package/skills/investigating-agentforce-d360/assets/dc/moments.sql +0 -39
  1376. package/skills/investigating-agentforce-d360/assets/dc/participants.sql +0 -48
  1377. package/skills/investigating-agentforce-d360/assets/dc/sessions.sql +0 -78
  1378. package/skills/investigating-agentforce-d360/assets/dc/steps.sql +0 -64
  1379. package/skills/investigating-agentforce-d360/assets/dc/tag_associations.sql +0 -46
  1380. package/skills/investigating-agentforce-d360/assets/dc/tag_definition_associations.sql +0 -37
  1381. package/skills/investigating-agentforce-d360/assets/dc/tag_definitions.sql +0 -50
  1382. package/skills/investigating-agentforce-d360/assets/dc/tags.sql +0 -37
  1383. package/skills/investigating-agentforce-d360/assets/dc/telemetry_spans.sql +0 -55
  1384. package/skills/investigating-agentforce-d360/references/artifacts.md +0 -50
  1385. package/skills/investigating-agentforce-d360/references/dc_dmo_fields.md +0 -823
  1386. package/skills/investigating-agentforce-d360/references/dc_pipeline_contract.md +0 -608
  1387. package/skills/investigating-agentforce-d360/scripts/_shared/__init__.py +0 -2
  1388. package/skills/investigating-agentforce-d360/scripts/_shared/cli_override.py +0 -98
  1389. package/skills/investigating-agentforce-d360/scripts/_shared/fs_guard.py +0 -334
  1390. package/skills/investigating-agentforce-d360/scripts/_shared/paths.py +0 -155
  1391. package/skills/investigating-agentforce-d360/scripts/_shared/runtime.py +0 -59
  1392. package/skills/investigating-agentforce-d360/scripts/_shared/sql.py +0 -14
  1393. package/skills/investigating-agentforce-d360/scripts/assemble_dc.py +0 -1624
  1394. package/skills/investigating-agentforce-d360/scripts/config.py +0 -45
  1395. package/skills/investigating-agentforce-d360/scripts/dc.py +0 -188
  1396. package/skills/investigating-agentforce-d360/scripts/discover_sessions.py +0 -556
  1397. package/skills/investigating-agentforce-d360/scripts/fetch_dc.py +0 -1045
  1398. package/skills/investigating-agentforce-d360/scripts/render_dc.py +0 -1750
  1399. package/skills/investigating-agentforce-d360/scripts/resolve_session.py +0 -264
  1400. package/skills/investigating-agentforce-d360/scripts/storage.py +0 -92
  1401. package/skills/investigating-agentforce-d360/scripts/tests/__init__.py +0 -0
  1402. package/skills/investigating-agentforce-d360/scripts/tests/_bootstrap.py +0 -15
  1403. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/__init__.py +0 -0
  1404. package/skills/investigating-agentforce-d360/scripts/tests/fixtures/synthetic_session.py +0 -424
  1405. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_bootstrap_and_mode.py +0 -115
  1406. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct.py +0 -220
  1407. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_gateway_direct_integration.py +0 -158
  1408. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_helpers.py +0 -287
  1409. package/skills/investigating-agentforce-d360/scripts/tests/test_assemble_dc_integration.py +0 -247
  1410. package/skills/investigating-agentforce-d360/scripts/tests/test_dc_and_resolve_session.py +0 -433
  1411. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions.py +0 -458
  1412. package/skills/investigating-agentforce-d360/scripts/tests/test_discover_sessions_grep_ci.py +0 -193
  1413. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_helpers.py +0 -266
  1414. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_identity.py +0 -528
  1415. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_main.py +0 -251
  1416. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall.py +0 -229
  1417. package/skills/investigating-agentforce-d360/scripts/tests/test_fetch_dc_waterfall_full.py +0 -283
  1418. package/skills/investigating-agentforce-d360/scripts/tests/test_identity_coherence.py +0 -327
  1419. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_branches.py +0 -256
  1420. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_gateway_direct.py +0 -130
  1421. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_helpers.py +0 -291
  1422. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_integration.py +0 -220
  1423. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_planner_llm_calls.py +0 -284
  1424. package/skills/investigating-agentforce-d360/scripts/tests/test_render_dc_show_prompts_gating.py +0 -215
  1425. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_from_disk.py +0 -100
  1426. package/skills/investigating-agentforce-d360/scripts/tests/test_resolve_session_main.py +0 -149
  1427. package/skills/investigating-agentforce-d360/scripts/tests/test_runtime_override.py +0 -104
  1428. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape.py +0 -95
  1429. package/skills/investigating-agentforce-d360/scripts/tests/test_session_shape_dropped_by_stdm.py +0 -85
  1430. package/skills/managing-cdc-enablement/SKILL.md +0 -164
  1431. package/skills/managing-cdc-enablement/assets/PlatformEventChannel-template.xml +0 -5
  1432. package/skills/managing-cdc-enablement/assets/PlatformEventChannelMember-template.xml +0 -11
  1433. package/skills/managing-cdc-enablement/references/deploy-troubleshooting.md +0 -73
  1434. package/skills/managing-cdc-enablement/references/filter-expressions.md +0 -93
  1435. package/skills/managing-managed-event-subscription/SKILL.md +0 -152
  1436. package/skills/managing-managed-event-subscription/assets/managed-event-subscription-template.xml +0 -20
  1437. package/skills/managing-managed-event-subscription/references/delete-guide.md +0 -57
  1438. package/skills/managing-managed-event-subscription/references/topic-name-formats.md +0 -26
  1439. package/skills/managing-managed-event-subscription/references/update-constraints.md +0 -30
  1440. package/skills/modeling-omnistudio-epc-catalog/CREDITS.md +0 -14
  1441. package/skills/modeling-omnistudio-epc-catalog/README.md +0 -89
  1442. package/skills/modeling-omnistudio-epc-catalog/SKILL.md +0 -394
  1443. package/skills/modeling-omnistudio-epc-catalog/assets/attribute-assignment-template.json +0 -402
  1444. package/skills/modeling-omnistudio-epc-catalog/assets/compiled-attribute-overrides-template.json +0 -43
  1445. package/skills/modeling-omnistudio-epc-catalog/assets/completion-block-template.txt +0 -8
  1446. package/skills/modeling-omnistudio-epc-catalog/assets/decomposition-relationships-template.json +0 -233
  1447. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_AttributeAssignments.json +0 -514
  1448. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_CompiledAttributeOverrides.json +0 -21
  1449. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DataPack.json +0 -649
  1450. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_DecompositionRelationships.json +0 -200
  1451. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ObjectFieldAttributes.json +0 -138
  1452. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OrchestrationScenarios.json +0 -54
  1453. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_OverrideDefinitions.json +0 -266
  1454. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ParentKeys.json +0 -23
  1455. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PriceListEntries.json +0 -54
  1456. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_PricebookEntries.json +0 -35
  1457. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_ProductChildItems.json +0 -34
  1458. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-premium-fttc-simple-offer/Business-Internet-Premium-FTTC_RuleAssignments.json +0 -21
  1459. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_AttributeAssignments.json +0 -410
  1460. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DataPack.json +0 -535
  1461. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_DecompositionRelationships.json +0 -35
  1462. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ObjectFieldAttributes.json +0 -138
  1463. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_OrchestrationScenarios.json +0 -28
  1464. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ParentKeys.json +0 -23
  1465. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PriceListEntries.json +0 -220
  1466. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_PricebookEntries.json +0 -35
  1467. package/skills/modeling-omnistudio-epc-catalog/assets/examples/business-internet-pro-vpl-simple-offer/Business-Internet-Pro-VPL_ProductChildItems.json +0 -414
  1468. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_AttributeAssignments.json +0 -382
  1469. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DataPack.json +0 -565
  1470. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_DecompositionRelationships.json +0 -35
  1471. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ObjectFieldAttributes.json +0 -104
  1472. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_OrchestrationScenarios.json +0 -28
  1473. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ParentKeys.json +0 -13
  1474. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PriceListEntries.json +0 -106
  1475. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_PricebookEntries.json +0 -35
  1476. package/skills/modeling-omnistudio-epc-catalog/assets/examples/samsung-galaxy-s22-bundle/Samsung-Galaxy-S22-Bundle_ProductChildItems.json +0 -72
  1477. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_AttributeAssignments.json +0 -142
  1478. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DataPack.json +0 -377
  1479. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_DecompositionRelationships.json +0 -35
  1480. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ObjectFieldAttributes.json +0 -36
  1481. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ParentKeys.json +0 -8
  1482. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PriceListEntries.json +0 -54
  1483. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_PricebookEntries.json +0 -35
  1484. package/skills/modeling-omnistudio-epc-catalog/assets/examples/static-ip-simple-offer/Static-IP_ProductChildItems.json +0 -34
  1485. package/skills/modeling-omnistudio-epc-catalog/assets/object-field-attributes-template.json +0 -138
  1486. package/skills/modeling-omnistudio-epc-catalog/assets/orchestration-scenarios-template.json +0 -54
  1487. package/skills/modeling-omnistudio-epc-catalog/assets/override-definitions-template.json +0 -134
  1488. package/skills/modeling-omnistudio-epc-catalog/assets/parent-keys-template.json +0 -29
  1489. package/skills/modeling-omnistudio-epc-catalog/assets/price-list-entries-template.json +0 -158
  1490. package/skills/modeling-omnistudio-epc-catalog/assets/pricebook-entries-template.json +0 -35
  1491. package/skills/modeling-omnistudio-epc-catalog/assets/product-child-item-template.json +0 -338
  1492. package/skills/modeling-omnistudio-epc-catalog/assets/product2-offer-template.json +0 -527
  1493. package/skills/modeling-omnistudio-epc-catalog/examples/.gitkeep +0 -1
  1494. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_AttributeAssignments.json +0 -95
  1495. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_CompiledAttributeOverrides.json +0 -1
  1496. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DataPack.json +0 -214
  1497. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_DecompositionRelationships.json +0 -28
  1498. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ObjectFieldAttributes.json +0 -98
  1499. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OrchestrationScenarios.json +0 -22
  1500. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_OverrideDefinitions.json +0 -1
  1501. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ParentKeys.json +0 -13
  1502. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PriceListEntries.json +0 -35
  1503. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_PricebookEntries.json +0 -28
  1504. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/Business-Internet-Plus_ProductChildItems.json +0 -110
  1505. package/skills/modeling-omnistudio-epc-catalog/examples/business-internet-plus-bundle/TRANSCRIPT.md +0 -58
  1506. package/skills/modeling-omnistudio-epc-catalog/references/epc-field-guide.md +0 -90
  1507. package/skills/modeling-omnistudio-epc-catalog/references/naming-conventions.md +0 -80
  1508. package/skills/modeling-omnistudio-epc-catalog/references/scoring-model.md +0 -57
  1509. package/skills/modeling-omnistudio-epc-catalog/scripts/cli-validation-commands.sh +0 -19
  1510. package/skills/modeling-omnistudio-epc-catalog/scripts/sample-invocations.sh +0 -18
  1511. package/skills/observing-agentforce/SKILL.md +0 -366
  1512. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls +0 -1262
  1513. package/skills/observing-agentforce/apex/AgentforceOptimizeService.cls-meta.xml +0 -5
  1514. package/skills/observing-agentforce/references/improve-reference.md +0 -359
  1515. package/skills/observing-agentforce/references/issue-classification.md +0 -220
  1516. package/skills/observing-agentforce/references/reproduce-reference.md +0 -131
  1517. package/skills/observing-agentforce/references/stdm-queries.md +0 -373
  1518. package/skills/observing-agentforce/references/stdm-schema.md +0 -189
  1519. package/skills/orchestrating-datacloud/CREDITS.md +0 -15
  1520. package/skills/orchestrating-datacloud/README.md +0 -127
  1521. package/skills/orchestrating-datacloud/SKILL.md +0 -235
  1522. package/skills/orchestrating-datacloud/UPSTREAM.md +0 -45
  1523. package/skills/orchestrating-datacloud/assets/definitions/activation-target.template.json +0 -5
  1524. package/skills/orchestrating-datacloud/assets/definitions/activation.template.json +0 -7
  1525. package/skills/orchestrating-datacloud/assets/definitions/calculated-insight.template.json +0 -7
  1526. package/skills/orchestrating-datacloud/assets/definitions/data-action-target.template.json +0 -5
  1527. package/skills/orchestrating-datacloud/assets/definitions/data-action.template.json +0 -5
  1528. package/skills/orchestrating-datacloud/assets/definitions/data-graph.template.json +0 -21
  1529. package/skills/orchestrating-datacloud/assets/definitions/data-stream.template.json +0 -55
  1530. package/skills/orchestrating-datacloud/assets/definitions/dmo.template.json +0 -17
  1531. package/skills/orchestrating-datacloud/assets/definitions/identity-resolution.template.json +0 -30
  1532. package/skills/orchestrating-datacloud/assets/definitions/mapping.template.json +0 -14
  1533. package/skills/orchestrating-datacloud/assets/definitions/relationship.template.json +0 -12
  1534. package/skills/orchestrating-datacloud/assets/definitions/search-index.template.json +0 -9
  1535. package/skills/orchestrating-datacloud/assets/definitions/segment.template.json +0 -16
  1536. package/skills/orchestrating-datacloud/references/feature-readiness.md +0 -157
  1537. package/skills/orchestrating-datacloud/references/plugin-setup.md +0 -138
  1538. package/skills/orchestrating-datacloud/scripts/bootstrap-plugin.sh +0 -53
  1539. package/skills/orchestrating-datacloud/scripts/diagnose-org.mjs +0 -511
  1540. package/skills/orchestrating-datacloud/scripts/generate-manifest.mjs +0 -68
  1541. package/skills/orchestrating-datacloud/scripts/verify-plugin.sh +0 -58
  1542. package/skills/platform-agentexchange-partner-offers-enable/SKILL.md +0 -111
  1543. package/skills/platform-agentexchange-partner-offers-enable/assets/org-pref-template.md +0 -27
  1544. package/skills/platform-agentexchange-partner-offers-enable/examples/org-preference-settings.xml +0 -4
  1545. package/skills/preparing-datacloud/CREDITS.md +0 -7
  1546. package/skills/preparing-datacloud/README.md +0 -51
  1547. package/skills/preparing-datacloud/SKILL.md +0 -190
  1548. package/skills/preparing-datacloud/examples/ingestion-api/.env.example +0 -8
  1549. package/skills/preparing-datacloud/examples/ingestion-api/README.md +0 -48
  1550. package/skills/preparing-datacloud/examples/ingestion-api/send-data.py +0 -144
  1551. package/skills/querying-soql/CREDITS.md +0 -21
  1552. package/skills/querying-soql/README.md +0 -41
  1553. package/skills/querying-soql/SKILL.md +0 -142
  1554. package/skills/querying-soql/assets/aggregate-queries.soql +0 -242
  1555. package/skills/querying-soql/assets/basic-queries.soql +0 -188
  1556. package/skills/querying-soql/assets/bulkified-query-pattern.cls +0 -280
  1557. package/skills/querying-soql/assets/optimization-patterns.soql +0 -259
  1558. package/skills/querying-soql/assets/relationship-queries.soql +0 -203
  1559. package/skills/querying-soql/assets/selector-class.cls +0 -219
  1560. package/skills/querying-soql/references/anti-patterns.md +0 -348
  1561. package/skills/querying-soql/references/cli-commands.md +0 -358
  1562. package/skills/querying-soql/references/field-coverage-rules.md +0 -514
  1563. package/skills/querying-soql/references/query-optimization.md +0 -142
  1564. package/skills/querying-soql/references/selector-patterns.md +0 -479
  1565. package/skills/querying-soql/references/soql-reference.md +0 -227
  1566. package/skills/querying-soql/references/soql-syntax-reference.md +0 -208
  1567. package/skills/querying-soql/scripts/post-tool-validate.py +0 -322
  1568. package/skills/retrieving-datacloud/CREDITS.md +0 -7
  1569. package/skills/retrieving-datacloud/README.md +0 -44
  1570. package/skills/retrieving-datacloud/SKILL.md +0 -119
  1571. package/skills/retrieving-datacloud/examples/search-indexes/hybrid-structured.json +0 -44
  1572. package/skills/retrieving-datacloud/examples/search-indexes/vector-knowledge.json +0 -43
  1573. package/skills/reviewing-lwc-mobile-offline/SKILL.md +0 -167
  1574. package/skills/reviewing-lwc-mobile-offline/references/grounding.md +0 -7
  1575. package/skills/reviewing-lwc-mobile-offline/references/inline-graphql.md +0 -43
  1576. package/skills/reviewing-lwc-mobile-offline/references/komaci-eslint.md +0 -125
  1577. package/skills/reviewing-lwc-mobile-offline/references/lwc-if.md +0 -78
  1578. package/skills/reviewing-lwc-mobile-offline/scripts/komaci.config.mjs +0 -18
  1579. package/skills/reviewing-lwc-mobile-offline/scripts/package.json +0 -10
  1580. package/skills/reviewing-lwc-mobile-offline/scripts/run-komaci.sh +0 -69
  1581. package/skills/running-apex-tests/CREDITS.md +0 -22
  1582. package/skills/running-apex-tests/README.md +0 -94
  1583. package/skills/running-apex-tests/SKILL.md +0 -157
  1584. package/skills/running-apex-tests/assets/basic-test.cls +0 -169
  1585. package/skills/running-apex-tests/assets/bulk-test.cls +0 -255
  1586. package/skills/running-apex-tests/assets/dml-mock.cls +0 -339
  1587. package/skills/running-apex-tests/assets/mock-callout-test.cls +0 -353
  1588. package/skills/running-apex-tests/assets/stub-provider-example.cls +0 -364
  1589. package/skills/running-apex-tests/assets/test-data-factory.cls +0 -328
  1590. package/skills/running-apex-tests/hooks/scripts/parse-test-results.py +0 -364
  1591. package/skills/running-apex-tests/references/cli-commands.md +0 -289
  1592. package/skills/running-apex-tests/references/mocking-patterns.md +0 -500
  1593. package/skills/running-apex-tests/references/performance-optimization.md +0 -283
  1594. package/skills/running-apex-tests/references/test-fix-loop.md +0 -49
  1595. package/skills/running-apex-tests/references/test-patterns.md +0 -154
  1596. package/skills/running-apex-tests/references/testing-best-practices.md +0 -509
  1597. package/skills/running-code-analyzer/SKILL.md +0 -495
  1598. package/skills/running-code-analyzer/examples/README.md +0 -38
  1599. package/skills/running-code-analyzer/examples/basic-scan-output.json +0 -92
  1600. package/skills/running-code-analyzer/examples/command-variations.md +0 -333
  1601. package/skills/running-code-analyzer/examples/fix-application-before-after.md +0 -142
  1602. package/skills/running-code-analyzer/examples/large-scan-output.json +0 -67
  1603. package/skills/running-code-analyzer/examples/security-focused-output.json +0 -95
  1604. package/skills/running-code-analyzer/references/command-examples.md +0 -27
  1605. package/skills/running-code-analyzer/references/engine-reference.md +0 -34
  1606. package/skills/running-code-analyzer/references/error-handling.md +0 -29
  1607. package/skills/running-code-analyzer/references/flag-reference.md +0 -96
  1608. package/skills/running-code-analyzer/references/post-scan-workflows.md +0 -286
  1609. package/skills/running-code-analyzer/references/quick-start.md +0 -28
  1610. package/skills/running-code-analyzer/references/special-behaviors.md +0 -83
  1611. package/skills/running-code-analyzer/references/vendor-file-handling.md +0 -239
  1612. package/skills/running-code-analyzer/scripts/apply-fixes.js +0 -86
  1613. package/skills/running-code-analyzer/scripts/describe-rule.js +0 -382
  1614. package/skills/running-code-analyzer/scripts/discover-fixes.js +0 -34
  1615. package/skills/running-code-analyzer/scripts/filter-violations.js +0 -405
  1616. package/skills/running-code-analyzer/scripts/list-rules.js +0 -260
  1617. package/skills/running-code-analyzer/scripts/parse-results.js +0 -59
  1618. package/skills/running-code-analyzer/scripts/query-results.js +0 -230
  1619. package/skills/running-code-analyzer/scripts/summarize-fixes.js +0 -32
  1620. package/skills/running-code-analyzer/scripts/verify-execution.sh +0 -28
  1621. package/skills/searching-media/SKILL.md +0 -348
  1622. package/skills/segmenting-datacloud/CREDITS.md +0 -3
  1623. package/skills/segmenting-datacloud/README.md +0 -36
  1624. package/skills/segmenting-datacloud/SKILL.md +0 -114
  1625. package/skills/switching-org/SKILL.md +0 -28
  1626. package/skills/testing-agentforce/SKILL.md +0 -333
  1627. package/skills/testing-agentforce/assets/basic-test-spec.yaml +0 -63
  1628. package/skills/testing-agentforce/assets/guardrail-test-spec.yaml +0 -105
  1629. package/skills/testing-agentforce/assets/standard-test-spec.yaml +0 -127
  1630. package/skills/testing-agentforce/references/action-execution.md +0 -241
  1631. package/skills/testing-agentforce/references/batch-testing.md +0 -274
  1632. package/skills/testing-agentforce/references/preview-testing.md +0 -353
  1633. package/skills/testing-agentforce/references/test-report-format.md +0 -160
  1634. package/skills/testing-agentforce/references/troubleshooting.md +0 -73
  1635. package/skills/uplifting-components-to-slds2/SKILL.md +0 -239
  1636. package/skills/uplifting-components-to-slds2/references/color-hooks-decision-guide.md +0 -459
  1637. package/skills/uplifting-components-to-slds2/references/common-patterns.md +0 -87
  1638. package/skills/uplifting-components-to-slds2/references/examples.md +0 -461
  1639. package/skills/uplifting-components-to-slds2/references/migration-checklist.md +0 -67
  1640. package/skills/uplifting-components-to-slds2/references/non-color-hooks-decision-guide.md +0 -333
  1641. package/skills/uplifting-components-to-slds2/references/rule-lwc-token-to-slds-hook.md +0 -135
  1642. package/skills/uplifting-components-to-slds2/references/rule-no-deprecated-tokens-slds1.md +0 -211
  1643. package/skills/uplifting-components-to-slds2/references/rule-no-hardcoded-values.md +0 -160
  1644. package/skills/uplifting-components-to-slds2/references/rule-no-slds-class-overrides.md +0 -126
  1645. package/skills/using-mobile-native-capabilities/SKILL.md +0 -181
  1646. package/skills/using-mobile-native-capabilities/references/app-review.md +0 -68
  1647. package/skills/using-mobile-native-capabilities/references/ar-space-capture.md +0 -125
  1648. package/skills/using-mobile-native-capabilities/references/barcode-scanner.md +0 -219
  1649. package/skills/using-mobile-native-capabilities/references/base-capability.md +0 -22
  1650. package/skills/using-mobile-native-capabilities/references/biometrics.md +0 -90
  1651. package/skills/using-mobile-native-capabilities/references/calendar.md +0 -213
  1652. package/skills/using-mobile-native-capabilities/references/contacts.md +0 -232
  1653. package/skills/using-mobile-native-capabilities/references/document-scanner.md +0 -342
  1654. package/skills/using-mobile-native-capabilities/references/geofencing.md +0 -123
  1655. package/skills/using-mobile-native-capabilities/references/location.md +0 -158
  1656. package/skills/using-mobile-native-capabilities/references/mobile-capabilities.md +0 -30
  1657. package/skills/using-mobile-native-capabilities/references/nfc.md +0 -181
  1658. package/skills/using-mobile-native-capabilities/references/payments.md +0 -95
  1659. package/skills/using-salesforce-archive/SKILL.md +0 -121
  1660. package/skills/using-salesforce-archive/examples/monitor-failed-jobs.md +0 -47
  1661. package/skills/using-salesforce-archive/references/archive-activity-entity.md +0 -59
  1662. package/skills/using-salesforce-archive/references/connect-api-operations.md +0 -157
  1663. package/skills/using-ui-bundle-salesforce-data/SKILL.md +0 -638
  1664. package/skills/using-ui-bundle-salesforce-data/scripts/graphql-search.sh +0 -191
  1665. package/skills/validating-slds/SKILL.md +0 -262
  1666. package/skills/validating-slds/references/quality-checks.md +0 -308
  1667. package/skills/validating-slds/references/report-format.md +0 -302
  1668. package/skills/validating-slds/scripts/analyze-quality.cjs +0 -521
@@ -1,1624 +0,0 @@
1
- """Assemble dc._session_tree.json from fetched DC artifacts.
2
-
3
- Given `DATA_ROOT/<sid>/dc.*.json` + `dc._session_manifest.json` (produced by
4
- `scripts/fetch_dc.py`), this module joins the rows in memory and emits:
5
-
6
- - dc._session_tree.json — session-rooted hierarchical view
7
- (Interaction → Step → Generation →
8
- GatewayRequest, with audit rows nested)
9
-
10
- The human-readable markdown summary is produced by a separate stage,
11
- `scripts/render_dc.py`, which reads only the tree.
12
-
13
- Design contract (see references/dc_pipeline_contract.md):
14
-
15
- - No DMO fetches. Pure in-memory compute over already-fetched artifacts.
16
- - Driven off `manifest["queries"][*]["name"]` — adding a 25th DMO to
17
- fetch_dc.py doesn't require changes here (it just won't be placed in
18
- the tree until the logic is extended).
19
- - Declared binding chain nests GatewayRequest under LLM_STEP via
20
- `Step.ssot__GenerationId__c → Generation → GatewayResponse → Request`.
21
- - Chain-orphan GW calls fall through to a timestamp-window rule
22
- (tier dominates: ACTION → TOPIC → TRUST_GUARDRAILS → any other;
23
- innermost Step wins within a tier).
24
- - PK collisions and parse warnings surface in `counts.*`, not stderr-only.
25
-
26
- Invocation:
27
- python3 scripts/assemble_dc.py --session <sid>
28
- """
29
- from __future__ import annotations
30
-
31
- import argparse
32
- import functools
33
- import html
34
- import json
35
- import re
36
- import sys
37
- from collections import defaultdict
38
- from dataclasses import dataclass, field
39
- from datetime import datetime
40
- from pathlib import Path
41
- from typing import Any, Dict, Iterable, List, Literal, Optional, Set, Tuple
42
-
43
- sys.path.insert(0, str(Path(__file__).parent))
44
-
45
- from config import DATA_ROOT, paths
46
-
47
-
48
- # ---- sentinels + constants -------------------------------------------------
49
-
50
- _NOT_SET = {"", "NOT_SET", None}
51
- _INTERNAL_TRACE_RE = re.compile(r'"internalTraceId":"([a-f0-9]+)"') # @rule-suppress starter-sec-002 — re.compile, not eval/exec
52
-
53
- # Real, non-placeholder agent version. Matches the canonical `^v[0-9]+$`
54
- # shape that paths.session_dir requires AND excludes the `v0` placeholder
55
- # stamped by fetch_dc's MyAgent fallback (fetch_dc.py:570-597).
56
- # Used by `_promote_identity` to decide whether session_identity carries
57
- # a richer agent_version that should win over a manifest placeholder.
58
- _REAL_VERSION_RE = re.compile(r'^v[0-9]+$') # @rule-suppress starter-sec-002 — re.compile, not eval/exec
59
-
60
- # Tier order for timestamp-window fallback. "any other" is an implicit last-resort
61
- # catch-all covering LLM_STEP (without declared binding), SESSION_END, and any
62
- # future step types not explicitly listed.
63
- _TIER_ORDER = ("ACTION_STEP", "TOPIC_STEP", "TRUST_GUARDRAILS_STEP")
64
-
65
- # Canonical identity-field name → ordered list of `gateway_request_tags.tag__c`
66
- # values that carry it, tried in order. Agent versions emit different tag
67
- # names: newer Atlas ReAct agents use `agent_developer_name` /
68
- # `agent_version_api_name`; legacy MyAgent builds omit the developer
69
- # name entirely and use the unprefixed `version_api_name`. First non-null
70
- # value wins. A single-element list means "no fallback known."
71
- _TAG_KEY_ALIASES: Dict[str, Tuple[str, ...]] = {
72
- "agent_api_name": ("agent_developer_name",),
73
- "agent_version": ("agent_version_api_name", "version_api_name"),
74
- }
75
-
76
-
77
- # ---- typed namespaces ------------------------------------------------------
78
- #
79
- # Four frozen dataclasses replace the former dict-bags. frozen=True guards
80
- # attribute re-assignment, not mutation of the dict values themselves — the
81
- # producers are responsible for handing in plain dicts (not defaultdicts) so
82
- # downstream helpers don't rely on auto-creation the type doesn't promise.
83
-
84
- @dataclass(frozen=True)
85
- class Indexes:
86
- interactions_by_id: Dict[str, dict]
87
- participants_by_id: Dict[str, dict]
88
- generations_by_id: Dict[str, dict]
89
- gw_req_by_id: Dict[str, dict]
90
- gw_resp_by_resp_id: Dict[str, dict]
91
- feedback_by_id: Dict[str, dict]
92
- gw_resp_by_req_id: Dict[str, List[dict]]
93
- steps_by_interaction: Dict[str, List[dict]]
94
- messages_by_interaction: Dict[str, List[dict]]
95
- gw_tags_by_parent: Dict[str, List[dict]]
96
- gw_md_by_parent: Dict[str, List[dict]]
97
- gw_llm_by_parent: Dict[str, List[dict]]
98
- quality_by_parent: Dict[str, List[dict]]
99
- quality_by_id: Dict[str, dict]
100
- feedback_by_gen: Dict[str, List[dict]]
101
- feedback_details_by_parent: Dict[str, List[dict]]
102
- participant_role_by_id: Dict[str, Optional[str]]
103
-
104
-
105
- @dataclass(frozen=True)
106
- class PolymorphicSplits:
107
- categories_by_generation: Dict[str, List[dict]]
108
- categories_by_quality: Dict[str, List[dict]]
109
- gw_records_by_gw_req: Dict[str, List[dict]]
110
- gw_records_by_feedback: Dict[str, List[dict]]
111
- tag_assoc_session: List[dict]
112
- tag_assoc_by_interaction: Dict[str, List[dict]]
113
- tag_assoc_by_moment: Dict[str, List[dict]]
114
-
115
-
116
- @dataclass(frozen=True)
117
- class BindingResults:
118
- declared_gw_ids: Set[str]
119
- declared_steps_with_gw: frozenset
120
- step_id_to_gw_id: Dict[str, Optional[str]]
121
- declared_collisions: int
122
-
123
-
124
- @dataclass(frozen=True)
125
- class Catalog:
126
- agents_observed: List[str]
127
- tag_definitions: List[dict]
128
- tag_definition_associations: List[dict]
129
- tags: List[dict]
130
-
131
-
132
- @dataclass
133
- class BinderCtx:
134
- """Per-interaction scratch state used only by the timestamp-window pass.
135
-
136
- Kept in a parallel `Dict[iid, BinderCtx]` instead of stashed on the
137
- interaction view, so binder state can never leak into the emitted tree.
138
- """
139
- start_ts: Optional[datetime]
140
- end_ts: Optional[datetime]
141
- steps_with_ts: List[Tuple[dict, Optional[datetime], Optional[datetime]]]
142
- reserved_step_ids: frozenset
143
-
144
-
145
- # ---- session-dir resolution ----------------------------------------------
146
-
147
- def _find_session_dir(sid: str) -> Path:
148
- """Locate the session dir under the nested layout.
149
-
150
- Given only a session id, we don't know ``(org, agent, version)`` upfront.
151
- Strategy:
152
-
153
- 1. Validate ``sid`` against ``paths.SESSION_ID_RE`` at entry. ``sid`` comes
154
- in via argv / resolve_session and flows directly into path composition
155
- (``<org>/_sessions/<sid>.link``) and glob patterns; an unvalidated
156
- value here would undo the traversal guard added in PR #657 BLOCKER-2.
157
- 2. Breadcrumb lookup: ``DATA_ROOT/<org>/_sessions/<sid>.link`` is a plain-
158
- text relative-path pointer written by ``storage.save``. Iterate all
159
- orgs, read each ``.link``, resolve against the breadcrumb's parent,
160
- and **enforce containment** — a tampered or stale breadcrumb whose
161
- target escapes ``DATA_ROOT`` is skipped (not raised) so a single
162
- malicious breadcrumb can't DoS the whole resolver. Falls through to
163
- the glob fallback on any breadcrumb miss.
164
- 3. Glob fallback: ``DATA_ROOT/*/*/<sid>/`` — ``sid`` is now validated at
165
- entry so the pattern is fixed-depth and cannot glob outside its
166
- intended 2-level subtree.
167
- 4. Raise ``SystemExit`` with a clear hint to run fetch_dc.py first.
168
-
169
- Returns the absolute directory path.
170
- """
171
- # Validate first — rejects "../etc", "a/b", "", None, and control chars.
172
- # ``sid`` from here on is safe to use as a path segment and as the tail
173
- # of a fixed-depth glob.
174
- paths.validate_session_id(sid)
175
- root = paths.DATA_ROOT
176
- if root.is_dir():
177
- # Resolve DATA_ROOT once so containment checks don't repeat the walk.
178
- root_resolved = root.resolve()
179
- for org_dir in root.iterdir():
180
- if not org_dir.is_dir():
181
- continue
182
- link = org_dir / "_sessions" / f"{sid}.link"
183
- if link.is_file():
184
- try:
185
- rel = link.read_text().strip()
186
- except OSError:
187
- continue
188
- # Resolve relative to the breadcrumb's parent (_sessions/),
189
- # then enforce that the resolved path stays inside
190
- # DATA_ROOT. ``.link`` contents are user-writable — a planted
191
- # breadcrumb with ``../../../../etc/passwd`` must NOT pivot
192
- # the assembler outside the plugin's data tree.
193
- target = (link.parent / rel).resolve()
194
- if not target.is_relative_to(root_resolved):
195
- # Stale or malicious breadcrumb. Skip — fall through to
196
- # the glob fallback rather than raising, so one bad
197
- # breadcrumb in one org doesn't block discovery in
198
- # another.
199
- continue
200
- if target.is_dir():
201
- return target
202
- # Glob fallback. ``sid`` is validated; the pattern is fixed-depth.
203
- matches = list(root.glob(f"*/*/{sid}"))
204
- if len(matches) == 1:
205
- return matches[0]
206
- if len(matches) > 1:
207
- # Placeholder agent dirs (leading-underscore name like
208
- # ``<org>/_agent_<botid>__v0/``) mark provisional sessions
209
- # whose identity wasn't fully resolved at first write. When a
210
- # real (agent, version) dir also exists for the same session,
211
- # it's the authoritative home; the placeholder is stale.
212
- # Prefer the real dir.
213
- real = [p for p in matches if not p.parent.name.startswith("_")]
214
- if len(real) == 1:
215
- return real[0]
216
- raise SystemExit(
217
- f"assemble_dc: session {sid} resolves to {len(matches)} dirs "
218
- f"under {root} — ambiguous. Check for duplicate sessions "
219
- f"across agents."
220
- )
221
- raise SystemExit(
222
- f"assemble_dc: session dir for {sid} not found under {root}; "
223
- f"run fetch_dc.py first"
224
- )
225
-
226
-
227
- # ---- loaders ---------------------------------------------------------------
228
-
229
- def _load(session_dir: Path, name: str, parse_warnings: List[str]) -> List[dict]:
230
- """Load dc.<name>.json from session_dir. Missing → []. Malformed → [] + warning."""
231
- p = session_dir / f"dc.{name}.json"
232
- if not p.is_file():
233
- return []
234
- try:
235
- return json.loads(p.read_text())
236
- except (json.JSONDecodeError, OSError) as e:
237
- print(f"assemble_dc: WARN dc.{name}.json unreadable: {str(e).splitlines()[0]}",
238
- file=sys.stderr)
239
- parse_warnings.append(name)
240
- return []
241
-
242
-
243
- def _load_manifest(session_dir: Path) -> dict:
244
- p = session_dir / "dc._session_manifest.json"
245
- if not p.is_file():
246
- raise SystemExit(
247
- f"assemble_dc: manifest not found at {p}; run fetch_dc.py first"
248
- )
249
- manifest = json.loads(p.read_text())
250
- if "queries" not in manifest:
251
- raise SystemExit("assemble_dc: manifest schema changed — no 'queries' key")
252
- return manifest
253
-
254
-
255
- def _load_all(sid: str) -> Tuple[dict, Dict[str, List[dict]], List[str], Path]:
256
- """Return (manifest, rows_by_name, parse_warnings, session_dir).
257
-
258
- Iterates manifest["queries"][*]["name"] rather than a hard-coded list —
259
- a new DMO added to fetch_dc.py is picked up automatically.
260
- """
261
- session_dir = _find_session_dir(sid)
262
- manifest = _load_manifest(session_dir)
263
- parse_warnings: List[str] = []
264
- rows = {
265
- q["name"]: _load(session_dir, q["name"], parse_warnings)
266
- for q in manifest["queries"]
267
- }
268
- return manifest, rows, parse_warnings, session_dir
269
-
270
-
271
- # ---- small helpers ---------------------------------------------------------
272
-
273
- def _clean(value: Any) -> Any:
274
- """NOT_SET sentinel → None. Other values pass through."""
275
- return None if value in _NOT_SET else value
276
-
277
-
278
- def _harvest_str(value: Any) -> Optional[str]:
279
- """Harvest-layer string normalizer for the session-identity block.
280
-
281
- Handles three quirks that `_clean` deliberately does not:
282
- 1. **html.unescape** — tag values arrive double-escaped
283
- (`"&quot;0Xx…&quot;"`).
284
- 2. **Quote-strip** — after unescape most tag values are wrapped in
285
- literal `"` characters; strip them.
286
- 3. **`UNSET_VALUE` sentinel** — Data Cloud emits this on a small set
287
- of optional columns (e.g. `gateway_requests.promptTemplateVersionNo__c`,
288
- certain `tag_first` values on cold-start sessions). Not observed
289
- on the columns `_build_session_identity` currently reads, but
290
- included defensively since the sentinel is part of the DC schema
291
- contract and a harvest-layer reader should collapse it to None.
292
-
293
- The binding / index layer uses `_clean()` / `_NOT_SET` which
294
- intentionally omits these rules — they would be noise there.
295
- """
296
- if value is None:
297
- return None
298
- s = html.unescape(str(value)).strip()
299
- if len(s) >= 2 and s.startswith('"') and s.endswith('"'):
300
- s = s[1:-1]
301
- return None if s in ("", "NOT_SET", "UNSET_VALUE") else s
302
-
303
-
304
- def _promote_identity(
305
- manifest_value: Any,
306
- session_identity_value: Any,
307
- *,
308
- kind: Literal["api_name", "version"],
309
- ) -> Any:
310
- """Pick the richer of (manifest, session_identity) for a top-level identity slot.
311
-
312
- Background. ``fetch_dc._resolve_identity`` walks AGENT-role participant
313
- rows for ``(api_name, version)``. On agent shapes like MyAgent the
314
- AGENT rows can leave both fields NOT_SET, so the resolver falls back
315
- (fetch_dc.py:570-597) to picking ``api_name`` from any participant row
316
- and stamping ``version="v0"`` as a placeholder satisfying
317
- ``paths.session_dir``'s ``^v[0-9]+$`` shape. The placeholder is enough
318
- to land the session in a directory, but it's wrong: by wave 5 the
319
- fetch has materialized ``gateway_request_tags`` rows carrying the real
320
- ``agent_version_api_name`` (e.g. ``v24``), and ``_build_session_identity``
321
- correctly harvests it onto ``session.identity``. The top-level
322
- ``identity`` block was previously copied verbatim from the manifest,
323
- so the placeholder leaked downstream while the right value sat
324
- visible in the same JSON.
325
-
326
- Policy:
327
-
328
- - ``kind="version"``: if manifest is the ``"v0"`` placeholder AND
329
- session_identity carries a non-``v0`` value matching ``^v[0-9]+$``,
330
- promote. Otherwise keep manifest.
331
- - ``kind="api_name"``: if manifest is NOT_SET-ish (None / "" / "NOT_SET"
332
- / "NOT SET") AND session_identity has a real value, promote.
333
- Otherwise keep manifest. (Crucially, when session_identity is None
334
- and manifest has a value, we keep manifest — the strict AGENT-row
335
- pick is intentional on healthy sessions.)
336
- - When manifest and session_identity both carry real-but-disagreeing
337
- values, the manifest wins. The strict AGENT-row pick is the
338
- authoritative source on a normal session; we only promote in the
339
- narrow case where the manifest carries a known placeholder /
340
- NOT_SET sentinel and the harvest layer has something better.
341
- """
342
- if kind == "version":
343
- if manifest_value != "v0":
344
- return manifest_value
345
- if not isinstance(session_identity_value, str):
346
- return manifest_value
347
- if session_identity_value == "v0":
348
- return manifest_value
349
- if not _REAL_VERSION_RE.match(session_identity_value):
350
- return manifest_value
351
- return session_identity_value
352
- # kind == "api_name"
353
- if manifest_value not in (None, "", "NOT_SET", "NOT SET"):
354
- return manifest_value
355
- if isinstance(session_identity_value, str) and session_identity_value:
356
- return session_identity_value
357
- return manifest_value
358
-
359
-
360
- def _reconcile_top_identity(
361
- manifest: dict, session_identity: dict, org_id_15: Any,
362
- ) -> dict:
363
- """Build the top-level ``identity`` block, promoting placeholders.
364
-
365
- Centralizes the policy in one place so the happy path
366
- (`_assemble_session`) and the gateway-direct fallback don't drift
367
- apart. Emits a stderr note when promotion fires so an investigator
368
- sees the divergence at run time.
369
- """
370
- manifest_api = manifest.get("agent_api_name")
371
- manifest_ver = manifest.get("agent_version")
372
- session_api = session_identity.get("agent_api_name")
373
- session_ver = session_identity.get("agent_version")
374
-
375
- promoted_api = _promote_identity(manifest_api, session_api, kind="api_name")
376
- promoted_ver = _promote_identity(manifest_ver, session_ver, kind="version")
377
-
378
- if promoted_api != manifest_api:
379
- print(
380
- f"assemble_dc: identity promoted: agent_api_name "
381
- f"{manifest_api!r} -> {promoted_api!r} (from session.identity)",
382
- file=sys.stderr,
383
- )
384
- if promoted_ver != manifest_ver:
385
- print(
386
- f"assemble_dc: identity promoted: agent_version "
387
- f"{manifest_ver} -> {promoted_ver} (from session.identity)",
388
- file=sys.stderr,
389
- )
390
-
391
- return {
392
- "org_id_15": org_id_15,
393
- "agent_api_name": promoted_api,
394
- "agent_version": promoted_ver,
395
- }
396
-
397
-
398
- def _resolve_end_type(session_row: dict, rows: dict) -> Optional[str]:
399
- """Resolve the session's terminal outcome with a Session→Step fallback.
400
-
401
- Session DMO's ``ssot__AiAgentSessionEndType__c`` is authoritative when
402
- populated, but on Messaging-channel and short E&O sessions it stays
403
- ``NOT_SET`` even after the SESSION_END interaction has materialized.
404
- The runtime writes the actual outcome (``CLOSED_USER_REQUEST``,
405
- ``USER_ENDED``, ``ESCALATED``, ``TRANSFERRED``, ``TIMEOUT``) onto the
406
- SESSION_END step's ``ssot__Name__c`` instead. Fall through to that
407
- step when Session.EndType is missing, so the rendered summary stops
408
- saying "session end not yet materialized in STDM" for sessions that
409
- actually completed cleanly.
410
- """
411
- primary = _clean(session_row.get("ssot__AiAgentSessionEndType__c"))
412
- if primary:
413
- return primary
414
- for step in rows.get("steps", []) or ():
415
- if step.get("ssot__AiAgentInteractionStepType__c") == "SESSION_END":
416
- name = _clean(step.get("ssot__Name__c"))
417
- if name:
418
- return name
419
- return None
420
-
421
-
422
- def _ts(value: Any) -> Optional[datetime]:
423
- """Parse an ISO-8601 timestamp. NOT_SET / non-string → None (unbounded)."""
424
- if not isinstance(value, str) or value in _NOT_SET:
425
- return None
426
- try:
427
- return datetime.fromisoformat(value.replace("Z", "+00:00"))
428
- except ValueError:
429
- return None
430
-
431
-
432
- def _index_unique(rows: Iterable[dict], key: str,
433
- collisions: List[dict], dmo_label: str) -> Dict[str, dict]:
434
- """Build a {key_value: row} dict. On collision: first-write-wins + record."""
435
- out: Dict[str, dict] = {}
436
- for r in rows:
437
- k = r.get(key)
438
- if k in _NOT_SET:
439
- continue
440
- if k in out:
441
- collisions.append({"dmo": dmo_label, "key": k})
442
- else:
443
- out[k] = r
444
- return out
445
-
446
-
447
- def _groupby(rows: Iterable[dict], key: str) -> Dict[str, List[dict]]:
448
- out: Dict[str, List[dict]] = defaultdict(list)
449
- for r in rows:
450
- k = r.get(key)
451
- if k not in _NOT_SET:
452
- out[k].append(r)
453
- return dict(out)
454
-
455
-
456
- def _extract_trace_id(interaction: dict) -> Optional[str]:
457
- """Prefer the primary column; fall back to AttributeText regex."""
458
- tid = interaction.get("ssot__TelemetryTraceId__c")
459
- if tid and tid not in _NOT_SET:
460
- return tid
461
- attr = interaction.get("ssot__AttributeText__c") or ""
462
- if not attr:
463
- return None
464
- m = _INTERNAL_TRACE_RE.search(html.unescape(attr))
465
- return m.group(1) if m else None
466
-
467
-
468
- # ---- declared binding chain ------------------------------------------------
469
-
470
- def _declared_gw_for_step(step: dict,
471
- generations_by_id: Dict[str, dict],
472
- gw_resp_by_resp_id: Dict[str, dict],
473
- gw_req_by_id: Dict[str, dict]) -> Optional[dict]:
474
- """Step → Generation → Response → Request. Returns the GatewayRequest row or None."""
475
- gen_id = step.get("ssot__GenerationId__c")
476
- if gen_id in _NOT_SET:
477
- return None
478
- gen = generations_by_id.get(gen_id)
479
- if not gen:
480
- return None
481
- resp_id = gen.get("generationResponseId__c")
482
- if resp_id in _NOT_SET:
483
- return None
484
- resp = gw_resp_by_resp_id.get(resp_id)
485
- if not resp:
486
- return None
487
- req_id = resp.get("generationRequestId__c")
488
- if req_id in _NOT_SET:
489
- return None
490
- return gw_req_by_id.get(req_id)
491
-
492
-
493
- # ---- timestamp-window fallback --------------------------------------------
494
-
495
- def _tier(step_type: str) -> int:
496
- """Lower is better. 0 = ACTION, 1 = TOPIC, 2 = GUARDRAIL, 3 = any other."""
497
- try:
498
- return _TIER_ORDER.index(step_type)
499
- except ValueError:
500
- return len(_TIER_ORDER) # "any other"
501
-
502
-
503
- def _window_contains(gw_ts: datetime, start: Optional[datetime],
504
- end: Optional[datetime]) -> bool:
505
- """Closed-closed containment. None end_ts → +∞. Missing start → no match."""
506
- if start is None:
507
- return False
508
- if gw_ts < start:
509
- return False
510
- if end is None:
511
- return True # open-ended upward
512
- return gw_ts <= end
513
-
514
-
515
- def _bind_ts_window(gw_req: dict,
516
- steps_with_ts: List[Tuple[dict, datetime, Optional[datetime]]],
517
- interaction_window: Tuple[Optional[datetime], Optional[datetime]],
518
- reserved_step_ids: "frozenset[str]") -> Tuple[str, Optional[str]]:
519
- """Return (placement, bound_step_id).
520
-
521
- placement ∈ {"step", "interaction", "unbound"}.
522
- bound_step_id is set only when placement == "step".
523
- """
524
- gw_ts_raw = gw_req.get("timestamp__c")
525
- gw_ts = _ts(gw_ts_raw)
526
- if gw_ts is None:
527
- return ("unbound", None)
528
-
529
- # Step candidates: contains gw_ts AND not already declared-bound.
530
- candidates = [
531
- (step, start, end)
532
- for step, start, end in steps_with_ts
533
- if step["ssot__Id__c"] not in reserved_step_ids
534
- and _window_contains(gw_ts, start, end)
535
- ]
536
- if candidates:
537
- # Best tier → innermost (shortest window) → latest start_ts.
538
- def sort_key(c):
539
- step, start, end = c
540
- tier = _tier(step.get("ssot__AiAgentInteractionStepType__c", ""))
541
- # Window size; treat None end_ts as "longest" (so nested closed wins).
542
- if end is None:
543
- width = float("inf")
544
- else:
545
- width = (end - start).total_seconds()
546
- # Invert latest-start-wins by negating seconds since epoch.
547
- return (tier, width, -start.timestamp())
548
- candidates.sort(key=sort_key)
549
- winner = candidates[0][0]
550
- return ("step", winner["ssot__Id__c"])
551
-
552
- # Interaction window.
553
- i_start, i_end = interaction_window
554
- if _window_contains(gw_ts, i_start, i_end):
555
- return ("interaction", None)
556
- return ("unbound", None)
557
-
558
-
559
- # ---- gateway-request view builder -----------------------------------------
560
-
561
- def _build_gw_view(gw_req: dict, binding_method: str, *,
562
- idx: Indexes, dispatch: PolymorphicSplits,
563
- bound_step_id: Optional[str] = None) -> dict:
564
- """Build one GatewayRequest view row.
565
-
566
- `idx` and `dispatch` are kw-only so `functools.partial(_build_gw_view,
567
- idx=..., dispatch=...)` bindings don't collide with positional args at
568
- the 3 call sites (declared / timestamp_window / unbound).
569
- """
570
- gw_id = gw_req["gatewayRequestId__c"]
571
- responses = idx.gw_resp_by_req_id.get(gw_id, [])
572
- view: Dict[str, Any] = {
573
- "binding_method": binding_method,
574
- "gateway_request_id": gw_id,
575
- "feature": _clean(gw_req.get("feature__c")),
576
- "model": _clean(gw_req.get("model__c")),
577
- "provider": _clean(gw_req.get("provider__c")),
578
- "prompt_template_dev_name": _clean(gw_req.get("promptTemplateDevName__c")),
579
- "prompt_tokens": gw_req.get("promptTokens__c"),
580
- "completion_tokens": gw_req.get("completionTokens__c"),
581
- "total_tokens": gw_req.get("totalTokens__c"),
582
- # Carry the raw input prompt through the hierarchical view so the
583
- # renderer can surface it in the opt-in "Planner LLM calls" section.
584
- # The 64 KB display cap lives in render_dc, not here — the tree
585
- # stores the authoritative payload.
586
- "prompt_text": gw_req.get("prompt__c"),
587
- "response": responses[0] if responses else None,
588
- "tags": idx.gw_tags_by_parent.get(gw_id, []),
589
- "records": dispatch.gw_records_by_gw_req.get(gw_id, []),
590
- "metadata": idx.gw_md_by_parent.get(gw_id, []),
591
- "llm": idx.gw_llm_by_parent.get(gw_id, []),
592
- }
593
- if bound_step_id is not None:
594
- view["bound_to_step_id"] = bound_step_id
595
- return view
596
-
597
-
598
- # ---- main assembly ---------------------------------------------------------
599
-
600
- def _build_indexes(rows: Dict[str, List[dict]], collisions: List[dict]) -> Indexes:
601
- """Build all primary-key dicts and groupby tables. Returns a frozen Indexes."""
602
- return Indexes(
603
- interactions_by_id=_index_unique(
604
- rows.get("interactions", []), "ssot__Id__c", collisions, "interactions_by_id"),
605
- participants_by_id=_index_unique(
606
- rows.get("participants", []), "ssot__Id__c", collisions, "participants_by_id"),
607
- generations_by_id=_index_unique(
608
- rows.get("generations", []), "generationId__c", collisions, "generations_by_id"),
609
- gw_req_by_id=_index_unique(
610
- rows.get("gateway_requests", []), "gatewayRequestId__c", collisions, "gw_req_by_id"),
611
- gw_resp_by_resp_id=_index_unique(
612
- rows.get("gateway_responses", []), "generationResponseId__c",
613
- collisions, "gw_resp_by_resp_id"),
614
- feedback_by_id=_index_unique(
615
- rows.get("feedback", []), "feedbackId__c", collisions, "feedback_by_id"),
616
- gw_resp_by_req_id=_groupby(rows.get("gateway_responses", []), "generationRequestId__c"),
617
- steps_by_interaction=_groupby(rows.get("steps", []), "ssot__AiAgentInteractionId__c"),
618
- messages_by_interaction=_groupby(rows.get("messages", []), "ssot__AiAgentInteractionId__c"),
619
- gw_tags_by_parent=_groupby(rows.get("gateway_request_tags", []), "parent__c"),
620
- gw_md_by_parent=_groupby(rows.get("gateway_request_metadata", []), "parent__c"),
621
- gw_llm_by_parent=_groupby(rows.get("gateway_request_llm", []), "parent__c"),
622
- quality_by_parent=_groupby(rows.get("content_quality", []), "parent__c"),
623
- quality_by_id={q["id__c"]: q for q in rows.get("content_quality", []) if q.get("id__c")},
624
- feedback_by_gen=_groupby(rows.get("feedback", []), "generationId__c"),
625
- feedback_details_by_parent=_groupby(rows.get("feedback_details", []), "parent__c"),
626
- participant_role_by_id={
627
- p["ssot__Id__c"]: p.get("ssot__AiAgentSessionParticipantRole__c")
628
- for p in rows.get("participants", []) if p.get("ssot__Id__c")
629
- },
630
- )
631
-
632
-
633
- def _dispatch_polymorphic(rows: Dict[str, List[dict]], idx: Indexes) -> PolymorphicSplits:
634
- """Split ContentCategory, GtwyObjRecord, and TagAssociation by polymorphic parent.
635
-
636
- Producers accumulate into defaultdicts for ergonomics, but the returned
637
- dataclass stores plain dicts — frozen `Dict[...]` typing can't promise
638
- auto-creation, so don't let it leak.
639
- """
640
- # ContentCategory: parent is either a generation or a quality row.
641
- cat_by_gen: Dict[str, List[dict]] = defaultdict(list)
642
- cat_by_qual: Dict[str, List[dict]] = defaultdict(list)
643
- for cat in rows.get("content_category", []):
644
- parent = cat.get("parent__c")
645
- if parent in _NOT_SET:
646
- continue
647
- if parent in idx.generations_by_id:
648
- cat_by_gen[parent].append(cat)
649
- elif parent in idx.quality_by_id:
650
- cat_by_qual[parent].append(cat)
651
-
652
- # GtwyObjRecord: parent is either a gateway_request or a feedback row.
653
- rec_by_gw: Dict[str, List[dict]] = defaultdict(list)
654
- rec_by_fb: Dict[str, List[dict]] = defaultdict(list)
655
- for rec in rows.get("gateway_records", []):
656
- parent = rec.get("parent__c")
657
- if parent in _NOT_SET:
658
- continue
659
- if parent in idx.gw_req_by_id:
660
- rec_by_gw[parent].append(rec)
661
- elif parent in idx.feedback_by_id:
662
- rec_by_fb[parent].append(rec)
663
-
664
- # TagAssociation: exactly one of session/interaction/moment FK is populated.
665
- ta_session: List[dict] = []
666
- ta_by_int: Dict[str, List[dict]] = defaultdict(list)
667
- ta_by_mom: Dict[str, List[dict]] = defaultdict(list)
668
- for ta in rows.get("tag_associations", []):
669
- if ta.get("ssot__AiAgentSessionId__c") not in _NOT_SET:
670
- ta_session.append(ta)
671
- elif ta.get("ssot__AiAgentInteractionId__c") not in _NOT_SET:
672
- ta_by_int[ta["ssot__AiAgentInteractionId__c"]].append(ta)
673
- elif ta.get("ssot__AiAgentMomentId__c") not in _NOT_SET:
674
- ta_by_mom[ta["ssot__AiAgentMomentId__c"]].append(ta)
675
-
676
- return PolymorphicSplits(
677
- categories_by_generation=dict(cat_by_gen),
678
- categories_by_quality=dict(cat_by_qual),
679
- gw_records_by_gw_req=dict(rec_by_gw),
680
- gw_records_by_feedback=dict(rec_by_fb),
681
- tag_assoc_session=ta_session,
682
- tag_assoc_by_interaction=dict(ta_by_int),
683
- tag_assoc_by_moment=dict(ta_by_mom),
684
- )
685
-
686
-
687
- def _filter_catalog(rows: Dict[str, List[dict]]) -> Catalog:
688
- """Filter org-wide tag vocabulary to only what's reachable from session agents."""
689
- agents = {
690
- p.get("ssot__AiAgentApiName__c") for p in rows.get("participants", [])
691
- if p.get("ssot__AiAgentSessionParticipantRole__c") == "AGENT"
692
- and p.get("ssot__AiAgentApiName__c") not in _NOT_SET
693
- } | {
694
- m.get("ssot__AiAgentApiName__c") for m in rows.get("moments", [])
695
- if m.get("ssot__AiAgentApiName__c") not in _NOT_SET
696
- }
697
- # Mirror fetch_dc._resolve_identity's USER-row fallback. On agent shapes
698
- # like MyAgent, AGENT-role rows leave api_name=NOT_SET while USER
699
- # rows correctly carry the agent's api_name. Without this fallback, the
700
- # session lands in a `<api_name>__v0/` directory but `agents_observed`
701
- # is empty — directory and rendered catalog disagree. Only fires when the
702
- # primary (AGENT + moments) sources turned up nothing usable; in normal
703
- # sessions the USER and AGENT rows agree and the union is idempotent.
704
- if not agents:
705
- agents = {
706
- p.get("ssot__AiAgentApiName__c") for p in rows.get("participants", [])
707
- if p.get("ssot__AiAgentApiName__c") not in _NOT_SET
708
- }
709
- agents_observed = sorted(a for a in agents if a)
710
- relevant_assocs = [
711
- a for a in rows.get("tag_definition_associations", [])
712
- if a.get("ssot__AiAgentApiName__c") in agents_observed
713
- ]
714
- relevant_def_ids = {
715
- a["ssot__AiAgentTagDefinitionId__c"] for a in relevant_assocs
716
- if a.get("ssot__AiAgentTagDefinitionId__c") not in _NOT_SET
717
- }
718
- return Catalog(
719
- agents_observed=agents_observed,
720
- tag_definitions=[d for d in rows.get("tag_definitions", [])
721
- if d.get("ssot__Id__c") in relevant_def_ids],
722
- tag_definition_associations=relevant_assocs,
723
- tags=[t for t in rows.get("tags", [])
724
- if t.get("ssot__AiAgentTagDefinitionId__c") in relevant_def_ids],
725
- )
726
-
727
-
728
- def _build_session_identity(rows: Dict[str, List[dict]], manifest: dict) -> dict:
729
- """Harvest 18 identity fields from 4 DMOs for the `session.identity` block.
730
-
731
- All row iteration is preceded by a deterministic sort so repeated runs
732
- produce byte-identical output regardless of fetch order. `_harvest_str()` is
733
- the shared normalizer — html.unescape + quote-strip + NOT_SET /
734
- UNSET_VALUE / empty coercion. See references/dc_pipeline_contract.md
735
- §2.9a for the field-to-column mapping.
736
- """
737
- # --- gateway_requests: sort by (timestamp__c, gatewayRequestId__c) ---
738
- gwr_sorted = sorted(
739
- rows.get("gateway_requests", []),
740
- key=lambda r: (r.get("timestamp__c") or "",
741
- r.get("gatewayRequestId__c") or ""),
742
- )
743
-
744
- def _first_gwr(key: str) -> Optional[str]:
745
- for r in gwr_sorted:
746
- v = _harvest_str(r.get(key))
747
- if v is not None:
748
- return v
749
- return None
750
-
751
- org_id = _first_gwr("orgId__c")
752
- platform_user_id = _first_gwr("userId__c")
753
- planner_id = _first_gwr("plannerId__c")
754
- bot_version_id = _first_gwr("botVersionId__c")
755
- app_type = _first_gwr("appType__c")
756
-
757
- # --- gateway_request_tags: sort by (parent__c, tag__c, tagValue__c) ---
758
- tags_sorted = sorted(
759
- rows.get("gateway_request_tags", []),
760
- key=lambda r: (r.get("parent__c") or "",
761
- r.get("tag__c") or "",
762
- r.get("tagValue__c") or ""),
763
- )
764
- tag_first: Dict[str, Optional[str]] = {}
765
- for t in tags_sorted:
766
- k = t.get("tag__c")
767
- if not k or k in tag_first:
768
- continue
769
- tag_first[k] = _harvest_str(t.get("tagValue__c"))
770
-
771
- # --- sessions[0] — always exactly one row per session on this path ---
772
- sessions = rows.get("sessions", [])
773
- session_row = sessions[0] if sessions else {}
774
-
775
- # --- participants: first USER-role row by ssot__Id__c ---
776
- participants_sorted = sorted(
777
- rows.get("participants", []),
778
- key=lambda r: r.get("ssot__Id__c") or "",
779
- )
780
- messaging_end_user_id = None
781
- for p in participants_sorted:
782
- if p.get("ssot__AiAgentSessionParticipantRole__c") == "USER":
783
- v = _harvest_str(p.get("ssot__ParticipantId__c"))
784
- if v is not None:
785
- messaging_end_user_id = v
786
- break
787
-
788
- def _aliased(identity_key: str) -> Optional[str]:
789
- """Resolve an identity field via its tag-name fallback chain.
790
-
791
- Parameter name intentionally avoids shadowing `dataclasses.field`.
792
- """
793
- for tag_key in _TAG_KEY_ALIASES[identity_key]:
794
- v = tag_first.get(tag_key)
795
- if v is not None:
796
- return v
797
- return None
798
-
799
- # Expose VariableText__c bootstrap variables. Production messaging
800
- # sessions leave this NOT_SET; Builder Previewer populates it with
801
- # test-harness keys (__resolved_locale__, __supports_result_display__,
802
- # etc.). Surfacing this is what makes channel-mode visible in the
803
- # renderer.
804
- messaging_session_id = _harvest_str(session_row.get("ssot__RelatedMessagingSessionId__c"))
805
- voice_call_id = _harvest_str(session_row.get("ssot__RelatedVoiceCallId__c"))
806
- bootstrap_variables = _parse_bootstrap_variables(
807
- session_row.get("ssot__VariableText__c")
808
- )
809
-
810
- # Derive a `mode` field. ssot__AiAgentChannelType__c is identical for
811
- # MIAW production and Builder Previewer (`SCRT2 - EmbeddedMessaging`);
812
- # we have to look at related-id population and bootstrap_variables to
813
- # tell them apart.
814
- mode = _derive_mode(messaging_session_id, voice_call_id, bootstrap_variables)
815
-
816
- # `voice_call_id` + `individual_id` are null on EmbeddedMessaging sessions.
817
- # They populate on authenticated channels (voice, Experience Cloud with
818
- # linked Individual). Kept for schema parallelism with messaging_session_id.
819
- return {
820
- "org_id": org_id,
821
- "platform_user_id": platform_user_id,
822
- "planner_id": planner_id,
823
- "bot_version_id": bot_version_id,
824
- "app_type": app_type,
825
- "bot_id": tag_first.get("bot_id"),
826
- "bot_name": tag_first.get("bot_name"),
827
- "agent_api_name": _aliased("agent_api_name"),
828
- "agent_label": tag_first.get("agent_label"),
829
- "agent_version": _aliased("agent_version"),
830
- "agent_type": tag_first.get("agent_type"),
831
- "planner_name": tag_first.get("planner_name"),
832
- "planner_type": tag_first.get("planner_type"),
833
- "configured_model": tag_first.get("configured_model_name"),
834
- "messaging_session_id": messaging_session_id,
835
- "messaging_end_user_id": messaging_end_user_id,
836
- "voice_call_id": voice_call_id,
837
- "individual_id": _harvest_str(session_row.get("ssot__IndividualId__c")),
838
- "bootstrap_variables": bootstrap_variables,
839
- "mode": mode,
840
- }
841
-
842
-
843
- # Test-harness bootstrap keys that are observed in Builder Previewer sessions
844
- # but NOT in MIAW production. The presence of any of these in
845
- # `ssot__VariableText__c` is the strongest at-rest signal that a session was
846
- # run through the Previewer rather than against a real customer messaging
847
- # session. Listed here as a frozenset so it's read-only at module level.
848
- # Builder Previewer adds these keys to ssot__VariableText__c at session
849
- # bootstrap; MIAW production sessions don't seed them. Used by _derive_mode
850
- # to distinguish previewer runs from real customer messaging sessions.
851
- _BUILDER_PREVIEWER_INDICATOR_KEYS: frozenset[str] = frozenset({
852
- "__resolved_locale__",
853
- "__locale_instruction__",
854
- "__supports_result_display__",
855
- "__show_tool_results_invoked__",
856
- })
857
-
858
-
859
- def _parse_bootstrap_variables(raw: Any) -> Optional[dict]:
860
- """Parse `ssot__VariableText__c` defensively.
861
-
862
- On real sessions this field can be:
863
- - missing / None / NOT_SET / UNSET_VALUE → returns None
864
- - well-formed JSON (Builder Previewer) → returns the dict
865
- - HTML-entity-encoded JSON (some surfaces emit
866
- the `&quot;`-escaped form) → unescaped, returns the dict
867
- - truncated or malformed JSON → returns
868
- `{"_parse_error": True, "_raw": <first 200 chars>}` so the renderer
869
- can still flag that a bootstrap exists, just not parseable.
870
-
871
- Returns None for the empty cases so the caller can treat None as
872
- "no bootstrap" without distinguishing missing from sentinel.
873
- """
874
- if raw is None:
875
- return None
876
- s = html.unescape(str(raw)).strip()
877
- if not s or s in _NOT_SET or s in ("NOT_SET", "UNSET_VALUE"):
878
- return None
879
- try:
880
- parsed = json.loads(s)
881
- except (json.JSONDecodeError, ValueError):
882
- return {"_parse_error": True, "_raw": s[:200]}
883
- # Defensive: VariableText__c is documented as a JSON object; if a future
884
- # version emits a JSON array or scalar, surface it under `_raw` rather
885
- # than letting downstream code crash on `.get()`.
886
- if not isinstance(parsed, dict):
887
- return {"_parse_error": True, "_raw": s[:200]}
888
- return parsed
889
-
890
-
891
- def _derive_mode(
892
- messaging_session_id: Optional[str],
893
- voice_call_id: Optional[str],
894
- bootstrap_variables: Optional[dict],
895
- ) -> str:
896
- """Distinguish MIAW production from Builder Previewer from voice.
897
-
898
- `ssot__AiAgentChannelType__c` is identical (`SCRT2 - EmbeddedMessaging`)
899
- for MIAW and Builder Previewer — useless for distinguishing them. The
900
- real signals, in priority order:
901
-
902
- 1. `ssot__RelatedVoiceCallId__c` set ↔ voice channel.
903
- 2. `ssot__RelatedMessagingSessionId__c` set ↔ MIAW production
904
- (a real MessagingSession record exists).
905
- 3. `RelatedMessagingSessionId__c` NOT_SET AND bootstrap_variables
906
- contains test-harness keys ↔ Builder Previewer.
907
- 4. None of the above ↔ unknown (e.g. headless API runs, agent script
908
- previewer cases that don't seed VariableText__c).
909
-
910
- Return a stable enum string the renderer can match on.
911
- """
912
- if voice_call_id:
913
- return "voice"
914
- if messaging_session_id:
915
- return "production_messaging"
916
- if isinstance(bootstrap_variables, dict):
917
- if set(bootstrap_variables) & _BUILDER_PREVIEWER_INDICATOR_KEYS:
918
- return "builder_previewer"
919
- return "unknown"
920
-
921
-
922
- def _declared_binding_pass(rows: Dict[str, List[dict]], idx: Indexes) -> BindingResults:
923
- """Walk every step; claim GWs reachable via the declared chain.
924
-
925
- Returns BindingResults(declared_gw_ids, declared_steps_with_gw,
926
- step_id_to_gw_id, declared_collisions). `declared_steps_with_gw` is a
927
- frozenset so downstream consumers can't accidentally mutate it.
928
- `step_id_to_gw_id[step_id]` is the GW id when declared, or None when this
929
- step's declared GW was already claimed by an earlier step (collision sentinel).
930
- `declared_collisions` is the aggregate count of collision-sentinel entries.
931
- """
932
- declared_gw_ids: set = set()
933
- declared_steps_with_gw: set = set()
934
- step_id_to_gw_id: Dict[str, Optional[str]] = {}
935
- for step in rows.get("steps", []):
936
- gw_req = _declared_gw_for_step(
937
- step, idx.generations_by_id, idx.gw_resp_by_resp_id, idx.gw_req_by_id)
938
- if gw_req is None:
939
- continue
940
- gw_id = gw_req["gatewayRequestId__c"]
941
- if gw_id in declared_gw_ids:
942
- # Collision: second+ step reaches a GW already claimed.
943
- step_id_to_gw_id[step["ssot__Id__c"]] = None
944
- continue
945
- declared_gw_ids.add(gw_id)
946
- declared_steps_with_gw.add(step["ssot__Id__c"])
947
- step_id_to_gw_id[step["ssot__Id__c"]] = gw_id
948
- return BindingResults(
949
- declared_gw_ids=declared_gw_ids,
950
- declared_steps_with_gw=frozenset(declared_steps_with_gw),
951
- step_id_to_gw_id=step_id_to_gw_id,
952
- declared_collisions=sum(1 for v in step_id_to_gw_id.values() if v is None),
953
- )
954
-
955
-
956
- def _build_step_view(step: dict, idx: Indexes, dispatch: PolymorphicSplits,
957
- step_id_to_gw_id: Dict[str, Optional[str]],
958
- build_gw) -> dict:
959
- """Emit one Step view, including its Generation and (if declared) GatewayRequest.
960
-
961
- `build_gw` is a `functools.partial` pre-bound with `idx`/`dispatch`
962
- (see `assemble()`); call sites only supply `gw_req`, `binding_method`,
963
- and optionally `bound_step_id`.
964
- """
965
- sid_step = step["ssot__Id__c"]
966
- gen_id = step.get("ssot__GenerationId__c")
967
- gen = idx.generations_by_id.get(gen_id) if gen_id not in _NOT_SET else None
968
- generation_view = _build_generation_view(
969
- gen, idx.quality_by_parent, dispatch.categories_by_generation,
970
- dispatch.categories_by_quality, idx.feedback_by_gen,
971
- idx.feedback_details_by_parent, dispatch.gw_records_by_feedback,
972
- ) if gen is not None else None
973
-
974
- gw_id = step_id_to_gw_id.get(sid_step)
975
- gw_view = None
976
- collision_flag = gw_id is None and sid_step in step_id_to_gw_id
977
- if gw_id is not None:
978
- gw_view = build_gw(idx.gw_req_by_id[gw_id], "declared")
979
-
980
- # Mirror the bound gateway_request's model identifier onto the step
981
- # itself so renderers can show "LLM_STEP <name> · <model>" without
982
- # dereferencing the nested gateway view. The mirror is None when no
983
- # gateway_request is bound (declared chain didn't reach, or the STDM
984
- # exporter dropped writes — see the `gateway_requests_dropped_by_stdm`
985
- # session_shape).
986
- step_model_name = gw_view.get("model") if gw_view else None
987
-
988
- step_view: Dict[str, Any] = {
989
- "id": sid_step,
990
- "type": step.get("ssot__AiAgentInteractionStepType__c"),
991
- "name": step.get("ssot__Name__c"),
992
- "start_ts": step.get("ssot__StartTimestamp__c"),
993
- "end_ts": step.get("ssot__EndTimestamp__c"),
994
- "error_text": _clean(step.get("ssot__ErrorMessageText__c")),
995
- "model_name": step_model_name,
996
- "generation": generation_view,
997
- "gateway_request": gw_view,
998
- }
999
- if collision_flag:
1000
- step_view["gateway_request_collision"] = True
1001
- return step_view
1002
-
1003
-
1004
- def _build_message_view(m: dict, participant_role_by_id: Dict[str, str]) -> dict:
1005
- mtype = m.get("ssot__AiAgentInteractionMessageType__c")
1006
- pid = m.get("ssot__AiAgentSessionParticipantId__c")
1007
- role = participant_role_by_id.get(pid)
1008
- if role is None:
1009
- role = "USER" if mtype == "Input" else "AGENT" if mtype == "Output" else None
1010
- return {
1011
- "message_id": m.get("ssot__Id__c"),
1012
- "type": mtype,
1013
- "role": role,
1014
- "participant_id": pid,
1015
- "text": m.get("ssot__ContentText__c"),
1016
- "content_type": m.get("ssot__AiAgentInteractionMsgContentType__c"),
1017
- "modality": m.get("Modality__c"),
1018
- "ts": m.get("ssot__MessageSentTimestamp__c"),
1019
- }
1020
-
1021
-
1022
- def _build_interaction_view(interaction: dict, rows: Dict[str, List[dict]],
1023
- idx: Indexes, dispatch: PolymorphicSplits,
1024
- binding: BindingResults,
1025
- build_gw) -> Tuple[dict, BinderCtx]:
1026
- """Emit one Interaction view plus its BinderCtx.
1027
-
1028
- Returns (view, binder_ctx). Binder scratch state lives in the `BinderCtx`
1029
- and is keyed externally by `iid`; it never touches the emitted view, so
1030
- it can't leak into `dc._session_tree.json`. `build_gw` is the
1031
- `functools.partial` from `assemble()`.
1032
- """
1033
- iid = interaction["ssot__Id__c"]
1034
- trace_id = _extract_trace_id(interaction)
1035
-
1036
- steps_sorted = sorted(
1037
- idx.steps_by_interaction.get(iid, []),
1038
- key=lambda s: (s.get("ssot__StartTimestamp__c") or "", s.get("ssot__Id__c") or ""))
1039
- step_views = [_build_step_view(s, idx, dispatch, binding.step_id_to_gw_id, build_gw)
1040
- for s in steps_sorted]
1041
-
1042
- # Step windows consumed only by _ts_window_pass via the parallel BinderCtx.
1043
- steps_with_ts: List[Tuple[dict, Optional[datetime], Optional[datetime]]] = [
1044
- (s, _ts(s.get("ssot__StartTimestamp__c")), _ts(s.get("ssot__EndTimestamp__c")))
1045
- for s in steps_sorted if _ts(s.get("ssot__StartTimestamp__c")) is not None
1046
- ]
1047
-
1048
- messages_sorted = sorted(
1049
- idx.messages_by_interaction.get(iid, []),
1050
- key=lambda r: (r.get("ssot__MessageSentTimestamp__c") or "",
1051
- r.get("ssot__Id__c") or ""))
1052
- msg_views = [_build_message_view(m, idx.participant_role_by_id)
1053
- for m in messages_sorted]
1054
-
1055
- view = {
1056
- "id": iid,
1057
- "type": interaction.get("ssot__AiAgentInteractionType__c"),
1058
- "topic": _clean(interaction.get("ssot__TopicApiName__c")),
1059
- "trace_id": trace_id,
1060
- "start_ts": interaction.get("ssot__StartTimestamp__c"),
1061
- "end_ts": interaction.get("ssot__EndTimestamp__c"),
1062
- "messages": msg_views,
1063
- "telemetry_spans": [s for s in rows.get("telemetry_spans", [])
1064
- if s.get("ssot__TelemetryTrace__c") == trace_id],
1065
- "steps": step_views,
1066
- "timestamp_bound_gateway_calls": [], # appended by _ts_window_pass
1067
- "tag_associations": dispatch.tag_assoc_by_interaction.get(iid, []),
1068
- }
1069
- binder_ctx = BinderCtx(
1070
- start_ts=_ts(interaction.get("ssot__StartTimestamp__c")),
1071
- end_ts=_ts(interaction.get("ssot__EndTimestamp__c")),
1072
- steps_with_ts=steps_with_ts,
1073
- reserved_step_ids=binding.declared_steps_with_gw,
1074
- )
1075
- return view, binder_ctx
1076
-
1077
-
1078
- def _ts_window_pass(interactions_view: List[dict],
1079
- binders: Dict[str, BinderCtx],
1080
- idx: Indexes,
1081
- binding: BindingResults,
1082
- build_gw) -> Tuple[List[dict], dict]:
1083
- """Place every chain-orphan GW via timestamp-window, or into unbound[].
1084
-
1085
- Reads per-interaction binder state from the parallel `binders` dict keyed
1086
- by `iv["id"]` — never from the view itself. Mutates `interactions_view`
1087
- in place only to append to `timestamp_bound_gateway_calls[]` (an emission
1088
- field, pre-initialized to `[]` in `_build_interaction_view`).
1089
-
1090
- Returns (unbound_gw_calls, gw_binding_counts).
1091
- """
1092
- unbound: List[dict] = []
1093
- counts = {
1094
- "declared": len(binding.declared_gw_ids),
1095
- "timestamp_window": 0,
1096
- "unbound": 0,
1097
- "declared_collisions": binding.declared_collisions,
1098
- }
1099
- for gw_id, gw_req in idx.gw_req_by_id.items():
1100
- if gw_id in binding.declared_gw_ids:
1101
- continue
1102
- placed = False
1103
- for iv in interactions_view:
1104
- bctx = binders[iv["id"]]
1105
- placement, bound_step_id = _bind_ts_window(
1106
- gw_req,
1107
- bctx.steps_with_ts,
1108
- (bctx.start_ts, bctx.end_ts),
1109
- bctx.reserved_step_ids,
1110
- )
1111
- if placement in ("step", "interaction"):
1112
- iv["timestamp_bound_gateway_calls"].append(
1113
- build_gw(gw_req, "timestamp_window", bound_step_id=bound_step_id))
1114
- counts["timestamp_window"] += 1
1115
- placed = True
1116
- break
1117
- if not placed:
1118
- unbound.append(build_gw(gw_req, "unbound"))
1119
- counts["unbound"] += 1
1120
-
1121
- # Defense in depth: if anyone reintroduces the binder-cache-on-view
1122
- # pattern in a future edit, this catches it before the tree ever writes.
1123
- assert not any(k.startswith("_") for iv in interactions_view for k in iv), \
1124
- "binder scratch state leaked into interaction view — do not stash on the view dict"
1125
-
1126
- return unbound, counts
1127
-
1128
-
1129
- def _build_moments_view(rows: Dict[str, List[dict]], dispatch: PolymorphicSplits) -> List[dict]:
1130
- """session.moments[] with interaction_ids[] back-refs derived from MomentInteraction."""
1131
- by_moment: Dict[str, List[str]] = defaultdict(list)
1132
- for mi in rows.get("moment_interactions", []):
1133
- mid = mi.get("ssot__AiAgentMomentId__c")
1134
- iid = mi.get("ssot__AiAgentInteractionId__c")
1135
- if mid not in _NOT_SET and iid not in _NOT_SET:
1136
- by_moment[mid].append(iid)
1137
-
1138
- moments_sorted = sorted(
1139
- rows.get("moments", []),
1140
- key=lambda r: (r.get("ssot__StartTimestamp__c") or "", r.get("ssot__Id__c") or ""))
1141
- return [
1142
- {
1143
- "moment_id": m.get("ssot__Id__c"),
1144
- "agent_api_name": _clean(m.get("ssot__AiAgentApiName__c")),
1145
- "agent_version": _clean(m.get("ssot__AiAgentVersionApiName__c")),
1146
- "request_summary_text": _clean(m.get("ssot__RequestSummaryText__c")),
1147
- "response_summary_text": _clean(m.get("ssot__ResponseSummaryText__c")),
1148
- "interaction_ids": sorted(by_moment.get(m.get("ssot__Id__c"), [])),
1149
- "start_ts": m.get("ssot__StartTimestamp__c"),
1150
- "end_ts": m.get("ssot__EndTimestamp__c"),
1151
- "tag_associations": dispatch.tag_assoc_by_moment.get(m.get("ssot__Id__c"), []),
1152
- }
1153
- for m in moments_sorted
1154
- ]
1155
-
1156
-
1157
- def _build_participants_view(rows: Dict[str, List[dict]]) -> List[dict]:
1158
- return [
1159
- {
1160
- "participant_id": p.get("ssot__Id__c"),
1161
- "role": p.get("ssot__AiAgentSessionParticipantRole__c"),
1162
- "agent_api_name": _clean(p.get("ssot__AiAgentApiName__c")),
1163
- "agent_version": _clean(p.get("ssot__AiAgentVersionApiName__c")),
1164
- "agent_type": _clean(p.get("ssot__AiAgentType__c")),
1165
- }
1166
- for p in sorted(
1167
- rows.get("participants", []),
1168
- key=lambda r: (r.get("ssot__StartTimestamp__c") or "", r.get("ssot__Id__c") or ""))
1169
- ]
1170
-
1171
-
1172
- def _build_counts(rows: Dict[str, List[dict]], dispatch: PolymorphicSplits,
1173
- binding_counts: dict,
1174
- manifest: dict, collisions: List[dict],
1175
- parse_warnings: List[str]) -> dict:
1176
- int_by_type: Dict[str, int] = defaultdict(int)
1177
- step_by_type: Dict[str, int] = defaultdict(int)
1178
- for i in rows.get("interactions", []):
1179
- int_by_type[i.get("ssot__AiAgentInteractionType__c")] += 1
1180
- for s in rows.get("steps", []):
1181
- step_by_type[s.get("ssot__AiAgentInteractionStepType__c")] += 1
1182
-
1183
- return {
1184
- "interactions_total": len(rows.get("interactions", [])),
1185
- "interactions_turn": int_by_type.get("TURN", 0),
1186
- "interactions_session_end": int_by_type.get("SESSION_END", 0),
1187
- "steps_total": len(rows.get("steps", [])),
1188
- "steps_by_type": {
1189
- k: step_by_type.get(k, 0) for k in
1190
- ("LLM_STEP", "ACTION_STEP", "TOPIC_STEP", "TRUST_GUARDRAILS_STEP", "SESSION_END")
1191
- },
1192
- "generations": len(rows.get("generations", [])),
1193
- "gateway_requests": len(rows.get("gateway_requests", [])),
1194
- "gateway_responses": len(rows.get("gateway_responses", [])),
1195
- "gateway_metadata": len(rows.get("gateway_request_metadata", [])),
1196
- "gateway_llm": len(rows.get("gateway_request_llm", [])),
1197
- "gateway_records_grounded": sum(len(v) for v in dispatch.gw_records_by_gw_req.values()),
1198
- "gateway_records_feedback": sum(len(v) for v in dispatch.gw_records_by_feedback.values()),
1199
- "feedback": len(rows.get("feedback", [])),
1200
- "audit_chain_1to1_ok": (
1201
- len(rows.get("gateway_requests", [])) == len(rows.get("gateway_responses", []))
1202
- ),
1203
- "gw_binding": binding_counts,
1204
- "session_shape": manifest.get("session_shape", "unknown"),
1205
- "pk_collisions": collisions,
1206
- "parse_warnings": parse_warnings,
1207
- }
1208
-
1209
-
1210
- def assemble(sid: str) -> Tuple[dict, Path]:
1211
- """Orchestrate: load → index → dispatch → bind → build views → counts → tree.
1212
-
1213
- Returns (tree, session_dir). The session_dir is resolved by
1214
- ``_find_session_dir`` (via breadcrumb or glob) and passed back so
1215
- the caller can write ``dc._session_tree.json`` next to the inputs
1216
- without re-scanning the disk.
1217
- """
1218
- manifest, rows, parse_warnings, session_dir = _load_all(sid)
1219
-
1220
- # Short-circuit: session row not found.
1221
- sessions = rows.get("sessions", [])
1222
- if not sessions:
1223
- return _minimal_tree_session_not_found(sid, manifest, parse_warnings), session_dir
1224
-
1225
- # Short-circuit: STDM Interaction/Step/Message DMOs haven't materialized yet
1226
- # (gateway_requests present, interactions/steps empty). Render the gateway
1227
- # chain directly instead of silently emitting an empty tree.
1228
- if manifest.get("session_shape") == "interactions_not_materialized_yet":
1229
- return _assemble_gateway_direct(sid, rows, manifest, parse_warnings), session_dir
1230
-
1231
- collisions: List[dict] = []
1232
- # Phase 1: independent bags.
1233
- idx = _build_indexes(rows, collisions)
1234
- dispatch = _dispatch_polymorphic(rows, idx)
1235
- catalog = _filter_catalog(rows)
1236
- # Phase 2: derived bag that depends on idx.
1237
- binding = _declared_binding_pass(rows, idx)
1238
-
1239
- # Bind the invariant gw-view args once; call sites supply only the varying ones.
1240
- build_gw = functools.partial(_build_gw_view, idx=idx, dispatch=dispatch)
1241
-
1242
- # Build per-Interaction views + parallel binder state (sorted by start_ts).
1243
- interactions_view: List[dict] = []
1244
- binders: Dict[str, BinderCtx] = {}
1245
- for interaction in sorted(
1246
- rows.get("interactions", []),
1247
- key=lambda r: (r.get("ssot__StartTimestamp__c") or "",
1248
- r.get("ssot__Id__c") or "")):
1249
- view, bctx = _build_interaction_view(interaction, rows, idx, dispatch, binding, build_gw)
1250
- interactions_view.append(view)
1251
- binders[view["id"]] = bctx
1252
-
1253
- # Timestamp-window fallback; mutates interactions_view only via
1254
- # timestamp_bound_gateway_calls[].append.
1255
- unbound_gw_calls, gw_binding_counts = _ts_window_pass(
1256
- interactions_view, binders, idx, binding, build_gw)
1257
-
1258
- session_row = sessions[0]
1259
- session_identity = _build_session_identity(rows, manifest)
1260
- # `org_id_15` is the canonical 15-char slice used by path helpers.
1261
- # Prefer the manifest-stamped value (resolved in wave 1a of fetch_dc
1262
- # from sessions[0].ssot__InternalOrganizationId__c); fall back to
1263
- # slicing session_identity.org_id (the 18-char form from
1264
- # gateway_requests) when the manifest is missing the field (older
1265
- # artifacts predate the manifest stamp).
1266
- org_id_15 = manifest.get("org_id_15")
1267
- if not org_id_15 and session_identity.get("org_id"):
1268
- org_id_15 = session_identity["org_id"][:15]
1269
- session_identity["org_id_15"] = org_id_15
1270
-
1271
- # Top-level identity block — canonical location for the 3 segments
1272
- # needed to name the session dir. Richer identity fields live under
1273
- # `session.identity` as before.
1274
- # Promote richer values from `session_identity` when the manifest carries
1275
- # placeholders (notably ``agent_version="v0"`` from the MyAgent
1276
- # fallback in fetch_dc.py:570-597) — without this, the top-level block
1277
- # diverges from `session.identity` in the same JSON file.
1278
- top_identity = _reconcile_top_identity(manifest, session_identity, org_id_15)
1279
-
1280
- return {
1281
- "identity": top_identity,
1282
- "session": {
1283
- "id": sid,
1284
- "_schema_version": 1,
1285
- "org": {
1286
- "alias": manifest.get("org_alias"),
1287
- "instance_url": manifest.get("instance_url"),
1288
- },
1289
- "identity": session_identity,
1290
- "start_ts": session_row.get("ssot__StartTimestamp__c"),
1291
- "end_ts": session_row.get("ssot__EndTimestamp__c"),
1292
- "end_type": _resolve_end_type(session_row, rows),
1293
- "channel": _harvest_str(session_row.get("ssot__AiAgentChannelType__c")),
1294
- "participants": _build_participants_view(rows),
1295
- "moments": _build_moments_view(rows, dispatch),
1296
- "interactions": interactions_view,
1297
- "session_tag_associations": dispatch.tag_assoc_session,
1298
- "unbound_gateway_calls": unbound_gw_calls,
1299
- "counts": _build_counts(rows, dispatch, gw_binding_counts,
1300
- manifest, collisions, parse_warnings),
1301
- },
1302
- "catalog": {
1303
- "agents_observed": catalog.agents_observed,
1304
- "tag_definitions": catalog.tag_definitions,
1305
- "tag_definition_associations": catalog.tag_definition_associations,
1306
- "tags": catalog.tags,
1307
- },
1308
- "_doc": (
1309
- "Assembled from "
1310
- "DATA_ROOT/<org>/<agent>__<ver>/<sid>/dc.*.json. "
1311
- "See dc._session_manifest.json for per-query counts and empty reasons. "
1312
- "Contract: references/dc_pipeline_contract.md."
1313
- ),
1314
- }, session_dir
1315
-
1316
-
1317
- def _build_generation_view(gen: dict,
1318
- quality_by_parent: Dict[str, List[dict]],
1319
- categories_by_generation: Dict[str, List[dict]],
1320
- categories_by_quality: Dict[str, List[dict]],
1321
- feedback_by_gen: Dict[str, List[dict]],
1322
- feedback_details_by_parent: Dict[str, List[dict]],
1323
- gw_records_by_feedback: Dict[str, List[dict]]) -> dict:
1324
- gen_id = gen["generationId__c"]
1325
- # Quality rows with their TOXICITY sub-categories nested.
1326
- quality_rows = []
1327
- for q in quality_by_parent.get(gen_id, []):
1328
- q_view = dict(q)
1329
- q_view["_toxicity_subcategories"] = categories_by_quality.get(q.get("id__c"), [])
1330
- quality_rows.append(q_view)
1331
-
1332
- # Feedback rows with details + feedback-attachment records nested.
1333
- feedback_rows = []
1334
- for fb in feedback_by_gen.get(gen_id, []):
1335
- fid = fb.get("feedbackId__c")
1336
- feedback_rows.append({
1337
- "feedback_id": fid,
1338
- "feedback": fb.get("feedback__c"),
1339
- "action": fb.get("action__c"),
1340
- "details": feedback_details_by_parent.get(fid, []),
1341
- "records": gw_records_by_feedback.get(fid, []),
1342
- })
1343
-
1344
- return {
1345
- "generation_id": gen_id,
1346
- "response_id": _clean(gen.get("generationResponseId__c")),
1347
- "response_text": gen.get("responseText__c"),
1348
- "masked_response_text": gen.get("maskedResponseText__c"),
1349
- "response_parameters": gen.get("responseParameters__c"),
1350
- "feature": _clean(gen.get("feature__c")),
1351
- "quality": quality_rows,
1352
- "categories": categories_by_generation.get(gen_id, []),
1353
- "feedback": feedback_rows,
1354
- }
1355
-
1356
-
1357
- _STDM_LAG_NOTE = (
1358
- "Interaction/Step/Message DMOs materialize on a separate cadence from "
1359
- "Gateway DMOs. For fresh sessions this view reflects the gateway chain "
1360
- "directly. Re-run in 24–72 hours for the full hierarchical trace."
1361
- )
1362
-
1363
-
1364
- def _assemble_gateway_direct(sid: str, rows: Dict[str, List[dict]],
1365
- manifest: dict,
1366
- parse_warnings: List[str]) -> dict:
1367
- """Build a gateway-chain-only tree for sessions whose STDM hierarchy hasn't materialized.
1368
-
1369
- Mirrors ``_minimal_tree_session_not_found`` in shape, but populates a
1370
- ``session.gateway_chain[]`` harvested directly from ``gateway_requests``
1371
- joined to ``gateway_request_tags`` / ``gateway_request_metadata`` /
1372
- ``gateway_responses``. ``session.interactions`` is an explicit empty list
1373
- so consumers that walk it simply no-op.
1374
-
1375
- The sentinel ``_source = "gateway_direct"`` is consumed by
1376
- ``render_dc._render_gateway_direct``.
1377
- """
1378
- sessions = rows.get("sessions", [])
1379
- session_row = sessions[0] if sessions else {}
1380
-
1381
- # Reuse the canonical identity harvester — same tag-alias fallbacks,
1382
- # same normalization — and apply the same org_id_15 fallback as the
1383
- # happy path so the top-level identity block is consistent across shapes.
1384
- session_identity = _build_session_identity(rows, manifest)
1385
- org_id_15 = manifest.get("org_id_15")
1386
- if not org_id_15 and session_identity.get("org_id"):
1387
- org_id_15 = session_identity["org_id"][:15]
1388
- session_identity["org_id_15"] = org_id_15
1389
-
1390
- # Same placeholder-promotion policy as the happy path — see
1391
- # `_reconcile_top_identity` for why we don't trust the manifest blindly.
1392
- top_identity = _reconcile_top_identity(manifest, session_identity, org_id_15)
1393
-
1394
- # Group the child DMOs by parent once so the per-request loop stays O(n).
1395
- tags_by_req: Dict[str, List[dict]] = _groupby(
1396
- rows.get("gateway_request_tags", []), "parent__c")
1397
- md_by_req: Dict[str, List[dict]] = _groupby(
1398
- rows.get("gateway_request_metadata", []), "parent__c")
1399
- resp_by_req: Dict[str, List[dict]] = _groupby(
1400
- rows.get("gateway_responses", []), "generationRequestId__c")
1401
-
1402
- # Deterministic order: sort by (timestamp__c, gatewayRequestId__c) so
1403
- # repeat runs on the same inputs produce byte-identical output.
1404
- gw_sorted = sorted(
1405
- rows.get("gateway_requests", []),
1406
- key=lambda r: (r.get("timestamp__c") or "",
1407
- r.get("gatewayRequestId__c") or ""),
1408
- )
1409
-
1410
- gateway_chain: List[dict] = []
1411
- for gw in gw_sorted:
1412
- gw_id = gw.get("gatewayRequestId__c")
1413
- # sf__Id (platform row id) isn't harvested by fetch_dc; the logical
1414
- # PK is gatewayRequestId__c. Keep both keys on the view so readers
1415
- # can lift either without re-joining.
1416
- sf_id = gw.get("sf__Id")
1417
-
1418
- # timestamp: prefer the columns named in the change-request
1419
- # (requestTimeStamp__c, createdAt__c), then fall back to the
1420
- # documented column (timestamp__c in references/dc_dmo_fields.md).
1421
- timestamp = (
1422
- _clean(gw.get("requestTimeStamp__c"))
1423
- or _clean(gw.get("createdAt__c"))
1424
- or _clean(gw.get("timestamp__c"))
1425
- )
1426
-
1427
- # Tag-driven fields. Use _harvest_str for html-unescape + quote-strip —
1428
- # same normalizer _build_session_identity uses on tag values.
1429
- tag_first: Dict[str, Optional[str]] = {}
1430
- for t in sorted(
1431
- tags_by_req.get(gw_id, []),
1432
- key=lambda r: (r.get("tag__c") or "",
1433
- r.get("tagValue__c") or "")):
1434
- k = t.get("tag__c")
1435
- if not k or k in tag_first:
1436
- continue
1437
- tag_first[k] = _harvest_str(t.get("tagValue__c"))
1438
-
1439
- # Prompt-template name: prefer the direct column on the request;
1440
- # fall back to the tag alias used by older agent builds.
1441
- prompt_template_dev_name = (
1442
- _clean(gw.get("promptTemplateDevName__c"))
1443
- or tag_first.get("prompt_template_dev_name")
1444
- )
1445
- # `feature` likewise prefers the typed column, falls back to tag.
1446
- feature = _clean(gw.get("feature__c")) or tag_first.get("feature")
1447
-
1448
- # Response side — take the first by response timestamp. 1:1 invariant
1449
- # holds on every live session we've observed, but defend against the
1450
- # in-flight-call edge case by sorting deterministically.
1451
- responses_sorted = sorted(
1452
- resp_by_req.get(gw_id, []),
1453
- key=lambda r: (r.get("timestamp__c") or "",
1454
- r.get("generationResponseId__c") or ""),
1455
- )
1456
- response_view: Optional[dict] = None
1457
- if responses_sorted:
1458
- resp = responses_sorted[0]
1459
- response_view = {
1460
- "timestamp": _clean(resp.get("timestamp__c")),
1461
- "finish_reason": _parse_finish_reason_params(resp.get("parameters__c")),
1462
- }
1463
-
1464
- gateway_chain.append({
1465
- "gateway_request_id": gw_id,
1466
- "sf_id": sf_id,
1467
- "timestamp": timestamp,
1468
- "model": _clean(gw.get("model__c")),
1469
- "provider": _clean(gw.get("provider__c")),
1470
- "prompt_template_dev_name": prompt_template_dev_name,
1471
- "feature": feature,
1472
- "prompt_tokens": gw.get("promptTokens__c"),
1473
- "completion_tokens": gw.get("completionTokens__c"),
1474
- "total_tokens": gw.get("totalTokens__c"),
1475
- # Raw prompt is authoritative on disk (dc.gateway_requests.json);
1476
- # the 64 KB display cap lives in the render layer, not here.
1477
- "prompt_text": gw.get("prompt__c"),
1478
- "metadata": md_by_req.get(gw_id, []),
1479
- "tags": tags_by_req.get(gw_id, []),
1480
- "response": response_view,
1481
- })
1482
-
1483
- return {
1484
- "identity": top_identity,
1485
- "_source": "gateway_direct",
1486
- "session": {
1487
- "id": sid,
1488
- "_schema_version": 1,
1489
- "org": {
1490
- "alias": manifest.get("org_alias"),
1491
- "instance_url": manifest.get("instance_url"),
1492
- },
1493
- "identity": session_identity,
1494
- "start_ts": session_row.get("ssot__StartTimestamp__c"),
1495
- "end_ts": session_row.get("ssot__EndTimestamp__c"),
1496
- "end_type": _resolve_end_type(session_row, rows),
1497
- "channel": _harvest_str(session_row.get("ssot__AiAgentChannelType__c")),
1498
- "participants": _build_participants_view(rows),
1499
- # Explicit empty list — downstream consumers walk this and must
1500
- # no-op safely when STDM hasn't materialized yet.
1501
- "interactions": [],
1502
- "gateway_chain": gateway_chain,
1503
- "_stdm_lag_note": _STDM_LAG_NOTE,
1504
- "counts": {
1505
- "session_shape": manifest.get("session_shape",
1506
- "interactions_not_materialized_yet"),
1507
- "gateway_requests": len(rows.get("gateway_requests", [])),
1508
- "gateway_responses": len(rows.get("gateway_responses", [])),
1509
- "gateway_metadata": len(rows.get("gateway_request_metadata", [])),
1510
- "gateway_tags": len(rows.get("gateway_request_tags", [])),
1511
- "interactions_total": 0,
1512
- "steps_total": 0,
1513
- "parse_warnings": parse_warnings,
1514
- },
1515
- },
1516
- "_doc": (
1517
- f"Session {sid}: STDM Interaction/Step/Message DMOs have not "
1518
- "materialized yet (they lag Gateway DMOs by hours to days). "
1519
- "Tree carries the gateway chain harvested directly from "
1520
- "GenAIGatewayRequest + related audit DMOs. Re-run fetch_dc.py "
1521
- "in 24–72h once the STDM hierarchy has caught up for the full "
1522
- "hierarchical trace."
1523
- ),
1524
- }
1525
-
1526
-
1527
- def _parse_finish_reason_params(parameters: Optional[str]) -> Optional[str]:
1528
- """Lift finish_reason out of GatewayResponse.parameters__c.
1529
-
1530
- The field arrives HTML-escaped and the finish_reason value itself is
1531
- often wrapped in escaped quotes (e.g. `\\"stop\\"`). Mirrors
1532
- ``render_dc._parse_finish_reason`` but against the gateway-response
1533
- parameters column rather than Generation.responseParameters__c.
1534
- """
1535
- if not parameters:
1536
- return None
1537
- try:
1538
- decoded = html.unescape(parameters)
1539
- parsed = json.loads(decoded)
1540
- except (ValueError, TypeError):
1541
- return None
1542
- raw = parsed.get("finish_reason") if isinstance(parsed, dict) else None
1543
- if not isinstance(raw, str):
1544
- return None
1545
- return raw.replace("\\", "").strip('"').strip() or None
1546
-
1547
-
1548
- def _minimal_tree_session_not_found(sid: str, manifest: dict,
1549
- parse_warnings: List[str]) -> dict:
1550
- # Note: deliberately does NOT include `session.identity` — harvest
1551
- # sources (gateway_requests, gateway_request_tags, sessions[0],
1552
- # participants) are all empty on this path. Renderer's minimal-tree
1553
- # branch must handle absent identity. DOES include _schema_version so
1554
- # the renderer's version check doesn't warn on every not-found session.
1555
- #
1556
- # Top-level `identity` still carries the manifest-stamped (org, agent,
1557
- # version) when available — the session dir already exists under that
1558
- # identity or the manifest couldn't have been read. Breadcrumb readers
1559
- # depend on this block being present on EVERY tree, not just
1560
- # full-populated ones.
1561
- return {
1562
- "identity": {
1563
- "org_id_15": manifest.get("org_id_15"),
1564
- "agent_api_name": manifest.get("agent_api_name"),
1565
- "agent_version": manifest.get("agent_version"),
1566
- },
1567
- "session": {
1568
- "id": sid,
1569
- "_schema_version": 1,
1570
- "org": {
1571
- "alias": manifest.get("org_alias"),
1572
- "instance_url": manifest.get("instance_url"),
1573
- },
1574
- "counts": {
1575
- "session_shape": manifest.get("session_shape", "session_not_found"),
1576
- "parse_warnings": parse_warnings,
1577
- },
1578
- },
1579
- "_doc": (
1580
- f"Session {sid} did not resolve in Data Cloud "
1581
- "(sessions.json returned 0 rows). Check the session id, or wait for "
1582
- "STDM materialization. No interactions, catalog, or audit rows available."
1583
- ),
1584
- }
1585
-
1586
-
1587
- # ---- public entry points --------------------------------------------------
1588
-
1589
- def main_for_session(sid: str) -> int:
1590
- """Called by fetch_dc.py's auto-run hook and by `--session` CLI.
1591
-
1592
- Writes ``dc._session_tree.json`` into the session dir located by
1593
- ``_find_session_dir`` (via breadcrumb / glob) — the caller does not
1594
- need to know ``(org, agent, version)`` to invoke the assembler.
1595
- """
1596
- tree, session_dir = assemble(sid)
1597
- tree_path = session_dir / "dc._session_tree.json"
1598
- tree_path.write_text(json.dumps(tree, indent=2, sort_keys=True, default=str) + "\n")
1599
- print(f"assemble_dc: wrote {tree_path}", file=sys.stderr)
1600
- return 0
1601
-
1602
-
1603
- def main() -> int:
1604
- ap = argparse.ArgumentParser(
1605
- prog="assemble_dc.py",
1606
- description="Assemble dc._session_tree.json for one session.",
1607
- )
1608
- ap.add_argument("--session", required=True,
1609
- help="AI-agent session UUID or MessagingSession id (0Mw...). "
1610
- "Messaging ids are resolved from disk "
1611
- "(DATA_ROOT/*/dc.sessions.json); run fetch_dc.py first "
1612
- "if the session hasn't been fetched yet.")
1613
- # Runtime-agnostic path overrides; default to ~/.vibe/...
1614
- from _shared.cli_override import add_cli_flags, apply_overrides
1615
- add_cli_flags(ap)
1616
- args = ap.parse_args()
1617
- apply_overrides(args, caller_globals=globals())
1618
- from resolve_session import resolve_disk_or_live
1619
- sid = resolve_disk_or_live(args.session)
1620
- return main_for_session(sid)
1621
-
1622
-
1623
- if __name__ == "__main__":
1624
- sys.exit(main())