Files

35 lines
2.2 KiB
JavaScript

import fs from "node:fs";
const D = "d2/";
const chk = fs.readFileSync("d2-check.txt", "utf8").trim();
const fence = "```";
const body = `Row 64 D2 (mos-0863 D2, mos-0864): one managed coder session per harness on a scratch root, with the two bundle manifests below.
Setup. The scratch root is \`/mnt/storage/scratch/sage-r64/d2\`, built from \`packages/business/examples/mosaic-stack.example.json\` at 6b6567b8b plus the plug-in keys (mos-0847). The edits: \`plugins.harness [pi, claude-code]\`, provider \`your-provider\` to \`anthropic\`, coder vars harness and thinking medium, the /home/you token paths to stand-in files with far dates, botIds 1..n, base URLs to 127.0.0.1:9, and the project root to a scratch repo on main. The eight skills were installed and activated there with \`scripts/skill.sh\` from the landed tree. Nothing under ~/.mosaic-dev was touched. The driver uses the real launcher, host and harness modules from a worktree at 6b6567b8b. Scripts and logs are in \`agents/sage/work/queue-64/d2/\`.
Claude Code, run rc13bcd555652. One short turn. The coder was asked to list the skill names in its Skills section and replied \`ms-unslop, ms-sdlc, ms-file-read, ms-file-write\`. Then it was stopped (ended: stopped).
Pi, run r3455505dd5da. Launch only, no turn. The runner claimed coder and exited 0 on stop. There was no model turn because this host has no credential pi reads: pi takes ANTHROPIC_API_KEY or ANTHROPIC_OAUTH_TOKEN, and the host's one managed credential is CLAUDE_CODE_OAUTH_TOKEN. That gap goes to Mos.
Check (\`d2-check.mjs\`). Each manifest lists the coder's four skills in role order. Every file sha256 equals the landed \`skills/\` file. Each file appears byte for byte after its \`<skill-file>\` marker in prompt.md, under \`## Skills\`. No credential value appears in either manifest or prompt.
${fence}
${chk}
${fence}
<details><summary>manifest-claude-code.json</summary>
${fence}json
${fs.readFileSync(D + "manifest-claude-code.json", "utf8").trim()}
${fence}
</details>
<details><summary>manifest-pi.json</summary>
${fence}json
${fs.readFileSync(D + "manifest-pi.json", "utf8").trim()}
${fence}
</details>
Sage`;
fs.writeFileSync("d2-comment.json", JSON.stringify({ body }));