# JDE Scoping Tool Migration ## Overview Migration of legacy .NET Framework 4.8 "LotFinder" application to .NET 10. ## Source - **Legacy Code**: `OLD/` - .NET Framework 4.8 (read-only reference) - **New Code**: `NEW/` - .NET 10 solution (build target) ## System Purpose A manufacturing/ERP search tool that: - Caches data from JDE (Oracle) and CMS (Sybase) into SQL Server - Allows complex searches across work orders, lots, items, operators, and work centers - Processes searches asynchronously and exports results to Excel - Provides real-time status updates via SignalR ## Migration Goals - Single .NET 10 service (combines web app + worker service) - Blazor WebAssembly UI with Radzen components (replaces ASP.NET MVC + Kendo) - Modern ASP.NET Core SignalR - Interface-based authentication (LDAP in prod, fake auth in dev) - Interface-based data sources (Oracle in prod, file-based in dev) - DbUp for database schema management ## Constraints - Preserve existing query logic and data models - Maintain compatibility with JDE/CMS/SQL Server data sources - Keep search criteria and Excel export formats consistent - No FluentAssertions (paid) - use Shouldly for tests ## Spec Organization Specifications are organized by functional area: | Spec | Purpose | Legacy Source | |------|---------|---------------| | domain-models | Entity definitions | DataModel/Models/*.cs | | database-schema | SQL Server tables for DbUp | Database/*.sql | | data-access | JDE/CMS/SQL repositories | DataModel/Process/*.cs | | data-sync | Cache refresh scheduling | WorkerService/Process/UpdateProcessor*.cs | | search-processing | Criteria and query building | WorkerService/Models/Reporting/*.cs | | excel-export | Result formatting | WorkerService/Process/ExcelWriter.cs | | web-api-auth | API endpoints and authentication | WebInterface/Controllers/*.cs | ## Execution Plan See `PLANS/legacy-spec-capture-plan.md` for: - Session-by-session workflow - Detailed checklists per spec - Codex MCP review process ## Architecture Reference See `DOCUMENTATION/Architecture/` for: - Solution structure - Component dependencies - Interface patterns (data sources, authentication) - Database migration approach (DbUp)