SCM 9

SCM SAP split-expedite approval evaluation: PO000318 승인 callback과 REBEC shadow ledger를 닫은 SCM-047

PO000318은 이제 단순 경보가 아니라 승인 callback이 들어온 주문이다. 해야 할 일은 queue 숫자를 보는 것이 아니라, 84개 critical kit를 지금 예약할지 결정하는 것이다.1. 운영자가 먼저 보는 주문 case file주문 번호lane현재 shipping statusoriginal due date외부 신호영향 이유아무것도 안 했을 때 결과추천 액션tradeoffPO000318LANE-KR-US-AI-SEAoperator approved split expedite for 84 critical kits; expedited split is in capacity reservation simulation, remaining 336 kits stay on ocean ETA 2026-05-..

SCM PDF identity watch executor: PO000225 WEO PDF hash가 baseline과 일치해 watch를 clean으로 닫은 SCM-045

PO000225의 WEO PDF watch는 이제 닫아도 된다. 이번에는 웹 표면만 본 것이 아니라 PDF binary까지 다시 받아 SCM-042 baseline과 맞췄다.1. 운영자가 먼저 보는 문서 case file문서 엔티티연결 주문lane현재 문서 상태원래 due date외부 신호영향 이유아무것도 안 했을 때 결과추천 액션tradeoffDOC-WEO-2026APR-COMPILED-PDFPO000225PO000225 docs branch -> IMF WEO compiled PDFclosed_by_direct_asset_capture; scheduled watch result identity_match_clean2026-04-302026-05-01T16:17:44+09:00 기준 IMF direct..

SCM watch-window guard: PO000225 WEO PDF watch를 09시 전에 완료 처리하지 않게 막은 SCM-044

PO000225는 아직 watch 완료로 닫을 주문이 아니다. 날짜는 2026-04-30이 맞지만, 실행 기준은 09:00 KST다.1. 운영자가 먼저 보는 문서 case file문서 엔티티연결 주문lane현재 문서 상태원래 due date외부 신호영향 이유아무것도 안 했을 때 결과추천 액션tradeoffDOC-WEO-2026APR-COMPILED-PDFPO000225PO000225 docs branch -> IMF WEO compiled PDFclosed_by_direct_asset_capture; April 30 watch date reached but 09:00 KST window is not open yet2026-04-302026-04-30T01:04:45+09:00 기준 IMF issue pa..

SCM SAP pre-watch execution gate: PO000225 WEO PDF branch를 4월 30일 전에는 다시 열지 않게 막은 SCM-043

PO000225는 지금 다시 열 주문이 아니다. 닫힌 상태를 유지하되, 2026-04-30 09:00 KST에는 IMF WEO PDF의 URL, page count, SHA-256, byte size, errata date를 한 번에 비교해야 한다.1. 운영자가 먼저 보는 문서 case file문서 엔티티연결 주문lane현재 문서 상태원래 due date외부 신호영향 이유아무것도 안 했을 때 결과추천 액션tradeoffDOC-WEO-2026APR-COMPILED-PDFPO000225PO000225 docs branch -> IMF WEO compiled PDFclosed_by_direct_asset_capture; 2026-04-30 09:00 KST PDF identity watch 대기2026-04-..

SCM errata watch rollback 큐: PO000225 WEO PDF branch를 닫은 뒤 4월 30일에 다시 열 조건을 건 SCM-041

PO000225는 SCM-040에서 문서 branch를 닫았다. IMF April 2026 WEO full report PDF가 직접 URL로 열렸기 때문이다. 그런데 닫았다고 끝은 아니다. PDF 안에는 2026-04-22 errata가 있고, 이전 guard의 기준일은 2026-04-30이었다.이번 run의 문제는 다시 닫을지 말지가 아니다. 닫힌 상태를 유지하되, IMF PDF나 errata가 바뀌었을 때 branch를 다시 열 조건을 남기는 일이다. 그래서 2026-04-30 09:00 KST watch queue와 rollback 대안을 만들었다.1. 운영자가 먼저 보는 문서 case file문서 엔티티연결 주문현재 문서 상태원래 due date외부 신호영향 이유아무것도 안 했을 때 결과추천 액..

SCM pre-due docs closure guard Python 코드 해설: PO000225 compiled PDF branch를 4월 30일 전에는 닫지 못하게 막은 SCM-038

SCM-037에서 PO000225 docs branch에 compiled PDF watch gate를 만들었다. 그런데 watch gate만으로는 부족하다. 2026-04-30 전에 누군가 "issue page도 live고 data도 있으니 이제 문서 branch를 닫자"고 판단하면, 시스템은 실제 direct asset 없이 closure를 주장하게 된다.그래서 2026-04-20 01:03:43 KST 기준으로 IMF official surfaces를 다시 확인하고, 이번에는 actual closure가 아니라 pre-due guard를 만들었다. 결론은 단순하다. DOC-WEO-2026APR-COMPILED-PDF는 아직 닫는 대상이 아니라 닫지 못하게 막아야 하는 대상이다.1. 운영자가 먼저 보는..

SCM compiled PDF watch gate Python 코드 해설: PO000225 docs branch를 IMF direct asset 전까지 놓치지 않게 묶는 SCM-037

SCM-036까지 오면 PO000225 주문 자체는 거의 닫힌다. 하지만 그렇다고 series를 끝냈다고 쓰면 안 된다. closure trail에서 마지막으로 비어 있는 칸이 IMF April 2026 WEO compiled PDF direct asset이기 때문이다.2026-04-19 01:07:12 KST에 IMF official surfaces를 다시 대조했을 때 issue page는 여전히 compiled full report PDF를 2026-04-30로 예고하고 있었고, all-issues page, data portal, WEO press briefing transcript는 이미 live였다. 외부 boundary는 안정적이지만 direct asset만 future-dated라는 뜻이다...

SCM synthetic generator Python 코드 해설: batch 생성과 validation 규칙을 실제 함수로 읽는 SCM-003

SCM-003은 처음으로 실제 Python이 들어간 단계다. SCM-002에서 고정한 schema와 seed spec을 입력으로 받아서 synthetic batch를 만들고, 바로 검증 리포트까지 쓰는 두 개의 스크립트를 붙였다.핵심 파일은 두 개다.scripts/scm_sap_generate.pyscripts/scm_sap_validate.py이 글에서는 두 파일이 실제로 무엇을 만드는지 함수 기준으로 짧게 읽는다.1. generator는 어떤 파일을 읽고 어떤 배치를 쓰는지부터 고정한다가장 먼저 보는 코드는 parse_args()다.parser.add_argument("--seed-spec", default=str(ROOT / "docs/scm-sap-ai/seeds/scm-sap-seed-spec-..

SCM domain framing 코드 해설: ontology entity, relation, REBEC actor를 실제 명세로 읽는 SCM-001

SCM-001은 아직 Python을 돌리는 단계가 아니었다. 대신 나중에 생성기, 이상탐지, 액션 워크플로우가 모두 같은 말을 쓰도록 용어와 경계를 먼저 잠그는 단계였다. 그래서 이 글에서는 실제 스크립트 대신, 실제 명세 블록을 코드처럼 읽는다.1. ontology node는 무엇을 공급망 객체로 볼지 먼저 고정한다가장 먼저 잠근 것은 ontology node 목록이다.- Plant- Supplier- Material- PurchaseOrder- Shipment- InventoryPosition- DemandSignal- InternationalSignal- AnomalyEvent- MitigationAction이 목록은 단순해 보이지만 역할이 분명하다.Plant, Supplier, Material은 ..