Commit graph

4535 commits

Author SHA1 Message Date
eea9b24ef0 fix: CI failures - shutdown hang, bottest compile errors, botui deploy
Some checks failed
Botlib CI / build (push) Successful in 9s
BotServer CI / build (push) Successful in 3m52s
Bottest CI / build (push) Failing after 8s
- Add shutdown tracing and 15s forced exit to prevent SIGTERM hangs
- Fix E0583: remove self-referential mod declarations in bottest integration files
- Fix E0599: correct .status() call on Result in performance.rs
- Fix botui CI deploy: use systemctl stop/start instead of pkill+nohup
- Update PROD.md with DB-driven CI log retrieval method
2026-04-22 11:25:05 +00:00
1b25559a1b fix: Use systemctl for botserver deploy to system container
Some checks failed
Botlib CI / build (push) Successful in 2s
BotServer CI / build (push) Successful in 21s
Bottest CI / build (push) Failing after 7s
BotUI CI / build (push) Failing after 6s
- Stop botserver via 'sudo systemctl stop' before SCP
- Start botserver via 'sudo systemctl start' after copy
- Use health check endpoint to verify deployment
2026-04-22 03:02:17 +00:00
6a45629ed3 fix: Deploy binaries to system container via SSH
Some checks failed
Botlib CI / build (push) Successful in 3s
BotServer CI / build (push) Failing after 5s
Bottest CI / build (push) Failing after 7s
BotUI CI / build (push) Failing after 5s
- CI runner runs on alm-ci container but must deploy to system container
- Use scp to transfer binary from alm-ci to system (10.157.134.196)
- SSH to system container to stop old process, copy binary, restart
2026-04-22 02:48:52 +00:00
a4834081b8 fix: Explicitly disable sccache in CI workflows
Some checks failed
Botlib CI / build (push) Successful in 4s
Bottest CI / build (push) Failing after 9s
BotUI CI / build (push) Successful in 4s
BotServer CI / build (push) Failing after 20m5s
The forgejo-runner service inherits RUSTC_WRAPPER=sccache from
systemd environment. Set RUSTC_WRAPPER="" in workflow env to
override and prevent permission denied errors.
2026-04-22 02:20:44 +00:00
4380b39ac5 fix: Remove sccache from CI (permission issues), fix deploy binary paths
Some checks failed
Bottest CI / build (push) Waiting to run
Botlib CI / build (push) Successful in 4s
BotServer CI / build (push) Has been cancelled
BotUI CI / build (push) Has been cancelled
- Remove RUSTC_WRAPPER=sccache from all workflows (permission denied
  in act container environment)
- Fix deploy paths to use CARGO_TARGET_DIR=/opt/gbo/work/target
  instead of relative target/debug
- Remove path triggers from botserver workflow (all pushes trigger)
- Add mkdir for target and bin dirs in setup steps
2026-04-22 02:07:07 +00:00
f6e869c930 ci: Trigger rebuild with host-mode runner 2026-04-22 01:51:58 +00:00
b537b021c4 fix: Update CI workflows for monorepo structure
Some checks failed
Botlib CI / build (push) Successful in 4m37s
BotServer CI / build (push) Failing after 3m55s
Bottest CI / build (push) Failing after 10m21s
BotUI CI / build (push) Failing after 2m40s
- Fix all workflows to use /opt/gbo/work/generalbots (monorepo)
- Add proper env vars (SCCACHE, CARGO_TARGET_DIR, PATH) to all workflows
- Add deploy steps for botui (with process restart)
- Remove broken workflows for non-Rust packages (botapp, botbook,
  botdevice, botmodels, botplugin)
- Add botlib test workflow
2026-04-22 01:23:37 +00:00
5ab886e6e3 ci: Update botserver workflow for single-repo, remove duplicate .forgejo from subdirs
Some checks failed
Botapp CI / build (push) Failing after 0s
Botbook CI / build (push) Failing after 0s
Botdevice CI / build (push) Failing after 0s
Botmodels CI / build (push) Failing after 0s
Botplugin CI / build (push) Failing after 0s
BotServer CI / build (push) Failing after 0s
Bottest CI / build (push) Failing after 0s
BotUI CI / build (push) Failing after 0s
2026-04-21 23:04:27 +00:00
e6cd0ff02b fix: Drop stream_tx after LLM spawn + ADD_SUGGESTION single-arg + lowercase fix + sync_bas_to_work
- drop(stream_tx) after spawning LLM task so stream_rx.recv() loop ends
  when LLM finishes. Without this, the streaming loop hung forever and
  is_complete:true + suggestions were never sent to WebSocket clients.
- Add single-arg ADD_SUGGESTION "text" syntax (registered LAST for
  highest Rhai priority so it matches before 2-arg form).
- convert_keywords_to_lowercase() now only lowercases Rhai built-in
  keywords (IF, ELSE, WHILE, etc.), not custom syntax keywords (TALK,
  HEAR, ADD_SUGGESTION) which are case-sensitive in Rhai.
- sync_bas_to_work() downloads changed .bas files from S3 to work dir
  when etag changes, preventing stale local copies used by compiler.
2026-04-21 22:01:17 +00:00
1ae0ad7051 fix: DriveMonitor skips unchanged files on rescan, skips directory entries
- Only upsert drive_files when ETag actually changed (was re-processing all files every 60s cycle)
- Skip S3 directory entries (keys ending with '/') to avoid storing stale directory markers
- Add debug-level logging for unchanged file skips
- Fixes noisy 'Added/updated drive_files' spam on every scan cycle
2026-04-21 16:16:39 +00:00
c70fbba099 refactor: Remove ooxmlsdk from default build, split document_processor, fix DriveMonitor sync
- Replace docs/sheet/slides with kb-extraction in default features (~4-6min compile time savings, ~300MB less disk)
- Add kb-extraction feature using zip+quick-xml+calamine for lightweight KB extraction
- Split document_processor.rs (829 lines) into mod.rs+types.rs+ooxml_extract.rs+rtf.rs
- Move DOCX/PPTX ZIP-based extraction to document_processor::ooxml_extract (no ooxmlsdk needed)
- Remove dead code: save_docx_preserving(), save_pptx_preserving() (zero callers)
- Fix dep: prefix for optional dependencies in feature definitions
- DriveMonitor: full S3 sync, ETag change detection, KB incremental indexing, config.csv sync
- ConfigManager: real DB reads from bot_configuration table
- 0 warnings, 0 errors on both default and full feature builds
2026-04-21 14:54:41 +00:00
b2c5e912b3 fix: Use correct Zitadel port 8300 and get URL from Vault
- Fixed hardcoded port 9000 to 8300 (Zitadel default)
- Added base_url default with fallback to Vault URL
- Allows external Zitadel server configuration via Vault
- facade.rs: Updated help message with correct port
2026-04-21 14:45:22 +00:00
002e6c9b79 chmod: Make DEPENDENCIES.sh executable 2026-04-21 11:35:26 +00:00
084b508a35 feat: add Rust, sccache, mold to DEV-DEPENDENCIES.sh
- Install Rust via rustup as SUDO_USER (not root)
- Install mold linker via system packages (apt/dnf/pacman)
- Install sccache via cargo install as SUDO_USER
- Set default toolchain to stable on install
- Use run_as_user helper for all cargo/rustup commands
2026-04-21 02:03:36 +00:00
8222ef68be Fixing repo integration 2026-04-19 21:22:53 -03:00
a2fa5e6614 Merge branch 'main' of github.com:generalbots/generalbots 2026-04-19 20:51:24 -03:00
a239227aa1 Fixing repo integration 2026-04-19 20:50:52 -03:00
e364b75e9b Cargo optimization. 2026-04-19 12:24:51 +00:00
b4241805bd Cargo optimization. 2026-04-19 12:00:01 +00:00
cc1b805c38 Fixing repo integration 2026-04-19 08:55:24 -03:00
037db5c381 feat: Major workspace reorganization and documentation update
- Add comprehensive documentation in botbook/ with 12 chapters
- Add botapp/ Tauri desktop application
- Add botdevice/ IoT device support
- Add botlib/ shared library crate
- Add botmodels/ Python ML models service
- Add botplugin/ browser extension
- Add botserver/ reorganized server code
- Add bottemplates/ bot templates
- Add bottest/ integration tests
- Add botui/ web UI server
- Add CI/CD workflows in .forgejo/workflows/
- Add AGENTS.md and PROD.md documentation
- Add dependency management scripts (DEPENDENCIES.sh/ps1)
- Remove legacy src/ structure and migrations
- Clean up temporary and backup files
2026-04-19 08:14:25 -03:00
fc322618f3 test: trigger CI 2026-04-19 07:14:47 -03:00
6f23d3ffb2 CI: Remove .forgejo 2026-04-19 07:12:21 -03:00
00f3573473 Test marker
Some checks failed
BotServer CI / build (push) Failing after 2s
2026-04-19 07:06:04 -03:00
2ff68e5a2a CI: v26 - Reset submodules to clean state
Some checks failed
BotServer CI / build (push) Failing after 4s
2026-04-18 20:48:55 -03:00
c218556a94 CI: v25 - Fixed pkill with timeout, proper paths
Some checks are pending
BotServer CI / build (push) Waiting to run
2026-04-18 20:44:04 -03:00
6f003a313c CI: v24 - Deploy with traces and verification
Some checks failed
BotServer CI / build (push) Has been cancelled
2026-04-18 20:43:06 -03:00
46e5d16892 CI: v23 - Simple deploy: pkill, cp, start
Some checks failed
BotServer CI / build (push) Has been cancelled
2026-04-18 20:41:47 -03:00
1c8cc6626d CI: v22 - Simplified stages, fast deploy
Some checks failed
BotServer CI / build (push) Has been cancelled
2026-04-18 20:39:56 -03:00
82cb2acf4e CI: v21 - Force clean git state (abort rebase, reset hard)
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 20:37:59 -03:00
1bf8d12f34 CI: v20 - Use incus file push for deploy (no SSH needed)
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 20:33:29 -03:00
346f5d3e24 CI: Use vendored libgit2 to avoid compilation
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 20:08:19 -03:00
c8fcd75e48 CI: Patch libgit2-sys to use main branch
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 20:07:57 -03:00
c30cec474d CI: Use 8 parallel jobs for faster builds (10GB RAM available)
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 19:52:01 -03:00
71847f884a CI: Reduce build parallelism to avoid libgit2-sys race condition
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 19:49:32 -03:00
b62fce8d77 CI: Fix permissions on runner
Some checks failed
BotServer CI/CD / build (push) Has been cancelled
2026-04-18 19:41:36 -03:00
82a69795af CI: Added libgit2-dev to runner, cleaned build cache
Some checks failed
BotServer CI/CD / build (push) Failing after 0s
2026-04-18 19:36:58 -03:00
47ea9fee2a CI: Build tools installed (gcc-c++, pkg-config, cmake)
Some checks failed
BotServer CI/CD / build (push) Failing after 0s
2026-04-18 19:34:33 -03:00
9c94d4e87f CI: Restart build with correct target location
Some checks failed
BotServer CI/CD / build (push) Failing after 3m28s
2026-04-18 19:20:24 -03:00
d7f695480b Fix: Compilation errors and CI v19
Some checks failed
BotServer CI/CD / build (push) Failing after 4m58s
- drive_compiler: Add warn import, fix table reference, fix variable types
- server.rs: Remove invalid comment assignment
- CI v19: Abort rebase, reset, pull, build only botserver
- Verified on runner: 2s incremental, 42s cold build
2026-04-18 19:14:40 -03:00
178fc2e81c CI: v19 - Abort rebase first, then reset
- Add git rebase --abort to clear any stuck rebase state
- Then reset --hard + clean
- Prevents 'rebase in progress' errors
2026-04-18 19:13:27 -03:00
91d0011ce7 CI: v18 - Use merge (not rebase), reset dirty state
- git reset --hard + git clean to avoid rebase conflicts
- Use git pull (merge) instead of pull --rebase
- Verified build times on runner:
  * botserver: 2s (incremental), 42s (cold)
  * botui: 9s (incremental)
2026-04-18 19:11:52 -03:00
c11801fcd8 CI: v17 - Build ONLY botserver, not entire workspace
- Only build -p botserver (not botui, botlib separately)
- Initialize only required submodules (botlib, botserver)
- Much faster, focused build
2026-04-18 18:51:00 -03:00
39d907c323 CI: v16 - Verified on runner, all 3 projects build
- Tested on alm-ci runner at /opt/gbo/work/botserver
- All submodules initialize correctly
- botserver, botui, botlib all compile successfully
- Removed problematic .github submodule
- Pre-installed on runner: Rust 1.95, Node 22, Python 3.11, sccache 0.7
2026-04-18 18:50:22 -03:00
fc9c4b7bdf CI: v15 - Work folder /opt/gbo/work/, build all 3 projects
- Use /opt/gbo/work/gb/ as working directory
- Build botserver, botui, botlib
- Pull --rebase (no clone if exists)
- Verified: all 3 projects compile with 0 errors
2026-04-18 18:37:04 -03:00
1cbc894a76 CI: v15 - Dev machine style, just pull no clone
- Remove clone step entirely
- Just git pull --rebase in /opt/gbo/data
- Build in place like a dev machine
- Much faster, no manual clone
2026-04-18 18:31:59 -03:00
80ac912268 CI: Update to v14 - offline first, no installs in YAML
- Remove container image requirement (assumes pre-installed tools)
- Remove Rust installation step (pre-installed on ci-alm runner)
- Add sccache configuration for faster builds
- Add proper deploy step with SSH to system container
- Follow 'offline first' approach per ci.tmp requirements
2026-04-18 18:26:36 -03:00
79cd3a45d3 Fix: Use Ubuntu container with shell (v13)
Some checks failed
BotServer CI/CD / build (push) Failing after 2m25s
Changes:
- Use ubuntu:22.04 container image
- Install git, curl, ssh in container
- Install Rust via rustup
- Ensures sh/bash is available
- Self-contained build environment
2026-04-18 18:03:31 -03:00
f4efd47ae9 Fix: Remove non-ASCII characters from YAML (v12-clean)
Some checks failed
BotServer CI/CD / build (push) Failing after 0s
Changes:
- Removed all accented characters and special UTF-8
- Comments in English only
- Clean ASCII-only YAML
- Should parse correctly now
2026-04-18 17:55:18 -03:00
4b8e19d9e9 Pull-Only: Assume Rust/Node/Python já instalados (v12)
Mudanças:
- Remove setup do Rust (assume já instalado no runner)
- Remove instalação de sccache (opcional)
- Verifica dependências no início do build
- Foco: apenas clone + build + deploy
- Mais rápido (~3-4 min total)

Pré-requisitos no runner:
- Rust (cargo, rustc) já instalado
- Git já configurado
- SSH keys já configuradas
- Acesso ao repositório ALM

Fluxo:
1. Clone limpo do repositório gb
2. Inicializa submodules botserver + botlib
3. cargo build -p botserver
4. Deploy automático
5. Cleanup

Tempo estimado: ~3-4 minutos
2026-04-18 17:45:41 -03:00