Commit Graph

71 Commits

Author SHA1 Message Date
Christina Tong
04611b981c feat: filter messages search endpoint by agent id [LET-6229] (#6246)
* feat: filter messages search endpoint by agent id [LET-6229]

* add autogenerated schema/types
2025-11-24 19:09:33 -08:00
Kian Jones
848aa962b6 feat: add memory tracking to core (#6179)
* add memory tracking to core

* move to asyncio from threading.Thread

* remove threading.thread all the way

* delay decorator monitoring initialization until after event loop is registered

* context manager to decorator

* add psutil
2025-11-24 19:09:32 -08:00
Kian Jones
7f49e08be9 fix: attempt to better handle reasoning content in embedding flow, and add test coverage (#6171)
fix and test case addition
2025-11-24 19:09:32 -08:00
Kian Jones
9e9ae9d4ae fix: check content before embedding (#6147)
* to_text for reasoning

* caren's feedback

* prefer to_text over text and content
2025-11-13 15:36:56 -08:00
Kian Jones
45065297a0 feat: runtime validation for ids for internal managers calls (#5544)
* claude coded first pass

* fix test cases to expect errors instead

* fix this

* let's see how letta-code did

* claude

* fix tests, remove dangling comments, retrofit all managers functions with decorator

* revert to main for these since we are not erroring on invalid tool and block ids

* reorder decorators

* finish refactoring test cases

* reorder agent_manager decorators and fix test tool manager

* add decorator on missing managers

* fix id sources

* remove redundant check

* uses enum now

* move to enum
2025-10-24 15:13:47 -07:00
jnjpng
5913730992 fix: ensure messages are in chronological order when backfilling tool call id (#5520)
* base

* base

---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-10-24 15:12:11 -07:00
Matthew Zhou
6cfdcc584c fix: Add backfill for message listing without tool call id [LET-5479] (#5400)
* Add warning comment

* Remove extra commit

* Remove extra helper unused
2025-10-24 15:11:31 -07:00
Sarah Wooders
134e0203c2 fix: remove MessageModel.is_err == False) | (MessageModel.is_err.is_(None) (#5160) 2025-10-07 17:50:49 -07:00
Sarah Wooders
354205f581 feat: create new runs table [LET-4467] (#4841) 2025-10-07 17:50:47 -07:00
Matthew Zhou
171f9b0b19 fix: Refactor reset messages async to reduce idle in transaction [LET-4529] (#4958)
* Reduce comments

* Move turbopuffer outside of reset messages
2025-10-07 17:50:46 -07:00
Matthew Zhou
b43193bf53 fix: Move turbopuffer logic out async db session [LET-4528] (#4957)
Move turbopuffer logic out async db session
2025-10-07 17:50:46 -07:00
Sarah Wooders
53786ee102 feat: asyncify test_manager.py [LET-4494] (#4890)
* add test_agent_manager.py

* created shared conftest

* add test_tool_manager.py

* add tag tests

* add message manager tests

* add blocks

* add org

* add passage tests

* add archive manager

* add user manager

* add identity

* add job manager tests

* add sandbox manager

* add file manager

* add group managers

* add mcp manager

* fix batch tests

* update workflows

* fix test_managers.py

* more tests

* comment out old test and add file

---------

Co-authored-by: Matthew Zhou <mattzh1314@gmail.com>
2025-10-07 17:50:46 -07:00
Sarah Wooders
4df0a27eb0 chore: remove sync db (#4873) 2025-10-07 17:50:45 -07:00
Matthew Zhou
2f716d4961 feat: Add partial flag on create_many_messages_async (#4836)
Add partial flag
2025-10-07 17:50:45 -07:00
Kian Jones
b8e9a80d93 merge this (#4759)
* wait I forgot to comit locally

* cp the entire core directory and then rm the .git subdir
2025-09-17 15:47:40 -07:00
Kian Jones
22f70ca07c chore: officially migrate to submodule (#4502)
* remove apps/core and apps/fern

* fix precommit

* add submodule updates in workflows

* submodule

* remove core tests

* update core revision

* Add submodules: true to all GitHub workflows

- Ensure all workflows can access git submodules
- Add submodules support to deployment, test, and CI workflows
- Fix YAML syntax issues in workflow files

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* remove core-lint

* upgrade core with latest main of oss

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-09-09 12:45:53 -07:00
Matthew Zhou
acaf820009 feat: Add project_id to message filtering/inserting to Turbopuffer [LET-4252] (#4466)
* Add project_id

* Fern autogen
2025-09-08 14:35:15 -07:00
Matthew Zhou
af302e8ac8 feat: Write tests for search messages [LET-4212] (#4447)
* Adjust naming

* Add testing and improve message search

* Adjust comments

* Change query text to query

* Fern autogen
2025-09-05 17:52:13 -07:00
Matthew Zhou
2ef47d8002 feat: Add search messages endpoint [LET-4144] (#4434)
* Add search messages endpoint

* Run fern autogen and fix tests
2025-09-05 14:28:27 -07:00
Matthew Zhou
cbf2e09e13 feat: Add project id to message schema [LET-4166] (#4433)
* Add project id

* Propogate through update message by id async

* Add project id testing
2025-09-04 16:50:41 -07:00
Matthew Zhou
dda4459245 feat: Make end date inclusive on conversation search (#4431)
Make end date inclusive
2025-09-04 15:26:49 -07:00
Matthew Zhou
5337e5bcac feat: Move message embedding to background task [LET-4189] (#4430)
* Test background message embedding

* Change to content
2025-09-04 15:05:35 -07:00
Matthew Zhou
d924cc005b fix: change to pure rank-based RRF for relevance ordering (#4411)
* Fix RRF

* Fix turbopuffer tests
2025-09-03 17:33:19 -07:00
Matthew Zhou
6e633bd8f9 feat: Change namespace to be org scoped and filter on agent_id [LET-4163] (#4368)
* Change to org scoped and agent_id filtering

* Finish modifying conversation search tool

* Fix failing tests

* Get rid of bad imports
2025-09-03 10:00:19 -07:00
Matthew Zhou
c69fc95870 feat: Extend crud lifecycle of messages [LET-4158] (#4364)
Extend crud lifecycle of messages
2025-09-02 14:38:30 -07:00
Matthew Zhou
8f425aa024 feat: Modify conversation search tool to be hybrid (#4362)
* Modify conversation search functionality

* Gate the roles
2025-09-02 13:45:53 -07:00
Matthew Zhou
6b625cb039 feat: Extract more text from messages [LET-4154] (#4359)
* Extract more message types

* Add extra tests testing for multiple parts
2025-09-02 13:25:32 -07:00
Matthew Zhou
b8a198688f feat: Embed all messages in turbopuffer [LET-4143] (#4352)
* wip

* Finish embedding

* Fix ruff and tests
2025-09-02 12:43:48 -07:00
Kian Jones
fecf6decfb chore: migrate to ruff (#4305)
* base requirements

* autofix

* Configure ruff for Python linting and formatting

- Set up minimal ruff configuration with basic checks (E, W, F, I)
- Add temporary ignores for common issues during migration
- Configure pre-commit hooks to use ruff with pass_filenames
- This enables gradual migration from black to ruff

* Delete sdj

* autofixed only

* migrate lint action

* more autofixed

* more fixes

* change precommit

* try changing the hook

* try this stuff
2025-08-29 11:11:19 -07:00
cthomas
873791659c feat: use no_refresh flag in message update (#3439) 2025-07-20 22:11:09 -07:00
cthomas
93ebac3586 feat: use no_refresh in message creation (#3435) 2025-07-20 20:38:23 -07:00
cthomas
810628acd9 feat: remove organization from pydantic message model (#3411) 2025-07-19 09:28:54 -07:00
Andy Li
1ccaae8960 chore: cleanup database detection 2025-07-18 17:12:56 -07:00
Andy Li
60c4e23904 feat: stop reasons and error messages and sentry fixes 2025-07-18 11:56:20 -07:00
Kian Jones
0cd8c830c9 feat(sqlite): CI Tests for Alembic and SQLite (#3358)
Co-authored-by: Matt Zhou <mattzh1314@gmail.com>
2025-07-17 18:04:13 -07:00
Matthew Zhou
ec1b2c823a feat: Integrate performant validate_agent_exists_async (#3350) 2025-07-15 17:15:33 -07:00
Matthew Zhou
6a59186a08 feat: Change reset messages to always preserve the original system message (#2813) 2025-06-13 18:58:27 -07:00
cthomas
20e6732f36 feat: add multi-modal input support (#2590) 2025-06-08 18:28:01 -07:00
Andy Li
d2252f2953 feat: otel metrics and expanded collecting (#2647)
(passed tests in last run)
2025-06-05 17:20:14 -07:00
cthomas
78c82f1ad9 fix: move db logic inside sessions (#2553) 2025-05-30 14:02:25 -07:00
Andy Li
275b75901d chore: cleanup (#2480) 2025-05-29 10:40:41 -07:00
cthomas
7346473ebe feat: optimize get message ids (#2508) 2025-05-28 23:15:36 -07:00
cthomas
3a893daec0 feat(asyncify): convert reset messages endpoint (#2429) 2025-05-25 21:23:18 -07:00
cthomas
20866d3463 feat(asyncify): make core tools async (#2416) 2025-05-25 18:58:19 -07:00
cthomas
6c1b189080 feat: add db tracing to otel (#2337) 2025-05-22 13:47:49 -07:00
cthomas
1325cacbfe feat(asyncify): migrate list messages (#2272) 2025-05-20 16:52:11 -07:00
cthomas
6b8b77c462 feat(asyncify): migrate modify block (#2232) 2025-05-17 23:24:24 -07:00
cthomas
91a5516090 feat(asyncify): add size_async db function (#2207) 2025-05-16 01:22:48 -07:00
cthomas
0a4b0ff60b feat: convert agents routes to async (#2196) 2025-05-15 13:39:59 -07:00
cthomas
7f90746152 feat: convert many methods to async (#2193) 2025-05-15 12:09:40 -07:00