@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,1750 +0,0 @@
1
- """Render dc._session_summary.md from dc._session_tree.json + dc._session_manifest.json.
2
-
3
- Given `DATA_ROOT/<sid>/dc._session_tree.json` (produced by `scripts/assemble_dc.py`)
4
- this module emits a human-readable `dc._session_summary.md`. Pure tree reader —
5
- no raw DMO fetches, no joins. The `session.identity` sub-object on the tree
6
- (added by the assembler) supplies all identity fields; everything else
7
- (counts, trees, catalog) comes from the tree itself.
8
-
9
- Output has 8 `##` sections:
10
-
11
- 1. Session identity — org/agent/bot/planner/session-start/end/duration
12
- 2. ID reference — full UUIDs for every ellipsized id in the tree
13
- 3. Transcript — narrative USER/AGENT text per TURN
14
- 4. Complete hierarchical trace — tree with `+start + dur = +end` math
15
- 5. Per-turn summary — one row per interaction
16
- 6. Session counts — engineer-facing totals
17
- 7. Empties diagnostics — DMOs that returned 0 rows + reason
18
- 8. Catalog (session-filtered)
19
-
20
- Contract:
21
- - Pure in-memory compute over already-produced artifacts.
22
- - Reads DATA_ROOT/<sid>/dc._session_tree.json and dc._session_manifest.json.
23
- - UUIDs in the tree are truncated to first 8 chars + `…`; full forms
24
- live in the ID reference block.
25
- - Session-not-found trees render only Session identity + a note.
26
- - Tree schema version check: refuses incompatible versions, warns on
27
- missing version (backward compat).
28
-
29
- Invocation:
30
- python3 scripts/render_dc.py --session <sid>
31
- """
32
- from __future__ import annotations
33
-
34
- import argparse
35
- import html
36
- import json
37
- import sys
38
- from datetime import datetime
39
- from pathlib import Path
40
- from typing import Dict, List, Optional
41
-
42
- sys.path.insert(0, str(Path(__file__).parent))
43
-
44
- from config import DATA_ROOT, paths
45
-
46
-
47
- # ---- schema ---------------------------------------------------------------
48
-
49
- _SUPPORTED_SCHEMA_VERSION = 1
50
-
51
-
52
- # ---- timestamp / string helpers -------------------------------------------
53
-
54
- def _parse_iso(s: Optional[str]) -> Optional[datetime]:
55
- if not s:
56
- return None
57
- try:
58
- return datetime.fromisoformat(s.replace("Z", "+00:00"))
59
- except (ValueError, AttributeError):
60
- return None
61
-
62
-
63
- def _fmt_offset(ts_iso: Optional[str], start_dt: Optional[datetime]) -> str:
64
- """Return '+12.345s' or '—' if timestamp is missing."""
65
- ts = _parse_iso(ts_iso)
66
- if ts is None or start_dt is None:
67
- return "—"
68
- return f"+{(ts - start_dt).total_seconds():.3f}s"
69
-
70
-
71
- def _fmt_duration_ms(start_iso: Optional[str], end_iso: Optional[str]) -> str:
72
- s = _parse_iso(start_iso)
73
- e = _parse_iso(end_iso)
74
- if s is None or e is None:
75
- return "—"
76
- return f"{int((e - s).total_seconds() * 1000)}ms"
77
-
78
-
79
- def _decode(s: Optional[str]) -> str:
80
- if not s:
81
- return ""
82
- return html.unescape(s).replace("\n", " ").strip()
83
-
84
-
85
- def _truncate(s: Optional[str], n: int = 80) -> str:
86
- if not s:
87
- return "—"
88
- s = _decode(s)
89
- return s if len(s) <= n else s[: n - 1] + "…"
90
-
91
-
92
- def _short(uid: Optional[str], keep: int = 8) -> str:
93
- """Truncate a UUID to `keep` chars + ellipsis. Full form lives in ID reference."""
94
- if not uid:
95
- return "—"
96
- return uid[:keep] + "…" if len(uid) > keep else uid
97
-
98
-
99
- def _fmt_total_duration(start_iso: Optional[str], end_iso: Optional[str]) -> Optional[str]:
100
- s = _parse_iso(start_iso)
101
- e = _parse_iso(end_iso)
102
- if s is None or e is None:
103
- return None
104
- total_secs = (e - s).total_seconds()
105
- if total_secs >= 3600:
106
- h = int(total_secs // 3600)
107
- m = int((total_secs % 3600) // 60)
108
- return f"{h}h {m}m {total_secs % 60:.3f}s"
109
- if total_secs >= 60:
110
- m = int(total_secs // 60)
111
- return f"{m}m {total_secs % 60:.3f}s"
112
- return f"{total_secs:.3f}s"
113
-
114
-
115
- # ---- session-end derivation ----------------------------------------------
116
-
117
- def _derive_session_end(sess: dict) -> tuple[Optional[str], Optional[str]]:
118
- """Return (effective_end_iso, source_label).
119
-
120
- Contract §3.5 derivation:
121
- 1. If `session.end_ts` is non-null → return it as-is (caller adds
122
- "✓ materialized" suffix).
123
- 2. Else prefer a SESSION_END interaction's `start_ts`
124
- (label: "from SESSION_END interaction").
125
- 3. Else fall back to the last TURN interaction's `end_ts`
126
- (or `start_ts` if end is null) (label: "session still open (last TURN)").
127
- 4. Else `(None, None)`.
128
- """
129
- end_iso = sess.get("end_ts")
130
- if end_iso:
131
- return end_iso, None # no derivation needed
132
- interactions = sess.get("interactions") or []
133
- # Prefer SESSION_END start_ts.
134
- for iv in interactions:
135
- if iv.get("type") == "SESSION_END" and iv.get("start_ts"):
136
- return iv["start_ts"], "from SESSION_END interaction"
137
- # Fall back to the last TURN (by interaction order; tree is already sorted).
138
- last_turn = None
139
- for iv in interactions:
140
- if iv.get("type") == "TURN":
141
- last_turn = iv
142
- if last_turn is not None:
143
- fallback = last_turn.get("end_ts") or last_turn.get("start_ts")
144
- if fallback:
145
- return fallback, "session still open (last TURN)"
146
- return None, None
147
-
148
-
149
- # ---- section builders -----------------------------------------------------
150
-
151
- # Channel-mode value → human cell. Annotated so the reader can tell at
152
- # a glance why we believe the mode is
153
- # what it is — `ssot__AiAgentChannelType__c` is identical for MIAW
154
- # production and Builder Previewer, which makes it useless without the
155
- # annotation.
156
- _MODE_HINTS: dict[str, str] = {
157
- "production_messaging": "production_messaging ← inferred from RelatedMessagingSessionId",
158
- "builder_previewer": "builder_previewer ← inferred from VariableText__c bootstrap keys",
159
- "voice": "voice ← inferred from RelatedVoiceCallId",
160
- "unknown": "unknown ← no signals (headless API, etc.)",
161
- }
162
-
163
-
164
- def _fmt_mode_cell(mode_value: str) -> str:
165
- """Format the `mode` field with a short why-this-value annotation."""
166
- return _MODE_HINTS.get(mode_value, mode_value)
167
-
168
-
169
- # Channel values that flag a production messaging session. `VariableText__c`
170
- # is expected to be NOT_SET on these — the bootstrap variables ride the
171
- # messaging session record, not the AI session. Any other channel
172
- # (E & O headless API, Builder Previewer, voice, unknown/integration)
173
- # can also legitimately produce NOT_SET, but for a different reason
174
- # (no bootstrap variables were attached at session start) — and we
175
- # must not mislabel those as "production messaging path".
176
- _MESSAGING_CHANNELS = frozenset({
177
- "SCRT2 - EmbeddedMessaging",
178
- "Messaging",
179
- })
180
-
181
-
182
- def _section_session_bootstrap(identity: dict, channel: Optional[str] = None) -> List[str]:
183
- """Render the `bootstrap_variables` block parsed from VariableText__c.
184
-
185
- Three states (all rendered as a small subtable so they don't clutter
186
- the main identity table):
187
- - None / NOT_SET → "no bootstrap variables for this session"
188
- (with a messaging-path addendum only when the
189
- session's `channel` is actually a messaging
190
- channel — see `_MESSAGING_CHANNELS`).
191
- - parse error → "_parse_error" with the raw prefix
192
- - populated → key/value pairs sorted, plus a "Builder Previewer
193
- indicators" tally derived from the same key set
194
- used in `_derive_mode`.
195
-
196
- Empty section returned when bootstrap_variables is missing entirely
197
- (older artifacts predate the bootstrap-variables harvest).
198
- """
199
- if "bootstrap_variables" not in identity:
200
- return [] # older artifact: no bootstrap_variables harvested
201
-
202
- bootstrap = identity.get("bootstrap_variables")
203
- lines: List[str] = ["## Session bootstrap", ""]
204
-
205
- if bootstrap is None:
206
- if channel in _MESSAGING_CHANNELS:
207
- lines.append(
208
- "`ssot__VariableText__c` is `NOT_SET` — no bootstrap variables "
209
- "(production messaging path; messaging sessions don't carry VariableText)."
210
- )
211
- else:
212
- lines.append(
213
- "`ssot__VariableText__c` is `NOT_SET` — no bootstrap variables for this session."
214
- )
215
- lines.append("")
216
- return lines
217
-
218
- if isinstance(bootstrap, dict) and bootstrap.get("_parse_error"):
219
- raw = bootstrap.get("_raw") or ""
220
- lines.append("`ssot__VariableText__c` failed to parse as JSON:")
221
- lines.append("")
222
- lines.append("```")
223
- lines.append(raw)
224
- lines.append("```")
225
- lines.append("")
226
- return lines
227
-
228
- # Populated case.
229
- indicator_keys = {
230
- "__resolved_locale__",
231
- "__locale_instruction__",
232
- "__supports_result_display__",
233
- "__show_tool_results_invoked__",
234
- }
235
- present_indicators = sorted(set(bootstrap) & indicator_keys)
236
- indicator_cell = (
237
- "yes · " + ", ".join(present_indicators)
238
- if present_indicators else "no"
239
- )
240
-
241
- lines.append("| Key | Value |")
242
- lines.append("|---|---|")
243
- for key in sorted(bootstrap):
244
- value = bootstrap[key]
245
- # Render lists / dicts compactly; keep strings/numbers/bools as-is.
246
- if isinstance(value, (list, dict)):
247
- value_repr = json.dumps(value)
248
- else:
249
- value_repr = str(value)
250
- # Pipe character would break the markdown table — escape.
251
- value_repr = value_repr.replace("|", "\\|")
252
- lines.append(f"| {key} | {value_repr} |")
253
- lines.append(f"| **Builder Previewer indicators** | {indicator_cell} |")
254
- lines.append("")
255
- return lines
256
-
257
-
258
- def _compose_agent_cell(identity: dict) -> Optional[str]:
259
- """Build the human Agent cell from identity fields; drop None components."""
260
- parts: List[str] = []
261
- api_name = identity.get("agent_api_name")
262
- version = identity.get("agent_version")
263
- if api_name and version:
264
- parts.append(f"{api_name} {version}")
265
- elif api_name:
266
- parts.append(api_name)
267
- elif version:
268
- parts.append(version)
269
- label = identity.get("agent_label")
270
- if label:
271
- parts.append(f"— {label}" if parts else label)
272
- atype = identity.get("agent_type")
273
- if atype:
274
- parts.append(f"({atype})")
275
- return " ".join(parts) if parts else None
276
-
277
-
278
- def _fmt_session_end_cell(effective_end_iso: Optional[str],
279
- end_source: Optional[str],
280
- raw_end_iso: Optional[str]) -> Optional[str]:
281
- """Compose the identity-table value for `Session end`.
282
-
283
- - Materialized end (`raw_end_iso` truthy) → "<iso> ✓ materialized"
284
- - Derived end (end_source truthy) → "<iso> (<source label>)"
285
- - Neither → None (row is dropped)
286
- """
287
- if effective_end_iso is None:
288
- return None
289
- if raw_end_iso:
290
- return f"{effective_end_iso} ✓ materialized"
291
- if end_source:
292
- return f"{effective_end_iso} ({end_source})"
293
- return effective_end_iso
294
-
295
-
296
- def _section_session_identity(sess: dict, effective_end_iso: Optional[str],
297
- end_source: Optional[str]) -> List[str]:
298
- identity = sess.get("identity") or {}
299
- org = sess.get("org") or {}
300
-
301
- # `mode` is "production_messaging" / "builder_previewer" / "voice" /
302
- # "unknown" — derived in assemble_dc from RelatedMessagingSessionId +
303
- # RelatedVoiceCallId + bootstrap_variables because
304
- # ssot__AiAgentChannelType__c is identical for MIAW production and
305
- # Builder Previewer.
306
- mode_value = identity.get("mode")
307
- mode_cell = _fmt_mode_cell(mode_value) if mode_value else None
308
-
309
- rows_out = [
310
- ("Session id", sess.get("id")),
311
- ("Org id", identity.get("org_id")),
312
- ("Org alias", org.get("alias")),
313
- ("Instance URL", org.get("instance_url")),
314
- ("Channel", sess.get("channel")),
315
- ("Mode", mode_cell),
316
- ("App type", identity.get("app_type")),
317
- ("Agent", _compose_agent_cell(identity)),
318
- ("Bot id", identity.get("bot_id")),
319
- ("Bot name", identity.get("bot_name")),
320
- ("Bot version id", identity.get("bot_version_id")),
321
- ("Planner id", identity.get("planner_id")),
322
- ("Planner name", identity.get("planner_name")),
323
- ("Planner type", identity.get("planner_type")),
324
- ("Configured model", identity.get("configured_model")),
325
- ("Platform user id", identity.get("platform_user_id")),
326
- ("Messaging session id", identity.get("messaging_session_id")),
327
- ("Messaging end-user id", identity.get("messaging_end_user_id")),
328
- ("Voice call id", identity.get("voice_call_id")),
329
- ("Individual id", identity.get("individual_id")),
330
- ("Session start", sess.get("start_ts")),
331
- (
332
- "Session end",
333
- _fmt_session_end_cell(effective_end_iso, end_source, sess.get("end_ts")),
334
- ),
335
- ("End type", sess.get("end_type")),
336
- ("Total duration", _fmt_total_duration(sess.get("start_ts"), effective_end_iso)),
337
- ]
338
- lines: List[str] = ["## Session identity", "", "| Field | Value |", "|---|---|"]
339
- for label, value in rows_out:
340
- if value is None or value == "" or value == "—":
341
- continue
342
- lines.append(f"| {label} | {value} |")
343
- lines.append("")
344
- return lines
345
-
346
-
347
- def _section_id_reference(sess: dict) -> List[str]:
348
- """Full-UUID lookup for every id the tree truncates."""
349
- lines: List[str] = [
350
- "## ID reference",
351
- "",
352
- "The tree truncates UUIDs to the first 8 chars + `…`. Look up the full "
353
- "form here. Ordered by type → first occurrence.",
354
- "",
355
- "```",
356
- f"session = {sess.get('id')}",
357
- "",
358
- ]
359
- # Interactions
360
- lines.append("interactions:")
361
- for iv in sess.get("interactions", []):
362
- lines.append(
363
- f" {iv.get('id')} type={iv.get('type') or '?'} "
364
- f"trace={iv.get('trace_id') or '—'}"
365
- )
366
- lines.append("")
367
- # Participants
368
- lines.append("participants:")
369
- for p in sess.get("participants", []):
370
- lines.append(
371
- f" {p.get('participant_id') or '—'} role={p.get('role') or '—'} "
372
- f"agent={p.get('agent_api_name') or '—'} version={p.get('agent_version') or '—'} "
373
- f"type={p.get('agent_type') or '—'}"
374
- )
375
- lines.append("")
376
-
377
- # Steps, generations, gateway_requests, messages harvested from the tree.
378
- all_steps: List[tuple] = []
379
- all_gens: List[tuple] = []
380
- all_gws: List[tuple] = []
381
- all_msgs: List[tuple] = []
382
- for iv in sess.get("interactions", []):
383
- for m in iv.get("messages", []):
384
- if m.get("message_id"):
385
- all_msgs.append((m["message_id"], m.get("role") or m.get("type") or "?"))
386
- for st in iv.get("steps", []):
387
- if st.get("id"):
388
- all_steps.append((st["id"], st.get("type") or "?", st.get("name") or "—"))
389
- gen = st.get("generation")
390
- if gen and gen.get("generation_id"):
391
- all_gens.append((
392
- gen["generation_id"],
393
- gen.get("response_id") or "—",
394
- gen.get("feature") or "—",
395
- ))
396
- gw = st.get("gateway_request")
397
- if gw and gw.get("gateway_request_id"):
398
- all_gws.append((
399
- gw["gateway_request_id"], "declared",
400
- gw.get("feature") or "—", gw.get("model") or "—",
401
- ))
402
- for tb in iv.get("timestamp_bound_gateway_calls", []):
403
- if tb.get("gateway_request_id"):
404
- all_gws.append((
405
- tb["gateway_request_id"], "timestamp_window",
406
- tb.get("feature") or "—", tb.get("model") or "—",
407
- ))
408
- for g in sess.get("unbound_gateway_calls", []):
409
- if g.get("gateway_request_id"):
410
- all_gws.append((
411
- g["gateway_request_id"], "unbound",
412
- g.get("feature") or "—", g.get("model") or "—",
413
- ))
414
-
415
- if all_steps:
416
- lines.append("steps:")
417
- for sid_, stype, sname in all_steps:
418
- lines.append(f" {sid_} type={stype} name={sname}")
419
- lines.append("")
420
- if all_gens:
421
- lines.append("generations:")
422
- for gid, rid, feat in all_gens:
423
- lines.append(f" {gid} response_id={rid} feature={feat}")
424
- lines.append("")
425
- if all_gws:
426
- lines.append("gateway_requests:")
427
- for gwid, bm, feat, model in all_gws:
428
- lines.append(f" {gwid} binding={bm} feature={feat} model={model}")
429
- lines.append("")
430
- if all_msgs:
431
- lines.append("messages:")
432
- for mid, role in all_msgs:
433
- lines.append(f" {mid} role={role}")
434
- lines.append("```")
435
- lines.append("")
436
- return lines
437
-
438
-
439
- def _section_transcript(sess: dict, start_dt: Optional[datetime]) -> List[str]:
440
- turns = [iv for iv in sess.get("interactions", []) if iv.get("type") == "TURN"]
441
- if not turns:
442
- return []
443
- lines: List[str] = ["## Transcript", ""]
444
- for iv in turns:
445
- start_off = _fmt_offset(iv.get("start_ts"), start_dt)
446
- dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
447
- lines.append(f"**Interaction {_short(iv.get('id'))}** · {start_off} · {dur}")
448
- for m in iv.get("messages", []):
449
- role = m.get("role") or m.get("type") or "?"
450
- lines.append(f"> **{role}:** {_decode(m.get('text') or '')}")
451
- lines.append("")
452
- return lines
453
-
454
-
455
- def _section_hierarchical_trace(sess: dict, start_dt: Optional[datetime],
456
- effective_end_iso: Optional[str],
457
- end_source: Optional[str]) -> List[str]:
458
- lines: List[str] = [
459
- "## Complete hierarchical trace",
460
- "",
461
- "Notation: `+Xs` = offset in seconds from session start. "
462
- "UUIDs are truncated to 8 chars + `…` for readability; "
463
- "full forms are in the **ID reference** block above.",
464
- "",
465
- "```",
466
- ]
467
-
468
- # Session header
469
- lines.append(f"SESSION {_short(sess.get('id'))}")
470
- start_iso = sess.get("start_ts")
471
- if start_iso:
472
- lines.append(f"│ Start +0.000s ({start_iso})")
473
-
474
- end_iso_raw = sess.get("end_ts")
475
- end_type = sess.get("end_type") or None
476
- outcome_s = end_type or "—"
477
- if not end_type and not end_iso_raw:
478
- outcome_s = "— (session end not yet materialized in STDM)"
479
- display_end = end_iso_raw or effective_end_iso
480
- if display_end:
481
- label_suffix = f" [{end_source}]" if end_source else ""
482
- lines.append(
483
- f"│ End {_fmt_offset(display_end, start_dt)} ({display_end}){label_suffix} "
484
- f"outcome={outcome_s}"
485
- )
486
- else:
487
- lines.append(f"│ End — (session still open) outcome={outcome_s}")
488
- lines.append("│")
489
-
490
- interactions = sess.get("interactions", [])
491
- for iv_idx, iv in enumerate(interactions):
492
- is_last_iv = iv_idx == len(interactions) - 1
493
- iv_branch = "└──" if is_last_iv else "├──"
494
- iv_cont = " " if is_last_iv else "│ "
495
-
496
- iv_start_off = _fmt_offset(iv.get("start_ts"), start_dt)
497
- iv_end_off = _fmt_offset(iv.get("end_ts"), start_dt)
498
- iv_dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
499
- iv_type = iv.get("type") or "?"
500
- lines.append(
501
- f"{iv_branch} {iv_type} {_short(iv.get('id'))} "
502
- f"{iv_start_off} + {iv_dur} = {iv_end_off}"
503
- )
504
-
505
- topic = iv.get("topic")
506
- if topic:
507
- lines.append(f"{iv_cont}├── TOPIC: {topic}")
508
-
509
- for m in iv.get("messages", []):
510
- role = m.get("role") or m.get("type") or "?"
511
- m_off = _fmt_offset(m.get("ts"), start_dt) if m.get("ts") else "—"
512
- lines.append(f"{iv_cont}├── {role} message {_short(m.get('message_id'))} ts={m_off}")
513
- lines.append(f"{iv_cont}│ └── text: \"{_truncate(m.get('text'), 100)}\"")
514
-
515
- steps = iv.get("steps", [])
516
- tsbound = iv.get("timestamp_bound_gateway_calls", [])
517
- tsb_by_step: Dict[str, List[dict]] = {}
518
- tsb_interaction_level: List[dict] = []
519
- for tb in tsbound:
520
- bsid = tb.get("bound_to_step_id")
521
- if bsid:
522
- tsb_by_step.setdefault(bsid, []).append(tb)
523
- else:
524
- tsb_interaction_level.append(tb)
525
-
526
- remaining_groups: List[str] = []
527
- if steps:
528
- remaining_groups.append("steps")
529
- if tsb_interaction_level:
530
- remaining_groups.append("ts_il")
531
-
532
- for grp_idx, grp in enumerate(remaining_groups):
533
- grp_is_last = grp_idx == len(remaining_groups) - 1
534
- grp_branch = "└──" if grp_is_last else "├──"
535
- grp_cont = " " if grp_is_last else "│ "
536
- if grp == "steps":
537
- lines.append(f"{iv_cont}{grp_branch} STEPS:")
538
- for st_idx, st in enumerate(steps):
539
- lines.extend(_render_step(
540
- st, st_idx, len(steps), iv_cont, grp_cont,
541
- start_dt, tsb_by_step,
542
- ))
543
- else: # grp == "ts_il"
544
- lines.append(f"{iv_cont}{grp_branch} INTERACTION-LEVEL TIMESTAMP-BOUND GATEWAY CALLS:")
545
- for tb_idx, tb in enumerate(tsb_interaction_level):
546
- tb_is_last = tb_idx == len(tsb_interaction_level) - 1
547
- tb_branch = "└──" if tb_is_last else "├──"
548
- lines.append(
549
- f"{iv_cont}{grp_cont}{tb_branch} "
550
- f"gateway_request [timestamp_window, interaction-level] "
551
- f"{_short(tb.get('gateway_request_id'))} "
552
- f"feature={tb.get('feature') or '—'} "
553
- f"model={tb.get('model') or '—'}"
554
- )
555
-
556
- if not is_last_iv:
557
- lines.append("│")
558
-
559
- # Unbound gateway calls (session root level)
560
- ub = sess.get("unbound_gateway_calls", [])
561
- if ub:
562
- lines.append("")
563
- lines.append(
564
- f"UNBOUND GATEWAY CALLS ({len(ub)}) — neither declared chain "
565
- "nor timestamp window matched"
566
- )
567
- for i, g in enumerate(ub):
568
- branch = "└──" if i == len(ub) - 1 else "├──"
569
- lines.append(
570
- f"{branch} {_short(g.get('gateway_request_id'))} "
571
- f"feature={g.get('feature') or '—'} model={g.get('model') or '—'}"
572
- )
573
-
574
- lines.append("```")
575
- lines.append("")
576
- return lines
577
-
578
-
579
- def _render_step(st: dict, st_idx: int, n_steps: int,
580
- iv_cont: str, grp_cont: str,
581
- start_dt: Optional[datetime],
582
- tsb_by_step: Dict[str, List[dict]]) -> List[str]:
583
- """Render one step + its nested generation / gateway_request / ts-bound GWs."""
584
- st_is_last = st_idx == n_steps - 1
585
- st_branch = "└──" if st_is_last else "├──"
586
- st_cont = " " if st_is_last else "│ "
587
- st_start_off = _fmt_offset(st.get("start_ts"), start_dt)
588
- st_end_off = _fmt_offset(st.get("end_ts"), start_dt)
589
- st_dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
590
-
591
- # Show the bound LLM model alongside the step name when known.
592
- # `model_name` is mirrored from the bound gateway_request by
593
- # assemble_dc; None when the declared chain didn't reach or when STDM
594
- # dropped writes (the `gateway_requests_dropped_by_stdm` shape).
595
- name_cell = st.get("name") or "—"
596
- model_name = st.get("model_name")
597
- if model_name:
598
- name_cell = f"{name_cell} · {model_name}"
599
-
600
- lines = [
601
- f"{iv_cont}{grp_cont}{st_branch} {st.get('type') or '?'} {_short(st.get('id'))} "
602
- f"name={name_cell} {st_start_off} + {st_dur} = {st_end_off}"
603
- ]
604
-
605
- # Step children: error, generation (+ trust signals), gateway_request, collision, bound GWs.
606
- step_kids: List[tuple] = []
607
- if st.get("error_text"):
608
- step_kids.append(("error", None))
609
- gen = st.get("generation")
610
- if gen:
611
- step_kids.append(("gen", gen))
612
- gw = st.get("gateway_request")
613
- if gw:
614
- step_kids.append(("gw", gw))
615
- if st.get("gateway_request_collision"):
616
- step_kids.append(("collision", None))
617
- for tb in tsb_by_step.get(st.get("id", ""), []):
618
- step_kids.append(("tsb", tb))
619
-
620
- prefix = f"{iv_cont}{grp_cont}{st_cont}"
621
- for k_idx, (ktype, kval) in enumerate(step_kids):
622
- k_is_last = k_idx == len(step_kids) - 1
623
- k_branch = "└──" if k_is_last else "├──"
624
- k_cont = " " if k_is_last else "│ "
625
-
626
- if ktype == "error":
627
- lines.append(f"{prefix}{k_branch} ERROR: {st['error_text']}")
628
- elif ktype == "collision":
629
- lines.append(
630
- f"{prefix}{k_branch} ⚠ gateway_request_collision: "
631
- "earlier step claimed the declared GW"
632
- )
633
- elif ktype == "gen":
634
- lines.extend(_render_generation(kval, prefix, k_branch, k_cont,
635
- step_name=st.get("name")))
636
- elif ktype == "gw":
637
- lines.extend(_render_gw_declared(kval, prefix, k_branch, k_cont))
638
- elif ktype == "tsb":
639
- tb = kval
640
- lines.append(
641
- f"{prefix}{k_branch} gateway_request [timestamp_window] "
642
- f"{_short(tb.get('gateway_request_id'))} "
643
- f"feature={tb.get('feature') or '—'} "
644
- f"model={tb.get('model') or '—'}"
645
- )
646
- return lines
647
-
648
-
649
- _ROLE_LABELS = {
650
- "ReactTopicPrompt": "topic-classification output",
651
- "ReactInitialPrompt": "ReAct planner step",
652
- "ReactValidationPrompt": "ReAct validator",
653
- "ReactFormatSurfaceResponsePrompt": "response formatter",
654
- }
655
-
656
-
657
- def _role_label_for(step_name: Optional[str]) -> Optional[str]:
658
- if not step_name:
659
- return None
660
- for key, label in _ROLE_LABELS.items():
661
- if key in step_name:
662
- return label
663
- return None
664
-
665
-
666
- def _parse_finish_reason(response_parameters: Optional[str]) -> Optional[str]:
667
- """Pull finish_reason out of the HTML-escaped JSON in responseParameters__c.
668
- Shape: `{&quot;finish_reason&quot;:&quot;&#92;&quot;stop&#92;&quot;&quot;,...}`."""
669
- if not response_parameters:
670
- return None
671
- try:
672
- decoded = html.unescape(response_parameters)
673
- parsed = json.loads(decoded)
674
- except (ValueError, TypeError):
675
- return None
676
- raw = parsed.get("finish_reason") if isinstance(parsed, dict) else None
677
- if not isinstance(raw, str):
678
- return None
679
- # value often comes wrapped in escaped quotes: `\"stop\"` → `stop`
680
- return raw.replace("\\", "").strip('"').strip()
681
-
682
-
683
- def _decoded_line(response_text: Optional[str]) -> str:
684
- """Render `decoded:` content. Detect tool-call JSON and summarize.
685
- responseText__c is HTML-escaped (&quot; etc.) in the wire format — unescape
686
- before trying to parse as JSON."""
687
- if not response_text:
688
- return "—"
689
- candidate = html.unescape(response_text).strip()
690
- if candidate.startswith("{") and '"toolInvocations"' in candidate:
691
- try:
692
- obj = json.loads(candidate)
693
- tools = obj.get("toolInvocations") or []
694
- content = (obj.get("content") or "").strip()
695
- if tools:
696
- first = tools[0].get("function") or {}
697
- name = first.get("name") or "?"
698
- args_raw = first.get("arguments") or ""
699
- arg_summary = ""
700
- try:
701
- args_obj = json.loads(args_raw) if isinstance(args_raw, str) else args_raw
702
- if isinstance(args_obj, dict) and args_obj:
703
- k, v = next(iter(args_obj.items()))
704
- v_str = str(v)
705
- if len(v_str) > 60:
706
- v_str = v_str[:57] + "…"
707
- arg_summary = f'{k}="{v_str}"'
708
- except (ValueError, TypeError):
709
- pass
710
- prefix = "no user text" if not content else f'"{_truncate(content, 60)}"'
711
- n = len(tools)
712
- call_word = "tool call" if n == 1 else "tool calls"
713
- return f"{prefix}; {n} {call_word} → {name}({arg_summary})"
714
- except (ValueError, TypeError):
715
- pass
716
- return f'"{_truncate(response_text, 140)}"'
717
-
718
-
719
- def _float_or_none(v) -> Optional[float]:
720
- try:
721
- return float(v)
722
- except (ValueError, TypeError):
723
- return None
724
-
725
-
726
- def _trust_line(g: dict) -> str:
727
- """Summarize trust signals. TOXICITY sub-categories (parented on the
728
- quality row) carry a dedicated `safety_score` category in the 0-1 range
729
- (1.0 = clean). Non-`safety_score` sub-categories are the 8 hazard axes
730
- (profanity, hate, violence, …); report the max of those when a detection
731
- fires so the reader sees which axis tripped.
732
- Non-TOXICITY detectors (InstructionAdherence, etc.) are parented directly
733
- on the generation and render as textual verdicts."""
734
- quality = g.get("quality") or []
735
- cats = g.get("categories") or []
736
- if not quality and not cats:
737
- return "— (no quality/category rows)"
738
- parts: List[str] = []
739
- for q in quality:
740
- subs = q.get("_toxicity_subcategories") or []
741
- detected = str(q.get("isToxicityDetected__c", "")).lower() == "true"
742
- safety: Optional[float] = None
743
- hazard_subs: List[tuple] = []
744
- for s in subs:
745
- if (s.get("detectorType__c") or "").upper() != "TOXICITY":
746
- continue
747
- name = s.get("category__c") or ""
748
- val = _float_or_none(s.get("value__c"))
749
- if val is None:
750
- continue
751
- if name == "safety_score":
752
- safety = val
753
- else:
754
- hazard_subs.append((name, val))
755
- status = "detected" if detected else "clean"
756
- safety_str = f"{safety:.2f}" if safety is not None else "—"
757
- if not detected and hazard_subs and all(v == 0 for _, v in hazard_subs):
758
- detail = f" — all {len(hazard_subs)} sub-categories 0.00"
759
- elif hazard_subs:
760
- top_name, top_val = max(hazard_subs, key=lambda kv: kv[1])
761
- detail = f" — max {top_name}={top_val:.2f}"
762
- else:
763
- detail = ""
764
- parts.append(f"TOXICITY safety_score={safety_str} ({status}{detail})")
765
- # Non-TOXICITY detectors (generation-direct).
766
- for c in cats:
767
- dtype = (c.get("detectorType__c") or "?").strip()
768
- if dtype.upper() == "TOXICITY":
769
- continue
770
- val = c.get("value__c")
771
- parts.append(f"{dtype}: {_truncate(val, 80)}")
772
- return "; ".join(parts) if parts else "—"
773
-
774
-
775
- def _render_generation(g: dict, prefix: str, k_branch: str, k_cont: str,
776
- *, step_name: Optional[str] = None) -> List[str]:
777
- """Generation node: 3 fixed children (decoded / finish_reason+masked / trust).
778
- Header is naked (id only); `response_id` and `feature` live in the ID reference
779
- block / on the sibling gateway_request line."""
780
- lines = [
781
- f"{prefix}{k_branch} generation {_short(g.get('generation_id'))}"
782
- ]
783
- role = _role_label_for(step_name)
784
- decoded = _decoded_line(g.get("response_text"))
785
- if role:
786
- decoded_line = f"decoded: {decoded} ({role})"
787
- else:
788
- decoded_line = f"decoded: {decoded}"
789
- masked = g.get("masked_response_text")
790
- masked_disp = _truncate(masked, 60) if masked else "—"
791
- finish_reason = _parse_finish_reason(g.get("response_parameters")) or "—"
792
- gprefix = f"{prefix}{k_cont}"
793
- lines.append(f"{gprefix}├── {decoded_line}")
794
- lines.append(f"{gprefix}├── finish_reason={finish_reason} masked={masked_disp}")
795
- lines.append(f"{gprefix}└── trust: {_trust_line(g)}")
796
- return lines
797
-
798
-
799
- def _render_gw_declared(g: dict, prefix: str, k_branch: str, k_cont: str) -> List[str]:
800
- tokens = (
801
- f"prompt={int(g.get('prompt_tokens') or 0)} "
802
- f"completion={int(g.get('completion_tokens') or 0)} "
803
- f"total={int(g.get('total_tokens') or 0)}"
804
- )
805
- tags = g.get("tags") or []
806
- md = g.get("metadata") or []
807
- recs = g.get("records") or []
808
- llm = g.get("llm") or []
809
- audit_line = (
810
- f"audit: tags={len(tags)} metadata={len(md)} records={len(recs)} llm={len(llm)}"
811
- if (tags or md or recs or llm)
812
- else "audit: (none)"
813
- )
814
- return [
815
- f"{prefix}{k_branch} gateway_request [declared] "
816
- f"{_short(g.get('gateway_request_id'))} "
817
- f"feature={g.get('feature') or '—'} "
818
- f"model={g.get('model') or '—'} "
819
- f"provider={g.get('provider') or '—'}",
820
- f"{prefix}{k_cont}├── tokens: {tokens}",
821
- f"{prefix}{k_cont}└── {audit_line}",
822
- ]
823
-
824
-
825
- def _section_per_turn_summary(sess: dict, start_dt: Optional[datetime]) -> List[str]:
826
- lines: List[str] = [
827
- "## Per-turn summary",
828
- "",
829
- "| Interaction | Type | Start offset | Duration | Steps | "
830
- "GW declared | GW ts_window | USER → AGENT |",
831
- "|---|---|---|---|---|---|---|---|",
832
- ]
833
- for iv in sess.get("interactions", []):
834
- iv_type = iv.get("type") or "?"
835
- start_off = _fmt_offset(iv.get("start_ts"), start_dt)
836
- dur = _fmt_duration_ms(iv.get("start_ts"), iv.get("end_ts"))
837
- step_count = len(iv.get("steps", []))
838
- declared_gws = sum(
839
- 1 for st in iv.get("steps", [])
840
- if st.get("gateway_request")
841
- and st["gateway_request"].get("binding_method") == "declared"
842
- )
843
- tsw_gws = len(iv.get("timestamp_bound_gateway_calls", []))
844
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
845
- agent_msg = next((m for m in iv.get("messages", []) if m.get("role") == "AGENT"), None)
846
- ut = _truncate(user_msg.get("text") if user_msg else None, 40)
847
- at = _truncate(agent_msg.get("text") if agent_msg else None, 40)
848
- lines.append(
849
- f"| `{_short(iv.get('id'))}` | {iv_type} | {start_off} | {dur} | "
850
- f"{step_count} | {declared_gws} | {tsw_gws} | {ut} → {at} |"
851
- )
852
- lines.append("")
853
- return lines
854
-
855
-
856
- # ---- visual analysis (mermaid) -------------------------------------------
857
-
858
- # Chars that break mermaid label parsing when bare; quote-wrap the string
859
- # when any of these show up. Underscore+digit tokens in topic strings are
860
- # legal inside mermaid node labels — only syntax-significant chars need
861
- # escaping here.
862
- _MERMAID_LABEL_SPECIALS = set(',()<>:"#')
863
-
864
-
865
- def _escape_mermaid_label(s: str) -> str:
866
- if not s:
867
- return '""'
868
- if any(ch in _MERMAID_LABEL_SPECIALS for ch in s):
869
- return '"' + s.replace('"', '\\"') + '"'
870
- return s
871
-
872
-
873
- def _sequence_msg(s: str) -> str:
874
- """Sanitize free-form text for the right-hand side of a sequenceDiagram
875
- arrow. Mermaid parses `A->>B: <text>` up to newline — the text itself is
876
- unquoted, so wrapping in `"..."` (as node-label escape does) renders the
877
- quotes literally. We just strip newlines and escape the one char that
878
- ends the message field (semicolon is the statement terminator)."""
879
- if not s:
880
- return "—"
881
- return s.replace("\n", " ").replace(";", ",").strip()
882
-
883
-
884
- def _flowchart_edge_label(s: str) -> str:
885
- """Sanitize free-form text for a flowchart edge label `A -->|label| B`.
886
- The delimiter is the pipe itself, so a literal `|` in the label shatters
887
- the parser. Square brackets also clash with node-shape syntax. Strip/
888
- substitute these; other specials (commas, colons, parens) are fine
889
- inside quoted labels, which `_escape_mermaid_label` handles."""
890
- if not s:
891
- return ""
892
- cleaned = s.replace("|", "/").replace("[", "(").replace("]", ")")
893
- return _escape_mermaid_label(cleaned)
894
-
895
-
896
- def _step_display_name(st: dict) -> str:
897
- """Short, mermaid-safe row label for a step.
898
-
899
- - Strip `AiCopilot__` prefix on LLM prompts.
900
- - For ACTION_STEP names shaped `Topic_xxx.AGNT_Action_yyy`, keep the
901
- action-name portion after the last `.` so the row reads as the
902
- invoked action, not the topic.
903
- """
904
- name = st.get("name") or st.get("type") or "?"
905
- if name.startswith("AiCopilot__"):
906
- name = name[len("AiCopilot__"):]
907
- if st.get("type") == "ACTION_STEP" and "." in name:
908
- name = name.rsplit(".", 1)[-1]
909
- # Gantt task names cannot contain colons (task syntax is `label : id, start, dur`).
910
- return name.replace(":", "·")
911
-
912
-
913
- def _iter_turns(sess: dict) -> List[dict]:
914
- return [iv for iv in sess.get("interactions", []) if iv.get("type") == "TURN"]
915
-
916
-
917
- def _mermaid_gantt(
918
- sess: dict,
919
- start_dt: Optional[datetime],
920
- llm_calls: Optional[List[dict]] = None,
921
- ) -> List[str]:
922
- """Gantt chart — wall-clock timeline.
923
-
924
- Rows per turn (ACTION steps tagged :crit). When `llm_calls` is
925
- non-empty, a trailing "LLM calls" section renders per-call rows
926
- tagged by region-class (:active = cross_region, :done = same-
927
- region, plain = unknown). Mermaid's built-in 3-class palette is
928
- enough signal for v1; full per-region color would need a classDef
929
- block (deferred — see plan OOS-2.A).
930
-
931
- Kill-criterion: <3 total rows after dropping zero-duration steps
932
- AND no LLM-call rows → return []. If the step set is thin but the
933
- call set is non-empty, we still render (the call rows are the
934
- whole point of the overlay).
935
- """
936
- if start_dt is None:
937
- return []
938
- rows: List[tuple] = [] # (section_label, row_label, start_ms, end_ms, is_action)
939
- turns = _iter_turns(sess)
940
- for iv in sess.get("interactions", []):
941
- if iv.get("type") != "TURN":
942
- continue
943
- topic = iv.get("topic") or "(no topic)"
944
- section = f"Turn {turns.index(iv) + 1} ({topic})"
945
- for st in iv.get("steps", []):
946
- if st.get("type") == "SESSION_END":
947
- continue
948
- s_dt = _parse_iso(st.get("start_ts"))
949
- e_dt = _parse_iso(st.get("end_ts"))
950
- if s_dt is None or e_dt is None:
951
- continue
952
- s_ms = int((s_dt - start_dt).total_seconds() * 1000)
953
- e_ms = int((e_dt - start_dt).total_seconds() * 1000)
954
- if e_ms <= s_ms:
955
- continue # skip zero-duration (e.g. TOPIC_STEP markers)
956
- rows.append((section, _step_display_name(st), s_ms, e_ms,
957
- st.get("type") == "ACTION_STEP"))
958
-
959
- # LLM-call rows — one per gateway call, derived from _llm_calls.json.
960
- # Rendered in a trailing section so they don't interleave with step
961
- # rows (mermaid sections don't sort across boundaries).
962
- call_rows: List[tuple] = [] # (row_label, start_ms, end_ms, class_tag)
963
- for call in (llm_calls or []):
964
- t_iso = call.get("_time")
965
- dur_ms = call.get("duration_ms")
966
- if not t_iso or dur_ms is None:
967
- continue
968
- t_dt = _parse_iso(t_iso)
969
- if t_dt is None:
970
- continue
971
- s_ms = int((t_dt - start_dt).total_seconds() * 1000)
972
- e_ms = s_ms + int(dur_ms)
973
- if e_ms <= s_ms:
974
- continue
975
- # class_tag: cross_region=True → :active (mermaid's yellow),
976
- # cross_region=False → :done (grey), unknown/None → no tag
977
- # (default blue). Operators can scan for the yellow bars as
978
- # the cross-region outliers.
979
- cr = call.get("cross_region")
980
- if cr is True:
981
- class_tag = ":active, "
982
- elif cr is False:
983
- class_tag = ":done, "
984
- else:
985
- class_tag = ":"
986
- model = call.get("model_name") or "call"
987
- region = call.get("routing_decision") or "—"
988
- label = _escape_mermaid_label(f"{model} [{region}]")
989
- call_rows.append((label, s_ms, e_ms, class_tag))
990
-
991
- if len(rows) < 3 and not call_rows:
992
- return []
993
-
994
- # axisFormat: `%M:%S` renders as minutes:seconds via d3. Our offsets
995
- # are ms-from-start passed through `dateFormat x` (unix epoch); d3
996
- # treats them as Jan 1 1970 timestamps, so for any session under
997
- # 1 hour this reads cleanly as m:ss elapsed. `%L` (ms-of-second)
998
- # always rendered 000 because ticks land at second boundaries.
999
- # The leading `section anchor` + 1ms milestone forces the x-axis to
1000
- # start at 00:00 — mermaid derives axis min from the smallest task
1001
- # timestamp, and without the anchor that's the first step's offset
1002
- # (~5s into a typical session), making the axis misleadingly slide.
1003
- lines = [
1004
- "```mermaid",
1005
- "gantt",
1006
- " title Session timeline (m:ss from start)",
1007
- " dateFormat x",
1008
- " axisFormat %M:%S",
1009
- " section Session start",
1010
- " t0 :milestone, 0, 0",
1011
- ]
1012
- current_section: Optional[str] = None
1013
- for section, label, s_ms, e_ms, is_action in rows:
1014
- if section != current_section:
1015
- lines.append(f" section {section}")
1016
- current_section = section
1017
- # Mermaid gantt task: `<name> :[tag,] <start>, <end>` — single colon,
1018
- # tag is the first comma-separated field after it. Two colons (the
1019
- # `:crit:` shape) is a parse error.
1020
- prefix = ":crit, " if is_action else ":"
1021
- lines.append(f" {label} {prefix}{s_ms}, {e_ms}")
1022
- if call_rows:
1023
- lines.append(" section LLM calls")
1024
- for label, s_ms, e_ms, class_tag in call_rows:
1025
- lines.append(f" {label} {class_tag}{s_ms}, {e_ms}")
1026
- lines.append("```")
1027
- lines.append("")
1028
- return lines
1029
-
1030
-
1031
- def _action_short_name(st: dict) -> str:
1032
- name = st.get("name") or ""
1033
- if "." in name:
1034
- name = name.rsplit(".", 1)[-1]
1035
- return name or "action"
1036
-
1037
-
1038
- def _mermaid_sequence_per_turn(iv: dict, start_dt: Optional[datetime],
1039
- turn_no: int) -> List[str]:
1040
- steps = iv.get("steps", [])
1041
- has_error = any(st.get("error_text") for st in steps)
1042
- action_steps = [st for st in steps if st.get("type") == "ACTION_STEP"]
1043
- if not has_error and len(action_steps) < 2:
1044
- return []
1045
-
1046
- topic = iv.get("topic") or "(no topic)"
1047
- heading = f"### Turn {turn_no} ({topic}) — control flow"
1048
- lines: List[str] = [heading, "", "```mermaid", "sequenceDiagram"]
1049
-
1050
- # Participants: U, P, L are always present; actions get A1, A2, …
1051
- lines.append(" participant U as USER")
1052
- lines.append(" participant P as Planner")
1053
- lines.append(" participant L as LLM Gateway")
1054
- action_alias: Dict[str, str] = {} # step id → alias
1055
- for i, st in enumerate(action_steps, start=1):
1056
- alias = f"A{i}"
1057
- action_alias[st.get("id") or f"_a{i}"] = alias
1058
- label = _escape_mermaid_label(_action_short_name(st))
1059
- lines.append(f" participant {alias} as {label}")
1060
-
1061
- # User → Planner (utterance).
1062
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
1063
- user_text = _truncate(user_msg.get("text") if user_msg else None, 40)
1064
- if user_msg:
1065
- lines.append(f" U->>P: {_sequence_msg(user_text)}")
1066
-
1067
- # Walk steps in order. LLM → L, ACTION → A<n>, errors → Note over.
1068
- for st in steps:
1069
- stype = st.get("type")
1070
- if stype == "LLM_STEP":
1071
- label = _step_display_name(st)
1072
- gw = st.get("gateway_request") or {}
1073
- model = gw.get("model")
1074
- suffix = f" ({model})" if model else ""
1075
- lines.append(f" P->>L: {_sequence_msg(label + suffix)}")
1076
- dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
1077
- if st.get("error_text"):
1078
- lines.append(f" Note over L: ERROR in {dur}")
1079
- else:
1080
- lines.append(f" L-->>P: ok ({dur})")
1081
- elif stype == "ACTION_STEP":
1082
- alias = action_alias.get(st.get("id") or "", "A?")
1083
- dur = _fmt_duration_ms(st.get("start_ts"), st.get("end_ts"))
1084
- lines.append(f" P->>{alias}: invoke")
1085
- lines.append(f" {alias}-->>P: result ({dur})")
1086
-
1087
- # Agent reply (if any).
1088
- agent_msg = next((m for m in iv.get("messages", []) if m.get("role") == "AGENT"), None)
1089
- if agent_msg:
1090
- agent_text = _truncate(agent_msg.get("text"), 40)
1091
- lines.append(f" P-->>U: {_sequence_msg(agent_text)}")
1092
-
1093
- lines.append("```")
1094
- lines.append("")
1095
- return lines
1096
-
1097
-
1098
- def _mermaid_topic_flowchart(sess: dict) -> List[str]:
1099
- turns = _iter_turns(sess)
1100
- if not turns:
1101
- return []
1102
- # Order-preserving unique topics.
1103
- topic_ids: Dict[str, str] = {}
1104
- for iv in turns:
1105
- t = iv.get("topic") or "(no topic)"
1106
- if t not in topic_ids:
1107
- topic_ids[t] = f"T{len(topic_ids) + 1}"
1108
- if len(topic_ids) == len(turns):
1109
- return [] # linear — no repeats, skip
1110
-
1111
- lines: List[str] = ["```mermaid", "flowchart LR"]
1112
- # Node declarations.
1113
- for topic, node_id in topic_ids.items():
1114
- lines.append(f" {node_id}[{_escape_mermaid_label(topic)}]")
1115
-
1116
- # Edges: one per turn transition, labelled by the user utterance that
1117
- # drove into that turn. The first turn has no predecessor so we just
1118
- # declare the node; edges start from turn 2.
1119
- prev_topic = turns[0].get("topic") or "(no topic)"
1120
- for iv in turns[1:]:
1121
- cur_topic = iv.get("topic") or "(no topic)"
1122
- user_msg = next((m for m in iv.get("messages", []) if m.get("role") == "USER"), None)
1123
- utter = _truncate(user_msg.get("text") if user_msg else None, 30)
1124
- src = topic_ids[prev_topic]
1125
- dst = topic_ids[cur_topic]
1126
- label = _flowchart_edge_label(utter) if utter and utter != "—" else ""
1127
- arrow = f" {src} -->|{label}| {dst}" if label else f" {src} --> {dst}"
1128
- lines.append(arrow)
1129
- prev_topic = cur_topic
1130
-
1131
- # Error class for topics whose turn ended with an error_text.
1132
- errored_topic_ids: List[str] = []
1133
- for iv in turns:
1134
- if any(st.get("error_text") for st in iv.get("steps", [])):
1135
- tid = topic_ids[iv.get("topic") or "(no topic)"]
1136
- if tid not in errored_topic_ids:
1137
- errored_topic_ids.append(tid)
1138
- if errored_topic_ids:
1139
- lines.append(f" classDef err fill:#fee,stroke:#c00")
1140
- for tid in errored_topic_ids:
1141
- lines.append(f" class {tid} err")
1142
-
1143
- lines.append("```")
1144
- lines.append("")
1145
- return lines
1146
-
1147
-
1148
- def _mermaid_token_pie(sess: dict) -> List[str]:
1149
- buckets: Dict[str, int] = {}
1150
- total = 0
1151
- for iv in sess.get("interactions", []):
1152
- for st in iv.get("steps", []):
1153
- gw = st.get("gateway_request") or {}
1154
- p = int(gw.get("prompt_tokens") or 0)
1155
- c = int(gw.get("completion_tokens") or 0)
1156
- tok = p + c
1157
- if tok <= 0:
1158
- continue
1159
- role = _role_label_for(st.get("name")) or "other"
1160
- buckets[role] = buckets.get(role, 0) + tok
1161
- total += tok
1162
- if total < 1000 or not buckets:
1163
- return []
1164
-
1165
- lines = [
1166
- "```mermaid",
1167
- "pie showData",
1168
- f" title Prompt-role token attribution (total = {total:,})",
1169
- ]
1170
- # Largest slice first reads better in most renderers.
1171
- for role, n in sorted(buckets.items(), key=lambda kv: -kv[1]):
1172
- lines.append(f' "{role}" : {n}')
1173
- lines.append("```")
1174
- lines.append("")
1175
- return lines
1176
-
1177
-
1178
- def _section_visual_analysis(
1179
- sess: dict,
1180
- start_dt: Optional[datetime],
1181
- llm_calls: Optional[List[dict]] = None,
1182
- ) -> List[str]:
1183
- blocks: List[List[str]] = []
1184
- gantt = _mermaid_gantt(sess, start_dt, llm_calls=llm_calls)
1185
- if gantt:
1186
- blocks.append(gantt)
1187
- # Per-turn sequence diagrams (at most one per turn; most turns skip).
1188
- turns = _iter_turns(sess)
1189
- for idx, iv in enumerate(turns, start=1):
1190
- seq = _mermaid_sequence_per_turn(iv, start_dt, idx)
1191
- if seq:
1192
- blocks.append(seq)
1193
- flow = _mermaid_topic_flowchart(sess)
1194
- if flow:
1195
- blocks.append(flow)
1196
- pie = _mermaid_token_pie(sess)
1197
- if pie:
1198
- blocks.append(pie)
1199
-
1200
- if not blocks:
1201
- return []
1202
- lines: List[str] = ["## Visual analysis", ""]
1203
- for b in blocks:
1204
- lines.extend(b)
1205
- return lines
1206
-
1207
-
1208
- def _section_session_counts(sess: dict) -> List[str]:
1209
- c = sess.get("counts", {})
1210
- st_by_type = c.get("steps_by_type", {})
1211
- gwb = c.get("gw_binding", {})
1212
- lines: List[str] = [
1213
- "## Session counts",
1214
- "",
1215
- "| metric | value |",
1216
- "|---|---|",
1217
- f"| interactions | {c.get('interactions_total', 0)} |",
1218
- f"| steps | {c.get('steps_total', 0)} |",
1219
- f"| llm_steps | {st_by_type.get('LLM_STEP', 0)} |",
1220
- f"| action_steps | {st_by_type.get('ACTION_STEP', 0)} |",
1221
- f"| gateway_requests | {c.get('gateway_requests', 0)} |",
1222
- f"| gateway_responses | {c.get('gateway_responses', 0)} |",
1223
- f"| 1:1 invariant | {'✓' if c.get('audit_chain_1to1_ok') else '✗'} |",
1224
- f"| gw declared | {gwb.get('declared', 0)} |",
1225
- f"| gw timestamp_window | {gwb.get('timestamp_window', 0)} |",
1226
- f"| gw unbound | {gwb.get('unbound', 0)} |",
1227
- ]
1228
- if gwb.get("declared_collisions"):
1229
- lines.append(f"| ⚠ declared_collisions | {gwb['declared_collisions']} |")
1230
- lines.append("")
1231
- return lines
1232
-
1233
-
1234
- def _section_empties_diagnostics(manifest: dict) -> List[str]:
1235
- """Operator-actionable: lift `_unavailable_reason` verbatim from the manifest."""
1236
- queries = manifest.get("queries", []) if manifest else []
1237
- empties = [
1238
- q for q in queries
1239
- if q.get("rows") == 0 and q.get("_unavailable_reason")
1240
- ]
1241
- if not empties:
1242
- return []
1243
- lines: List[str] = [
1244
- "## Empties diagnostics",
1245
- "",
1246
- "DMOs that returned zero rows, with the reason lifted verbatim from the manifest:",
1247
- "",
1248
- "| DMO | Reason |",
1249
- "|---|---|",
1250
- ]
1251
- for q in empties:
1252
- name = q.get("name") or "?"
1253
- # Pipe characters in reason text would break markdown tables.
1254
- reason = str(q.get("_unavailable_reason") or "").replace("|", "\\|")
1255
- lines.append(f"| {name} | {reason} |")
1256
- lines.append("")
1257
- return lines
1258
-
1259
-
1260
- def _section_catalog(tree: dict) -> List[str]:
1261
- catalog = tree.get("catalog", {}) or {}
1262
- agents = ", ".join(catalog.get("agents_observed", []) or []) or "—"
1263
- return [
1264
- "## Catalog (session-filtered)",
1265
- "",
1266
- f"- TagDefinitions: {len(catalog.get('tag_definitions', []) or [])}",
1267
- f"- TagDefinitionAssociations: "
1268
- f"{len(catalog.get('tag_definition_associations', []) or [])} (agents: {agents})",
1269
- f"- Tags: {len(catalog.get('tags', []) or [])}",
1270
- "",
1271
- ]
1272
-
1273
-
1274
- # ---- top-level render + entry points -------------------------------------
1275
-
1276
- def render(
1277
- tree: dict,
1278
- manifest: Optional[dict] = None,
1279
- session_dir: Optional[Path] = None,
1280
- *,
1281
- show_prompts: bool = False,
1282
- ) -> str:
1283
- """Produce the summary markdown for a single session.
1284
-
1285
- Branches on tree shape:
1286
- - gateway-direct tree (``_source == "gateway_direct"``) → identity +
1287
- lag banner + gateway-chain table + per-call detail; skips the
1288
- Interaction-dependent sections.
1289
- - minimal tree (session-not-found) → short markdown with just identity.
1290
- - full tree → multi-section summary (see SKILL.md for the full list).
1291
-
1292
- ``session_dir`` is reserved for callers that want the renderer to look
1293
- up artifacts beside the tree on disk. The standalone d360 skill produces
1294
- no runtime-telemetry rollups — DC alone doesn't expose per-turn LLM
1295
- latency in a useful form — so when ``None`` (the test-friendly default),
1296
- the gantt simply draws without the LLM-call overlay.
1297
-
1298
- ``show_prompts`` (opt-in): when True, the full-tree branch appends
1299
- a "Planner LLM calls" section with full prompt + response text per
1300
- LLM call. Default False — the section can add hundreds of KB to the
1301
- summary on multi-turn sessions.
1302
-
1303
- Refuses incompatible tree schema versions (see `_assert_schema_version`).
1304
- """
1305
- _assert_schema_version(tree)
1306
-
1307
- # Gateway-direct branch — session resolved but STDM hierarchy hasn't
1308
- # materialized yet. Handled before the has_interactions check because
1309
- # the gateway-direct tree does set `session.interactions = []`.
1310
- if tree.get("_source") == "gateway_direct":
1311
- return _render_gateway_direct(tree, manifest, show_prompts=show_prompts)
1312
-
1313
- sess = tree.get("session") or {}
1314
- sid = sess.get("id") or "<unknown>"
1315
- has_interactions = "interactions" in sess
1316
-
1317
- # Minimal-tree early return.
1318
- if not has_interactions:
1319
- return _render_minimal(sid, sess)
1320
-
1321
- start_iso = sess.get("start_ts")
1322
- start_dt = _parse_iso(start_iso)
1323
- effective_end_iso, end_source = _derive_session_end(sess)
1324
-
1325
- # The d360 skill produces no runtime-telemetry rollups — DC alone
1326
- # doesn't expose per-turn LLM latency in a useful form. Visual
1327
- # analysis falls back to its pre-rollup output.
1328
- llm_calls: List[dict] = []
1329
-
1330
- lines: List[str] = [f"# Session {sid}", ""]
1331
- lines.extend(_section_session_identity(sess, effective_end_iso, end_source))
1332
- # VariableText__c bootstrap (channel-mode diagnostic).
1333
- lines.extend(_section_session_bootstrap(
1334
- sess.get("identity") or {}, channel=sess.get("channel"),
1335
- ))
1336
- lines.extend(_section_id_reference(sess))
1337
- lines.extend(_section_transcript(sess, start_dt))
1338
- lines.extend(_section_hierarchical_trace(sess, start_dt, effective_end_iso, end_source))
1339
- lines.extend(_section_per_turn_summary(sess, start_dt))
1340
- # Opt-in full prompt + response per LLM call. Off by
1341
- # default — multi-turn sessions can produce hundreds of KB here.
1342
- lines.extend(_section_planner_llm_calls(sess, show_prompts=show_prompts))
1343
- lines.extend(_section_visual_analysis(sess, start_dt, llm_calls=llm_calls))
1344
- lines.extend(_section_session_counts(sess))
1345
- lines.extend(_section_empties_diagnostics(manifest or {}))
1346
- lines.extend(_section_catalog(tree))
1347
- return "\n".join(lines) + "\n"
1348
-
1349
-
1350
- def _render_minimal(sid: str, sess: dict) -> str:
1351
- """Short markdown for session-not-found minimal trees."""
1352
- shape = (sess.get("counts") or {}).get("session_shape", "session_not_found")
1353
- lines = [
1354
- f"# Session {sid}",
1355
- "",
1356
- "## Session identity",
1357
- "",
1358
- "| Field | Value |",
1359
- "|---|---|",
1360
- f"| Session id | {sid} |",
1361
- f"| Session shape | {shape} |",
1362
- "",
1363
- "_No interactions resolved in Data Cloud. Check the session id, or wait for "
1364
- "STDM materialization._",
1365
- "",
1366
- ]
1367
- return "\n".join(lines) + "\n"
1368
-
1369
-
1370
- # Display-only cap on `prompt_text` inside per-call detail. The raw JSON on
1371
- # disk (dc.gateway_requests.json) is authoritative and never truncated — the
1372
- # assembler stores the full prompt, and this slice only applies to markdown.
1373
- _PROMPT_DISPLAY_CAP_BYTES = 65536
1374
-
1375
-
1376
- def _fmt_token_count(value) -> str:
1377
- """Tolerate ints, stringified ints, and None/''/NOT_SET."""
1378
- if value in (None, "", "NOT_SET"):
1379
- return "—"
1380
- return str(value)
1381
-
1382
-
1383
- def _render_gateway_direct(tree: dict, manifest: Optional[dict],
1384
- *, show_prompts: bool = False) -> str:
1385
- """Render the STDM-hasn't-materialized-yet view.
1386
-
1387
- Sections:
1388
- 1. Session identity (reused)
1389
- 2. ID reference (reused; gracefully handles the empty
1390
- interactions/participants on this path)
1391
- 3. STDM lag banner (gateway-direct specific)
1392
- 4. Gateway chain table (gateway-direct specific)
1393
- 5. Per-call detail (gateway-direct specific)
1394
- 6. Empties diagnostics (reused; reads manifest, not tree)
1395
- 7. Catalog (reused; catalog may be empty on a
1396
- fresh-session gateway-direct tree)
1397
-
1398
- Skipped: Transcript, Hierarchical trace, Per-turn summary, Session
1399
- counts — all require Interaction rows that don't exist yet.
1400
-
1401
- ``show_prompts`` (default False): forwarded to per-call detail so the
1402
- full prompt block only renders under ``--show-prompts``. The prior
1403
- behavior unconditionally leaked prompts on this branch, contradicting
1404
- the documented contract for ``dc._session_summary.md``.
1405
- """
1406
- sess = tree.get("session") or {}
1407
- sid = sess.get("id") or "<unknown>"
1408
- start_iso = sess.get("start_ts")
1409
- start_dt = _parse_iso(start_iso)
1410
- # No derivation needed — sessions.end_ts is the only source on this path.
1411
- effective_end_iso = sess.get("end_ts")
1412
-
1413
- lines: List[str] = [f"# Session {sid}", ""]
1414
- lines.extend(_section_session_identity(sess, effective_end_iso, None))
1415
- # VariableText__c bootstrap (channel-mode diagnostic).
1416
- lines.extend(_section_session_bootstrap(
1417
- sess.get("identity") or {}, channel=sess.get("channel"),
1418
- ))
1419
- lines.extend(_section_id_reference(sess))
1420
- lines.extend(_section_stdm_lag_banner())
1421
- lines.extend(_section_gateway_chain_table(sess, start_dt))
1422
- lines.extend(_section_gateway_per_call_detail(sess, show_prompts=show_prompts))
1423
- lines.extend(_section_empties_diagnostics(manifest or {}))
1424
- lines.extend(_section_catalog(tree))
1425
- return "\n".join(lines) + "\n"
1426
-
1427
-
1428
- def _section_stdm_lag_banner() -> List[str]:
1429
- return [
1430
- "## STDM materialization lag",
1431
- "",
1432
- "> **Note** STDM Interaction/Step/Message DMOs have not yet "
1433
- "materialized for this session. The view below is the gateway chain "
1434
- "harvested directly from Gateway DMOs (materialize in minutes). "
1435
- "Re-run in 24–72h for the full hierarchical trace.",
1436
- "",
1437
- ]
1438
-
1439
-
1440
- def _section_gateway_chain_table(sess: dict,
1441
- start_dt: Optional[datetime]) -> List[str]:
1442
- chain = sess.get("gateway_chain") or []
1443
- lines: List[str] = [
1444
- "## Gateway chain",
1445
- "",
1446
- "| # | Request ts | Model | Provider | Prompt template | "
1447
- "Prompt tok | Completion tok | Total tok | Response ts |",
1448
- "|---|---|---|---|---|---|---|---|---|",
1449
- ]
1450
- for i, call in enumerate(chain, start=1):
1451
- req_offset = _fmt_offset(call.get("timestamp"), start_dt)
1452
- resp_offset = _fmt_offset(
1453
- (call.get("response") or {}).get("timestamp"), start_dt)
1454
- model = call.get("model") or "—"
1455
- provider = call.get("provider") or "—"
1456
- template = call.get("prompt_template_dev_name") or "—"
1457
- prompt_tok = _fmt_token_count(call.get("prompt_tokens"))
1458
- completion_tok = _fmt_token_count(call.get("completion_tokens"))
1459
- total_tok = _fmt_token_count(call.get("total_tokens"))
1460
- lines.append(
1461
- f"| {i} | {req_offset} | {model} | {provider} | {template} | "
1462
- f"{prompt_tok} | {completion_tok} | {total_tok} | {resp_offset} |"
1463
- )
1464
- lines.append("")
1465
- return lines
1466
-
1467
-
1468
- def _pick_fence(text: str) -> str:
1469
- """Pick a backtick fence long enough to wrap `text` safely.
1470
-
1471
- CommonMark lets a fenced code block use any run of 3+ backticks; the
1472
- closing fence must be at least as long as the opening. LLM prompts
1473
- routinely contain triple-backticks inside tool-use examples, so a
1474
- hardcoded ``` fence closes early and corrupts the rest of the doc.
1475
- """
1476
- if not isinstance(text, str) or not text:
1477
- return "```"
1478
- longest = 0
1479
- run = 0
1480
- for ch in text:
1481
- if ch == "`":
1482
- run += 1
1483
- if run > longest:
1484
- longest = run
1485
- else:
1486
- run = 0
1487
- return "`" * max(3, longest + 1)
1488
-
1489
-
1490
- def _capped_payload(text: Optional[str], note_source: str) -> tuple[str, bool, str]:
1491
- """Cap a payload string at `_PROMPT_DISPLAY_CAP_BYTES` for display.
1492
-
1493
- Returns ``(body, truncated, source_note)``. Byte-length check so
1494
- multi-byte chars don't blow through the limit when the renderer emits
1495
- UTF-8 text. Slicing happens on the encoded form, then decodes with
1496
- ``errors="ignore"`` so we never split a multi-byte char mid-sequence.
1497
- `source_note` names the on-disk file with the authoritative full text.
1498
- """
1499
- if not isinstance(text, str) or not text:
1500
- return ("(empty)", False, note_source)
1501
- encoded = text.encode("utf-8")
1502
- if len(encoded) <= _PROMPT_DISPLAY_CAP_BYTES:
1503
- return (text, False, note_source)
1504
- body = encoded[:_PROMPT_DISPLAY_CAP_BYTES].decode("utf-8", errors="ignore")
1505
- return (body, True, note_source)
1506
-
1507
-
1508
- def _render_call_detail_block(call: dict, idx: int, *,
1509
- show_prompts: bool = False,
1510
- show_response_text: bool = False) -> List[str]:
1511
- """Render one ``#### LLM call N — <short-id>`` block.
1512
-
1513
- Used by both:
1514
- - the gateway-direct branch (``_section_gateway_per_call_detail``)
1515
- - the full-tree opt-in section (``_section_planner_llm_calls``)
1516
-
1517
- ``call`` shape (subset of fields used here):
1518
- gateway_request_id, model, provider, prompt_template_dev_name,
1519
- prompt_tokens, completion_tokens, total_tokens, prompt_text,
1520
- response (-> finish_reason), response_text (only on full-tree path).
1521
-
1522
- The prompt and response blocks are independently gated:
1523
- - ``show_prompts`` controls the **Prompt** block.
1524
- - ``show_response_text`` controls the **Response** block (full-tree
1525
- only — gateway-direct chain entries don't carry response_text).
1526
- Both default off so callers must opt in explicitly. The summary line
1527
- (model/provider/template/tokens/finish_reason) always renders.
1528
- """
1529
- gw_id = call.get("gateway_request_id") or "—"
1530
- short_id = _short(gw_id)
1531
- lines = [f"#### LLM call {idx} — {short_id}", ""]
1532
- finish_reason = (call.get("response") or {}).get("finish_reason") or "—"
1533
- summary = (
1534
- f"- model={call.get('model') or '—'}"
1535
- f" provider={call.get('provider') or '—'}"
1536
- f" template={call.get('prompt_template_dev_name') or '—'}"
1537
- f" prompt_tok={_fmt_token_count(call.get('prompt_tokens'))}"
1538
- f" completion_tok={_fmt_token_count(call.get('completion_tokens'))}"
1539
- f" total_tok={_fmt_token_count(call.get('total_tokens'))}"
1540
- f" finish_reason={finish_reason}"
1541
- )
1542
- lines.append(summary)
1543
- lines.append("")
1544
-
1545
- # Prompt block — gated by show_prompts. Default-off everywhere; the
1546
- # summary file should never leak full prompt text without an explicit
1547
- # --show-prompts opt-in (matches the doc contract in SKILL.md).
1548
- if show_prompts:
1549
- body, truncated, src = _capped_payload(
1550
- call.get("prompt_text"), "dc.gateway_requests.json")
1551
- fence = _pick_fence(body)
1552
- lines.append("**Prompt** (full input sent to the model):")
1553
- lines.append(fence)
1554
- lines.append(body)
1555
- if truncated:
1556
- lines.append(f"…[truncated; full prompt in {src}]")
1557
- lines.append(fence)
1558
- lines.append("")
1559
-
1560
- # Response block — only the full-tree path carries response_text;
1561
- # gateway-direct rows get finish_reason in the header line above and
1562
- # nothing else (the response DMO doesn't carry text on that path).
1563
- if show_response_text:
1564
- body, truncated, src = _capped_payload(
1565
- call.get("response_text"), "dc.generations.json")
1566
- # html.unescape so the rendered block reads as plain JSON instead of
1567
- # &quot;-laden text — matches the existing _decoded_line treatment.
1568
- if body and body != "(empty)":
1569
- body = html.unescape(body)
1570
- fence = _pick_fence(body)
1571
- lines.append("**Response** (model output, including tool invocations):")
1572
- lines.append(fence)
1573
- lines.append(body)
1574
- if truncated:
1575
- lines.append(f"…[truncated; full response in {src}]")
1576
- lines.append(fence)
1577
- lines.append("")
1578
-
1579
- return lines
1580
-
1581
-
1582
- def _section_gateway_per_call_detail(sess: dict, *,
1583
- show_prompts: bool = False) -> List[str]:
1584
- """Per-call detail for the gateway-direct branch.
1585
-
1586
- ``gateway_chain`` does NOT carry `response_text` (the responses DMO
1587
- doesn't include it on that path), so the response block is always
1588
- suppressed. The prompt block is gated by ``show_prompts`` so the
1589
- default summary doesn't leak full prompt text — matches the
1590
- documented contract for ``dc._session_summary.md``.
1591
- """
1592
- chain = sess.get("gateway_chain") or []
1593
- lines: List[str] = ["## Per-call detail", ""]
1594
- for i, call in enumerate(chain, start=1):
1595
- lines.extend(_render_call_detail_block(
1596
- call, i, show_prompts=show_prompts, show_response_text=False))
1597
- return lines
1598
-
1599
-
1600
- def _collect_planner_llm_calls(sess: dict) -> List[dict]:
1601
- """Walk ``interactions[].steps[]`` and collect call-view dicts.
1602
-
1603
- Each step that has a ``gateway_request`` (regardless of binding method)
1604
- contributes one call view. ``response_text`` is sourced from the step's
1605
- sibling ``generation.response_text`` when present; otherwise the call is
1606
- still emitted with the prompt + token summary.
1607
-
1608
- Returned dicts use the same field names as ``gateway_chain`` entries so
1609
- ``_render_call_detail_block`` can consume both shapes uniformly.
1610
- """
1611
- calls: List[dict] = []
1612
- for iv in sess.get("interactions") or []:
1613
- for st in iv.get("steps") or []:
1614
- gw = st.get("gateway_request")
1615
- if not gw:
1616
- continue
1617
- gen = st.get("generation") or {}
1618
- calls.append({
1619
- "gateway_request_id": gw.get("gateway_request_id"),
1620
- "model": gw.get("model"),
1621
- "provider": gw.get("provider"),
1622
- "prompt_template_dev_name": gw.get("prompt_template_dev_name"),
1623
- "prompt_tokens": gw.get("prompt_tokens"),
1624
- "completion_tokens": gw.get("completion_tokens"),
1625
- "total_tokens": gw.get("total_tokens"),
1626
- "prompt_text": gw.get("prompt_text"),
1627
- "response": gw.get("response"),
1628
- "response_text": gen.get("response_text"),
1629
- })
1630
- return calls
1631
-
1632
-
1633
- def _section_planner_llm_calls(sess: dict, *, show_prompts: bool) -> List[str]:
1634
- """Opt-in full-tree section showing the input prompt + response
1635
- for every LLM call in the session's hierarchical trace.
1636
-
1637
- Off by default — prompts can be 30 KB+ each on multi-turn sessions
1638
- and would otherwise dominate the summary. Enable with
1639
- ``render_dc.py --show-prompts``.
1640
- """
1641
- if not show_prompts:
1642
- return []
1643
- calls = _collect_planner_llm_calls(sess)
1644
- if not calls:
1645
- return []
1646
- lines: List[str] = [
1647
- "## Planner LLM calls (full prompts + responses)",
1648
- "",
1649
- f"_Found {len(calls)} LLM call(s) across the session's hierarchical "
1650
- f"trace. Prompts are capped at "
1651
- f"{_PROMPT_DISPLAY_CAP_BYTES // 1024} KB for display; full payloads "
1652
- f"are on disk in `dc.gateway_requests.json` and "
1653
- f"`dc.generations.json`._",
1654
- "",
1655
- ]
1656
- for i, call in enumerate(calls, start=1):
1657
- # show_prompts is True here by section-guard above (early return when
1658
- # show_prompts is False); pass through explicitly so the helper's new
1659
- # prompt-gate stays aligned with the section's intent.
1660
- lines.extend(_render_call_detail_block(
1661
- call, i, show_prompts=True, show_response_text=True))
1662
- return lines
1663
-
1664
-
1665
- def _assert_schema_version(tree: dict) -> None:
1666
- """Refuse unsupported versions; warn on missing version (older assembler)."""
1667
- version = (tree.get("session") or {}).get("_schema_version")
1668
- if version is None:
1669
- print(
1670
- "render_dc: WARN tree has no _schema_version "
1671
- "(produced by an older assembler?); rendering anyway",
1672
- file=sys.stderr,
1673
- )
1674
- return
1675
- if version != _SUPPORTED_SCHEMA_VERSION:
1676
- raise SystemExit(
1677
- f"render_dc: unsupported tree _schema_version={version}; "
1678
- f"expected {_SUPPORTED_SCHEMA_VERSION}"
1679
- )
1680
-
1681
-
1682
- def main_for_session(sid: str, *, show_prompts: bool = False) -> int:
1683
- """Read session tree + manifest from the nested session dir; emit summary.md.
1684
-
1685
- Uses ``assemble_dc._find_session_dir`` to locate the session under
1686
- ``DATA_ROOT/<org>/<agent>__<ver>/<sid>/`` — follows the ``_sessions/*.link``
1687
- breadcrumb when present, globs otherwise. No callers need to know the
1688
- full identity triple upfront.
1689
-
1690
- ``show_prompts``: pass through to ``render`` to include the
1691
- opt-in "Planner LLM calls" section.
1692
- """
1693
- from assemble_dc import _find_session_dir
1694
- session_dir = _find_session_dir(sid)
1695
- tree_path = session_dir / "dc._session_tree.json"
1696
- if not tree_path.is_file():
1697
- raise SystemExit(
1698
- f"render_dc: tree not found at {tree_path}; "
1699
- f"run `python3 scripts/assemble_dc.py --session {sid}` first"
1700
- )
1701
- manifest_path = session_dir / "dc._session_manifest.json"
1702
- manifest: Optional[dict] = None
1703
- if manifest_path.is_file():
1704
- try:
1705
- manifest = json.loads(manifest_path.read_text())
1706
- except (json.JSONDecodeError, OSError) as e:
1707
- print(
1708
- f"render_dc: WARN could not read manifest: {str(e).splitlines()[0]}",
1709
- file=sys.stderr,
1710
- )
1711
-
1712
- tree = json.loads(tree_path.read_text())
1713
- _assert_schema_version(tree)
1714
-
1715
- md_path = session_dir / "dc._session_summary.md"
1716
- md_path.write_text(render(tree, manifest, session_dir=session_dir,
1717
- show_prompts=show_prompts))
1718
- print(f"render_dc: wrote {md_path}", file=sys.stderr)
1719
- return 0
1720
-
1721
-
1722
- def main() -> int:
1723
- ap = argparse.ArgumentParser(
1724
- prog="render_dc.py",
1725
- description="Render dc._session_summary.md from dc._session_tree.json for one session.",
1726
- )
1727
- ap.add_argument("--session", required=True,
1728
- help="AI-agent session UUID or MessagingSession id (0Mw...). "
1729
- "Messaging ids are resolved from disk "
1730
- "(DATA_ROOT/*/dc.sessions.json); run fetch_dc.py first "
1731
- "if the session hasn't been fetched yet.")
1732
- ap.add_argument("--show-prompts", action="store_true",
1733
- help="Include the opt-in 'Planner LLM calls' section "
1734
- "with the full input prompt + response per LLM call. "
1735
- "Off by default — multi-turn sessions can produce "
1736
- "hundreds of KB here. Per-prompt display is capped "
1737
- "at 64 KB; full payloads remain on disk in "
1738
- "dc.gateway_requests.json + dc.generations.json.")
1739
- # Runtime-agnostic path overrides; default to ~/.vibe/...
1740
- from _shared.cli_override import add_cli_flags, apply_overrides
1741
- add_cli_flags(ap)
1742
- args = ap.parse_args()
1743
- apply_overrides(args, caller_globals=globals())
1744
- from resolve_session import resolve_disk_or_live
1745
- sid = resolve_disk_or_live(args.session)
1746
- return main_for_session(sid, show_prompts=args.show_prompts)
1747
-
1748
-
1749
- if __name__ == "__main__":
1750
- sys.exit(main())