{
  "schema_version": 1,
  "project_id": "017-Tam-Ve-Khong-Ghi-Diem-Den",
  "run_id": "run-20260721T030911Z-51bf7fe4",
  "status": "locked",
  "canonical_title": "Tấm Vé Không Ghi Điểm Đến",
  "identity_registry": {
    "Tạ Minh Ý": {
      "aliases_allowed": ["tôi", "Minh Ý", "cô Tạ", "chị Tạ"],
      "aliases_forbidden": ["Ý", "Tạ"],
      "age": 29,
      "gender": "nữ",
      "occupation": "chuyên viên điều phối hành lý thất lạc",
      "appearance": "Tóc đen ngang vai thường buộc thấp, áo khoác công sở màu kem, sơ mi xanh nhạt, ánh mắt tỉnh táo",
      "voice": "Rõ, gọn, quan sát sắc, đôi lúc châm nhẹ bản thân; khi xúc động càng nói chính xác",
      "knowledge_limit": "Chỉ biết điều quan sát, tra đúng quyền hoặc được người khác nói trực tiếp"
    },
    "Giang Tự Hành": {
      "aliases_allowed": ["Tự Hành", "anh Giang", "kỹ sư Giang"],
      "aliases_forbidden": ["Hành", "Giang"],
      "age": 32,
      "gender": "nam",
      "occupation": "kỹ sư phục hồi kiến trúc nhà ga lịch sử",
      "appearance": "Tóc đen gọn, áo khoác xanh than, thường mang ống bản vẽ trơn",
      "voice": "Điềm tĩnh, câu ngắn, không hứa thay người khác; khi né tránh sẽ hỏi ngược về quyền lựa chọn",
      "knowledge_limit": "Biết quãng cuối đời Cảnh Sơn và nơi hồ sơ được giữ, không biết Minh Ý giấu thư cho đến beat 16"
    },
    "Tạ Tú Lan": {
      "aliases_allowed": ["mẹ", "Tú Lan", "bà Tạ"],
      "aliases_forbidden": ["Lan", "Tạ"],
      "age": 55,
      "gender": "nữ",
      "occupation": "chủ tiệm sửa quần áo",
      "appearance": "Tay thường đeo vòng đệm kim, tóc búi thấp, áo len màu nâu nhạt",
      "voice": "Ít lời, dùng hình ảnh đường kim mũi chỉ, không khóc lóc kéo dài",
      "knowledge_limit": "Biết chiếc áo và thói quen của chồng, không biết thư còn tồn tại đến beat 17"
    },
    "Lương Khả Nghi": {
      "aliases_allowed": ["Khả Nghi", "giám đốc Lương", "cô Lương"],
      "aliases_forbidden": ["Nghi", "Lương"],
      "age": 38,
      "gender": "nữ",
      "occupation": "giám đốc truyền thông doanh nghiệp tài trợ",
      "appearance": "Tóc ngắn gọn, áo khoác xám than, mang cặp tài liệu màu bạc",
      "voice": "Mềm, chuẩn bị kỹ, luôn biến áp lực thành ngôn ngữ cơ hội",
      "knowledge_limit": "Có bản sao trang đầu thư và điều khoản tài trợ, không biết chuỗi ủy quyền cho đến cao trào"
    },
    "Hứa Bội San": {
      "aliases_allowed": ["Bội San", "cô Hứa"],
      "aliases_forbidden": ["San", "Hứa"],
      "age": 46,
      "occupation": "cựu nhân viên kho hành lý ga Thanh Phổ",
      "voice": "Thận trọng, hay dừng giữa câu khi nhắc quy trình cũ"
    },
    "Bành Duy Khang": {
      "aliases_allowed": ["Duy Khang", "chú Bành"],
      "aliases_forbidden": ["Khang", "Bành"],
      "age": 61,
      "occupation": "thợ máy đường sắt về hưu",
      "voice": "Khàn, thẳng, không lãng mạn hóa quá khứ"
    },
    "Tạ Cảnh Sơn": {
      "aliases_allowed": ["Cảnh Sơn", "cha tôi", "chồng bà"],
      "aliases_forbidden": ["Sơn", "Tạ"],
      "age_at_death": 41,
      "occupation": "nhân viên điều phối bảo trì tuyến đường sắt",
      "voice_in_letter": "Nhận trách nhiệm, không xin người nhận chờ hoặc tha thứ",
      "knowledge_limit": "Không biết Minh Ý sẽ giấu thư; không tiên đoán mọi hậu quả"
    }
  },
  "timeline": [
    {
      "time": "Mười bảy năm trước, đầu mùa mưa",
      "event": "Cảnh Sơn rời nhà đi hỗ trợ tuyến ven núi sau sạt lở",
      "location": "Từ Hàng Châu tới vùng ven núi",
      "present": ["Tạ Cảnh Sơn"],
      "knowledge": "Gia đình tin chuyến đi kéo dài vài ngày",
      "prop_state": "Vali xanh rêu, áo khoác và năm tấm vé trống đi cùng Cảnh Sơn",
      "consequence": "Cảnh Sơn bị thương và không trở về"
    },
    {
      "time": "Mười bảy năm trước, các tháng sau",
      "event": "Cảnh Sơn sống tại bệnh xá đường sắt, trao bốn tấm vé cho Duy Khang, hai người khác và Tự Hành; viết thư cho Tú Lan",
      "location": "Bệnh xá gần ga Thanh Phổ",
      "present": ["Tạ Cảnh Sơn", "Giang Tự Hành", "Bành Duy Khang"],
      "knowledge": "Tự Hành biết tình trạng Cảnh Sơn; gia đình không nhận thông báo đầy đủ",
      "prop_state": "Bốn vé rời vali; vé cuối ghi tên Minh Ý; thư được chuyển về nhà",
      "consequence": "Minh Ý mười hai tuổi nhận thư trước mẹ"
    },
    {
      "time": "Mười bảy năm trước, cuối mùa mưa",
      "event": "Minh Ý giấu thư dưới lớp lót hộp kim chỉ và nói với mẹ không có thư",
      "location": "Nhà cũ của gia đình",
      "present": ["Tạ Minh Ý"],
      "knowledge": "Chỉ Minh Ý biết thư còn tồn tại",
      "prop_state": "Thư nằm dưới hộp kim chỉ; vali được Bội San giữ rồi bàn giao Tự Hành",
      "consequence": "Tú Lan tiếp tục chờ trong thiếu thông tin"
    },
    {
      "time": "Mười năm trước",
      "event": "Tự Hành nhận quản lý vali và quyền trao khi Minh Ý chủ động tìm đến hồ sơ ga",
      "location": "Ga Thanh Phổ",
      "present": ["Giang Tự Hành", "Hứa Bội San"],
      "knowledge": "Tự Hành biết lời ủy thác; Bội San biết số kho bị sửa",
      "prop_state": "Vali niêm phong trong kho dự án phục hồi",
      "consequence": "Không ai chủ động gửi thẳng cho Minh Ý"
    },
    {
      "time": "Hiện tại, ngày một, buổi chiều",
      "event": "Vali được chuyển đến quầy hành lý thất lạc ga Đông bằng phiếu mới",
      "location": "Ga Hàng Châu Đông",
      "present": ["Tạ Minh Ý"],
      "knowledge": "Minh Ý nhận ra tên cha nhưng chưa biết người gửi",
      "prop_state": "Vali chưa mở, phiếu nhận có số cuối bị sửa",
      "consequence": "Mở vụ việc chính"
    },
    {
      "time": "Ngày một, đêm",
      "event": "Minh Ý bác yêu cầu nhận giả, mở vali có biên bản và thấy vé cuối",
      "location": "Quầy và phòng kiểm kê",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "Lương Khả Nghi"],
      "knowledge": "Tự Hành biết nguồn gốc; Khả Nghi biết giá trị truyền thông; Minh Ý biết bốn khe rỗng",
      "prop_state": "Vali niêm phong nghiệp vụ; vé cuối do Minh Ý giữ trong túi chứng cứ",
      "consequence": "Minh Ý yêu cầu phối hợp ga Thanh Phổ"
    },
    {
      "time": "Ngày hai đến ngày bốn",
      "event": "Minh Ý và Tự Hành tìm ba người nhận cuống vé, gặp mẹ và đối chất Bội San",
      "location": "Ga Thanh Phổ và Hàng Châu",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "Tạ Tú Lan", "Hứa Bội San", "Bành Duy Khang"],
      "knowledge": "Minh Ý hiểu chức năng vé trống; Tự Hành chưa biết thư bị giấu",
      "prop_state": "Ba cuống vé được chụp hồ sơ, bản gốc ở chủ sở hữu",
      "consequence": "Nhiều gia đình từ chối trao độc quyền"
    },
    {
      "time": "Ngày năm",
      "event": "Điểm giữa: Tự Hành đưa cuống vé thứ tư và kể quãng cuối đời Cảnh Sơn",
      "location": "Phòng chờ ga Thanh Phổ",
      "present": ["Tạ Minh Ý", "Giang Tự Hành"],
      "knowledge": "Minh Ý biết cha đã có thời gian gửi tin nhưng chọn im lặng; người nghe biết sự im lặng có hậu quả",
      "prop_state": "Bốn cuống vé được đối chiếu với bốn khe",
      "consequence": "Trọng tâm chuyển sang quyền kể câu chuyện"
    },
    {
      "time": "Ngày sáu",
      "event": "Khả Nghi công bố ý định triển lãm và cho thấy bản sao lá thư",
      "location": "Phòng họp dự án",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "Lương Khả Nghi"],
      "knowledge": "Khả Nghi biết Minh Ý có liên quan đến thư nhưng chưa biết bản gốc ở đâu",
      "prop_state": "Bản sao trang đầu trong cặp bạc; bản gốc trong hộp kim chỉ",
      "consequence": "Thời hạn công bố được đặt vào ngày tám"
    },
    {
      "time": "Ngày bảy",
      "event": "Minh Ý thú nhận với Tự Hành; Khả Nghi làm lộ thư trước Tú Lan",
      "location": "Căn hộ Minh Ý và buổi duyệt triển lãm",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "Tạ Tú Lan", "Lương Khả Nghi"],
      "knowledge": "Tú Lan biết lời nói dối; Tự Hành biết toàn bộ phần lỗi của Minh Ý",
      "prop_state": "Minh Ý lấy bản gốc khỏi hộp nhưng chưa mở",
      "consequence": "Mẹ con rạn nứt; hồ sơ bị niêm phong"
    },
    {
      "time": "Đêm ngày bảy",
      "event": "Minh Ý trả thư cho mẹ mà không đọc thay; mẹ chỉ ra túi bí mật trong áo",
      "location": "Tiệm may",
      "present": ["Tạ Minh Ý", "Tạ Tú Lan"],
      "knowledge": "Tú Lan giữ quyền đọc; Minh Ý biết danh sách người nhận",
      "prop_state": "Thư ở tay Tú Lan; danh sách ủy quyền ở tay Minh Ý",
      "consequence": "Có căn cứ liên lạc đủ bốn người"
    },
    {
      "time": "Ngày tám, trước buổi công bố",
      "event": "Minh Ý thu thập chuỗi ủy quyền có điều kiện",
      "location": "Hàng Châu và ga Thanh Phổ",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "các gia đình"],
      "knowledge": "Các gia đình biết dự án thương mại; Khả Nghi chưa biết cấu trúc ủy quyền",
      "prop_state": "Mỗi bản ủy quyền do chủ thể giữ một bản; Minh Ý có bản đối chiếu",
      "consequence": "Chuẩn bị đảo thế"
    },
    {
      "time": "Ngày tám, chiều",
      "event": "Minh Ý chặn hợp đồng độc quyền tại buổi công bố",
      "location": "Ga Thanh Phổ",
      "present": ["Tạ Minh Ý", "Giang Tự Hành", "Tạ Tú Lan", "Lương Khả Nghi", "Hứa Bội San", "Bành Duy Khang"],
      "knowledge": "Sự thật và lỗi cá nhân được công khai vừa đủ, không đọc toàn bộ thư",
      "prop_state": "Vali và vé cuối chưa chuyển sở hữu; doanh nghiệp không có quyền độc quyền",
      "consequence": "Mô hình đồng quản lý được chấp nhận"
    },
    {
      "time": "Ba tuần sau",
      "event": "Ga mở lại; Minh Ý mua hai vé cho chuyến đi ven hồ",
      "location": "Ga Hàng Châu Đông",
      "present": ["Tạ Minh Ý", "Giang Tự Hành"],
      "knowledge": "Hai người hiểu lựa chọn hiện tại, không hứa thay tương lai",
      "prop_state": "Vé trống trong tủ kính; chìa do gia đình giữ; hai vé thật có điểm đến",
      "consequence": "Kết vọng motif"
    }
  ],
  "knowledge_ledger": [
    {
      "secret": "Thư cuối của Cảnh Sơn vẫn tồn tại",
      "audience_knows": "Được gợi ở beat 5, xác nhận ở beat 16",
      "Minh_Y_knows": "Từ mười bảy năm trước",
      "Tu_Hanh_knows": "Chỉ biết có thư, không biết thư ở đâu đến beat 16",
      "Tu_Lan_knows": "Beat 17",
      "Kha_Nghi_knows": "Có bản sao trang đầu trước beat 15",
      "misread": "Mọi người nghĩ thư sẽ giải thích trọn vẹn; thật ra thư chủ yếu nhận lỗi và trao quyền",
      "full_reveal": "Beat 21"
    },
    {
      "secret": "Ý nghĩa tấm vé trống",
      "audience_knows": "Gieo beat 6, bằng chứng beat 8 và 11, lật beat 12",
      "Minh_Y_knows": "Beat 12",
      "Tu_Hanh_knows": "Từ mười bảy năm trước",
      "Tu_Lan_knows": "Beat 21",
      "Kha_Nghi_knows": "Chỉ hiểu giá trị biểu tượng, không hiểu quyền cá nhân đến beat 20",
      "misread": "Tưởng vé mã hóa một ga đến hoặc lời mời bỏ đi",
      "full_reveal": "Vé ghi người nhận để người ấy tự chọn nơi đến"
    },
    {
      "secret": "Ai đưa vali về ga Đông",
      "audience_knows": "Mở từ beat 3",
      "Minh_Y_knows": "Beat 14",
      "Tu_Hanh_knows": "Beat 14",
      "Kha_Nghi_knows": "Ngay từ đầu",
      "misread": "Tưởng Tự Hành gửi; thật ra Khả Nghi dùng nhà thầu kho để kích hoạt hồ sơ và tạo câu chuyện truyền thông",
      "full_reveal": "Beat 15"
    },
    {
      "secret": "Quãng cuối đời Cảnh Sơn",
      "audience_knows": "Từng phần beat 8–14",
      "Minh_Y_knows": "Đủ ở beat 14",
      "Tu_Hanh_knows": "Từ quá khứ",
      "Tu_Lan_knows": "Qua thư ở beat 21",
      "misread": "Minh Ý nghĩ cha bỏ nhà để sống đời khác; Tự Hành từng nghĩ giữ lời hứa là tôn trọng",
      "full_reveal": "Cảnh Sơn bị thương, tự chọn xa nhà vì sợ thành gánh nặng, rồi nhận ra mình đã tước quyền của gia đình"
    }
  ],
  "relationship_ledger": [
    {"beats": "1–4", "before": "Người lạ và đối tượng đáng ngờ", "action": "Tự Hành không tranh quyền nhận vali, Minh Ý đặt điều kiện hợp tác", "after": "Hợp tác giới hạn", "unsaid": "Anh biết cha cô đến mức nào", "trust": 2},
    {"beats": "5–9", "before": "Hợp tác giới hạn", "action": "Anh tôn trọng biên bản, trao phong bì để cô tự mở; cô nói có lá thư", "after": "Tin cậy nghề nghiệp và hé mở riêng tư", "unsaid": "Cô đã giấu thư", "trust": 4},
    {"beats": "10–12", "before": "Cùng điều tra", "action": "Minh Ý chứng kiến cuống vé của Tự Hành và nghe lựa chọn anh từng có", "after": "Thấu hiểu, có lực hút nhưng chưa tỏ tình", "unsaid": "Anh đã chờ cô chủ động tìm đến nhiều năm", "trust": 6},
    {"beats": "13–16", "before": "Tin cậy sâu", "action": "Anh kể điều bất lợi về Cảnh Sơn; cô thú nhận phần lỗi của mình", "after": "Bình đẳng trong sự thật", "unsaid": "Tình cảm", "trust": 8},
    {"beat": 17, "before": "Bình đẳng", "action": "Khủng hoảng buộc họ tách việc sửa sai khỏi việc cứu dự án", "after": "Không gần gũi hơn nhưng niềm tin không vỡ", "unsaid": "Liệu họ có tiếp tục sau dự án", "trust": 8},
    {"beats": "18–20", "before": "Cùng chịu hậu quả", "action": "Tự Hành hỗ trợ mà không đại diện; Minh Ý chủ động cao trào", "after": "Đối tác bình đẳng có tình cảm rõ", "unsaid": "Lời mời đi cùng", "trust": 10},
    {"beats": "21–22", "before": "Tình cảm chưa định danh", "action": "Minh Ý tự chọn điểm đến và mời; Tự Hành hỏi lại sự chắc chắn", "after": "Bắt đầu quan hệ bằng đồng thuận", "unsaid": "Không cần hứa trọn đời", "trust": 10}
  ],
  "prop_ledger": [
    {
      "prop": "Vali xanh rêu",
      "origin": "Tài sản của Tạ Cảnh Sơn",
      "first_appearance": "Beat 1",
      "surface_meaning": "Hành lý thất lạc của người cha",
      "misread": "Một di vật duy nhất thuộc gia đình Minh Ý",
      "locations": ["Kho dự án", "Ga Đông", "Phòng kiểm kê", "Ga Thanh Phổ"],
      "return": "Beat 20",
      "payoff": "Được đặt trong kho cộng đồng với quyền rút do gia đình giữ"
    },
    {
      "prop": "Tấm vé cuối không ghi điểm đến",
      "origin": "Cảnh Sơn tự cắt từ mẫu vé cũ và ghi tên Minh Ý ở mặt sau",
      "first_appearance": "Beat 6",
      "surface_meaning": "Manh mối một chuyến đi",
      "misread": "Mật mã về nơi cha đã đến",
      "locations": ["Khe áo trong vali", "Túi chứng cứ của Minh Ý", "Tủ kính đồng quản lý"],
      "return": "Beat 22",
      "payoff": "Đứng cạnh hai vé thật có điểm đến do Minh Ý chọn"
    },
    {
      "prop": "Lá thư cuối",
      "origin": "Cảnh Sơn viết cho Tú Lan",
      "first_appearance": "Được nhắc beat 5",
      "surface_meaning": "Câu trả lời cuối cùng",
      "misread": "Một văn bản có thể tha thứ hoặc kết tội thay người nhận",
      "locations": ["Hộp kim chỉ", "Tay Minh Ý", "Tay Tú Lan"],
      "return": "Beat 21",
      "payoff": "Tú Lan tự chọn lúc đọc; thư nhận lỗi mà không đòi tha thứ"
    },
    {
      "prop": "Áo khoác có đường chỉ hổ phách",
      "origin": "Tú Lan khâu cho Cảnh Sơn",
      "first_appearance": "Beat 6",
      "surface_meaning": "Quần áo cũ",
      "misread": "Chỉ để xác nhận danh tính",
      "locations": ["Vali", "Phòng kiểm kê", "Tiệm may"],
      "return": "Beat 18",
      "payoff": "Đường may đặc biệt chỉ ra túi bí mật chứa danh sách người nhận"
    },
    {
      "prop": "Sổ kho có số bị sửa",
      "origin": "Hứa Bội San sửa để che vị trí vali khỏi chủ nợ",
      "first_appearance": "Beat 7",
      "surface_meaning": "Lỗi hành chính",
      "misread": "Bằng chứng ai đó đánh cắp vali",
      "locations": ["Kho ga Thanh Phổ", "Hồ sơ đối chiếu"],
      "return": "Beat 20",
      "payoff": "Bội San làm chứng, hoàn thiện provenance mà không giải thích toàn bộ âm mưu"
    }
  ],
  "reveal_ledger": [
    {"reveal": "Vali mang tên Cảnh Sơn", "seed": "Beat 1", "threshold": "Beat 3", "payoff": "Biến vụ nghề nghiệp thành xung đột cá nhân", "poster_allowed": true},
    {"reveal": "Tự Hành biết câu trong thư", "seed": "Beat 1", "threshold": "Beat 5", "payoff": "Buộc hợp tác", "poster_allowed": true},
    {"reveal": "Bốn cuống vé thuộc bốn người", "seed": "Bốn khe rỗng beat 6", "threshold": "Beat 11", "payoff": "Tạo chuỗi nhân chứng", "poster_allowed": false},
    {"reveal": "Vé trống là quyền tự chọn", "seed": "Lời kể Duy Khang beat 8", "threshold": "Beat 12", "payoff": "Đổi nghĩa toàn bộ motif", "poster_allowed": false},
    {"reveal": "Tự Hành là người nhận thứ tư", "seed": "Anh giữ ống bản vẽ và không nhận thay beat 4", "threshold": "Beat 12", "payoff": "Giải thích nguyên tắc hành xử", "poster_allowed": false},
    {"reveal": "Cảnh Sơn sống nhiều tháng sau tai nạn", "seed": "Dấu thời gian trên áo và sổ", "threshold": "Beat 13", "payoff": "Phá cách hiểu ông mất tích tức thì", "poster_allowed": false},
    {"reveal": "Minh Ý giấu thư", "seed": "Cô nói từng giữ một lá thư beat 9", "threshold": "Beat 16", "payoff": "Cho nữ chính phần trách nhiệm thật", "poster_allowed": false},
    {"reveal": "Khả Nghi kích hoạt phiếu mới", "seed": "Người nhận giả có giấy doanh nghiệp beat 5", "threshold": "Beat 15", "payoff": "Đưa đối nghịch vào thế chủ động", "poster_allowed": false},
    {"reveal": "Danh sách người nhận nằm trong áo", "seed": "Đường chỉ hổ phách beat 10", "threshold": "Beat 18", "payoff": "Mẹ đóng góp quyết định vào cao trào", "poster_allowed": false},
    {"reveal": "Nội dung trọn thư", "seed": "Câu đầu beat 17", "threshold": "Beat 21", "payoff": "Nhận lỗi mà không đòi tha thứ", "poster_allowed": false}
  ],
  "open_loops": [
    {"id": "L1", "question": "Ai có quyền nhận vali?", "open": 1, "close": 6},
    {"id": "L2", "question": "Ai gửi vali về?", "open": 3, "close": 15},
    {"id": "L3", "question": "Tự Hành biết cha Minh Ý thế nào?", "open": 4, "close": 13},
    {"id": "L4", "question": "Bốn khe rỗng từng chứa gì?", "open": 6, "close": 12},
    {"id": "L5", "question": "Lá thư ở đâu và nói gì?", "open": 9, "partial_close": 17, "close": 21},
    {"id": "L6", "question": "Ai có quyền kể câu chuyện?", "open": 15, "close": 20}
  ],
  "continuity_invariants": [
    "Minh Ý luôn là người kể và không đọc suy nghĩ người khác.",
    "Không ai gọi Tạ Minh Ý là Ý hoặc Giang Tự Hành là Hành đứng độc lập.",
    "Tự Hành không biết vị trí lá thư trước beat 16.",
    "Tú Lan không biết thư tồn tại trước beat 17 và không đọc bản gốc trước beat 21.",
    "Bốn cuống vé bản gốc luôn ở chủ sở hữu; Minh Ý chỉ có ảnh đối chiếu và ủy quyền.",
    "Tấm vé cuối nằm trong túi chứng cứ từ beat 6 đến khi chuyển vào tủ kính sau cao trào.",
    "Khả Nghi có bản sao trang đầu, không có toàn bộ bản gốc.",
    "Cảnh Sơn sai khi quyết định thay gia đình; câu chuyện không hợp thức hóa hành vi bằng bệnh tật hoặc hy sinh.",
    "Tình cảm chỉ được xác nhận sau khi xung đột nghề nghiệp và gia đình đã có giải pháp.",
    "Không quá ba open loop lớn cùng lúc; loop cũ phải được thu hoặc chuyển câu hỏi trước khi mở loop mới."
  ]
}
