* Improves rule number handling
Adds a fallback mechanism for retrieving rule numbers.
This ensures the system can handle cases where the primary
"Rule Number" field is missing or empty, defaulting to "Rule #"
to maintain data integrity.
Also corrects some docstring formatting.
* Improves rule processing efficiency
Avoids unnecessary rule processing by checking rule severity against the minimum configured severity level. Also ensures that results are only attached to failed objects if they exist and meet the minimum severity criteria. Addresses a potential issue where rules with no "Report Severity" column could cause errors, by considering an alternative "Severity" column.
* Adds Python compatibility inspection
Ensures that the project is compatible with Python 3 by adding a compatibility inspection setting.
This will help to identify and address any potential compatibility issues early on.
* Updates integration test URL and severity.
Updates the default URL used in the integration test to a new speckle model checker endpoint.
Changes the minimum severity level from warning to info, increasing the detail of reported results.
* Updates Model Checker documentation
Updates the documentation to reflect the shift from a spreadsheet-based rule definition to the new Model Checker Application.
Explains how to access the application, create rules, and configure automations.
Also introduces the alternative TSV file format for programmatically generating rules or version controlling rules.
* Added over the top levels of documentation for future developers
* Update README with clearer instructions
- Updated the template spreadsheet link.
- Changed steps for rule publishing and automation creation.
- Improved formatting of supported predicates table.
- Added a new support contact method via community forum.
* Added over the top levels of documentation for future developers
* Update README for Speckle Checker functionality
Expanded the overview of the Speckle Checker, detailing its purpose and how it simplifies validation through spreadsheets. Updated usage instructions to include step-by-step guidance on preparing rule spreadsheets and creating automations. Added sections on rule definition format, supported predicates, and example rules for clarity. Enhanced support information at the end.
* Update developer guide for Checker function
Expanded the developer guide with detailed setup instructions, project overview, and testing procedures. Added sections on test automation environment, integration tests, and TDD workflow for rule development. Included troubleshooting tips and future development ideas to enhance functionality.
* Add project configuration and refactor logic
- Created .gitignore to exclude IDE files.
- Added project module configuration for Python.
- Set up inspection profiles for code quality checks.
- Refactored main function logic into separate modules for better organisation.
- Introduced helper functions for object manipulation and rule processing.
- Implemented spreadsheet reading functionality to dynamically load rules.
- Added tests for integration with the Speckle server.
* Add developer guide
- Introduced a new developer README with setup, project structure, testing, and deployment instructions.
- Revised the primary README to reflect changes in functionality and usage instructions for the Checker function.