Teleo evaluation pipeline infrastructure — Python async daemon for claim extraction, validation, evaluation, and merge
Find a file
m3taversal 376b77999f
Some checks are pending
CI / lint-and-test (push) Waiting to run
refactor: Phase 3 — fix close_pr ghost bug, wire stale_pr, extract eval_parse
Critical bug fix: close_pr now checks forgejo_api return value and
skips DB update on Forgejo failure, preventing ghost PRs (DB closed,
Forgejo open). Returns bool so callers can handle failures.

_terminate_pr checks return value — skips source requeue on failure.
stale_pr.py migrated from raw Forgejo+DB to close_pr (last raw close
transition eliminated).

eval_parse.py: 15 pure parsing functions extracted from evaluate.py
(~370 lines removed). Zero I/O, zero async, independently testable.
evaluate.py drops from ~1510 to ~1140 lines.

Tests: 295 passed (42 new eval_parse + 2 new close_pr), zero regressions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 12:40:23 +01:00
.forgejo/workflows ganymede: add dev infrastructure — pyproject.toml, CI, deploy script 2026-03-13 14:24:27 +00:00
agent-state Consolidate pipeline code from teleo-codex + VPS into single repo 2026-04-07 16:52:26 +01:00
deploy Fix health check: accept HTTP 503 (stalled) as healthy 2026-04-15 16:26:03 +01:00
diagnostics extraction quality: trust hierarchy + verified tagging + telegram review endpoint 2026-04-16 12:38:39 +01:00
docs feat: reorganize repo with clear directory boundaries and agent ownership 2026-04-14 18:20:13 +01:00
hermes-agent Consolidate pipeline code from teleo-codex + VPS into single repo 2026-04-07 16:52:26 +01:00
lib refactor: Phase 3 — fix close_pr ghost bug, wire stale_pr, extract eval_parse 2026-04-16 12:40:23 +01:00
research fix: sync all code from VPS — repo is now authoritative source of truth 2026-04-15 13:18:01 +01:00
scripts fix: sync all code from VPS — repo is now authoritative source of truth 2026-04-15 13:18:01 +01:00
systemd feat: add auto-deploy script and systemd units for teleo-infrastructure 2026-04-15 14:27:23 +01:00
telegram fix: tighten output gate patterns to eliminate false positives on public content 2026-04-15 17:02:08 +01:00
tests refactor: Phase 3 — fix close_pr ghost bug, wire stale_pr, extract eval_parse 2026-04-16 12:40:23 +01:00
.gitignore feat: add auto-deploy script and systemd units for teleo-infrastructure 2026-04-15 14:27:23 +01:00
CODEOWNERS feat: reorganize repo with clear directory boundaries and agent ownership 2026-04-14 18:20:13 +01:00
pyproject.toml ganymede: add dev infrastructure — pyproject.toml, CI, deploy script 2026-03-13 14:24:27 +00:00
README.md feat: reorganize repo with clear directory boundaries and agent ownership 2026-04-14 18:20:13 +01:00
reweave.py Consolidate pipeline code from teleo-codex + VPS into single repo 2026-04-07 16:52:26 +01:00
teleo-pipeline.py Consolidate pipeline code from teleo-codex + VPS into single repo 2026-04-07 16:52:26 +01:00

teleo-infrastructure

Pipeline infrastructure for the Teleo collective knowledge base. Async Python daemon that extracts, validates, evaluates, and merges claims via Forgejo PRs.

Directory Structure

teleo-infrastructure/
├── teleo-pipeline.py        # Daemon entry point
├── reweave.py               # Reciprocal edge maintenance
├── lib/                     # Pipeline modules (Python package)
├── diagnostics/             # Monitoring dashboard (port 8081)
├── telegram/                # Telegram bot interface
├── deploy/                  # Deployment + mirror scripts
├── systemd/                 # Service definitions
├── agent-state/             # Cross-session agent state
├── research/                # Nightly research orchestration
├── hermes-agent/            # Hermes agent setup
├── scripts/                 # One-off backfills + migrations
├── tests/                   # Test suite
└── docs/                    # Operational documentation

Ownership

Each directory has one owning agent. The owner is accountable for correctness and reviews all changes to their section. See CODEOWNERS for per-file detail.

Directory Owner What it does
lib/ (core) Ship Config, DB, merge, cascade, validation, LLM calls
lib/ (extraction) Epimetheus Source extraction, entity processing, pre-screening
lib/ (evaluation) Leo Claim evaluation, analytics, attribution
lib/ (health) Argus Health checks, search, claim index
diagnostics/ Argus 4-page dashboard, alerting, vitality metrics
telegram/ Ship Telegram bot, X integration, retrieval
deploy/ Ship rsync deploy, GitHub-Forgejo mirror
systemd/ Ship teleo-pipeline, teleo-diagnostics, teleo-agent@
agent-state/ Ship Bootstrap, state library, cascade inbox processor
research/ Ship Nightly research sessions, prompt templates
scripts/ Ship Backfills, migrations, one-off maintenance
tests/ Ganymede pytest suite, integration tests
docs/ Shared Architecture, specs, protocols

VPS Layout

Runs on Hetzner CAX31 (77.42.65.182) as user teleo.

VPS Path Repo Source Service
/opt/teleo-eval/pipeline/ lib/, teleo-pipeline.py, reweave.py teleo-pipeline
/opt/teleo-eval/diagnostics/ diagnostics/ teleo-diagnostics
/opt/teleo-eval/telegram/ telegram/ (manual)
/opt/teleo-eval/agent-state/ agent-state/ (used by research-session.sh)

Quick Start

# Run tests
pip install -e ".[dev]"
pytest

# Deploy to VPS
./deploy/deploy.sh --dry-run   # preview
./deploy/deploy.sh             # deploy