Files
ResumeCustomizer/output/README.md

46 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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.
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:
```bash
cd output/Docker
./run-output-processor.sh up -d
```
The wrapper auto-detects the Docker Compose plugin or legacy `docker-compose` and forwards any extra arguments (`down`, `logs`, etc.). 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.
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 `input/templates`.
Stop or inspect the stack with:
```bash
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.