9 Commits
Author SHA1 Message Date
tazlin 8928d4d49f docs: rewrite readmes and point FAQ to website
- Rewrite README.md to reflect the current service: quick-start links, OpenAI-compatible chat endpoint, updated tech stack, funding, docs, contributing and license sections.
- Replace the long FAQ.md with a pointer to aihorde.net/faq. Shrink README_StableHorde.md and README_KoboldAIHorde.md to short pointers to the website and main readme. Add a private-horde intro to README_docker.md.
- Remove the now-unused FAQ and GUI images (and their .license files), and update the join-the-horde and FAQ links in index_stable.md.
2026-11-04 12:57:31 -05:00
tazlin f519b6efa9 perf(telemetry): trim nested spans on image check and status, gate SQLAlchemy instrumentation
- The image check and status handlers keep only their outer span; the nested spans around `request_avg`, queue stats, the active-worker count and response assembly cost a span lifecycle on every poll, and the database helpers record spans for their queries
- `OTEL_INSTRUMENT_SQLALCHEMY` turns statement instrumentation off per deployment, parsed like `OTEL_INSTRUMENT_REDIS`
- The check route's debug log formats lazily
2026-10-30 23:46:00 -04:00
tazlin 03a1e0b01e build: improve compose health-check resiliency 2026-08-19 14:02:10 -04:00
tazlin 415277541a feat: build out test framework, CI test stack, and load-surfaced hardening
Establishes additional unit/integration testing, the CI to run it, and the runtime fixes those tests surfaced

Testing
- Add unit (ORM/function) and integration (API route) tiers over a shared dependency runtime that auto-provisions Postgres, Redis, and S3-compatible object storage (Garage) via testcontainers, with an external-deps mode.
- Add fixtures/factories plus coverage for user roles, kudos pricing, worker.can_generate, countermeasures, WP activation, and adversarial malformed-input route sweeps.
- Modularize the locust suite into locustsuite/ and add a stability-only smoke gate (check_smoke_results.py).

CI / tooling
- Rework pr/main/trusted-fork/publish workflows around composite actions (setup-test-python, start-test-stack) and a Dockerized PG+Redis+Garage stack.
- Bump the Python floor to 3.12 (+3.13 matrix) and consolidate on uv.

Runtime hardening
- Make telemetry activation opt-in (telemetry_enabled): the image stays telemetry-capable but a bare server.py is inert unless an OTLP endpoint or AI_HORDE_TELEMETRY_ENABLED is set.
- Turn NUL bytes, out-of-range user ids, and duplicate worker names into clean 4xx responses instead of session-poisoning 500s.
- Fix get_anon() to resolve the anon account by oauth_id (re-enabling the kudos-transfer guards); shrink and instrument the SQLAlchemy pool (15/5) to expose connection-hold inefficiency as pool timeouts rather than PG refusals.
2026-07-05 13:36:59 -04:00
ceruleandeep aaba202a06 Fix example Docker Compose environment
Pull Horde's custom postgres image

Build aihorde Docker image in two stages to minimise rebuild time

Establish minimal necessary configuration to bring up a working composition

Fix pre-commit config so black and ruff hooks run

Catch and report exceptions in is_redis_up()

Add missing final EOL markers to some files (per black)

Update documentation
2024-09-27 15:28:18 +02:00
db0 3fa8b82873 feat: adds pre-commit 2024-08-10 15:45:14 +02:00
Lina Ceballosanddb0 2a75039034 NGI - Updating licensing aspects according to REUSE (#440)
* creating LICENSES directory

* adding headers with copyright and license info to various files

* fix: switch to AGPL 3-or-later

* feat: added all missing licenses

* chore: linting

* ci: Added reuse lint job

---------

Co-authored-by: db0 <mail@dbzer0.com>
2024-08-10 14:00:03 +02:00
David e6bdf62b1b Update README_docker.md
typo
2023-10-01 10:27:28 +02:00
Namwon Kim 153b1a0865 docker image build (#260)
* docker image build

* Added Docker image usage method
2023-07-12 09:52:54 +02:00