Skip to content

BED-9935: Qualify GitHub environment node names by repository - #79

Open
jaredcatkinson wants to merge 1 commit into
mainfrom
feature/BED-9935-qualified-environment-name
Open

jaredcatkinson wants to merge 1 commit into
mainfrom
feature/BED-9935-qualified-environment-name

Conversation

@jaredcatkinson

@jaredcatkinson jaredcatkinson commented Sep 30, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Qualify GH_Environment.name with the repository full name, producing values such as org/repo/production so findings distinguish environments with the same short name.
  • Preserve the short environment name in displayname and short_name.
  • Match workflow deployment and OIDC edges using repository_id and short_name so those relationships continue to resolve.

Validation

  • Focused environment and workflow tests: 43 passed.
  • Ruff checks passed for the changed Python files.

Replaces #78 to include BED-9935 in the branch and PR title.

Summary by CodeRabbit

  • Bug Fixes
    • Environment names now include the repository name when represented in the system, while the name shown in the UI remains unchanged.
    • Workflow job and deployment associations now match environments by their short name within the repository, keeping environment links accurate.

@coderabbitai

coderabbitai Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Essentials

Run ID: 2e0b774d-62a1-46a6-9226-e5b97b1b8643

📥 Commits

Reviewing files that changed from the base of the PR and between 700f2db and a0028ab.

📒 Files selected for processing (6)
  • descriptions/nodes/GH_Environment.md
  • src/openhound_github/models/environment.py
  • src/openhound_github/models/workflow_job.py
  • tests/test_environment_model.py
  • tests/test_workflow_interception_path.py
  • tests/test_workflow_model.py

Included review availability: This review used your included allowance. 2 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 5 reviews per hour.


Walkthrough

Environment nodes now use repository-qualified names. Workflow environment edge matchers use short_name while retaining the repository ID matcher.

Changes

Environment identity

Layer / File(s) Summary
Environment names and matchers
descriptions/nodes/GH_Environment.md, src/openhound_github/models/environment.py, src/openhound_github/models/workflow_job.py, tests/test_environment_model.py, tests/test_workflow_interception_path.py, tests/test_workflow_model.py
Environment.as_node() sets name to the repository full name followed by the environment name. The node description distinguishes this from displayname. Workflow environment matchers use short_name; tests cover node properties and OIDC and deployment edges.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Feature

Merge Risk: ⚪ Minimal · up to a0028

Repository-qualified names distinguish same-named environments while the display and short names remain unchanged and workflow associations stay repository-scoped. No material regression is evident, so no additional merge blocker is identified.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 5 files. (1 skipped: 1 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: qualifying GitHub environment node names by repository.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 6 functions across 5 files. (1 skipped: 1 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


A rabbit checks the names in view
Repo, slash, then staging too
Short names guide each workflow path
Tests confirm the matchers’ math
I hop away with facts in tow

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

@jaredcatkinson jaredcatkinson changed the title BED-9935 qualify GitHub environment node names by repository BED-9935: Qualify GitHub environment node names by repository Sep 30, 2026

This branch has not been deployed

No deployments
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