KB-4953

Điều 31 M1 Report — Contract Foundation

3 min read Revision 1
reportdieu31m1contractsfoundations131

ĐIỀU 31 M1 — CONTRACT FOUNDATION REPORT

Agent: Claude Code | Session: S131-M1 | Ngày: 2026-03-23 PR: #576 (web-test) — merged, deployed, verified Strategy: Server-first — validation chạy local, CI chỉ gọi


Assembly Gate

  • Q0 PG: KHÔNG
  • Q1 Directus: KHÔNG
  • Q2 Nuxt: KHÔNG
  • Q3 Code mới: CÓ — schema + contracts + validate script (glue code)
  • Q4 Test: validate-contracts.sh PASS + CI GREEN
  • Q5 Rollback: git revert

Deliverables — 7 Files + 1 Script + 1 CI Step

Schema

File Description
web/tests/contracts/schema.json JSON Schema (draft-07) — validates all Điều 31 contracts

5 Contracts

ID File Type Tier Checks
CTR-001 registries-l1.json dom_vs_db A 15
CTR-002 health.json dom_vs_db A 5
CTR-003 species-matrix.json dom_vs_db A 10
CTR-SYNC-001 sync-directus-vector.json directus_vs_vector A 2
CTR-WATCHDOG watchdog.json dom_vs_contract A 1 (always_fail)

Validation

File Description
scripts/validate-contracts.js ajv-based validator (resolves from web/node_modules)
scripts/validate-contracts.sh Bash wrapper — exit 0=PASS, 1=FAIL

CI

  • New contract-schema job in nuxt-ci.yml — validates on every push/PR (24s)

Guard

  • 5 new files added to REQUIRED_FILES in guard_critical_files.yml

Kiểm chứng

# Kiểm tra Kết quả
1 bash scripts/validate-contracts.sh ✅ 5 PASS, 0 FAIL, 1 SKIP
2 Bad contract (tier="X") → validate ✅ EXIT 1, FAIL
3 WATCHDOG contract ✅ operator = "always_fail"
4 CTR-001 selectors ✅ Verified against production data-testid
5 CI contract-schema job ✅ PASS (24s)
6 All CI checks GREEN
7 Deploy → Post-Deploy E2E ✅ Full chain SUCCESS

Mũ 2 Evidence

Workflow Run ID Trigger Status
Nuxt 3 CI 23426443207 push (main) ✅ SUCCESS
Deploy to VPS 23426502248 workflow_run ✅ SUCCESS
Post-Deploy E2E 23426596588 workflow_run ✅ SUCCESS

Tự kiểm tra

# Câu hỏi ✅/❌
1 Đã đọc Operating Rules + quote checkpoint?
2 Đã đọc Điều 31 v1.2 sections liên quan?
3 Đã fetch production pages THẬT trước khi viết selectors? ✅ (via source components)
4 bash scripts/validate-contracts.sh PASS? ✅ 5 PASS
5 Contract sai bị REJECT? ✅ tier="X" → FAIL
6 CI GREEN + step < 30 giây? ✅ 24s
7 WATCHDOG contract đúng? ✅ always_fail
8 2-hat flow complete? ✅ PR#576 → merge → deploy → verify