Skip to content

fix(tests): skip instead of error when OMNI_HOME unavailable in cross-repo fixture - #103

Merged
jonahgabriel merged 1 commit into
mainfrom
fix/omni-home-fixture-pytest-skip
Mar 24, 2026
Merged

jonahgabriel merged 1 commit into
mainfrom
fix/omni-home-fixture-pytest-skip

Conversation

@jonahgabriel

@jonahgabriel jonahgabriel commented Mar 24, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Test plan

  • CI Tests check passes (skips instead of errors for omni_home-dependent tests)
  • test_boundary_manifest_is_not_empty and test_all_boundary_topics_have_valid_pattern still run (they don't use omni_home)

Summary by CodeRabbit

  • Tests
    • Improved test fixture behavior to gracefully skip tests when required environment conditions aren't met, enhancing CI stability.

…-repo fixture

The omni_home fixture raised RuntimeError in CI when OMNI_HOME was not set.
Changed to pytest.skip() so tests are gracefully skipped on runners that
don't have omni_home available (GitHub Actions). Fixes CI test error
"Cannot locate omni_home" which caused all cross-repo tests to ERROR.
@jonahgabriel
jonahgabriel enabled auto-merge March 24, 2026 18:08
@coderabbitai

coderabbitai Bot commented Mar 24, 2026 •

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 2e472e42-328d-4f18-9dd9-29c48babc389

📥 Commits

Reviewing files that changed from the base of the PR and between 810c283 and c6d66f0.

📒 Files selected for processing (1)
  • tests/integration/cross_repo/conftest.py

📝 Walkthrough

Walkthrough

Modified the omni_home pytest fixture to call pytest.skip() instead of raising RuntimeError when unable to resolve the omni_home path. Tests dependent on this fixture will now be skipped rather than error during execution.

Changes

Cohort / File(s) Summary
Test Fixture Error Handling
tests/integration/cross_repo/conftest.py
Changed omni_home fixture failure behavior from raising RuntimeError to calling pytest.skip() when OMNI_HOME is not set and the repo-derived candidate lacks an omniclaude subdirectory.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

Poem

A rabbit hops with glee so bright,
No more crashes in the test-filled night,
Skip instead of fail with grace,
Cleaner runs, a better place! 🐰✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and accurately summarizes the main change: replacing RuntimeError with pytest.skip() when OMNI_HOME is unavailable in the cross-repo fixture.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

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

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/omni-home-fixture-pytest-skip

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

@jonahgabriel
jonahgabriel added this pull request to the merge queue Mar 24, 2026
Merged via the queue into main with commit 76ce839 Mar 24, 2026
16 checks passed
@jonahgabriel
jonahgabriel deleted the fix/omni-home-fixture-pytest-skip branch March 24, 2026 18:10
jonahgabriel added a commit that referenced this pull request May 23, 2026
* evidence(OMN-6678): bind OCC receipts for May 22 merge sweep

Consolidated central OCC contracts + PR-bound DoD receipts unblocking the
verify/verify receipt-gate for 11 in-flight PRs across three repos.

omniintelligence: OMN-6678/#667, OMN-6660/#666, OMN-11621/#665,
OMN-11551/#664, OMN-11554/#663, OMN-11561/#662, OMN-11565/#661,
OMN-11568/#660.
omnibase_compat: OMN-11618/#103, OMN-11579/#102.
onex_change_control: OMN-11616/#1380.

Each ticket carries a PR-bound PASS receipt plus an OCC self-binding receipt;
contract_sha256 computed post-yamlfmt so hash binding holds in CI.

Evidence-Source: OCC#9999
Evidence-Ticket: OMN-6678
Evidence-Ticket: OMN-6660
Evidence-Ticket: OMN-11621
Evidence-Ticket: OMN-11551
Evidence-Ticket: OMN-11554
Evidence-Ticket: OMN-11561
Evidence-Ticket: OMN-11565
Evidence-Ticket: OMN-11568
Evidence-Ticket: OMN-11618
Evidence-Ticket: OMN-11579
Evidence-Ticket: OMN-11616

* evidence(OMN-6678): pin OCC self-binding receipts to PR #1384

Two-pass finalization: replace placeholder OCC PR number 9999 with the real
consolidated PR #1384 across all self-binding receipts and contract
dod_evidence entries. Removes the stale dod-occ-pr-9999 entry left in the
OMN-11621 contract and restamps every OMN-11621 receipt contract_sha256 to the
post-edit, post-yamlfmt contract hash. Compat self-binding receipts updated to
pr_number 1384.

Evidence-Source: OCC#1384
Evidence-Ticket: OMN-6678
Evidence-Ticket: OMN-6660
Evidence-Ticket: OMN-11621
Evidence-Ticket: OMN-11551
Evidence-Ticket: OMN-11554
Evidence-Ticket: OMN-11561
Evidence-Ticket: OMN-11565
Evidence-Ticket: OMN-11568
Evidence-Ticket: OMN-11618
Evidence-Ticket: OMN-11579
Evidence-Ticket: OMN-11616

* chore(OMN-6678): re-trigger CI with OCC#1384 body
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.

1 participant