Commit Graph

996 Commits

Author SHA1 Message Date
cthomas
fecff4c12c feat: add more tests for hitl (#4339) 2025-09-01 16:23:06 -07:00
cthomas
3f87fc34f2 feat: handle message persistence for approvals flows (#4338) 2025-09-01 14:10:02 -07:00
cthomas
f3112f75a3 feat: add human in the loop tests to CI (#4335)
feat: add human in the loop tests-to-ci
2025-09-01 11:10:31 -07:00
Charles Packer
56452ae426 fix(core): init attempt at patching the extended thinking bug (#4331)
* fix(core): init attempt at patching the extended thinking bug

* fix: refactor, fix in a different way be merging instead of dropping, seems to be working

* chore: cleanup

* fix: patch the test - with the new native thinking behavior, anthropic native reasoning does not trigger properly post tool-call

* fix: another attempt

* fix: tests passing locally

* fix: another patch to tests

* fix: pathc more tests

* fix: try turning on the interleave-thinking beta header

* fix: patch test

* fix: add new tests to be more robust

* fix: patch the prompt, now it works more reliably

* fix: typo
2025-09-01 11:09:02 -07:00
cthomas
65cd430317 feat: support deny tool call request (#4334) 2025-09-01 10:33:18 -07:00
jnjpng
4df4c5ea2e fix: retry on MALFORMED_FUNCTION_CALL for gemini [LET-4089]
---------

Co-authored-by: Letta Bot <noreply@letta.com>
2025-09-01 07:26:13 -07:00
cthomas
671f561c77 feat: support approve tool call request (#4333) 2025-08-31 11:26:21 -07:00
Matthew Zhou
335e0c2be1 feat: Support timestamp filtering for archival memories [LET-3469] (#4330)
Finish temporal filtering
2025-08-30 19:31:07 -07:00
cthomas
484d2a4e93 feat: add error handling for approval response attempt (#4326)
* feat: add error handling for approval response attempt

* add one more error case

* improve error messages
2025-08-29 20:39:28 -07:00
Kian Jones
2b80b4aad8 chore: add tbpuf secrets and testing (#4292)
* add tbpuf secret

* deploy tbpuf key to prod deploy for core

* add secrets in staging and ci

* rn turbopuff test and add to integration test suite

* add tbpuf

* rename all occurences to tpuf

* remove debug prints

* buffer-puf

* add letta prefix

* add debug

* fix tests
2025-08-29 16:44:15 -07:00
Charles Packer
aecb6e32d7 fix(core): update default value [LET-4117] (#4321)
* fix(core): update default value

* fix: just stage just publish

* fix(core): temporary hardcoding of the anthropic max tokens

* fix(core): patch the gemini
2025-08-29 16:42:19 -07:00
cthomas
cc376b32ed feat: add support for approval request creation (#4313) 2025-08-29 15:23:02 -07:00
Matthew Zhou
83721679c6 test: Add test for archival tag compilation into system prompt [LET-4114] (#4312)
Add tests and thread created_at
2025-08-29 13:35:19 -07:00
Matthew Zhou
26309264a4 fix: Fix test managers (#4310)
* Fix test managers

* Mock
2025-08-29 13:03:06 -07:00
Matthew Zhou
23b2769dc4 feat: Allow agent archival tools to insert/search with tags [LET-4072] (#4300)
* Finish modifying archival memory tools

* Add tags

* Add disabled test
2025-08-29 11:55:06 -07:00
Kian Jones
ca6cfa5914 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
f64255f5c9 feat: add requires approval logic to tool rules solver (#4294) 2025-08-28 17:06:46 -07:00
Matthew Zhou
016feda83a feat: Support arbitrary string tagging filtering [LET-3467] (#4285)
* Finish tagging

* Add comprehensive tags functionality

* Add fern autogen

* Create passage tags table

* Add indices

* Add comments explaining dual storage

* Fix alembic heads

* Fix alembic

---------

Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
2025-08-28 16:57:36 -07:00
cthomas
7a2ccbd357 feat: add new modify approvals api (#4288)
* feat: add new modify approvals api

* remove path params override
2025-08-28 16:45:07 -07:00
cthomas
b0cf7f0e93 feat: add new default_requires_approval flag on tools (#4287) 2025-08-28 15:38:59 -07:00
Matthew Zhou
2791be982a feat: Add hybrid search on turbopuffer [LET-4096] (#4284)
Add hybrid search
2025-08-28 13:10:25 -07:00
Matthew Zhou
cf3423a21a feat: De-dupe tool rules [LET-4091] (#4282)
* Add hash/eqs for de-dupe

* Add sdk test
2025-08-28 12:43:32 -07:00
Sarah Wooders
b4fc7012cc chore: patch update tools (#4090)
* patch update tools

* update tool patch

* fallback to generation for legacy tools

* avoid re-parsing source if json schema exists

* fix more tests

* remove asssert

* fix

* update

* update

* update

* Fix tests

---------

Co-authored-by: Matt Zhou <mattzh1314@gmail.com>
2025-08-28 11:34:36 -07:00
Matthew Zhou
651671cb83 feat: Support basic upload/querying on tpuf [LET-3465] (#4255)
* wip implementing turbopuffer

* Move imports up

* Add type of archive

* Integrate turbopuffer functionality

* Debug turbopuffer tests failing

* Fix turbopuffer

* Run fern

* Fix multiple heads
2025-08-28 10:39:16 -07:00
jnjpng
a4789aa8f4 fix: test_mcp.py tests [LET-4075]
* fix tests

* update venv cleanup
2025-08-27 15:04:47 -07:00
Sarah Wooders
2b23ec7dff feat: support overriding embedding handle [LET-4021] (#4224) 2025-08-27 14:54:17 -07:00
Matthew Zhou
2fa546e15d chore: Move environment to settings [LET-4080] (#4265)
Move environment to settings
2025-08-27 14:52:35 -07:00
cthomas
9f919cf925 fix: add timeout to test_sdk_client.py test (#4262) 2025-08-27 14:37:06 -07:00
cthomas
6a5a9962a2 fix: sonnet send message tests [LET-4074] (#4260)
* fix: sonnet send message tests

* one more check
2025-08-27 13:51:21 -07:00
cthomas
9080cb6914 feat: update timeout for sdk tests [LET-4070] (#4256)
feat: update timeout for sdk tests

Co-authored-by: jnjpng <jin@letta.com>
2025-08-27 13:45:29 -07:00
cthomas
65703a3f2d fix: sdk tests [LET-4071] (#4258)
fix: sdk tests
2025-08-27 13:02:53 -07:00
Matthew Zhou
f8935282e1 fix: Fix a bunch of failing tests [LET-4065] (#4249)
* Finish fixing async loop for test_agent_serialization_v2

* Fix tests

* Remove rounding for sqlite

---------

Co-authored-by: Shubham Naik <shub@letta.com>
2025-08-27 12:48:03 -07:00
cthomas
eba1a4a7d6 fix: letta hosted embedding dim (#4257) 2025-08-27 12:41:14 -07:00
cthomas
8b617c9e0d fix: gemini flash integration test [LET-4060] (#4242)
* fix: gemini flash integration test

* also update google flash

* catch error in test

* revert test changes

* do try catch again

* remove try catch from streaming tests

* add try catch for summarize test also
2025-08-27 11:59:15 -07:00
cthomas
9498830583 fix: test embeddings missing fixture [LET-4062] (#4244)
fix: test embeddings missing fixture
2025-08-27 10:11:56 -07:00
cthomas
4ed307f98f fix: test managers failure on main [LET-4061] (#4243)
fix: test managers failure on main
2025-08-27 10:11:33 -07:00
Matthew Zhou
564662e571 fix: Fix agent serialization tests (#4193)
Finish
2025-08-27 09:49:17 -07:00
cthomas
9e48f3675a feat: add unit test for backgrounds filter [LET-4051] (#4230)
feat: add unit test for backgrounds filter
2025-08-27 09:40:57 -07:00
Sarah Wooders
38c251b01b feat: add cloud template fields to blocks/groups/agents [LET-3979]
* commit

* fix tests

* add routes

* remove old fields

* remove entity from group

* generate, migrate

* update

* keep from_template, etc.

* keep block fields

* final

* generate

* pass tests

* generate

* keep defaults

---------

Co-authored-by: jin <jin@letta.com>
2025-08-26 23:17:06 -07:00
Andy Li
acfdab2ced feat: uv migration (#3493)
* uv migration

smaller runners, freeze test runs, remove dev, ruff,hatchling, previw,
poetry, generates wheel, installs wheel, docker

* fix tests and dependency groups

* test fixes

* test fixing and main

* resolve merge conflict

* dev + test dependency group

* Test

* trigger CI

* trigger CI

* add debugging info

* trigger CI

* uv for reusable and sdk preview

* resolve mc and reformat black

* staged-api

* mypy

* fix fern

* prod Dockerfile

* model sweep, and project.toml and uvlock

* --group test -> --extra dev

* remove redundant --extra dev and rename tests to dev

* sdk backwards compat install sqlite

* install sqlite group for sdk-backwards-compat

* install uv on gh runner for cloud-api-integration-tests

* stage+publish

* pytest asyncio

* bug causing pytest package to get removed

* try to fix async event loop issues

* migrate to --with google-cloud-secret-manager

---------

Co-authored-by: Kian Jones <kian@letta.com>
2025-08-26 18:11:09 -07:00
Kian Jones
45c4dbd5e8 chore(ci): Add uv support and use for unit tests (#4127)
* cherrypick just relevant commits?

* make work with poetry

* update poetry?

* regen?

* change tests and dev to dependency groups instead of optional extras

* Fix Poetry/UV compatibility issues

- Fix sqlite-vec dependency: Remove optional flag from Poetry section to match main deps
- Regenerate poetry.lock to sync with pyproject.toml changes
- Test both package managers successfully:
  - Poetry: `poetry install --with dev --with test -E postgres -E external-tools -E cloud-tool-sandbox`
  - UV: `uv sync --group dev --group test --extra postgres --extra external-tools --extra cloud-tool-sandbox`

Resolves Poetry lock sync errors and ensures sqlite-vec is available for tests.

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

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

* more robust pip install

* Fix fern SDK wheel installation in CI workflow

Replace unreliable command substitution with proper error handling:
- Check if directory exists before attempting to find wheels
- Store wheel file path in variable to avoid empty arguments
- Provide clear error messages when directory/wheels are missing
- Prevents "required arguments were not provided" error in uv pip install

Fixes: error: the following required arguments were not provided: <PACKAGE>

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

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

* debugging

* trigger CI

* ls

* revert whl installation to -e

* programmatic HIT version insertion

* version templating properly

* set var properly

* labelling

* remove version insertion

* ?

* try using sed '2r /dev/stdin'

* version

* try again smh

* not trigger on poetry version

* only add once

* filter only for project not poetry

* hand re-construct the file

* save tail?

* fix docker command

* please please please

* rename test -> tests

* update poetry and rename group to -E

* move async into tests extra and regen lock files and add sqlite extra

* remove loading cached venv from cloud api integration

* add uv dependency to CI runners

* test removing the custom event loop

* regen poetry.lock and try to fix async tests

* wrap async pg exception and event loop tweak in plugins

* remove event loop from plugins test and remove caching from cloud-api-integration-test

* migrate all tests away from event loop for pytest-asyncio

* pin firecrawl

* pin e2b

* take claude's suggestion

* deeper down the claude rabbit hole

* increase timeout for httpbin.org

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-08-26 11:51:31 -07:00
jnjpng
4d6d686c6e feat: generate strict-compatible schema for MCP tools with optional fields
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-25 22:08:59 -07:00
Kevin Lin
1c3781f68d fix: patch anthropic send message tests (#4173)
Co-authored-by: Sarah Wooders <sarahwooders@gmail.com>
2025-08-25 21:17:08 -07:00
Matthew Zhou
f25844fbe2 fix: Add check status update flag to list (#4177) 2025-08-25 16:21:33 -07:00
cthomas
e63dedab7a feat: add retrieve stream testing (#4168) 2025-08-25 16:13:59 -07:00
Sarah Wooders
42e82fcc9e feat: add unit tests for embeddings (#4108)
Co-authored-by: Kian Jones <kian@letta.com>
Co-authored-by: Kian Jones <11655409+kianjones9@users.noreply.github.com>
2025-08-25 13:37:41 -07:00
cthomas
0fa8802834 feat: add redis client to CI for background mode tests (#4155) 2025-08-25 11:37:46 -07:00
Matthew Zhou
f918ca0a59 feat: Add better error catching for files upload (#4145) 2025-08-24 16:46:57 -07:00
jnjpng
feb232f04a fix: mcp schema generation and non-strict schema validation
Co-authored-by: Jin Peng <jinjpeng@Jins-MacBook-Pro.local>
2025-08-22 15:45:33 -07:00
Matthew Zhou
b3704e47be feat: Support override tool functionality to agent file v2 (#4092) 2025-08-21 16:58:19 -07:00