Michael Panchenko
1327c7a118
Tests for isolated agent
2025-06-15 17:47:46 +02:00
Michael Panchenko
ad96a7b255
Minor renaming
2025-06-15 16:14:40 +02:00
Michael Panchenko
b87caf7e0a
Merge branch 'main' into fix_deadlocks
...
# Conflicts:
# test/conftest.py
2025-06-15 15:17:48 +02:00
Michael Panchenko
37d1004460
Fixes in SerenaAgent isolation in process creation
...
make_tool previously depended on tool instances in the main process, but the tool instances are no longer available there
To solve this, the tool interface was adjusted to provide static information which is used in the ProcessIsolatedTool wrapper.
I also tried another approach before, where ProcessIsolatedTool would accept tool metadata at init, but this lead to serialization issues that couldn't be easily solved (mcp's FuncMetadata is not serializable, despite being a BaseModel...).
Tests for checking that the wrapped tool instance has the same metadata as the wrapper have been added.
2025-06-15 15:15:23 +02:00
Michael Panchenko and Michael Panchenko
3f5b4da532
More config options for logging in tests, formating
2025-06-13 23:31:48 +02:00
Michael Panchenko
b1e14d8267
Force-added ingored file in test resources
...
Needed for tests involving ignored patterns
2025-06-13 23:29:35 +02:00
Michael Panchenko
40e9bb87c1
Tests: use gitignore parser in LS setup, remove duplication
2025-06-13 23:29:35 +02:00
Michael Panchenko
47a133a7c0
Typo
2025-06-13 23:29:35 +02:00
Michael Panchenko
3ca27e47d5
Fix tests to correctly use gitignore for LS setup
2025-06-13 23:29:35 +02:00
Michael Panchenko
287e59e45e
Merge remote-tracking branch 'origin/main'
2025-06-13 18:13:58 +02:00
Michael Panchenko
b185a9f595
Tests: use gitignore parser in LS setup, remove duplication
2025-06-13 18:13:46 +02:00
Michael Panchenko
099ab41203
Typo
2025-06-13 18:13:46 +02:00
Michael Panchenko
8cd50fab16
Force-added ingored file in test resources
...
Needed for tests involving ignored patterns
2025-06-13 18:13:46 +02:00
Michael Panchenko
b0ade9e9fa
Fix tests to correctly use gitignore for LS setup
2025-06-13 18:13:46 +02:00
Dominik Jain
e19b0b6d34
Fix glob pattern escaping
2025-06-13 11:54:56 +02:00
Michael Panchenko
0c5a98236f
Gitignore: fix handling of anchored ignores
...
Previously anchored ignores would be erroneosly ingored everywhere
2025-06-11 17:09:33 +02:00
Michael Panchenko
993c6f6dfd
Mercilessly kill all asyncio stuff at shutdown
2025-06-10 00:29:37 +02:00
Michael Panchenko
d2cd006007
More logging in tests
2025-06-09 22:01:03 +02:00
nikita2206 and Claude
597c28c8e8
feat: Add Java 21 support to multilspy
...
- Update Eclipse JDTLS to vscode-java v1.42.0 with Java 21.0.7 JRE
- Update Kotlin language server dependencies to use Java 21
- Update test Maven project to use Java 21 compiler settings
- Update runtime configuration from JavaSE-17 to JavaSE-21
- Update dependency versions: lombok 1.18.36, launcher 1.7.0
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com >
2025-06-06 11:10:36 +02:00
Michael Panchenko
7445bbcc42
Revert GH changes, don't run snapshot tests on Windows
2025-06-04 21:23:21 +02:00
Michael Panchenko
dfe3633a42
Adjusted agent tests to new return of symbol tools
2025-06-04 21:03:20 +02:00
Michael Panchenko
3ee5f8e900
Minor prompting, renaming and memory file handling
...
- Moved symbol-reading related prompt to system prompt (from planning) since it's always need
- Use relative_path as kwarg in all tools (models get confused by different kwarg names)
- Identify and list memories without .md extension appearing
2025-06-03 12:23:35 +02:00
Michael Panchenko
795ffda435
Update snapshot (whitespace issues)
2025-06-02 22:01:23 +02:00
Michael Panchenko
950caaf91c
Add and use use_same_indentation flag to body-replacement
2025-06-01 23:26:11 +02:00
Michael Panchenko
e8d5cefe9d
Adjusted test
2025-05-31 14:12:38 +02:00
Michael Panchenko
fe6a7d04f4
Major: replace location-based symbol referencing by name_path based
...
Also:
1. find_references now cannot return bodies, instead content around the reference is included
2. find_reference_snippets tool removed since it's no longer necessary
2025-05-31 14:03:45 +02:00
Michael Panchenko
873c5bda3c
Merge branch 'main' into better-symbolic-editing
2025-05-31 12:37:44 +02:00
Michael Panchenko
5fee09a35f
Respect all gitignores when parsing project for finding language
2025-05-30 20:30:16 +02:00
Michael Panchenko
bf557aeb9a
Merge branch 'main' into better-symbolic-editing
2025-05-30 18:19:22 +02:00
Michael Panchenko
45b5963a27
Merge branch 'better-symbolic-editing' of github.com:oraios/serena into better-symbolic-editing
2025-05-30 16:56:06 +02:00
Michael Panchenko
9bb8c798e8
Added pytest markers to editing tests
2025-05-30 16:55:55 +02:00
Dominik Jain
04fa309170
Add type hints
2025-05-30 01:36:17 +02:00
Michael Panchenko
e038cfa188
Snapshot tests for editing, WIP
...
Need to look over the snapshot results to see whether they're what we expect. Also, for some reason tests are failing...
2025-05-30 00:58:02 +02:00
Michael Panchenko
454c07eb5e
Force added project.yml in test
...
Seems like we have concurrency issues in tests, adding this solves this
2025-05-29 23:50:10 +02:00
Dominik Jain
e9d10fde19
Remove dry_run and overloads from remaining editing methods
...
Add corresponding test classes and test cases (not yet working)
2025-05-29 19:11:43 +02:00
Dominik Jain
bed72f417a
Add test case abstraction for editing tests
...
Add implementation for "delete symbol", removing unnecessary dry-run
flag and overloads from the implementation
2025-05-29 18:15:07 +02:00
Michael Panchenko
bd0923a2d3
Refactoring: move out editing methods from LS to TextUtils
...
Now these methods can be used in dry-run mode, assuring there is no logic duplication
2025-05-29 13:37:10 +02:00
Michael Panchenko
9d493d8aab
Added base class for SerenaConfig, use in-memory config for tests
...
Also:
1. now the normal config will always save to disk (no longer handled by a flag in the methods)
2. the commented yaml is always loaded in the beginning (instead of loading every time on save). Has the upside of simpler code and less i/o, inisignificant "downside" of comments permanently staying in RAM
3. small improvements in typing
2025-05-28 15:11:33 +02:00
Michael Panchenko
22e72a5769
Refactored project config management and activation
...
Project activation is now always enabled
Projects are lists to dirs
Activation works based on name or path
Activating a new project always registers it
2025-05-26 21:47:19 +02:00
Michael Panchenko
13c71bb216
Allow activation of projects without registration
2025-05-26 12:49:16 +02:00
Michael Panchenko
f85aabb40e
Merge branch 'main' into feature/context-and-mode
...
# Conflicts:
# scripts/gen_prompt_factory.py
# src/serena/agent.py
# src/serena/llm/multilang_prompt.py
2025-05-23 17:42:37 +02:00
Michael Panchenko
3584ce47eb
Proper first implementation of mode and context setting, WIP
2025-05-23 17:34:46 +02:00
Michael Panchenko and Michael Panchenko
0884fc7a8c
Support for multiple usage contexts and modes
...
The context and mode system allows for tool selection and
prompt adjustments, thus customizing the behavior of the agent
to the user's needs.
2025-05-21 19:34:11 +02:00
Michael Panchenko
0cf0ff3d48
Improvements and renamings of symbol name_path matching
2025-05-21 12:35:26 +02:00
Michael Panchenko
39854c8baa
Fix minor typing issues, fix initialization of gopls, remove hack
2025-05-20 17:21:21 +02:00
Michael Panchenko
a7f1af7174
Allow finding symbols by qualname. Also allow finding parents in Symbol
...
Fairly extensive testing included
2025-05-20 15:40:45 +02:00
Michael Panchenko
c848e8a7ca
Extended tests
2025-05-20 01:41:15 +02:00
Michael Panchenko
e8d493f4d6
Use utf8 in all file read operations
2025-05-19 17:18:51 +02:00
Michael Panchenko
7975675a98
More explicit asserts (debugging in CI)
2025-05-19 16:11:02 +02:00
Michael Panchenko
4901f72629
Made paths in test os independent
2025-05-19 12:57:26 +02:00