Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
3d602dc
chore(dev): set up dev shell
skylarmb Dec 11, 2025
211b2f6
feat: add Makefile
skylarmb Dec 11, 2025
873c911
fix: fix macOS xcrun hijack in nix shell
skylarmb Dec 11, 2025
a4c0531
build: add SDK generation tooling and disable heavy pre-commit hook
skylarmb Dec 12, 2025
6de0ef4
refactor: streamline pre-commit hooks, move slow checks to Makefile
skylarmb Dec 12, 2025
66f58d7
docs: update documentation for streamlined pre-commit workflow
skylarmb Dec 12, 2025
730d6fe
refactor: make 'check' run all pre-commit checks comprehensively
skylarmb Dec 12, 2025
1ce5aa2
docs: simplify CONTRIBUTING.md, point to make help
skylarmb Dec 12, 2025
755133a
feat(dev): add v0 model generation and fix environment isolation
skylarmb Dec 12, 2025
feee641
feat: add v0 client generation
skylarmb Dec 12, 2025
52d9067
chore: move dev checks to CI instead of commit hook
skylarmb Dec 12, 2025
51054b1
chore: parallel tests
skylarmb Dec 12, 2025
a07363c
chore: remove pre-commit hooks
skylarmb Dec 12, 2025
fb171c7
refactor: move v0 client into _v0/ for dual-version support
skylarmb Dec 12, 2025
3a8d052
fix(tests): update tests to use v0 API (event_name, _tracer_id)
devin-ai-integration[bot] Dec 12, 2025
e9e1735
feat: set up OpenAPI specs for dual-version generation (Phase 2)
skylarmb Dec 12, 2025
9d08998
chore: format
skylarmb Dec 12, 2025
a0d7bb7
feat: add v1 client generation script (Phase 3)
skylarmb Dec 12, 2025
9e21278
ci: add generated code validation check
skylarmb Dec 12, 2025
3b99361
fix(tests): update test_baggage_isolation.py to use _tracer_id
devin-ai-integration[bot] Dec 12, 2025
eeefe0e
Merge branch 'generate-v1.x' of github.com:honeyhiveai/python-sdk int…
skylarmb Dec 12, 2025
60c8209
fix(ci): add missing pydantic-settings and attrs deps to Lambda Docke…
devin-ai-integration[bot] Dec 12, 2025
e93a954
fix(ci): use pip install /build to auto-resolve all deps from pyproje…
devin-ai-integration[bot] Dec 12, 2025
938fda4
feat: add version-specific package builds (Phase 4)
skylarmb Dec 12, 2025
3dafe3e
docs: document Lambda test event_type validation issue in TODO.md
devin-ai-integration[bot] Dec 12, 2025
185d1c5
Merge pull request #164 from honeyhiveai/devin/1765521888-fix-docker-…
skylarmb Dec 12, 2025
6060749
feat(ci): add package build verification for v0 and v1 wheels
skylarmb Dec 12, 2025
47b5dc4
Merge branch 'generate-v1.x' of github.com:honeyhiveai/python-sdk int…
skylarmb Dec 12, 2025
271357f
feat: add v1 client generation from full OpenAPI spec
skylarmb Dec 12, 2025
7aff7f9
refactor: rename generate-sdk to generate, combine both clients
skylarmb Dec 12, 2025
8739b6c
feat: add generate-sdk target for comparison output
skylarmb Dec 12, 2025
1c6669e
revert architecture split
skylarmb Dec 12, 2025
a4c1820
feat: add openapi-python-generator pipeline for v1 client
skylarmb Dec 12, 2025
9b0113b
feat: replace hand-written client with generated + ergonomic wrapper
skylarmb Dec 12, 2025
3ce1aa1
feat: add async methods to all API wrapper classes
skylarmb Dec 12, 2025
83659c3
fix: update imports to use correct model names from generated API
skylarmb Dec 13, 2025
be44abd
refactor: remove v0 model imports from test utilities
skylarmb Dec 13, 2025
841ad89
refactor: remove v0 model imports from all test files
skylarmb Dec 13, 2025
9340347
fix: update validation_helpers.py to use v1 models
skylarmb Dec 13, 2025
5a29493
fix: remove PostConfigurationRequest import from validation_helpers
skylarmb Dec 13, 2025
16a74f4
archive: move v0 unit tests to _v0_archive for reference
skylarmb Dec 13, 2025
5178e07
fix a few tests
skylarmb Dec 15, 2025
d8d3a61
update to v1 prefix, fix generated model json
skylarmb Dec 15, 2025
1a5d7db
2 more tests
skylarmb Dec 15, 2025
e54f13c
some working integration tests
skylarmb Dec 15, 2025
41c650b
docs: Document untyped API endpoints and generated client issues
skylarmb Dec 15, 2025
c5fb920
refactor: Use typed PostSessionResponse model throughout codebase
skylarmb Dec 16, 2025
352ebc0
test: Unskip 4 HoneyHive attributes tests - EventType migration complete
skylarmb Dec 16, 2025
92c506e
Add events schemas
skylarmb Dec 16, 2025
a377c92
refactor: Update EventsAPI to use newly typed Event models
skylarmb Dec 16, 2025
265499d
refactor: Update tracer to use typed PostEventRequest model
skylarmb Dec 16, 2025
162d26c
refactor: Update test utilities to use typed Event models
skylarmb Dec 16, 2025
c7003a5
refactor: Update test_simple_integration to use typed Event models
skylarmb Dec 16, 2025
ba05002
fix: Revert GetDatasetsResponse field name to datapoints
skylarmb Dec 16, 2025
e885268
fix: Resolve integration test failures and OpenAPI spec issues
skylarmb Dec 16, 2025
bbfbd98
datapoints and datasets tests
skylarmb Dec 16, 2025
8dd383a
Enable datapoints API integration tests (get, update, delete)
skylarmb Dec 16, 2025
acfac14
Enable configurations and datasets API integration tests
skylarmb Dec 16, 2025
8dfa8a9
address some of the 404s
skylarmb Dec 16, 2025
4408cfe
include session id in verification functions
skylarmb Dec 16, 2025
e15d4ce
format
skylarmb Dec 16, 2025
9f18dd0
update summary
skylarmb Dec 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .envrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Automatically load the Nix flake development environment
use flake

# Load local .env file if it exists (for API keys, etc.)
dotenv_if_exists .env

# Load integration test environment if it exists
dotenv_if_exists .env.integration
71 changes: 70 additions & 1 deletion .github/workflows/tox-full-suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ name: Tox Full Test Suite
- 'tests/**'
- 'tox.ini'
- 'pyproject.toml'
- 'openapi/**'
- 'scripts/generate_*.py'
- '.github/workflows/tox-full-suite.yml'
pull_request:
# Run on all PRs - immediate feedback on feature branch work
Expand All @@ -69,6 +71,8 @@ name: Tox Full Test Suite
- 'tests/**'
- 'tox.ini'
- 'pyproject.toml'
- 'openapi/**'
- 'scripts/generate_*.py'
- '.github/workflows/tox-full-suite.yml'

permissions:
Expand Down Expand Up @@ -138,6 +142,49 @@ jobs:
retention-days: 7


# === GENERATED CODE VALIDATION ===
generated-code-check:
name: "🔄 Generated Code Check"
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'
cache: 'pip'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -e ".[dev]"

- name: Regenerate models
run: |
echo "🔄 Regenerating models from OpenAPI spec..."
python scripts/generate_models.py

- name: Check for uncommitted changes
run: |
echo "🔍 Checking for uncommitted changes in generated code..."
if [ -n "$(git status --porcelain)" ]; then
echo "❌ Generated code is out of sync!"
echo ""
echo "The following files have changed after regeneration:"
git status --porcelain
echo ""
echo "Diff:"
git diff --stat
echo ""
echo "Please run 'make generate' locally and commit the changes."
exit 1
else
echo "✅ Generated code is up-to-date!"
fi

# === CODE QUALITY & DOCUMENTATION ===
quality-and-docs:
name: "🔍 Quality & 📚 Docs"
Expand Down Expand Up @@ -165,6 +212,16 @@ jobs:
echo "✨ Running format checks..."
tox -e format

- name: Validate tracer patterns
run: |
echo "🔍 Validating tracer patterns..."
bash scripts/validate-tracer-patterns.sh

- name: Check feature documentation sync
run: |
echo "📋 Checking feature documentation synchronization..."
python scripts/check-feature-sync.py

- name: Build documentation
run: |
echo "📚 Building documentation..."
Expand Down Expand Up @@ -219,6 +276,11 @@ jobs:
echo "has_honeyhive_key=false" >> $GITHUB_OUTPUT
fi

- name: Validate no mocks in integration tests
run: |
echo "🔍 Validating integration tests use real APIs (no mocks)..."
bash scripts/validate-no-mocks-integration.sh

- name: Run integration tests with real APIs (NO MOCKS)
if: steps.check_credentials.outputs.has_honeyhive_key == 'true'
run: |
Expand Down Expand Up @@ -263,7 +325,7 @@ jobs:
# === TEST SUITE SUMMARY ===
summary:
name: "📊 Test Summary"
needs: [python-tests, quality-and-docs, integration-tests]
needs: [python-tests, quality-and-docs, integration-tests, generated-code-check]
runs-on: ubuntu-latest
if: always()

Expand Down Expand Up @@ -298,10 +360,17 @@ jobs:
quality_docs_result="${{ needs.quality-and-docs.result == 'success' && '✅ PASSED' || '❌ FAILED' }}"
echo "- **Code Quality & Docs:** $quality_docs_result" >> $GITHUB_STEP_SUMMARY

# Generated Code Check
echo "" >> $GITHUB_STEP_SUMMARY
echo "## 🔄 Generated Code" >> $GITHUB_STEP_SUMMARY
generated_result="${{ needs.generated-code-check.result == 'success' && '✅ UP-TO-DATE' || '❌ OUT OF SYNC' }}"
echo "- **Generated Code:** $generated_result" >> $GITHUB_STEP_SUMMARY

# Overall Status
echo "" >> $GITHUB_STEP_SUMMARY
if [ "${{ needs.python-tests.result }}" = "success" ] && \
[ "${{ needs.quality-and-docs.result }}" = "success" ] && \
[ "${{ needs.generated-code-check.result }}" = "success" ] && \
([ "${{ needs.integration-tests.result }}" = "success" ] ||
[ "${{ needs.integration-tests.result }}" = "skipped" ]); then
echo "## 🎉 **ALL TESTS PASSED**" >> $GITHUB_STEP_SUMMARY
Expand Down
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -141,8 +141,12 @@
.spyproject
.tox/
.venv
.venv/
.vscode/
.webassets-cache
.direnv/
result
result-*
/site
Desktop.ini
ENV/
Expand All @@ -151,6 +155,7 @@ Thumbs.db
__pycache__/
__pypackages__/
build/
comparison_output/
celerybeat-schedule
celerybeat.pid
cover/
Expand Down
102 changes: 0 additions & 102 deletions .pre-commit-config.yaml

This file was deleted.

83 changes: 0 additions & 83 deletions 400_ERROR_INVESTIGATION.md

This file was deleted.

Loading