INNER CODE UNIT · JavaScript

parseDraftArtifact

entropy-cloud/nop-entropy · tools/mission-driver/src/main.js:211

function parseDraftArtifact(resultText, missionsDir) {
  const out = { missionName: null, roadmapPath: null, missionFile: null };
  // 1. <MISSION_FILE> tag
  if (typeof resultText === "string") {
    // mdr-remediate-3 N1: strip ANSI BEFORE the marker match (see extractBriefPath).
    const clean = stripAnsiControl(resultText);
    const m = clean.match(/<MISSION_FILE>\s*([^\s<]+)\s*<\/MISSION_FILE>/i);
    if (m && m[1]) {
      const file = m[1].trim();
      try {
        const mission = JSON.parse(readFileSync(file, "utf8"));
        if (mission && typeof mission === "object") {
          out.missionFile = file;
          out.missionName = mission.name || basenameNoExt(file);
          out.roadmapPath = mission.roadmapPath || null;
          // WI3 (draft-robustness-design §4.3.3): warn when the resolved
          // mission.json lands outside the expected missionsDir — usually a
          // projectRoot / cwd mismatch that splits artifacts across two roots.

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…