TrinaxAI ships with several layers of validation — a live system smoke test, Python static checks, TypeScript type checks and a production build, an automated pre-release audit, and a CI pipeline. Run all of these before tagging a release or opening a pull request to main.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/TrinaxCode/TrinaxAI/llms.txt
Use this file to discover all available pages before exploring further.
System Smoke Tests
These checks require all three tiers to be running (Ollama, the RAG API, and the PWA). They verify end-to-end connectivity and confirm that the index is loaded.trinaxai doctor is the fastest path — it hits each service endpoint and prints a human-readable status table. Use python3 test_system.py --verbose for the more detailed programmatic check that can be integrated into CI.
Both commands require the full stack to be running. Start services with
./startup_ai.sh (Linux/macOS) or python service_manager.py start-ai before running these checks.What test_system.py checks
test_system.py runs five groups of health checks in order:
Runtime — Python version
Runtime — Python version
Verifies
sys.version_info >= (3, 10). TrinaxAI requires Python 3.10 or newer.Ollama — service and model availability
Ollama — service and model availability
Sends a request to
{OLLAMA_BASE_URL}/api/tags (default: http://localhost:11434). Reports whether Ollama is running and lists the number of available models. With --verbose, prints each model name and its size on disk.Fix: If Ollama is not responding, run ollama serve or restart the service.RAG API — health, index status, and profile
RAG API — health, index status, and profile
Hits
{TRINAXAI_HEALTH_URL}/health (default: https://localhost:3333) and checks:- API is responding with HTTP 200
indexed: true— the vector index is loaded into memoryprofile— the active hardware profile is reportedmodels— at least one model is configured
--verbose, also prints the list of indexed projects, the num_ctx window, and whether the reranker is active.Fix: If indexed is false, run python index.py then curl -k -X POST https://localhost:3333/system/reload.PWA — frontend responding
PWA — frontend responding
Requests
{TRINAXAI_FRONTEND_URL}/ (default: https://localhost:3334) and checks for HTTP 200.Fix: If the PWA is not responding, start it with cd chat-pwa && npm run dev for development, or rebuild with npm run build.Resources — disk space and available RAM
Resources — disk space and available RAM
Checks that disk usage is below 95% on the root filesystem. On Linux it reads
/proc/meminfo; on other platforms it falls back to psutil if installed. Reports available RAM in GB.test_system.py targets with environment variables:
--summary to suppress per-check detail and print only the pass/fail totals — useful for CI log brevity.
Python Static Checks
Run these without the services running — they only inspect source code.ruff check . runs across the entire repository. Fix any reported issues before committing. To auto-fix safe issues in-place, run ruff check . --fix.
PWA Checks
Pre-Release Audit Tool
i18n Completeness
Verifies that every translation key present in the
en object of chat-pwa/src/i18n/translations.ts also exists in es, and vice versa. Missing keys cause silent blank UI text.Hardcoded Values
Scans Python and shell files for hardcoded paths, tokens, or credentials that should come from environment variables or
.env.Required Files
Confirms that
LICENSE, CONTRIBUTING.md, SECURITY.md, README.md, README.es.md, .env.example, and CHANGELOG.md (or equivalent) are present at the repo root..gitignore Coverage
Checks that sensitive patterns (
.env, certs/, storage/, *.pem, *.key) are covered by .gitignore to prevent accidental credential commits.CI Integration
The.github/workflows/ directory contains GitHub Actions workflows that run automatically on every push and pull request.
- Python syntax check —
python -m compileallacross all.pyfiles - TypeScript type check —
npx tsc --noEmitinchat-pwa/ - Frontend build —
npm run buildinchat-pwa/
The system smoke tests (
test_system.py, trinaxai doctor) are not currently run in CI because they require live Ollama and RAG API services. The roadmap includes adding a mock-service test harness. See ROADMAP.md for status.Common Issues and Diagnosis
Usetrinaxai doctor as your first step when something is not working. It will immediately identify which tier is failing. Here are the most common scenarios:
RAG API not starting (port 3333)
RAG API not starting (port 3333)
Ollama not responding
Ollama not responding
PWA not loading (port 3334)
PWA not loading (port 3334)
Index not loaded (indexed: false)
Index not loaded (indexed: false)
Performance Testing
When profiling indexing performance, watch resource usage and tune the embedding worker settings:.env and are respected by config.py at startup, so changes take effect on the next service restart.