# High→Max multi-agent quality (S42-S43, 2026-05-30)

**Context:** Setup ban đầu spawn agent Opus 4.8 1M nhưng reasoning effort = **High** (không phải Max). Anh main đổi sang **Max** giữa S42-S43. Quan sát chênh lệch chất lượng rõ rệt cross-stack work.

## Evidence

**S42 P11-A (agents High):**
- Truncate 3× (FE + reviewer + cicd-monitor cut message cuối) — recover qua MEMORY + em main manual verify mỗi lần.
- **Lọt 2 bug FE thật:** (1) `pinWorkflow` PUT `/{id}` partial payload → UpdateDraft validator 400. (2) fetch workflow expect array nhưng endpoint trả `{types}` object → picker rỗng. Nguyên nhân: FE agent **đoán** endpoint/shape + **copy nhầm pattern hỏng** `ProposalCreatePage` thay vì proven PE/Contract.
- cicd-monitor self-report sai run-id ("#250" vs thật #364) trong memory truncated.
- → em main **Max re-review** (đọc full code, truy ngược pattern proven) mới bắt được. Đây là safety net quyết định.

**S43 P11-B (agents Max):**
- 0 truncation cả 4 agent (implementer-backend + frontend + test-specialist + reviewer + cicd).
- test-specialist **tự phát hiện** FK risk (deduction → LeaveTypes Restrict, template dùng bogus LeaveTypeId) → REPORT em main đúng boundary (không tự sửa prod).
- reviewer thorough verify đầy đủ 9 checklist no-truncate, judge 2 minor acceptable đúng.
- **0 bug lọt.**

## Rules reinforced (apply mọi session)

1. **WIRE FE phải đọc reference PROVEN, không đoán.** Brief FE agent BẮT BUỘC chỉ file reference cụ thể đã battle-test (PE/Contract create page cho workflow picker), cấm copy page chưa exercise UAT (ProposalCreatePage = latent bug S37). Verify endpoint return shape thật (`{types}` AwAdminOverviewDto KHÔNG phải flat array).
2. **FK-invariant-at-write-doors.** Thêm deduction/insert có FK→entity khác → enforce FK validity tại MỌI write door (Create+Update), grep xác nhận đủ write site, không assume "prod luôn valid". Test reveal gap (S43 LeaveBalance FK→LeaveTypes).
3. **Max re-review cross-stack claim BẮT BUỘC.** Wire BE/FE claim + financial logic → em main Max đọc full code + so reference, không tin verdict agent (đặc biệt nếu agent từng High/truncate). Chính nó cứu 2 bug P11-A + 1 sai run-id.
4. **Gotcha #56 CWD-drift stray memory:** KHÔNG `cd` (PowerShell persist) trước spawn agent → agent ghi MEMORY nhầm `fe-user/.claude`. Dùng `--project`/`--prefix`/`git -C`. 3× recover S42-S43.

## Takeaway
Max materially improves multi-agent reliability cho cross-stack. High đủ cho cookie-cutter mechanical nhưng rủi ro truncate + đoán trên wire/integration. Khi anh main cấp Max budget → lean delegate + Max re-review wire claim, ít em-main-solo fallback.
