@spottoai/types-package 1.0.2-beta.420 → 1.0.2-beta.422
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.
- package/README.md +3 -0
- package/dist/accounts/azureSpSetup.d.ts +5 -0
- package/dist/accounts/azureSpSetup.d.ts.map +1 -1
- package/dist/accounts/azureSpSetup.js.map +1 -1
- package/dist/accounts/writePermissions.d.ts +5 -1
- package/dist/accounts/writePermissions.d.ts.map +1 -1
- package/dist/accounts/writePermissions.js +9 -0
- package/dist/accounts/writePermissions.js.map +1 -1
- package/dist/azure/reportEvidence.d.ts +90 -2
- package/dist/azure/reportEvidence.d.ts.map +1 -1
- package/dist/azure/reportEvidence.js +4 -0
- package/dist/azure/reportEvidence.js.map +1 -1
- package/dist/azure/reportEvidenceValidation.d.ts.map +1 -1
- package/dist/azure/reportEvidenceValidation.js +102 -5
- package/dist/azure/reportEvidenceValidation.js.map +1 -1
- package/dist/esm/accounts/writePermissions.js +9 -0
- package/dist/esm/azure/reportEvidence.js +4 -0
- package/dist/esm/azure/reportEvidenceValidation.js +102 -5
- package/dist/esm/scheduler/index.js +2 -3
- package/dist/esm/scheduler/resourceStrategy.js +2 -0
- package/dist/esm/scheduler/resourceStrategyCapabilityValidation.js +241 -0
- package/dist/esm/scheduler/resourceStrategyContracts.js +14 -0
- package/dist/esm/scheduler/resourceStrategyFinancialValidation.js +145 -0
- package/dist/esm/scheduler/resourceStrategyPermissionValidation.js +190 -0
- package/dist/esm/scheduler/resourceStrategyScheduleValidation.js +332 -0
- package/dist/esm/scheduler/resourceStrategyValidation.js +4 -0
- package/dist/esm/scheduler/resourceStrategyValidationShared.js +261 -0
- package/dist/esm/scheduler/weeklyAvailabilityFixtures.js +140 -0
- package/dist/scheduler/index.d.ts +2 -3
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +2 -3
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/resourceStrategy.d.ts +3 -0
- package/dist/scheduler/resourceStrategy.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategy.js +19 -0
- package/dist/scheduler/resourceStrategy.js.map +1 -0
- package/dist/scheduler/resourceStrategyCapabilityValidation.d.ts +4 -0
- package/dist/scheduler/resourceStrategyCapabilityValidation.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyCapabilityValidation.js +246 -0
- package/dist/scheduler/resourceStrategyCapabilityValidation.js.map +1 -0
- package/dist/scheduler/resourceStrategyContracts.d.ts +412 -0
- package/dist/scheduler/resourceStrategyContracts.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyContracts.js +18 -0
- package/dist/scheduler/resourceStrategyContracts.js.map +1 -0
- package/dist/scheduler/resourceStrategyFinancialValidation.d.ts +5 -0
- package/dist/scheduler/resourceStrategyFinancialValidation.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyFinancialValidation.js +151 -0
- package/dist/scheduler/resourceStrategyFinancialValidation.js.map +1 -0
- package/dist/scheduler/resourceStrategyPermissionValidation.d.ts +4 -0
- package/dist/scheduler/resourceStrategyPermissionValidation.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyPermissionValidation.js +195 -0
- package/dist/scheduler/resourceStrategyPermissionValidation.js.map +1 -0
- package/dist/scheduler/resourceStrategyScheduleValidation.d.ts +10 -0
- package/dist/scheduler/resourceStrategyScheduleValidation.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyScheduleValidation.js +343 -0
- package/dist/scheduler/resourceStrategyScheduleValidation.js.map +1 -0
- package/dist/scheduler/resourceStrategyValidation.d.ts +5 -0
- package/dist/scheduler/resourceStrategyValidation.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyValidation.js +21 -0
- package/dist/scheduler/resourceStrategyValidation.js.map +1 -0
- package/dist/scheduler/resourceStrategyValidationShared.d.ts +19 -0
- package/dist/scheduler/resourceStrategyValidationShared.d.ts.map +1 -0
- package/dist/scheduler/resourceStrategyValidationShared.js +281 -0
- package/dist/scheduler/resourceStrategyValidationShared.js.map +1 -0
- package/dist/scheduler/scheduler.d.ts +6 -159
- package/dist/scheduler/scheduler.d.ts.map +1 -1
- package/dist/scheduler/weeklyAvailabilityFixtures.d.ts +26 -0
- package/dist/scheduler/weeklyAvailabilityFixtures.d.ts.map +1 -0
- package/dist/scheduler/weeklyAvailabilityFixtures.js +144 -0
- package/dist/scheduler/weeklyAvailabilityFixtures.js.map +1 -0
- package/package.json +11 -3
- package/dist/esm/scheduler/bastionSchedule.js +0 -1
- package/dist/esm/scheduler/bastionScheduleProfile.js +0 -206
- package/dist/esm/scheduler/bastionScheduleValidation.js +0 -401
- package/dist/scheduler/bastionSchedule.d.ts +0 -113
- package/dist/scheduler/bastionSchedule.d.ts.map +0 -1
- package/dist/scheduler/bastionSchedule.js +0 -3
- package/dist/scheduler/bastionSchedule.js.map +0 -1
- package/dist/scheduler/bastionScheduleProfile.d.ts +0 -24
- package/dist/scheduler/bastionScheduleProfile.d.ts.map +0 -1
- package/dist/scheduler/bastionScheduleProfile.js +0 -210
- package/dist/scheduler/bastionScheduleProfile.js.map +0 -1
- package/dist/scheduler/bastionScheduleValidation.d.ts +0 -10
- package/dist/scheduler/bastionScheduleValidation.d.ts.map +0 -1
- package/dist/scheduler/bastionScheduleValidation.js +0 -412
- package/dist/scheduler/bastionScheduleValidation.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reportEvidenceValidation.js","sourceRoot":"","sources":["../../src/azure/reportEvidenceValidation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reportEvidenceValidation.js","sourceRoot":"","sources":["../../src/azure/reportEvidenceValidation.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,8 @@ export var WritePermission;
|
|
|
10
10
|
WritePermission[WritePermission["StorageInventory"] = 2] = "StorageInventory";
|
|
11
11
|
/** Permission to create scoped Azure Policy exemptions */
|
|
12
12
|
WritePermission[WritePermission["PolicyExemptions"] = 4] = "PolicyExemptions";
|
|
13
|
+
/** Permission to run approved resource scheduling capabilities */
|
|
14
|
+
WritePermission[WritePermission["ResourceScheduling"] = 8] = "ResourceScheduling";
|
|
13
15
|
})(WritePermission || (WritePermission = {}));
|
|
14
16
|
/**
|
|
15
17
|
* Permission metadata array
|
|
@@ -40,4 +42,11 @@ export const WRITE_PERMISSIONS_METADATA = [
|
|
|
40
42
|
documentationUrl: 'https://docs.spotto.ai/docs/portal/write-permissions/policy-exemptions',
|
|
41
43
|
scriptGeneratorUrl: '/scripts/policy-exemptions-role',
|
|
42
44
|
},
|
|
45
|
+
{
|
|
46
|
+
id: WritePermission.ResourceScheduling,
|
|
47
|
+
displayName: 'Resource Scheduling',
|
|
48
|
+
description: 'Allows Spotto to run explicitly approved resource scheduling capabilities at their exact Azure scopes.',
|
|
49
|
+
requiredRoles: [],
|
|
50
|
+
permissionManifestKind: 'resource-scheduling',
|
|
51
|
+
},
|
|
43
52
|
];
|
|
@@ -17,5 +17,9 @@ export const REPORT_EVIDENCE_LIMITS = {
|
|
|
17
17
|
upcomingEvents: 20,
|
|
18
18
|
historyPeriods: 13,
|
|
19
19
|
historyRecommendations: 2000,
|
|
20
|
+
historyComparisonIdentities: 2000,
|
|
21
|
+
costChangePeriods: 13,
|
|
22
|
+
costChangeDrivers: 50,
|
|
23
|
+
costChangeReasons: 10,
|
|
20
24
|
tenantGlobalAdministrators: 50,
|
|
21
25
|
};
|
|
@@ -22,6 +22,54 @@ const isCostSavingsCategory = (value) => isRecord(value) &&
|
|
|
22
22
|
isCount(value.recommendationCount) &&
|
|
23
23
|
isCount(value.resourceCount) &&
|
|
24
24
|
['currentMonthlyCost', 'potentialMonthlyCost', 'minimumMonthlySavings', 'maximumMonthlySavings'].every(key => isFiniteNumber(value[key]));
|
|
25
|
+
const REPORT_COST_CHANGE_LEVELS = new Set(['service', 'resource-group', 'resource', 'meter']);
|
|
26
|
+
const REPORT_COST_CHANGE_TYPES = new Set(['increase', 'decrease', 'no_change', 'new_resource', 'removed_resource']);
|
|
27
|
+
const REPORT_COST_CHANGE_REASON_TYPES = new Set([
|
|
28
|
+
'new_resource',
|
|
29
|
+
'removed_resource',
|
|
30
|
+
'quantity_increase',
|
|
31
|
+
'quantity_decrease',
|
|
32
|
+
'rate_change',
|
|
33
|
+
'sku_change',
|
|
34
|
+
'new_meter',
|
|
35
|
+
'removed_meter',
|
|
36
|
+
]);
|
|
37
|
+
const isStringOrFiniteNumber = (value) => isString(value) || isFiniteNumber(value);
|
|
38
|
+
const isCostChangeReason = (value) => isRecord(value) &&
|
|
39
|
+
isString(value.type) &&
|
|
40
|
+
REPORT_COST_CHANGE_REASON_TYPES.has(value.type) &&
|
|
41
|
+
isFiniteNumber(value.impact) &&
|
|
42
|
+
isOptionalFiniteNumber(value.impactPercent) &&
|
|
43
|
+
isString(value.description) &&
|
|
44
|
+
(value.oldValue === undefined || isStringOrFiniteNumber(value.oldValue)) &&
|
|
45
|
+
(value.newValue === undefined || isStringOrFiniteNumber(value.newValue));
|
|
46
|
+
const isCostChangeDriver = (value) => isRecord(value) &&
|
|
47
|
+
isString(value.key) &&
|
|
48
|
+
isString(value.level) &&
|
|
49
|
+
REPORT_COST_CHANGE_LEVELS.has(value.level) &&
|
|
50
|
+
isString(value.label) &&
|
|
51
|
+
isOptionalString(value.resourceId) &&
|
|
52
|
+
isFiniteNumber(value.currentCost) &&
|
|
53
|
+
isFiniteNumber(value.previousCost) &&
|
|
54
|
+
isFiniteNumber(value.change) &&
|
|
55
|
+
isOptionalFiniteNumber(value.changePercent) &&
|
|
56
|
+
isString(value.changeType) &&
|
|
57
|
+
REPORT_COST_CHANGE_TYPES.has(value.changeType) &&
|
|
58
|
+
isOptionalString(value.summary) &&
|
|
59
|
+
isBoundedRows(value.reasons, REPORT_EVIDENCE_LIMITS.costChangeReasons, isCostChangeReason);
|
|
60
|
+
const isCostChangePeriod = (value) => isRecord(value) &&
|
|
61
|
+
isString(value.period) &&
|
|
62
|
+
/^\d{4}-(0[1-9]|1[0-2])$/u.test(value.period) &&
|
|
63
|
+
isString(value.previousPeriod) &&
|
|
64
|
+
/^\d{4}-(0[1-9]|1[0-2])$/u.test(value.previousPeriod) &&
|
|
65
|
+
value.previousPeriod < value.period &&
|
|
66
|
+
isString(value.currency) &&
|
|
67
|
+
/^[A-Z]{3}$/u.test(value.currency) &&
|
|
68
|
+
isFiniteNumber(value.currentCost) &&
|
|
69
|
+
isFiniteNumber(value.previousCost) &&
|
|
70
|
+
isFiniteNumber(value.change) &&
|
|
71
|
+
isOptionalFiniteNumber(value.changePercent) &&
|
|
72
|
+
isBoundedRows(value.drivers, REPORT_EVIDENCE_LIMITS.costChangeDrivers, isCostChangeDriver);
|
|
25
73
|
const hasRequiredCountKeys = (value, keys) => isCountRecord(value) && keys.every(key => Object.prototype.hasOwnProperty.call(value, key));
|
|
26
74
|
const isRecommendationPortfolio = (value) => {
|
|
27
75
|
if (!isRecord(value))
|
|
@@ -142,13 +190,45 @@ const isCommitments = (value) => {
|
|
|
142
190
|
return false;
|
|
143
191
|
}
|
|
144
192
|
if (value.inventorySummary.totalCount !== value.inventory.totalCount ||
|
|
145
|
-
countTotal(value.inventorySummary.statusCounts) !== value.inventorySummary.totalCount
|
|
193
|
+
countTotal(value.inventorySummary.statusCounts) !== value.inventorySummary.totalCount ||
|
|
194
|
+
(value.inventorySummary.benefitTypeCounts !== undefined &&
|
|
195
|
+
(!isCountRecord(value.inventorySummary.benefitTypeCounts) ||
|
|
196
|
+
countTotal(value.inventorySummary.benefitTypeCounts) !== value.inventorySummary.totalCount))) {
|
|
146
197
|
return false;
|
|
147
198
|
}
|
|
148
199
|
if (value.resourceCoverage !== undefined && !isProjectionRows(value.resourceCoverage))
|
|
149
200
|
return false;
|
|
150
201
|
return ['coverage', 'obsoleteCandidates', 'reallocationOpportunities', 'purchaseRecommendations', 'renewals'].every(key => isProjectionRows(value[key]));
|
|
151
202
|
};
|
|
203
|
+
const isDataProtectionCostSummary = (value) => isRecord(value) &&
|
|
204
|
+
hasOptionalStrings(value, ['currencyCode', 'currencySymbol']) &&
|
|
205
|
+
(value.billingWindow === undefined || isRecord(value.billingWindow)) &&
|
|
206
|
+
(value.totals === undefined ||
|
|
207
|
+
(isRecord(value.totals) &&
|
|
208
|
+
hasOptionalNumbers(value.totals, [
|
|
209
|
+
'actualCostLast30Days',
|
|
210
|
+
'actualAmortizedCostLast30Days',
|
|
211
|
+
'allocatedCostLast30Days',
|
|
212
|
+
'estimatedMonthlyCostForUnprotected',
|
|
213
|
+
])));
|
|
214
|
+
const isResourceHealthEvent = (value) => isRecord(value) &&
|
|
215
|
+
hasOptionalStrings(value, [
|
|
216
|
+
'id',
|
|
217
|
+
'trackingId',
|
|
218
|
+
'eventType',
|
|
219
|
+
'status',
|
|
220
|
+
'level',
|
|
221
|
+
'title',
|
|
222
|
+
'summary',
|
|
223
|
+
'impactStartTime',
|
|
224
|
+
'impactMitigationTime',
|
|
225
|
+
'lastUpdateTime',
|
|
226
|
+
]) &&
|
|
227
|
+
isOptionalFiniteNumber(value.priority) &&
|
|
228
|
+
(value.durationSeconds === undefined || (isFiniteNumber(value.durationSeconds) && value.durationSeconds >= 0)) &&
|
|
229
|
+
(value.impactedResourceCount === undefined || isCount(value.impactedResourceCount)) &&
|
|
230
|
+
(value.impactedServices === undefined || isStringArray(value.impactedServices)) &&
|
|
231
|
+
(value.impactedRegions === undefined || isStringArray(value.impactedRegions));
|
|
152
232
|
function isCommitmentInventoryRow(value) {
|
|
153
233
|
return (isRecord(value) &&
|
|
154
234
|
hasOptionalStrings(value, [
|
|
@@ -175,6 +255,11 @@ const isReportingProjection = (value) => {
|
|
|
175
255
|
return false;
|
|
176
256
|
if (value.spend !== undefined && !isReportSpendProjection(value.spend))
|
|
177
257
|
return false;
|
|
258
|
+
if (value.costChangePeriods !== undefined &&
|
|
259
|
+
(!isBoundedRows(value.costChangePeriods, REPORT_EVIDENCE_LIMITS.costChangePeriods, isCostChangePeriod) ||
|
|
260
|
+
new Set(value.costChangePeriods.rows.map(period => period.period)).size !== value.costChangePeriods.rows.length)) {
|
|
261
|
+
return false;
|
|
262
|
+
}
|
|
178
263
|
const subscription = isRecord(value.dashboard.subscription) ? value.dashboard.subscription : undefined;
|
|
179
264
|
const properties = subscription && isRecord(subscription.properties) ? subscription.properties : undefined;
|
|
180
265
|
if (properties?.secureScoreEvidence !== undefined && !isReportSecureScoreEvidence(properties.secureScoreEvidence))
|
|
@@ -205,13 +290,14 @@ const isReportingProjection = (value) => {
|
|
|
205
290
|
return (isRecord(patch) &&
|
|
206
291
|
isProjectionRows(patch.machines) &&
|
|
207
292
|
isRecord(protection) &&
|
|
293
|
+
(protection.costSummary === undefined || isDataProtectionCostSummary(protection.costSummary)) &&
|
|
208
294
|
isProjectionRows(protection.items) &&
|
|
209
295
|
isProjectionRows(protection.issues) &&
|
|
210
296
|
isRecord(health) &&
|
|
211
|
-
(health.eventCatalogue === undefined || isBoundedRows(health.eventCatalogue, REPORT_EVIDENCE_LIMITS.healthCatalogue,
|
|
297
|
+
(health.eventCatalogue === undefined || isBoundedRows(health.eventCatalogue, REPORT_EVIDENCE_LIMITS.healthCatalogue, isResourceHealthEvent)) &&
|
|
212
298
|
(health.availabilityCatalogue === undefined || isBoundedRows(health.availabilityCatalogue, REPORT_EVIDENCE_LIMITS.healthCatalogue, isRecord)) &&
|
|
213
299
|
isRecord(health.events) &&
|
|
214
|
-
|
|
300
|
+
isBoundedRows(health.events.events, REPORT_EVIDENCE_LIMITS.detailRows, isResourceHealthEvent) &&
|
|
215
301
|
(health.eventCatalogue === undefined || health.eventCatalogue.totalCount === health.events.events.totalCount) &&
|
|
216
302
|
isRecord(health.availabilityStatuses) &&
|
|
217
303
|
isProjectionRows(health.availabilityStatuses.statuses) &&
|
|
@@ -324,6 +410,12 @@ const isHistoryMetrics = (value) => isRecord(value) &&
|
|
|
324
410
|
value.securityRecommendationCount <= value.recommendationCount &&
|
|
325
411
|
value.securityImpactedResourceCount <= value.impactedResourceCount &&
|
|
326
412
|
isOptionalFiniteNumber(value.maximumMonthlySavings);
|
|
413
|
+
const isUniqueIdentityRows = (value, itemValidator = isString) => isBoundedRows(value, REPORT_EVIDENCE_LIMITS.historyComparisonIdentities, itemValidator) &&
|
|
414
|
+
new Set(value.rows).size === value.rows.length;
|
|
415
|
+
const isHistoryComparisonIdentities = (value) => isRecord(value) &&
|
|
416
|
+
isUniqueIdentityRows(value.costRecommendationIds) &&
|
|
417
|
+
isUniqueIdentityRows(value.undersizedResourceIds) &&
|
|
418
|
+
isUniqueIdentityRows(value.regulatoryAssessmentKeys, (item) => isString(item) && /^[a-f0-9]{64}$/u.test(item));
|
|
327
419
|
export const isSubscriptionReportHistory = (value) => {
|
|
328
420
|
if (!isRecord(value) ||
|
|
329
421
|
!isString(value.subscriptionId) ||
|
|
@@ -343,7 +435,8 @@ export const isSubscriptionReportHistory = (value) => {
|
|
|
343
435
|
!isString(period.sourceRunId) ||
|
|
344
436
|
!isDateTime(period.sourceGeneratedAt) ||
|
|
345
437
|
!isHistoryMetrics(period.metrics) ||
|
|
346
|
-
!isBoundedRows(period.recommendations, REPORT_EVIDENCE_LIMITS.historyRecommendations, isRecommendationFingerprint)
|
|
438
|
+
!isBoundedRows(period.recommendations, REPORT_EVIDENCE_LIMITS.historyRecommendations, isRecommendationFingerprint) ||
|
|
439
|
+
(period.comparisonIdentities !== undefined && !isHistoryComparisonIdentities(period.comparisonIdentities))) {
|
|
347
440
|
return false;
|
|
348
441
|
}
|
|
349
442
|
if (period.recommendations.omittedCount === 0 &&
|
|
@@ -392,7 +485,11 @@ const isTenantPrincipal = (value) => isRecord(value) &&
|
|
|
392
485
|
typeof value.isPimBacked === 'boolean' &&
|
|
393
486
|
isString(value.lastActivatedEvidence) &&
|
|
394
487
|
hasOptionalStrings(value, ['displayName', 'userPrincipalName', 'mfaStatus', 'lastActivatedAt']) &&
|
|
395
|
-
isOptionalBoolean(value.accountEnabled)
|
|
488
|
+
isOptionalBoolean(value.accountEnabled) &&
|
|
489
|
+
((value.lastSignInAt === undefined && value.lastSignInEvidence === undefined) ||
|
|
490
|
+
(value.lastSignInAt === undefined && value.lastSignInEvidence === 'unavailable') ||
|
|
491
|
+
(isDateTime(value.lastSignInAt) &&
|
|
492
|
+
(value.lastSignInEvidence === 'last-successful-sign-in' || value.lastSignInEvidence === 'last-interactive-sign-in')));
|
|
396
493
|
export const isTenantReportEvidencePack = (value) => {
|
|
397
494
|
if (!isRecord(value) ||
|
|
398
495
|
!isDateTime(value.generatedAt) ||
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
import { RESOURCE_STRATEGY_CONTRACT_LIMITS, } from './resourceStrategyContracts.js';
|
|
2
|
+
import { hasOnlyKeys, isBoundedParameters, isBoundedString, isBoundedStringArray, isCapabilityRef, isIsoTimestamp, isNonNegativeInteger, isOptionalBoundedString, isPositiveInteger, isRecord, isWithinJsonByteLimit, } from './resourceStrategyValidationShared.js';
|
|
3
|
+
export function isResourceSchedulingCapabilityProjection(value) {
|
|
4
|
+
if (!isWithinJsonByteLimit(value, RESOURCE_STRATEGY_CONTRACT_LIMITS.publicDtoBytes) || !isRecord(value))
|
|
5
|
+
return false;
|
|
6
|
+
const allowed = [
|
|
7
|
+
'capability',
|
|
8
|
+
'contentHash',
|
|
9
|
+
'publishedAtUtc',
|
|
10
|
+
'provider',
|
|
11
|
+
'resourceTypes',
|
|
12
|
+
'strategy',
|
|
13
|
+
'displayName',
|
|
14
|
+
'description',
|
|
15
|
+
'configurationSchemaKind',
|
|
16
|
+
'configurationSchema',
|
|
17
|
+
'recommendationMaturity',
|
|
18
|
+
'lifecycleStatus',
|
|
19
|
+
'executionPolicy',
|
|
20
|
+
'baseline',
|
|
21
|
+
'cost',
|
|
22
|
+
'cadence',
|
|
23
|
+
'disruption',
|
|
24
|
+
'restore',
|
|
25
|
+
'automation',
|
|
26
|
+
'dependencies',
|
|
27
|
+
'acknowledgement',
|
|
28
|
+
'evidence',
|
|
29
|
+
];
|
|
30
|
+
if (!hasOnlyKeys(value, allowed))
|
|
31
|
+
return false;
|
|
32
|
+
const executionPolicy = value.executionPolicy;
|
|
33
|
+
const baseline = value.baseline;
|
|
34
|
+
const cost = value.cost;
|
|
35
|
+
const cadence = value.cadence;
|
|
36
|
+
const disruption = value.disruption;
|
|
37
|
+
const restore = value.restore;
|
|
38
|
+
const automation = value.automation;
|
|
39
|
+
const dependencies = value.dependencies;
|
|
40
|
+
const evidence = value.evidence;
|
|
41
|
+
if (!isCapabilityRef(value.capability) ||
|
|
42
|
+
!isBoundedString(value.contentHash, 200) ||
|
|
43
|
+
!isIsoTimestamp(value.publishedAtUtc) ||
|
|
44
|
+
!isBoundedString(value.provider, 100) ||
|
|
45
|
+
!isBoundedStringArray(value.resourceTypes, RESOURCE_STRATEGY_CONTRACT_LIMITS.resourceTypes) ||
|
|
46
|
+
value.resourceTypes.length === 0 ||
|
|
47
|
+
!['on-off', 'sku-change', 'dial', 'recreate'].includes(String(value.strategy)) ||
|
|
48
|
+
!isBoundedString(value.displayName) ||
|
|
49
|
+
!isBoundedString(value.description, 2000) ||
|
|
50
|
+
!isBoundedString(value.configurationSchemaKind, 200) ||
|
|
51
|
+
!isBoundedParameters(value.configurationSchema) ||
|
|
52
|
+
!['unsupported', 'candidate', 'supported'].includes(String(value.recommendationMaturity)) ||
|
|
53
|
+
!['published', 'deprecated', 'withdrawn'].includes(String(value.lifecycleStatus)) ||
|
|
54
|
+
!isRecord(executionPolicy) ||
|
|
55
|
+
!isRecord(baseline) ||
|
|
56
|
+
!isRecord(cost) ||
|
|
57
|
+
!isRecord(cadence) ||
|
|
58
|
+
!isRecord(disruption) ||
|
|
59
|
+
!isRecord(restore) ||
|
|
60
|
+
!isRecord(automation) ||
|
|
61
|
+
!isRecord(dependencies) ||
|
|
62
|
+
!isRecord(evidence) ||
|
|
63
|
+
!hasOnlyKeys(executionPolicy, ['authoring', 'reduce', 'restore', 'disableReason', 'supersededBy']) ||
|
|
64
|
+
!hasOnlyKeys(baseline, ['policy', 'mutationDomains', 'coupledValueLabels', 'driftPolicy']) ||
|
|
65
|
+
!hasOnlyKeys(cost, [
|
|
66
|
+
'billingClass',
|
|
67
|
+
'reducedMeters',
|
|
68
|
+
'retainedMeters',
|
|
69
|
+
'billingGranularityMinutes',
|
|
70
|
+
'minimumUsefulReducedMinutes',
|
|
71
|
+
'commitmentInteraction',
|
|
72
|
+
]) ||
|
|
73
|
+
!hasOnlyKeys(cadence, [
|
|
74
|
+
'minimumTransitionIntervalMinutes',
|
|
75
|
+
'maximumChangesPerRollingWindow',
|
|
76
|
+
'maximumReducedDurationMinutes',
|
|
77
|
+
'preferredBillingBoundary',
|
|
78
|
+
'reduceFlexMinutes',
|
|
79
|
+
]) ||
|
|
80
|
+
!hasOnlyKeys(disruption, ['reversibility', 'risk', 'affectedScopeLabel', 'expectedDowntimeMinutes', 'supportedBusyPolicies']) ||
|
|
81
|
+
!hasOnlyKeys(restore, ['restoreLeadMinutes', 'capacityReturnRisk', 'retryPolicyLabel', 'escalationClass']) ||
|
|
82
|
+
!hasOnlyKeys(automation, ['ownership', 'conflictingControllerLabels']) ||
|
|
83
|
+
!hasOnlyKeys(dependencies, ['hasDependencies', 'summary', 'mutableIdentityRisk']) ||
|
|
84
|
+
!hasOnlyKeys(evidence, ['sourceUrls', 'labResult', 'verifiedAtUtc', 'expiresAtUtc'])) {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
if (!['allowed', 'blocked'].includes(String(executionPolicy.authoring)) ||
|
|
88
|
+
!['allowed', 'blocked'].includes(String(executionPolicy.reduce)) ||
|
|
89
|
+
!['allowed', 'blocked'].includes(String(executionPolicy.restore)) ||
|
|
90
|
+
(executionPolicy.disableReason !== undefined && !isBoundedString(executionPolicy.disableReason, 500)) ||
|
|
91
|
+
(executionPolicy.supersededBy !== undefined && !isCapabilityRef(executionPolicy.supersededBy))) {
|
|
92
|
+
return false;
|
|
93
|
+
}
|
|
94
|
+
if (!['none', 'capture-selected-state', 'capture-resource-snapshot'].includes(String(baseline.policy)) ||
|
|
95
|
+
!isBoundedStringArray(baseline.mutationDomains) ||
|
|
96
|
+
(baseline.coupledValueLabels !== undefined && !isBoundedStringArray(baseline.coupledValueLabels)) ||
|
|
97
|
+
!['block', 'adopt-before-reduce', 'restore-captured', 'capability-defined'].includes(String(baseline.driftPolicy))) {
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
100
|
+
if (!['A-meter-stops', 'B-meter-reduces', 'C-no-material-saving'].includes(String(cost.billingClass)) ||
|
|
101
|
+
!isBoundedStringArray(cost.reducedMeters) ||
|
|
102
|
+
!isBoundedStringArray(cost.retainedMeters) ||
|
|
103
|
+
(cost.billingGranularityMinutes !== undefined && !isPositiveInteger(cost.billingGranularityMinutes)) ||
|
|
104
|
+
(cost.minimumUsefulReducedMinutes !== undefined && !isPositiveInteger(cost.minimumUsefulReducedMinutes)) ||
|
|
105
|
+
!['none', 'may-reduce-invoice-saving', 'unknown'].includes(String(cost.commitmentInteraction))) {
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
if (!isPositiveInteger(cadence.minimumTransitionIntervalMinutes) ||
|
|
109
|
+
(cadence.maximumReducedDurationMinutes !== undefined && !isPositiveInteger(cadence.maximumReducedDurationMinutes)) ||
|
|
110
|
+
(cadence.reduceFlexMinutes !== undefined && !isNonNegativeInteger(cadence.reduceFlexMinutes)) ||
|
|
111
|
+
(cadence.preferredBillingBoundary !== undefined && !['none', 'start-of-hour'].includes(String(cadence.preferredBillingBoundary)))) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
if (cadence.maximumChangesPerRollingWindow !== undefined) {
|
|
115
|
+
const window = cadence.maximumChangesPerRollingWindow;
|
|
116
|
+
if (!isRecord(window) ||
|
|
117
|
+
!hasOnlyKeys(window, ['changes', 'windowMinutes']) ||
|
|
118
|
+
!isPositiveInteger(window.changes) ||
|
|
119
|
+
!isPositiveInteger(window.windowMinutes)) {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
if (!['reversible', 'conditional', 'destructive'].includes(String(disruption.reversibility)) ||
|
|
124
|
+
!['low', 'medium', 'high'].includes(String(disruption.risk)) ||
|
|
125
|
+
!isBoundedString(disruption.affectedScopeLabel) ||
|
|
126
|
+
!Array.isArray(disruption.supportedBusyPolicies) ||
|
|
127
|
+
disruption.supportedBusyPolicies.length > 3 ||
|
|
128
|
+
new Set(disruption.supportedBusyPolicies).size !== disruption.supportedBusyPolicies.length ||
|
|
129
|
+
!disruption.supportedBusyPolicies.every(mode => ['skip', 'wait-until-deadline', 'force'].includes(String(mode)))) {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
132
|
+
if (disruption.expectedDowntimeMinutes !== undefined) {
|
|
133
|
+
const downtime = disruption.expectedDowntimeMinutes;
|
|
134
|
+
if (!isRecord(downtime) ||
|
|
135
|
+
!hasOnlyKeys(downtime, ['minimum', 'maximum']) ||
|
|
136
|
+
!isNonNegativeInteger(downtime.minimum) ||
|
|
137
|
+
!isNonNegativeInteger(downtime.maximum) ||
|
|
138
|
+
Number(downtime.minimum) > Number(downtime.maximum)) {
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (!isNonNegativeInteger(restore.restoreLeadMinutes) ||
|
|
143
|
+
!['none-known', 'possible', 'high', 'unknown'].includes(String(restore.capacityReturnRisk)) ||
|
|
144
|
+
!isBoundedString(restore.retryPolicyLabel) ||
|
|
145
|
+
!isBoundedString(restore.escalationClass) ||
|
|
146
|
+
!['spotto', 'native', 'coexistence-proven', 'unsupported-conflict'].includes(String(automation.ownership)) ||
|
|
147
|
+
!isBoundedStringArray(automation.conflictingControllerLabels) ||
|
|
148
|
+
typeof dependencies.hasDependencies !== 'boolean' ||
|
|
149
|
+
(dependencies.summary !== undefined && !isBoundedString(dependencies.summary, 2000)) ||
|
|
150
|
+
(dependencies.mutableIdentityRisk !== undefined && typeof dependencies.mutableIdentityRisk !== 'boolean')) {
|
|
151
|
+
return false;
|
|
152
|
+
}
|
|
153
|
+
if (value.acknowledgement !== undefined) {
|
|
154
|
+
const acknowledgement = value.acknowledgement;
|
|
155
|
+
if (!isRecord(acknowledgement) ||
|
|
156
|
+
!hasOnlyKeys(acknowledgement, ['version', 'severity', 'message']) ||
|
|
157
|
+
!isBoundedString(acknowledgement.version, 200) ||
|
|
158
|
+
!['info', 'warning', 'destructive'].includes(String(acknowledgement.severity)) ||
|
|
159
|
+
!isBoundedString(acknowledgement.message, 2000)) {
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
const requiresDisableReason = value.lifecycleStatus === 'withdrawn' ||
|
|
164
|
+
executionPolicy.authoring === 'blocked' ||
|
|
165
|
+
executionPolicy.reduce === 'blocked' ||
|
|
166
|
+
executionPolicy.restore === 'blocked';
|
|
167
|
+
if (requiresDisableReason && !isBoundedString(executionPolicy.disableReason, 500))
|
|
168
|
+
return false;
|
|
169
|
+
if (cost.billingClass === 'C-no-material-saving' && (executionPolicy.authoring !== 'blocked' || executionPolicy.reduce !== 'blocked'))
|
|
170
|
+
return false;
|
|
171
|
+
if (value.strategy === 'recreate') {
|
|
172
|
+
if (!isRecord(value.acknowledgement) || value.acknowledgement.severity !== 'destructive')
|
|
173
|
+
return false;
|
|
174
|
+
}
|
|
175
|
+
if (!isBoundedStringArray(evidence.sourceUrls, RESOURCE_STRATEGY_CONTRACT_LIMITS.evidenceReferences) ||
|
|
176
|
+
!['not-run', 'failed', 'passed'].includes(String(evidence.labResult)) ||
|
|
177
|
+
!(evidence.verifiedAtUtc === null || isIsoTimestamp(evidence.verifiedAtUtc)) ||
|
|
178
|
+
!(evidence.expiresAtUtc === null || isIsoTimestamp(evidence.expiresAtUtc))) {
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
if (evidence.labResult === 'passed' && evidence.verifiedAtUtc === null)
|
|
182
|
+
return false;
|
|
183
|
+
const allowsAuthoringOrReduce = executionPolicy.authoring === 'allowed' || executionPolicy.reduce === 'allowed';
|
|
184
|
+
if (allowsAuthoringOrReduce && (evidence.labResult !== 'passed' || evidence.verifiedAtUtc === null || evidence.sourceUrls.length === 0)) {
|
|
185
|
+
return false;
|
|
186
|
+
}
|
|
187
|
+
return !(typeof evidence.verifiedAtUtc === 'string' &&
|
|
188
|
+
typeof evidence.expiresAtUtc === 'string' &&
|
|
189
|
+
Date.parse(evidence.expiresAtUtc) < Date.parse(evidence.verifiedAtUtc));
|
|
190
|
+
}
|
|
191
|
+
const readinessStates = new Set([
|
|
192
|
+
'ready',
|
|
193
|
+
'blocked',
|
|
194
|
+
'pending-permission-propagation',
|
|
195
|
+
'missing-permission',
|
|
196
|
+
'scope-mismatch',
|
|
197
|
+
'manifest-outdated',
|
|
198
|
+
'credential-unavailable',
|
|
199
|
+
'permission-check-unavailable',
|
|
200
|
+
'blocked-by-lock',
|
|
201
|
+
'blocked-by-deny-assignment',
|
|
202
|
+
'blocked-by-policy',
|
|
203
|
+
'target-missing',
|
|
204
|
+
'dependency-unready',
|
|
205
|
+
'conflicting-automation',
|
|
206
|
+
'unsupported-resource-state',
|
|
207
|
+
]);
|
|
208
|
+
export function isResourceSchedulingReadinessProjection(value) {
|
|
209
|
+
return (isWithinJsonByteLimit(value, RESOURCE_STRATEGY_CONTRACT_LIMITS.publicDtoBytes) &&
|
|
210
|
+
isRecord(value) &&
|
|
211
|
+
hasOnlyKeys(value, [
|
|
212
|
+
'companyId',
|
|
213
|
+
'cloudAccountId',
|
|
214
|
+
'providerScopeId',
|
|
215
|
+
'resourceId',
|
|
216
|
+
'capability',
|
|
217
|
+
'state',
|
|
218
|
+
'checkedAtUtc',
|
|
219
|
+
'expiresAtUtc',
|
|
220
|
+
'reasonCodes',
|
|
221
|
+
'missingActions',
|
|
222
|
+
'requiredScopes',
|
|
223
|
+
'offendingScopes',
|
|
224
|
+
'repairLink',
|
|
225
|
+
]) &&
|
|
226
|
+
isBoundedString(value.companyId, 200) &&
|
|
227
|
+
isBoundedString(value.cloudAccountId, 200) &&
|
|
228
|
+
isBoundedString(value.providerScopeId, 300) &&
|
|
229
|
+
isBoundedString(value.resourceId, 2000) &&
|
|
230
|
+
isCapabilityRef(value.capability) &&
|
|
231
|
+
typeof value.state === 'string' &&
|
|
232
|
+
readinessStates.has(value.state) &&
|
|
233
|
+
isIsoTimestamp(value.checkedAtUtc) &&
|
|
234
|
+
isIsoTimestamp(value.expiresAtUtc) &&
|
|
235
|
+
Date.parse(value.expiresAtUtc) >= Date.parse(value.checkedAtUtc) &&
|
|
236
|
+
isBoundedStringArray(value.reasonCodes) &&
|
|
237
|
+
(value.missingActions === undefined || isBoundedStringArray(value.missingActions)) &&
|
|
238
|
+
(value.requiredScopes === undefined || isBoundedStringArray(value.requiredScopes)) &&
|
|
239
|
+
(value.offendingScopes === undefined || isBoundedStringArray(value.offendingScopes)) &&
|
|
240
|
+
isOptionalBoundedString(value.repairLink, 2000));
|
|
241
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export const RESOURCE_STRATEGY_CONTRACT_LIMITS = {
|
|
2
|
+
textLength: 500,
|
|
3
|
+
rules: 64,
|
|
4
|
+
ruleDays: 7,
|
|
5
|
+
resourceTypes: 64,
|
|
6
|
+
metadataItems: 64,
|
|
7
|
+
evidenceReferences: 32,
|
|
8
|
+
draftPeriodKeys: 64,
|
|
9
|
+
grantGroups: 128,
|
|
10
|
+
permissionOperations: 8192,
|
|
11
|
+
listResults: 100,
|
|
12
|
+
parameterBytes: 32768,
|
|
13
|
+
publicDtoBytes: 262144,
|
|
14
|
+
};
|