TenantAtlas/apps/platform/app/Services/TenantConfiguration
ahmido ff1a545c31 Spec 437: Exchange comparable promotion slice 1 (#504)
## Summary
- add Spec 437 package for Exchange comparable promotion slice 1
- add ExchangePowerShellComparablePayloadBuilder for normalized-payload-only comparable artifacts
- add focused Pest unit/feature coverage for comparable safety, determinism, redaction, and no product-surface promotion

## Validation
- cd apps/platform && ./vendor/bin/sail bin pint --dirty --format agent: PASS
- cd apps/platform && ./vendor/bin/sail artisan test --filter=Spec437 --compact: failed with Symfony Process signal 9
- cd apps/platform && php artisan test --filter=Spec437 --compact: PASS, 34 tests / 225 assertions
- git diff --check: PASS

## Product Surface / Deployment
- UI impact: N/A - no rendered UI surface changed
- Browser proof: N/A - no rendered UI surface changed
- Destructive/high-impact actions: none
- Assets: none; no filament:assets requirement introduced
- Deployment impact: no env vars, migrations, queues, scheduler, storage, assets, routes, jobs, listeners, commands, or Dokploy runtime behavior changes

Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de>
Reviewed-on: #504
2026-07-09 20:32:52 +00:00
..
CanonicalIdentityResolver.php feat: complete m365 generic evidence coverage pack (#487) 2026-06-27 12:24:00 +00:00
CanonicalIdentityResult.php feat: implement canonical identity engine (#484) 2026-06-26 06:50:25 +00:00
ClaimGuard.php feat: add Exchange PowerShell adapter contract slice 1 (#497) 2026-07-05 12:08:16 +00:00
CoverageCaptureOutcomeSummarizer.php feat: add generic content-backed coverage capture (#482) 2026-06-25 19:55:52 +00:00
CoverageEvidenceWriter.php feat: add Exchange evidence capture adapter guard (#501) 2026-07-08 10:46:05 +00:00
CoverageIdentityStrategyRegistry.php feat: add Exchange PowerShell adapter contract slice 1 (#497) 2026-07-05 12:08:16 +00:00
CoveragePayloadRedactor.php feat: complete spec 421 Entra comparable/renderable pack (#488) 2026-06-27 22:12:01 +00:00
CoverageResourceIdentityEvaluator.php feat: implement canonical identity engine (#484) 2026-06-26 06:50:25 +00:00
CoverageResourceUpserter.php feat: implement canonical identity engine (#484) 2026-06-26 06:50:25 +00:00
CoverageSecondaryKeyBuilder.php feat: implement canonical identity engine (#484) 2026-06-26 06:50:25 +00:00
CoverageSourceContractDecision.php feat: implement spec 427 source contract enablement (#494) 2026-07-03 23:12:45 +00:00
CoverageSourceContractResolver.php feat: add Exchange PowerShell adapter contract slice 1 (#497) 2026-07-05 12:08:16 +00:00
CoverageV2ReadinessReadModel.php feat: complete spec 425 enta certified compare pack (#492) 2026-07-01 23:27:16 +00:00
DisabledExchangePowerShellCommandRunner.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
EntraCertifiedComparePackEvaluator.php feat: complete spec 425 enta certified compare pack (#492) 2026-07-01 23:27:16 +00:00
EntraCertifiedComparePackResult.php feat: complete spec 425 enta certified compare pack (#492) 2026-07-01 23:27:16 +00:00
EntraComparablePayloadNormalizer.php feat: complete spec 425 enta certified compare pack (#492) 2026-07-01 23:27:16 +00:00
EntraCoverageComparator.php feat: complete spec 424 security defaults content-backed comparable support (#491) 2026-07-01 14:41:24 +00:00
EntraRenderableSummaryBuilder.php feat: complete spec 425 enta certified compare pack (#492) 2026-07-01 23:27:16 +00:00
ExchangeInboundConnectorEvidenceNormalizer.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
ExchangePowerShellCaptureEligibilityGate.php feat: add Exchange evidence capture adapter guard (#501) 2026-07-08 10:46:05 +00:00
ExchangePowerShellCommandContract.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
ExchangePowerShellCommandContracts.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
ExchangePowerShellCommandRunner.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
ExchangePowerShellComparablePayloadBuilder.php Spec 437: Exchange comparable promotion slice 1 (#504) 2026-07-09 20:32:52 +00:00
ExchangePowerShellContentOnlyEvidenceGuard.php feat: add Exchange evidence capture adapter guard (#501) 2026-07-08 10:46:05 +00:00
ExchangePowerShellCredentialReferenceResolver.php feat: add Exchange credential permission evidence readiness (#500) 2026-07-07 23:55:32 +00:00
ExchangePowerShellEvidenceCaptureAdapter.php Spec 436: Exchange content-backed evidence promotion (#503) 2026-07-09 14:03:10 +00:00
ExchangePowerShellEvidenceNormalizer.php Spec 436: Exchange content-backed evidence promotion (#503) 2026-07-09 14:03:10 +00:00
ExchangePowerShellGateResult.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellHashInputBuilder.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
ExchangePowerShellIdentityEvidenceGate.php feat: add Exchange evidence capture adapter guard (#501) 2026-07-08 10:46:05 +00:00
ExchangePowerShellInvocationContext.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
ExchangePowerShellInvocationGate.php feat: add Exchange credential permission evidence readiness (#500) 2026-07-07 23:55:32 +00:00
ExchangePowerShellInvocationReadinessEvaluator.php feat: add Exchange credential permission evidence readiness (#500) 2026-07-07 23:55:32 +00:00
ExchangePowerShellInvocationResult.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
ExchangePowerShellNormalizerReadiness.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
ExchangePowerShellOutputGuard.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellPermissionEvidenceEvaluator.php feat: add Exchange credential permission evidence readiness (#500) 2026-07-07 23:55:32 +00:00
ExchangePowerShellProcessCommand.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellProcessCommandBuilder.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellProcessCommandBuilderResult.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellProcessExecutor.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellProcessResult.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellProductionRunner.php feat: add Exchange credential permission evidence readiness (#500) 2026-07-07 23:55:32 +00:00
ExchangePowerShellRuntimePolicy.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellRuntimeReadinessChecker.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
ExchangePowerShellStructuredOutputEnvelope.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
ExchangePowerShellTargetEvidenceNormalizer.php Spec 436: Exchange content-backed evidence promotion (#503) 2026-07-09 14:03:10 +00:00
ExchangeRemoteDomainEvidenceNormalizer.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
ExchangeTeamsComparablePayloadNormalizer.php feat: implement Exchange Teams evidence identity readiness (#493) 2026-07-03 11:43:11 +00:00
ExchangeTeamsCoverageComparator.php feat: complete spec 422 exchange teams comparable renderable pack (#489) 2026-06-30 04:20:13 +00:00
ExchangeTeamsRenderableSummaryBuilder.php feat: complete spec 422 exchange teams comparable renderable pack (#489) 2026-06-30 04:20:13 +00:00
ExchangeTransportRuleEvidenceNormalizer.php Spec 435: Exchange structured output readiness (#502) 2026-07-08 14:33:23 +00:00
FakeExchangePowerShellCommandRunner.php feat: add Exchange PowerShell invocation gate (#498) 2026-07-07 15:23:29 +00:00
FakeExchangePowerShellProcessExecutor.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00
GenericContentEvidenceCaptureService.php feat: implement Exchange Teams evidence identity readiness (#493) 2026-07-03 11:43:11 +00:00
GenericPayloadNormalizer.php feat: implement Exchange Teams evidence identity readiness (#493) 2026-07-03 11:43:11 +00:00
IdentityConflictDiagnosticsBuilder.php feat: implement canonical identity engine (#484) 2026-06-26 06:50:25 +00:00
ResourceTypeRegistry.php feat: add Exchange PowerShell adapter contract slice 1 (#497) 2026-07-05 12:08:16 +00:00
SecurityComplianceComparablePayloadNormalizer.php feat: complete spec 423 security compliance readiness pack (#490) 2026-06-30 16:03:01 +00:00
SecurityComplianceCoverageComparator.php feat: complete spec 423 security compliance readiness pack (#490) 2026-06-30 16:03:01 +00:00
SecurityComplianceReadinessEvaluator.php feat: complete spec 423 security compliance readiness pack (#490) 2026-06-30 16:03:01 +00:00
SecurityComplianceRenderableSummaryBuilder.php feat: complete spec 423 security compliance readiness pack (#490) 2026-06-30 16:03:01 +00:00
StartTenantConfigurationCapture.php feat: add generic content-backed coverage capture (#482) 2026-06-25 19:55:52 +00:00
SupportedScopeResolver.php feat: add Exchange PowerShell adapter contract slice 1 (#497) 2026-07-05 12:08:16 +00:00
SymfonyExchangePowerShellProcessExecutor.php feat: add Exchange PowerShell production runner gate (#499) 2026-07-07 18:34:18 +00:00