KB-3F46

Quy trình vận hành cắt: REQUEST → COPY → MARK → VERIFY MARK → CUT → VERIFY CUT → COMPLETE

7 min read Revision 1
iu-corecut-workflowoperational-pipelinemark-review-cut-verifyno-vector-staging-zonequeuedieu45copy-to-cut-zonestatus-surfacerunbook2026-05-26

Quy trình vận hành cắt — REQUEST → COPY → MARK → VERIFY MARK → CUT → VERIFY CUT → COMPLETE

Date: 2026-05-26
Status: operational draft / runbook tạm để sau này gom vào hệ miếng thông tin
Scope: quy trình vận hành cắt văn bản theo hướng sản xuất, dùng No-Vector Staging Zone + Điều 45 queue + MARK/CUT aliases.
Đây không phải prompt dài cho từng lần cắt. Đây là dây chuyền ngắn, có trạng thái, để sau này tự động hóa bằng DOT/PG trigger/Agent API.


0. Nguyên tắc chính

principles:
  - Agent_khong_copy_file_bang_token
  - COPY_la_viec_DOT_system_lam
  - MARK_chi_lam_tren_file_da_copy_vao_No_Vector_Staging_Zone
  - moi_buoc_co_status_ro_rang
  - hang_doi_chi_cho_signal_va_ref_khong_cho_body
  - du_lieu_tam_o_No_Vector_Staging_Zone
  - CUT_chi_chay_sau_VERIFY_MARK_approved
  - VERIFY_CUT_bat_buoc_sau_CUT
  - COMPLETE_chi_sau_VERIFY_CUT_pass
  - cleanup_scheduled_15_days_sau_hoan_tat

Nói ngắn gọn:

Nguồn file → COPY vào vùng tránh vector → MARK → kiểm MARK → CUT → kiểm CUT → hoàn tất → dọn sau 15 ngày.

1. Trạng thái chuẩn của một yêu cầu cắt

cut_request_status:
  - requested
  - copied
  - mark_in_progress
  - marked
  - mark_verified
  - mark_rejected
  - cut_in_progress
  - cut_done
  - cut_verified
  - cut_failed
  - completed
  - cleanup_scheduled
  - cleaned

Tối thiểu giai đoạn đầu:

minimal_status:
  - requested
  - copied
  - marked
  - mark_verified
  - cut_done
  - cut_verified
  - completed

2. Lệnh vận hành ngắn kỳ vọng

2.1. Tạo yêu cầu cắt

ADD_CUT_REQUEST source_ref=<kb_path_or_url_or_file_ref>

Kết quả:

status: requested
cut_request_id: <uuid>
source_ref: <ref>

2.2. Copy vào vùng cắt / vùng mark

COPY_TO_CUT_ZONE cut_request_id=<uuid>

Yêu cầu:

copy_to_cut_zone:
  executor: DOT_system
  not_executor: Agent_manual_copy
  target: No_Vector_Staging_Zone
  vector_excluded: true
  queue_payload: signal_only

Kết quả:

status: copied
staging_file_id: <uuid>
source_hash: <hash>
source_bytes: <n>
vector_excluded: true

2.3. Mark file đã copy

MARK_STAGED_FILE staging_file_id=<uuid>

Yêu cầu:

mark:
  executor: Agent_Codex_Hermes_later
  input: staging_file_id
  must_not:
    - copy_source_again
    - read_source_from_original_link_if_staging_available
    - write_pending_MARK_to_KB
    - vectorize_pending_MARK

Kết quả:

status: marked
manifest_digest: <hash>
piece_count: <n>
axis_A_B_C_preview: available

2.4. Kiểm MARK

VERIFY_MARK staging_file_id=<uuid>

Kết quả đạt:

status: mark_verified
verdict: approved
axis_a_ok: true
axis_b_ok: true
axis_c_ok: true
ready_for_cut: true

Kết quả không đạt:

status: mark_rejected
reason: <exact_gap>
ready_for_cut: false

2.5. Cắt manifest đã được duyệt

CUT_APPROVED staging_file_id=<uuid>

Điều kiện:

cut_preconditions:
  - status == mark_verified
  - manifest_approved == true
  - source_hash_unchanged_or_locked
  - No_Vector_Staging_Zone_record_exists

Kết quả:

status: cut_done
cut_run_id: <uuid>
created_IUs: <n>

2.6. Kiểm CUT

VERIFY_CUT cut_run_id=<uuid>

Kiểm tra bắt buộc:

verify_cut:
  - reconstruct_source_text
  - Axis_A_source_order
  - Axis_B_semantic_section_type_piece_role
  - Axis_C_parent_child_grandchild
  - no_vector_ok
  - no_stuck_job
  - no_unsafe_DLQ

Kết quả đạt:

status: cut_verified
verdict: verified
axis_a_ok: true
axis_b_ok: true
axis_c_ok: true
no_vector_ok: true

2.7. Hoàn tất và lên lịch dọn

COMPLETE_CUT cut_run_id=<uuid>

Kết quả:

status: completed
cleanup_scheduled: true
cleanup_after_days: 15

3. Vai trò từng thành phần

roles:
  User_Operator:
    - dua_source_ref_vao_list_can_cat
    - yeu_cau_chay_lenh_ngan
    - phe_duyet_neu_can

  DOT_system:
    - copy_source_to_No_Vector_Staging_Zone
    - update_status
    - chay_alias_ky_thuat_neu_duoc_cap_quyen

  Agent_Codex_Hermes:
    - MARK_STAGED_FILE
    - khong_copy_file_goc_bang_token
    - khong_CUT_neu_chua_VERIFY_MARK

  Checker_Claude_DOT:
    - VERIFY_MARK
    - VERIFY_CUT
    - bao_exact_gap_neu_fail

  Queue:
    - luu_signal_ref_status
    - khong_luu_body_file
    - khong_luu_vector_or_sensitive_payload

  No_Vector_Staging_Zone:
    - luu_source_copy_tam
    - luu_manifest_mark_report_coverage_proof_tam
    - vector_excluded_true

4. Tích hợp với Điều 45 queue

Mỗi bước tương ứng một job signal:

queue_jobs:
  - cut.request
  - cut.copy_to_staging
  - cut.mark
  - cut.verify_mark
  - cut.cut
  - cut.verify_cut
  - cut.complete

job_queue chỉ lưu:

job_queue_payload_allowed:
  - cut_request_id
  - source_ref
  - staging_file_id
  - manifest_digest
  - cut_run_id
  - status
  - actor
  - run_id

Không lưu trong queue:

job_queue_payload_forbidden:
  - full_document_body
  - raw_large_text
  - vector_payload
  - private_credential_payload

5. D30/D31 bảo vệ bắt buộc

Điều 30 — hồi quy

D30_regression:
  - event_outbox_khong_bi_doi_schema
  - Qdrant_khong_bi_touch_neu_chua_bat_vector
  - production_documents_absent_or_untouched
  - MARK_CUT_alias_contract_unchanged
  - no_pg_cron_install
  - no_broad_worker_start
  - gates_safe_at_exit

Điều 31 — toàn vẹn / refusal

D31_integrity:
  - khong_MARK_truoc_COPY
  - khong_VERIFY_MARK_truoc_MARK
  - khong_CUT_truoc_mark_verified
  - khong_COMPLETE_truoc_cut_verified
  - queue_payload_body_vector_sensitive_payload_bi_refuse
  - stale_worker_khong_bi_mark_healthy_gia
  - DLQ_replay_disabled_by_default

6. Quy trình test tiếp theo đề xuất

Không test bằng prompt dài kiểu “cắt Điều 38/39” nữa. Test theo dây chuyền:

next_test:
  article: Dieu_38
  steps:
    1: ADD_CUT_REQUEST
    2: COPY_TO_CUT_ZONE
    3: MARK_STAGED_FILE
    4: VERIFY_MARK
    5: CUT_APPROVED_if_MARK_verified
    6: VERIFY_CUT
    7: COMPLETE_CUT

Sau Điều 38 PASS mới chạy Điều 39, sau đó batch nhỏ 3–5 file.


7. Tiêu chí PASS của quy trình vận hành

operational_pipeline_PASS:
  - co_cut_request_id
  - COPY_TO_CUT_ZONE_thanh_cong
  - staging_file_vector_excluded_true
  - MARK_chi_lam_tren_staging_file
  - VERIFY_MARK_approved
  - CUT_APPROVED_chay_sau_mark_verified
  - VERIFY_CUT_verified
  - reconstruct_pass
  - Axis_A_B_C_pass
  - no_vector_ok
  - queue_jobs_status_complete
  - no_stuck_job
  - no_unsafe_DLQ
  - completed_status_set
  - cleanup_scheduled_15_days

8. Ghi chú tạm thời

Tài liệu này là runbook tạm thời để lưu vào KB trước khi hệ miếng thông tin hoàn tất. Sau này cần cắt lại chính quy trình này thành các miếng thông tin và ghép theo trục:

future_piece_axes:
  Axis_A: thu_tu_quy_trinh_van_hanh
  Axis_B: nhom_chuyen_mon_COPY_MARK_VERIFY_CUT_QUEUE_NVSZ
  Axis_C: me_con_chau_theo_quy_trinh_cat
Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-cut-operational-pipeline-copy-mark-verify-cut/00-operational-cut-pipeline-runbook.md