{
  "schema": "moaticle.particles.v1",
  "target": {
    "id": "cultural-visit-drill",
    "kind": "nation-brand",
    "audience": "가상 문화시설의 다국어 안내 담당자와 첫 방문자",
    "job": "장애 제보가 들어오면 두 언어의 입장 조건과 접근 경로를 다시 검증한다",
    "cutoff": "2026-11-14T23:59:59+09:00",
    "consent": true
  },
  "sources": [
    {
      "id": "corvel", "family": "local-iverilog-benchmark",
      "file": "fixtures/corvel.json", "observed_at": "2026-11-14T10:20:00+09:00",
      "sha256": "43f81a28f3798fe00aa7def938344a986ca095ea4d96e446f32da1453c7eb95a"
    },
    {
      "id": "visit", "family": "synthetic-cultural-visit-operations",
      "file": "fixtures/nation-brand.json", "observed_at": "2026-11-13T00:00:00+09:00",
      "sha256": "b45ece48efd56d2d5c6cb62bca60aa774fd7a2c578c79338c8c518d0fe8f5d94"
    }
  ],
  "particles": [
    {
      "id": "same-authority-drill", "kind": "observation",
      "statement": "Corvel에서 양쪽에 같은 새 제보·자료·권한을 주고 규칙 완료 시간과 별도 실패 미검출을 함께 쟀다. 이 비교 방법을 문화시설 안내로 옮긴다.",
      "conditions": ["task=incident-to-check", "transfer=method-only"], "supports": [], "requires": [],
      "evidence": [{"source": "corvel", "pointer": "/rows/4"}]
    },
    {
      "id": "bilingual-mismatch", "kind": "failure",
      "statement": "합성 방문 기록에서 운영 변경 뒤 서로 다른 두 언어 안내가 첫 방문 준비를 방해했다.",
      "conditions": ["scenario=synthetic", "service=cultural-visit"], "supports": [], "requires": [],
      "evidence": [{"source": "visit", "pointer": "/rows/2"}]
    },
    {
      "id": "notice-replay", "kind": "intervention",
      "statement": "공지 불일치 제보를 대조표로 바꾼다. 두 언어·이전 공지·대체 공지에서 시간과 접근 경로를 다시 확인하고 동일 자료와 수정권을 받은 상대와 비교한다.",
      "conditions": ["task=incident-to-check", "scenario=synthetic", "service=cultural-visit"],
      "supports": [], "requires": ["same-authority-drill", "bilingual-mismatch"],
      "evidence": [{"source": "corvel", "pointer": "/rows/4"}, {"source": "visit", "pointer": "/rows/3"}]
    },
    {
      "id": "visit-copy-tie", "kind": "counterexample",
      "statement": "합성 사례에서는 완전 복제자가 같은 방문 준비율과 갱신율에 도달한다. 실제 효과는 후속 방문 기록으로 시험한다.",
      "conditions": ["scenario=synthetic", "service=cultural-visit"],
      "supports": ["notice-replay"], "requires": [],
      "evidence": [{"source": "visit", "pointer": "/rows/6"}]
    },
    {
      "id": "corvel-copy-tie", "kind": "counterexample",
      "statement": "공개 L8 Icarus 대조에서 전체 코드를 받은 복제자가 같은 위반을 검출했다. 현재 문화시설의 효과 판정에는 그 결과를 적용하지 않는다.",
      "conditions": ["scope=public-l8", "engine=iverilog"],
      "supports": ["same-authority-drill"], "requires": [],
      "evidence": [{"source": "corvel", "pointer": "/rows/4"}]
    }
  ],
  "assembly": {
    "goal": "Corvel의 동일 조건 장애 비교를 가상 문화시설의 안내 갱신 훈련에 적용",
    "context": ["task=incident-to-check", "transfer=method-only", "scenario=synthetic", "service=cultural-visit"],
    "use": ["notice-replay"],
    "artifact": "운영 변경 제보와 공지 버전을 받아 각 언어의 안내, 대체 공지와 실제 방문 준비 완료 여부를 함께 확인하는 평가표",
    "outcome_metric": "처음 불일치를 확인하기까지의 시간, 두 언어 정정에 걸린 시간, 숨긴 불일치의 미검출 수, 실제 방문 준비 완료율",
    "kill_condition": "같은 공지와 갱신 권한을 가진 대안과 별도 변경 사례에서 시간·미검출·방문 준비율이 동률이면 현재 절차의 지속 우위 가설을 반박한다.",
    "controls": ["full-copy", "source-loss", "strongest-alternative"],
    "followup_days": 30
  }
}
