Skip to content

Foundation Setup - #11

Merged
prosdev merged 3 commits into
mainfrom
feat/foundation-setup
Jan 10, 2026
Merged

Foundation Setup#11
prosdev merged 3 commits into
mainfrom
feat/foundation-setup

Conversation

@prosdev

Copy link
Copy Markdown
Contributor

Implements Issue #1: Foundation Setup (Tasks 1-3)

Summary

  • Configuration management with BaseSettings
  • RawEvent for flexible JSON ingestion
  • TypedEvent models (Identify, Track, Page) with $set/$set_once support
  • Ref model for identity extraction
  • EventAdapter, EventStore, ErrorStore protocols
  • Custom exception hierarchy

Testing

  • 29 unit tests passing
  • 80% code coverage
  • mypy type checking clean

Closes#1

- Add configuration management with BaseSettings
- Create RawEvent for flexible JSON ingestion
- Create TypedEvent models (Identify, Track, Page) with $set/$set_once support
- Add Ref model for identity extraction
- Define EventAdapter, EventStore, ErrorStore protocols
- Add custom exception hierarchy
- Configure pytest with 29 passing unit tests (80% coverage)
- Update .gitignore for GCP credentials protection
Resolves#1
- Add GitHub Actions test workflow (Python 3.12 only)
- Use uv for fast dependency installation
- Run checks in fail-fast order: lint, format, typecheck, tests
- Add concurrency control to cancel old PR runs
- Fix deprecated ruff config (move to lint section)
- Format all Python files with ruff
- Update pyproject.toml to require Python 3.12+
- Update CLAUDE.md with uv commands
@prosdev
prosdevforce-pushed the feat/foundation-setup branch from ca2ab86 to 6041729CompareJanuary 10, 2026 15:24
- Generate uv.lock for reproducible installs
- Update CI to use 'uv sync' with lockfile caching
- Update CLAUDE.md with uv sync commands
- Create .venv automatically on sync
@prosdev
prosdevforce-pushed the feat/foundation-setup branch from 6041729 to be15a94CompareJanuary 10, 2026 15:28
@prosdev
prosdev merged commit 38ae53d into mainJan 10, 2026
1 check passed
Sign up for freeto 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.

Foundation Setup

1 participant

@prosdev