import assert from "node:assert/strict"; import { mkdtemp, readFile, rm } from "node:fs/promises"; import { tmpdir } from "node:os"; import { join } from "node:path"; import { DEFAULT_CONFIG } from "../src/domain"; import { bootstrapProject } from "../src/persistence"; import { createState } from "../src/state"; import { validatePom } from "../src/validators"; const sandbox = await mkdtemp(join(tmpdir(), "pom-smoke-")); try { const config = { ...DEFAULT_CONFIG, projectRootMode: "cwd" as const }; const state = createState("POM Smoke", sandbox, config, true); await bootstrapProject(state); const ompConfig = await readFile(join(sandbox, ".omp", "config.yml"), "utf8"); assert.match(ompConfig, /dark: pom-nocturne/); assert.match(ompConfig, /task:\n\s+eager: preferred/); assert.match(ompConfig, /compaction:\n\s+strategy: snapcompact/); const board = await readFile(join(sandbox, "content", "production-board.md"), "utf8"); assert.match(board, /# Production Board/); const report = await validatePom(state, "quick", { writeReport: false }); assert.equal(report.passed, true); console.log(`POM runtime smoke PASS ยท ${report.checks.length} checks`); } finally { await rm(sandbox, { recursive: true, force: true }); }