Skip to content

test: add offline GitLab corpus verification - #43

Merged
ebihara99999 merged 1 commit into
mainfrom
feature/corpus-verification
Jul 10, 2026
Merged

test: add offline GitLab corpus verification#43
ebihara99999 merged 1 commit into
mainfrom
feature/corpus-verification

Conversation

@ebihara99999

Copy link
Copy Markdown
Owner

Purpose

Refs #41. This adds the first CI layer from the corpus verification plan: vendored corpus files, a per-file runner, crash checks, and metric-agnostic invariants.

RuboCop differential checks and golden snapshots are intentionally left for follow-up PRs.

Changes

  • Vendor the selected GitLab CE Ruby corpus from revision 85ed8239cfc6fe3cf5d5bde5975fe2f6d687ff6d under spec/fixtures/corpus/gitlab/.
  • Include the GitLab license notice and a corpus README with the source revision, file list, placement, and ee/, jh/, doc/ exclusion rule.
  • Add an RSpec corpus runner that measures each vendored file with explicit CodeKeeper metric and thread settings.
  • Add CI-covered checks for crash-free per-file measurement, report shape, summary recomputation, ABC/cyclomatic count alignment, line ranges, sequential/parallel determinism, and the current behavior that metrics with no measurements are absent from summary.
  • Exclude spec/fixtures/**/*_spec.rb from RSpec discovery so vendored GitLab spec files remain corpus input data.

Impact

This is test-only. The corpus is under spec/fixtures/, remains outside the packaged gem, and is already outside RuboCop's scan by the repository configuration.

Verification

  • bundle exec rspec - 75 examples, 0 failures
  • bundle exec rubocop - 34 files inspected, no offenses
  • git diff --cached --check - no whitespace errors before commit

Scope Out

  • RuboCop differential and accepted-differences baseline
  • Golden JSON snapshots and regeneration task

Vendor the issue #41 GitLab CE corpus with license attribution and run it through offline RSpec checks. The corpus spec verifies crash-free per-file measurement, report shape, summary derivation, line ranges, method metric count alignment, and sequential/parallel determinism.
@ebihara99999
ebihara99999 marked this pull request as ready for review July 10, 2026 14:58
@ebihara99999
ebihara99999 merged commit 8f85bb8 into main Jul 10, 2026
6 checks passed
@ebihara99999
ebihara99999 deleted the feature/corpus-verification branch July 10, 2026 14:58
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