Skip to content

docs: add comprehensive team onboarding section to CVE Fixer workflow#84

Merged
jwm4 merged 7 commits intoambient-code:mainfrom
angaduom:update-cve-fixer-docs
Mar 30, 2026
Merged

docs: add comprehensive team onboarding section to CVE Fixer workflow#84
jwm4 merged 7 commits intoambient-code:mainfrom
angaduom:update-cve-fixer-docs

Conversation

@vmrh21
Copy link
Copy Markdown
Contributor

@vmrh21 vmrh21 commented Mar 25, 2026

Summary

Adds comprehensive team onboarding documentation to the CVE Fixer workflow to clarify setup requirements for new teams.

Changes

README.md

  • Added Team Onboarding section with detailed requirements and steps
  • Onboarding Requirements covering 4 key areas:
    1. Component-to-Repository Mapping - with example JSON structure
    2. ProdSec Team Coordination - Jira component setup requirements
    3. GitHub Access Configuration - gh CLI authentication steps
    4. Jira API Access - token generation and setup
  • 5-step onboarding process from initial request to testing
  • Onboarding Checklist with 7 verification items
  • Contact Information with workflow maintainers

.ambient/ambient.json

  • Updated startupPrompt to warn first-time users about onboarding requirements
  • Updated systemPrompt with onboarding verification steps

Why This Change?

The workflow requires teams to be properly onboarded before use, but this was not documented anywhere. New teams need to:

  • Have their component mapped in component-repository-mappings.json
  • Coordinate with ProdSec for Jira component setup
  • Configure Jira API credentials
  • Authenticate GitHub CLI

Without this documentation, teams would encounter errors and not know how to get started.

Testing

  • Verified README.md renders correctly
  • Checked startupPrompt displays properly in ambient.json
  • Confirmed no full names exposed
  • All markdown links and code blocks formatted correctly

Co-authored-by: Claude (Anthropic) noreply@anthropic.com

vmrh21 and others added 2 commits March 25, 2026 12:13
- Add Team Onboarding section with requirements and steps
- Document component-to-repository mapping requirements
- Explain ProdSec coordination needed
- Detail GitHub and Jira access configuration
- Include onboarding checklist and contact information
- Update startupPrompt to warn first-time users about onboarding
- Update systemPrompt with onboarding verification steps

New teams must complete onboarding before using the workflow:
1. Component mapped in component-repository-mappings.json
2. ProdSec sets up Jira component for CVE tracking
3. Jira API credentials configured
4. GitHub CLI authenticated
5. Test workflow with sample CVE

Co-authored-by: Claude (Anthropic) <noreply@anthropic.com>
Co-authored-by: Claude (Anthropic) <noreply@anthropic.com>

Co-authored-by: Claude (Anthropic) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 25, 2026

Caution

Review failed

The head commit changed during the review from a23f47c to 332616b.

Walkthrough

Updated the CVE fixer workflow: added first-time onboarding prompts and a "Team Onboarding" README section, changed cve.find to canonicalize component names and adjust JQL, and expanded component-repository-mappings.json with two new component groups and updated repository metadata and metadata fields.

Changes

Cohort / File(s) Summary
Ambient prompts & README
workflows/cve-fixer/.ambient/ambient.json, workflows/cve-fixer/README.md
Replaced generic "FIRST TIME SETUP" text with explicit first-use onboarding pointers in ambient.json. Added a "Team Onboarding" section in README with prerequisite setup steps, verification checklist, and contact info (Jira component mapping, GitHub auth, per-user Jira credentials).
Command: cve.find
workflows/cve-fixer/.claude/commands/cve.find.md
Added optional case-insensitive canonicalization of COMPONENT_NAME by consulting component-repository-mappings.json (searching working dir then workflow dir). Modified JQL to remove project = RHOAIENG and add labels = SecurityTracking; updated generated report text accordingly.
Component mappings
workflows/cve-fixer/component-repository-mappings.json
Added two new component groups (llm-d, AI Evaluations) with container_to_repo_mapping and multiple repositories entries (github_url, repo_type, default_branch, active_release_branches, branch_strategy, backport targets, notes). Updated metadata.purpose, metadata.last_updated and removed obsolete metadata summary fields.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the primary change: adding comprehensive team onboarding documentation to the CVE Fixer workflow README.
Description check ✅ Passed The description is well-related to the changeset, explaining the onboarding documentation additions, ambient config updates, and rationale for the changes.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@workflows/cve-fixer/.ambient/ambient.json`:
- Line 4: The systemPrompt's "FIRST TIME SETUP" duplicates credential and
onboarding checks that are already enforced in the /cve.find command (which
validates JIRA_API_TOKEN and JIRA_EMAIL and checks component mappings), causing
maintenance and consistency issues; remove the detailed prerequisite checklist
from the systemPrompt and replace it with a single sentence such as "Note:
Commands will guide you through required setup steps on first use." so
enforcement remains centralized in /cve.find (keep references to JIRA_API_TOKEN,
JIRA_EMAIL validation and component-repository-mappings.json in the command
logic only).

In `@workflows/cve-fixer/README.md`:
- Around line 33-52: The README example JSON uses "primary_target" at the
repository root and omits required fields, so update the example to match the
schema used by component-repository-mappings.json: replace the root-level
"primary_target" with "default_branch", and add the required
"protected_branches", "active_release_branches", and "branch_strategy" keys at
the repo root; then add a nested "cve_fix_workflow" object that contains
"primary_target", "backport_targets", "automation", and "manual_intervention";
keep "github_url", "repo_type", and "build_location" as shown but ensure the
overall structure mirrors the provided correct repository configuration format
in the review comment.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: e68ddac8-f3e9-498a-a255-427b6c5c0ad2

📥 Commits

Reviewing files that changed from the base of the PR and between 4a058d0 and be1692e.

📒 Files selected for processing (2)
  • workflows/cve-fixer/.ambient/ambient.json
  • workflows/cve-fixer/README.md

- Simplify systemPrompt to avoid duplicating /cve.find validation logic
- Update README example JSON to match actual component-repository-mappings.json schema
- Add complete cve_fix_workflow structure with all required fields

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@jwm4 jwm4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding a README seems like a good idea. However, it seems I was confused about the scope here. Since for now this is a narrowly targeted workflow, I think we should at least rename it "RHOAIENG CVE Fixer" so other users know it is not for them.

Your team's Jira components must be mapped to GitHub repositories in `component-repository-mappings.json`.

**What you need to provide:**
- Jira component name (as it appears in RHOAIENG project)
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this really intended to be limited exclusively to RHOAIENG? I thought it was intended for any Red Hat product as long as the CVEs are reported in Jira by a product security organization.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

no, this was merged in by mistake.
Thank you for catching that, I am fixing it right away.

- Configure CVE issue templates for your component
- Set up automated CVE discovery and Jira issue creation

**Contact:** Your ProdSec team representative to request component setup
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you provide more information about how someone finds their ProdSec team representative?

- Update JQL query: remove project=RHOAIENG, add labels=SecurityTracking
  to make workflow usable by teams outside of RHOAIENG
- Add case-insensitive component name lookup against mapping file
- Add llm-d component with inference-scheduler and routing-sidecar repos
- Add llm-d Batch Gateway and auto-scaler repos under llm-d component
- Add AI Evaluations component (eval-hub repos)
- Clean up metadata: remove stale count fields from mapping file
- Fix ambient.json startupPrompt: trim verbose FIRST TIME USER checklist
- Fix README example JSON to match actual mapping schema
- Fix README ProdSec contact to reference feature refinement process
- Remove RHOAIENG-specific references to make docs team-agnostic

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

♻️ Duplicate comments (1)
workflows/cve-fixer/README.md (1)

113-113: ⚠️ Potential issue | 🟠 Major

Remove hard-coded RHOAIENG from onboarding step 3.

Line 113 contradicts the workflow’s generalized project support and can mis-onboard teams using other Jira projects.

Proposed fix
-   - Ensure your Jira component exists in RHOAIENG
+   - Ensure your Jira component exists in your team’s Jira project

As per coding guidelines "Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@workflows/cve-fixer/README.md` at line 113, Remove the hard-coded literal
"RHOAIENG" from onboarding step 3 in the README and replace it with a generic
placeholder or variable (e.g., "your Jira project" or JIRA_PROJECT) and brief
instruction on how to find or set the correct project for their team; update the
sentence that currently reads "Ensure your Jira component exists in RHOAIENG" so
it no longer names RHOAIENG but instead references the placeholder and/or links
to where users can confirm their project or component.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@workflows/cve-fixer/.claude/commands/cve.find.md`:
- Around line 103-111: The mapping lookup uses dirname "$0" to build
MAPPING_FILE which breaks when the script runs from another CWD; change it to
build MAPPING_FILE relative to the repository root instead (e.g., use git
rev-parse --show-toplevel or a provided REPO_ROOT env var) and then append the
path to component-repository-mappings.json, updating the MAPPING_FILE
assignment; ensure you keep the existing fallback behavior if the repo-root
detection fails so COMPONENT_NAME canonicalization still proceeds safely.

In `@workflows/cve-fixer/component-repository-mappings.json`:
- Around line 385-519: Multiple repositories in the "llm-d" and "AI Evaluations"
components (e.g., keys like "llm-d/llm-d-inference-scheduler",
"opendatahub-io/llm-d-inference-scheduler",
"red-hat-data-services/llm-d-inference-scheduler",
"red-hat-data-services/llm-d-routing-sidecar", "llm-d-incubation/batch-gateway",
"opendatahub-io/batch-gateway", "red-hat-data-services/batch-gateway",
"llm-d/llm-d-workload-variant-autoscaler",
"opendatahub-io/workload-variant-autoscaler",
"red-hat-data-services/workload-variant-autoscaler", "eval-hub/eval-hub",
"opendatahub-io/eval-hub", "red-hat-data-services/eval-hub") are missing the
cve_fix_workflow field required by /cve.fix; add a cve_fix_workflow object to
each repository entry with "primary_target": "main" and a "backport_targets"
array listing that repo’s active release branches (or an empty array if none) so
cve.fix can reference cve_fix_workflow.primary_target and backport targets
consistently.

---

Duplicate comments:
In `@workflows/cve-fixer/README.md`:
- Line 113: Remove the hard-coded literal "RHOAIENG" from onboarding step 3 in
the README and replace it with a generic placeholder or variable (e.g., "your
Jira project" or JIRA_PROJECT) and brief instruction on how to find or set the
correct project for their team; update the sentence that currently reads "Ensure
your Jira component exists in RHOAIENG" so it no longer names RHOAIENG but
instead references the placeholder and/or links to where users can confirm their
project or component.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 6c93aefe-68f5-49fe-9d09-30d805be5bbb

📥 Commits

Reviewing files that changed from the base of the PR and between be1692e and 9373f43.

📒 Files selected for processing (4)
  • workflows/cve-fixer/.ambient/ambient.json
  • workflows/cve-fixer/.claude/commands/cve.find.md
  • workflows/cve-fixer/README.md
  • workflows/cve-fixer/component-repository-mappings.json

vmrh21 and others added 3 commits March 30, 2026 08:07
- Fix cve.find mapping file path: replace unreliable dirname "$0" with
  cwd-relative path and repo-root fallback
- Add cve_fix_workflow field to all new llm-d and AI Evaluations repos
- Add full AI Evaluations component repos (trustyai-service-operator,
  lm-evaluation-harness, llama-stack-provider-trustyai-garak, eval-hub
  upstream/midstream/downstream with real branch data)
- Add container_to_repo_mapping for odh-ta-lmes-driver and odh-ta-lmes-job
- Remove hardcoded RHOAIENG reference from README onboarding step 3

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Replace RHOAIENG-specific Jira issue key examples with generic PROJ-XXXXX
placeholders across cve.find.md, cve.fix.md, and README.md to make the
workflow fully team-agnostic.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@jwm4 jwm4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me now.

@jwm4 jwm4 merged commit 4bfd9e5 into ambient-code:main Mar 30, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants