# Component Review Register Last updated: 2026-09-11 | Component | Scope | Status | Date reviewed | Next steps | Notes | |---|---|---|---|---|---| | `SaCommonVS.sln` | .NET 8/.NET 10 migration build and tests | Multi-target stage complete; passing with warnings | 2026-09-10 | Address the dependency and .NET 10 warnings, then migrate BusinessMgr against the validated Common targets. | Five non-MAUI libraries and `SacsCoreUnitTests` target `net8.0;net10.0`. The supported solution builds with no errors, and 94 of 94 tests pass on each target. BusinessMgr still builds successfully against the .NET 8 outputs. MAUI remains on .NET 9 and is tracked in its project-specific docs. | | `SacsMobileXamarin` | Migration disposition | Isolated; retained for reference | 2026-09-10 | Keep outside the supported build unless a separately scoped resurrection or migration is approved. | Source is unchanged and available through `SaCommonVS.LegacyXamarin.sln`; see `docs/legacy-xamarin.md`. | | [`SacsMobileMaui`](../SacsMobileMaui/docs/component-reviews.md) | Project | .NET 10 migration complete; tracked in project docs | 2026-09-11 | Migrate Sandtrap and Sandalwood, validate Apple targets on a Mac, and continue API cleanup in the project tracker. | The shared project now targets .NET 10 with MAUI 10.0.20; Windows and Android Debug builds pass with zero errors. | | `SacsStandardBase/Base/Procs/SaProcess_Base.cs` | Class | In progress | 2026-09-09 | Complete the Process Base actions recorded in `topics.md`; review derived processes separately for cooperative polling. | Lifecycle state ownership and cancellation lock ordering were changed. Five focused tests pass. Remaining concerns include mixed sync/async execution, durable cancellation outcome, cancellation exception handling, disposal, and status synchronization. | | `SacsStandardBase/Base/Email/SaEmailConsole.cs` | Class | Reviewed; action required | 2026-09-08 | Restore SMTP certificate validation and require the configured TLS mode. Add invalid-certificate and unavailable-TLS tests. | The current SMTP client accepts every server certificate. | | `SacsStandardBase/Base/Helpers/SacsEncryptionHelper.cs` and `SacsStandardBase/Base/Data/SacsAesIvCrypter.cs` | Classes | Reviewed; action required | 2026-09-08 | Design a versioned authenticated-encryption format with legacy migration and tamper tests. | Current CBC encryption is unauthenticated; password-based key derivation uses a fixed salt and low iteration count. |