@spottoai/types-package 1.0.2-dev1138.12 → 1.0.2-dev1138.13

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 (523) hide show
  1. package/README.md +0 -9
  2. package/dist/accounts/accounts.d.ts +5 -84
  3. package/dist/accounts/accounts.d.ts.map +1 -1
  4. package/dist/accounts/accounts.js +1 -2
  5. package/dist/accounts/accounts.js.map +1 -1
  6. package/dist/accounts/azureSpSetup.d.ts +31 -142
  7. package/dist/accounts/azureSpSetup.d.ts.map +1 -1
  8. package/dist/accounts/azureSpSetup.js +0 -15
  9. package/dist/accounts/azureSpSetup.js.map +1 -1
  10. package/dist/accounts/azureSpSetupDurable.d.ts +0 -8
  11. package/dist/accounts/azureSpSetupDurable.d.ts.map +1 -1
  12. package/dist/accounts/azureSpSetupDurable.js +0 -28
  13. package/dist/accounts/azureSpSetupDurable.js.map +1 -1
  14. package/dist/accounts/index.d.ts +0 -1
  15. package/dist/accounts/index.d.ts.map +1 -1
  16. package/dist/accounts/index.js +0 -1
  17. package/dist/accounts/index.js.map +1 -1
  18. package/dist/accounts/readPermissions.d.ts +1 -1
  19. package/dist/accounts/readPermissions.d.ts.map +1 -1
  20. package/dist/accounts/readPermissions.js.map +1 -1
  21. package/dist/accounts/validation.d.ts +0 -24
  22. package/dist/accounts/validation.d.ts.map +1 -1
  23. package/dist/ai/index.d.ts +6 -302
  24. package/dist/ai/index.d.ts.map +1 -1
  25. package/dist/ai/index.js +0 -25
  26. package/dist/ai/index.js.map +1 -1
  27. package/dist/aws/commitments-planning.d.ts +0 -5
  28. package/dist/aws/commitments-planning.d.ts.map +1 -1
  29. package/dist/aws/commitments-planning.js +0 -19
  30. package/dist/aws/commitments-planning.js.map +1 -1
  31. package/dist/aws/estates.d.ts +1 -1
  32. package/dist/aws/estates.d.ts.map +1 -1
  33. package/dist/aws/estates.js +1 -7
  34. package/dist/aws/estates.js.map +1 -1
  35. package/dist/aws/index.d.ts +0 -5
  36. package/dist/aws/index.d.ts.map +1 -1
  37. package/dist/aws/index.js +0 -5
  38. package/dist/aws/index.js.map +1 -1
  39. package/dist/aws/onboarding.d.ts +0 -3
  40. package/dist/aws/onboarding.d.ts.map +1 -1
  41. package/dist/aws/requests.d.ts +2 -13
  42. package/dist/aws/requests.d.ts.map +1 -1
  43. package/dist/aws/requests.js +1 -1
  44. package/dist/aws/requests.js.map +1 -1
  45. package/dist/azure/activityLogs.d.ts +0 -8
  46. package/dist/azure/activityLogs.d.ts.map +1 -1
  47. package/dist/azure/activityLogs.js.map +1 -1
  48. package/dist/azure/benefits.d.ts +1 -1
  49. package/dist/azure/benefits.d.ts.map +1 -1
  50. package/dist/azure/billingPlots.d.ts +1 -7
  51. package/dist/azure/billingPlots.d.ts.map +1 -1
  52. package/dist/azure/billingPlots.js +4 -45
  53. package/dist/azure/billingPlots.js.map +1 -1
  54. package/dist/azure/commitmentsPlanning.d.ts +2 -8
  55. package/dist/azure/commitmentsPlanning.d.ts.map +1 -1
  56. package/dist/azure/common.d.ts +5 -26
  57. package/dist/azure/common.d.ts.map +1 -1
  58. package/dist/azure/common.js +0 -30
  59. package/dist/azure/common.js.map +1 -1
  60. package/dist/azure/costComposition.d.ts +1 -11
  61. package/dist/azure/costComposition.d.ts.map +1 -1
  62. package/dist/azure/costComposition.js +1 -84
  63. package/dist/azure/costComposition.js.map +1 -1
  64. package/dist/azure/dataProtection.d.ts +4 -4
  65. package/dist/azure/dataProtection.d.ts.map +1 -1
  66. package/dist/azure/financialAnalytics.d.ts +8 -80
  67. package/dist/azure/financialAnalytics.d.ts.map +1 -1
  68. package/dist/azure/financialAnalyticsDelivery.d.ts +3 -72
  69. package/dist/azure/financialAnalyticsDelivery.d.ts.map +1 -1
  70. package/dist/azure/financialAnalyticsDelivery.js +1 -7
  71. package/dist/azure/financialAnalyticsDelivery.js.map +1 -1
  72. package/dist/azure/financialAnalyticsDeliveryValidation.d.ts +1 -9
  73. package/dist/azure/financialAnalyticsDeliveryValidation.d.ts.map +1 -1
  74. package/dist/azure/financialAnalyticsDeliveryValidation.js +10 -190
  75. package/dist/azure/financialAnalyticsDeliveryValidation.js.map +1 -1
  76. package/dist/azure/financialAnalyticsValidation.d.ts.map +1 -1
  77. package/dist/azure/financialAnalyticsValidation.js +19 -101
  78. package/dist/azure/financialAnalyticsValidation.js.map +1 -1
  79. package/dist/azure/financialAuthorityView.d.ts +0 -13
  80. package/dist/azure/financialAuthorityView.d.ts.map +1 -1
  81. package/dist/azure/financialAuthorityView.js.map +1 -1
  82. package/dist/azure/financialAuthorityViewValidation.d.ts +1 -3
  83. package/dist/azure/financialAuthorityViewValidation.d.ts.map +1 -1
  84. package/dist/azure/financialAuthorityViewValidation.js +2 -273
  85. package/dist/azure/financialAuthorityViewValidation.js.map +1 -1
  86. package/dist/azure/financialDataflow.d.ts +2 -45
  87. package/dist/azure/financialDataflow.d.ts.map +1 -1
  88. package/dist/azure/financialDataflow.js.map +1 -1
  89. package/dist/azure/financialDataflowValidation.d.ts +2 -5
  90. package/dist/azure/financialDataflowValidation.d.ts.map +1 -1
  91. package/dist/azure/financialDataflowValidation.js +30 -203
  92. package/dist/azure/financialDataflowValidation.js.map +1 -1
  93. package/dist/azure/financialEvidenceAssessmentValidation.d.ts.map +1 -1
  94. package/dist/azure/financialEvidenceAssessmentValidation.js +0 -7
  95. package/dist/azure/financialEvidenceAssessmentValidation.js.map +1 -1
  96. package/dist/azure/financialPolicy.d.ts +3 -19
  97. package/dist/azure/financialPolicy.d.ts.map +1 -1
  98. package/dist/azure/financialPolicy.js.map +1 -1
  99. package/dist/azure/financialPolicyDelivery.d.ts +1 -75
  100. package/dist/azure/financialPolicyDelivery.d.ts.map +1 -1
  101. package/dist/azure/financialPolicyDelivery.js +1 -5
  102. package/dist/azure/financialPolicyDelivery.js.map +1 -1
  103. package/dist/azure/financialPolicyDeliveryValidation.d.ts +2 -16
  104. package/dist/azure/financialPolicyDeliveryValidation.d.ts.map +1 -1
  105. package/dist/azure/financialPolicyDeliveryValidation.js +5 -238
  106. package/dist/azure/financialPolicyDeliveryValidation.js.map +1 -1
  107. package/dist/azure/financialPolicyValidation.d.ts +0 -1
  108. package/dist/azure/financialPolicyValidation.d.ts.map +1 -1
  109. package/dist/azure/financialPolicyValidation.js +16 -111
  110. package/dist/azure/financialPolicyValidation.js.map +1 -1
  111. package/dist/azure/financialProjection.d.ts +1 -11
  112. package/dist/azure/financialProjection.d.ts.map +1 -1
  113. package/dist/azure/financialProjection.js.map +1 -1
  114. package/dist/azure/financialProjectionValidation.d.ts.map +1 -1
  115. package/dist/azure/financialProjectionValidation.js +3 -43
  116. package/dist/azure/financialProjectionValidation.js.map +1 -1
  117. package/dist/azure/financialSavingsAuthority.d.ts +4 -68
  118. package/dist/azure/financialSavingsAuthority.d.ts.map +1 -1
  119. package/dist/azure/financialSavingsAuthority.js +1 -2
  120. package/dist/azure/financialSavingsAuthority.js.map +1 -1
  121. package/dist/azure/financialSavingsAuthorityValidation.d.ts +2 -6
  122. package/dist/azure/financialSavingsAuthorityValidation.d.ts.map +1 -1
  123. package/dist/azure/financialSavingsAuthorityValidation.js +2 -188
  124. package/dist/azure/financialSavingsAuthorityValidation.js.map +1 -1
  125. package/dist/azure/financialSavingsCoordinateValidation.d.ts.map +1 -1
  126. package/dist/azure/financialSavingsCoordinateValidation.js +19 -98
  127. package/dist/azure/financialSavingsCoordinateValidation.js.map +1 -1
  128. package/dist/azure/financialSavingsSurfaceProjection.d.ts +3 -82
  129. package/dist/azure/financialSavingsSurfaceProjection.d.ts.map +1 -1
  130. package/dist/azure/financialSavingsSurfaceProjection.js +1 -3
  131. package/dist/azure/financialSavingsSurfaceProjection.js.map +1 -1
  132. package/dist/azure/financialSavingsSurfaceProjectionValidation.d.ts.map +1 -1
  133. package/dist/azure/financialSavingsSurfaceProjectionValidation.js +13 -199
  134. package/dist/azure/financialSavingsSurfaceProjectionValidation.js.map +1 -1
  135. package/dist/azure/financialScope.d.ts +0 -14
  136. package/dist/azure/financialScope.d.ts.map +1 -1
  137. package/dist/azure/financialScope.js +0 -14
  138. package/dist/azure/financialScope.js.map +1 -1
  139. package/dist/azure/financialScopeBaseline.d.ts +3 -11
  140. package/dist/azure/financialScopeBaseline.d.ts.map +1 -1
  141. package/dist/azure/financialScopeBaseline.js +1 -14
  142. package/dist/azure/financialScopeBaseline.js.map +1 -1
  143. package/dist/azure/financialScopeBaselineIdentity.d.ts.map +1 -1
  144. package/dist/azure/financialScopeBaselineIdentity.js +4 -24
  145. package/dist/azure/financialScopeBaselineIdentity.js.map +1 -1
  146. package/dist/azure/financialScopeBaselineValidation.d.ts.map +1 -1
  147. package/dist/azure/financialScopeBaselineValidation.js +4 -21
  148. package/dist/azure/financialScopeBaselineValidation.js.map +1 -1
  149. package/dist/azure/financialScopeEvidence.d.ts +1 -1
  150. package/dist/azure/financialScopeEvidence.d.ts.map +1 -1
  151. package/dist/azure/governance.d.ts +0 -145
  152. package/dist/azure/governance.d.ts.map +1 -1
  153. package/dist/azure/governance.js +1 -2
  154. package/dist/azure/governance.js.map +1 -1
  155. package/dist/azure/metrics.d.ts +2 -2
  156. package/dist/azure/metrics.d.ts.map +1 -1
  157. package/dist/azure/payloads.d.ts +1 -55
  158. package/dist/azure/payloads.d.ts.map +1 -1
  159. package/dist/azure/prices.d.ts +12 -41
  160. package/dist/azure/prices.d.ts.map +1 -1
  161. package/dist/azure/recommendationState.d.ts +1 -1
  162. package/dist/azure/recommendationState.d.ts.map +1 -1
  163. package/dist/azure/recommendations.d.ts +5 -141
  164. package/dist/azure/recommendations.d.ts.map +1 -1
  165. package/dist/azure/recommendations.js +1 -3
  166. package/dist/azure/recommendations.js.map +1 -1
  167. package/dist/azure/relationships.d.ts +1 -1
  168. package/dist/azure/relationships.d.ts.map +1 -1
  169. package/dist/azure/reports.d.ts +10 -32
  170. package/dist/azure/reports.d.ts.map +1 -1
  171. package/dist/azure/reports.js.map +1 -1
  172. package/dist/azure/resources.d.ts +12 -24
  173. package/dist/azure/resources.d.ts.map +1 -1
  174. package/dist/azure/serviceRetirement.d.ts +2 -33
  175. package/dist/azure/serviceRetirement.d.ts.map +1 -1
  176. package/dist/azure/storage-inventory.d.ts +0 -44
  177. package/dist/azure/storage-inventory.d.ts.map +1 -1
  178. package/dist/azure/subscriptions.d.ts +11 -57
  179. package/dist/azure/subscriptions.d.ts.map +1 -1
  180. package/dist/azure/subscriptions.js +0 -35
  181. package/dist/azure/subscriptions.js.map +1 -1
  182. package/dist/azure/views.d.ts +22 -86
  183. package/dist/azure/views.d.ts.map +1 -1
  184. package/dist/azure/views.js +1 -8
  185. package/dist/azure/views.js.map +1 -1
  186. package/dist/common/provider.d.ts +0 -53
  187. package/dist/common/provider.d.ts.map +1 -1
  188. package/dist/common/provider.js.map +1 -1
  189. package/dist/company/company.d.ts +0 -1
  190. package/dist/company/company.d.ts.map +1 -1
  191. package/dist/esm/accounts/accounts.js +0 -1
  192. package/dist/esm/accounts/azureSpSetup.js +1 -14
  193. package/dist/esm/accounts/azureSpSetupDurable.js +1 -27
  194. package/dist/esm/accounts/index.js +0 -1
  195. package/dist/esm/ai/index.js +1 -10
  196. package/dist/esm/aws/commitments-planning.js +0 -5
  197. package/dist/esm/aws/estates.js +1 -7
  198. package/dist/esm/aws/index.js +0 -5
  199. package/dist/esm/aws/requests.js +1 -1
  200. package/dist/esm/azure/billingPlots.js +4 -45
  201. package/dist/esm/azure/common.js +1 -28
  202. package/dist/esm/azure/costComposition.js +0 -80
  203. package/dist/esm/azure/financialAnalyticsDelivery.js +0 -5
  204. package/dist/esm/azure/financialAnalyticsDeliveryValidation.js +11 -184
  205. package/dist/esm/azure/financialAnalyticsValidation.js +19 -101
  206. package/dist/esm/azure/financialAuthorityViewValidation.js +1 -271
  207. package/dist/esm/azure/financialDataflowValidation.js +29 -199
  208. package/dist/esm/azure/financialEvidenceAssessmentValidation.js +0 -7
  209. package/dist/esm/azure/financialPolicyDelivery.js +0 -4
  210. package/dist/esm/azure/financialPolicyDeliveryValidation.js +7 -227
  211. package/dist/esm/azure/financialPolicyValidation.js +16 -110
  212. package/dist/esm/azure/financialProjectionValidation.js +3 -43
  213. package/dist/esm/azure/financialSavingsAuthority.js +0 -1
  214. package/dist/esm/azure/financialSavingsAuthorityValidation.js +2 -186
  215. package/dist/esm/azure/financialSavingsCoordinateValidation.js +19 -98
  216. package/dist/esm/azure/financialSavingsSurfaceProjection.js +0 -2
  217. package/dist/esm/azure/financialSavingsSurfaceProjectionValidation.js +13 -199
  218. package/dist/esm/azure/financialScope.js +0 -14
  219. package/dist/esm/azure/financialScopeBaseline.js +0 -12
  220. package/dist/esm/azure/financialScopeBaselineIdentity.js +4 -24
  221. package/dist/esm/azure/financialScopeBaselineValidation.js +4 -21
  222. package/dist/esm/azure/governance.js +0 -1
  223. package/dist/esm/azure/recommendations.js +0 -2
  224. package/dist/esm/azure/subscriptions.js +1 -33
  225. package/dist/esm/azure/views.js +1 -8
  226. package/dist/esm/entries/commitments-planning.js +2 -2
  227. package/dist/esm/identity/index.js +0 -1
  228. package/dist/esm/index.js +0 -13
  229. package/dist/esm/index.vite.js +0 -11
  230. package/dist/esm/scheduler/index.js +0 -3
  231. package/dist/events/alertDefinitionRun.d.ts +0 -4
  232. package/dist/events/alertDefinitionRun.d.ts.map +1 -1
  233. package/dist/events/baseAlert.d.ts +0 -1
  234. package/dist/events/baseAlert.d.ts.map +1 -1
  235. package/dist/events/cost.d.ts +0 -4
  236. package/dist/events/cost.d.ts.map +1 -1
  237. package/dist/events/quickAlerts.d.ts +4 -13
  238. package/dist/events/quickAlerts.d.ts.map +1 -1
  239. package/dist/events/quickAlerts.js.map +1 -1
  240. package/dist/features-and-permissions/access.d.ts +0 -79
  241. package/dist/features-and-permissions/access.d.ts.map +1 -1
  242. package/dist/identity/index.d.ts +0 -1
  243. package/dist/identity/index.d.ts.map +1 -1
  244. package/dist/identity/index.js +0 -1
  245. package/dist/identity/index.js.map +1 -1
  246. package/dist/index.d.ts +0 -13
  247. package/dist/index.d.ts.map +1 -1
  248. package/dist/index.js +0 -19
  249. package/dist/index.js.map +1 -1
  250. package/dist/index.vite.d.ts +0 -11
  251. package/dist/index.vite.d.ts.map +1 -1
  252. package/dist/index.vite.js +0 -15
  253. package/dist/index.vite.js.map +1 -1
  254. package/dist/portfolio/portfolioOperations.d.ts +1 -1
  255. package/dist/portfolio/portfolioOperations.d.ts.map +1 -1
  256. package/dist/scheduler/index.d.ts +0 -3
  257. package/dist/scheduler/index.d.ts.map +1 -1
  258. package/dist/scheduler/index.js +0 -3
  259. package/dist/scheduler/index.js.map +1 -1
  260. package/dist/scheduler/scheduler.d.ts +10 -14
  261. package/dist/scheduler/scheduler.d.ts.map +1 -1
  262. package/package.json +3 -20
  263. package/dist/accounts/azureManualOnboarding.d.ts +0 -114
  264. package/dist/accounts/azureManualOnboarding.d.ts.map +0 -1
  265. package/dist/accounts/azureManualOnboarding.js +0 -12
  266. package/dist/accounts/azureManualOnboarding.js.map +0 -1
  267. package/dist/ai/conversationHistory.d.ts +0 -52
  268. package/dist/ai/conversationHistory.d.ts.map +0 -1
  269. package/dist/ai/conversationHistory.js +0 -10
  270. package/dist/ai/conversationHistory.js.map +0 -1
  271. package/dist/ai/grounding.d.ts +0 -41
  272. package/dist/ai/grounding.d.ts.map +0 -1
  273. package/dist/ai/grounding.js +0 -86
  274. package/dist/ai/grounding.js.map +0 -1
  275. package/dist/ai/workspaceArtifacts.d.ts +0 -587
  276. package/dist/ai/workspaceArtifacts.d.ts.map +0 -1
  277. package/dist/ai/workspaceArtifacts.js +0 -162
  278. package/dist/ai/workspaceArtifacts.js.map +0 -1
  279. package/dist/aws/organizationCommitments.d.ts +0 -260
  280. package/dist/aws/organizationCommitments.d.ts.map +0 -1
  281. package/dist/aws/organizationCommitments.js +0 -53
  282. package/dist/aws/organizationCommitments.js.map +0 -1
  283. package/dist/aws/organizationCommitmentsApiValidation.d.ts +0 -21
  284. package/dist/aws/organizationCommitmentsApiValidation.d.ts.map +0 -1
  285. package/dist/aws/organizationCommitmentsApiValidation.js +0 -226
  286. package/dist/aws/organizationCommitmentsApiValidation.js.map +0 -1
  287. package/dist/aws/organizationCommitmentsValidation.d.ts +0 -12
  288. package/dist/aws/organizationCommitmentsValidation.d.ts.map +0 -1
  289. package/dist/aws/organizationCommitmentsValidation.js +0 -228
  290. package/dist/aws/organizationCommitmentsValidation.js.map +0 -1
  291. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifactValidation.d.ts +0 -9
  292. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifactValidation.d.ts.map +0 -1
  293. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifactValidation.js +0 -407
  294. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifactValidation.js.map +0 -1
  295. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifacts.d.ts +0 -17
  296. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifacts.d.ts.map +0 -1
  297. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifacts.js +0 -6
  298. package/dist/aws/portalOrganizationCommitmentsPlanningPublicArtifacts.js.map +0 -1
  299. package/dist/azure/activityLogAnalysis.d.ts +0 -320
  300. package/dist/azure/activityLogAnalysis.d.ts.map +0 -1
  301. package/dist/azure/activityLogAnalysis.js +0 -70
  302. package/dist/azure/activityLogAnalysis.js.map +0 -1
  303. package/dist/azure/activityLogAnalysisPublicValidation.d.ts +0 -8
  304. package/dist/azure/activityLogAnalysisPublicValidation.d.ts.map +0 -1
  305. package/dist/azure/activityLogAnalysisPublicValidation.js +0 -368
  306. package/dist/azure/activityLogAnalysisPublicValidation.js.map +0 -1
  307. package/dist/azure/activityLogAnalysisPublicValidationHelpers.d.ts +0 -33
  308. package/dist/azure/activityLogAnalysisPublicValidationHelpers.d.ts.map +0 -1
  309. package/dist/azure/activityLogAnalysisPublicValidationHelpers.js +0 -197
  310. package/dist/azure/activityLogAnalysisPublicValidationHelpers.js.map +0 -1
  311. package/dist/azure/activityLogAnalysisValidation.d.ts +0 -5
  312. package/dist/azure/activityLogAnalysisValidation.d.ts.map +0 -1
  313. package/dist/azure/activityLogAnalysisValidation.js +0 -376
  314. package/dist/azure/activityLogAnalysisValidation.js.map +0 -1
  315. package/dist/azure/financialAnalyticsDisplayKernel.d.ts +0 -12
  316. package/dist/azure/financialAnalyticsDisplayKernel.d.ts.map +0 -1
  317. package/dist/azure/financialAnalyticsDisplayKernel.js +0 -144
  318. package/dist/azure/financialAnalyticsDisplayKernel.js.map +0 -1
  319. package/dist/azure/financialAuthorityProjectionKernel.d.ts +0 -8
  320. package/dist/azure/financialAuthorityProjectionKernel.d.ts.map +0 -1
  321. package/dist/azure/financialAuthorityProjectionKernel.js +0 -269
  322. package/dist/azure/financialAuthorityProjectionKernel.js.map +0 -1
  323. package/dist/azure/financialChargeComposition.d.ts +0 -81
  324. package/dist/azure/financialChargeComposition.d.ts.map +0 -1
  325. package/dist/azure/financialChargeComposition.js +0 -41
  326. package/dist/azure/financialChargeComposition.js.map +0 -1
  327. package/dist/azure/financialChargeCompositionKernel.d.ts +0 -3
  328. package/dist/azure/financialChargeCompositionKernel.d.ts.map +0 -1
  329. package/dist/azure/financialChargeCompositionKernel.js +0 -53
  330. package/dist/azure/financialChargeCompositionKernel.js.map +0 -1
  331. package/dist/azure/financialChargeCompositionValidation.d.ts +0 -8
  332. package/dist/azure/financialChargeCompositionValidation.d.ts.map +0 -1
  333. package/dist/azure/financialChargeCompositionValidation.js +0 -164
  334. package/dist/azure/financialChargeCompositionValidation.js.map +0 -1
  335. package/dist/azure/financialChargePolicy.d.ts +0 -215
  336. package/dist/azure/financialChargePolicy.d.ts.map +0 -1
  337. package/dist/azure/financialChargePolicy.js +0 -488
  338. package/dist/azure/financialChargePolicy.js.map +0 -1
  339. package/dist/azure/financialCurrentSpendSurfaceProjection.d.ts +0 -76
  340. package/dist/azure/financialCurrentSpendSurfaceProjection.d.ts.map +0 -1
  341. package/dist/azure/financialCurrentSpendSurfaceProjection.js +0 -6
  342. package/dist/azure/financialCurrentSpendSurfaceProjection.js.map +0 -1
  343. package/dist/azure/financialCurrentSpendSurfaceProjectionValidation.d.ts +0 -10
  344. package/dist/azure/financialCurrentSpendSurfaceProjectionValidation.d.ts.map +0 -1
  345. package/dist/azure/financialCurrentSpendSurfaceProjectionValidation.js +0 -196
  346. package/dist/azure/financialCurrentSpendSurfaceProjectionValidation.js.map +0 -1
  347. package/dist/azure/financialDataflowKernel.d.ts +0 -31
  348. package/dist/azure/financialDataflowKernel.d.ts.map +0 -1
  349. package/dist/azure/financialDataflowKernel.js +0 -170
  350. package/dist/azure/financialDataflowKernel.js.map +0 -1
  351. package/dist/azure/financialEvidenceCoverage.d.ts +0 -36
  352. package/dist/azure/financialEvidenceCoverage.d.ts.map +0 -1
  353. package/dist/azure/financialEvidenceCoverage.js +0 -111
  354. package/dist/azure/financialEvidenceCoverage.js.map +0 -1
  355. package/dist/azure/financialPolicyKernel.d.ts +0 -38
  356. package/dist/azure/financialPolicyKernel.d.ts.map +0 -1
  357. package/dist/azure/financialPolicyKernel.js +0 -232
  358. package/dist/azure/financialPolicyKernel.js.map +0 -1
  359. package/dist/azure/financialResourceSurfaceProjection.d.ts +0 -66
  360. package/dist/azure/financialResourceSurfaceProjection.d.ts.map +0 -1
  361. package/dist/azure/financialResourceSurfaceProjection.js +0 -6
  362. package/dist/azure/financialResourceSurfaceProjection.js.map +0 -1
  363. package/dist/azure/financialResourceSurfaceProjectionValidation.d.ts +0 -16
  364. package/dist/azure/financialResourceSurfaceProjectionValidation.d.ts.map +0 -1
  365. package/dist/azure/financialResourceSurfaceProjectionValidation.js +0 -252
  366. package/dist/azure/financialResourceSurfaceProjectionValidation.js.map +0 -1
  367. package/dist/azure/financialSavingsChargePolicyKernel.d.ts +0 -12
  368. package/dist/azure/financialSavingsChargePolicyKernel.d.ts.map +0 -1
  369. package/dist/azure/financialSavingsChargePolicyKernel.js +0 -34
  370. package/dist/azure/financialSavingsChargePolicyKernel.js.map +0 -1
  371. package/dist/azure/financialSavingsPercentageKernel.d.ts +0 -20
  372. package/dist/azure/financialSavingsPercentageKernel.d.ts.map +0 -1
  373. package/dist/azure/financialSavingsPercentageKernel.js +0 -49
  374. package/dist/azure/financialSavingsPercentageKernel.js.map +0 -1
  375. package/dist/azure/financialSavingsSurfaceProjectionKernel.d.ts +0 -26
  376. package/dist/azure/financialSavingsSurfaceProjectionKernel.d.ts.map +0 -1
  377. package/dist/azure/financialSavingsSurfaceProjectionKernel.js +0 -435
  378. package/dist/azure/financialSavingsSurfaceProjectionKernel.js.map +0 -1
  379. package/dist/azure/recommendationLifecycleOverlayValidation.d.ts +0 -5
  380. package/dist/azure/recommendationLifecycleOverlayValidation.d.ts.map +0 -1
  381. package/dist/azure/recommendationLifecycleOverlayValidation.js +0 -82
  382. package/dist/azure/recommendationLifecycleOverlayValidation.js.map +0 -1
  383. package/dist/azure/reportDailySpend.d.ts +0 -48
  384. package/dist/azure/reportDailySpend.d.ts.map +0 -1
  385. package/dist/azure/reportDailySpend.js +0 -6
  386. package/dist/azure/reportDailySpend.js.map +0 -1
  387. package/dist/azure/reportDailySpendValidation.d.ts +0 -3
  388. package/dist/azure/reportDailySpendValidation.d.ts.map +0 -1
  389. package/dist/azure/reportDailySpendValidation.js +0 -72
  390. package/dist/azure/reportDailySpendValidation.js.map +0 -1
  391. package/dist/azure/reportEvidence.d.ts +0 -615
  392. package/dist/azure/reportEvidence.d.ts.map +0 -1
  393. package/dist/azure/reportEvidence.js +0 -25
  394. package/dist/azure/reportEvidence.js.map +0 -1
  395. package/dist/azure/reportEvidenceCatalogueValidation.d.ts +0 -5
  396. package/dist/azure/reportEvidenceCatalogueValidation.d.ts.map +0 -1
  397. package/dist/azure/reportEvidenceCatalogueValidation.js +0 -109
  398. package/dist/azure/reportEvidenceCatalogueValidation.js.map +0 -1
  399. package/dist/azure/reportEvidenceValidation.d.ts +0 -7
  400. package/dist/azure/reportEvidenceValidation.d.ts.map +0 -1
  401. package/dist/azure/reportEvidenceValidation.js +0 -421
  402. package/dist/azure/reportEvidenceValidation.js.map +0 -1
  403. package/dist/azure/reportEvidenceValidationHelpers.d.ts +0 -27
  404. package/dist/azure/reportEvidenceValidationHelpers.d.ts.map +0 -1
  405. package/dist/azure/reportEvidenceValidationHelpers.js +0 -134
  406. package/dist/azure/reportEvidenceValidationHelpers.js.map +0 -1
  407. package/dist/azure/reportSavingsContributionValidation.d.ts +0 -5
  408. package/dist/azure/reportSavingsContributionValidation.d.ts.map +0 -1
  409. package/dist/azure/reportSavingsContributionValidation.js +0 -37
  410. package/dist/azure/reportSavingsContributionValidation.js.map +0 -1
  411. package/dist/azure/reportSpend.d.ts +0 -87
  412. package/dist/azure/reportSpend.d.ts.map +0 -1
  413. package/dist/azure/reportSpend.js +0 -5
  414. package/dist/azure/reportSpend.js.map +0 -1
  415. package/dist/azure/reportSpendValidation.d.ts +0 -7
  416. package/dist/azure/reportSpendValidation.d.ts.map +0 -1
  417. package/dist/azure/reportSpendValidation.js +0 -197
  418. package/dist/azure/reportSpendValidation.js.map +0 -1
  419. package/dist/azure/reportSpendValidationHelpers.d.ts +0 -7
  420. package/dist/azure/reportSpendValidationHelpers.d.ts.map +0 -1
  421. package/dist/azure/reportSpendValidationHelpers.js +0 -31
  422. package/dist/azure/reportSpendValidationHelpers.js.map +0 -1
  423. package/dist/azure/vmPatchManagement.d.ts +0 -109
  424. package/dist/azure/vmPatchManagement.d.ts.map +0 -1
  425. package/dist/azure/vmPatchManagement.js +0 -7
  426. package/dist/azure/vmPatchManagement.js.map +0 -1
  427. package/dist/environment/canonicalization.d.ts +0 -12
  428. package/dist/environment/canonicalization.d.ts.map +0 -1
  429. package/dist/environment/canonicalization.js +0 -40
  430. package/dist/environment/canonicalization.js.map +0 -1
  431. package/dist/environment/contracts.d.ts +0 -472
  432. package/dist/environment/contracts.d.ts.map +0 -1
  433. package/dist/environment/contracts.js +0 -73
  434. package/dist/environment/contracts.js.map +0 -1
  435. package/dist/environment/index.d.ts +0 -6
  436. package/dist/environment/index.d.ts.map +0 -1
  437. package/dist/environment/index.js +0 -22
  438. package/dist/environment/index.js.map +0 -1
  439. package/dist/environment/internal.d.ts +0 -21
  440. package/dist/environment/internal.d.ts.map +0 -1
  441. package/dist/environment/internal.js +0 -113
  442. package/dist/environment/internal.js.map +0 -1
  443. package/dist/environment/references.d.ts +0 -24
  444. package/dist/environment/references.d.ts.map +0 -1
  445. package/dist/environment/references.js +0 -243
  446. package/dist/environment/references.js.map +0 -1
  447. package/dist/environment/tenant.d.ts +0 -128
  448. package/dist/environment/tenant.d.ts.map +0 -1
  449. package/dist/environment/tenant.js +0 -203
  450. package/dist/environment/tenant.js.map +0 -1
  451. package/dist/environment/validation.d.ts +0 -34
  452. package/dist/environment/validation.d.ts.map +0 -1
  453. package/dist/environment/validation.js +0 -655
  454. package/dist/environment/validation.js.map +0 -1
  455. package/dist/esm/accounts/azureManualOnboarding.js +0 -8
  456. package/dist/esm/ai/conversationHistory.js +0 -6
  457. package/dist/esm/ai/grounding.js +0 -80
  458. package/dist/esm/ai/workspaceArtifacts.js +0 -158
  459. package/dist/esm/aws/organizationCommitments.js +0 -48
  460. package/dist/esm/aws/organizationCommitmentsApiValidation.js +0 -220
  461. package/dist/esm/aws/organizationCommitmentsValidation.js +0 -224
  462. package/dist/esm/aws/portalOrganizationCommitmentsPlanningPublicArtifactValidation.js +0 -402
  463. package/dist/esm/aws/portalOrganizationCommitmentsPlanningPublicArtifacts.js +0 -2
  464. package/dist/esm/azure/activityLogAnalysis.js +0 -64
  465. package/dist/esm/azure/activityLogAnalysisPublicValidation.js +0 -360
  466. package/dist/esm/azure/activityLogAnalysisPublicValidationHelpers.js +0 -172
  467. package/dist/esm/azure/activityLogAnalysisValidation.js +0 -365
  468. package/dist/esm/azure/financialAnalyticsDisplayKernel.js +0 -139
  469. package/dist/esm/azure/financialAuthorityProjectionKernel.js +0 -263
  470. package/dist/esm/azure/financialChargeComposition.js +0 -36
  471. package/dist/esm/azure/financialChargeCompositionKernel.js +0 -48
  472. package/dist/esm/azure/financialChargeCompositionValidation.js +0 -155
  473. package/dist/esm/azure/financialChargePolicy.js +0 -473
  474. package/dist/esm/azure/financialCurrentSpendSurfaceProjection.js +0 -2
  475. package/dist/esm/azure/financialCurrentSpendSurfaceProjectionValidation.js +0 -184
  476. package/dist/esm/azure/financialDataflowKernel.js +0 -164
  477. package/dist/esm/azure/financialEvidenceCoverage.js +0 -106
  478. package/dist/esm/azure/financialPolicyKernel.js +0 -225
  479. package/dist/esm/azure/financialResourceSurfaceProjection.js +0 -2
  480. package/dist/esm/azure/financialResourceSurfaceProjectionValidation.js +0 -243
  481. package/dist/esm/azure/financialSavingsChargePolicyKernel.js +0 -29
  482. package/dist/esm/azure/financialSavingsPercentageKernel.js +0 -44
  483. package/dist/esm/azure/financialSavingsSurfaceProjectionKernel.js +0 -427
  484. package/dist/esm/azure/recommendationLifecycleOverlayValidation.js +0 -75
  485. package/dist/esm/azure/reportDailySpend.js +0 -2
  486. package/dist/esm/azure/reportDailySpendValidation.js +0 -67
  487. package/dist/esm/azure/reportEvidence.js +0 -21
  488. package/dist/esm/azure/reportEvidenceCatalogueValidation.js +0 -103
  489. package/dist/esm/azure/reportEvidenceValidation.js +0 -413
  490. package/dist/esm/azure/reportEvidenceValidationHelpers.js +0 -106
  491. package/dist/esm/azure/reportSavingsContributionValidation.js +0 -30
  492. package/dist/esm/azure/reportSpend.js +0 -1
  493. package/dist/esm/azure/reportSpendValidation.js +0 -189
  494. package/dist/esm/azure/reportSpendValidationHelpers.js +0 -22
  495. package/dist/esm/azure/vmPatchManagement.js +0 -3
  496. package/dist/esm/entries/environment.js +0 -3
  497. package/dist/esm/environment/canonicalization.js +0 -34
  498. package/dist/esm/environment/contracts.js +0 -69
  499. package/dist/esm/environment/index.js +0 -5
  500. package/dist/esm/environment/internal.js +0 -97
  501. package/dist/esm/environment/references.js +0 -230
  502. package/dist/esm/environment/tenant.js +0 -190
  503. package/dist/esm/environment/validation.js +0 -635
  504. package/dist/esm/identity/microsoftSignInAdminConsent.js +0 -1
  505. package/dist/esm/scheduler/bastionSchedule.js +0 -1
  506. package/dist/esm/scheduler/bastionScheduleProfile.js +0 -206
  507. package/dist/esm/scheduler/bastionScheduleValidation.js +0 -401
  508. package/dist/identity/microsoftSignInAdminConsent.d.ts +0 -59
  509. package/dist/identity/microsoftSignInAdminConsent.d.ts.map +0 -1
  510. package/dist/identity/microsoftSignInAdminConsent.js +0 -3
  511. package/dist/identity/microsoftSignInAdminConsent.js.map +0 -1
  512. package/dist/scheduler/bastionSchedule.d.ts +0 -113
  513. package/dist/scheduler/bastionSchedule.d.ts.map +0 -1
  514. package/dist/scheduler/bastionSchedule.js +0 -3
  515. package/dist/scheduler/bastionSchedule.js.map +0 -1
  516. package/dist/scheduler/bastionScheduleProfile.d.ts +0 -24
  517. package/dist/scheduler/bastionScheduleProfile.d.ts.map +0 -1
  518. package/dist/scheduler/bastionScheduleProfile.js +0 -210
  519. package/dist/scheduler/bastionScheduleProfile.js.map +0 -1
  520. package/dist/scheduler/bastionScheduleValidation.d.ts +0 -10
  521. package/dist/scheduler/bastionScheduleValidation.d.ts.map +0 -1
  522. package/dist/scheduler/bastionScheduleValidation.js +0 -412
  523. package/dist/scheduler/bastionScheduleValidation.js.map +0 -1
@@ -2,8 +2,7 @@ import { sha256Utf8 } from '../common/sha256.js';
2
2
  import { FINANCIAL_SAVINGS_AUTHORITY_CONTRACT_VERSION_V1, FINANCIAL_SAVINGS_AUTHORITY_SCHEMA_VERSION_V1, } from './financialSavingsAuthority.js';
3
3
  import { validateFinancialEligibilityAssessmentV1, validateFinancialEligibilityBaselineV1, } from './financialEligibilityAssessmentValidation.js';
4
4
  import { validateFinancialSavingsCoordinateEnvelopeV1 } from './financialSavingsCoordinateValidation.js';
5
- import { isFinancialChargeInclusionPolicyRefV1 } from './financialChargeCompositionValidation.js';
6
- import { canonicalizeFinancialSavingsJsonValue, hasExactFinancialSavingsFields, haveSameFinancialSavingsSet, isFinancialSavingsHash, isFinancialSavingsIdentity, isFinancialSavingsIsoInstant, isFinancialSavingsMinorUnits, isFinancialSavingsRecord, sumFinancialSavingsMinorUnits, } from './financialSavingsAuthorityValidationPrimitives.js';
5
+ import { canonicalizeFinancialSavingsJsonValue, hasExactFinancialSavingsFields, isFinancialSavingsHash, isFinancialSavingsRecord, } from './financialSavingsAuthorityValidationPrimitives.js';
7
6
  export { canonicalizeFinancialEligibilityAssessmentIdentityV1, createFinancialEligibilityAssessmentIdV1, } from './financialEligibilityAssessmentValidation.js';
8
7
  export { canonicalizeFinancialSavingsActivationIdentityV1, canonicalizeFinancialSavingsAllocationIdentityV1, canonicalizeFinancialSavingsDenominatorIdentityV1, createFinancialSavingsActivationIdV1, createFinancialSavingsAllocationIdV1, createFinancialSavingsDenominatorIdV1, } from './financialSavingsCoordinateValidation.js';
9
8
  export const canonicalizeFinancialSavingsAuthorityIdentityV1 = (value) => JSON.stringify(canonicalizeFinancialSavingsJsonValue({
@@ -29,7 +28,7 @@ export const canonicalizeFinancialSavingsAuthorityIdentityV1 = (value) => JSON.s
29
28
  .map(allocation => ({
30
29
  ...allocation,
31
30
  billableComponentIds: [...allocation.billableComponentIds].sort(),
32
- eligibility: allocation.eligibility.kind !== 'mapped'
31
+ eligibility: allocation.eligibility.kind === 'not-applicable'
33
32
  ? allocation.eligibility
34
33
  : {
35
34
  ...allocation.eligibility,
@@ -40,9 +39,6 @@ export const canonicalizeFinancialSavingsAuthorityIdentityV1 = (value) => JSON.s
40
39
  resourceContributions: [...coordinate.resourceContributions]
41
40
  .sort((left, right) => left.ownerScopeId.localeCompare(right.ownerScopeId))
42
41
  .map(contribution => ({ ...contribution, allocationIds: [...contribution.allocationIds].sort() })),
43
- recommendationContributions: [...coordinate.recommendationContributions]
44
- .sort((left, right) => `${left.ownerScopeId}\u0000${left.recommendationId}`.localeCompare(`${right.ownerScopeId}\u0000${right.recommendationId}`))
45
- .map(contribution => ({ ...contribution, allocationIds: [...contribution.allocationIds].sort() })),
46
42
  aggregate: { ...coordinate.aggregate, allocationIds: [...coordinate.aggregate.allocationIds].sort() },
47
43
  }),
48
44
  }));
@@ -116,183 +112,3 @@ export const isFinancialSavingsAuthorityBoundToFinancialAuthorityV1 = (value, au
116
112
  const { savingsAuthorityId: _savingsAuthorityId, ...identity } = savingsAuthority;
117
113
  return savingsAuthority.savingsAuthorityId === createFinancialSavingsAuthorityIdV1(identity);
118
114
  };
119
- const RESOURCE_PROJECTION_UNAVAILABLE_REASONS = new Set([
120
- 'scenario-coverage-unproven',
121
- 'unmigrated-scenario-producer',
122
- 'projection-unavailable',
123
- 'activation-unavailable',
124
- 'allocation-unavailable',
125
- ]);
126
- const RESOURCE_PROJECTION_CURRENCY = /^[A-Z]{3}$/;
127
- const normalizeResourceScope = (value) => value.trim().toLowerCase().replace(/\/+$/, '');
128
- const isResourceContribution = (value, scopeId) => isFinancialSavingsRecord(value) &&
129
- hasExactFinancialSavingsFields(value, ['ownerScopeId', 'allocationIds', 'savingsMinorUnits']) &&
130
- isFinancialSavingsIdentity(value.ownerScopeId) &&
131
- normalizeResourceScope(value.ownerScopeId) === scopeId &&
132
- Array.isArray(value.allocationIds) &&
133
- value.allocationIds.length > 0 &&
134
- value.allocationIds.length <= 20000 &&
135
- value.allocationIds.every(isFinancialSavingsHash) &&
136
- new Set(value.allocationIds).size === value.allocationIds.length &&
137
- isFinancialSavingsMinorUnits(value.savingsMinorUnits);
138
- const isRecommendationContribution = (value, scopeId) => isFinancialSavingsRecord(value) &&
139
- hasExactFinancialSavingsFields(value, ['ownerScopeId', 'recommendationId', 'allocationIds', 'savingsMinorUnits']) &&
140
- isFinancialSavingsIdentity(value.ownerScopeId) &&
141
- normalizeResourceScope(value.ownerScopeId) === scopeId &&
142
- isFinancialSavingsIdentity(value.recommendationId) &&
143
- Array.isArray(value.allocationIds) &&
144
- value.allocationIds.length > 0 &&
145
- value.allocationIds.length <= 20000 &&
146
- value.allocationIds.every(isFinancialSavingsHash) &&
147
- new Set(value.allocationIds).size === value.allocationIds.length &&
148
- isFinancialSavingsMinorUnits(value.savingsMinorUnits);
149
- const isSavingsResourceCoordinate = (value, scopeId) => {
150
- if (!isFinancialSavingsRecord(value) || !isFinancialSavingsHash(value.coordinateId))
151
- return false;
152
- if (value.status === 'unavailable') {
153
- return (hasExactFinancialSavingsFields(value, ['status', 'coordinateId', 'unavailableReason'], ['currentAggregateBaselineId', 'chargeInclusionPolicyRef']) &&
154
- (value.currentAggregateBaselineId === undefined || isFinancialSavingsHash(value.currentAggregateBaselineId)) &&
155
- (value.chargeInclusionPolicyRef === undefined || isFinancialChargeInclusionPolicyRefV1(value.chargeInclusionPolicyRef)) &&
156
- typeof value.unavailableReason === 'string' &&
157
- RESOURCE_PROJECTION_UNAVAILABLE_REASONS.has(value.unavailableReason));
158
- }
159
- const partial = value.status === 'partial';
160
- if (value.status !== 'available' &&
161
- !partial)
162
- return false;
163
- if (!hasExactFinancialSavingsFields(value, [
164
- 'status',
165
- 'coordinateId',
166
- 'currentAggregateBaselineId',
167
- 'accountingCurrencyCode',
168
- 'minorUnitScale',
169
- 'roundingMode',
170
- 'recommendationContributions',
171
- ...(partial ? ['unavailableScenarioIds'] : []),
172
- ], [
173
- 'resourceContribution',
174
- 'chargeInclusionPolicyRef',
175
- 'displayMemberResourceContributions',
176
- 'displayMemberRecommendationContributions',
177
- ]) ||
178
- !isFinancialSavingsHash(value.currentAggregateBaselineId) ||
179
- (value.chargeInclusionPolicyRef !== undefined && !isFinancialChargeInclusionPolicyRefV1(value.chargeInclusionPolicyRef)) ||
180
- typeof value.accountingCurrencyCode !== 'string' ||
181
- !RESOURCE_PROJECTION_CURRENCY.test(value.accountingCurrencyCode) ||
182
- !Number.isSafeInteger(value.minorUnitScale) ||
183
- Number(value.minorUnitScale) < 0 ||
184
- Number(value.minorUnitScale) > 6 ||
185
- value.roundingMode !== 'half-away-from-zero' ||
186
- (value.resourceContribution !== undefined && !isResourceContribution(value.resourceContribution, scopeId)) ||
187
- !Array.isArray(value.recommendationContributions) ||
188
- value.recommendationContributions.length > 20000 ||
189
- !value.recommendationContributions.every(contribution => isRecommendationContribution(contribution, scopeId)) ||
190
- (value.displayMemberResourceContributions !== undefined &&
191
- (!Array.isArray(value.displayMemberResourceContributions) ||
192
- value.displayMemberResourceContributions.length === 0 ||
193
- value.displayMemberResourceContributions.length > 20000 ||
194
- !value.displayMemberResourceContributions.every(contribution => isFinancialSavingsRecord(contribution) &&
195
- isResourceContribution(contribution, normalizeResourceScope(String(contribution.ownerScopeId))) &&
196
- normalizeResourceScope(String(contribution.ownerScopeId)) !== scopeId))) ||
197
- (value.displayMemberRecommendationContributions !== undefined &&
198
- (!Array.isArray(value.displayMemberRecommendationContributions) ||
199
- value.displayMemberRecommendationContributions.length === 0 ||
200
- value.displayMemberRecommendationContributions.length > 20000 ||
201
- !value.displayMemberRecommendationContributions.every(contribution => isFinancialSavingsRecord(contribution) &&
202
- isRecommendationContribution(contribution, normalizeResourceScope(String(contribution.ownerScopeId))) &&
203
- normalizeResourceScope(String(contribution.ownerScopeId)) !== scopeId))) ||
204
- (partial &&
205
- (!Array.isArray(value.unavailableScenarioIds) ||
206
- value.unavailableScenarioIds.length === 0 ||
207
- value.unavailableScenarioIds.length > 20000 ||
208
- !value.unavailableScenarioIds.every(isFinancialSavingsIdentity) ||
209
- new Set(value.unavailableScenarioIds).size !== value.unavailableScenarioIds.length)))
210
- return false;
211
- const recommendationIds = value.recommendationContributions.map(contribution => contribution.recommendationId);
212
- const allocationIds = value.recommendationContributions.flatMap(contribution => contribution.allocationIds);
213
- const contributionSum = sumFinancialSavingsMinorUnits(value.recommendationContributions.map(contribution => contribution.savingsMinorUnits));
214
- const resourceContribution = value.resourceContribution;
215
- const primaryValid = new Set(recommendationIds).size === recommendationIds.length &&
216
- new Set(allocationIds).size === allocationIds.length &&
217
- contributionSum !== undefined &&
218
- (resourceContribution === undefined
219
- ? allocationIds.length === 0 && contributionSum === 0
220
- : haveSameFinancialSavingsSet(allocationIds, resourceContribution.allocationIds) &&
221
- contributionSum === resourceContribution.savingsMinorUnits);
222
- if (!primaryValid)
223
- return false;
224
- const displayResourceContributions = (value.displayMemberResourceContributions ?? []);
225
- const displayRecommendationContributions = (value.displayMemberRecommendationContributions ?? []);
226
- const displayResourceByOwner = new Map(displayResourceContributions.map(contribution => [normalizeResourceScope(contribution.ownerScopeId), contribution]));
227
- if (displayResourceByOwner.size !== displayResourceContributions.length)
228
- return false;
229
- const displayRecommendationKeys = displayRecommendationContributions.map(contribution => `${normalizeResourceScope(contribution.ownerScopeId)}\u0000${contribution.recommendationId}`);
230
- if (new Set(displayRecommendationKeys).size !== displayRecommendationKeys.length)
231
- return false;
232
- const displayAllocationIds = displayRecommendationContributions.flatMap(contribution => contribution.allocationIds);
233
- if (new Set(displayAllocationIds).size !== displayAllocationIds.length ||
234
- displayAllocationIds.some(allocationId => allocationIds.includes(allocationId)))
235
- return false;
236
- for (const [ownerScopeId, contribution] of displayResourceByOwner) {
237
- const recommendations = displayRecommendationContributions.filter(candidate => normalizeResourceScope(candidate.ownerScopeId) === ownerScopeId);
238
- const recommendationAllocationIds = recommendations.flatMap(candidate => candidate.allocationIds);
239
- const recommendationSavings = sumFinancialSavingsMinorUnits(recommendations.map(candidate => candidate.savingsMinorUnits));
240
- if (recommendationSavings === undefined ||
241
- recommendationSavings !== contribution.savingsMinorUnits ||
242
- !haveSameFinancialSavingsSet(recommendationAllocationIds, contribution.allocationIds))
243
- return false;
244
- }
245
- return displayRecommendationContributions.every(contribution => displayResourceByOwner.has(normalizeResourceScope(contribution.ownerScopeId)));
246
- };
247
- /** Strict structural and arithmetic validation for one bounded resource savings projection. */
248
- export const isFinancialSavingsResourceProjectionV1 = (value) => {
249
- if (!isFinancialSavingsRecord(value) ||
250
- !hasExactFinancialSavingsFields(value, [
251
- 'contractVersion',
252
- 'savingsAuthorityId',
253
- 'financialAuthorityId',
254
- 'artifactGeneration',
255
- 'scopeId',
256
- 'coordinates',
257
- ]) ||
258
- value.contractVersion !== 'financial-savings-resource-projection/v1' ||
259
- !isFinancialSavingsHash(value.savingsAuthorityId) ||
260
- !isFinancialSavingsHash(value.financialAuthorityId) ||
261
- !isFinancialSavingsRecord(value.artifactGeneration) ||
262
- !hasExactFinancialSavingsFields(value.artifactGeneration, ['runId', 'generatedAt']) ||
263
- !isFinancialSavingsIdentity(value.artifactGeneration.runId) ||
264
- !isFinancialSavingsIsoInstant(value.artifactGeneration.generatedAt) ||
265
- !isFinancialSavingsIdentity(value.scopeId) ||
266
- value.scopeId !== normalizeResourceScope(value.scopeId) ||
267
- !Array.isArray(value.coordinates) ||
268
- value.coordinates.length === 0 ||
269
- value.coordinates.length > 128)
270
- return false;
271
- const projection = value;
272
- return (projection.coordinates.every(coordinate => isSavingsResourceCoordinate(coordinate, projection.scopeId)) &&
273
- new Set(projection.coordinates.map(coordinate => coordinate.coordinateId)).size === projection.coordinates.length);
274
- };
275
- /** Verifies that the bounded savings projection is the exact companion of one bounded Financial Authority projection. */
276
- export const isFinancialSavingsResourceProjectionBoundToFinancialProjectionV1 = (value, financialProjection) => {
277
- if (!isFinancialSavingsResourceProjectionV1(value))
278
- return false;
279
- const financialCoordinateIds = financialProjection.coordinates.map(coordinate => coordinate.coordinateId);
280
- const displayOwnerScopeIdsByCoordinate = new Map(financialProjection.coordinates.map(coordinate => [
281
- coordinate.coordinateId,
282
- new Set((coordinate.displayMemberBaselines ?? []).map(baseline => normalizeResourceScope(baseline.scopeId))),
283
- ]));
284
- return (value.financialAuthorityId === financialProjection.authorityId &&
285
- normalizeResourceScope(value.scopeId) === normalizeResourceScope(financialProjection.scopeId) &&
286
- value.artifactGeneration.runId === financialProjection.artifactGeneration.runId &&
287
- value.artifactGeneration.generatedAt === financialProjection.artifactGeneration.generatedAt &&
288
- haveSameFinancialSavingsSet(value.coordinates.map(coordinate => coordinate.coordinateId), financialCoordinateIds) &&
289
- value.coordinates.every(coordinate => {
290
- if (coordinate.status === 'unavailable')
291
- return true;
292
- const allowedDisplayOwners = displayOwnerScopeIdsByCoordinate.get(coordinate.coordinateId);
293
- if (!allowedDisplayOwners)
294
- return false;
295
- return ((coordinate.displayMemberResourceContributions ?? []).every(contribution => allowedDisplayOwners.has(normalizeResourceScope(contribution.ownerScopeId))) &&
296
- (coordinate.displayMemberRecommendationContributions ?? []).every(contribution => allowedDisplayOwners.has(normalizeResourceScope(contribution.ownerScopeId))));
297
- }));
298
- };
@@ -23,17 +23,8 @@ const ACTIVATION_REASONS = new Set([
23
23
  'lifecycle-conflict',
24
24
  'unrecognized-lifecycle',
25
25
  'generation-mismatch',
26
- 'projection-unavailable',
27
- 'eligibility-unavailable',
28
- ]);
29
- const UNAVAILABLE_ACTIVATION_REASONS = new Set([
30
- 'lifecycle-stale',
31
- 'lifecycle-unavailable',
32
- 'lifecycle-conflict',
33
- 'generation-mismatch',
34
- 'projection-unavailable',
35
- 'eligibility-unavailable',
36
26
  ]);
27
+ const UNAVAILABLE_ACTIVATION_REASONS = new Set(['lifecycle-stale', 'lifecycle-unavailable', 'lifecycle-conflict', 'generation-mismatch']);
37
28
  export const canonicalizeFinancialSavingsDenominatorIdentityV1 = (value) => JSON.stringify(canonicalizeFinancialSavingsJsonValue({
38
29
  kind: value.kind,
39
30
  baselineId: value.baselineId,
@@ -44,8 +35,7 @@ export const canonicalizeFinancialSavingsDenominatorIdentityV1 = (value) => JSON
44
35
  export const createFinancialSavingsDenominatorIdV1 = (value) => `sha256:${sha256Utf8(canonicalizeFinancialSavingsDenominatorIdentityV1(value))}`;
45
36
  export const canonicalizeFinancialSavingsActivationIdentityV1 = (value) => JSON.stringify(canonicalizeFinancialSavingsJsonValue({
46
37
  recommendationId: value.recommendationId,
47
- scenarioId: value.scenarioId,
48
- ...(value.projectionId === undefined ? {} : { projectionId: value.projectionId }),
38
+ projectionId: value.projectionId,
49
39
  lifecycleState: value.lifecycleState,
50
40
  lifecycleVersion: value.lifecycleVersion,
51
41
  lifecycleEvidenceRefId: value.lifecycleEvidenceRefId,
@@ -59,11 +49,10 @@ export const canonicalizeFinancialSavingsAllocationIdentityV1 = (value) => JSON.
59
49
  ownerScopeId: value.ownerScopeId,
60
50
  billableComponentIds: [...value.billableComponentIds].sort(),
61
51
  recommendationId: value.recommendationId,
62
- scenarioId: value.scenarioId,
63
52
  baselineId: value.baselineId,
64
53
  projectionId: value.projectionId,
65
54
  denominatorId: value.denominatorId,
66
- eligibility: value.eligibility.kind !== 'mapped'
55
+ eligibility: value.eligibility.kind === 'not-applicable'
67
56
  ? value.eligibility
68
57
  : {
69
58
  ...value.eligibility,
@@ -109,23 +98,10 @@ const isActivationDecision = (state, result, reason) => {
109
98
  return UNAVAILABLE_ACTIVATION_REASONS.has(reason);
110
99
  };
111
100
  const isEligibility = (value) => {
112
- if (!isFinancialSavingsRecord(value) || !['not-applicable', 'unavailable', 'mapped'].includes(String(value.kind)))
101
+ if (!isFinancialSavingsRecord(value) || (value.kind !== 'not-applicable' && value.kind !== 'mapped'))
113
102
  return false;
114
103
  if (value.kind === 'not-applicable')
115
104
  return Object.keys(value).length === 1;
116
- if (value.kind === 'unavailable') {
117
- return (Object.keys(value).length === 2 &&
118
- typeof value.reason === 'string' &&
119
- [
120
- 'rule-evidence-unavailable',
121
- 'eligibility-baseline-unavailable',
122
- 'eligible-components-unavailable',
123
- 'denominator-unavailable',
124
- 'current-baseline-mapping-unavailable',
125
- 'currency-conflict',
126
- 'reconciliation-failure',
127
- ].includes(value.reason));
128
- }
129
105
  return (Object.keys(value).length === 5 &&
130
106
  isFinancialSavingsHash(value.eligibilityId) &&
131
107
  isFinancialSavingsHash(value.eligibilityBaselineId) &&
@@ -138,7 +114,7 @@ const isEligibility = (value) => {
138
114
  value.eligibilityComponentIds.every(isFinancialSavingsIdentity) &&
139
115
  new Set(value.eligibilityComponentIds).size === value.eligibilityComponentIds.length);
140
116
  };
141
- const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById, evidenceById, authorityGeneratedAt, authorityRunId) => {
117
+ const validateAvailableCoordinate = (value, authorityCoordinate, eligibilityById, evidenceById, authorityGeneratedAt, authorityRunId) => {
142
118
  if (!hasExactFinancialSavingsFields(value, [
143
119
  'status',
144
120
  'coordinateId',
@@ -150,7 +126,6 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
150
126
  'activations',
151
127
  'allocations',
152
128
  'resourceContributions',
153
- 'recommendationContributions',
154
129
  'aggregate',
155
130
  ]) ||
156
131
  !isFinancialSavingsHash(value.currentAggregateBaselineId) ||
@@ -164,7 +139,7 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
164
139
  value.roundingMode !== 'half-away-from-zero' ||
165
140
  !isFinancialSavingsRecord(value.scenarioCoverage) ||
166
141
  !hasExactFinancialSavingsFields(value.scenarioCoverage, ['status', 'evidenceRefId', 'scenarioIds']) ||
167
- value.scenarioCoverage.status !== (value.status === 'available' ? 'complete' : 'partial') ||
142
+ value.scenarioCoverage.status !== 'complete' ||
168
143
  !isFinancialSavingsHash(value.scenarioCoverage.evidenceRefId) ||
169
144
  !Array.isArray(value.scenarioCoverage.scenarioIds) ||
170
145
  value.scenarioCoverage.scenarioIds.length > 20000 ||
@@ -176,8 +151,6 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
176
151
  value.allocations.length > 20000 ||
177
152
  !Array.isArray(value.resourceContributions) ||
178
153
  value.resourceContributions.length > 20000 ||
179
- !Array.isArray(value.recommendationContributions) ||
180
- value.recommendationContributions.length > 20000 ||
181
154
  !isFinancialSavingsRecord(value.aggregate) ||
182
155
  !hasExactFinancialSavingsFields(value.aggregate, ['allocationIds', 'savingsMinorUnits']) ||
183
156
  !Array.isArray(value.aggregate.allocationIds) ||
@@ -190,17 +163,15 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
190
163
  Date.parse(scenarioCoverageEvidence.intrinsicTime.at) > Date.parse(authorityGeneratedAt))
191
164
  return false;
192
165
  const projectionById = new Map(authorityCoordinate.projections.flatMap(projection => (projection.status === 'available' ? [[projection.projectionId, projection]] : [])));
193
- const availableProjectionScenarioIds = new Set(authorityCoordinate.projections.flatMap(projection => (projection.status === 'available' ? [projection.scenarioId] : [])));
194
- const unavailableEligibilityScenarioIds = new Set([...eligibilityById.values()].flatMap(assessment => (assessment.status === 'unavailable' ? [assessment.scenarioId] : [])));
195
166
  const activationById = new Map();
196
- const activationByScenarioId = new Map();
167
+ const activationByRecommendationId = new Map();
197
168
  for (const activation of value.activations) {
198
169
  const lifecycleEvidence = evidenceById.get(activation.lifecycleEvidenceRefId);
199
170
  if (!isFinancialSavingsRecord(activation) ||
200
171
  !hasExactFinancialSavingsFields(activation, [
201
172
  'activationId',
202
- 'scenarioId',
203
173
  'recommendationId',
174
+ 'projectionId',
204
175
  'lifecycleState',
205
176
  'lifecycleVersion',
206
177
  'lifecycleEvidenceRefId',
@@ -208,29 +179,19 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
208
179
  'reason',
209
180
  'evaluatedAt',
210
181
  'policyVersion',
211
- ], ['projectionId']) ||
182
+ ]) ||
212
183
  !isFinancialSavingsHash(activation.activationId) ||
213
184
  activationById.has(activation.activationId) ||
214
- activationByScenarioId.has(activation.scenarioId) ||
215
- !isFinancialSavingsIdentity(activation.scenarioId) ||
185
+ activationByRecommendationId.has(activation.recommendationId) ||
216
186
  !isFinancialSavingsIdentity(activation.recommendationId) ||
217
- (activation.projectionId !== undefined && !isFinancialSavingsHash(activation.projectionId)) ||
187
+ !isFinancialSavingsHash(activation.projectionId) ||
218
188
  !isFinancialSavingsIdentity(activation.lifecycleVersion) ||
219
189
  !isFinancialSavingsHash(activation.lifecycleEvidenceRefId) ||
220
190
  !isActivationDecision(activation.lifecycleState, activation.result, activation.reason) ||
221
191
  !isFinancialSavingsIsoInstant(activation.evaluatedAt) ||
222
192
  Date.parse(activation.evaluatedAt) > Date.parse(authorityGeneratedAt) ||
223
193
  !isFinancialSavingsIdentity(activation.policyVersion) ||
224
- (activation.result === 'included' &&
225
- (activation.projectionId === undefined || projectionById.get(activation.projectionId)?.scenarioId !== activation.scenarioId)) ||
226
- (activation.result === 'excluded' &&
227
- activation.projectionId !== undefined &&
228
- projectionById.get(activation.projectionId)?.scenarioId !== activation.scenarioId) ||
229
- (activation.result === 'unavailable' &&
230
- (activation.projectionId !== undefined ||
231
- (activation.reason === 'projection-unavailable' && availableProjectionScenarioIds.has(activation.scenarioId)) ||
232
- (activation.reason === 'eligibility-unavailable' &&
233
- !unavailableEligibilityScenarioIds.has(activation.scenarioId)))) ||
194
+ projectionById.get(activation.projectionId)?.scenarioId !== activation.recommendationId ||
234
195
  lifecycleEvidence?.role !== 'recommendation-lifecycle' ||
235
196
  lifecycleEvidence.revisionId !== activation.lifecycleVersion ||
236
197
  Date.parse(lifecycleEvidence.intrinsicTime.at) > Date.parse(authorityGeneratedAt))
@@ -239,15 +200,12 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
239
200
  if (activation.activationId !== createFinancialSavingsActivationIdV1(activationIdentity))
240
201
  return false;
241
202
  activationById.set(activation.activationId, activation);
242
- activationByScenarioId.set(activation.scenarioId, activation);
203
+ activationByRecommendationId.set(activation.recommendationId, activation);
243
204
  }
244
205
  const coveredScenarioIds = new Set(value.scenarioCoverage.scenarioIds);
245
- const activatedScenarioIds = new Set(value.activations.map(activation => activation.scenarioId));
206
+ const activatedScenarioIds = new Set(value.activations.map(activation => activation.recommendationId));
246
207
  if (value.scenarioCoverage.scenarioIds.some(scenarioId => !activatedScenarioIds.has(scenarioId)) ||
247
- value.activations.some(activation => !coveredScenarioIds.has(activation.scenarioId)))
248
- return false;
249
- const hasUnavailableActivation = value.activations.some(activation => activation.result === 'unavailable');
250
- if ((value.status === 'available' && hasUnavailableActivation) || (value.status === 'partial' && !hasUnavailableActivation))
208
+ value.activations.some(activation => !coveredScenarioIds.has(activation.recommendationId)))
251
209
  return false;
252
210
  const allocationById = new Map();
253
211
  const allocatedBaselineComponents = new Set();
@@ -257,7 +215,7 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
257
215
  const eligibility = allocation.eligibility.kind === 'mapped' ? eligibilityById.get(allocation.eligibility.eligibilityId) : undefined;
258
216
  const expectedDenominatorId = allocation.eligibility.kind === 'mapped' && eligibility?.status === 'available'
259
217
  ? eligibility.denominator.denominatorId
260
- : allocation.eligibility.kind === 'not-applicable' && projection
218
+ : projection
261
219
  ? createFinancialSavingsDenominatorIdV1({
262
220
  kind: 'projection-affected-current',
263
221
  baselineId: projection.baselineId,
@@ -271,7 +229,6 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
271
229
  'allocationId',
272
230
  'ownerScopeId',
273
231
  'billableComponentIds',
274
- 'scenarioId',
275
232
  'recommendationId',
276
233
  'baselineId',
277
234
  'projectionId',
@@ -288,7 +245,6 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
288
245
  allocation.billableComponentIds.length > 20000 ||
289
246
  !allocation.billableComponentIds.every(isFinancialSavingsIdentity) ||
290
247
  new Set(allocation.billableComponentIds).size !== allocation.billableComponentIds.length ||
291
- !isFinancialSavingsIdentity(allocation.scenarioId) ||
292
248
  !isFinancialSavingsIdentity(allocation.recommendationId) ||
293
249
  !isFinancialSavingsHash(allocation.baselineId) ||
294
250
  !isFinancialSavingsHash(allocation.projectionId) ||
@@ -302,17 +258,15 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
302
258
  projection.baselineId !== allocation.baselineId ||
303
259
  !haveSameFinancialSavingsSet(projection.affectedComponentIds, allocation.billableComponentIds) ||
304
260
  decimalToMinorUnits(projection.change.savings, value.minorUnitScale) !== allocation.savingsMinorUnits ||
305
- projection.scenarioId !== allocation.scenarioId ||
306
261
  !activation ||
307
262
  activation.result !== 'included' ||
308
- activation.scenarioId !== allocation.scenarioId ||
309
263
  activation.recommendationId !== allocation.recommendationId ||
310
264
  activation.projectionId !== allocation.projectionId ||
311
265
  (allocation.eligibility.kind === 'mapped' &&
312
266
  (!eligibility ||
313
267
  eligibility.status !== 'available' ||
314
268
  eligibility.scopeId !== allocation.ownerScopeId ||
315
- eligibility.scenarioId !== allocation.scenarioId ||
269
+ eligibility.scenarioId !== allocation.recommendationId ||
316
270
  eligibility.eligibilityBaselineId !== allocation.eligibility.eligibilityBaselineId ||
317
271
  eligibility.denominator.denominatorId !== allocation.denominatorId ||
318
272
  eligibility.currentBaselineMapping.currentBaselineId !== allocation.baselineId ||
@@ -353,41 +307,8 @@ const validateComposedCoordinate = (value, authorityCoordinate, eligibilityById,
353
307
  contributedAllocationIds.push(...contribution.allocationIds);
354
308
  }
355
309
  const allocationIds = [...allocationById.keys()];
356
- const recommendationContributionAllocationIds = [];
357
- const recommendationContributionKeys = new Set();
358
- for (const contribution of value.recommendationContributions) {
359
- if (!isFinancialSavingsRecord(contribution) ||
360
- !hasExactFinancialSavingsFields(contribution, [
361
- 'ownerScopeId',
362
- 'recommendationId',
363
- 'allocationIds',
364
- 'savingsMinorUnits',
365
- ]) ||
366
- !isFinancialSavingsIdentity(contribution.ownerScopeId) ||
367
- !isFinancialSavingsIdentity(contribution.recommendationId) ||
368
- !Array.isArray(contribution.allocationIds) ||
369
- contribution.allocationIds.length === 0 ||
370
- contribution.allocationIds.length > 20000 ||
371
- !contribution.allocationIds.every(isFinancialSavingsHash) ||
372
- new Set(contribution.allocationIds).size !== contribution.allocationIds.length ||
373
- !isFinancialSavingsMinorUnits(contribution.savingsMinorUnits))
374
- return false;
375
- const contributionKey = `${contribution.ownerScopeId}\u0000${contribution.recommendationId}`;
376
- if (recommendationContributionKeys.has(contributionKey))
377
- return false;
378
- const allocations = contribution.allocationIds.map(id => allocationById.get(id));
379
- if (allocations.some(allocation => !allocation ||
380
- allocation.ownerScopeId !== contribution.ownerScopeId ||
381
- allocation.recommendationId !== contribution.recommendationId) ||
382
- sumFinancialSavingsMinorUnits(allocations.map(allocation => allocation.savingsMinorUnits)) !== contribution.savingsMinorUnits)
383
- return false;
384
- recommendationContributionKeys.add(contributionKey);
385
- recommendationContributionAllocationIds.push(...contribution.allocationIds);
386
- }
387
310
  return (haveSameFinancialSavingsSet(contributedAllocationIds, allocationIds) &&
388
311
  new Set(contributedAllocationIds).size === contributedAllocationIds.length &&
389
- haveSameFinancialSavingsSet(recommendationContributionAllocationIds, allocationIds) &&
390
- new Set(recommendationContributionAllocationIds).size === recommendationContributionAllocationIds.length &&
391
312
  haveSameFinancialSavingsSet(value.aggregate.allocationIds, allocationIds) &&
392
313
  new Set(value.aggregate.allocationIds).size === value.aggregate.allocationIds.length &&
393
314
  value.aggregate.savingsMinorUnits === sumFinancialSavingsMinorUnits(value.allocations.map(allocation => allocation.savingsMinorUnits)));
@@ -403,6 +324,6 @@ export const validateFinancialSavingsCoordinateEnvelopeV1 = (value, authorityCoo
403
324
  ? value.currentAggregateBaselineId === authorityCoordinate.aggregateBaseline.baselineId
404
325
  : value.currentAggregateBaselineId === undefined));
405
326
  }
406
- return ((value.status === 'available' || value.status === 'partial') &&
407
- validateComposedCoordinate(value, authorityCoordinate, eligibilityById, evidenceById, authorityGeneratedAt, authorityRunId));
327
+ return (value.status === 'available' &&
328
+ validateAvailableCoordinate(value, authorityCoordinate, eligibilityById, evidenceById, authorityGeneratedAt, authorityRunId));
408
329
  };
@@ -1,4 +1,2 @@
1
1
  export const FINANCIAL_SAVINGS_SURFACE_PROJECTION_SCHEMA_VERSION_V1 = 1;
2
2
  export const FINANCIAL_SAVINGS_SURFACE_PROJECTION_CONTRACT_VERSION_V1 = 'financial-savings-surface-projection/v1';
3
- export const FINANCIAL_SAVINGS_QUERY_SELECTION_CONTRACT_VERSION_V1 = 'financial-savings-query-selection/v1';
4
- export const FINANCIAL_SAVINGS_RESOURCE_QUERY_SELECTION_CONTRACT_VERSION_V1 = 'financial-savings-resource-query-selection/v1';