@spottoai/types-package 1.0.2-beta.406 → 1.0.2-beta.408

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 (32) hide show
  1. package/dist/azure/reportEvidence.d.ts +516 -0
  2. package/dist/azure/reportEvidence.d.ts.map +1 -0
  3. package/dist/azure/reportEvidence.js +17 -0
  4. package/dist/azure/reportEvidence.js.map +1 -0
  5. package/dist/azure/reportEvidenceValidation.d.ts +5 -0
  6. package/dist/azure/reportEvidenceValidation.d.ts.map +1 -0
  7. package/dist/azure/reportEvidenceValidation.js +385 -0
  8. package/dist/azure/reportEvidenceValidation.js.map +1 -0
  9. package/dist/azure/reportEvidenceValidationHelpers.d.ts +27 -0
  10. package/dist/azure/reportEvidenceValidationHelpers.d.ts.map +1 -0
  11. package/dist/azure/reportEvidenceValidationHelpers.js +134 -0
  12. package/dist/azure/reportEvidenceValidationHelpers.js.map +1 -0
  13. package/dist/environment/validation.d.ts.map +1 -1
  14. package/dist/environment/validation.js +28 -3
  15. package/dist/environment/validation.js.map +1 -1
  16. package/dist/esm/azure/reportEvidence.js +13 -0
  17. package/dist/esm/azure/reportEvidenceValidation.js +378 -0
  18. package/dist/esm/azure/reportEvidenceValidationHelpers.js +106 -0
  19. package/dist/esm/environment/validation.js +29 -4
  20. package/dist/esm/index.js +2 -0
  21. package/dist/events/alertDefinitionRun.d.ts +4 -0
  22. package/dist/events/alertDefinitionRun.d.ts.map +1 -1
  23. package/dist/events/baseAlert.d.ts +1 -0
  24. package/dist/events/baseAlert.d.ts.map +1 -1
  25. package/dist/events/quickAlerts.d.ts +13 -4
  26. package/dist/events/quickAlerts.d.ts.map +1 -1
  27. package/dist/events/quickAlerts.js.map +1 -1
  28. package/dist/index.d.ts +2 -0
  29. package/dist/index.d.ts.map +1 -1
  30. package/dist/index.js +2 -0
  31. package/dist/index.js.map +1 -1
  32. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reportEvidenceValidationHelpers.js","sourceRoot":"","sources":["../../src/azure/reportEvidenceValidationHelpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,yBAAyB,EAI9B,KAAK,wBAAwB,EAM7B,KAAK,sCAAsC,EAG3C,KAAK,0BAA0B,EAE/B,KAAK,+BAA+B,EAOpC,KAAK,uBAAuB,EAE5B,KAAK,yBAAyB,EAO9B,KAAK,mBAAmB,EAGxB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,mCAAmC,EACzC,MAAM,gBAAgB,CAAC;AAmDxB,oFAAoF;AACpF,eAAO,MAAM,0BAA0B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MASG,CAAC;AA8CzE,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mBAAsE,CAAC;AAEvI,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,kBAMtB,CAAC;AAE1C,iFAAiF;AACjF,eAAO,MAAM,+BAA+B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,6BAiB9B,CAAC;AAE7C,uFAAuF;AACvF,eAAO,MAAM,4BAA4B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,0BAwBnE,CAAC;AAEL,8FAA8F;AAC9F,eAAO,MAAM,oBAAoB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAMvB,CAAC;AAazC,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,yBAO2B,CAAC;AAElG,+FAA+F;AAC/F,eAAO,MAAM,yBAAyB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,uBAqByE,CAAC;AAQ9I,oFAAoF;AACpF,eAAO,MAAM,4BAA4B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,0BA+BtE,CAAC;AAyCF,6FAA6F;AAC7F,eAAO,MAAM,0BAA0B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,wBAYpE,CAAC;AAwUF,sFAAsF;AACtF,eAAO,MAAM,qCAAqC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mCAyE/E,CAAC;AAQF,kFAAkF;AAClF,eAAO,MAAM,iCAAiC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,+BAa3E,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,oCAAoC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,+BAA+B,EAKb,CAAC;AAElG,gFAAgF;AAChF,eAAO,MAAM,wCAAwC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,sCA6BlF,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,yBACd,CAAC;AAEzD,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAA4B,CAAC"}
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,yBAAyB,EAI9B,KAAK,wBAAwB,EAM7B,KAAK,sCAAsC,EAG3C,KAAK,0BAA0B,EAE/B,KAAK,+BAA+B,EAOpC,KAAK,uBAAuB,EAE5B,KAAK,yBAAyB,EAO9B,KAAK,mBAAmB,EAGxB,KAAK,kBAAkB,EACvB,KAAK,0BAA0B,EAC/B,KAAK,6BAA6B,EAClC,KAAK,mCAAmC,EACzC,MAAM,gBAAgB,CAAC;AA2ExB,oFAAoF;AACpF,eAAO,MAAM,0BAA0B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAQ3B,CAAC;AA8C3C,iDAAiD;AACjD,eAAO,MAAM,qBAAqB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mBAAsE,CAAC;AAEvI,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,kBAMtB,CAAC;AAE1C,iFAAiF;AACjF,eAAO,MAAM,+BAA+B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,6BAiB9B,CAAC;AAE7C,uFAAuF;AACvF,eAAO,MAAM,4BAA4B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,0BAwBnE,CAAC;AAEL,8FAA8F;AAC9F,eAAO,MAAM,oBAAoB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAMvB,CAAC;AAazC,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,yBAO2B,CAAC;AAElG,+FAA+F;AAC/F,eAAO,MAAM,yBAAyB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,uBAqByE,CAAC;AAQ9I,oFAAoF;AACpF,eAAO,MAAM,4BAA4B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,0BA+BtE,CAAC;AAyCF,6FAA6F;AAC7F,eAAO,MAAM,0BAA0B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,wBAYpE,CAAC;AAwUF,sFAAsF;AACtF,eAAO,MAAM,qCAAqC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mCAyE/E,CAAC;AAQF,kFAAkF;AAClF,eAAO,MAAM,iCAAiC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,+BAa3E,CAAC;AAEF,qFAAqF;AACrF,eAAO,MAAM,oCAAoC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,+BAA+B,EAKb,CAAC;AAElG,gFAAgF;AAChF,eAAO,MAAM,wCAAwC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,sCA6BlF,CAAC;AAEF,uEAAuE;AACvE,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,yBACd,CAAC;AAEzD,oFAAoF;AACpF,eAAO,MAAM,wBAAwB,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,MAA4B,CAAC"}
@@ -27,16 +27,41 @@ const SAVINGS_PROJECTIONS = new Set(['projected-monthly', 'observed-period', 'un
27
27
  const DATE_WINDOW_PATTERN = /^\d{4}-\d{2}-\d{2}\/\d{4}-\d{2}-\d{2}$/u;
28
28
  const CHANGE_DIRECTIONS = new Set(['increase', 'decrease', 'unchanged', 'unknown']);
29
29
  const scopesEqual = (left, right) => left.kind === right.kind && left.tenantId === right.tenantId && left.companyId === right.companyId && left.subscriptionId === right.subscriptionId;
30
+ const isScopedEnvironmentDetailRoute = (value) => {
31
+ const match = /^\/company\/([A-Za-z0-9_-]+)\/(dashboard|resources|recommendations|cost-analysis|commitments-planning|security|tags|backups|health|perimeter-insights|change-monitoring)(?:\/([^/?#]+))?(?:\?subscriptions=([A-Za-z0-9_-]+))?$/u.exec(value);
32
+ if (!match)
33
+ return false;
34
+ const [, , page, subject, subscriptionId] = match;
35
+ if (!subject)
36
+ return Boolean(subscriptionId);
37
+ try {
38
+ const decoded = decodeURIComponent(subject);
39
+ // Decode once only. Encoded separators are permitted solely inside an ARM ID,
40
+ // never in the company, page, subscription selection or recommendation ID.
41
+ if (encodeURIComponent(decoded) !== subject || /[%\\?#]/u.test(decoded) || (0, internal_js_1.hasControlCharacter)(decoded))
42
+ return false;
43
+ if (decoded.split('/').some(segment => segment === '.' || segment === '..'))
44
+ return false;
45
+ if (page === 'recommendations')
46
+ return Boolean(subscriptionId) && /^[A-Za-z0-9_~.-]+$/u.test(decoded);
47
+ if (page !== 'resources')
48
+ return false;
49
+ const resource = /^\/subscriptions\/([A-Za-z0-9_-]+)\/resourcegroups\/[^/]+\/providers\/[^/]+\/.+/iu.exec(decoded);
50
+ return Boolean(resource && (!subscriptionId || resource[1].toLowerCase() === subscriptionId.toLowerCase()));
51
+ }
52
+ catch {
53
+ return false;
54
+ }
55
+ };
30
56
  /** Validates a bounded, local Portal route suitable for client-visible evidence. */
31
57
  const isEnvironmentPortalRouteV1 = (value) => (0, internal_js_1.isBoundedString)(value, contracts_js_1.ENVIRONMENT_CONTRACT_LIMITS_V1.customerStringScalars, { trimmed: true, controls: true }) &&
32
58
  value.startsWith('/') &&
33
59
  !value.startsWith('//') &&
34
60
  !value.includes('\\') &&
35
61
  !value.includes('://') &&
36
- !value.includes('?') &&
37
62
  !value.includes('#') &&
38
- !value.includes('%') &&
39
- value.split('/').every(segment => segment !== '.' && segment !== '..');
63
+ ((!value.includes('?') && !value.includes('%') && value.split('/').every(segment => segment !== '.' && segment !== '..')) ||
64
+ isScopedEnvironmentDetailRoute(value));
40
65
  exports.isEnvironmentPortalRouteV1 = isEnvironmentPortalRouteV1;
41
66
  const isGeneralKey = (value) => (0, internal_js_1.isBoundedString)(value, contracts_js_1.ENVIRONMENT_CONTRACT_LIMITS_V1.safeLabelScalars, { trimmed: true, controls: true });
42
67
  const isReferenceArray = (value) => Array.isArray(value) &&
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export const REPORT_EVIDENCE_LIMITS = {
2
+ detailRows: 50,
3
+ currentRecommendations: 90,
4
+ recommendationResources: 2,
5
+ summaryDimensions: 25,
6
+ summaryRows: 20,
7
+ topRecommendationIds: 20,
8
+ topRecommendationIdsPerPillar: 5,
9
+ upcomingEvents: 20,
10
+ historyPeriods: 13,
11
+ historyRecommendations: 90,
12
+ tenantGlobalAdministrators: 50,
13
+ };
@@ -0,0 +1,378 @@
1
+ import { REPORT_EVIDENCE_LIMITS, } from './reportEvidence.js';
2
+ import { countTotal, hasOptionalNumbers, hasOptionalStrings, hasRequiredRecords, isBoundedRows, isCommitmentExpirySummary, isCostSummary, isCount, isCountRecord, isDateTime, isEvidenceReference, isFiniteNumber, isOptionalBoolean, isOptionalFiniteNumber, isOptionalString, isProjectionRows, isRecommendationSummary, isRecord, isResourceSummary, isRetirementSummary, isSourceFileStatus, isString, isStringArray, isTagCoverage, } from './reportEvidenceValidationHelpers.js';
3
+ const isCompactRecommendationResource = (value) => isRecord(value) &&
4
+ isString(value.id) &&
5
+ ['name', 'type', 'resourceGroup', 'location', 'currency', 'currencySymbol'].every(key => isOptionalString(value[key])) &&
6
+ ['spend', 'spendAmortized'].every(key => isOptionalFiniteNumber(value[key])) &&
7
+ (value.savings === undefined ||
8
+ (isRecord(value.savings) && isOptionalFiniteNumber(value.savings.minAmount) && isOptionalFiniteNumber(value.savings.maxAmount)));
9
+ const isCompactRecommendation = (value) => {
10
+ if (!isRecord(value) || !isRecord(value.recommendation) || !Array.isArray(value.resources))
11
+ return false;
12
+ const recommendation = value.recommendation;
13
+ if (!isString(recommendation.id) ||
14
+ !isString(recommendation.title) ||
15
+ recommendation.resolved === true ||
16
+ !isCount(value.resourcesCount) ||
17
+ !isCount(value.omittedResourceCount) ||
18
+ value.resources.length > REPORT_EVIDENCE_LIMITS.recommendationResources ||
19
+ !value.resources.every(isCompactRecommendationResource) ||
20
+ value.resourcesCount !== value.resources.length + value.omittedResourceCount) {
21
+ return false;
22
+ }
23
+ if (!hasOptionalStrings(recommendation, [
24
+ 'name',
25
+ 'headline',
26
+ 'plainSummary',
27
+ 'bottomLine',
28
+ 'description',
29
+ 'remediation',
30
+ 'impactReason',
31
+ 'effortReason',
32
+ 'potentialBenefits',
33
+ 'considerations',
34
+ 'technicalPlaybook',
35
+ 'category',
36
+ 'subCategory',
37
+ 'impact',
38
+ 'effort',
39
+ 'severity',
40
+ 'risk',
41
+ 'priority',
42
+ 'priorityLabel',
43
+ 'priorityTier',
44
+ 'manualPriority',
45
+ 'costImpactUnit',
46
+ ]) ||
47
+ !hasOptionalNumbers(recommendation, [
48
+ 'effortHours',
49
+ 'costImpact',
50
+ 'potentialMonthlySavings',
51
+ 'confidencePercentage',
52
+ 'adjustedScore',
53
+ 'finalScore',
54
+ 'normalizedScore',
55
+ ]) ||
56
+ !isOptionalBoolean(recommendation.resolved) ||
57
+ !hasOptionalStrings(value, ['currency', 'currencySymbol'])) {
58
+ return false;
59
+ }
60
+ return (value.savings === undefined ||
61
+ (isRecord(value.savings) && isOptionalFiniteNumber(value.savings.minAmount) && isOptionalFiniteNumber(value.savings.maxAmount)));
62
+ };
63
+ const isCostSavingsCategory = (value) => isRecord(value) &&
64
+ isString(value.key) &&
65
+ isString(value.label) &&
66
+ isCount(value.recommendationCount) &&
67
+ isCount(value.resourceCount) &&
68
+ ['currentMonthlyCost', 'potentialMonthlyCost', 'minimumMonthlySavings', 'maximumMonthlySavings'].every(key => isFiniteNumber(value[key]));
69
+ const hasRequiredCountKeys = (value, keys) => isCountRecord(value) && keys.every(key => Object.prototype.hasOwnProperty.call(value, key));
70
+ const isRecommendationPortfolio = (value) => {
71
+ if (!isRecord(value))
72
+ return false;
73
+ const impactBands = new Set(['High', 'Medium', 'Low', 'Unknown']);
74
+ const effortBands = new Set(['Low', 'Medium', 'High', 'Unknown']);
75
+ if (!isCount(value.sourceRecommendationCount) ||
76
+ !isCount(value.activeRecommendationCount) ||
77
+ !isCount(value.resolvedRecommendationCount) ||
78
+ !isCount(value.highImpactCount) ||
79
+ !isCount(value.quickWinCount) ||
80
+ value.sourceRecommendationCount !== value.activeRecommendationCount + value.resolvedRecommendationCount ||
81
+ value.highImpactCount > value.activeRecommendationCount ||
82
+ value.quickWinCount > value.activeRecommendationCount ||
83
+ !isCountRecord(value.byCategory) ||
84
+ !hasRequiredCountKeys(value.byImpact, ['High', 'Medium', 'Low', 'Unknown']) ||
85
+ !hasRequiredCountKeys(value.byEffort, ['Low', 'Medium', 'High', 'Unknown']) ||
86
+ countTotal(value.byCategory) !== value.activeRecommendationCount ||
87
+ countTotal(value.byImpact) !== value.activeRecommendationCount ||
88
+ countTotal(value.byEffort) !== value.activeRecommendationCount ||
89
+ !Array.isArray(value.impactEffortMatrix) ||
90
+ value.impactEffortMatrix.length !== 16 ||
91
+ !value.impactEffortMatrix.every(row => isRecord(row) &&
92
+ isString(row.impact) &&
93
+ impactBands.has(row.impact) &&
94
+ isString(row.effort) &&
95
+ effortBands.has(row.effort) &&
96
+ isCount(row.count)) ||
97
+ new Set(value.impactEffortMatrix.map(row => `${row.impact}|${row.effort}`)).size !== 16 ||
98
+ value.impactEffortMatrix.reduce((total, row) => total + row.count, 0) !== value.activeRecommendationCount ||
99
+ !isRecord(value.affectedResources) ||
100
+ !isCount(value.affectedResources.count) ||
101
+ !isCount(value.affectedResources.identifiedCount) ||
102
+ !isCount(value.affectedResources.largestReportedRecommendationCount) ||
103
+ (value.affectedResources.basis !== 'exact' && value.affectedResources.basis !== 'lower-bound')) {
104
+ return false;
105
+ }
106
+ if (value.affectedResources.count < value.affectedResources.identifiedCount ||
107
+ value.affectedResources.count < value.affectedResources.largestReportedRecommendationCount ||
108
+ (value.affectedResources.basis === 'exact' && value.affectedResources.count !== value.affectedResources.identifiedCount)) {
109
+ return false;
110
+ }
111
+ if (value.costSavings === undefined)
112
+ return true;
113
+ if (!isRecord(value.costSavings) || !isString(value.costSavings.currency) || !isCount(value.costSavings.contributingRecommendationCount)) {
114
+ return false;
115
+ }
116
+ const monthly = value.costSavings.monthly;
117
+ const annual = value.costSavings.annual;
118
+ return (isRecord(monthly) &&
119
+ ['currentCost', 'potentialCost', 'minimumSavings', 'maximumSavings'].every(key => isFiniteNumber(monthly[key])) &&
120
+ isRecord(annual) &&
121
+ isFiniteNumber(annual.minimumSavings) &&
122
+ isFiniteNumber(annual.maximumSavings) &&
123
+ isBoundedRows(value.costSavings.categories, REPORT_EVIDENCE_LIMITS.detailRows, isCostSavingsCategory) &&
124
+ isOptionalString(value.costSavings.currencySymbol) &&
125
+ isOptionalFiniteNumber(monthly.minimumSavingsPercent) &&
126
+ isOptionalFiniteNumber(monthly.maximumSavingsPercent) &&
127
+ (value.costSavings.basis === undefined ||
128
+ (isRecord(value.costSavings.basis) &&
129
+ isString(value.costSavings.basis.categoryScope) &&
130
+ isString(value.costSavings.basis.projection) &&
131
+ isString(value.costSavings.basis.observedPeriod) &&
132
+ typeof value.costSavings.basis.excludesEstimatedRows === 'boolean' &&
133
+ isString(value.costSavings.basis.appliesTo) &&
134
+ typeof value.costSavings.basis.containsLegacySavings === 'boolean')));
135
+ };
136
+ const isResourceExample = (value) => isRecord(value) && isString(value.name) && hasOptionalStrings(value, ['type', 'resourceGroup', 'location']);
137
+ const isSnapshot = (value) => isRecord(value) && isString(value.name) && isOptionalString(value.resourceGroup) && isOptionalFiniteNumber(value.createdTime);
138
+ const isAppliedTagCost = (value) => isRecord(value) && isString(value.tagKey) && isString(value.tagValue) && isCount(value.resourceCount) && isFiniteNumber(value.spend30Days);
139
+ const isInventoryResource = (value) => isRecord(value) &&
140
+ isString(value.id) &&
141
+ hasOptionalStrings(value, ['name', 'type', 'resourceGroup', 'location']) &&
142
+ hasOptionalNumbers(value, ['spend30Days', 'spend30DaysAmortized', 'createdTime']);
143
+ const isInventory = (value) => isRecord(value) &&
144
+ isCount(value.totalResources) &&
145
+ isCount(value.untaggedResourceCount) &&
146
+ value.untaggedResourceCount <= value.totalResources &&
147
+ isBoundedRows(value.untaggedExamples, REPORT_EVIDENCE_LIMITS.detailRows, isResourceExample) &&
148
+ isBoundedRows(value.snapshots, REPORT_EVIDENCE_LIMITS.detailRows, isSnapshot) &&
149
+ isBoundedRows(value.appliedTagCosts, REPORT_EVIDENCE_LIMITS.detailRows, isAppliedTagCost) &&
150
+ isBoundedRows(value.topSpendResources, REPORT_EVIDENCE_LIMITS.detailRows, isInventoryResource);
151
+ const isPrivilegedAccess = (value) => isRecord(value) &&
152
+ isString(value.principalId) &&
153
+ isString(value.displayName) &&
154
+ isString(value.roleName) &&
155
+ hasOptionalStrings(value, ['userPrincipalName', 'scope', 'scopeType', 'lastLogonDate', 'mfaStatus']);
156
+ const isGovernance = (value) => isRecord(value) &&
157
+ isOptionalString(value.generatedAt) &&
158
+ (value.coverage === undefined || isRecord(value.coverage)) &&
159
+ hasRequiredRecords(value, ['policySummary', 'rbacSummary', 'globalAdministratorSummary']) &&
160
+ isProjectionRows(value.complianceRows) &&
161
+ isBoundedRows(value.privilegedAccessRows, REPORT_EVIDENCE_LIMITS.detailRows, isPrivilegedAccess) &&
162
+ isProjectionRows(value.findings) &&
163
+ isProjectionRows(value.limitations);
164
+ const isCommitments = (value) => {
165
+ if (!isRecord(value) || !isRecord(value.inventorySummary) || !isCountRecord(value.inventorySummary.statusCounts))
166
+ return false;
167
+ if (!isCount(value.inventorySummary.totalCount) || !isBoundedRows(value.inventory, REPORT_EVIDENCE_LIMITS.detailRows, isCommitmentInventoryRow)) {
168
+ return false;
169
+ }
170
+ if (value.inventorySummary.totalCount !== value.inventory.totalCount ||
171
+ countTotal(value.inventorySummary.statusCounts) !== value.inventorySummary.totalCount) {
172
+ return false;
173
+ }
174
+ return ['coverage', 'obsoleteCandidates', 'reallocationOpportunities', 'purchaseRecommendations', 'renewals'].every(key => isProjectionRows(value[key]));
175
+ };
176
+ function isCommitmentInventoryRow(value) {
177
+ return (isRecord(value) &&
178
+ hasOptionalStrings(value, [
179
+ 'id',
180
+ 'benefitType',
181
+ 'type',
182
+ 'displayName',
183
+ 'status',
184
+ 'expiryDate',
185
+ 'skuName',
186
+ 'skuDescription',
187
+ 'location',
188
+ 'term',
189
+ ]) &&
190
+ hasOptionalNumbers(value, ['daysToExpiry', 'reservedQuantity']) &&
191
+ isOptionalBoolean(value.renew) &&
192
+ (value.annualCommittedCost === undefined || isRecord(value.annualCommittedCost)) &&
193
+ (value.doNotRenewAnnualImpact === undefined || isRecord(value.doNotRenewAnnualImpact)));
194
+ }
195
+ const isReportingProjection = (value) => {
196
+ if (!isRecord(value) || !isRecord(value.dashboard) || !isRecommendationPortfolio(value.recommendationPortfolio))
197
+ return false;
198
+ if (!isBoundedRows(value.recommendations, REPORT_EVIDENCE_LIMITS.currentRecommendations, isCompactRecommendation) ||
199
+ value.recommendations.totalCount !==
200
+ value.recommendationPortfolio.activeRecommendationCount ||
201
+ !isProjectionRows(value.serviceRetirements) ||
202
+ !isInventory(value.inventory) ||
203
+ !isGovernance(value.governance) ||
204
+ !isCommitments(value.commitmentsPlanning)) {
205
+ return false;
206
+ }
207
+ const patch = value.patchManagement;
208
+ const protection = value.dataProtection;
209
+ const health = value.resourceHealth;
210
+ const uptime = value.serverUptime;
211
+ const publicIps = value.publicIpAddresses;
212
+ const activity = value.activity;
213
+ return (isRecord(patch) &&
214
+ isProjectionRows(patch.machines) &&
215
+ isRecord(protection) &&
216
+ isProjectionRows(protection.items) &&
217
+ isProjectionRows(protection.issues) &&
218
+ isRecord(health) &&
219
+ isRecord(health.events) &&
220
+ isProjectionRows(health.events.events) &&
221
+ isRecord(health.availabilityStatuses) &&
222
+ isProjectionRows(health.availabilityStatuses.statuses) &&
223
+ isRecord(uptime) &&
224
+ ['workspaces', 'gaps', 'servers'].every(key => isProjectionRows(uptime[key])) &&
225
+ isRecord(publicIps) &&
226
+ isProjectionRows(publicIps.items) &&
227
+ isRecord(activity) &&
228
+ ['changes', 'security', 'health', 'suppressed'].every(key => isProjectionRows(activity[key])));
229
+ };
230
+ export const isSubscriptionReportEvidencePack = (value) => {
231
+ if (!isRecord(value) || !isDateTime(value.generatedAt)) {
232
+ return false;
233
+ }
234
+ if (!isRecord(value.generation) ||
235
+ !isRecord(value.scope) ||
236
+ !isString(value.scope.subscriptionId) ||
237
+ !isRecord(value.coverage) ||
238
+ !isRecord(value.coverage.sourceFiles) ||
239
+ !isStringArray(value.coverage.gaps) ||
240
+ !Object.values(value.coverage.sourceFiles).every(isSourceFileStatus) ||
241
+ !isResourceSummary(value.estate) ||
242
+ !isCostSummary(value.cost) ||
243
+ !isRecommendationSummary(value.recommendations) ||
244
+ !isRecord(value.security) ||
245
+ !isOptionalFiniteNumber(value.security.secureScore) ||
246
+ (value.security.governance !== undefined &&
247
+ (!isRecord(value.security.governance) || !isOptionalFiniteNumber(value.security.governance.findingCount))) ||
248
+ !isRecord(value.reliability) ||
249
+ !isRetirementSummary(value.reliability.serviceRetirements) ||
250
+ !isCount(value.reliability.recommendationCount) ||
251
+ !isRecord(value.commitments) ||
252
+ !isCommitmentExpirySummary(value.commitments.expiries) ||
253
+ !isRecord(value.performance) ||
254
+ !isCount(value.performance.recommendationCount) ||
255
+ !isStringArray(value.performance.topRecommendationIds) ||
256
+ !isRecord(value.operationalExcellence) ||
257
+ !isCount(value.operationalExcellence.recommendationCount) ||
258
+ !isTagCoverage(value.operationalExcellence.tagCoverage) ||
259
+ !isReportingProjection(value.reporting) ||
260
+ !Array.isArray(value.evidence) ||
261
+ !value.evidence.every(isEvidenceReference)) {
262
+ return false;
263
+ }
264
+ if (!hasOptionalStrings(value.generation, ['sourceRunId', 'sourceGeneratedAt']) ||
265
+ !hasOptionalStrings(value.scope, ['companyId', 'tenantId', 'displayName', 'currency', 'currencySymbol'])) {
266
+ return false;
267
+ }
268
+ return (value.reliability.relationshipGraph === undefined ||
269
+ (isRecord(value.reliability.relationshipGraph) &&
270
+ hasOptionalNumbers(value.reliability.relationshipGraph, ['totalNodes', 'totalEdges', 'unresolvedCount', 'buildMs'])));
271
+ };
272
+ const isRecommendationFingerprint = (value) => isRecord(value) &&
273
+ isString(value.id) &&
274
+ isString(value.title) &&
275
+ hasOptionalStrings(value, ['category', 'impact', 'severity', 'currency']) &&
276
+ isOptionalBoolean(value.resolved) &&
277
+ isCount(value.affectedResourceCount) &&
278
+ isOptionalFiniteNumber(value.potentialMonthlySavings) &&
279
+ isOptionalFiniteNumber(value.maximumMonthlySavings) &&
280
+ isOptionalFiniteNumber(value.costImpact);
281
+ const isHistoryMetrics = (value) => isRecord(value) &&
282
+ hasOptionalStrings(value, ['subscriptionName', 'currency', 'currencySymbol']) &&
283
+ hasOptionalNumbers(value, ['secureScore', 'advisorScore', 'spend30Days', 'spend30DaysAmortized']) &&
284
+ isCount(value.resourceCount) &&
285
+ isCount(value.recommendationCount) &&
286
+ isCount(value.impactedResourceCount) &&
287
+ isCount(value.securityRecommendationCount) &&
288
+ isCount(value.securityImpactedResourceCount) &&
289
+ value.securityRecommendationCount <= value.recommendationCount &&
290
+ value.securityImpactedResourceCount <= value.impactedResourceCount &&
291
+ isOptionalFiniteNumber(value.maximumMonthlySavings);
292
+ export const isSubscriptionReportHistory = (value) => {
293
+ if (!isRecord(value) ||
294
+ !isString(value.subscriptionId) ||
295
+ !isDateTime(value.generatedAt) ||
296
+ !isRecord(value.retention) ||
297
+ value.retention.maxPeriods !== REPORT_EVIDENCE_LIMITS.historyPeriods ||
298
+ !Array.isArray(value.periods) ||
299
+ value.periods.length > REPORT_EVIDENCE_LIMITS.historyPeriods) {
300
+ return false;
301
+ }
302
+ const periods = new Set();
303
+ for (const period of value.periods) {
304
+ if (!isRecord(period) ||
305
+ !isString(period.period) ||
306
+ !/^\d{4}-(0[1-9]|1[0-2])$/u.test(period.period) ||
307
+ periods.has(period.period) ||
308
+ !isString(period.sourceRunId) ||
309
+ !isDateTime(period.sourceGeneratedAt) ||
310
+ !isHistoryMetrics(period.metrics) ||
311
+ !isBoundedRows(period.recommendations, REPORT_EVIDENCE_LIMITS.historyRecommendations, isRecommendationFingerprint)) {
312
+ return false;
313
+ }
314
+ if (period.recommendations.omittedCount === 0 &&
315
+ period.metrics.recommendationCount !== period.recommendations.rows.filter(row => row.resolved !== true).length) {
316
+ return false;
317
+ }
318
+ periods.add(period.period);
319
+ }
320
+ return true;
321
+ };
322
+ const isTenantMfaSummary = (value) => {
323
+ if (!isRecord(value) || typeof value.countsAreLowerBounds !== 'boolean' || !isRecord(value.enforcement))
324
+ return false;
325
+ const enforcement = value.enforcement;
326
+ const enforcementKeys = ['enforced', 'conditionallyEnforced', 'notEnforced', 'unknown'];
327
+ if (!isCount(value.enumeratedUsers) ||
328
+ !isCount(value.activeUsers) ||
329
+ !isCount(value.disabledUsers) ||
330
+ !isCount(value.assessedActiveUsers) ||
331
+ !isCount(value.enforcementKnownUsers) ||
332
+ !isCount(value.enforcementUnknownUsers) ||
333
+ !isOptionalString(value.assessmentState) ||
334
+ !['mfaCapableUsers', 'notMfaCapableUsers', 'unknownRegistrationUsers'].every(key => value[key] === undefined || isCount(value[key])) ||
335
+ Object.keys(enforcement).some(key => !enforcementKeys.includes(key)) ||
336
+ !enforcementKeys.every(key => isCount(enforcement[key]))) {
337
+ return false;
338
+ }
339
+ return (value.enumeratedUsers === value.assessedActiveUsers + value.disabledUsers &&
340
+ value.activeUsers === value.enforcementKnownUsers + value.enforcementUnknownUsers &&
341
+ value.activeUsers === countTotal(enforcement) &&
342
+ value.enforcementUnknownUsers === enforcement.unknown &&
343
+ (value.countsAreLowerBounds || value.assessedActiveUsers === value.activeUsers));
344
+ };
345
+ const isTenantCoverage = (value) => isRecord(value) &&
346
+ Object.values(value).every(section => isRecord(section) &&
347
+ hasOptionalStrings(section, ['state', 'source', 'reason', 'message', 'lastAttemptedAt', 'lastSuccessfulAt']) &&
348
+ (section.requiredPermissions === undefined || isStringArray(section.requiredPermissions)) &&
349
+ (!Array.isArray(section.requiredPermissions) || section.requiredPermissions.length <= 10) &&
350
+ isOptionalFiniteNumber(section.maximumSourceLagHours));
351
+ const isTenantPrincipal = (value) => isRecord(value) &&
352
+ isString(value.principalId) &&
353
+ isString(value.principalType) &&
354
+ isString(value.assignmentSource) &&
355
+ isStringArray(value.assignmentModes) &&
356
+ value.assignmentModes.length <= 4 &&
357
+ typeof value.isPimBacked === 'boolean' &&
358
+ isString(value.lastActivatedEvidence) &&
359
+ hasOptionalStrings(value, ['displayName', 'userPrincipalName', 'mfaStatus', 'lastActivatedAt']) &&
360
+ isOptionalBoolean(value.accountEnabled);
361
+ export const isTenantReportEvidencePack = (value) => {
362
+ if (!isRecord(value) ||
363
+ !isDateTime(value.generatedAt) ||
364
+ !isRecord(value.scope) ||
365
+ !isString(value.scope.tenantId) ||
366
+ !isRecord(value.mfa) ||
367
+ (value.mfa.summary !== undefined && !isTenantMfaSummary(value.mfa.summary)) ||
368
+ (value.mfa.tenantPolicy !== undefined && !isRecord(value.mfa.tenantPolicy)) ||
369
+ (value.mfa.coverage !== undefined && !isTenantCoverage(value.mfa.coverage)) ||
370
+ !isRecord(value.globalAdmins) ||
371
+ !isRecord(value.globalAdmins.summary) ||
372
+ !isTenantCoverage(value.globalAdmins.coverage) ||
373
+ !isBoundedRows(value.globalAdmins.warnings, REPORT_EVIDENCE_LIMITS.tenantGlobalAdministrators, isRecord) ||
374
+ !isBoundedRows(value.globalAdmins.principals, REPORT_EVIDENCE_LIMITS.tenantGlobalAdministrators, isTenantPrincipal)) {
375
+ return false;
376
+ }
377
+ return true;
378
+ };