- Remove rt.block_on() inside async context in botserver/src/llm/mod.rs
- Fixes 'Cannot block current thread from within a runtime' panic
- Salesianos bot was crashing after start.bas on LLM calls
- Botserver compiles clean
- Moved all feature modules + core crates + botllm + botqdrant into botserver/crates/
- Fixed MinIO endpoint URL to include port from Vault
- Fixed LocalSessionManager to delegate to real SessionManager
- Restored botkb as minimal types-only crate (face code already in botmodelsbridge)
- Workspace root now only contains botlib, botschema, and separate projects (botui, botapp, etc.)
- All cross-crate path references recalculated
Refs: #513, #518, #520
- Move compiler (botbasic_compiler), drive (botdrive), KB, bootstrap, DNS,
automation, incus, package_manager, features, and remaining feature modules
from botserver to botcore/botdrive crates
- Convert keywords.rs files to mod.rs directories for consistency
- Add rbac and mail features to botsettings
- Wire script_runner in bootstrap state
- Add sccache wrapper that unsets CARGO_INCREMENTAL (sccache 0.14.0
refuses to work when that env var is present, even if =0)
- Remove rustc-wrapper from .cargo/config.toml (use RUSTC_WRAPPER env in CI)
- Set [profile.dev] incremental = false to avoid sccache 'prohibited' error
- DEV-DEPENDENCIES.sh now installs sccache 0.14.0 + wrapper correctly
- CI workflow: unset CARGO_INCREMENTAL env (let sccache wrapper handle it)
Tested on alm-ci: 50% cache hit rate on rebuild after target/ removal.
- Without local-files feature: only MinIO/Drive is used as bot source
- With local-files feature: scans /opt/gbo/data for bots (default behavior)
- Bucket filtering (gbo-*) only active when local-files is NOT enabled
- LocalFileMonitor and ConfigWatcher only start with local-files feature
- Remove suggestions fetching from TALK function
- WebSocket handler now fetches and sends suggestions after start.bas executes
- Clear suggestions and start_bas_executed keys to allow re-run on refresh
- Decouple TALK from suggestions handling
- Move system_prompt retrieval inside spawn_blocking closure
- Include system_prompt in the return tuple to fix scope issue
- Add trace logging for debugging system-prompt loading
- GLM-5 and other LLM providers now correctly receive custom system prompts
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed embed-ui from default features (botserver is backend API only)
- UI embedding is botui's responsibility, not botserver's
- Fixed rust-embed folder path in embedded_ui.rs
- Resolves CI compilation errors
Production binaries should embed UI assets by default to avoid
requiring external ui/suite folder in deployment.
This ensures botserver binary contains all HTMX, HTML, CSS, and JS
assets needed for the web interface.
- Add llm to default features in Cargo.toml
- Fix duplicate smart_router module declaration
- Remove unused LLMProvider import and fix unused variable warnings
- Fix move error in enhanced_llm.rs by cloning state separately for each closure
- Improve code formatting and consistency
Now you can do:
- cargo build --features sheet → gets automation+drive+cache+sheet deps
- cargo build --features mail → gets automation+drive+cache+mail deps
- cargo build --features tasks → gets automation+drive+cache+tasks deps
Each app automatically includes what it needs from core infrastructure.
No need to manually specify automation, drive, cache anymore.
Added test_all_apps.sh to test each app independently and measure
compilation times.
- Removed complex nested feature dependencies
- Each app now lists only its direct crate dependencies
- Apps can be tested independently without inter-dependencies
- Simplified structure: Core Infrastructure + Flat App List + Bundles
- Core: automation, drive, cache, directory (always needed)
- Apps: chat, mail, tasks, docs, etc. (independent)
- Bundles: minimal, lightweight, full (convenience)
This makes it easy to test each app individually and matches
the app launcher menu structure.
Verified: cargo check with chat+automation+drive+cache ✅