docs: add IDEA shadow deployment and rollback guide
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
|
||||
**Goal:** Build a clean `origin/main`-based branch that observes inbound and outbound allocation with the Java algorithm while preserving every Legacy decision and business write.
|
||||
|
||||
**Architecture:** Reuse the existing `fortucky-algorithm` planner as an internal module, but expose it to WMS only through a fail-open shadow gateway. The gateway plans in a separate timed transaction; the original Legacy procedures remain unchanged and authoritative. A reduced SQL package installs only read-model and diagnostic objects.
|
||||
**Architecture:** Reuse the existing `fortucky-algorithm` planner as an internal module, but expose it to WMS only through a fail-open shadow gateway. The gateway plans in a separate timed `READ_UNCOMMITTED` transaction; the original Legacy procedures remain unchanged and authoritative. A reduced SQL package installs only read-model and diagnostic objects, creates no Legacy-table triggers, and refreshes its read model in full before planning.
|
||||
|
||||
**Tech Stack:** Java 17, Spring Boot, Spring JDBC transactions, MyBatis, SQL Server 2016, JUnit 5, Mockito, AssertJ, Maven 3.9.11.
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
- Legacy procedures execute exactly once and their current response construction remains authoritative.
|
||||
- Shadow observation is disabled by default and fails open on every runtime error.
|
||||
- Shadow database scripts never insert, update, or delete WMS business rows.
|
||||
- Shadow database scripts never create triggers on WMS business tables.
|
||||
|
||||
---
|
||||
|
||||
@@ -113,10 +114,10 @@
|
||||
- Test: `fortucky-algorithm/src/test/java/com/ruoyi/algorithm/repository/ShadowSqlServerMigrationScriptTest.java`
|
||||
|
||||
**Interfaces:**
|
||||
- Produces: read-model tables/views/procedures, decision log, dirty-lane queue, and three enqueue-only business-table triggers.
|
||||
- Produces: read-model tables/views/procedures and decision log; planning performs a full warehouse-scoped read-model refresh.
|
||||
- Excludes: ACTIVE mutation procedures and WMS business-table DML.
|
||||
|
||||
- [ ] Write static SQL tests with an allow-list for tables, views, procedures, and triggers; reject tidy/workflow/replay/reservation mutation names and business-table DML.
|
||||
- [ ] Write static SQL tests with an allow-list for tables, views, and procedures; reject all triggers, dirty queues, tidy/workflow/replay/reservation mutation names, and business-table DML.
|
||||
- [ ] Add an install/uninstall symmetry test and a test requiring initial synchronization plus diagnostic queries.
|
||||
- [ ] Run focused tests and confirm RED because scripts are absent.
|
||||
- [ ] Build the reduced scripts from the reviewed SQL Server 2016-compatible read-model portions.
|
||||
|
||||
Reference in New Issue
Block a user