Skip to content

Conversation

@dguido
Copy link
Member

@dguido dguido commented Jan 23, 2026

Summary

  • Creates constants.py with ClamAV-compatible exit codes:
    • EXIT_CLEAN = 0 - No issues found
    • EXIT_UNSAFE = 1 - Potentially malicious content detected
    • EXIT_ERROR = 2 - Scan error (parse failure, file not found, etc.)
  • Updates cli.py to use symbolic constants instead of magic numbers
  • Exports constants from package for programmatic use

Why ClamAV convention?

ClamAV is a widely-used antivirus tool with established exit code conventions.
Following this convention makes fickling easier to integrate with existing
CI/CD pipelines and security tooling that already understands these codes.

Test plan

  • All existing tests pass
  • Linters pass
  • Exit codes work correctly in CLI

🤖 Generated with Claude Code

- Create constants.py with EXIT_CLEAN=0, EXIT_UNSAFE=1, EXIT_ERROR=2
- Update cli.py to use symbolic constants instead of literal values
- Export constants from package for programmatic use

This follows the ClamAV convention for scan results, making fickling
easier to integrate with CI/CD pipelines and other security tools.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@dguido dguido requested a review from ESultanik as a code owner January 23, 2026 02:48
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.

2 participants