Skip to content

Status & Roadmap

Active Development

autosolve is being built right now. APIs may change, features may shift. This is a feature, not a bug — your input shapes the project.

What Works Today

  • Multi-repo GitHub issue polling with per-repo state persistence in SQLite
  • Two-phase scheduler — preflights validate repos, then workers start polling
  • Outbox relay — outbox events relayed to goqite job queue
  • AI dispatch — IssueExplainer consumes queue, calls Ollama, logs classification
  • Global workers — interval tasks not scoped to a repository (e.g. queue consumers)
  • Per-error retry with exponential backoff via the longrun package
  • Degraded mode — unknown errors don't crash workers, they retry with loud logging
  • Rate limiting via HTTP transport layer (transparent to domain code)
  • Full OpenTelemetry observability — traces, metrics, logs via OTLP/gRPC
  • OTEL metrics on OutboxRelay and IssueExplainer — throughput, latency, backpressure
  • goose migrations + sqlc-generated DAL — type-safe database layer
  • Google Wire DI — clean dependency graph, no magic

Current Epic

Epic: v1 architecture redesign — stabilizing the core before adding the AI dispatch layer.

What's Next

These are the broad directions, not promises. Priorities shift based on real usage and feedback.

AreaWhatStatus
AI DispatchQueue consumer calls Ollama, classifies issuesDone (#156)
Result PublishingPost AI results back to GitHub (comments, PRs)Next (#157)
Adaptive PollingBack off when repos are quiet, speed up when active#53
longrun extractionExtract pkg/longrun into a standalone Go moduleAfter API stabilizes
Module systemSelf-contained modules per partition typeWhen second partition appears
Comment pollingWatch for @bot mentions in commentsPlanned

Tech Stack

ComponentTechnology
LanguageGo 1.26+
DatabaseSQLite (pure Go, WAL mode)
Migrationsgoose
SQL codegensqlc
DIWire
ObservabilityOpenTelemetry (OTLP/gRPC)
CLIcobra + viper

Want to Contribute?

The best time to join is now — while the architecture is fresh and decisions are still being made. See Adding a Worker for a concrete starting point, or open an issue with your idea.

Apache 2.0 · Built in public · Contributions welcome