Skip to content

Exit nonzero when configured documents fail to generate - #2

Open
tosfos wants to merge 1 commit into
masterfrom
SLOP-448-exit-code-on-failure
Open

Exit nonzero when configured documents fail to generate#2
tosfos wants to merge 1 commit into
masterfrom
SLOP-448-exit-code-on-failure

Conversation

@tosfos

@tosfos tosfos commented Aug 23, 2026

Copy link
Copy Markdown
Contributor

Fixes SLOP-448 (https://wikiteq.atlassian.net/browse/SLOP-448)

Summary

  • templates/generate.py logged a warning and moved on when a configured policy directory, module file, or industry document was missing (or when template compilation/rendering failed), then still printed "Document generation complete" and exited 0 — so CI/cron/Make wrappers treated partially-generated or empty output as success.
  • compile_document() now returns True/False; main() aggregates the results and exits 1 with an explicit error message if any requested document could not be generated.

Verification

  • Reproduced the bug on master first: config requesting a nonexistent policy + nonexistent module produced only warnings and exit 0.
  • After this change the same run logs an error and exits 1; valid runs are unchanged:
    • sample config: exit 0
    • full law-industry config: exit 0
    • --validate-only: exit 0
    • unit tests: 6 passed

Audit context: org-wide audit of WikiTeq repositories.

@coderabbitai

coderabbitai Bot commented Aug 23, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 6ed65d9a-68e3-4f4a-875d-32843c1549bf


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

compile_document() previously logged a warning and returned None for
missing policies/modules and template errors, so main() reported
success (exit 0) even when requested documents were not generated.
Return success/failure from compile_document(), propagate it in
main(), and sys.exit(1) if anything failed so CI/cron can detect
broken output.

Co-authored-by: Cursor <cursoragent@cursor.com>
@tosfos
tosfos force-pushed the SLOP-448-exit-code-on-failure branch from 1bb3e44 to 4f45cb5 Compare August 23, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant