@spottoai/types-package 1.0.2-dev1138.2 → 1.0.2-dev1138.3

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 (80) hide show
  1. package/dist/azure/financialAnalytics.d.ts +68 -2
  2. package/dist/azure/financialAnalytics.d.ts.map +1 -1
  3. package/dist/azure/financialAnalyticsDelivery.d.ts +2 -0
  4. package/dist/azure/financialAnalyticsDelivery.d.ts.map +1 -1
  5. package/dist/azure/financialAnalyticsDelivery.js +4 -1
  6. package/dist/azure/financialAnalyticsDelivery.js.map +1 -1
  7. package/dist/azure/financialAnalyticsDisplayKernel.d.ts +12 -0
  8. package/dist/azure/financialAnalyticsDisplayKernel.d.ts.map +1 -0
  9. package/dist/azure/financialAnalyticsDisplayKernel.js +144 -0
  10. package/dist/azure/financialAnalyticsDisplayKernel.js.map +1 -0
  11. package/dist/azure/financialAnalyticsValidation.d.ts.map +1 -1
  12. package/dist/azure/financialAnalyticsValidation.js +61 -7
  13. package/dist/azure/financialAnalyticsValidation.js.map +1 -1
  14. package/dist/azure/financialAuthorityView.d.ts +4 -0
  15. package/dist/azure/financialAuthorityView.d.ts.map +1 -1
  16. package/dist/azure/financialAuthorityView.js.map +1 -1
  17. package/dist/azure/financialAuthorityViewValidation.d.ts.map +1 -1
  18. package/dist/azure/financialAuthorityViewValidation.js +39 -0
  19. package/dist/azure/financialAuthorityViewValidation.js.map +1 -1
  20. package/dist/azure/financialChargeComposition.d.ts +81 -0
  21. package/dist/azure/financialChargeComposition.d.ts.map +1 -0
  22. package/dist/azure/financialChargeComposition.js +41 -0
  23. package/dist/azure/financialChargeComposition.js.map +1 -0
  24. package/dist/azure/financialChargeCompositionKernel.d.ts +3 -0
  25. package/dist/azure/financialChargeCompositionKernel.d.ts.map +1 -0
  26. package/dist/azure/financialChargeCompositionKernel.js +49 -0
  27. package/dist/azure/financialChargeCompositionKernel.js.map +1 -0
  28. package/dist/azure/financialChargeCompositionValidation.d.ts +8 -0
  29. package/dist/azure/financialChargeCompositionValidation.d.ts.map +1 -0
  30. package/dist/azure/financialChargeCompositionValidation.js +164 -0
  31. package/dist/azure/financialChargeCompositionValidation.js.map +1 -0
  32. package/dist/azure/financialDataflow.d.ts +8 -1
  33. package/dist/azure/financialDataflow.d.ts.map +1 -1
  34. package/dist/azure/financialDataflow.js.map +1 -1
  35. package/dist/azure/financialDataflowKernel.d.ts +2 -0
  36. package/dist/azure/financialDataflowKernel.d.ts.map +1 -1
  37. package/dist/azure/financialDataflowKernel.js +59 -7
  38. package/dist/azure/financialDataflowKernel.js.map +1 -1
  39. package/dist/azure/financialDataflowValidation.d.ts +1 -1
  40. package/dist/azure/financialDataflowValidation.d.ts.map +1 -1
  41. package/dist/azure/financialDataflowValidation.js +146 -28
  42. package/dist/azure/financialDataflowValidation.js.map +1 -1
  43. package/dist/azure/financialPolicy.d.ts +3 -0
  44. package/dist/azure/financialPolicy.d.ts.map +1 -1
  45. package/dist/azure/financialPolicy.js.map +1 -1
  46. package/dist/azure/financialPolicyValidation.d.ts.map +1 -1
  47. package/dist/azure/financialPolicyValidation.js +5 -0
  48. package/dist/azure/financialPolicyValidation.js.map +1 -1
  49. package/dist/azure/financialScope.d.ts +4 -0
  50. package/dist/azure/financialScope.d.ts.map +1 -1
  51. package/dist/azure/financialScope.js +4 -0
  52. package/dist/azure/financialScope.js.map +1 -1
  53. package/dist/azure/metrics.d.ts +2 -2
  54. package/dist/azure/metrics.d.ts.map +1 -1
  55. package/dist/azure/prices.d.ts +16 -3
  56. package/dist/azure/prices.d.ts.map +1 -1
  57. package/dist/azure/recommendations.d.ts +12 -4
  58. package/dist/azure/recommendations.d.ts.map +1 -1
  59. package/dist/azure/reports.d.ts +3 -2
  60. package/dist/azure/reports.d.ts.map +1 -1
  61. package/dist/azure/reports.js.map +1 -1
  62. package/dist/azure/resources.d.ts +12 -0
  63. package/dist/azure/resources.d.ts.map +1 -1
  64. package/dist/azure/subscriptions.d.ts +4 -2
  65. package/dist/azure/subscriptions.d.ts.map +1 -1
  66. package/dist/azure/views.d.ts +7 -2
  67. package/dist/azure/views.d.ts.map +1 -1
  68. package/dist/azure/views.js.map +1 -1
  69. package/dist/esm/azure/financialAnalyticsDelivery.js +2 -0
  70. package/dist/esm/azure/financialAnalyticsDisplayKernel.js +139 -0
  71. package/dist/esm/azure/financialAnalyticsValidation.js +61 -7
  72. package/dist/esm/azure/financialAuthorityViewValidation.js +39 -0
  73. package/dist/esm/azure/financialChargeComposition.js +36 -0
  74. package/dist/esm/azure/financialChargeCompositionKernel.js +44 -0
  75. package/dist/esm/azure/financialChargeCompositionValidation.js +155 -0
  76. package/dist/esm/azure/financialDataflowKernel.js +59 -7
  77. package/dist/esm/azure/financialDataflowValidation.js +146 -28
  78. package/dist/esm/azure/financialPolicyValidation.js +5 -0
  79. package/dist/esm/azure/financialScope.js +4 -0
  80. package/package.json +3 -2
@@ -5,6 +5,8 @@ const sha256_1 = require("../common/sha256");
5
5
  const exactDecimal_1 = require("../common/exactDecimal");
6
6
  const costComposition_1 = require("./costComposition");
7
7
  const financialValidationPrimitives_1 = require("./financialValidationPrimitives");
8
+ const financialChargeComposition_1 = require("./financialChargeComposition");
9
+ const financialChargeCompositionValidation_1 = require("./financialChargeCompositionValidation");
8
10
  const financialScopeBaseline_1 = require("./financialScopeBaseline");
9
11
  const financialScopeBaselineValidation_1 = require("./financialScopeBaselineValidation");
10
12
  const financialDataflow_1 = require("./financialDataflow");
@@ -379,7 +381,18 @@ const isFinancialDataflowScopeSelectorV1 = (value) => {
379
381
  exports.isFinancialDataflowScopeSelectorV1 = isFinancialDataflowScopeSelectorV1;
380
382
  const isFinancialDataflowCoordinateV1 = (value) => {
381
383
  if (!(0, exports.isFinancialDataflowRecordV1)(value) ||
382
- !(0, exports.hasFinancialDataflowExactFieldsV1)(value, ['companyId', 'provider', 'providerAccountRefs', 'scope', 'periodRole', 'period', 'costBasis', 'estimateLens', 'accountingCurrency'], ['requestedCurrencyCode']) ||
384
+ !(0, exports.hasFinancialDataflowExactFieldsV1)(value, [
385
+ 'companyId',
386
+ 'provider',
387
+ 'providerAccountRefs',
388
+ 'scope',
389
+ 'periodRole',
390
+ 'period',
391
+ 'costBasis',
392
+ 'estimateLens',
393
+ 'accountingCurrency',
394
+ 'chargeInclusionPolicyRef',
395
+ ], ['requestedCurrencyCode']) ||
383
396
  !(0, exports.isFinancialDataflowIdentityV1)(value.companyId) ||
384
397
  value.provider !== 'azure' ||
385
398
  !(0, exports.isFinancialDataflowSortedUniqueStringsV1)(value.providerAccountRefs, exports.FINANCIAL_DATAFLOW_LIMITS_V1.maximumProviderAccounts) ||
@@ -393,7 +406,12 @@ const isFinancialDataflowCoordinateV1 = (value) => {
393
406
  typeof value.estimateLens !== 'string' ||
394
407
  !ESTIMATE_LENSES.has(value.estimateLens) ||
395
408
  (value.requestedCurrencyCode !== undefined && !(0, exports.isFinancialDataflowCurrencyV1)(value.requestedCurrencyCode)) ||
396
- !(0, exports.isFinancialDataflowRecordV1)(value.accountingCurrency)) {
409
+ !(0, exports.isFinancialDataflowRecordV1)(value.accountingCurrency) ||
410
+ !(0, exports.isFinancialDataflowRecordV1)(value.chargeInclusionPolicyRef) ||
411
+ !(0, exports.hasFinancialDataflowExactFieldsV1)(value.chargeInclusionPolicyRef, ['policyId', 'policyDigest']) ||
412
+ !(0, exports.isFinancialDataflowIdentityV1)(value.chargeInclusionPolicyRef.policyId) ||
413
+ !(0, exports.isFinancialDataflowHashV1)(value.chargeInclusionPolicyRef.policyDigest) ||
414
+ (0, financialChargeComposition_1.resolveFinancialChargeInclusionPolicyV1)(value.chargeInclusionPolicyRef) === undefined) {
397
415
  return false;
398
416
  }
399
417
  if (value.accountingCurrency.status === 'resolved') {
@@ -424,7 +442,9 @@ const isMember = (value) => {
424
442
  if (!(0, exports.isFinancialDataflowRecordV1)(value) || !(0, exports.isFinancialDataflowIdentityV1)(value.memberScopeId))
425
443
  return false;
426
444
  if (value.status === 'included') {
427
- return (0, exports.hasFinancialDataflowExactFieldsV1)(value, ['memberScopeId', 'baselineId', 'status']) && (0, exports.isFinancialDataflowHashV1)(value.baselineId);
445
+ return ((0, exports.hasFinancialDataflowExactFieldsV1)(value, ['memberScopeId', 'baselineId', 'chargeCompositionId', 'status']) &&
446
+ (0, exports.isFinancialDataflowHashV1)(value.baselineId) &&
447
+ (0, exports.isFinancialDataflowHashV1)(value.chargeCompositionId));
428
448
  }
429
449
  return (value.status === 'unavailable' &&
430
450
  (0, exports.hasFinancialDataflowExactFieldsV1)(value, ['memberScopeId', 'status', 'reasonCode']) &&
@@ -444,15 +464,7 @@ const createCurrentSpendMembershipDigestV1 = (members) => `sha256:${(0, sha256_1
444
464
  exports.createCurrentSpendMembershipDigestV1 = createCurrentSpendMembershipDigestV1;
445
465
  const isCompositionIdentity = (value) => {
446
466
  if (!(0, exports.isFinancialDataflowRecordV1)(value) ||
447
- !(0, exports.hasFinancialDataflowExactFieldsV1)(value, [
448
- 'schemaVersion',
449
- 'contractVersion',
450
- 'coordinate',
451
- 'members',
452
- 'amount',
453
- 'membershipDigest',
454
- 'algorithmVersion',
455
- ]) ||
467
+ !(0, exports.hasFinancialDataflowExactFieldsV1)(value, ['schemaVersion', 'contractVersion', 'coordinate', 'members', 'amount', 'membershipDigest', 'algorithmVersion'], ['chargeSelection']) ||
456
468
  value.schemaVersion !== financialDataflow_1.FINANCIAL_DATAFLOW_SCHEMA_VERSION_V1 ||
457
469
  value.contractVersion !== financialDataflow_1.FINANCIAL_CURRENT_SPEND_COMPOSITION_CONTRACT_VERSION_V1 ||
458
470
  !(0, exports.isFinancialDataflowCoordinateV1)(value.coordinate) ||
@@ -468,11 +480,45 @@ const isCompositionIdentity = (value) => {
468
480
  return false;
469
481
  }
470
482
  const currency = value.coordinate.accountingCurrency.status === 'resolved' ? value.coordinate.accountingCurrency.currencyCode : undefined;
483
+ const isChargeSelection = (selection) => {
484
+ if (!(0, exports.isFinancialDataflowRecordV1)(selection) ||
485
+ !(0, exports.hasFinancialDataflowExactFieldsV1)(selection, [
486
+ 'status',
487
+ 'includedAmount',
488
+ 'excludedAmount',
489
+ 'withheldAmount',
490
+ 'forecastEligibleAmount',
491
+ 'oneTimeAmount',
492
+ 'unknownRecurrenceAmount',
493
+ 'forecastStatus',
494
+ 'currencyCode',
495
+ ], ['reasonCodes', 'forecastReasonCodes']) ||
496
+ (selection.status !== 'available' && selection.status !== 'partial') ||
497
+ (selection.forecastStatus !== 'available' && selection.forecastStatus !== 'partial') ||
498
+ !(0, exports.isFinancialDataflowCurrencyV1)(selection.currencyCode) ||
499
+ ![
500
+ selection.includedAmount,
501
+ selection.excludedAmount,
502
+ selection.withheldAmount,
503
+ selection.forecastEligibleAmount,
504
+ selection.oneTimeAmount,
505
+ selection.unknownRecurrenceAmount,
506
+ ].every(amount => (0, financialValidationPrimitives_1.isCanonicalExactMoney)({ amount, currencyCode: selection.currencyCode })))
507
+ return false;
508
+ return ((selection.status === 'available' ? selection.reasonCodes === undefined : isReasonCodes(selection.reasonCodes)) &&
509
+ (selection.forecastStatus === 'available'
510
+ ? selection.forecastReasonCodes === undefined
511
+ : isReasonCodes(selection.forecastReasonCodes)));
512
+ };
471
513
  if (value.amount.status === 'available') {
472
514
  return (currency !== undefined &&
473
515
  (0, exports.hasFinancialDataflowExactFieldsV1)(value.amount, ['status', 'amount', 'currencyCode']) &&
474
516
  (0, financialValidationPrimitives_1.isCanonicalExactMoney)({ amount: value.amount.amount, currencyCode: value.amount.currencyCode }) &&
475
517
  value.amount.currencyCode === currency &&
518
+ isChargeSelection(value.chargeSelection) &&
519
+ value.chargeSelection.status === 'available' &&
520
+ value.chargeSelection.currencyCode === currency &&
521
+ value.chargeSelection.includedAmount === value.amount.amount &&
476
522
  value.members.length > 0 &&
477
523
  value.members.every(member => member.status === 'included'));
478
524
  }
@@ -482,11 +528,17 @@ const isCompositionIdentity = (value) => {
482
528
  (0, financialValidationPrimitives_1.isCanonicalExactMoney)({ amount: value.amount.knownAmount, currencyCode: value.amount.currencyCode }) &&
483
529
  value.amount.currencyCode === currency &&
484
530
  isReasonCodes(value.amount.reasonCodes) &&
531
+ isChargeSelection(value.chargeSelection) &&
532
+ value.chargeSelection.currencyCode === currency &&
533
+ value.chargeSelection.includedAmount === value.amount.knownAmount &&
485
534
  value.members.some(member => member.status === 'included') &&
486
- (value.members.some(member => member.status === 'unavailable') || value.amount.reasonCodes.includes('coverage-incomplete')));
535
+ (value.members.some(member => member.status === 'unavailable') ||
536
+ value.amount.reasonCodes.includes('coverage-incomplete') ||
537
+ value.chargeSelection.status === 'partial'));
487
538
  }
488
539
  const unresolvedCurrency = value.coordinate.accountingCurrency;
489
540
  return (value.amount.status === 'unavailable' &&
541
+ value.chargeSelection === undefined &&
490
542
  (0, exports.hasFinancialDataflowExactFieldsV1)(value.amount, ['status', 'reasonCodes']) &&
491
543
  isReasonCodes(value.amount.reasonCodes) &&
492
544
  (currency !== undefined || (unresolvedCurrency.status === 'unresolved' && value.amount.reasonCodes.includes(unresolvedCurrency.reasonCode))));
@@ -503,6 +555,19 @@ const canonicalizeCurrentSpendCompositionIdentityV1 = (value) => {
503
555
  },
504
556
  members: [...value.members].sort((left, right) => left.memberScopeId.localeCompare(right.memberScopeId)),
505
557
  amount: value.amount.status === 'available' ? value.amount : { ...value.amount, reasonCodes: [...value.amount.reasonCodes].sort() },
558
+ ...(value.chargeSelection === undefined
559
+ ? {}
560
+ : {
561
+ chargeSelection: {
562
+ ...value.chargeSelection,
563
+ ...(value.chargeSelection.reasonCodes === undefined
564
+ ? {}
565
+ : { reasonCodes: [...value.chargeSelection.reasonCodes].sort() }),
566
+ ...(value.chargeSelection.forecastReasonCodes === undefined
567
+ ? {}
568
+ : { forecastReasonCodes: [...value.chargeSelection.forecastReasonCodes].sort() }),
569
+ },
570
+ }),
506
571
  };
507
572
  return (0, exports.canonicalizeFinancialDataflowJsonV1)(canonical);
508
573
  };
@@ -521,7 +586,7 @@ const isCurrentSpendCompositionV1 = (value) => {
521
586
  'amount',
522
587
  'membershipDigest',
523
588
  'algorithmVersion',
524
- ])) {
589
+ ], ['chargeSelection'])) {
525
590
  return false;
526
591
  }
527
592
  const { compositionId, ...identity } = value;
@@ -537,66 +602,119 @@ const hasCompatibleBaselineCoordinate = (coordinate, baseline) => baseline.provi
537
602
  (0, costComposition_1.toCanonicalEstimateLensV1)(baseline.estimateLens) === coordinate.estimateLens &&
538
603
  baseline.requestedCurrencyCode === coordinate.requestedCurrencyCode;
539
604
  /** Proves that composition membership and money reconcile to exact V2 baseline envelopes. */
540
- const isCurrentSpendCompositionCompatibleV1 = (composition, baselines) => {
605
+ const isCurrentSpendCompositionCompatibleV1 = (composition, baselines, chargeCompositions) => {
541
606
  if (!(0, exports.isCurrentSpendCompositionV1)(composition) ||
542
607
  !Array.isArray(baselines) ||
543
608
  baselines.length !== composition.members.length ||
544
609
  baselines.length > exports.FINANCIAL_DATAFLOW_LIMITS_V1.maximumMembers ||
545
- !baselines.every(financialScopeBaselineValidation_1.isFinancialScopeBaselineEnvelopeV2)) {
610
+ !baselines.every(financialScopeBaselineValidation_1.isFinancialScopeBaselineEnvelopeV2) ||
611
+ !Array.isArray(chargeCompositions) ||
612
+ !chargeCompositions.every(financialChargeCompositionValidation_1.isFinancialChargeCompositionV1)) {
546
613
  return false;
547
614
  }
548
615
  const typedBaselines = baselines;
616
+ const typedChargeCompositions = chargeCompositions;
617
+ const chargeCompositionById = new Map(typedChargeCompositions.map(value => [value.chargeCompositionId, value]));
618
+ if (chargeCompositionById.size !== typedChargeCompositions.length)
619
+ return false;
549
620
  const baselineByScopeId = new Map(typedBaselines.map(baseline => [baseline.scopeId, baseline]));
550
621
  if (baselineByScopeId.size !== typedBaselines.length ||
551
622
  new Set(typedBaselines.filter(baseline => baseline.status === 'available').map(baseline => baseline.baselineId)).size !==
552
623
  typedBaselines.filter(baseline => baseline.status === 'available').length) {
553
624
  return false;
554
625
  }
555
- const includedAmounts = [];
626
+ const includedSelections = [];
556
627
  const expectedReasonCodes = new Set();
557
628
  for (const member of composition.members) {
558
629
  const baseline = baselineByScopeId.get(member.memberScopeId);
559
630
  if (baseline === undefined || !hasCompatibleBaselineCoordinate(composition.coordinate, baseline))
560
631
  return false;
561
632
  if (member.status === 'included') {
562
- if (baseline.status !== 'available' || member.baselineId !== baseline.baselineId)
633
+ if (baseline.status !== 'available' ||
634
+ baseline.baselineKind !== 'owner' ||
635
+ member.baselineId !== baseline.baselineId ||
636
+ (0, exports.canonicalizeFinancialDataflowJsonV1)(baseline.chargeInclusionPolicyRef) !==
637
+ (0, exports.canonicalizeFinancialDataflowJsonV1)(financialChargeComposition_1.AZURE_BILLED_ALL_CHARGES_POLICY_V1.policyRef))
638
+ return false;
639
+ const chargeComposition = chargeCompositionById.get(member.chargeCompositionId);
640
+ if (chargeComposition === undefined ||
641
+ chargeComposition.baselineId !== baseline.baselineId ||
642
+ chargeComposition.ownerScopeId !== baseline.scopeId ||
643
+ chargeComposition.period.windowKind !== baseline.period.windowKind ||
644
+ (0, exports.canonicalizeFinancialDataflowJsonV1)(chargeComposition.period.requested) !== (0, exports.canonicalizeFinancialDataflowJsonV1)(baseline.period.requested) ||
645
+ chargeComposition.costBasis !== baseline.costBasis ||
646
+ chargeComposition.estimateLens !== baseline.estimateLens ||
647
+ chargeComposition.accountingCurrencyCode !== baseline.total.currencyCode ||
648
+ chargeComposition.reconciliation.sourceTotal !== baseline.total.amount)
563
649
  return false;
564
650
  if (composition.coordinate.accountingCurrency.status === 'resolved' &&
565
651
  baseline.total.currencyCode !== composition.coordinate.accountingCurrency.currencyCode) {
566
652
  return false;
567
653
  }
568
- includedAmounts.push(baseline.total.amount);
654
+ includedSelections.push((0, financialChargeCompositionValidation_1.selectFinancialChargesV1)(chargeComposition, composition.coordinate.chargeInclusionPolicyRef));
655
+ includedSelections[includedSelections.length - 1].reasonCodes?.forEach(reason => expectedReasonCodes.add(reason));
569
656
  if (baseline.status === 'available' && !(0, financialScopeBaseline_1.isCompleteFinancialBaselinePeriodV2)(baseline.period)) {
570
657
  expectedReasonCodes.add('coverage-incomplete');
571
658
  }
572
659
  continue;
573
660
  }
574
- if (baseline.status !== 'unavailable' || member.reasonCode !== baseline.unavailableReason)
575
- return false;
576
- expectedReasonCodes.add(baseline.unavailableReason);
661
+ if (baseline.status === 'unavailable') {
662
+ if (member.reasonCode !== baseline.unavailableReason)
663
+ return false;
664
+ expectedReasonCodes.add(baseline.unavailableReason);
665
+ }
666
+ else {
667
+ const expectedDerivedReason = baseline.baselineKind === 'aggregate'
668
+ ? 'charge-composition-requires-owner-baseline'
669
+ : 'charge-composition-unavailable';
670
+ if (member.reasonCode !== expectedDerivedReason)
671
+ return false;
672
+ expectedReasonCodes.add(expectedDerivedReason);
673
+ }
577
674
  }
578
675
  if (composition.coordinate.accountingCurrency.status === 'unresolved') {
579
676
  expectedReasonCodes.add(composition.coordinate.accountingCurrency.reasonCode);
580
677
  }
678
+ if (typedChargeCompositions.length !== includedSelections.length)
679
+ return false;
581
680
  const hasExpectedReasonCodes = (reasonCodes) => reasonCodes.length === expectedReasonCodes.size && reasonCodes.every(reasonCode => expectedReasonCodes.has(reasonCode));
582
681
  if (composition.coordinate.accountingCurrency.status === 'unresolved') {
583
682
  return composition.amount.status === 'unavailable' && hasExpectedReasonCodes(composition.amount.reasonCodes);
584
683
  }
585
- if (includedAmounts.length === 0) {
684
+ if (includedSelections.length === 0) {
586
685
  return composition.amount.status === 'unavailable' && hasExpectedReasonCodes(composition.amount.reasonCodes);
587
686
  }
588
- let includedTotal;
687
+ let aggregateSelection;
589
688
  try {
590
- includedTotal = (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedAmounts));
689
+ const reasonCodes = new Set(includedSelections.flatMap(selection => selection.reasonCodes ?? []));
690
+ const forecastReasonCodes = new Set(includedSelections.flatMap(selection => selection.forecastReasonCodes ?? []));
691
+ aggregateSelection = {
692
+ status: includedSelections.some(selection => selection.status === 'partial') ? 'partial' : 'available',
693
+ includedAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.includedAmount))),
694
+ excludedAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.excludedAmount))),
695
+ withheldAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.withheldAmount))),
696
+ forecastEligibleAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.forecastEligibleAmount))),
697
+ oneTimeAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.oneTimeAmount))),
698
+ unknownRecurrenceAmount: (0, exactDecimal_1.formatExactDecimalValue)((0, exactDecimal_1.sumCanonicalDecimals)(includedSelections.map(selection => selection.unknownRecurrenceAmount))),
699
+ forecastStatus: includedSelections.some(selection => selection.forecastStatus === 'partial') ? 'partial' : 'available',
700
+ currencyCode: composition.coordinate.accountingCurrency.currencyCode,
701
+ ...(reasonCodes.size === 0 ? {} : { reasonCodes: [...reasonCodes].sort() }),
702
+ ...(forecastReasonCodes.size === 0
703
+ ? {}
704
+ : { forecastReasonCodes: [...forecastReasonCodes].sort() }),
705
+ };
591
706
  }
592
707
  catch {
593
708
  return false;
594
709
  }
595
- if (includedAmounts.length === composition.members.length && expectedReasonCodes.size === 0) {
596
- return composition.amount.status === 'available' && composition.amount.amount === includedTotal;
710
+ const sameSelection = (0, exports.canonicalizeFinancialDataflowJsonV1)(composition.chargeSelection) === (0, exports.canonicalizeFinancialDataflowJsonV1)(aggregateSelection);
711
+ if (!sameSelection)
712
+ return false;
713
+ if (includedSelections.length === composition.members.length && expectedReasonCodes.size === 0) {
714
+ return composition.amount.status === 'available' && composition.amount.amount === aggregateSelection.includedAmount;
597
715
  }
598
716
  return (composition.amount.status === 'partial' &&
599
- composition.amount.knownAmount === includedTotal &&
717
+ composition.amount.knownAmount === aggregateSelection.includedAmount &&
600
718
  hasExpectedReasonCodes(composition.amount.reasonCodes));
601
719
  };
602
720
  exports.isCurrentSpendCompositionCompatibleV1 = isCurrentSpendCompositionCompatibleV1;
@@ -1 +1 @@
1
- {"version":3,"file":"financialDataflowValidation.js","sourceRoot":"","sources":["../../src/azure/financialDataflowValidation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"financialDataflowValidation.js","sourceRoot":"","sources":["../../src/azure/financialDataflowValidation.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { CostBasis, FinancialEstimateLensV1 } from './costComposition';
2
2
  import type { FinancialDataflowScopeKindV1, FinancialDataflowScopeSelectorV1 } from './financialDataflow';
3
+ import type { FinancialChargeInclusionPolicyRefV2 } from './financialScopeBaseline';
3
4
  import type { CanonicalExactMoney } from './financialValidationPrimitives';
4
5
  export declare const FINANCIAL_POLICY_DEFINITION_CONTRACT_VERSION_V1: "financial-policy-definition/v1";
5
6
  export declare const FINANCIAL_POLICY_EVALUATION_CONTRACT_VERSION_V1: "financial-policy-evaluation/v1";
@@ -24,6 +25,8 @@ export interface FinancialPolicyCoordinateRequestV1 {
24
25
  };
25
26
  costBasis: CostBasis;
26
27
  estimateLens: FinancialEstimateLensV1;
28
+ /** Explicit value-affecting charge source policy. Existing definitions migrate to all-charge. */
29
+ chargeInclusionPolicyRef: FinancialChargeInclusionPolicyRefV2;
27
30
  /** Required match condition; this field never authorizes FX conversion or a caller currency default. */
28
31
  requiredAccountingCurrencyCode: string;
29
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"financialPolicy.d.ts","sourceRoot":"","sources":["../../src/azure/financialPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"financialPolicy.d.ts","sourceRoot":"","sources":["../../src/azure/financialPolicy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"financialPolicy.js","sourceRoot":"","sources":["../../src/azure/financialPolicy.ts"],"names":[],"mappings":";;;AAIa,QAAA,+CAA+C,GAAG,gCAAyC,CAAC;AAC5F,QAAA,+CAA+C,GAAG,gCAAyC,CAAC"}
1
+ {"version":3,"file":"financialPolicy.js","sourceRoot":"","sources":["../../src/azure/financialPolicy.ts"],"names":[],"mappings":";;;AAKa,QAAA,+CAA+C,GAAG,gCAAyC,CAAC;AAC5F,QAAA,+CAA+C,GAAG,gCAAyC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"financialPolicyValidation.d.ts","sourceRoot":"","sources":["../../src/azure/financialPolicyValidation.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,mDAAmD,EACxD,KAAK,mCAAmC,EACxC,KAAK,2CAA2C,EAChD,KAAK,2BAA2B,EAEjC,MAAM,mBAAmB,CAAC;AA0J3B,eAAO,MAAM,qDAAqD,GAChE,OAAO,OAAO,KACb,KAAK,IAAI,mDA0DX,CAAC;AAEF,eAAO,MAAM,uDAAuD,GAAI,OAAO,mDAAmD,KAAG,MAmCpI,CAAC;AAEF,eAAO,MAAM,2CAA2C,GAAI,OAAO,mDAAmD,KAAG,MACjC,CAAC;AAEzF,eAAO,MAAM,qCAAqC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mCAa/E,CAAC;AA6DF,eAAO,MAAM,+CAA+C,GAAI,OAAO,2CAA2C,KAAG,MAUpH,CAAC;AAEF,eAAO,MAAM,mCAAmC,GAAI,OAAO,2CAA2C,KAAG,MACzB,CAAC;AAEjF,eAAO,MAAM,iDAAiD,GAAI,cAAc,MAAM,KAAG,MAGxF,CAAC;AAEF,eAAO,MAAM,8CAA8C,GAAI,cAAc,MAAM,KAAG,MAGrF,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,2BAsCvE,CAAC;AA2FF,+FAA+F;AAC/F,eAAO,MAAM,uCAAuC,GAClD,YAAY,OAAO,EACnB,YAAY,OAAO,EACnB,yBAAyB,OAAO,EAChC,sBAAsB,OAAO,KAC5B,OAmLF,CAAC"}
1
+ {"version":3,"file":"financialPolicyValidation.d.ts","sourceRoot":"","sources":["../../src/azure/financialPolicyValidation.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,mDAAmD,EACxD,KAAK,mCAAmC,EACxC,KAAK,2CAA2C,EAChD,KAAK,2BAA2B,EAEjC,MAAM,mBAAmB,CAAC;AA4J3B,eAAO,MAAM,qDAAqD,GAChE,OAAO,OAAO,KACb,KAAK,IAAI,mDA0DX,CAAC;AAEF,eAAO,MAAM,uDAAuD,GAAI,OAAO,mDAAmD,KAAG,MAmCpI,CAAC;AAEF,eAAO,MAAM,2CAA2C,GAAI,OAAO,mDAAmD,KAAG,MACjC,CAAC;AAEzF,eAAO,MAAM,qCAAqC,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,mCAa/E,CAAC;AA6DF,eAAO,MAAM,+CAA+C,GAAI,OAAO,2CAA2C,KAAG,MAUpH,CAAC;AAEF,eAAO,MAAM,mCAAmC,GAAI,OAAO,2CAA2C,KAAG,MACzB,CAAC;AAEjF,eAAO,MAAM,iDAAiD,GAAI,cAAc,MAAM,KAAG,MAGxF,CAAC;AAEF,eAAO,MAAM,8CAA8C,GAAI,cAAc,MAAM,KAAG,MAGrF,CAAC;AAEF,eAAO,MAAM,6BAA6B,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI,2BAsCvE,CAAC;AA2FF,+FAA+F;AAC/F,eAAO,MAAM,uCAAuC,GAClD,YAAY,OAAO,EACnB,YAAY,OAAO,EACnB,yBAAyB,OAAO,EAChC,sBAAsB,OAAO,KAC5B,OAqLF,CAAC"}
@@ -4,6 +4,7 @@ exports.isFinancialPolicyEvaluationCompatibleV1 = exports.isFinancialPolicyEvalu
4
4
  const exactDecimal_1 = require("../common/exactDecimal");
5
5
  const sha256_1 = require("../common/sha256");
6
6
  const financialValidationPrimitives_1 = require("./financialValidationPrimitives");
7
+ const financialChargeCompositionValidation_1 = require("./financialChargeCompositionValidation");
7
8
  const financialPolicy_1 = require("./financialPolicy");
8
9
  const financialDataflowValidation_1 = require("./financialDataflowValidation");
9
10
  const financialDataflowValidation_2 = require("./financialDataflowValidation");
@@ -88,6 +89,7 @@ const isCoordinateRequest = (value, companyId) => (0, financialDataflowValidatio
88
89
  'period',
89
90
  'costBasis',
90
91
  'estimateLens',
92
+ 'chargeInclusionPolicyRef',
91
93
  'requiredAccountingCurrencyCode',
92
94
  ]) &&
93
95
  value.provider === 'azure' &&
@@ -110,6 +112,7 @@ const isCoordinateRequest = (value, companyId) => (0, financialDataflowValidatio
110
112
  COST_BASES.has(value.costBasis) &&
111
113
  typeof value.estimateLens === 'string' &&
112
114
  ESTIMATE_LENSES.has(value.estimateLens) &&
115
+ (0, financialChargeCompositionValidation_1.isFinancialChargeInclusionPolicyRefV1)(value.chargeInclusionPolicyRef) &&
113
116
  (0, financialDataflowValidation_1.isFinancialDataflowCurrencyV1)(value.requiredAccountingCurrencyCode) &&
114
117
  (0, financialDataflowValidation_1.isFinancialDataflowIdentityV1)(companyId);
115
118
  const isCriteria = (value, currencyCode) => {
@@ -430,6 +433,8 @@ const isFinancialPolicyEvaluationCompatibleV1 = (evaluation, definition, current
430
433
  request.scope.scopeId !== coordinate.scope.scopeId ||
431
434
  request.costBasis !== coordinate.costBasis ||
432
435
  request.estimateLens !== coordinate.estimateLens ||
436
+ (0, financialDataflowValidation_1.canonicalizeFinancialDataflowJsonV1)(request.chargeInclusionPolicyRef) !==
437
+ (0, financialDataflowValidation_1.canonicalizeFinancialDataflowJsonV1)(coordinate.chargeInclusionPolicyRef) ||
433
438
  coordinate.requestedCurrencyCode !== request.requiredAccountingCurrencyCode ||
434
439
  (currency === undefined
435
440
  ? currentSpendComposition.amount.status !== 'unavailable'