import { appendFileSync, mkdirSync } from "node:fs";
import { dirname } from "node:path";
import type { ActionJournalEntry } from "../actions";
import { actionsJournalFile } from "../paths";

export function appendRequestJournal(verb: "requests.create" | "requests.update" | "requests.fire.claim" | "requests.answer", args: Record<string, string>): void {
  const entry: ActionJournalEntry = { ts: new Date().toISOString(), verb, args, requestedBy: "collector", result: "ok", rc: 0 };
  const path = actionsJournalFile();
  mkdirSync(dirname(path), { recursive: true, mode: 0o700 });
  appendFileSync(path, `${JSON.stringify(entry)}\n`);
}
