[CLAUDE] Scripts Docs: Chunk T5+T6 — Final DELETE + verify NO re-seed loop (Plan T proven active)
All checks were successful
Deploy SOLUTION_ERP / build-deploy (push) Successful in 3m15s

Post-Plan T deploy Run #207 sha=0b97840 PASS — DemoSeed:Disabled flag
applied prod via appsettings.json (commit qua git, override
appsettings.Production.json gitignored).

T5 — Final DELETE sau flag deploy:
- scripts/plan-t5-final-cleanup.sql upload qua scp + sqlcmd -i
- 3 TRANSACTION DELETE: 4 PE + 1 V2 + 2 V1 = 7 rows direct + cascade child
- Post-state: PE=0 + V2=0 + V1=0 + Steps cascade=0 + Levels cascade=0

T6 — Verify NO re-seed loop (FORCE IIS recycle test):
- Restart-WebAppPool SolutionErp-Api → app pool Started
- Wait BE healthy (curl auth login 200)
- sqlcmd verify post-recycle DB state:
  * PE=0  NO re-seed
  * V2 workflows=0  NO re-seed
  * V1 workflows=0  NO re-seed
  * Users=33  preserved (SeedDemoUsers KEEP)
  * Suppliers=19  preserved (SeedDemoMasterData KEEP)
  * Projects=9  preserved (SeedDemoMasterData KEEP)
  * Contracts=7  preserved (bro chưa request xóa)

→ DemoSeed:Disabled flag PROVEN active end-to-end. DbInitializer skip 5
method seed, KHÔNG còn re-seed contaminate sau mỗi deploy.

Cumulative Plan R + S + T cleanup:
- R: 35 PE + 17 V2 + 4 V1 + ~600 cascade (52 + 600 = 652 rows)
- S: 4 workflow + cascade (4 + ~20 = 24 rows)
- T5: 7 rows direct + cascade child (~7 + ~30 = 37 rows)
- T flag: DbInitializer permanent disable demo seed
- TOTAL: ~713 rows wiped + flag persist active

Stats final S23 t10:
- 31 mig · 59 tables · ~145 endpoints · 34 FE pages
- 111 test unchanged · 47 gotcha · 20 memory · 6 skills
- 4 sub-agents · backup rollback ready
- **0 PE + 0 workflow + flag disable seed** UAT permanent clean slate

Bro Designer setup workflow mới from scratch khi UAT continue — KHÔNG còn
auto re-seed contaminate. Plan B Contract V2 wire next HIGH priority.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
pqhuy1987
2026-05-15 15:14:39 +07:00
parent 0b97840674
commit 7b7b28f2cd
3 changed files with 86 additions and 2 deletions

View File

@ -0,0 +1,81 @@
-- Plan T5 S23 t10 (2026-05-15) — Final cleanup sau khi DemoSeed:Disabled deploy
-- Bro request: "các cái demo quy trình cũ -> xóa hết luôn đi nhé"
-- State trước T5: 4 PE + 2 V1 + 1 V2 (re-seeded sau Plan R+S do DbInitializer)
-- Backup rollback: C:\Backup\SolutionErp_pre_cleanup_2026-05-15.bak (Plan R, 18.5MB)
-- Sau T5 + Plan T flag active: re-seed KHÔNG còn → permanent clean slate
USE SolutionErp;
GO
SET QUOTED_IDENTIFIER ON;
SET ANSI_NULLS ON;
GO
PRINT '=== Plan T5 — Final cleanup ALL workflow + PE START ===';
PRINT 'Pre-state:';
SELECT 'PE total' AS Entity, COUNT(*) AS Cnt FROM PurchaseEvaluations
UNION ALL SELECT 'V2 workflows', COUNT(*) FROM ApprovalWorkflows
UNION ALL SELECT 'V1 workflows', COUNT(*) FROM PurchaseEvaluationWorkflowDefinitions
UNION ALL SELECT 'Contracts', COUNT(*) FROM Contracts;
PRINT '';
PRINT '=== Step 1: DELETE ALL PE (cascade child) ===';
BEGIN TRY
BEGIN TRANSACTION DeleteAllPE;
DELETE FROM PurchaseEvaluations;
DECLARE @PeCnt INT = @@ROWCOUNT;
PRINT 'PE deleted: ' + CAST(@PeCnt AS NVARCHAR(10));
COMMIT TRANSACTION DeleteAllPE;
PRINT 'PE COMMIT OK';
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION DeleteAllPE;
PRINT 'PE FAILED: ' + ERROR_MESSAGE();
THROW;
END CATCH;
PRINT '';
PRINT '=== Step 2: DELETE ALL V2 workflows (cascade Steps + Levels) ===';
BEGIN TRY
BEGIN TRANSACTION DeleteAllV2;
DELETE FROM ApprovalWorkflows;
DECLARE @V2Cnt INT = @@ROWCOUNT;
PRINT 'V2 deleted: ' + CAST(@V2Cnt AS NVARCHAR(10));
COMMIT TRANSACTION DeleteAllV2;
PRINT 'V2 COMMIT OK';
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION DeleteAllV2;
PRINT 'V2 FAILED: ' + ERROR_MESSAGE();
THROW;
END CATCH;
PRINT '';
PRINT '=== Step 3: DELETE ALL V1 workflows (cascade Steps + Approvers) ===';
BEGIN TRY
BEGIN TRANSACTION DeleteAllV1;
DELETE FROM PurchaseEvaluationWorkflowDefinitions;
DECLARE @V1Cnt INT = @@ROWCOUNT;
PRINT 'V1 deleted: ' + CAST(@V1Cnt AS NVARCHAR(10));
COMMIT TRANSACTION DeleteAllV1;
PRINT 'V1 COMMIT OK';
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION DeleteAllV1;
PRINT 'V1 FAILED: ' + ERROR_MESSAGE();
THROW;
END CATCH;
-- Bro chưa request xóa Contract — KHÔNG đụng Contracts table (incl [DEMO] HĐ).
-- Nếu bro want cleanup Contract sau → spawn Plan U riêng.
PRINT '';
PRINT '=== Post-state (expect PE=0 / V2=0 / V1=0) ===';
SELECT 'PE total' AS Entity, COUNT(*) AS Cnt FROM PurchaseEvaluations
UNION ALL SELECT 'V2 workflows', COUNT(*) FROM ApprovalWorkflows
UNION ALL SELECT 'V1 workflows', COUNT(*) FROM PurchaseEvaluationWorkflowDefinitions
UNION ALL SELECT 'V2 Steps cascade', COUNT(*) FROM ApprovalWorkflowSteps
UNION ALL SELECT 'V2 Levels cascade', COUNT(*) FROM ApprovalWorkflowLevels
UNION ALL SELECT 'V1 Steps cascade', COUNT(*) FROM PurchaseEvaluationWorkflowSteps;
PRINT '=== Plan T5 complete — UAT permanent clean slate ===';