reckon

Exporting RCAs

Render an incident RCA Markdown document as a shareable PDF report.

Why export an RCA?

An RCA is easiest to investigate and maintain as Markdown, but a PDF is useful when sharing a finished postmortem with stakeholders who need a stable, portable report with its tables, timelines, code blocks and evidence links.

RCAs live in each org's folder, under ~/.reckon/orgs/<org>/workspace/incidents/<YYYY-MM-DD>-<slug>/ (reckon promote creates one from a session). The exporter is a script in the Reckon checkout; run it from there and pass the incident's path.

Export an incident folder

Pass an incident directory to select its RCA.md. The default output is RCA.pdf in the same directory:

bash scripts/export-rca-pdf.sh ~/.reckon/orgs/acme/workspace/incidents/2026-10-14-checkout-latency

Export a Markdown document

Pass an RCA Markdown file and, optionally, an output path:

bash scripts/export-rca-pdf.sh PATH_TO_RCA_MD OPTIONAL_OUTPUT_PDF

Without an output path, the exporter writes the PDF beside the Markdown file. An existing PDF is kept unless you add --force:

bash scripts/export-rca-pdf.sh ~/.reckon/orgs/acme/workspace/incidents/2026-10-14-checkout-latency/RCA.md --force

Rendering engines

The exporter first looks for pandoc and then checks PDF engines in this order: weasyprint, wkhtmltopdf, tectonic and xelatex. If Pandoc or all of those engines are unavailable, it uses npx --yes md-to-pdf when Node.js and npx are installed. If neither route is available, it prints an install hint and exits without creating a PDF.

On macOS, install the preferred route with:

brew install pandoc weasyprint

On Debian or Ubuntu, use:

sudo apt-get install pandoc weasyprint

Keep generated PDFs with their incident in the org folder, outside the Reckon checkout. Review an RCA for customer data and secrets before you share it.