Files

Output Pipeline Overview

This directory houses the post-processing side of ResumeCustomizer. It accepts one human-approved Markdown resume at a time and renders shareable DOCX/PDF artifacts while preserving historical output.

Directory Layout

  • ForRelease/inbox drop a single vetted *.md file here to trigger conversion; keep empty otherwise.
  • ForRelease/outbox/YYYY/MM/DD/HHMM timestamped export folders containing the generated .docx/.pdf pair for each run.
  • ForRelease/processed/YYYY/MM/DD/HHMM timestamped archives of Markdown files that converted successfully.
  • ForRelease/failed holding area for Markdown files that Pandoc could not render.
  • Docker/ Dockerfile, compose stack, watcher script, and wrapper used to run the conversion container.
  • templates/ default Pandoc assets (*.example) the watcher copies into /tmp at runtime; copy any .example file without the suffix to override it locally (ignored by git).

All ForRelease subdirectories include .gitkeep and .gitignore so artifacts stay local and never reach version control.

Running the Output Processor

Launch the stack with the wrapper so files inherit your UID/GID:

cd output/Docker
./run-output-processor.sh up -d

The wrapper auto-detects the Docker Compose plugin or legacy docker-compose, forwards any extra arguments (down, logs, etc.), and passes your UID/GID and current timezone into the container. The stack registers as RCEO-AI-ResumeCustomizer-Output with the container RCEO-AI-ResumeCustomizer-OutputProcessor.

Conversion Flow

  1. The watcher polls ForRelease/inbox every few seconds for exactly one Markdown resume.
  2. Pandoc renders DOCX and PDF using the shared templates (and auto-falls back to the bundled .example files if no overrides exist).
  3. Artifacts land in a timestamped folder under ForRelease/outbox.
  4. The source Markdown moves into the matching timestamp folder under ForRelease/processed.
  5. On Pandoc failure, the Markdown shifts into ForRelease/failed for human review before retrying.

Outbox and processed directories are append-only historical records managed solely by the human operator—automation must never delete or reorganize them.

Prerequisites

  • Docker Engine with the Compose plugin (docker compose) or the standalone docker-compose binary.
  • Template assets mounted read-only from templates/ (copy .example files to matching names without the suffix to customize them).

Stop or inspect the stack with:

cd output/Docker
./run-output-processor.sh down
./run-output-processor.sh logs -f

Monitor logs during conversions to confirm the Markdown leaves inbox, exports appear in outbox, and the source lands in processed.