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