Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 23 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,22 @@ SUPABASE_SERVICE_KEY=
LOGFIRE_TOKEN=
LOG_LEVEL=INFO

# Observability Configuration
# OpenTelemetry tracing endpoint (compatible with Logfire, Jaeger, etc.)
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4317

# Sentry error tracking (backend)
SENTRY_DSN=

# Environment name for tracking (development, staging, production)
ENVIRONMENT=development

# Git commit hash for release tracking (automatically set in CI/CD)
GIT_COMMIT=

# Frontend Sentry configuration
VITE_SENTRY_DSN=

# Service Ports Configuration
# These ports are used for external access to the services
HOST=localhost
Expand Down Expand Up @@ -58,11 +74,17 @@ PROD=false
# Run the credentials_setup.sql file in your Supabase SQL editor to set up the credentials table.
# Then use the Settings page in the web UI to manage:
# - OPENAI_API_KEY (encrypted)
# - MODEL_CHOICE
# - ANTHROPIC_API_KEY (encrypted) - For Claude with prompt caching (90% cost savings)
# - MODEL_CHOICE
# - TRANSPORT settings
# - RAG strategy flags (USE_CONTEXTUAL_EMBEDDINGS, USE_HYBRID_SEARCH, etc.)
# - Crawler settings:
# * CRAWL_MAX_CONCURRENT (default: 10) - Max concurrent pages per crawl operation
# * CRAWL_BATCH_SIZE (default: 50) - URLs processed per batch
# * MEMORY_THRESHOLD_PERCENT (default: 80) - Memory % before throttling
# * DISPATCHER_CHECK_INTERVAL (default: 0.5) - Memory check interval in seconds

# Claude Configuration (Optional - can also be set via Settings page)
# ANTHROPIC_API_KEY=sk-ant-...
# CLAUDE_MODEL=claude-3-5-sonnet-20241022
# ENABLE_CLAUDE_CACHING=true
40 changes: 9 additions & 31 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,37 +39,15 @@ jobs:
- name: Install dependencies
run: npm ci

# - name: Run ESLint
# run: npm run lint
#
# - name: Run TypeScript type check
# run: npx tsc --noEmit
#
# - name: Run Vitest tests with coverage
# run: npm run test:coverage:run
#
# - name: Generate test summary
# if: always()
# run: npm run test:coverage:summary
#
# - name: Upload frontend test results
# if: always()
# uses: actions/upload-artifact@v4
# with:
# name: frontend-test-results
# path: |
# archon-ui-main/coverage/test-results.json
# archon-ui-main/public/test-results/
# retention-days: 30
#
# - name: Upload frontend coverage to Codecov
# if: always()
# uses: codecov/codecov-action@v4
# with:
# files: ./archon-ui-main/public/test-results/coverage/lcov.info
# flags: frontend
# name: frontend-coverage
# token: ${{ secrets.CODECOV_TOKEN }}
- name: Run ESLint
run: npm run lint
continue-on-error: true

- name: Check TypeScript
run: npx tsc --noEmit

- name: Run Frontend Tests
run: npm run test:coverage:stream

# Job 2: Backend Testing (Python/pytest)
backend-tests:
Expand Down
83 changes: 83 additions & 0 deletions .railwayignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Git and version control
.git
.github
.gitignore

# Node modules
node_modules
npm-debug.log
yarn-error.log

# Python cache
__pycache__
*.pyc
*.pyo
*.pyd
.Python
*.so
*.egg
*.egg-info
dist/
build/
*.whl
.pytest_cache
.mypy_cache
.ruff_cache

# Virtual environments
.env
.venv
venv/
ENV/

# IDE
.vscode
.idea
*.swp
*.swo
*~

# OS files
.DS_Store
Thumbs.db

# Test coverage
.coverage
htmlcov/
coverage/
.tox/
.nox/

# Documentation and planning
PRPs/
docs/
*.md
!README.md
!RAILWAY_DEPLOYMENT.md
!DEPLOYMENT_CHECKLIST.md

# Tests
tests/
*.test.ts
*.test.tsx
*.spec.ts
*.spec.tsx

# Development files
.env.local
.env.development
.env.test

# Logs
*.log
logs/

# Temporary files
tmp/
temp/
*.tmp

# Lock files (include these for reproducible builds)
# package-lock.json
# yarn.lock
# uv.lock
Loading