Skip to content

chore(tests): exclude dimos/experimental from the standard pytest run#2847

Open
leshy wants to merge 2 commits into
mainfrom
chore/ivan/skip-experimental-tests
Open

chore(tests): exclude dimos/experimental from the standard pytest run#2847
leshy wants to merge 2 commits into
mainfrom
chore/ivan/skip-experimental-tests

Conversation

@leshy

@leshy leshy commented Jul 10, 2026

Copy link
Copy Markdown
Member

Experimental modules shouldn't gate CI — right now 3 arduino tests are red on main

This adds --ignore=dimos/experimental to pytest addopts:

  • standard runs (pytest dimos, bin/pytest-fast, CI) skip dimos/experimental/ entirely
  • explicit paths still work: pytest dimos/experimental/arduino/test_arduino_module.py collects normally, so experimental authors keep their suites runnable

Experimental modules shouldn't gate CI: the arduino tests are currently
red on main (transport api skew from #2753 x #1879) and block every PR.
--ignore only affects discovery — passing a path under dimos/experimental
explicitly still collects, so authors can run their suites directly.
@greptile-apps

greptile-apps Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR adds --ignore=dimos/experimental to the pytest addopts in pyproject.toml so that flaky/in-progress tests under dimos/experimental/ no longer block CI, while still allowing developers to run those tests explicitly by passing a direct file path.

  • Appends --ignore=dimos/experimental to the existing addopts string; all other flags (xdist, timeouts, markers, coverage) are unchanged.
  • Adds an inline comment explaining the intent and how to run experimental tests explicitly using -o addopts="" override if needed.

Confidence Score: 5/5

Safe to merge — a single addopts flag addition with no effect on production code or test logic.

The change is confined to one line in pyproject.toml, appending a well-understood pytest flag to an existing options string. It doesn't alter any test logic, source code, or CI pipeline steps beyond skipping the experimental directory during collection. Explicit paths still override the ignore, so experimental authors retain the ability to run their suites.

No files require special attention.

Important Files Changed

Filename Overview
pyproject.toml Adds --ignore=dimos/experimental to pytest addopts so experimental tests are excluded from standard/CI runs but still runnable via explicit paths

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[pytest invoked] --> B{Invocation type?}
    B -- "pytest dimos\nor bin/pytest-fast\nor CI" --> C[addopts applied]
    C --> D["--ignore=dimos/experimental\n(and all other flags)"]
    D --> E[dimos/experimental skipped\nAll other dimos tests run]
    B -- "pytest dimos/experimental/arduino/test_arduino_module.py\n(explicit path)" --> F[Explicit path overrides --ignore]
    F --> G[Experimental tests collected normally]
    B -- "pytest dimos/experimental/\n-o addopts=''" --> H[addopts cleared\nNo --ignore in effect]
    H --> G
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A[pytest invoked] --> B{Invocation type?}
    B -- "pytest dimos\nor bin/pytest-fast\nor CI" --> C[addopts applied]
    C --> D["--ignore=dimos/experimental\n(and all other flags)"]
    D --> E[dimos/experimental skipped\nAll other dimos tests run]
    B -- "pytest dimos/experimental/arduino/test_arduino_module.py\n(explicit path)" --> F[Explicit path overrides --ignore]
    F --> G[Experimental tests collected normally]
    B -- "pytest dimos/experimental/\n-o addopts=''" --> H[addopts cleared\nNo --ignore in effect]
    H --> G
Loading

Reviews (2): Last reviewed commit: "Merge branch 'main' into chore/ivan/skip..." | Re-trigger Greptile

@codecov

codecov Bot commented Jul 10, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

@@            Coverage Diff             @@
##             main    #2847      +/-   ##
==========================================
- Coverage   72.21%   72.00%   -0.21%     
==========================================
  Files        1001      980      -21     
  Lines       89755    87235    -2520     
  Branches     8196     7928     -268     
==========================================
- Hits        64818    62817    -2001     
+ Misses      22718    22326     -392     
+ Partials     2219     2092     -127     
Flag Coverage Δ
OS-ubuntu-24.04-arm 64.79% <ø> (-0.31%) ⬇️
OS-ubuntu-latest 67.29% <ø> (-0.21%) ⬇️
Py-3.10 67.27% <ø> (-0.21%) ⬇️
Py-3.11 67.27% <ø> (-0.22%) ⬇️
Py-3.12 67.28% <ø> (-0.21%) ⬇️
Py-3.13 67.27% <ø> (-0.22%) ⬇️
Py-3.14 67.27% <ø> (-0.23%) ⬇️
Py-3.14t 67.27% <ø> (-0.22%) ⬇️
SelfHosted-Large 30.32% <ø> (+0.25%) ⬆️
SelfHosted-Linux 37.87% <ø> (+0.46%) ⬆️
SelfHosted-macOS 36.21% <ø> (+0.39%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 27 files with indirect coverage changes

🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Jul 10, 2026
@github-actions github-actions Bot removed the ready-to-merge Required CI checks have passed on this PR label Jul 10, 2026
@spomichter

spomichter commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

yuo just fixed arduino tests with your other PR. but we can skip experimental in CI i dont care either way

@spomichter

Copy link
Copy Markdown
Contributor

rerunning tests

@github-actions github-actions Bot added the ready-to-merge Required CI checks have passed on this PR label Jul 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

PlzReview ready-to-merge Required CI checks have passed on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants