@spottoai/types-package 1.0.2-beta.395 → 1.0.2-beta.397

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.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isEnvironmentSafeLabelV1 = exports.isEnvironmentArtifactKindV1 = exports.isEnvironmentCompiledGenerationPointerV1 = exports.isEnvironmentDocumentDescriptorSetV1 = exports.isEnvironmentDocumentDescriptorV1 = exports.isEnvironmentSubscriptionProjectionV1 = exports.isEnvironmentCardinalityV1 = exports.isEnvironmentCoverageStateV1 = exports.isEnvironmentMoneyValueV1 = exports.isEnvironmentRunIdV1 = exports.isEnvironmentSourceBindingV1 = exports.isEnvironmentSourceGenerationV1 = exports.isEnvironmentScopeV1 = exports.isEnvironmentPillarV1 = exports.isEnvironmentPortalRouteV1 = void 0;
3
+ exports.isEnvironmentSafeLabelV1 = exports.isEnvironmentArtifactKindV1 = exports.isEnvironmentCompiledGenerationPointerV1 = exports.isEnvironmentDocumentDescriptorSetV1 = exports.isEnvironmentDocumentDescriptorV1 = exports.isEnvironmentSubscriptionProjectionV1 = exports.isEnvironmentCardinalityV1 = exports.isEnvironmentCoverageStateV1 = exports.isEnvironmentMoneyValueV1 = exports.isEnvironmentSavingsBasisV1 = exports.isEnvironmentRunIdV1 = exports.isEnvironmentSourceBindingV1 = exports.isEnvironmentSourceGenerationV1 = exports.isEnvironmentScopeV1 = exports.isEnvironmentPillarV1 = exports.isEnvironmentPortalRouteV1 = void 0;
4
4
  const contracts_js_1 = require("./contracts.js");
5
5
  const internal_js_1 = require("./internal.js");
6
6
  const references_js_1 = require("./references.js");
@@ -20,6 +20,10 @@ const MONEY_PROVENANCE = new Set([
20
20
  'recommendation',
21
21
  ]);
22
22
  const SAVINGS_ADDITIVITY = new Set(['additive', 'scenario-non-additive']);
23
+ const SPEND_SOURCES = new Set(['billing', 'estimated', 'blended']);
24
+ const SPEND_SOURCE_CONFIDENCES = new Set(['high', 'medium', 'low', 'unknown']);
25
+ const SAVINGS_PROJECTIONS = new Set(['projected-monthly', 'observed-period', 'unknown']);
26
+ const DATE_WINDOW_PATTERN = /^\d{4}-\d{2}-\d{2}\/\d{4}-\d{2}-\d{2}$/u;
23
27
  const CHANGE_DIRECTIONS = new Set(['increase', 'decrease', 'unchanged', 'unknown']);
24
28
  const scopesEqual = (left, right) => left.kind === right.kind && left.tenantId === right.tenantId && left.companyId === right.companyId && left.subscriptionId === right.subscriptionId;
25
29
  /** Validates a bounded, local Portal route suitable for client-visible evidence. */
@@ -49,6 +53,16 @@ const isAzureResourceTypeArray = (value) => Array.isArray(value) &&
49
53
  AZURE_RESOURCE_TYPE_PATTERN.test(item)) &&
50
54
  new Set(value).size === value.length &&
51
55
  value.every((item, index) => index === 0 || value[index - 1] < item);
56
+ const resourceTypesMatchReferences = (resourceTypes, resourceReferences) => {
57
+ const derivedTypes = Array.from(new Set(resourceReferences.flatMap(reference => {
58
+ const parsed = (0, references_js_1.parseEnvironmentLogicalResourceReferenceV1)(reference);
59
+ if (parsed === null)
60
+ return [];
61
+ const resourceType = (0, references_js_1.deriveEnvironmentAzureResourceTypeV1)(parsed.resourceId);
62
+ return resourceType === null ? [] : [resourceType];
63
+ }))).sort();
64
+ return derivedTypes.length === resourceTypes.length && derivedTypes.every((resourceType, index) => resourceTypes[index] === resourceType);
65
+ };
52
66
  const isPercentage = (value) => typeof value === 'string' && internal_js_1.DECIMAL_PATTERN.test(value) && Number(value) <= 100;
53
67
  /** Validates one admitted environment pillar. */
54
68
  const isEnvironmentPillarV1 = (value) => typeof value === 'string' && PILLARS.has(value);
@@ -114,9 +128,32 @@ const isEnvironmentRunIdV1 = (value) => typeof value === 'string' &&
114
128
  value !== '..' &&
115
129
  internal_js_1.ENVIRONMENT_RUN_ID_PATTERN.test(value);
116
130
  exports.isEnvironmentRunIdV1 = isEnvironmentRunIdV1;
131
+ const isMoneyComposition = (value, currencyCode) => (0, internal_js_1.isRecord)(value) &&
132
+ (0, internal_js_1.hasExactKeys)(value, ['billingBacked', 'estimated', 'minorUnitScale', 'currencyCode']) &&
133
+ (0, internal_js_1.isNonNegativeInteger)(value.billingBacked) &&
134
+ (0, internal_js_1.isNonNegativeInteger)(value.estimated) &&
135
+ (0, internal_js_1.isNonNegativeInteger)(value.minorUnitScale) &&
136
+ value.minorUnitScale <= 6 &&
137
+ typeof value.currencyCode === 'string' &&
138
+ (value.currencyCode === 'unknown' || internal_js_1.CURRENCY_PATTERN.test(value.currencyCode)) &&
139
+ value.currencyCode === currencyCode;
140
+ /** Validates the producer projection rule and window behind a savings amount. */
141
+ const isEnvironmentSavingsBasisV1 = (value) => (0, internal_js_1.isRecord)(value) &&
142
+ (0, internal_js_1.hasExactKeys)(value, ['projection'], ['observedPeriod', 'stableWindow', 'containsLegacySavings']) &&
143
+ typeof value.projection === 'string' &&
144
+ SAVINGS_PROJECTIONS.has(value.projection) &&
145
+ (value.observedPeriod === undefined || (0, internal_js_1.isSafeLabel)(value.observedPeriod)) &&
146
+ (value.stableWindow === undefined || (typeof value.stableWindow === 'string' && DATE_WINDOW_PATTERN.test(value.stableWindow))) &&
147
+ (value.containsLegacySavings === undefined || typeof value.containsLegacySavings === 'boolean');
148
+ exports.isEnvironmentSavingsBasisV1 = isEnvironmentSavingsBasisV1;
117
149
  /** Validates canonical decimal money with explicit currency, basis, period, and provenance. */
118
150
  const isEnvironmentMoneyValueV1 = (value) => (0, internal_js_1.isRecord)(value) &&
119
- (0, internal_js_1.hasExactKeys)(value, ['amount', 'currencyCode', 'basis', 'period', 'provenance'], ['savingsAdditivity']) &&
151
+ (0, internal_js_1.hasExactKeys)(value, ['amount', 'currencyCode', 'basis', 'period', 'provenance'], ['savingsAdditivity', 'spendSource', 'spendSourceConfidence', 'composition', 'savingsBasis']) &&
152
+ (value.spendSource === undefined || (typeof value.spendSource === 'string' && SPEND_SOURCES.has(value.spendSource))) &&
153
+ (value.spendSourceConfidence === undefined ||
154
+ (typeof value.spendSourceConfidence === 'string' && SPEND_SOURCE_CONFIDENCES.has(value.spendSourceConfidence))) &&
155
+ (value.composition === undefined || isMoneyComposition(value.composition, value.currencyCode)) &&
156
+ (value.savingsBasis === undefined || (0, exports.isEnvironmentSavingsBasisV1)(value.savingsBasis)) &&
120
157
  typeof value.amount === 'string' &&
121
158
  internal_js_1.DECIMAL_PATTERN.test(value.amount) &&
122
159
  typeof value.currencyCode === 'string' &&
@@ -128,8 +165,11 @@ const isEnvironmentMoneyValueV1 = (value) => (0, internal_js_1.isRecord)(value)
128
165
  MONEY_PROVENANCE.has(value.provenance) &&
129
166
  (value.savingsAdditivity === undefined || (typeof value.savingsAdditivity === 'string' && SAVINGS_ADDITIVITY.has(value.savingsAdditivity)));
130
167
  exports.isEnvironmentMoneyValueV1 = isEnvironmentMoneyValueV1;
131
- const isObservedMoney = (value) => (0, exports.isEnvironmentMoneyValueV1)(value) && value.savingsAdditivity === undefined;
132
- const isSavingsMoney = (value) => (0, exports.isEnvironmentMoneyValueV1)(value) && value.savingsAdditivity !== undefined;
168
+ const isObservedMoney = (value) => (0, exports.isEnvironmentMoneyValueV1)(value) && value.savingsAdditivity === undefined && value.savingsBasis === undefined;
169
+ const isSavingsMoney = (value) => (0, exports.isEnvironmentMoneyValueV1)(value) &&
170
+ value.savingsAdditivity !== undefined &&
171
+ value.spendSource === undefined &&
172
+ value.composition === undefined;
133
173
  /** Validates the closed coverage-state union and state-specific freshness rules. */
134
174
  const isEnvironmentCoverageStateV1 = (value) => {
135
175
  if (!(0, internal_js_1.isRecord)(value) || typeof value.status !== 'string')
@@ -256,6 +296,7 @@ const isRecommendation = (value) => (0, internal_js_1.isRecord)(value) &&
256
296
  (value.affectedResources === undefined || (0, exports.isEnvironmentCardinalityV1)(value.affectedResources)) &&
257
297
  (value.potentialSavings === undefined || isSavingsMoney(value.potentialSavings)) &&
258
298
  isResourceReferenceArray(value.resourceReferences) &&
299
+ resourceTypesMatchReferences(value.affectedResourceTypes, value.resourceReferences) &&
259
300
  isReferenceArray(value.sourceReferences);
260
301
  const isChange = (value) => (0, internal_js_1.isRecord)(value) &&
261
302
  (0, internal_js_1.hasExactKeys)(value, ['key', 'pillars', 'safeLabel', 'description', 'direction', 'sourceReferences'], ['amount']) &&
@@ -299,6 +340,127 @@ const isCostSummary = (value) => (0, internal_js_1.isRecord)(value) &&
299
340
  (value.observedCost === undefined || isObservedMoney(value.observedCost)) &&
300
341
  (value.potentialSavings === undefined || isSavingsMoney(value.potentialSavings)) &&
301
342
  (value.costRecommendationCount === undefined || (0, internal_js_1.isNonNegativeInteger)(value.costRecommendationCount));
343
+ const SECTION_ITEMS = contracts_js_1.ENVIRONMENT_CONTRACT_LIMITS_V1.sectionListItems;
344
+ const isSectionList = (value, itemValidator) => isBoundedList(value, itemValidator) && value.items.length <= SECTION_ITEMS;
345
+ const isSectionCount = (value) => value === undefined || (0, internal_js_1.isNonNegativeInteger)(value);
346
+ const isLabeledCount = (value) => (0, internal_js_1.isRecord)(value) &&
347
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel', 'count']) &&
348
+ isGeneralKey(value.key) &&
349
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
350
+ (0, internal_js_1.isNonNegativeInteger)(value.count);
351
+ const isSubjectReference = (value) => (0, internal_js_1.isRecord)(value) &&
352
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel'], ['detail', 'resourceReference']) &&
353
+ isGeneralKey(value.key) &&
354
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
355
+ (value.detail === undefined || (0, internal_js_1.isCustomerString)(value.detail)) &&
356
+ (value.resourceReference === undefined || (0, references_js_1.isEnvironmentLogicalResourceReferenceV1)(value.resourceReference));
357
+ const isCommitmentPurchaseOption = (value) => (0, internal_js_1.isRecord)(value) &&
358
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel'], ['termMonths', 'estimatedMonthlySavings']) &&
359
+ isGeneralKey(value.key) &&
360
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
361
+ isSectionCount(value.termMonths) &&
362
+ (value.estimatedMonthlySavings === undefined || isSavingsMoney(value.estimatedMonthlySavings));
363
+ const isCommitmentCoverageRow = (value) => (0, internal_js_1.isRecord)(value) &&
364
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel', 'benefitLabels'], ['detail', 'resourceReference']) &&
365
+ isGeneralKey(value.key) &&
366
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
367
+ Array.isArray(value.benefitLabels) &&
368
+ value.benefitLabels.length <= SECTION_ITEMS &&
369
+ value.benefitLabels.every(internal_js_1.isSafeLabel) &&
370
+ (value.detail === undefined || (0, internal_js_1.isCustomerString)(value.detail)) &&
371
+ (value.resourceReference === undefined || (0, references_js_1.isEnvironmentLogicalResourceReferenceV1)(value.resourceReference));
372
+ const isCommitmentsSection = (value) => (0, internal_js_1.isRecord)(value) &&
373
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'purchaseOptions', 'benefitCoverage', 'sourceReferences'], ['benefitCount', 'utilizationPercent30Day', 'utilizationPercent7Day', 'expiredCount', 'expiring90DayCount', 'expiring180DayCount']) &&
374
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
375
+ isSectionCount(value.benefitCount) &&
376
+ (value.utilizationPercent30Day === undefined || isPercentage(value.utilizationPercent30Day)) &&
377
+ (value.utilizationPercent7Day === undefined || isPercentage(value.utilizationPercent7Day)) &&
378
+ isSectionCount(value.expiredCount) &&
379
+ isSectionCount(value.expiring90DayCount) &&
380
+ isSectionCount(value.expiring180DayCount) &&
381
+ isSectionList(value.purchaseOptions, isCommitmentPurchaseOption) &&
382
+ isSectionList(value.benefitCoverage, isCommitmentCoverageRow) &&
383
+ isReferenceArray(value.sourceReferences);
384
+ const isBudget = (value) => (0, internal_js_1.isRecord)(value) &&
385
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel'], ['period', 'amount', 'currentSpend', 'forecastSpend', 'consumedPercent']) &&
386
+ isGeneralKey(value.key) &&
387
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
388
+ (value.period === undefined || (0, internal_js_1.isSafeLabel)(value.period)) &&
389
+ (value.amount === undefined || isObservedMoney(value.amount)) &&
390
+ (value.currentSpend === undefined || isObservedMoney(value.currentSpend)) &&
391
+ (value.forecastSpend === undefined || isObservedMoney(value.forecastSpend)) &&
392
+ (value.consumedPercent === undefined || (typeof value.consumedPercent === 'string' && internal_js_1.DECIMAL_PATTERN.test(value.consumedPercent)));
393
+ const isBudgetSection = (value) => (0, internal_js_1.isRecord)(value) &&
394
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'budgets', 'sourceReferences']) &&
395
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
396
+ isSectionList(value.budgets, isBudget) &&
397
+ isReferenceArray(value.sourceReferences);
398
+ const isIdleResourceSection = (value) => (0, internal_js_1.isRecord)(value) &&
399
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'recommendationCount', 'resourceCount', 'subjects', 'sourceReferences'], ['monthlyWaste']) &&
400
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
401
+ (0, internal_js_1.isNonNegativeInteger)(value.recommendationCount) &&
402
+ (0, internal_js_1.isNonNegativeInteger)(value.resourceCount) &&
403
+ (value.monthlyWaste === undefined || isSavingsMoney(value.monthlyWaste)) &&
404
+ isSectionList(value.subjects, isSubjectReference) &&
405
+ isReferenceArray(value.sourceReferences);
406
+ const isPublicIpExposureSection = (value) => (0, internal_js_1.isRecord)(value) &&
407
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'totalCount', 'exposedSubjects', 'remediationOptions', 'sourceReferences'], ['assignedCount', 'unassignedCount', 'basicSkuCount', 'httpsExposedCount', 'rdpExposedCount', 'sshExposedCount']) &&
408
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
409
+ (0, internal_js_1.isNonNegativeInteger)(value.totalCount) &&
410
+ [value.assignedCount, value.unassignedCount, value.basicSkuCount, value.httpsExposedCount, value.rdpExposedCount, value.sshExposedCount].every(isSectionCount) &&
411
+ isSectionList(value.exposedSubjects, isSubjectReference) &&
412
+ isSectionList(value.remediationOptions, isLabeledCount) &&
413
+ isReferenceArray(value.sourceReferences);
414
+ const isSecretStoreCoverageSection = (value) => (0, internal_js_1.isRecord)(value) &&
415
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'vaultCount', 'inspectedVaultCount', 'reasons', 'sourceReferences']) &&
416
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
417
+ (0, internal_js_1.isNonNegativeInteger)(value.vaultCount) &&
418
+ (0, internal_js_1.isNonNegativeInteger)(value.inspectedVaultCount) &&
419
+ isSectionList(value.reasons, isLabeledCount) &&
420
+ isReferenceArray(value.sourceReferences);
421
+ const isTagCoverageSection = (value) => (0, internal_js_1.isRecord)(value) &&
422
+ (0, internal_js_1.hasExactKeys)(value, [
423
+ 'coverage',
424
+ 'resourceCount',
425
+ 'taggedResourceCount',
426
+ 'untaggedResourceCount',
427
+ 'distinctTagKeyCount',
428
+ 'topTagKeys',
429
+ 'sourceReferences',
430
+ ]) &&
431
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
432
+ (0, internal_js_1.isNonNegativeInteger)(value.resourceCount) &&
433
+ (0, internal_js_1.isNonNegativeInteger)(value.taggedResourceCount) &&
434
+ (0, internal_js_1.isNonNegativeInteger)(value.untaggedResourceCount) &&
435
+ (0, internal_js_1.isNonNegativeInteger)(value.distinctTagKeyCount) &&
436
+ value.taggedResourceCount + value.untaggedResourceCount === value.resourceCount &&
437
+ isSectionList(value.topTagKeys, isLabeledCount) &&
438
+ isReferenceArray(value.sourceReferences);
439
+ const isChangeSignalSection = (value) => (0, internal_js_1.isRecord)(value) &&
440
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'windowDays', 'changeCount', 'topOperations', 'sourceReferences'], ['materialChangeCount', 'securityRelevantCount']) &&
441
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
442
+ (0, internal_js_1.isNonNegativeInteger)(value.windowDays) &&
443
+ (0, internal_js_1.isNonNegativeInteger)(value.changeCount) &&
444
+ isSectionCount(value.materialChangeCount) &&
445
+ isSectionCount(value.securityRelevantCount) &&
446
+ isSectionList(value.topOperations, isLabeledCount) &&
447
+ isReferenceArray(value.sourceReferences);
448
+ const isHealthEvent = (value) => (0, internal_js_1.isRecord)(value) &&
449
+ (0, internal_js_1.hasExactKeys)(value, ['key', 'safeLabel', 'severity'], ['eventType', 'startedAt']) &&
450
+ isGeneralKey(value.key) &&
451
+ (0, internal_js_1.isSafeLabel)(value.safeLabel) &&
452
+ typeof value.severity === 'string' &&
453
+ SEVERITIES.has(value.severity) &&
454
+ (value.eventType === undefined || (0, internal_js_1.isSafeLabel)(value.eventType)) &&
455
+ (value.startedAt === undefined || (0, internal_js_1.isCanonicalUtcTimestamp)(value.startedAt));
456
+ const isHealthEventSection = (value) => (0, internal_js_1.isRecord)(value) &&
457
+ (0, internal_js_1.hasExactKeys)(value, ['coverage', 'totalCount', 'activeCount', 'resolvedCount', 'activeEvents', 'sourceReferences']) &&
458
+ (0, exports.isEnvironmentCoverageStateV1)(value.coverage) &&
459
+ (0, internal_js_1.isNonNegativeInteger)(value.totalCount) &&
460
+ (0, internal_js_1.isNonNegativeInteger)(value.activeCount) &&
461
+ (0, internal_js_1.isNonNegativeInteger)(value.resolvedCount) &&
462
+ isSectionList(value.activeEvents, isHealthEvent) &&
463
+ isReferenceArray(value.sourceReferences);
302
464
  /** Validates the strict, bounded multi-pillar subscription environment projection. */
303
465
  const isEnvironmentSubscriptionProjectionV1 = (value) => {
304
466
  if (!(0, internal_js_1.hasSafeContainerShape)(value) || !(0, internal_js_1.isRecord)(value))
@@ -321,7 +483,7 @@ const isEnvironmentSubscriptionProjectionV1 = (value) => {
321
483
  'changes',
322
484
  'warnings',
323
485
  'sourceReferences',
324
- ]) ||
486
+ ], ['commitments', 'budgets', 'idleResources', 'publicIpExposure', 'secretStoreCoverage', 'tagCoverage', 'changeSignals', 'healthEvents']) ||
325
487
  value.schemaVersion !== 1 ||
326
488
  !(0, exports.isEnvironmentScopeV1)(value.scope) ||
327
489
  !(0, exports.isEnvironmentSourceBindingV1)(value.sourceBinding) ||
@@ -343,6 +505,14 @@ const isEnvironmentSubscriptionProjectionV1 = (value) => {
343
505
  !isBoundedList(value.recommendations, isRecommendation) ||
344
506
  !isBoundedList(value.changes, isChange) ||
345
507
  !isBoundedList(value.warnings, isWarning) ||
508
+ (value.commitments !== undefined && !isCommitmentsSection(value.commitments)) ||
509
+ (value.budgets !== undefined && !isBudgetSection(value.budgets)) ||
510
+ (value.idleResources !== undefined && !isIdleResourceSection(value.idleResources)) ||
511
+ (value.publicIpExposure !== undefined && !isPublicIpExposureSection(value.publicIpExposure)) ||
512
+ (value.secretStoreCoverage !== undefined && !isSecretStoreCoverageSection(value.secretStoreCoverage)) ||
513
+ (value.tagCoverage !== undefined && !isTagCoverageSection(value.tagCoverage)) ||
514
+ (value.changeSignals !== undefined && !isChangeSignalSection(value.changeSignals)) ||
515
+ (value.healthEvents !== undefined && !isHealthEventSection(value.healthEvents)) ||
346
516
  !isReferenceArray(value.sourceReferences)) {
347
517
  return false;
348
518
  }
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":";;;AAAA,iDA4BwB;AACxB,+CAgBuB;AACvB,mDAAmH;AAEnH,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,4CAA6B,CAAC,CAAC;AACtE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAS,4CAA6B,CAAC,CAAC;AACtE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,qCAAsB,CAAC,CAAC;AACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAS,2CAA4B,CAAC,CAAC;AACpE,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS,wCAAyB,CAAC,CAAC;AAC9D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,qCAAsB,CAAC,CAAC;AACxD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAS,qCAAsB,CAAC,CAAC;AACxD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AACxE,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAS;IACvC,sBAAsB;IACtB,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,gBAAgB;CACjB,CAAC,CAAC;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC,CAAC;AAClF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;AAE5F,MAAM,WAAW,GAAG,CAAC,IAAwB,EAAE,KAAyB,EAAW,EAAE,CACnF,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,CAAC;AAErJ,oFAAoF;AAC7E,MAAM,0BAA0B,GAAG,CAAC,KAAc,EAAmB,EAAE,CAC5E,IAAA,6BAAe,EAAC,KAAK,EAAE,6CAA8B,CAAC,qBAAqB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC/G,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;IACrB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;IACvB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;IACrB,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;IACtB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;IACpB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;IACpB,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;IACpB,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC;AAT5D,QAAA,0BAA0B,8BASkC;AAEzE,MAAM,YAAY,GAAG,CAAC,KAAc,EAAmB,EAAE,CACvD,IAAA,6BAAe,EAAC,KAAK,EAAE,6CAA8B,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAE7G,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAW,EAAE,CACnD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,KAAK,CAAC,MAAM,IAAI,6CAA8B,CAAC,gBAAgB;IAC/D,KAAK,CAAC,KAAK,CAAC,uDAAuC,CAAC;IACpD,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC;AAEvC,MAAM,wBAAwB,GAAG,CAAC,KAAc,EAAW,EAAE,CAC3D,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,KAAK,CAAC,MAAM,IAAI,6CAA8B,CAAC,gBAAgB;IAC/D,KAAK,CAAC,KAAK,CAAC,uDAAuC,CAAC;IACpD,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,CAAC;AAEvC,MAAM,2BAA2B,GAAG,0EAA0E,CAAC;AAE/G,MAAM,wBAAwB,GAAG,CAAC,KAAc,EAAqB,EAAE,CACrE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,KAAK,CAAC,MAAM,IAAI,6CAA8B,CAAC,gBAAgB;IAC/D,KAAK,CAAC,KAAK,CACT,IAAI,CAAC,EAAE,CACL,IAAA,6BAAe,EAAC,IAAI,EAAE,6CAA8B,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACzG,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CACzC;IACD,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM;IACpC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC;AAExE,MAAM,YAAY,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,6BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC;AAE3I,iDAAiD;AAC1C,MAAM,qBAAqB,GAAG,CAAC,KAAc,EAAgC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAA1H,QAAA,qBAAqB,yBAAqG;AAEvI,+DAA+D;AACxD,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAA+B,EAAE,CAClF,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;IACxE,KAAK,CAAC,IAAI,KAAK,oBAAoB;IACnC,IAAA,+BAAiB,EAAC,KAAK,CAAC,QAAQ,CAAC;IACjC,IAAA,+BAAiB,EAAC,KAAK,CAAC,SAAS,CAAC;IAClC,IAAA,+BAAiB,EAAC,KAAK,CAAC,cAAc,CAAC,CAAC;AAN7B,QAAA,oBAAoB,wBAMS;AAE1C,iFAAiF;AAC1E,MAAM,+BAA+B,GAAG,CAAC,KAAc,EAA0C,EAAE,CACxG,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE;QAClB,sBAAsB;QACtB,eAAe;QACf,aAAa;QACb,aAAa;QACb,uBAAuB;QACvB,sBAAsB;QACtB,aAAa;KACd,CAAC;IACF,KAAK,CAAC,oBAAoB,KAAK,CAAC;IAChC,IAAA,8BAAgB,EAAC,KAAK,CAAC,aAAa,CAAC;IACrC,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC;IACnC,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC;IACnC,IAAA,8BAAgB,EAAC,KAAK,CAAC,qBAAqB,CAAC;IAC7C,IAAA,8BAAgB,EAAC,KAAK,CAAC,oBAAoB,CAAC;IAC5C,IAAA,qCAAuB,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAjBhC,QAAA,+BAA+B,mCAiBC;AAE7C,uFAAuF;AAChF,MAAM,4BAA4B,GAAG,CAAC,KAAc,EAAuC,EAAE,CAClG,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE;QAClB,MAAM;QACN,sBAAsB;QACtB,OAAO;QACP,eAAe;QACf,aAAa;QACb,aAAa;QACb,uBAAuB;QACvB,sBAAsB;QACtB,aAAa;KACd,CAAC;IACF,KAAK,CAAC,IAAI,KAAK,6BAA6B;IAC5C,KAAK,CAAC,oBAAoB,KAAK,CAAC;IAChC,IAAA,4BAAoB,EAAC,KAAK,CAAC,KAAK,CAAC;IACjC,IAAA,uCAA+B,EAAC;QAC9B,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;QAClD,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;QAChD,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC,CAAC;AAxBQ,QAAA,4BAA4B,gCAwBpC;AAEL,8FAA8F;AACvF,MAAM,oBAAoB,GAAG,CAAC,KAAc,EAAmB,EAAE,CACtE,OAAO,KAAK,KAAK,QAAQ;IACzB,KAAK,CAAC,MAAM,GAAG,CAAC;IAChB,KAAK,CAAC,MAAM,IAAI,6CAA8B,CAAC,+BAA+B;IAC9E,KAAK,KAAK,GAAG;IACb,KAAK,KAAK,IAAI;IACd,wCAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAN5B,QAAA,oBAAoB,wBAMQ;AAEzC,+FAA+F;AACxF,MAAM,yBAAyB,GAAG,CAAC,KAAc,EAAoC,EAAE,CAC5F,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC;IACvG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;IAChC,6BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAClC,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;IACtC,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,8BAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC/E,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;IAC/B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC;IAC5B,IAAA,6BAAe,EAAC,KAAK,CAAC,MAAM,EAAE,6CAA8B,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACjH,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;IACpC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;IACtC,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;AAZjI,QAAA,yBAAyB,6BAYwG;AAE9I,MAAM,eAAe,GAAG,CAAC,KAAc,EAAoC,EAAE,CAC3E,IAAA,iCAAyB,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC;AAE5E,MAAM,cAAc,GAAG,CAAC,KAAc,EAAoC,EAAE,CAC1E,IAAA,iCAAyB,EAAC,KAAK,CAAC,IAAI,KAAK,CAAC,iBAAiB,KAAK,SAAS,CAAC;AAE5E,oFAAoF;AAC7E,MAAM,4BAA4B,GAAG,CAAC,KAAc,EAAuC,EAAE;IAClG,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvE,MAAM,iBAAiB,GACrB,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,IAAA,qCAAuB,EAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC7E,CAAC,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,IAAA,qCAAuB,EAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QACvF,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS;YAC7B,KAAK,CAAC,eAAe,KAAK,SAAS;YACnC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAyB,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAoB,CAAC,CAAC,CAAC;IAC3F,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC,IAAI,iBAAiB,CAAC;IACjG,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,OAAO,CACL,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;YAC5E,IAAA,8BAAgB,EAAC,KAAK,CAAC,MAAM,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACvB,iBAAiB,CAClB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,CACL,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC5E,IAAA,8BAAgB,EAAC,KAAK,CAAC,MAAM,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACvB,iBAAiB,CAClB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,aAAa,IAAI,KAAK,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;QACvE,OAAO,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAA,8BAAgB,EAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAChH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AA/BW,QAAA,4BAA4B,gCA+BvC;AAEF,MAAM,aAAa,GAAG,CAAI,KAAc,EAAE,aAA2C,EAAwC,EAAE;IAC7H,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,CAAC,uBAAuB,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAC7I,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,6CAA8B,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC;QAC1I,OAAO,KAAK,CAAC;IACf,IAAI,CAAC,IAAA,kCAAoB,EAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,IAAA,kCAAoB,EAAC,KAAK,CAAC,aAAa,CAAC;QAAE,OAAO,KAAK,CAAC;IACxG,IAAI,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC/I,IAAI,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,aAAa;QAAE,OAAO,KAAK,CAAC;IAC7E,IAAI,KAAK,CAAC,qBAAqB,KAAK,SAAS,IAAI,CAAC,IAAA,uDAAuC,EAAC,KAAK,CAAC,qBAAqB,CAAC;QAAE,OAAO,KAAK,CAAC;IACrI,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,qBAAqB,KAAK,SAAS,CAAC;AACvE,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,KAAc,EAAoC,EAAE,CACxE,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IACpH,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC;IACvB,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,IAAA,kCAAoB,EAAC,KAAK,CAAC,aAAa,CAAC;IACzC,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACzE,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAChF,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,YAAY,GAAG,CAAC,KAAc,EAAoC,EAAE,CACxE,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,CAAC,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,mBAAmB,CAAC,CAAC;IAClI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC;IACvB,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACzE,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAA,kCAA0B,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClF,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,IAAA,uDAAuC,EAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC3G,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,aAAa,GAAG,CAAC,KAAc,EAAW,EAAE,CAChD,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACtD,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC;IACzB,KAAK,CAAC,OAAO,KAAK,KAAK;IACvB,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AAE/B,6FAA6F;AACtF,MAAM,0BAA0B,GAAG,CAAC,KAAc,EAAqC,EAAE;IAC9F,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtE,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QAC5B,OAAO,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,IAAA,kCAAoB,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;QAClC,OAAO,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAA,kCAAoB,EAAC,KAAK,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAW,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7H,CAAC;IACD,IAAI,KAAK,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;QAClC,OAAO,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,IAAI,IAAA,yBAAW,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAZW,QAAA,0BAA0B,8BAYrC;AAEF,MAAM,eAAe,GAAG,CAAC,KAAc,EAAuC,EAAE,CAC9E,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EACV,KAAK,EACL,CAAC,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,aAAa,EAAE,kBAAkB,CAAC,EACrH,CAAC,OAAO,CAAC,CACV;IACD,IAAA,6BAAqB,EAAC,KAAK,CAAC,MAAM,CAAC;IACnC,IAAA,oCAA4B,EAAC,KAAK,CAAC,QAAQ,CAAC;IAC5C,IAAA,kCAAoB,EAAC,KAAK,CAAC,YAAY,CAAC;IACxC,IAAA,kCAAoB,EAAC,KAAK,CAAC,mBAAmB,CAAC;IAC/C,IAAA,kCAA0B,EAAC,KAAK,CAAC,iBAAiB,CAAC;IACnD,IAAA,kCAA0B,EAAC,KAAK,CAAC,WAAW,CAAC;IAC7C,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,aAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACzD,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAW,EAAE,CACpD,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,qCAAsB,CAAC;IAC3C,qCAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;AAE7G,MAAM,SAAS,GAAG,CAAC,KAAc,EAAiC,EAAE,CAClE,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EACV,KAAK,EACL,CAAC,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,EAClG,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,aAAa,CAAC,CACxE;IACD,IAAA,+BAAiB,EAAC,KAAK,CAAC,SAAS,CAAC;IAClC,IAAA,6BAAqB,EAAC,KAAK,CAAC,MAAM,CAAC;IACnC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;IAC9B,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IAC7B,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;IAClC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC9B,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,IAAA,kCAA0B,EAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC9F,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAA,kCAA0B,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAClF,wBAAwB,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAClD,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAwC,EAAE,CAChF,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EACV,KAAK,EACL,CAAC,kBAAkB,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,uBAAuB,EAAE,aAAa,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,EAC9I,CAAC,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,kBAAkB,CAAC,CAC7E;IACD,IAAA,+BAAiB,EAAC,KAAK,CAAC,gBAAgB,CAAC;IACzC,IAAA,6BAAqB,EAAC,KAAK,CAAC,MAAM,CAAC;IACnC,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,IAAA,yBAAW,EAAC,KAAK,CAAC,aAAa,CAAC;IAChC,wBAAwB,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACrD,IAAA,kCAA0B,EAAC,KAAK,CAAC,WAAW,CAAC;IAC7C,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IACxE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/F,CAAC,KAAK,CAAC,iBAAiB,KAAK,SAAS,IAAI,IAAA,kCAA0B,EAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC9F,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAChF,wBAAwB,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAClD,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAgC,EAAE,CAChE,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAChH,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC;IACvB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;IAC5B,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;IACxB,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,qCAAsB,CAAC,MAAM;IACrD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,6BAAqB,CAAC;IAC1C,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC,MAAM;IACpD,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,IAAA,8BAAgB,EAAC,KAAK,CAAC,WAAW,CAAC;IACnC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;IACnC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;IACtC,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7D,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,SAAS,GAAG,CAAC,KAAc,EAA2C,EAAE,CAC5E,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,kBAAkB,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpF,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;IACxB,IAAA,yBAAW,EAAC,KAAK,CAAC,SAAS,CAAC;IAC5B,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,IAAA,6BAAqB,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,IAAA,8BAAgB,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9D,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AAE3C,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAW,EAAE,CACnD,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE;QAClB,kBAAkB;QAClB,qBAAqB;QACrB,WAAW;QACX,iBAAiB;QACjB,oBAAoB;QACpB,eAAe;QACf,eAAe;KAChB,CAAC;IACF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,oCAA4B,CAAC,CAAC;AAE3D,MAAM,eAAe,GAAG,CAAC,KAAc,EAAW,EAAE,CAClD,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,eAAe,EAAE,oBAAoB,EAAE,eAAe,CAAC,CAAC;IAC7E,IAAA,kCAAoB,EAAC,KAAK,CAAC,aAAa,CAAC;IACzC,IAAA,kCAAoB,EAAC,KAAK,CAAC,kBAAkB,CAAC;IAC9C,IAAA,kCAAoB,EAAC,KAAK,CAAC,aAAa,CAAC,CAAC;AAE5C,MAAM,aAAa,GAAG,CAAC,KAAc,EAAW,EAAE,CAChD,IAAA,sBAAQ,EAAC,KAAK,CAAC;IACf,IAAA,0BAAY,EAAC,KAAK,EAAE,EAAE,EAAE,CAAC,cAAc,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,CAAC;IACxF,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACzE,CAAC,KAAK,CAAC,gBAAgB,KAAK,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAChF,CAAC,KAAK,CAAC,uBAAuB,KAAK,SAAS,IAAI,IAAA,kCAAoB,EAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;AAEvG,sFAAsF;AAC/E,MAAM,qCAAqC,GAAG,CAAC,KAAc,EAAgD,EAAE;IACpH,IAAI,CAAC,IAAA,mCAAqB,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpE,IACE,CAAC,IAAA,0BAAY,EAAC,KAAK,EAAE;QACnB,eAAe;QACf,OAAO;QACP,eAAe;QACf,aAAa;QACb,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,aAAa;QACb,sBAAsB;QACtB,mBAAmB;QACnB,aAAa;QACb,SAAS;QACT,UAAU;QACV,iBAAiB;QACjB,SAAS;QACT,UAAU;QACV,kBAAkB;KACnB,CAAC;QACF,KAAK,CAAC,aAAa,KAAK,CAAC;QACzB,CAAC,IAAA,4BAAoB,EAAC,KAAK,CAAC,KAAK,CAAC;QAClC,CAAC,IAAA,oCAA4B,EAAC,KAAK,CAAC,aAAa,CAAC;QAClD,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;QACpD,CAAC,IAAA,qCAAuB,EAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC;QAC3E,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC,YAAY,CAAC;QAC7B,CAAC,IAAA,0BAAY,EAAC,KAAK,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAC/D,CAAC,IAAA,yBAAW,EAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;QAC1C,CAAC,IAAA,kCAA0B,EAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC;QAC3D,CAAC,gBAAgB,CAAC,KAAK,CAAC,cAAc,CAAC;QACvC,CAAC,eAAe,CAAC,KAAK,CAAC,aAAa,CAAC;QACrC,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;QACjC,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,EAAE,YAAY,CAAC;QACxD,CAAC,aAAa,CAAC,KAAK,CAAC,iBAAiB,EAAE,YAAY,CAAC;QACrD,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,YAAY,CAAC;QAC/C,CAAC,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC;QACjC,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;QACzC,CAAC,aAAa,CAAC,KAAK,CAAC,eAAe,EAAE,gBAAgB,CAAC;QACvD,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC;QACvC,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC;QACzC,CAAC,gBAAgB,CAAC,KAAK,CAAC,gBAAgB,CAAC,EACzC,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAA,4BAAc,EAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,6CAA8B,CAAC,eAAe,CAAC;AACjG,CAAC,CAAC;AAhDW,QAAA,qCAAqC,yCAgDhD;AAEF,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,IAAI,IAAI,KAAK,iBAAiB;QAAE,OAAO,6CAA8B,CAAC,eAAe,CAAC;IACtF,IAAI,IAAI,KAAK,sBAAsB;QAAE,OAAO,6CAA8B,CAAC,qBAAqB,CAAC;IACjG,OAAO,6CAA8B,CAAC,mBAAmB,CAAC;AAC5D,CAAC,CAAC;AAEF,kFAAkF;AAC3E,MAAM,iCAAiC,GAAG,CAAC,KAAc,EAA4C,EAAE;IAC5G,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,uBAAuB,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACzI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACpF,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,8BAA8B,CAAC;IACjH,OAAO,CACL,KAAK,CAAC,SAAS,KAAK,iBAAiB;QACrC,IAAA,kCAAoB,EAAC,KAAK,CAAC,SAAS,CAAC;QACrC,KAAK,CAAC,SAAS,GAAG,CAAC;QACnB,KAAK,CAAC,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC;QAClD,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;QACvC,4BAAc,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QACxC,IAAA,kCAAoB,EAAC,KAAK,CAAC,qBAAqB,CAAC,CAClD,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,iCAAiC,qCAa5C;AAEF,qFAAqF;AAC9E,MAAM,oCAAoC,GAAG,CAAC,KAAc,EAA8C,EAAE,CACjH,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;IACpB,KAAK,CAAC,MAAM,KAAK,4CAA6B,CAAC,MAAM;IACrD,KAAK,CAAC,KAAK,CAAC,yCAAiC,CAAC;IAC9C,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,4CAA6B,CAAC,MAAM;IAC/F,4CAA6B,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC;AALrF,QAAA,oCAAoC,wCAKiD;AAElG,gFAAgF;AACzE,MAAM,wCAAwC,GAAG,CAAC,KAAc,EAAmD,EAAE;IAC1H,IAAI,CAAC,IAAA,mCAAqB,EAAC,KAAK,CAAC,IAAI,CAAC,IAAA,sBAAQ,EAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACpE,IACE,CAAC,IAAA,0BAAY,EAAC,KAAK,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QAC/I,KAAK,CAAC,aAAa,KAAK,CAAC;QACzB,KAAK,CAAC,MAAM,KAAK,WAAW;QAC5B,CAAC,IAAA,4BAAoB,EAAC,KAAK,CAAC,gBAAgB,CAAC;QAC7C,CAAC,IAAA,4BAAoB,EAAC,KAAK,CAAC,KAAK,CAAC;QAClC,CAAC,IAAA,oCAA4B,EAAC,KAAK,CAAC,aAAa,CAAC;QAClD,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC;QACpD,OAAO,KAAK,CAAC,gBAAgB,KAAK,QAAQ;QAC1C,CAAC,4BAAc,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAC5C,KAAK,CAAC,SAAS,KAAK,4CAA6B,CAAC,MAAM;QACxD,CAAC,IAAA,qCAAuB,EAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,EAC3E,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,gBAAgB,GAAG;QACvB,KAAK,CAAC,aAAa,CAAC,aAAa;QACjC,KAAK,CAAC,aAAa,CAAC,WAAW;QAC/B,KAAK,CAAC,aAAa,CAAC,WAAW;QAC/B,KAAK,CAAC,aAAa,CAAC,qBAAqB;QACzC,KAAK,CAAC,aAAa,CAAC,oBAAoB;KACzC,CAAC;IACF,OAAO,CACL,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC;QAClD,IAAA,4BAAc,EAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,6CAA8B,CAAC,qBAAqB,CAC9F,CAAC;AACJ,CAAC,CAAC;AA7BW,QAAA,wCAAwC,4CA6BnD;AAEF,uEAAuE;AAChE,MAAM,2BAA2B,GAAG,CAAC,KAAc,EAAsC,EAAE,CAChG,OAAO,KAAK,KAAK,QAAQ,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAD5C,QAAA,2BAA2B,+BACiB;AAEzD,oFAAoF;AAC7E,MAAM,wBAAwB,GAAG,CAAC,KAAc,EAAmB,EAAE,CAAC,IAAA,yBAAW,EAAC,KAAK,CAAC,CAAC;AAAnF,QAAA,wBAAwB,4BAA2D"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/environment/validation.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,10 @@
1
1
  /** Common AI interfaces shared between frontend and backend */
2
2
  export * from './grounding.js';
3
3
  export * from './workspaceArtifacts.js';
4
+ /** Maximum length of the optional free-text comment attached to per-turn feedback. */
5
+ export const AI_CHAT_TURN_FEEDBACK_COMMENT_MAX_LENGTH = 1000;
6
+ /**
7
+ * Number of per-turn feedback records retained on a conversation. The conversation blob stays the
8
+ * authoritative record, so the newest records win once the bound is reached.
9
+ */
10
+ export const AI_CHAT_TURN_FEEDBACK_MAX_RECORDS = 200;
@@ -34,4 +34,38 @@ export const AI_CHAT_WORKSPACE_CAPABILITIES = [
34
34
  presentations: ['line', 'area', 'bar'],
35
35
  dataModes: ['liveView', 'snapshotWithLiveRefresh'],
36
36
  },
37
+ /**
38
+ * Generic views are server-produced snapshots over an authorized tool result already held by the
39
+ * turn. They have no live recipe and no endpoint binding: the API builds the payload from the same
40
+ * shaped tool output that grounded the answer, so the model never selects data, endpoint or shape.
41
+ */
42
+ {
43
+ viewId: 'genericTable',
44
+ version: 1,
45
+ artifactKind: 'table',
46
+ presentations: ['table'],
47
+ dataModes: ['snapshot'],
48
+ },
49
+ {
50
+ viewId: 'genericBarChart',
51
+ version: 1,
52
+ artifactKind: 'chart',
53
+ presentations: ['bar'],
54
+ dataModes: ['snapshot'],
55
+ },
56
+ {
57
+ viewId: 'genericLineChart',
58
+ version: 1,
59
+ artifactKind: 'chart',
60
+ presentations: ['line'],
61
+ dataModes: ['snapshot'],
62
+ },
63
+ {
64
+ viewId: 'genericKpi',
65
+ version: 1,
66
+ artifactKind: 'kpi',
67
+ presentations: ['kpi'],
68
+ dataModes: ['snapshot'],
69
+ },
37
70
  ];
71
+ export const AI_CHAT_WORKSPACE_GENERIC_VIEW_IDS = ['genericTable', 'genericBarChart', 'genericLineChart', 'genericKpi'];
@@ -5,6 +5,12 @@ export const ENVIRONMENT_CONTRACT_LIMITS_V1 = Object.freeze({
5
5
  environmentIndexBytes: 8 * 1024,
6
6
  pillarDocumentBytes: 8 * 1024,
7
7
  boundedListItems: 50,
8
+ /**
9
+ * Row cap for the optional structured detail sections. Deliberately far below
10
+ * `boundedListItems`: the core lists already consume most of the projection byte budget,
11
+ * and a detail section is a summary, not an inventory.
12
+ */
13
+ sectionListItems: 10,
8
14
  customerStringScalars: 4096,
9
15
  safeLabelScalars: 512,
10
16
  scopeIdentifierScalars: 2048,
@@ -32,6 +38,9 @@ export const ENVIRONMENT_ARTIFACT_KINDS_V1 = [
32
38
  'subscription-monitor-alerts',
33
39
  'subscription-system-tracks',
34
40
  'subscription-metrics',
41
+ // API-issued evidence kind: a bounded projection of one compiled `projection.json` detail section
42
+ // (commitments, budgets, idle resources, ...). Never emitted by the compiler as a source reference.
43
+ 'subscription-projection',
35
44
  'tenant-governance',
36
45
  'tenant-governance-access',
37
46
  'tenant-reservations',
@@ -183,6 +183,43 @@ export const parseEnvironmentLogicalResourceReferenceV1 = (value) => {
183
183
  return null;
184
184
  return { kind: 'resource', resourceId };
185
185
  };
186
+ /**
187
+ * Derives the canonical Azure resource type from a canonical ARM resource ID.
188
+ * Resource names are consumed structurally, so a resource named `providers`
189
+ * cannot be mistaken for an extension-resource provider boundary.
190
+ */
191
+ export const deriveEnvironmentAzureResourceTypeV1 = (canonicalAzureResourceId) => {
192
+ if (!isCanonicalAzureResourceId(canonicalAzureResourceId))
193
+ return null;
194
+ const segments = canonicalAzureResourceId.toLowerCase().split('/').filter(Boolean);
195
+ const firstProviderIndex = segments.indexOf('providers');
196
+ if (firstProviderIndex < 0)
197
+ return null;
198
+ let providerIndex = firstProviderIndex;
199
+ let namespace = segments[providerIndex + 1];
200
+ let typeSegments = [];
201
+ let index = providerIndex + 2;
202
+ while (namespace && index < segments.length) {
203
+ const typeOrProviderMarker = segments[index];
204
+ if (!typeOrProviderMarker)
205
+ return null;
206
+ if (typeOrProviderMarker === 'providers') {
207
+ providerIndex = index;
208
+ namespace = segments[providerIndex + 1];
209
+ typeSegments = [];
210
+ index = providerIndex + 2;
211
+ continue;
212
+ }
213
+ typeSegments.push(typeOrProviderMarker);
214
+ if (segments[index + 1] === undefined)
215
+ return null;
216
+ index += 2;
217
+ }
218
+ if (!namespace || typeSegments.length === 0)
219
+ return null;
220
+ const resourceType = `${namespace}/${typeSegments.join('/')}`;
221
+ return [...resourceType].length <= ENVIRONMENT_CONTRACT_LIMITS_V1.safeLabelScalars ? resourceType : null;
222
+ };
186
223
  /** Parses either closed V1 logical evidence-reference kind. */
187
224
  export const parseEnvironmentLogicalEvidenceReferenceV1 = (value) => parseEnvironmentLogicalArtifactReferenceV1(value) ?? parseEnvironmentLogicalResourceReferenceV1(value);
188
225
  /** Returns true when a value is a canonical V1 logical artifact reference. */