Skip to content

Swe-related changes #773

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 52 commits into from
May 16, 2025
Merged

Swe-related changes #773

merged 52 commits into from
May 16, 2025

Conversation

JegernOUTT
Copy link
Member

No description provided.

…Streamline agentic strategy steps in yaml config.
# Conflicts:
#	refact-agent/engine/Cargo.toml
#	refact-agent/gui/src/app/middleware.ts
#	refact-agent/gui/src/components/Chat/Chat.tsx
#	refact-agent/gui/src/components/ChatForm/SuggestNewChat/SuggestNewChat.tsx
#	refact-agent/gui/src/components/UsageCounter/useUsageCounter.ts
#	refact-agent/gui/src/features/Chat/Thread/reducer.ts
#	refact-agent/gui/src/hooks/useCompressionStop.ts
#	refact-server/README.md
#	refact-server/refact_known_models/huggingface.py
#	refact-server/refact_known_models/refact.py
#	refact-server/refact_webgui/webgui/selfhost_fastapi_completions.py
#	refact-server/refact_webgui/webgui/selfhost_model_assigner.py
Update customization_compiled_in.yaml with refined strategy for coding tasks and switch from "o3-mini" to "o4-mini" for deep analysis. Comment out "web" tool to potentially disable unused tool.
…ow and AST processing

- Consolidate YAML steps: merge context gathering into problem identification, streamline reproduction and fixing
- Adjust AST processing defaults: enable use of AST by default, improve async handling for file tree functions
- Increase limits for subchat model parameters to enhance analysis capability
- Refactor symbol printing logic for consistency; update `doc_def_internal` function for database access
- Simplify argument parsing and remove unused variables in command execution
- Standardize token limits across tools for consistent resource allocation
…` and `root_cause_analysis` tools, and adjust configurations

- Remove `tool_deep_analysis.rs` and replace with `tool_strategic_planning.rs`
- Update `file_filter.rs` to increase large file size threshold
- Modify `customization_compiled_in.yaml` to rename and configure new tools
- Adjust `chat_utils_limit_history.rs` for improved context message
- Enhance `at_tree.rs` to exclude `VariableDefinition` symbols
- Implement new tools: `tool_root_cause_analysis.rs`, `tool_critique.rs`
- Update `scratchpad_utils.rs` for expanded token limits
- Delete `tool_root_cause_analysis.rs` file and remove its references from the `tools` module.
- Refactor `tool_ast_definition.rs`, `tool_ast_reference.rs`, `tool_regex_search.rs`, and `tool_search.rs` to accept and process multiple symbols or patterns.
- Rename several tools for clearer functionality:
  * `definition` to `search_symbol_definition`
  * `references` to `search_symbol_usages`
  * `regex_search` to `search_pattern`
  * `search` to `search_semantic`
- Modify `customization_compiled_in.yaml` to reflect these changes in usage instructions.
- Move root cause analysis logic into `strategic_planning` tool for improved problem-solving flow.
- Adjust token limits in `scratchpad_utils.rs` to accommodate updated tool behavior.
… `AstStatus` structs with `Deserialize` and `Debug`, introduce SQLite volume mapping for Docker, add LSP indexing status check in `docker_wait_indexing_done` function, and adjust LSP setup commands accordingly.
- Remove unused `tokio_tar::ArchiveBuilder` and replace it with system tar command.
- Add directory creation and metadata check prior to extraction.
- Implement retry logic for extraction, logging attempts and failures.
- Use `tracing` for detailed logging of extraction status and errors.
# Conflicts:
#	refact-agent/engine/src/known_models.rs
#	refact-agent/engine/src/tools/tool_critique.rs
#	refact-agent/engine/src/yaml_configs/customization_compiled_in.yaml
Enhance known_models.json with additional model entries for better compatibility. Update customization_compiled_in.yaml to use "refact/o4-mini" for strategic planning and critique, removing unnecessary reasoning effort setting. Refactor tool_strategic_planning.rs to improve tokenizer usage by replacing with count_text_tokens_with_fallback and resolving chat models more efficiently.
- Implement a new `ToolDebugScript` for debugging Python scripts using `pdb`.
- Introduce `parse_args` to handle script path and problem description parsing.
- Define system and summary prompts to guide and summarize debugging sessions.
- Integrate the tool into the existing toolset by updating `tools_description` and `customization_compiled_in.yaml`.
- Modify `docker_container_manager.rs` to include a delay with `sleep` after copying files to containers for improved consistency.
- Enhance subchat logging by including the last message content.
- Add support for killing pdb sessions with 'q' or 'quit' commands.
Fix minor spelling error and enhance clarity in debug script prompts for more comprehensive reporting. Remove unnecessary suggestions and refine guidance in customization_compiled_in.yaml for better workflow efficiency. Add strategic guardrails in tool_strategic_planning.rs to ensure structured debugging and solution documentation.
Enhance the `tool_debug_script` by including a step for suggesting fixes or next actions. Update instructions in `customization_compiled_in.yaml` to provide clearer guidance on using `pdb` for debugging, emphasizing completeness and robustness of solutions. Comment out unused tools like `strategic_planning` and `debug_script` in `tools_description.rs`. Refine error message in `integr_pdb.rs` for better clarity when opening a new `pdb` session.
…e result context, and remove progress tracking
# Conflicts:
#	refact-agent/engine/src/http/routers/v1.rs
#	refact-agent/engine/src/http/routers/v1/status.rs
#	refact-agent/engine/src/integrations/docker/docker_container_manager.rs
- Adjust DEBUG_SYSTEM_PROMPT to improve clarity and strategy for debugging.
- Revise tool_debug_script.rs to enrich problem explanation and initial report retrieval.
- Activate strategic planning and debug_script tools in tools_description.rs.
- Enhance customization_compiled_in.yaml with a precise strategy for agentic tools.
- Include project context files dynamically in tool_strategic_planning.rs for thorough problem analysis.
- Implement automated insertion of pdb command in integr_pdb.rs when launching Python scripts.
- Amend prompt content and flow in tool_strategic_planning.rs to ensure comprehensive problem resolution.
- Update CRITIQUE_PROMPT to reflect complete and robust solution goals.
JegernOUTT added 18 commits May 7, 2025 13:44
…zation YAML and strategic planning tool

- Remove duplication and improve clarity of steps and best practices
- Emphasize robust and complete solutions addressing all corner cases
- Ensure project changes do not modify existing tests
- Update procedure for integrating GUARDRAILS_PROMPT in context message building process
…mmand, adjust other tools' defaults

This commit removes the "tool_critique" and "tool_debug_script" as they are no longer needed, which includes deleting their relevant files and references in the codebase. It simplifies the Docker container creation command by eliminating an unnecessary volume mapping. It also adjusts some default settings for remaining tools to enhance performance and resource management, such as reducing token limits and context management settings. Additionally, the commit introduces a more efficient method for unpacking tar files using `tokio_tar` and cleans up duplicate content detection logic.
- Remove commented out `locate` tool code from `tools_description.rs`.
- Update `ToolLocateSearch` prompts to improve clarity and search effectiveness.
- Implement structured tagging of relevant files and symbols with detailed guidelines.
- Introduce flexible and accurate path handling for important paths.
- Modify tool limits for `search` and `regex_search` to enhance performance.
- Refactor `_make_prompt` to dynamically construct prompts based on context.
- Adjust tool execution logic for deeper and more comprehensive searches.
- Simplify customization settings by consolidating `locate` and `locate_search` parameters.
- Use `locate()` in strategy planning to streamline problem-solving tasks.
- Add error logging in customization loader for better debugging.
@JegernOUTT JegernOUTT requested a review from olegklimov May 14, 2025 14:37
Enhance the `get_files` tool by introducing a new required parameter, `what_to_find`, to provide a short narrative context for locating additional files or symbols. Update the system prompt in `tool_locate_search.rs` to incorporate this parameter and enhance search specificity. Include error handling for missing or improperly typed `what_to_find` arguments.
- Add the `cat()` function to the available tools for viewing file contents.
- Enhance clarity and readability in the task description and guidelines by modifying sentence structures and adding missing punctuation.
- Update `tool_depends_on` method to remove unnecessary dependencies.
- Refactor message initialization in `invoke_tool` for simplicity with a direct vector assignment.
- Fix typo and update the function call from `subchat_max_new_tokens` to `subchat_n_ctx`.
Eliminate `tool_relevant_files.rs` as part of code cleanup to streamline functionality. Update other modules and test cases to replace its functionalities, ensuring all tool references point accurately—shift naming conventions from `definition`, `references` to the new `search_symbol_definition`, `search_symbol_usages` consistent across tests and documentation. Confirm utility function `update_usage_from_message` is relocated to `tools_execute.rs` for broader accessibility. Adjust regex search output logging for clarity.
@JegernOUTT JegernOUTT merged commit 7b36a82 into dev May 16, 2025
0 of 7 checks passed
@JegernOUTT JegernOUTT deleted the swe-useful-changes branch May 16, 2025 10:15
Sign up for free to 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.

2 participants