Bỏ qua nội dung

Biến số ngoài kế hoạch

Chương 3: Một Dòng Log Bị Xóa

Chương 3: Một Dòng Log Bị Xóa

Đề nghị của Tạ Chấn Đông rơi xuống giữa phòng họp như một con dấu đã đóng sẵn. Không ai lập tức phản đối, cũng không ai lập tức đồng ý. Trong hội đồng quản trị, sự im lặng không có nghĩa là do dự; nhiều khi nó chỉ là khoảng thời gian để mỗi người tính xem mình nên đứng ở phía nào cho đỡ thiệt. Tôi ngồi ở cuối bàn, lưng vẫn thẳng, nhưng lòng bàn tay đã lạnh. Ba phát hiện kỹ thuật của tôi vừa bị đặt lên bàn như một viên gạch, còn người muốn xây bức tường đình quyền Tạ Hoài Châu rõ ràng đã chuẩn bị xi măng từ trước.

Tạ Hoài Châu không nhìn tập tài liệu ngay. Anh gõ nhẹ một đầu ngón tay lên mặt bàn, nhịp rất chậm. “Chú hai đề nghị tước quyền điều hành dự án ngay trong cuộc họp chưa hoàn tất xác minh kỹ thuật?” Tạ Chấn Đông mỉm cười. “Không phải tước quyền, là tránh xung đột lợi ích. Cháu là người chịu trách nhiệm cao nhất của Thiên Bình. Để cháu tự điều tra hệ thống do mình thúc đẩy, bên ngoài sẽ không tin.” Hoài Châu nhấc mắt. “Bên ngoài cũng sẽ không tin một ủy ban được soạn sẵn trước khi nguyên nhân kỹ thuật được ghi nhận.”

Không khí trong phòng lạnh thêm một tầng. Một thành viên hội đồng lớn tuổi ho khẽ, nói bằng giọng hòa giải: “Dù sao cô Lâm cũng vừa nêu dấu vết bất thường. Chúng ta cần biết dấu vết đó đủ trọng lượng đến đâu.” Tạ Chấn Đông thuận thế quay sang tôi. “Vậy để cô Lâm tiếp tục trình bày. Cô ấy đã khiến chúng ta phải cân nhắc đề xuất này, chắc cũng có thể cho chúng ta thêm cơ sở.” Câu ấy nghe lịch sự, nhưng mũi dao nằm ở phần sau: nếu tôi nói không đủ, phát hiện của tôi là hoảng loạn vô căn cứ; nếu tôi nói đủ, tôi trở thành người đẩy Hoài Châu vào thế bị đình quyền.

Tôi đặt bút xuống cạnh tập biên bản đã sửa. “Tôi có thể tiếp tục kiểm tra trong phạm vi được ủy quyền rõ ràng. Tôi không dùng tài khoản cá nhân, không dùng máy riêng, không xuất dữ liệu khách hàng, chỉ đối chiếu nhật ký hệ thống và snapshot đã được niêm phong. Nếu hội đồng muốn tôi làm nhân chứng kỹ thuật tạm thời, xin ghi vào biên bản rằng mọi thao tác diễn ra dưới quyền giám sát của An ninh dữ liệu và pháp chế.” Pháp chế hơi khựng lại. Tần Mặc nhìn tôi qua mép máy tính bảng, khóe mắt hiện lên một ý cười rất mỏng, như thể câu “không tự đưa cổ vào thòng lọng” đã được anh âm thầm chấm điểm đạt.

Hoài Châu nói: “Ghi.” Chỉ một chữ, nhưng đủ khiến người của pháp chế lập tức gõ thêm vào biên bản. Tạ Chấn Đông không phản đối. Người phản đối vào lúc này sẽ giống người sợ dữ liệu được nhìn thấy. Tôi hiểu điều đó, ông ta càng hiểu. Vấn đề là có những cái bẫy không cần che lại, chỉ cần đặt đúng chỗ để người khác buộc phải bước qua.

Tần Mặc kéo một màn hình phụ từ tường kính xuống, kích hoạt môi trường kiểm tra cách ly. “Phiên đọc chỉ xem, thời hạn mười lăm phút, ghi hình màn hình nội bộ, không tải file thô.” Anh quay sang tôi. “Cô Lâm, cô đọc được luồng Thiên Bình đến đâu?” Tôi đáp: “Đủ để biết mô hình không tự tạo ra dữ liệu đầu vào.” Tần Mặc bật cười rất khẽ. “Tốt. Tôi ghét nhất kiểu đổ mọi thứ cho AI rồi coi như khoa học đã ký tên nhận tội.”

Tôi nhập chuỗi truy vấn đầu tiên bằng tài khoản tạm do An ninh dữ liệu cấp, nhưng phần xác thực vẫn yêu cầu mã nhân viên của tôi để ghi nhận người thao tác. Trên màn hình, các bảng quen thuộc lần lượt mở ra: audit_access, pipeline_run, feature_store_delta, raw_snapshot_index. Tôi không chạm vào payload khách hàng; tôi chỉ gọi metadata, thời điểm, mã phiên bản và checksum. Dữ liệu hiện lên lạnh lùng, sạch sẽ, có trật tự. Chính vì quá sạch, nó càng giống một mặt bàn vừa được lau vội trước khi khách đến.

Tôi lọc mốc 02:05 đến 02:18. Dòng 02:12 trong audit_access vẫn trống request_id như buổi sáng tôi thấy. Nhưng khi đối chiếu sequence_id, ngón tay tôi dừng lại. 91832. 91834. Không có 91833. Tôi phóng to cột sequence. Tim đập mạnh hơn một nhịp, nhưng giọng tôi vẫn giữ ở mức đủ để micro giữa bàn ghi được. “Giữa hai bản ghi có một số thứ tự bị khuyết.” Thành viên hội đồng bên trái lập tức hỏi: “Có thể do đồng bộ trễ không?” Tôi lắc đầu. “Nếu đồng bộ trễ, sequence vẫn tồn tại trong cụm phụ hoặc treo trạng thái pending. Ở đây bảng chính nhảy qua nó, còn checksum sau 02:13 đã tính như thể dòng đó chưa từng có.”

Tần Mặc ngồi thẳng hơn. Vẻ lười biếng trên mặt anh biến mất. Anh mở lớp đối chiếu off-cluster mirror, nhập quyền xác nhận của mình. Màn hình nhấp nháy hai lần rồi hiện ra một bản ghi mờ với trạng thái TOMBSTONE. Không phải dòng log nguyên vẹn, chỉ là vết chôn của một thao tác từng tồn tại. 02:12:47. target_log_id: 91833. operation: DELETE. actor_group: emergency_admin. reason_code: null. linked_request: null. Trong phòng họp, có người hít vào rất khẽ. Một dòng log bị xóa không giống một vết bẩn bị quên lau. Nó giống một dấu giày bị cố tình cạo khỏi nền đất, nhưng vết cạo lại nằm đúng nơi người ta không nên bước qua.

Tạ Chấn Đông chậm rãi nói: “Xóa log trong quy trình khẩn cấp không nhất thiết là hành vi sai. Có thể là dọn dữ liệu lỗi để tránh lan truyền.” Tôi nhìn ông ta. “Quy trình khẩn cấp hợp lệ phải có phiếu yêu cầu, người phê duyệt, lý do, phạm vi tác động và log thay thế. Dòng này không có bất cứ thứ gì trong số đó.” Ông ta vẫn điềm đạm. “Đó là nhận định của cô.” Tôi đáp: “Không. Đó là yêu cầu tối thiểu của hệ thống kiểm soát truy cập mà Kính Vân tự viết trong tài liệu tuân thủ.” Lần này Tần Mặc không che tiếng cười, nhưng cũng chỉ là một tiếng thở rất ngắn qua mũi.

Hoài Châu nhìn màn hình. “Dòng 91833 làm gì trước khi bị xóa?” Tần Mặc không trả lời ngay. Anh mở thêm bảng feature_store_delta, rồi ra hiệu cho tôi tiếp tục vì chuỗi truy vấn ban đầu là của tôi. Tôi hiểu ý anh. Nếu anh tự tìm ra, đây là phát hiện của An ninh dữ liệu dưới quyền Hoài Châu; nếu tôi tìm ra trong phiên hội đồng được ghi biên bản, Tạ Chấn Đông không thể dễ dàng gọi nó là trò tự kiểm tự diễn. Tôi kéo raw_snapshot_index vào cửa sổ so sánh, chọn nhóm khách hàng bị truyền thông nêu tên, rồi đối chiếu hai mốc: trước 02:12 và sau 02:13.

Số liệu lệch ra rất rõ. Không phải payload gốc bị mở, nhưng các feature dùng để đưa vào mô hình đã đổi phiên bản. Một số chỉ tiêu rủi ro thanh khoản bị đẩy cao, biến động dòng tiền bị gắn nhãn bất thường, còn nguồn dữ liệu tham chiếu chuyển từ kênh xác thực sang một bảng tạm không có ticket. Tôi nhìn hàng mã phiên bản nhảy từ F-raw-7.3 sang F-patch-7.3.1, thời điểm 02:12:51, bốn giây sau dòng 91833 bị chôn. Sau đó, pipeline_run lúc 02:14 nhận chính bộ feature đã bị vá ấy để tạo kết quả đánh giá Thiên Bình đang khiến cả tập đoàn rung chuyển.

Tôi nghe giọng mình vang lên trong phòng, bình tĩnh đến mức gần như xa lạ. “Dữ liệu đầu vào đã bị can thiệp trước khi mô hình chạy.” Không ai ngắt lời. Tôi tiếp tục: “Tôi chưa thể kết luận ai làm, mục đích là gì, hoặc mức thiệt hại đầy đủ. Nhưng với dấu vết hiện tại, không nên công bố đây là lỗi thuật toán thuần túy. Mô hình có thể sai hoặc đúng theo cách riêng của nó, nhưng kết quả ở mốc 02:14 được sinh ra từ một bộ feature đã bị thay đổi thủ công.”

Một người của pháp chế hỏi rất nhanh: “Cô dùng từ ‘thủ công’ có quá mức không?” Tôi chỉ vào màn hình. “Bảng tạm không nằm trong lịch chạy tự động, linked_request trống, reason_code trống, sequence bị xóa, checksum phụ thay đổi, và nhóm feature đổi phiên bản ngoài cửa sổ bảo trì. Nếu anh có một từ nhẹ hơn mà vẫn đúng, tôi sẵn sàng nghe.” Người đó im lặng. Tạ Hoài Châu cuối cùng nói: “Ghi vào biên bản: phát hiện dấu hiệu can thiệp dữ liệu đầu vào trước thời điểm pipeline_run 02:14. Chưa xác định chủ thể.” Anh dừng nửa giây. “Và ghi cả việc một dòng log liên quan đã bị xóa.”

Câu nói ấy khiến nét mặt Tạ Chấn Đông nhạt đi trong khoảnh khắc rất ngắn. Nhưng người như ông ta không cần nhiều thời gian để khôi phục vẻ ôn hòa. “Vậy càng cần ủy ban độc lập tiếp quản. Hoài Châu, cháu thấy đấy, hệ thống dưới quyền cháu đã xuất hiện xóa log, vá dữ liệu, quyền khẩn cấp không rõ nguồn. Cháu không thể vừa là người chịu trách nhiệm vừa là người giữ chìa khóa điều tra.” Hoài Châu không nhìn ông ta. Anh nhìn tôi, ánh mắt lạnh và sâu như đang đánh giá một biến số vừa tự tăng trọng lượng trên bàn cờ. Tôi không thích ánh mắt đó. Nó khiến tôi nhớ rằng trong phòng này, người muốn lợi dụng tôi không chỉ có một phe.

Tần Mặc chuẩn bị xuất báo cáo hash của phiên kiểm tra vào kho niêm phong. Thanh tiến trình mới chạy đến sáu mươi phần trăm thì màn hình phụ đột nhiên giật nhẹ. Một ô cảnh báo đỏ hiện lên ở góc phải: SESSION_PERMISSION_CHANGED. Tôi cau mày, thử làm mới truy vấn cuối cùng. Hệ thống yêu cầu xác thực lại. Tôi nhập mã nhân viên lần nữa. Lần này, thay vì bảng dữ liệu, màn hình hiện ra một dòng chữ lạnh ngắt: USER_LTY032 HAS BEEN LOCKED DUE TO ABNORMAL CROSS-DOMAIN QUERY. CONTACT EMERGENCY CONTROL GROUP.

Trong một giây, tất cả âm thanh trong phòng họp như bị rút sạch. Điện thoại của tôi rung lên cùng lúc. Tin nhắn từ hệ thống nội bộ chỉ có hai dòng: tài khoản làm việc đã bị khóa tạm thời; mọi quyền truy cập dữ liệu bị đình chỉ để phục vụ kiểm soát khẩn cấp. Tôi nhìn dòng chữ ấy, rồi nhìn lên Tạ Chấn Đông. Ông ta cũng đang nhìn tôi, vẻ mặt vẫn ôn hòa đến mức gần như đáng tin. “Cô Lâm,” ông ta nói chậm rãi, “xem ra trước khi điều tra ra ai đã xóa log, chúng ta cần giải thích vì sao tài khoản của cô vừa bị hệ thống đánh dấu bất thường.” Tôi đặt điện thoại xuống mặt bàn. Màn hình đen phản chiếu khuôn mặt tôi rất nhạt. Hóa ra trong một cuộc chiến dữ liệu, không cần ai kết án ngay lập tức. Chỉ cần khóa tài khoản của một người trước mặt hội đồng, người đó đã bắt đầu giống nghi phạm.