- Generic workflow triggers on all commits to main
- No path restrictions - builds and deploys automatically
- Ensures HTML streaming fixes always deployed
- Restore paths filter to only trigger on relevant changes
- botserver/, botui/, botlib/, Cargo.toml, Cargo.lock
- Prevents unnecessary CI runs on unrelated changes
- Remove paths filter to run CI on all commits
- This ensures HTML streaming fixes get deployed automatically
- Previously only triggered on botserver/botui/botlib changes
- botui/chat-messages.js: HTML chunks now accumulated without rendering,
only showing loading indicator. When is_complete=true, full HTML
rendered at once. Text/markdown continues streaming normally.
- botserver/mod.rs: Remove unused html_buffer variable
- drive_monitor/monitor.rs: Change CHECK_INTERVAL_SECS from 1 to 2
- CI workflow: Fix paths to use target/fast/ instead of target/debug/
and target/release/
- botserver: implemented tag-aware streaming to prevent broken HTML chunks
- botserver: disabled automatic HTML-to-Markdown conversion to preserve rich design
- botserver/llm: added Claude 3.7 thinking/reasoning support
- botui: fixed chat-messages.js to allow rich HTML rendering and stop tag stripping
- botui: updated CI/CD to build botui in release mode with embedded UI
- Backend: Add strip_html_tags() function to remove HTML from XLSX cells
- Frontend: Strip HTML tags before displaying bot messages
- Prompt: Update PROMPT.md to instruct GPT not to show raw HTML
Fixes issue where XLSX cell content with HTML formatting
was being displayed as raw HTML tags in chat responses.
- Changed extract_xlsx_text() to use open_workbook() instead of open_workbook_from_rs()
- Changed extract_xls_text() to use open_workbook() instead of open_workbook_from_rs()
- The calamine 0.26 API uses open_workbook(path) for direct file access
- This matches the pattern used in import_export.rs and vectordb.rs
- Updated AGENTS.md to clarify bots are stored as MinIO buckets
- Added test start.bas with USE KB "sheetlib" for testing KB injection
Root cause: open_workbook_from_rs() is not the correct API for calamine 0.26
Impact: XLSX and XLS files in .gbkb folders were failing to index into vector DB
Fix: Use standard open_workbook() API that accepts file path directly
- Changed extract_xlsx_text() to use open_workbook() instead of open_workbook_from_rs()
- Changed extract_xls_text() to use open_workbook() instead of open_workbook_from_rs()
- The calamine 0.26 API uses open_workbook(path) for direct file access
- This matches the pattern used in import_export.rs and vectordb.rs
- Fixes issue #498 where XLSX/XLS files were not being properly indexed into KB
Root cause: open_workbook_from_rs() is not the correct API for calamine 0.26
Impact: XLSX and XLS files in .gbkb folders were failing to index into vector DB
Fix: Use standard open_workbook() API that accepts file path directly
- 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.
- DEV-DEPENDENCIES.sh: installs sccache 0.14.0 via cargo-binstall
(was 0.7.5 which prohibited incremental compilation)
- Removes old sccache binary before installing new one
- Copies to /usr/local/bin so all users can access it
- CI workflow: CARGO_INCREMENTAL=1 now supported by sccache 0.14.0
sccache 0.7.5 errors with 'increment compilation is prohibited'
when CARGO_INCREMENTAL=1. Keep at 0 and rely on the fixed
touch-only-changed-files logic to preserve sccache cache hits.
- CARGO_INCREMENTAL=1 enables sccache to cache Rust compilations
(was 0, making all compilations non-cacheable)
- Only touch files that changed between old and new rev
(was touching ALL files, invalidating entire sccache cache)
- Use git pull --rebase to avoid merge conflicts in CI