Skip to content

feat(snapshots): Show skipped count in status checks and PR comments#113007

Merged
NicoHinderling merged 1 commit into
masterfrom
nicohinderling/feat/selective-testing-vcs
Apr 16, 2026
Merged

feat(snapshots): Show skipped count in status checks and PR comments#113007
NicoHinderling merged 1 commit into
masterfrom
nicohinderling/feat/selective-testing-vcs

Conversation

@NicoHinderling

@NicoHinderling NicoHinderling commented Apr 14, 2026

Copy link
Copy Markdown
Contributor

Surface skipped image counts from selective testing in VCS integrations:

  • Status check subtitle always appends skipped count when non-zero
    (e.g. "No changes detected, 300 skipped" or "2 modified, 300 skipped")
  • Skipped column added to PR comment and status check summary tables
  • Skipped images do not affect the "No changes detected" signal or
    trigger approval requirements

Stack: 1/3 Schema | 2/3 Core logic | 3/3 VCS presentation

NicoHinderling commented Apr 14, 2026

Copy link
Copy Markdown
Contributor Author

@github-actions

Copy link
Copy Markdown
Contributor

Backend Test Failures

Failures on 2856b78 in this run:

tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentSuccessTest::test_table_header_presentlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:344: in test_table_header_present
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ...| 0 | 0 | [10](http://testserver/organizations/proper-kiwi/preprod/snapshots/34?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentNoBaseTest::test_no_base_uses_same_table_headerlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:364: in test_no_base_uses_same_table_header
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ...rver/organizations/thorough-snake/preprod/snapshots/47)<br>`com.example.app` | - | - | - | - | - | - | ✅ 10 uploaded |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_failure_summary_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:695: in test_full_failure_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...ds approval |' == '| Name | Add...ds approval |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/busy-snapper/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=unchanged) | ⏳ Needs approval |
E     + | [My App](http://testserver/organizations/busy-snapper/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/busy-snapper/preprod/snapshots/77?section=unchanged) | 0 | ⏳ Needs approval |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_success_summary_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:650: in test_full_success_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...✅ Unchanged |' == '| Name | Add...✅ Unchanged |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/next-manatee/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/next-manatee/preprod/snapshots/89?section=unchanged) | ✅ Unchanged |
E     + | [My App](http://testserver/organizations/next-manatee/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/next-manatee/preprod/snapshots/89?section=unchanged) | 0 | ✅ Unchanged |
E     ?                                                                                                                                                                                                                 ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_summary_table_has_correct_headerslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:534: in test_summary_table_has_correct_headers
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in summary
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- | :---: | :---: | :---: | :---...| 0 | 0 | [10](http://testserver/organizations/glad-bream/preprod/snapshots/103?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotApprovalFormattingTest::test_approved_summary_table_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:1048: in test_approved_summary_table_format
    assert summary == expected
E   AssertionError: assert '| Name | Add... ✅ Approved |' == '| Name | Add... ✅ Approved |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/integral-drake/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=unchanged) | ✅ Approved |
E     + | [My App](http://testserver/organizations/integral-drake/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/integral-drake/preprod/snapshots/138?section=unchanged) | 0 | ✅ Approved |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ++++

@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 7538096 to 8471848 Compare April 14, 2026 23:44
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 1a3b405 to f8bf551 Compare April 14, 2026 23:44
@github-actions

Copy link
Copy Markdown
Contributor

Backend Test Failures

Failures on dee817d in this run:

tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentSuccessTest::test_table_header_presentlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:344: in test_table_header_present
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ...| 0 | 0 | [10](http://testserver/organizations/nice-serval/preprod/snapshots/34?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentNoBaseTest::test_no_base_uses_same_table_headerlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:364: in test_no_base_uses_same_table_header
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ...tserver/organizations/hardy-camel/preprod/snapshots/47)<br>`com.example.app` | - | - | - | - | - | - | ✅ 10 uploaded |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_failure_summary_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:695: in test_full_failure_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...ds approval |' == '| Name | Add...ds approval |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/composed-teal/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=unchanged) | ⏳ Needs approval |
E     + | [My App](http://testserver/organizations/composed-teal/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/composed-teal/preprod/snapshots/77?section=unchanged) | 0 | ⏳ Needs approval |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_success_summary_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:650: in test_full_success_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...✅ Unchanged |' == '| Name | Add...✅ Unchanged |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/inspired-moose/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/inspired-moose/preprod/snapshots/89?section=unchanged) | ✅ Unchanged |
E     + | [My App](http://testserver/organizations/inspired-moose/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/inspired-moose/preprod/snapshots/89?section=unchanged) | 0 | ✅ Unchanged |
E     ?                                                                                                                                                                                                                     ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_summary_table_has_correct_headerslog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:534: in test_summary_table_has_correct_headers
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in summary
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- | :---: | :---: | :---: | :---...| 0 | [10](http://testserver/organizations/worthy-grackle/preprod/snapshots/103?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotApprovalFormattingTest::test_approved_summary_table_formatlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:1048: in test_approved_summary_table_format
    assert summary == expected
E   AssertionError: assert '| Name | Add... ✅ Approved |' == '| Name | Add... ✅ Approved |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/one-airedale/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=unchanged) | ✅ Approved |
E     + | [My App](http://testserver/organizations/one-airedale/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/one-airedale/preprod/snapshots/138?section=unchanged) | 0 | ✅ Approved |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        ++++

@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 8471848 to 2b096ff Compare April 14, 2026 23:51
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from f8bf551 to 7b56b1b Compare April 14, 2026 23:51
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 2b096ff to 3a57a2d Compare April 14, 2026 23:55
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 7b56b1b to 81fa993 Compare April 14, 2026 23:55
@github-actions

Copy link
Copy Markdown
Contributor

Backend Test Failures

Failures on ca992b5 in this run:

tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentSuccessTest::test_table_header_presentlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:344: in test_table_header_present
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ... | 0 | [10](http://testserver/organizations/enormous-cobra/preprod/snapshots/34?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py::FormatSnapshotPrCommentNoBaseTest::test_no_base_uses_same_table_headerlog
[gw0] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/pr_comments/test_snapshot_templates.py:364: in test_no_base_uses_same_table_header
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in result
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '## Sentry Snapshot Testing\n\n| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- ...server/organizations/driven-koala/preprod/snapshots/47)<br>`com.example.app` | - | - | - | - | - | - | ✅ 10 uploaded |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_failure_summary_formatlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:695: in test_full_failure_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...ds approval |' == '| Name | Add...ds approval |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/bold-fawn/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=unchanged) | ⏳ Needs approval |
E     + | [My App](http://testserver/organizations/bold-fawn/preprod/snapshots/77)<br>`com.example.app` | [1](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=added) | [2](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=removed) | [3](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=changed) | [1](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=renamed) | [4](http://testserver/organizations/bold-fawn/preprod/snapshots/77?section=unchanged) | 0 | ⏳ Needs approval |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_full_success_summary_formatlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:650: in test_full_success_summary_format
    assert summary == expected
E   AssertionError: assert '| Name | Add...✅ Unchanged |' == '| Name | Add...✅ Unchanged |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/assuring-walrus/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/assuring-walrus/preprod/snapshots/89?section=unchanged) | ✅ Unchanged |
E     + | [My App](http://testserver/organizations/assuring-walrus/preprod/snapshots/89)<br>`com.example.app` | 0 | 0 | 0 | 0 | [15](http://testserver/organizations/assuring-walrus/preprod/snapshots/89?section=unchanged) | 0 | ✅ Unchanged |
E     ?                                                                                                                                                                                                                       ++++
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotSummaryFormattingTest::test_summary_table_has_correct_headerslog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:534: in test_summary_table_has_correct_headers
    assert "| Name | Added | Removed | Modified | Renamed | Unchanged | Status |" in summary
E   AssertionError: assert '| Name | Added | Removed | Modified | Renamed | Unchanged | Status |' in '| Name | Added | Removed | Modified | Renamed | Unchanged | Skipped | Status |\n| :--- | :---: | :---: | :---: | :---... 0 | [10](http://testserver/organizations/internal-condor/preprod/snapshots/103?section=unchanged) | 0 | ✅ Unchanged |'
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py::SnapshotApprovalFormattingTest::test_approved_summary_table_formatlog
[gw1] linux -- Python 3.13.1 /home/runner/work/sentry/sentry/.venv/bin/python3
tests/sentry/preprod/vcs/status_checks/snapshots/test_templates.py:1048: in test_approved_summary_table_format
    assert summary == expected
E   AssertionError: assert '| Name | Add... ✅ Approved |' == '| Name | Add... ✅ Approved |'
E     
E     Skipping 51 identical leading characters in diff, use -v to show
E     - hanged | Status |
E     + hanged | Skipped | Status |
E     ?         ++++++++++
E     - | :--- | :---: | :---: | :---: | :---: | :---: | :---: |
E     + | :--- | :---: | :---: | :---: | :---: | :---: | :---: | :---: |
E     ?                                                        ++++++++
E     - | [My App](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=unchanged) | ✅ Approved |
E     + | [My App](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138)<br>`com.example.app` | [1](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=added) | [2](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=removed) | [3](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=changed) | [1](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=renamed) | [4](http://testserver/organizations/lucky-ostrich/preprod/snapshots/138?section=unchanged) | 0 | ✅ Approved |
E     ?                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ++++

Comment thread src/sentry/preprod/vcs/pr_comments/snapshot_templates.py
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from f5694b6 to 4800f05 Compare April 15, 2026 01:01
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 27d499d to 82cb665 Compare April 15, 2026 01:01
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 4800f05 to 43a26b4 Compare April 15, 2026 18:24
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 82cb665 to d11a327 Compare April 15, 2026 18:25
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 43a26b4 to 725cae1 Compare April 15, 2026 18:26
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from d11a327 to 3923337 Compare April 15, 2026 18:26
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-core branch from 725cae1 to a8c1b05 Compare April 16, 2026 15:51
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 3923337 to 04ccd04 Compare April 16, 2026 15:51
Base automatically changed from nicohinderling/feat/selective-testing-core to master April 16, 2026 16:21
Surface skipped image counts from selective testing in VCS integrations:
- Status check subtitle always appends skipped count when non-zero
  (e.g. "No changes detected, 300 skipped")
- Skipped column added to PR comment and status check summary tables
- Skipped images do not affect the "No changes detected" signal

Co-Authored-By: Claude <noreply@anthropic.com>
@NicoHinderling NicoHinderling force-pushed the nicohinderling/feat/selective-testing-vcs branch from 04ccd04 to 70f2e2f Compare April 16, 2026 16:22
@NicoHinderling NicoHinderling merged commit d0dee51 into master Apr 16, 2026
57 checks passed
@NicoHinderling NicoHinderling deleted the nicohinderling/feat/selective-testing-vcs branch April 16, 2026 16:33
@github-actions github-actions Bot locked and limited conversation to collaborators May 2, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

Scope: Backend Automatically applied to PRs that change backend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants