Skip to content

Conversation

@JacobPEvans
Copy link
Collaborator

Summary

  • Add test infrastructure for validating GoatSearch against live Cribl API
  • Tests detect pagination bugs via row_number() sequencing
  • CI workflow triggers on main/develop branches

Changes

File Purpose
tests/conftest.py Splunk mock objects (MockService, kvstore, etc.)
tests/test_e2e.py 10k event test with duplicate detection
tests/pytest.ini IDE discovery pointer
tests/requirements.txt Test dependencies
.github/workflows/live-test.yml CI for main/develop
CLAUDE.md AI code guidelines

Test plan

  • Lint passes (ruff check tests/)
  • Live test runs and detects known pagination bug (10.8% duplicates)
  • CI workflow runs on PR

Required Secrets

  • CRIBL_CLIENT_ID
  • CRIBL_CLIENT_SECRET
  • CRIBL_TENANT
  • CRIBL_WORKSPACE

Generated with Claude Code

Add test infrastructure for validating GoatSearch against live Cribl API:

- tests/conftest.py: Splunk mock objects (MockService, kvstore, etc.)
- tests/test_e2e.py: 10k event test with duplicate detection
- tests/pytest.ini: IDE discovery pointer
- tests/requirements.txt: Test dependencies
- .github/workflows/live-test.yml: CI for main/develop branches
- CLAUDE.md: AI code guidelines (performance, testing, gitflow)

Tests detect pagination bugs via row_number() sequencing - same row_id
appearing twice indicates repeated API offset requests.

Requires secrets: CRIBL_CLIENT_ID, CRIBL_CLIENT_SECRET, CRIBL_TENANT,
CRIBL_WORKSPACE

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
JacobPEvans and others added 3 commits January 20, 2026 10:52
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Register 'live' marker in pytest.ini to avoid warning
- Filter DeprecationWarning from splunklib
- Mark test as xfail (known pagination bug causes duplicates)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Tests must fail honestly - never bypass or suppress legitimate failures.
Removed xfail marker; added Test Integrity section to CLAUDE.md documenting
prohibited practices and correct failure handling.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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