Thank you for your interest in contributing to the Salesforce Deployment Failure Analyser.
git clone https://github.com/mssm-sftechstack/salesforce-devops-ai-assistant.git
cd salesforce-devops-ai-assistant
pip install pytest
python -m pytest tests/ -vNo other dependencies are needed to run the tool in mocked mode or to run the tests.
Scenarios live in sample_data/ (input) and sample_outputs/ (expected output).
- Create
sample_data/your_scenario.jsonfollowing the input schema in the README - Generate output by running:
python main.py --input sample_data/your_scenario.json --live - Save the result to
sample_outputs/your_scenario_output.json - Register the scenario in the
SCENARIOSdict inmain.py
- Update
validate_input()inmain.pyto accept new fields - Update
validate_output()if the output schema changes - Add test cases in
tests/test_validation.py - Update the schema table in
README.md
The Claude prompt is CLAUDE_PROMPT in main.py. Changes to the prompt should be validated against all three preset scenarios using --live mode before submitting.
Open an issue first to describe the change, then submit a pull request referencing the issue.
python -m pytest tests/ -vAll tests must pass before a pull request will be merged.
- Python 3.9+ compatible
- No external dependencies in the core tool (mocked mode must stay dependency-free)
- Keep
main.pyself-contained — helper logic belongs in the same file, not a separate module
Open a GitHub issue with:
- The input JSON you used
- The error or unexpected output
- Whether you were using mocked or
--livemode