feat: deploy branch — all fixes and features for production#158
Open
adryserage wants to merge 13 commits intospacedriveapp:mainfrom
Open
feat: deploy branch — all fixes and features for production#158adryserage wants to merge 13 commits intospacedriveapp:mainfrom
adryserage wants to merge 13 commits intospacedriveapp:mainfrom
Conversation
- Add DefaultBodyLimit::max(100MB) to API router for file uploads - Default SwitchField.value to false to prevent uncontrolled→controlled
- Wrap pdf_extract calls in catch_unwind to gracefully handle panics from malformed fonts (e.g. cff-parser encoding errors) instead of crashing the worker thread - Extract error messages from multiple API response formats (OpenAI, Gemini, FastAPI) instead of showing "unknown error" on 4xx/5xx
# Conflicts: # src/api/server.rs
- Run cargo fmt on all files with formatting drift - Fix context_dump test: handle Result from render_channel_prompt - Fix bold+italic nested HTML in Telegram markdown converter by processing ***...*** before ** and * patterns separately
- cargo fmt with Rust 1.93 formatting rules (20 files) - Fix clippy collapsible_if warnings (auto-fixed) - Fix clippy let-else → ? operator in config.rs - Fix clippy items-after-test-module in scheduler.rs - Allow too_many_arguments on TwitchAdapter::new
When disabled, the agent ID is used as the display name instead of a cortex-generated name. Users can toggle this in the cortex settings section.
Gemini 2.5+ thinking models return a thought_signature with function calls that must be echoed back in subsequent turns. Without it, the API rejects requests with a 400 error.
Add runtime state checks (runtime_configs, agent_pools) in addition to config-level existence check. An agent may survive in runtime even after being removed from config during hot-reload, keeping its redb file locked. Now returns a clear error instead of a 500.
When config.toml contains duplicate [[agents]] entries (e.g. from repeated create_agent API calls), redb panics with "Database already open" because the same agent is initialized twice. - Deduplicate agents by ID during config parsing (last definition wins) - Add TOML-level existence check in create_agent to prevent writing duplicate entries - Add runtime state checks (runtime_configs, agent_pools) to catch agents that survive config hot-reload
Collaborator
|
When you say "all fixes" what fixes specifically do you mean? The open PRs? |
Collaborator
|
Or just things you found unrelated to any other PRs? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Complete deploy branch ready for production. Includes all fixes, features, and CI compatibility changes:
Fixes
VOLUMEkeyword (banned by Railway), remove BuildKit cache mountsDefaultBodyLimit::max(100MB)— file uploads were silently failing at axum's 2MB defaultpdf_extractincatch_unwindto handle malformed CFF fonts gracefullystatus, FastAPIdetail, top-levelmessage)SwitchField.valuetofalseto prevent React warningreqwest::Urlinstead of missingurlcrate, axum 0.8Stateextractor patternthought_signaturefrom Gemini 2.5+ thinking models — fixes 400 errorsFeatures
auto_display_namesetting in cortex config — when disabled, agent ID is used as display name instead of cortex-generated nameTest plan