diff --git a/docs/refactor/GammaTeam_TaskSplit.html b/docs/refactor/GammaTeam_TaskSplit.html index 513eb87..0c5b484 100644 --- a/docs/refactor/GammaTeam_TaskSplit.html +++ b/docs/refactor/GammaTeam_TaskSplit.html @@ -216,21 +216,21 @@

Team Gamma · Automation, Workflows & Governance

-

Một mục chung, rồi ba nhánh tính năng

+

Một nhánh chung, ba làn không đụng nhau

- Toàn bộ phần việc refactor 10 ngày của Team Gamma. Nhóm trưởng làm thêm một mục chung — + Toàn bộ phần việc refactor 10 ngày của Team Gamma — Nam, Hiệp, Lâm. Cả ba đẩy chung vào gamma/refactor. Nam làm thêm một mục chung — khung kiến trúc, hợp đồng dữ liệu, cổng kiểm duyệt — nằm ngoài ba nhánh; xong mục đó thì ba người vào ba nhánh tính năng ngang nhau, không ai phải sửa chung file với ai.

Ba tài liệu refactor gọi team này là “Team Nam” (theo tên lead). Cùng một team, cùng - phạm vi R02 · R08 · R09 · R07-T06. Tên nhánh giữ tiền tố nam/ đã thống nhất với - Team Duy và Team Hoa — đổi sang gamma/ sẽ lệch quy ước chung. + phạm vi R02 · R08 · R09 · R07-T06. Nhánh của team dùng tiền tố gamma/; ba tài liệu refactor viết + nam/workflow-governance-* theo tên lead — cùng một thứ.

Thời hạn21/08 → 31/08
-
Người3
-
Nhánh1 chung + 3 tính năng
+
NgườiNam · Hiệp · Lâm
+
Nhánhgamma/refactor
Code phải bóc~6.500 dòng
Cổng phải quaCASAN Check 1
@@ -243,27 +243,27 @@

Output — phải giao

-
N2 · Giám sátthành viên 1
+
N2 · Giám sátHiệp

Input — cần có

@@ -567,14 +581,14 @@
  • mã cũui/monitoring_tab.py 1.545 dòng
  • mã cũcore/usage_tracker.py 524 · sandbox_manager.py 335
  • mã cũcore/model_pricing.py 284 · agent_security.py 272 · audit_log.py 115
  • -
  • từ N1FakeConfigRepository — dùng được ngay
  • +
  • từ NamFakeConfigRepository — dùng được ngay
  • tự chốtGiữ nguyên 9 trường log, báo Duy và Hoa
  • Output — phải giao

      -
    • build_monitoring_tab() → cho N1, trước 28/08
    • +
    • build_monitoring_tab() → cho Nam, trước 28/08
    • FakeAuditLogger · FakeMonitoringQueryService → cho cả team
    • presentation/monitoring/ — 7 tab + shell
    • application/monitoring/monitoring_query_service.py
    • @@ -587,7 +601,7 @@
    -
    N3 · Co4E Studiothành viên 2
    +
    N3 · Co4E StudioLâm

    Input — cần có

    @@ -596,14 +610,14 @@
  • mã cũui/co4e_canvas.py 791 · co4e_config_panel.py
  • mã cũcore/co4e_run_manager.py 331
  • có sẵncore/co4e.py — dataclass Workflow/Node/Edge đã có
  • -
  • từ N1FakeConfigRepository
  • +
  • từ NamFakeConfigRepository
  • từ Team HoaDTO ToolPolicyGateway — rủi ro liên team cao nhất, lấy trong hôm nay
  • Output — phải giao

      -
    • build_co4e_tab() → cho N1, trước 28/08
    • +
    • build_co4e_tab() → cho Nam, trước 28/08
    • FakeCo4EWorkflowService → cho cả team
    • domain/workflows/ — DTO chốt ngày đầu
    • application/workflows/co4e_workflow_service.py
    • @@ -615,14 +629,14 @@
    -

    Output bắt buộc với cả ba, mỗi PR

    +

    Output bắt buộc với cả ba, mỗi lần đẩy

    - + @@ -637,9 +651,9 @@ - - - + + + @@ -685,7 +699,7 @@ - + @@ -701,7 +715,7 @@ - + @@ -721,18 +735,19 @@ - + - + - - + + diff --git a/docs/refactor/GammaTeam_decisions.md b/docs/refactor/GammaTeam_decisions.md index 99fbf27..bd9e695 100644 --- a/docs/refactor/GammaTeam_decisions.md +++ b/docs/refactor/GammaTeam_decisions.md @@ -1,9 +1,15 @@ -# Hai quyết định chờ nhóm trưởng chốt — Team Gamma +# Quyết định của Team Gamma -Hai việc này không code được cho tới khi có người quyết. Cả hai đều ảnh hưởng -ra ngoài phạm vi một người, nên để đây thay vì chôn trong comment. +Team: **Nam** (nhóm trưởng, nhánh N1) · **Hiệp** (N2) · **Lâm** (N3). -Trạng thái: **chưa chốt**. Hạn: trước khi N1 bắt đầu R02-T05 (26/08). +Ghi ở đây thay vì chôn trong comment, vì cả ba đều ảnh hưởng ra ngoài phạm vi +một người. + +| # | Việc | Trạng thái | +|---|---|---| +| 1 | `provider_conf()` còn trả `api_key` | **Chốt 21/08 — đường A** | +| 2 | Số phận 24 checker UI | **Chốt 21/08 — đường A** | +| 3 | DTO `ToolPolicyGateway` viết hộ Team Hoa | Đã làm, chờ Hoa xác nhận | --- @@ -53,7 +59,13 @@ họ không lên kế hoạch. Nếu chọn B thì **phải báo Team Duy và Team Hoa trong hôm nay**, không phải lúc đã sửa xong. -> Nhóm trưởng chốt: ☐ A ☐ B — ngày ____ +> **Nam chốt 21/08: đường A.** +> +> Việc kèm theo: `ConfigRepository` bản thật phải đọc key từ `SecretStore` rồi +> ghép vào dict do `provider_conf()` trả về. Năm nơi đọc không đổi một dòng, +> nên **không cần báo Duy và Hoa**. +> +> Nợ kỹ thuật đã ghi: đường B (bỏ `api_key` khỏi dict) để sau sprint này. --- @@ -104,7 +116,19 @@ không có gì thay thế cho phần giao diện. `tools/check_probes_bite.py` đã có sẵn cơ chế chứng minh checker còn cắn được; chạy nó sau mỗi đợt sửa là bắt được ngay chuyện đó. -> Nhóm trưởng chốt: ☐ A ☐ B ☐ C — ngày ____ +> **Chốt 21/08: đường A** — ai dời file thì cập nhật checker tương ứng ngay +> trong PR đó. +> +> Kèm hai ràng buộc, vì rủi ro của đường A là người sửa vội nới lỏng phép kiểm: +> +> 1. PR nào *sửa* checker phải nói rõ trong mô tả **sửa gì và vì sao**. +> 2. Sửa xong chạy `python tools/check_probes_bite.py` — nó cắm lỗi cố ý vào +> code rồi kiểm checker có bắt được không. Chính công cụ này đã từng bắt +> được một checker bị sửa thành *không thể đỏ*. +> +> Không đưa 24 checker vào CI trong sprint này: chúng dựng `MainWindow` thật, +> mỗi lần chạy tốn hàng chục giây và thỉnh thoảng sập lúc Qt dọn dẹp. Chạy tay +> theo phạm vi mình đụng là đủ. ---
    Điều kiệnNgưỡngTự kiểm bằng
    File mới sau khi tách≤ 400 dòngwc -l
    domain/ và application/ import PySide60grep -r PySide6
    Test hiện có96 xanhpytest tests -q
    Test hiện có102 xanhpytest tests -q
    Credential lộ0python scripts/audit_security.py
    Checker UI trong phạm vi mình dờiđã cập nhậtpython tools/check_<tên>.py
    NgàyN1 · Cấu hình & VỏN2 · Giám sátN3 · Co4EN1 · NamN2 · HiệpN3 · Lâm
    28/08
    T6
    bootstrap.py + tách MainWindowNhận factory của N2 và N3 để lắpbootstrap.py + tách MainWindowNhận factory của Hiệp và Lâm để lắp Nộp factory · dọn file >400 dòng · cập nhật checker Nộp factory · dọn file >400 dòng · cập nhật checker
    30/08
    CN 17:00
    CASAN Gate   Nhóm trưởng chủ trì Check 1 — quét toàn bộ config/JSON, phải ra 0 secret plaintext. N2 và N3 sửa ngay phần của mình nếu script bắt được.CASAN Gate   Nam chủ trì Check 1 — quét toàn bộ config/JSON, phải ra 0 secret plaintext. Hiệp và Lâm sửa ngay phần của mình nếu script bắt được.
    31/08
    T2 15:00
    N2 có chạy được khi chưa có config bản thật?Hiệp có chạy được khi chưa có config bản thật? Dựng một tab Monitoring, chạy test của nó, không import cowork_local.config dòng nào — chỉ dùng FakeConfigRepository 21/08
    N3 có chạy được khi Team Hoa chưa xong gateway?Lâm có chạy được khi Team Hoa chưa xong gateway? Test Co4EWorkflowService xanh với FakeToolPolicyGateway 23/08
    Ba nhánh có đụng file nhau không?git diff --name-only giữa ba nhánh — giao của ba tập phải rỗngBa người có đụng file nhau không?git log --name-only --pretty=%an trên gamma/refactor — + không file nào được xuất hiện dưới hai tên khác nhau mỗi ngày