用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/coreos/ai-helpers --skill pipeline-dedup命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
OCP release queries - latest versions, RHCOS images, and RPM package lists
Investigate initramfs issues - extraction, module analysis, and comparing working vs failing builds
Investigate Jenkins CI pipeline failures - failure patterns, root cause analysis, and debugging workflows
基于 SOC 职业分类
正在显示 SKILL.md
| name | pipeline-dedup |
| description | Deduplication logic for CI pipeline failures - check Jira for existing tracking with semantic analysis |
Check if a failure is already tracked in Jira before investigating or creating issues.
Load pipeline-jira skill first to get the current week's parent task ($PARENT).
| Input | Required | Description |
|---|---|---|
JOB | Yes | Jenkins job name (build, build-arch, build-node-image) |
BUILD | Yes | Build number |
STREAM | Yes | Jenkins stream parameter |
ARCH | For build-arch | Architecture (aarch64, s390x, ppc64le, x86_64) |
Check if this exact build already has a subtask:
jira issue list --parent $PARENT \
-q "summary ~ '$JOB #$BUILD'" --plain --no-headers
If found → Return EXACT_MATCH: <JIRA-KEY>
Check for open subtasks with same job, stream, and architecture:
# For build-arch (include architecture in search)
jira issue list --parent $PARENT -s~Closed \
-q "summary ~ '$JOB' AND summary ~ '$STREAM' AND summary ~ '$ARCH'" \
--plain --no-headers
# For build / build-node-image (no architecture)
jira issue list --parent $PARENT -s~Closed \
-q "summary ~ '$JOB' AND summary ~ '$STREAM'" \
--plain --no-headers
If found → Return RELATED_ISSUE: <JIRA-KEY>
For failures not caught by Pass 1 or 2, fetch all open subtasks and analyze semantically:
# Fetch all open subtasks with summaries
jira issue list --parent $PARENT -s~Closed --plain --no-headers
Provide the failure details and fetched subtask list to analyze:
Failure to check:
$JOB$BUILD$STREAM$ARCH (if applicable)Analysis prompt:
Review these open Jira subtasks and determine if any track the same root cause as this failure. Consider:
- Same stream/arch combination
- Same error patterns (cloud upload, chronyd, registry auth, etc.)
- Related downstream jobs (build failure caused by build-arch failure)
Return the matching Jira key if found, or "NO_MATCH" if this appears to be a new distinct issue.
If LLM identifies a match → Return SEMANTIC_MATCH: <JIRA-KEY>
Return one of:
| Result | Meaning | Action |
|---|---|---|
EXACT_MATCH: COS-XXXX | Exact build already tracked | Skip - no action needed |
RELATED_ISSUE: COS-XXXX | Same job+stream+arch tracked | Comment on existing issue |
SEMANTIC_MATCH: COS-XXXX | Same root cause identified | Comment on existing issue |
NEW_FAILURE | No existing tracking | Proceed with triage/creation |
When a RELATED_ISSUE or SEMANTIC_MATCH is found, add a comment to the existing issue instead of creating a duplicate.
Note: For EXACT_MATCH, no comment is needed - the build is already tracked in the issue summary.
jira issue comment add <EXISTING-KEY> $'Additional occurrence detected:
- **Build:** [#<build>](<jenkins-url>)
- **Timestamp:** <timestamp>
Same failure pattern - consolidating under this issue.' --no-input
When checking multiple failures, optimize by fetching subtasks once:
# Fetch all subtasks once
jira issue list --parent $PARENT --plain --no-headers > /tmp/subtasks.txt
Then perform Pass 1 and Pass 2 locally by parsing the cached file. Only run Pass 3 (semantic analysis) for failures that pass both checks.