{
  "schemaVersion": "1.0.0",
  "project": {
    "id": "tok-unmanned-forklift",
    "name": "TOK 물류 AI 고도화 사업",
    "board": "unmanned-forklift-business",
    "stage": "현장자료 수령·RFI/RFQ Gate 준비",
    "owner": "JY",
    "timezone": "Asia/Seoul",
    "lastUpdated": "2026-06-25",
    "dataStatus": "sample-template",
    "publicDisclosureLevel": "public-safe",
    "summary": "이 화면은 Notion 데이터베이스형 사용성을 확인하기 위한 공개 배포용 샘플/템플릿입니다. 현재 항목은 public 문서 흐름을 바탕으로 구성한 예시이며, JY가 공식 일정 JSON으로 교체해 운영합니다.",
    "dataOrigin": "public-doc-sample",
    "sourcePolicy": "public-only-deploy-root",
    "sampleNotice": "샘플 데이터입니다. 실제 확정 일정·할일은 public/data/project-schedule.json을 JY가 직접 갱신하거나 화면에서 JSON을 가져와 반영해야 합니다."
  },
  "views": {
    "defaultView": "summary",
    "statusOrder": [
      "backlog",
      "ready",
      "in-progress",
      "blocked",
      "review",
      "done",
      "archived"
    ],
    "stageOrder": [
      "stage-01-data-request",
      "stage-02-site-survey",
      "stage-03-rfi",
      "stage-04-rfq",
      "stage-05-poc-design",
      "stage-06-safety-review",
      "stage-07-decision"
    ]
  },
  "stages": [
    {
      "id": "stage-01-data-request",
      "name": "자료요청",
      "order": 1,
      "status": "in-progress",
      "startDate": "2026-06-25",
      "endDate": null,
      "dateConfidence": "estimated",
      "goal": "TOK 현장 도면, 사진, 물동량, 차량 정차 위치, Wi-Fi/AP, 안전구역 자료를 확보한다.",
      "entryCriteria": [
        "1차 미팅 후 미확정 항목 목록 정리",
        "M01~M04별 필요 데이터 분리"
      ],
      "exitCriteria": [
        "M01~M04별 확인필요 항목 축소",
        "현장실사 체크리스트 초안 작성"
      ],
      "decisionGate": "Hold",
      "ownerRole": "JY / TOK",
      "dependsOn": []
    },
    {
      "id": "stage-02-site-survey",
      "name": "현장실사",
      "order": 2,
      "status": "ready",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "출발·도착점, 통로폭, 회전반경, 출입문, 노면, 통신, 보행자·차량 혼재 조건을 실측한다.",
      "entryCriteria": [
        "현장자료 1차 수령",
        "실측 항목 합의"
      ],
      "exitCriteria": [
        "후보 구간별 Go/Hold/No-Go 초안",
        "RFI 발송 범위 확정"
      ],
      "decisionGate": "Pending",
      "ownerRole": "JY / TOK / 현장 담당",
      "dependsOn": [
        "stage-01-data-request"
      ]
    },
    {
      "id": "stage-03-rfi",
      "name": "공급사 RFI",
      "order": 3,
      "status": "ready",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "후보 공급사의 장비, FMS, API/log, A/S, 인증, 국내 지원 가능 범위를 확인한다.",
      "entryCriteria": [
        "현장 조건 요약",
        "질문 패키지 준비"
      ],
      "exitCriteria": [
        "공급사별 책임 가능 범위 확인",
        "RFQ 대상 축소"
      ],
      "decisionGate": "Pending",
      "ownerRole": "JY / 공급사",
      "dependsOn": [
        "stage-02-site-survey"
      ]
    },
    {
      "id": "stage-04-rfq",
      "name": "RFQ",
      "order": 4,
      "status": "backlog",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "1대 유상검증과 2대·4대 확장 견적 구조를 구매·렌탈·리스·유상검증으로 분리 확인한다.",
      "entryCriteria": [
        "RFI 응답 확보",
        "PoC 후보 구간 1차 선정"
      ],
      "exitCriteria": [
        "비용 구조와 민감도 확인",
        "제한구역 PoC 설계 여부 판단"
      ],
      "decisionGate": "Pending",
      "ownerRole": "JY / 공급사 / 금융·리스 파트너",
      "dependsOn": [
        "stage-03-rfi"
      ]
    },
    {
      "id": "stage-05-poc-design",
      "name": "제한구역 PoC 설계",
      "order": 5,
      "status": "backlog",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "범위, KPI, 안전통제, 수동복구, 데이터 리포트 기준과 중단 기준을 확정한다.",
      "entryCriteria": [
        "RFQ 비교",
        "안전·책임 경계 초안"
      ],
      "exitCriteria": [
        "PoC 계획과 중단 기준 확정",
        "조건부 Go 판단"
      ],
      "decisionGate": "Pending",
      "ownerRole": "JY / TOK / 공급사",
      "dependsOn": [
        "stage-04-rfq"
      ]
    },
    {
      "id": "stage-06-safety-review",
      "name": "안전검토",
      "order": 6,
      "status": "backlog",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "E-stop, 정지선, 작업자 접근통제, 승인 절차, 교육, 보험·책임 경계를 검토한다.",
      "entryCriteria": [
        "PoC 동선·장비 조건 초안",
        "TOK 안전 기준 확인"
      ],
      "exitCriteria": [
        "안전 승인 전 자동 미션 금지 기준 문서화",
        "보류/중단 조건 명확화"
      ],
      "decisionGate": "Pending",
      "ownerRole": "TOK / JY / 공급사",
      "dependsOn": [
        "stage-05-poc-design"
      ]
    },
    {
      "id": "stage-07-decision",
      "name": "Go/Hold/No-Go",
      "order": 7,
      "status": "backlog",
      "startDate": null,
      "endDate": null,
      "dateConfidence": "unknown",
      "goal": "현장·공급사·비용·안전 자료를 기준으로 실행, 보류, 중단 판단을 기록한다.",
      "entryCriteria": [
        "현장실사·RFI/RFQ·안전검토 결과 정리"
      ],
      "exitCriteria": [
        "결정 기록",
        "후속 실행 또는 보류 사유 문서화"
      ],
      "decisionGate": "Pending",
      "ownerRole": "JY / TOK",
      "dependsOn": [
        "stage-06-safety-review"
      ]
    }
  ],
  "milestones": [
    {
      "id": "ms-current-docs",
      "title": "구상서·시나리오 상세·WebGL 공개 문서 정리",
      "date": "2026-06-25",
      "dateConfidence": "confirmed",
      "status": "achieved",
      "gateType": "Delivery",
      "decision": "M01~M04 공개 문서와 3D 시각화 링크를 공유 가능한 구조로 정리",
      "evidenceLinks": [
        "link-concept",
        "link-detail",
        "link-webgl-timeline",
        "link-webgl-m01",
        "link-webgl-m02",
        "link-webgl-m03",
        "link-webgl-m04"
      ],
      "relatedTaskIds": [
        "task-public-docs",
        "task-webgl-visuals"
      ],
      "publicSummary": "M01~M04 흐름과 시각화 자료를 public 배포 루트에서 확인 가능하게 정리했다.",
      "internalNotes": "공개 UI 기본 모드에서는 내부 작업 카드 정보 숨김."
    },
    {
      "id": "ms-data-request-ready",
      "title": "TOK 현장자료 요청 패키지 준비",
      "date": null,
      "dateConfidence": "unknown",
      "status": "in-progress",
      "gateType": "Review",
      "decision": null,
      "evidenceLinks": [
        "link-prd"
      ],
      "relatedTaskIds": [
        "task-data-request-list",
        "task-site-survey-checklist"
      ],
      "publicSummary": "도면, 사진, 물동량, 작업시간, 안전조건, 출입문·통로폭 요청 항목을 정리한다.",
      "internalNotes": "다음 미팅일과 자료 제공 예정일은 [확인필요]."
    },
    {
      "id": "ms-site-survey-gate",
      "title": "현장실사 진행 여부 Gate",
      "date": null,
      "dateConfidence": "unknown",
      "status": "upcoming",
      "gateType": "Hold",
      "decision": null,
      "evidenceLinks": [],
      "relatedTaskIds": [
        "task-site-survey-checklist",
        "task-m01-m04-data-gap"
      ],
      "publicSummary": "현장자료 수령 후 실제 실측·동선 확인을 진행할지 판단한다.",
      "internalNotes": "TOK 현장 담당자 일정 확인 필요."
    },
    {
      "id": "ms-rfi-send",
      "title": "공급사 RFI 발송 범위 확정",
      "date": null,
      "dateConfidence": "unknown",
      "status": "upcoming",
      "gateType": "Decision",
      "decision": null,
      "evidenceLinks": [
        "link-supplier-contact",
        "link-integration-strategy"
      ],
      "relatedTaskIds": [
        "task-rfi-package",
        "task-supplier-shortlist"
      ],
      "publicSummary": "장비·FMS/API·A/S·인증·국내 지원 확인 질문 범위를 확정한다.",
      "internalNotes": "확정 전까지 특정 공급사 도입 가능성으로 표현하지 않음."
    },
    {
      "id": "ms-rfq-ready",
      "title": "1대 유상검증·확장 견적 RFQ 준비",
      "date": null,
      "dateConfidence": "unknown",
      "status": "upcoming",
      "gateType": "Review",
      "decision": null,
      "evidenceLinks": [],
      "relatedTaskIds": [
        "task-rfq-template",
        "task-cost-model"
      ],
      "publicSummary": "1대 검증과 2대·4대 확장 비용을 분리 견적 받을 수 있는 구조를 만든다.",
      "internalNotes": "확정 견적 전까지 비용 수치에 [추정] 유지."
    },
    {
      "id": "ms-poc-go-hold",
      "title": "제한구역 PoC Go/Hold/No-Go 판단",
      "date": null,
      "dateConfidence": "unknown",
      "status": "upcoming",
      "gateType": "Go",
      "decision": null,
      "evidenceLinks": [],
      "relatedTaskIds": [
        "task-poc-kpi-template",
        "task-safety-review"
      ],
      "publicSummary": "범위, KPI, 안전통제, 책임 경계, 데이터 리포트 기준이 맞을 때만 조건부 Go로 전환한다.",
      "internalNotes": "안전 승인 전 자동 미션 금지."
    }
  ],
  "tasks": [
    {
      "id": "task-public-docs",
      "title": "구상서·상세 문서 공개 링크 정리",
      "type": "document",
      "stageId": "stage-01-data-request",
      "status": "done",
      "priority": "P1",
      "workstream": "public-docs",
      "startDate": "2026-06-24",
      "dueDate": "2026-06-25",
      "dateConfidence": "confirmed",
      "progress": 100,
      "owner": "JY",
      "description": "TOK 팔레트 물류 자동화 구상서와 시나리오 상세 문서를 public 배포 구조에서 열람 가능하게 정리한다.",
      "acceptanceCriteria": [
        "구상서 링크가 문서 홈에 표시",
        "상세 시나리오 링크가 문서 홈에 표시",
        "외부 공유용 문서에 내부 로컬 경로 미노출"
      ],
      "dependencies": [],
      "blockedReason": null,
      "publicNotes": "기본 문서 흐름은 구상서 → 상세 시나리오 → WebGL 시각화 순서로 확인한다.",
      "privateNotes": "내부 검수 이력은 공개 UI 기본 모드에서 숨김.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-concept",
        "link-detail"
      ],
      "externalRefs": {},
      "tags": [
        "문서",
        "공개",
        "M01",
        "M02",
        "M03",
        "M04"
      ],
      "updatedAt": "2026-06-25T00:00:00+09:00"
    },
    {
      "id": "task-webgl-visuals",
      "title": "M01~M04 WebGL 시각화 동기화",
      "type": "implementation",
      "stageId": "stage-01-data-request",
      "status": "done",
      "priority": "P1",
      "workstream": "visualization",
      "startDate": "2026-06-24",
      "dueDate": "2026-06-25",
      "dateConfidence": "confirmed",
      "progress": 100,
      "owner": "JY",
      "description": "M01~M04 시나리오의 건물 배치와 지게차 예상 경로를 WebGL 공개 링크로 정리한다.",
      "acceptanceCriteria": [
        "M01~M04 링크가 public에서 열림",
        "쿼터뷰 시뮬레이터 링크 표시",
        "구상서와 시각화 설명 일치"
      ],
      "dependencies": [
        "task-public-docs"
      ],
      "blockedReason": null,
      "publicNotes": "WebGL은 회의용 공간 이해 자료이며 최종 위치·안전승인·ROI 근거는 현장 기준도와 실측으로 보정한다.",
      "privateNotes": "위치·거리·ROI 확정 근거로 오해되지 않도록 설명 유지.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-webgl-m01",
        "link-webgl-m02",
        "link-webgl-m03",
        "link-webgl-m04",
        "link-webgl-s01"
      ],
      "externalRefs": {},
      "tags": [
        "WebGL",
        "M01",
        "M02",
        "M03",
        "M04"
      ],
      "updatedAt": "2026-06-25T00:00:00+09:00"
    },
    {
      "id": "task-data-request-list",
      "title": "TOK 현장자료 요청 리스트 정리",
      "type": "request",
      "stageId": "stage-01-data-request",
      "status": "in-progress",
      "priority": "P0",
      "workstream": "data-request",
      "startDate": "2026-06-25",
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 55,
      "owner": "JY",
      "description": "도면, 현장 사진, 물동량, 작업시간, 안전조건, 출입문·통로폭, Wi-Fi/AP, 차량 정차 위치 요청 항목을 M01~M04 기준으로 정리한다.",
      "acceptanceCriteria": [
        "M01~M04별 필수 자료 분리",
        "현장실사에서 확인할 항목과 사전 수령 자료 분리",
        "확정되지 않은 항목은 [확인필요] 유지"
      ],
      "dependencies": [
        "task-public-docs"
      ],
      "blockedReason": null,
      "publicNotes": "현장자료 수령 전에는 일정과 수치를 확정하지 않는다.",
      "privateNotes": "다음 미팅일과 자료 제공 예정일 확인 필요.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-prd",
        "link-concept"
      ],
      "externalRefs": {},
      "tags": [
        "자료요청",
        "M01",
        "M02",
        "M03",
        "M04",
        "확인필요"
      ],
      "updatedAt": "2026-06-25T09:00:00+09:00"
    },
    {
      "id": "task-m01-m04-data-gap",
      "title": "M01~M04 미확정 항목 갭 분석",
      "type": "analysis",
      "stageId": "stage-01-data-request",
      "status": "ready",
      "priority": "P0",
      "workstream": "data-request",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 20,
      "owner": "JY",
      "description": "M01 제조동→F창고, M02 F창고→11.5톤 차량, M03 A~E→제조동, M04 입고차량→A~E 렉 보관별 미확정 조건을 분리한다.",
      "acceptanceCriteria": [
        "물리 조건",
        "통신 조건",
        "안전 조건",
        "운영 데이터",
        "공급사 확인 질문으로 전환"
      ],
      "dependencies": [
        "task-data-request-list"
      ],
      "blockedReason": null,
      "publicNotes": "M02 자동상차, M03 원자재/MSDS, M04 하차·렉 보관은 실행 Gate로 분리한다.",
      "privateNotes": "MSDS 표기 우선. M04는 하차/버퍼/렉 보관을 분리 검토.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-concept",
        "link-detail"
      ],
      "externalRefs": {},
      "tags": [
        "갭분석",
        "MSDS",
        "안전",
        "확인필요"
      ],
      "updatedAt": "2026-06-25T09:15:00+09:00"
    },
    {
      "id": "task-site-survey-checklist",
      "title": "현장실사 체크리스트 작성",
      "type": "document",
      "stageId": "stage-02-site-survey",
      "status": "ready",
      "priority": "P0",
      "workstream": "site-survey",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 10,
      "owner": "JY",
      "description": "통로폭, 회전반경, 출입문, 버퍼, 위험물 조건, 차량 정렬, AP 위치, 혼재동선을 실측 체크리스트로 전환한다.",
      "acceptanceCriteria": [
        "현장 도면 기준 체크 항목",
        "사진 촬영 위치",
        "안전·EHS 확인 항목",
        "공급사 질문 연결"
      ],
      "dependencies": [
        "task-data-request-list",
        "task-m01-m04-data-gap"
      ],
      "blockedReason": null,
      "publicNotes": "현장실사는 적용 가능 구간과 보류 구간을 분리하는 Gate다.",
      "privateNotes": "TOK 현장 담당자 동행 가능 시간 [확인필요].",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-prd"
      ],
      "externalRefs": {},
      "tags": [
        "현장실사",
        "체크리스트",
        "Gate"
      ],
      "updatedAt": "2026-06-25T09:20:00+09:00"
    },
    {
      "id": "task-supplier-shortlist",
      "title": "공급사 후보군·컨택 전략 정리",
      "type": "analysis",
      "stageId": "stage-03-rfi",
      "status": "review",
      "priority": "P1",
      "workstream": "rfi",
      "startDate": "2026-06-25",
      "dueDate": null,
      "dateConfidence": "estimated",
      "progress": 75,
      "owner": "JY",
      "description": "무인지게차/AGV/AMR 후보 공급사의 한국 A/S, 인증, API/FMS, 레퍼런스 확인 전략을 정리한다.",
      "acceptanceCriteria": [
        "국내 A/S 확인 질문",
        "API/log 제공 범위 질문",
        "장비·FMS·SI 비용 분리 질문",
        "레퍼런스 공개 가능 범위 확인"
      ],
      "dependencies": [
        "task-m01-m04-data-gap"
      ],
      "blockedReason": null,
      "publicNotes": "공급사 후보는 도입 확정이 아니라 RFI/RFQ 질문 대상이다.",
      "privateNotes": "실사 전 특정 공급사 확정 표현 금지.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-supplier-contact",
        "link-integration-strategy"
      ],
      "externalRefs": {},
      "tags": [
        "공급사",
        "RFI",
        "API",
        "A/S"
      ],
      "updatedAt": "2026-06-25T10:00:00+09:00"
    },
    {
      "id": "task-rfi-package",
      "title": "장비사 RFI 질문 패키지 작성",
      "type": "rfi",
      "stageId": "stage-03-rfi",
      "status": "ready",
      "priority": "P0",
      "workstream": "rfi",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 30,
      "owner": "JY",
      "description": "장비 제원, 실외 조건, FMS/API/log, 안전정지, A/S, 인증, 국내 설치 가능 범위를 묻는 RFI 문안을 만든다.",
      "acceptanceCriteria": [
        "M01~M04별 질문 분리",
        "M02 자동상차 책임 경계 질문 포함",
        "한국 A/S·인증 질문 포함",
        "API/log 필드 질문 포함"
      ],
      "dependencies": [
        "task-supplier-shortlist",
        "task-site-survey-checklist"
      ],
      "blockedReason": null,
      "publicNotes": "RFI는 적용 가능성과 책임 범위를 확인하기 위한 질문 단계다.",
      "privateNotes": "NDA 후 상세 현장 조건 공유 문구 유지.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-integration-strategy"
      ],
      "externalRefs": {},
      "tags": [
        "RFI",
        "FMS",
        "API",
        "자동상차",
        "안전"
      ],
      "updatedAt": "2026-06-25T10:10:00+09:00"
    },
    {
      "id": "task-rfq-template",
      "title": "RFQ 견적 템플릿 설계",
      "type": "rfq",
      "stageId": "stage-04-rfq",
      "status": "backlog",
      "priority": "P1",
      "workstream": "rfq",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 0,
      "owner": "JY",
      "description": "1대 유상검증, 2대/4대 확장, 구매·렌탈·리스, FMS/ACS, SI/맵핑, 안전설비, 충전, 교육, 유지보수, API/log 비용을 분리 견적받는 템플릿을 만든다.",
      "acceptanceCriteria": [
        "비용 항목 분리",
        "확장 수량 비교",
        "유상검증 범위 분리",
        "누락 항목 체크"
      ],
      "dependencies": [
        "task-rfi-package"
      ],
      "blockedReason": null,
      "publicNotes": "확정 견적 전까지 비용은 [추정] 또는 [확인필요]로 둔다.",
      "privateNotes": "1대 기준과 2/4대 확장 기준을 혼합하지 않음.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [],
      "externalRefs": {},
      "tags": [
        "RFQ",
        "견적",
        "PoC",
        "확인필요"
      ],
      "updatedAt": "2026-06-25T10:20:00+09:00"
    },
    {
      "id": "task-cost-model",
      "title": "CAPEX/OPEX·PoC 비용 민감도 모델 정리",
      "type": "analysis",
      "stageId": "stage-04-rfq",
      "status": "backlog",
      "priority": "P2",
      "workstream": "rfq",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 0,
      "owner": "JY",
      "description": "장비 본체, FMS, 안전설비, 설치·시운전, 유지보수, 리스/렌탈 비용을 분리해 PoC 학습가치와 확장 민감도를 비교한다.",
      "acceptanceCriteria": [
        "확정 견적 전 수치에는 [추정] 표시",
        "1대/2대/4대 비교",
        "CAPEX/OPEX 분리",
        "No-Go 비용 기준 초안"
      ],
      "dependencies": [
        "task-rfq-template"
      ],
      "blockedReason": null,
      "publicNotes": "비용 판단은 견적과 TOK 운영 데이터 수령 이후 보정한다.",
      "privateNotes": "ROI 확정 표현 금지.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-concept"
      ],
      "externalRefs": {},
      "tags": [
        "CAPEX",
        "OPEX",
        "ROI",
        "추정"
      ],
      "updatedAt": "2026-06-25T10:30:00+09:00"
    },
    {
      "id": "task-poc-kpi-template",
      "title": "제한구역 1대 검증 KPI 템플릿 작성",
      "type": "document",
      "stageId": "stage-05-poc-design",
      "status": "backlog",
      "priority": "P1",
      "workstream": "poc-design",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 0,
      "owner": "JY",
      "description": "사이클타임, 수동개입률, 안전정지, 오류 로그, 팔레트 픽업·드롭 성공률, 복구시간을 측정하는 PoC KPI 템플릿을 만든다.",
      "acceptanceCriteria": [
        "성공 기준",
        "중단 기준",
        "수동복구 기준",
        "로그 제출 양식",
        "리포트 구조"
      ],
      "dependencies": [
        "task-rfq-template",
        "task-safety-review"
      ],
      "blockedReason": null,
      "publicNotes": "PoC는 제한구역 1대 검증으로 학습가치를 확인하는 단계다.",
      "privateNotes": "자동 상차는 안전승인·차량 정렬 조건 충족 전 실행 금지.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [],
      "externalRefs": {},
      "tags": [
        "PoC",
        "KPI",
        "안전",
        "로그"
      ],
      "updatedAt": "2026-06-25T10:40:00+09:00"
    },
    {
      "id": "task-safety-review",
      "title": "안전·책임 경계 검토표 작성",
      "type": "review",
      "stageId": "stage-06-safety-review",
      "status": "blocked",
      "priority": "P0",
      "workstream": "safety",
      "startDate": null,
      "dueDate": null,
      "dateConfidence": "unknown",
      "progress": 15,
      "owner": "JY / TOK",
      "description": "E-stop, 보행자·차량 분리, 시간대 통제, 보험, H/W 보증, 제조사/OEM 기술지원, 운영 책임 경계를 정리한다.",
      "acceptanceCriteria": [
        "TOK 안전 승인 조건 확인",
        "공급사 안전 자료 요청",
        "H/W 보증·A/S 책임 분리",
        "운영 중단 기준"
      ],
      "dependencies": [
        "task-site-survey-checklist",
        "task-rfi-package"
      ],
      "blockedReason": "TOK 현장 안전 기준과 보험·책임 경계 입력이 필요함 [확인필요]",
      "publicNotes": "안전 승인 전 자동 미션은 금지하고 보류 조건을 명확히 둔다.",
      "privateNotes": "책임 전가 구조면 No-Go 조건으로 관리.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-prd"
      ],
      "externalRefs": {},
      "tags": [
        "안전",
        "EHS",
        "책임경계",
        "Hold"
      ],
      "updatedAt": "2026-06-25T10:50:00+09:00"
    },
    {
      "id": "task-jy-review-deploy",
      "title": "JY 검수·public 배포 확인",
      "type": "review",
      "stageId": "stage-07-decision",
      "status": "review",
      "priority": "P1",
      "workstream": "deployment",
      "startDate": "2026-06-25",
      "dueDate": null,
      "dateConfidence": "estimated",
      "progress": 60,
      "owner": "JY",
      "description": "공개 문서와 일정 페이지에 내부 로컬 경로, 작업자용 메타, 확정되지 않은 주장 표현이 노출되지 않는지 검수한다.",
      "acceptanceCriteria": [
        "public 링크 열람 확인",
        "내부 절대경로 미노출",
        "[확인필요]/[추정] 표기 유지",
        "검수 후 공유 범위 확정"
      ],
      "dependencies": [
        "task-public-docs",
        "task-webgl-visuals"
      ],
      "blockedReason": null,
      "publicNotes": "고객 공유 전 민감정보와 과도한 확정 표현을 확인한다.",
      "privateNotes": "검수 후 Cloudflare Pages 공유 URL 확인 필요.",
      "kanbanTaskId": null,
      "artifactLinks": [],
      "publicLinks": [
        "link-home"
      ],
      "externalRefs": {},
      "tags": [
        "검수",
        "배포",
        "public"
      ],
      "updatedAt": "2026-06-25T11:00:00+09:00"
    }
  ],
  "links": [
    {
      "id": "link-home",
      "label": "문서 홈",
      "url": "index.html",
      "kind": "public-doc",
      "visibility": "public",
      "relatedTaskIds": [
        "task-jy-review-deploy"
      ],
      "relatedMilestoneIds": []
    },
    {
      "id": "link-prd",
      "label": "TOK 물류 AI 고도화 PRD",
      "url": "#/prd/PRD.md",
      "kind": "public-doc",
      "visibility": "public",
      "relatedTaskIds": [
        "task-data-request-list",
        "task-safety-review"
      ],
      "relatedMilestoneIds": [
        "ms-data-request-ready"
      ]
    },
    {
      "id": "link-concept",
      "label": "TOK 팔레트 물류 자동화 사업 구상서",
      "url": "#/concept/TOK-scenario-concept.md",
      "kind": "public-doc",
      "visibility": "public",
      "relatedTaskIds": [
        "task-public-docs",
        "task-cost-model"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-detail",
      "label": "TOK 팔레트 물류 자동화 시나리오 상세",
      "url": "#/concept/TOK-scenario-detail.md",
      "kind": "public-doc",
      "visibility": "public",
      "relatedTaskIds": [
        "task-public-docs"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-timeline",
      "label": "WebGL 워크플로 시계열표",
      "url": "#/concept/TOK-webgl-workflow-timeline.md",
      "kind": "public-doc",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-m01",
      "label": "WebGL M01 제조동 → F창고",
      "url": "exports/opengl/tok-m01-webgl.html",
      "kind": "visual",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-m02",
      "label": "WebGL M02 F창고 → 11.5톤 윙바디",
      "url": "exports/opengl/tok-m02-webgl.html",
      "kind": "visual",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-m03",
      "label": "WebGL M03 A~E창고 → 제조동",
      "url": "exports/opengl/tok-m03-webgl.html",
      "kind": "visual",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-m04",
      "label": "WebGL M04 11.5톤 윙바디 → A~E창고",
      "url": "exports/opengl/tok-m04-webgl.html",
      "kind": "visual",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": [
        "ms-current-docs"
      ]
    },
    {
      "id": "link-webgl-s01",
      "label": "OpenGL/WebGL 쿼터뷰 시뮬레이터",
      "url": "exports/opengl/tok-s01-webgl-quarterview-simulator.html",
      "kind": "visual",
      "visibility": "public",
      "relatedTaskIds": [
        "task-webgl-visuals"
      ],
      "relatedMilestoneIds": []
    },
    {
      "id": "link-supplier-contact",
      "label": "공급사 컨택 전략",
      "url": "reports/TOK-무인지게차-공급사-컨택전략-20260625.html",
      "kind": "report",
      "visibility": "public",
      "relatedTaskIds": [
        "task-supplier-shortlist"
      ],
      "relatedMilestoneIds": [
        "ms-rfi-send"
      ]
    },
    {
      "id": "link-integration-strategy",
      "label": "SDK/API/FMS 연동 전략",
      "url": "reports/TOK-무인지게차-SDK-API-FMS-연동전략-20260625.html",
      "kind": "report",
      "visibility": "public",
      "relatedTaskIds": [
        "task-rfi-package",
        "task-supplier-shortlist"
      ],
      "relatedMilestoneIds": [
        "ms-rfi-send"
      ]
    }
  ],
  "risks": [
    {
      "id": "risk-safety",
      "title": "보행자·차량 혼재",
      "level": "high",
      "status": "open",
      "mitigation": "운영시간 분리, 정지선, E-stop, 승인 절차를 안전 Gate로 관리",
      "relatedTaskIds": [
        "task-safety-review",
        "task-site-survey-checklist"
      ]
    },
    {
      "id": "risk-m02-loading",
      "title": "M02 자동상차 차량 정렬·책임 경계",
      "level": "high",
      "status": "open",
      "mitigation": "차량 정차 위치, 윙바디 개방 방향, 수동복구, 공급사 책임 범위를 RFI/RFQ에 포함",
      "relatedTaskIds": [
        "task-rfi-package",
        "task-rfq-template"
      ]
    },
    {
      "id": "risk-data-unknown",
      "title": "현장자료·일정 미확정",
      "level": "medium",
      "status": "open",
      "mitigation": "날짜·수치는 [확인필요] 또는 [추정]으로 유지하고 확정값처럼 표시하지 않음",
      "relatedTaskIds": [
        "task-data-request-list",
        "task-m01-m04-data-gap"
      ]
    },
    {
      "id": "risk-supplier-support",
      "title": "국내 A/S·인증·부품 리드타임 미확정",
      "level": "medium",
      "status": "open",
      "mitigation": "공급사 RFI에서 국내 설치/시운전/A/S 수행 가능 여부와 인증 자료를 확인",
      "relatedTaskIds": [
        "task-supplier-shortlist",
        "task-rfi-package"
      ]
    }
  ],
  "changeLog": [
    {
      "version": "1.0.0",
      "date": "2026-06-25",
      "author": "JY",
      "changes": "정적 일정·마일스톤 관리 페이지용 초기 JSON 데이터 생성"
    },
    {
      "version": "1.0.1",
      "date": "2026-06-25",
      "author": "JY",
      "changes": "샘플/템플릿 데이터 표시와 public-only 운영 기준 명시, Notion DB형 Gantt 스케일 전환 대응"
    }
  ]
}
