Talend ans agent
Work on this Talend Alert Noise Suppression Azure Functions app, including Talend task/plan parsing, retry classification, alert storage, digest email, and optional OpenAI summaries.From its SKILL.md
npx -y skills add asin553/EscAlert-Ops --skill talend-ans-agentAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.3 KB, 938 tokens by cl100k_base, as published. Nobody here has run it
Talend ANS Agent Skill
Use this skill when modifying the Talend Alert Noise Suppression source code in this repository.
First Read
- Read
AGENTS.md. - Read
function_app.py. - Check whether
alert_recipients.jsonor any edited file contains unresolved merge markers.
Code Map
Settings: all environment-driven runtime configuration.TalendClient: Talend API calls.SqliteAlertStoreandAzureSqlAlertStore: duplicate alert persistence contracts; keep schemas aligned.EmailNotifier: daily digest SMTP delivery.OpenAIErrorSummarizer: optional JSON-mode summary fallback.- Decision helpers: retry/noise classification, rule-based summaries, master-job dependency parsing, plan dependency parsing.
- Timer triggers:
poll_talend_alertsandsend_daily_digest.
Endpoint Flow To Preserve
Shared polling starts with GET /processing/executables/tasks/executions. Read response items, group by taskId, and keep the latest run using finishTimestamp, startTimestamp, then triggerTimestamp.
For every latest failed execution, call GET /monitoring/observability/executions/{executionId}/component.
For MANUAL task failures:
- Use
taskId,executionId,executionStatus,executionType,errorMessage, and component metrics to classify the failure. - Retry only transient network/engine/platform failures with
POST /processing/executionsand payload{"executable": "<taskId>", "logLevel": "WARN"}. - Treat data, component, permission, syntax, and ambiguous failures as valid alerts.
For MANUAL Master Jobs:
- Detect child jobs from component metrics where
connector_type == "tRunJob". - Order children by numeric suffix in
connector_id, such astRunJob_1beforetRunJob_2. - Use the first
tRunJobwith a stack trace as the failed child. - Report later
tRunJobcomponents as downstream jobs that should not be expected to run.
For PLAN failures, enrich context in this exact order:
GET /monitoring/observability/executions/{executionId}/componentGET /processing/executables/plans/executions, matching byplanIdto findplanExecutionIdGET /processing/executions/plans/{planExecutionId}/steps, extracting failed step IDs/statusGET /orchestration/executables/plans/{planId}, extracting planname, planexecutable, step names, task names,chart,nextStep, andflows
For retryable plan failures, call POST /processing/executions/plans with payload {"executable": "<plan executable>"} where the executable comes from /orchestration/executables/plans/{planId}.
Change Checklist
- Keep new settings in
Settingswith safe defaults. - Keep Talend parsing tolerant of missing keys and alternate sample response shapes.
- Update both storage backends when alert row fields change.
- Classify unknown failures as valid failures.
- Retry only transient platform/network failures.
- Preserve digest filtering through
include_in_digest. - Do not expose secrets from
local.settings.json. - Run
python -m compileall function_app.pyafter Python changes.
Common Extension Points
- New transient failure: add a precise pattern to
TRANSIENT_PATTERNS. - New non-retryable failure: add a precise pattern to
NON_RETRIABLE_PATTERNS. - New human-readable summary: update
summarize_error_rule_based. - New Talend component relationship: extend
parse_master_job_dependencyor add a similarly tolerant helper. - New plan response shape: adjust
flatten_plan_stepsorenrich_plan_contextwithout breaking the linkedchart.nextStepshape. - New alert column: update SQLite DDL/migration, SQL Server DDL/migration, insert field lists, digest HTML if user-facing, and any test/sample data.
Verification
Minimum syntax check:
python -m compileall function_app.py
For runtime verification, install dependencies and start the Functions host:
.\.venv\Scripts\python -m pip install -r requirements.txt
func host start
Use real Talend/OpenAI/SMTP calls only when the required environment variables are present and the user expects networked verification.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.