Commit Graph

129 Commits

Author SHA1 Message Date
vitor-aignosi
92e87530b8 SIENTIAPDE-1325
SIENTIAPDE-1325 Update release workflow to trigger only on merged pull requests and adjust timestamp formatting in tests for consistency.
2025-11-10 09:51:06 -03:00
vitor-aignosi
4faa7141e7 SIENTIAPDE-1325
Update import statements in mongo_db.py to include DATETIME_FORMAT_WITH_TZ for consistent timestamp formatting in data filtering.
2025-11-06 14:06:22 -03:00
vitor-aignosi
aafc6d27d2 SIENTIAPDE-1325
Update image tag to 0.5.0 in values.yaml and change GITHUB_BRANCH to feature/SIENTIAPDE-1325 for specific external operation metrics. Remove unused timestamp formatting in mongo_db.py to streamline data handling.
2025-11-06 13:57:56 -03:00
vitor-aignosi
acde9475ec SIENTIAPDE-1325
Remove unused Couchbase configurations and related code. Refactor Activities class to eliminate Couchbase dependency, updating initialization and shutdown methods. Update README and tests to reflect these changes. Upgrade sientia-dataops-library dependency version in requirements.txt.
2025-11-06 10:45:23 -03:00
vitor-aignosi
1e6616cfc2 SIENTIAPDE-1314
Refactor workflow calls to use subworkflow naming convention for load_notification_package and process_notifications in alerts and reports modules. Update corresponding tests to reflect these changes.
2025-10-27 10:24:16 -03:00
vitor-aignosi
f7ed72ee0c SIENTIAPDE-1312
Update image tag in values.yaml to 0.4.9; refactor imports in email.py, formatters.py, and mongo_db.py for improved organization and clarity.
2025-10-21 16:38:22 -03:00
vitor-aignosi
6882d085e6 SIENTIAPDE-1312
SIENTIAPDE-1312: Refactor build_tag_config to accept a list of tags and return notifications for missing servers. Update Formatters to handle notifications during slot configuration. Enhance tests to validate new behavior and error reporting.
2025-10-21 08:58:39 -03:00
vitor-aignosi
72fd7b2996 SIENTIAPDE-1312
SIENTIAPDE-1312: Update notification_id in TemporalManager to improve error reporting for schedule normalization failures.
2025-10-20 16:30:29 -03:00
vitor-aignosi
61fea4bb75 SIENTIAPDE-1312
SIENTIAPDE-1312: Add 'fill_missing_tags' configuration option to scouter function for enhanced tag management.
2025-10-20 16:26:39 -03:00
vitor-aignosi
e04c91f6f8 SIENTIAPDE-1312
SIENTIAPDE-1312: Update build_tag_config to ensure minimum frequency defaults to 1000 and convert frequency values to integers for accurate calculations of subscription_period_ms.
2025-10-20 12:47:02 -03:00
vitor-aignosi
1666702d73 SIENTIAPDE-1312
SIENTIAPDE-1312: Update build_tag_config to calculate subscription_period_ms based on minimum frequency from tags. Enhance test_build_tag_config to include frequency and validate subscription_period_ms.
2025-10-20 12:42:20 -03:00
vitor-aignosi
b095335cdc SIENTIAPDE-1312
Update sientia-dataops-library dependency to version 1.4.7 and enhance TemporalManager to support offset configuration for scheduling. Added offset handling in common configuration and updated related tests to validate new functionality.
2025-10-20 10:26:53 -03:00
vitor-aignosi
9031b4c88f SIENTIAPDE-1231
Enhance README and code documentation for clarity and structure

- Added a comprehensive Table of Contents to the README for easier navigation.
- Introduced a new section on Code Quality & Validation, detailing the validation workflow and tools used.
- Improved descriptions and consistency in docstrings across various modules, including metrics, formatters, and MongoDB activities.
- Clarified function return types and arguments in the MongoDB and TemporalManager classes for better understanding.
2025-10-16 10:33:58 -03:00
vitor-aignosi
6b826863f4 SIENTIAPDE-1231
Enhance type hinting and code structure in orchestrator activities

- Added type hints for better code clarity in `formatters.py`, `mongo_db.py`, `temporal_manager.py`, and `email_builder.py`.
- Updated `.gitignore` to include `coverage.xml` for improved coverage reporting.
- Improved readability by restructuring variable declarations and method signatures.
2025-10-16 08:52:38 -03:00
vitor-aignosi
f3a6af5603 SIENTIAPDE-1231
Refactor orchestrator activities and configuration files

- Removed unused Temporal timeout environment variables from values.yaml.
- Reorganized import statements in various activity files for better readability.
- Updated logging messages to use consistent formatting across activities.
- Enhanced test cases to ensure proper initialization and shutdown of orchestrator activities.
- Improved overall code structure and readability by applying consistent formatting and style adjustments.
2025-10-15 17:20:52 -03:00
vitor-aignosi
310cae4c2f SIENTIAPDE-1231
SIENTIAPDE-1231: Add timeout configuration for Temporal tasks

- Introduced new timeout parameters in values.yaml for task execution.
- Updated TemporalManager to utilize execution and task timeout settings in seconds.
- Enhanced orchestrator_functions.py to include default timeout values for better orchestration control.
2025-10-10 15:55:03 -03:00
vitor-aignosi
5fdabd27c0 SIENTIAPDE-1231
Update orchestration configuration and execution parameters

- Adjusted execution counts in Jupyter notebook cells for better tracking.
- Updated schedule name in the orchestration configuration to align with new requirements.
- Modified `values.yaml` to change the GitHub branch for improved versioning.
- Enhanced `Activities` and `TemporalManager` classes to include timeout parameters for task execution.
- Updated connector configuration to include new timeout settings for better orchestration control.
2025-10-06 13:46:17 -03:00
vitor-aignosi
49f3429556 SIENTIAPDE-1222
SIENTIAPDE-1222 Refactor server configuration handling in orchestrator_functions.py and update related tests

- Removed the security_spec field from server configuration in build_tag_config to streamline the configuration process.
- Updated test cases in test_formatters.py and test_orchestrator_functions.py to reflect the removal of security_spec, ensuring alignment with the new configuration structure and improving test accuracy.
2025-09-24 10:57:38 -03:00
vitor-aignosi
52fd68f469 Update orchestrator/workflows/subworkflows/process_notifications.py
Co-authored-by: codeant-ai[bot] <151821869+codeant-ai[bot]@users.noreply.github.com>
2025-09-24 10:26:09 -03:00
vitor-aignosi
02b647931f SIENTIAPDE-1222
Enhance OPC server configuration in orchestrator_functions.py

- Added optional fields for certificate paths in the build_tag_config function to improve security configuration flexibility.
2025-09-19 08:56:40 -03:00
vitor-aignosi
b816ad523b SIENTIAPDE-1222
Enhance README and activities with advanced notification filtering features

- Updated README to include new intelligent notification filtering capabilities, including TTL-based duplicate prevention and ignore lists.
- Enhanced `Formatters` activity to support notification filtering for scheduled reports and added detailed filtering logic.
- Improved `SlotManager` to implement advanced notification filtering with persistent alert detection and group-based filtering.
- Updated `Alerts` workflow to incorporate intelligent filtering for real-time error notifications, ensuring efficient alert delivery.
2025-09-16 16:36:32 -03:00
vitor-aignosi
137367c963 SIENTIAPDE-1222
Refactor orchestration and email handling

- Updated the orchestration queries to streamline model lookups and added conditions for active models.
- Changed the entry point in the local run script to use the worker module.
- Removed the deprecated samples.json file.
- Enhanced the Email activity to skip sending if the SMTP server is not configured.
- Added timestamp field handling in MongoDB activities for better data management.
- Updated connectors configuration to allow for a None SMTP server.
- Improved the common configuration function to include model configuration details.
2025-09-12 14:39:42 -03:00
vitor-aignosi
c4733f4daa SIENTIAPDE-1182
SIENTIAPDE-1206: Add early return for empty receiver groups in Alerts workflow

- Implemented an early return in the Alerts class to handle cases where no receiver groups are provided, preventing unnecessary processing in the notification workflow.
2025-09-05 12:43:39 -03:00
vitor-aignosi
42565b5983 SIENTIAPDE-1182
Update environment variables in values.yaml and enhance predictions_batch function in orchestrator_functions.py

- Changed GITHUB_BRANCH to reflect the new task for adjusting laborious processes to capture timestamps from MLflow.
- Added a new filter configuration for handling empty data in the predictions_batch function to improve error management.
2025-09-04 15:39:27 -03:00
vitor-aignosi
deeb6a6d2f SIENTIAPDE-1084
Remove outdated module docstrings from orchestrator and activities packages for improved clarity and maintenance.
2025-09-01 15:51:39 -03:00
vitor-aignosi
01b4c7a126 SIENTIAPDE-1182
Remove deprecated files and configurations

- Deleted coverage.sh, Dockerfile, docker-compose.yml, email.html, input_sample.json, and Makefile as part of the cleanup process.
- Updated README.md to reflect the removal of these components and provide a clearer overview of the project structure and functionality.
- Added module-level docstrings to orchestrator, activities, and workflows for improved documentation and clarity on system architecture.
2025-09-01 15:49:44 -03:00
vitor-aignosi
36f1388301 SIENTIAPDE-1182
SIENTIAPDE-1205: Enhance predictions_batch function and update test cases

- Added 'predictions_storage_policy' to the predictions_batch function for improved configuration handling.
- Updated test cases to include 'predictions_storage_policy' in expected results, ensuring consistency in testing.
2025-09-01 15:49:44 -03:00
vitor-aignosi
fbf006bb99 SIENTIAPDE-1205
SIENTIAPDE-1205: Update timestamp handling in MongoDB activities

- Modified timestamp formatting in mongo_db.py to apply UTC timezone before string conversion, ensuring consistency with DATETIME_FORMAT_MS_WITH_TZ.
2025-08-27 09:37:45 -03:00
vitor-aignosi
90e9e571b2 SIENTIAPDE-1205
SIENTIAPDE-1205: Simplify timestamp formatting in MongoDB activities

- Removed timezone conversion from timestamp handling in mongo_db.py, streamlining the formatting process while maintaining consistency with DATETIME_FORMAT_MS_WITH_TZ.
2025-08-27 09:35:55 -03:00
vitor-aignosi
2a3e5b8bc4 SIENTIAPDE-1205
SIENTIAPDE-1205: Refactor timestamp handling in MongoDB activities

- Updated the import statement in mongo_db.py to include timezone support.
- Modified timestamp formatting to ensure UTC timezone is applied before string conversion, enhancing consistency in datetime handling.
2025-08-27 09:32:42 -03:00
vitor-aignosi
93915841d6 SIENTIAPDE-1205
SIENTIAPDE-1205: Update GITHUB_BRANCH and standardize datetime handling in MongoDB activities

- Changed GITHUB_BRANCH in values.yaml from "main" to "SIENTIAPDE-1205-alterar-opc-para-assincrono".
- Updated datetime parsing in mongo_db.py to use DATETIME_FORMAT_MS_WITH_TZ for consistent timestamp handling.
2025-08-27 09:25:17 -03:00
vitor-aignosi
e17df007ab SIENTIAPDE-1205
Update orchestration notebook execution count, modify image tag in values.yaml, and standardize datetime handling in MongoDB activities

- Changed execution count in init_orchestration.ipynb from 2 to 1.
- Updated image tag in values.yaml from 0.4.4 to 0.4.5.
- Replaced DATETIME_FORMAT_MS_WITH_TZ with DATETIME_FORMAT_MS in mongo_db.py for consistent timestamp handling.
2025-08-27 09:12:24 -03:00
vitor-aignosi
575a99fd31 SIENTIAPDE-1193
chore: update image tag and enhance datetime column handling in orchestrator functions

- Updated the image tag in values.yaml from 0.4.2 to 0.4.4 for the latest version.
- Added support for datetime_columns in minimal_retrain and predictions_batch functions to improve timestamp handling in orchestrator functions.
2025-08-25 10:04:26 -03:00
vitor-aignosi
4aa7ea70fa SIENTIAPDE-1193
refactor: standardize timestamp handling across MongoDB and SlotManager

- Replaced instances of `now()` with `date_now` for consistent timestamp usage in MongoDB and SlotManager activities.
- Updated test cases to mock the new `now()` function, ensuring accurate timestamp handling in unit tests.
- Adjusted timestamp formatting in various tests to align with the DATETIME_FORMAT_MS_WITH_TZ standard.
2025-08-25 10:04:26 -03:00
vitor-aignosi
d7effd44e5 SIENTIAPDE-1193
refactor: update date handling and remove deprecated constants

- Replaced the usage of datetime.now() with a new now() function from sientia_do.temporal.constants for consistent timestamp handling across multiple files.
- Updated the date format from DEFAULT_DATE_FORMAT to DATETIME_FORMAT_MS_WITH_TZ in various activities to ensure uniformity in timestamp formatting.
- Removed the obsolete patterns.py file that contained the DEFAULT_DATE_FORMAT constant.
2025-08-25 10:04:26 -03:00
vitor-aignosi
d4efe1d159 SIENTIAPDE-1193
chore: update sientia-dataops-library version and modify environment variables

- Updated the sientia-dataops-library dependency version from 1.4.1 to 1.4.2 in requirements.txt.
- Changed the GITHUB_BRANCH value in values.yaml to reflect the new task SIENTIAPDE-1193.
- Enhanced the process_notifications workflow to include timestamp conversion metadata for improved data handling.
2025-08-25 10:04:26 -03:00
vitor-aignosi
2ade08c916 SIENTIAPDE-1199
refactor: remove unused schedule_handles attribute from TemporalManager

- Eliminated the schedule_handles dictionary from the TemporalManager class as it was no longer needed.
- Cleaned up related code to ensure proper functionality without the removed attribute.
2025-08-20 14:58:15 -03:00
vitor-aignosi
02243a1e22 SIENTIAPDE-1199
refactor: enhance logging and metadata handling across activities

- Updated logging statements in Email, Formatters, MongoDB, SlotManager, and TemporalManager classes to include metadata for better traceability.
- Improved success reporting in MongoDB, SlotManager, and TemporalManager by specifying the number of successfully processed items.
- Refactored logger usage in worker.py to utilize custom_info for enhanced logging consistency.
2025-08-20 11:15:58 -03:00
vitor-aignosi
9e49dd4255 SIENTIAPDE-1169
chore: update dependencies and refactor logger imports

- Updated the sientia-dataops-library dependency version from 1.3.8 to 1.4.1 in requirements.txt.
- Changed image tag in values.yaml from 0.4.0 to 0.4.2.
- Refactored logger imports in multiple files to use the new observability module instead of the temporal module.
- Updated retry policy imports in various workflow files to reflect the new structure.
2025-08-19 16:47:25 -03:00
vitor-aignosi
845654859e SIENTIAPDE-1169
feat: add SDK metrics service and update telemetry configuration

- Introduced a new service for SDK metrics in values.yaml, enabling metrics collection on port 9091.
- Updated the worker.py to initialize a new runtime with Prometheus metrics configuration for the SDK metrics server.
- Adjusted environment variable for GITHUB_BRANCH to reflect the current focus on testing and performance design.
2025-08-18 13:40:19 -03:00
vitor-aignosi
31f2ff2439 SIENTIAPDE-1184
refactor: enhance shutdown procedures and documentation across activities

- Added shutdown methods to MongoDB and Email classes to ensure proper resource cleanup.
- Updated docstrings for shutdown methods to clarify their purpose and functionality.
- Enhanced documentation for various methods across multiple classes, improving clarity on parameters and return values.
- Improved the main function and other utility functions with detailed docstrings for better understanding and maintainability.
2025-08-14 09:48:19 -03:00
vitor-aignosi
bfb633c9d7 SIENTIAPDE-1184
docs: enhance docstrings in Formatters class

- Improved clarity and consistency of docstrings across multiple methods in the Formatters class.
- Added detailed descriptions for method arguments and return values to facilitate better understanding and usage.
- Ensured that all public methods now have comprehensive documentation, enhancing maintainability and readability.
2025-08-14 09:29:48 -03:00
vitor-aignosi
36c34d3208 SIENTIAPDE-1184
refactor: consolidate report handling in Formatters class

- Introduced a new method, manage_and_send_report, to streamline success and error report generation.
- Improved code readability by reducing duplication in report handling logic.
- Maintained existing functionality while enhancing the structure of report messages.
2025-08-14 09:26:10 -03:00
vitor-aignosi
4791665642 SIENTIAPDE-1184
SIENTIAPDE-1184
 refactor: improve schedule reporting in Formatters class

- Introduced a unified reporting structure for created, updated, and deleted schedules.
- Enhanced success and error report messages for clarity, including specific schedule types in notifications.
- Updated attachment handling in success and error reports to improve context and readability.
2025-08-14 09:19:48 -03:00
vitor-aignosi
e8ce3e75d5 SIENTIAPDE-1184
fix: enhance error reporting in Formatters class

- Updated the parse_report_schedule method to return a dictionary for error keys, including both message and attachment.
- Improved error report formatting in send_error_report method to include attachments for better context in failure notifications.
2025-08-14 08:50:21 -03:00
vitor-aignosi
4d75d581f8 SIENTIAPDE-1184
Changing "updated_at" type from str to datetime
2025-08-13 16:34:02 -03:00
vitor-aignosi
1306bed21d SIENTIAPDE-1184
fix: enhance error reporting in TemporalManager class

- Added typed_search_attributes to the schedule creation for improved search capabilities.
- Included traceback in error messages when schedule deletion fails, providing better context for debugging.
2025-08-12 16:26:24 -03:00
vitor-aignosi
5477f68b6b SIENTIAPDE-1184
fix: update notification IDs for error reporting in Formatters class

- Changed notification IDs for error reports related to schedule creation, update, and deletion to include the suffix '_ERROR' for better clarity in error handling.
2025-08-12 14:12:52 -03:00
vitor-aignosi
7fd38e1d52 SIENTIAPDE-1184
fix: add conditional check for data_filter in MongoDB activity

- Updated the insert_many method to only execute if data_filter is not empty, preventing unnecessary database operations and potential errors.
2025-08-12 13:36:13 -03:00
vitor-aignosi
6c1b7c4bf7 SIENTIAPDE-1174
feat: enhance notification filtering in Formatters and SlotManager classes

- Added logic to remove receiver groups with no notifications, improving the efficiency of notification handling.
- Implemented early return in Alerts and Reports workflows when there are no notifications or receiver groups, streamlining the processing flow.
2025-08-01 12:41:40 -03:00