v0.10.0
minorHighlights
- ▸Auto fix PR for production crashes. Eigon notices a recurring crash in your service logs, parses the stack trace, asks Claude for a patch, and opens a draft pull request on your GitHub. One click from the dashboard banner
- ▸Cost dashboard now shows the actual AWS billed amount, pulled daily from Cost Explorer. The number you see matches the bill AWS will charge
- ▸Public signup is open. Visitors go straight to login and a first deploy without sitting on a waitlist
Added
- +POST /api/deployments/:id/auto-fix endpoint orchestrates the full crash to PR pipeline. Extracts a Go, Python, Node, Ruby or Java stack signature from log lines, applies the dedupe policy (3 occurrence floor, 24h cool down, 5 PRs per day per project), fetches source files at the exact deploy commit SHA from GitHub, calls Claude with a focused prompt, then clones and applies the diff and opens a draft PR via the user's GitHub token
- +Worker incident scanner ticks every 5 minutes, walks every project, env and service tuple, filters CloudWatch log events on common crash patterns, runs the signature extractor on hits and records incidents with a captured trace sample so the dashboard banner can replay them on click
- +GET /api/projects/:id/incidents endpoint backs the recurring crash banner with occurrence count, last seen timestamp, language detected, and any existing fix PR URL
- +Recurring crash banner on the deployment detail page with an Open fix PR with Eigon button when a trace has been captured
- +Daily cost ingest cron in the controlplane runs cloudcost.IngestEngine against AWS Cost Explorer so cloud_cost_breakdowns is kept warm without manual admin trigger
- +Three new shared packages: pkg/incidentdiag (stack trace parser, Postgres dedupe store, Claude and git and GitHub adapters), pkg/cloud/cwlogs (CloudWatch wrapper), pkg/scaletozero (idle service scaler), pkg/dbrollback (data rollback planner)
Improved
- ~Customer environment cost endpoint prefers actual MTD from cloud_cost_breakdowns over the engine estimate. Response carries a source flag so the UI labels Actual versus Estimate, plus an as_of_date so customers can see how fresh the AWS data is. Falls back to the engine estimate only on brand new environments where no usage has been ingested yet
