/* 455 (433-13 ③) 옛 정책 경고 — 진짜 `B05_Profile_UI_Profile_Data.ts` readAlignment + * `B05_Profile_UI_Profile_Alignment.ts` buildAlignment 를 Node 로 돌림. * 입력 argv[2] = 종단 정본 JSON · 표준출력 = { warnings: [법정 미달 글], policy }. */ const fs = require("fs"); const path = require("path"); const { makeLoader } = require("./helper_ts_stub_loader.cjs"); const ROOT = path.join(__dirname, "..", ".."); const { loadTs } = makeLoader({ root: ROOT, }); const LOGIC = path.join(ROOT, "B05_Profile", "logic"); const data = loadTs(path.join(LOGIC, "B05_Profile_UI_Profile_Data.ts")); const align = loadTs(path.join(LOGIC, "B05_Profile_UI_Profile_Alignment.ts")); const longitudinal = JSON.parse(fs.readFileSync(process.argv[2], "utf8")); const stored = data.readAlignment(longitudinal); const built = align.buildAlignment(align.toAlignmentBase(stored), align.emptyEdits()); process.stdout.write( JSON.stringify({ warnings: built.warnings.filter((text) => text.includes("법정 최소")), policy: stored.policy, }), );