* feat: add complex arbitrary filtering on all objects
* fix: safe numeric casting and application of comparators
* fix: add way more tests, fix bugs with filter parsing
* chore: pass model_class as arugment to apply_filter
* fix: default to not caring about is_active in get_sessions_for_peer
* fix: address coderabbit complaints (valid)
* fix: throw filter errors when necessary, validate inputs and handle edge cases with more tests
* fix: remove all type errors and most type warnings
* fix: don't use db in tests that don't need it
cheat: sprinkle in some pyright: ignore in filter.py
* fix: allowlist for filtering -- no filtering by content, message id, or anything internal
* fix: handle mixed types in metadata, add tests
* chore: refine types
* chore: rename fiter param everywhere
* type stuff
* add action
* bump python
* Refactor type annotations and update tracking decorators in agent and dependencies modules. Replace ai_track with track from src.utils.types, and enhance type hints for better clarity. Update pyproject.toml to allow untyped libraries.
* type everything basically
* fix migration typing
* type like crazy
* remove usless tests
* Update mocks in tests to use AsyncMock for dialectic_call and dialectic_stream, ensuring proper async behavior in test cases. Adjust mock return values for consistency and clarity.
* Update src/deriver/tom/single_prompt.py
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Update src/deriver/tom/long_term.py
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Enhance CLAUDE.md documentation with additional details on core concepts, API structure, and development commands. Update command syntax for running server and tests to use 'uv run' for consistency. Improve clarity in configuration and architectural decisions sections.
* Refactor type annotations in CRUD functions to accept more flexible filter types, changing from dict[str, str] to dict[str, Any]. Clean up logging in agent.py by removing unnecessary timing logs for user representation generation and query execution.
* Remove unused import of ai_track from long_term.py and single_prompt.py to clean up the codebase.
* pass tests
* update some stuff
* fix unused
* ruff
* make stuff work again
* Add LLM_GROQ_API_KEY to GitHub Actions and format tom_inference parameters
* test
* test
* Refactor LLM settings to use 'gemini' provider and update related model parameters; remove unused API keys from GitHub Actions workflow.
* Update LLM settings to use 'anthropic' provider and change model to 'claude-3-5-haiku-20241022'; maintain existing summarization provider.
* test
* llm provider stuff
* update
* revert
* Integrate client management for LLM providers across various modules; remove deprecated environment variable setup for API keys.
* only if key avaialble
* Refactor type hints and improve schema definitions for queue processing; remove unused imports and enhance function signatures for clarity.
* fix test
* model
* test
* Update LLM provider type annotations and enhance client management; replace Provider with Providers for better type handling in config and clients modules.
* Refactor LLM provider handling to default to "openai" for custom providers across multiple modules; update type annotations and improve client management for consistency.
---------
Co-authored-by: Dani Balcells <18307962+danibalcells@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Initial Model Changes
* fix migration
* update schemas
* handle router changes
* make name FK and corresponding crud changes
* fix routers
* comment metamessage references
* add bulk peer session operations
* update messages router
* fix require_auth to make app runnable
* remove peer from get messages
* add new routes
* implement new crud methods for session peers
* alter keys router
* add feature flags dict and token limit + fix SessionContext
* fix: paginate get_session_peers and make tokens/summary query params in get_session_context
* feat: add create_messages_for_peer, get_messages_for_peer
* fix: make session_peers a Table
* finalize upgrade
* fix: working migration
* fixes: schemas, crud, routes
* add token count
* fix migration errors discovered from db with data in it
* fixes: unify with sdk
* downgrade
* feat: swap jwts to new paradigm
* fix unit tests
* fix tests pt 2
* fix: handle foreign key errors in create_messages
* fix downgrade
* downgrade queue changes
* feat: add search to resources, make get_messages handle limits, add get_representation to peer
* chore: beef up tests
* fix: move chat and rep params to post body, add target to get_representation
* fix get_user_protected_collection and embedding store
* feat: add peer config to models, crud, schemas, routes
* fix: update tests and fix list(tuple()) to dict()
* add session peer left_at/joined_at and modify enqueue
* [wip]: feat: refactor history to match new paradigm and implement get_context
* fix messages enqueue and test it
* chore: align deriver and new honcho paradigm
* chore: update consumer
* chore: get rid of is_user
* feat: change queue tables to new key strat
* fix: convert queue session_id to str properly
* fix downgrade migration
* feat: re-integrate old deriver
* chore: coderabbit review, lots of small bug fixes
* fix: fix batch migration of messages and token count
* fix: mock ModelClient
* CodeRabbit comments
* CR comments 2
* fix: handle metadata and feature flags properly in get_or_creates
* cr comments 3
* feature flag to configuration
* feat: add real get crud
* fix: remove reverse param from places it does not belong
* add session.name constraint; narrow task type; disable deriver from configuration
* get_or_add_peers_to_session + session peers limit
* feat: get deriver status for peer, optional session param
* fix: add internal_metadata, fix agent
* rename to get_deriver_status, simplify
* fix: move working rep into crud get/set, unstub get_working_representation
* fix: don't payload metadata
* peer protected collection -> global / local rep collections
* Simplify control flow, use session_name vs id
* coderabbit syntax errors
* coderabbit changes
* ruff formatting
* Revert non-src changes from ruff formatting
* move status endpoint into workspace, protects session_name, peer is optional
* fix: optimize db query for deriver status
* chore: add tests for queue status endpoint, add some extra validation in endpoint, reduce post-processing
---------
Co-authored-by: Vineeth Voruganti <13438633+VVoruganti@users.noreply.github.com>
Co-authored-by: Rajat Ahuja <rahuja445@gmail.com>
Co-authored-by: Benjamin McCormick <docterformer@protonmail.com>
Co-authored-by: doria <93405247+dr-frmr@users.noreply.github.com>
* rm unused embedding store param
* refactor: scope db sessions in chat endpoint to reduce connection hold times. Replace route-scoped db session with multiple tracked_db sessions
* rm db from sessions.chat route
* chore: styling
* fix: consolidate db session in get_user_representation and fix parallel db sessions for query
* fix (agent): db invalidation error with collection
---------
Co-authored-by: Vineeth Voruganti <13438633+VVoruganti@users.noreply.github.com>
* feat (storage): Remove strict requirement for body on list endpoints
* fix (storage): Rename metamessage_type to label with backwards compatability
* fix (schemas): Backwards compatability for metamessage_type and idiomatic schemas
* fix (docs): Update docs to reference label instead of metamessage type
* fix (storage): Rebase db migration and fix tests
* chore: alembic consistency
* fix: Manually close transaction with get_db
* use get_db instead of session local
* fix comment
* fix (db): Add application name to each transaction and switch everything to use dependency
* chore: Address coderabbit comment
---------
Co-authored-by: Vineeth Voruganti <13438633+VVoruganti@users.noreply.github.com>
* feat: add CD for honcho images to saas test and prod environments
* fix: use github tag in image label
* feat: split up test and prod deployment flows, push to service after
* fix: action parsing properly hopefully
* fix: proper url, version
* remove excessive fly.toml
* fix: specify prod-image in prod workflow
* Potential fix for code scanning alert no. 12: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* Potential fix for code scanning alert no. 11: Workflow does not contain permissions
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
* Apply suggestions from code review
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix: Change App name in command and make steps sequential
* fix: Address Code Rabbit nitpicks
* Use IMAGE Label environment variable
* fix: collisions between github action groups
* feat: add migrate_db script
* fix: correct image label on prod deploy
---------
Co-authored-by: Vineeth Voruganti <13438633+VVoruganti@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>