frontend
backend
database
integrations
Simplified scheduling, non‑destructive history regeneration, and smoother project setup
- Simplified publishing schedule with non‑destructive archive/restore regeneration — Publishing was unified around frequency-based aggregation (daily/weekly/monthly). Changing schedule now archives existing period summaries and can restore or regenerate history in the background so you can switch frequencies without losing approval state or edits.
- Faster, clearer project onboarding with multi‑repo setup and real‑time impact estimates — New multi-repo project creation, slug availability checks and suggestions, and a history impact estimator let you see how many commits and period entries will be generated before processing repository history.
Improvements
- Unified publishing model to always ingest commits and group them by frequency (daily/weekly/monthly) rather than relying on multiple trigger types.backend
- Made schedule changes safer: period summaries are now soft-archived and can be restored or regenerated on demand, preserving publish/draft state.backend
- Added monthly boundary option (first_day / last_day) and expanded schedule controls (frequency, time, timezone, week start day, month boundary).frontend
- Improved project creation UX: select multiple repositories, choose tracked branch per repo, and persist selections when navigating the wizard.frontend
- Added migration choices for schedule, LLM, and repo changes so you can choose to apply changes forward‑only or regenerate history from inception.frontend
- Added unsaved-changes protection on settings tabs and per-tab dirty tracking to avoid accidental navigation loss.frontend
API & integrations
- Added POST /v1/github/history-estimate and a /api/github/history-estimate proxy to compute commit counts and estimated period entry counts across one or more repos/branches.backend
- Added /api/projects/slug endpoint and client-side slug validation with inline suggestions and auto-apply behavior during project creation.frontend
- Added events for background flows: history.backfill.requested now drives archive/restore/regeneration and a new changelog/llm.regeneration.requested event triggers full LLM reprocessing of commit history.integrations
- Project settings API now accepts migration intents so UI choices (forward_only vs regenerate_history) are honored by background jobs.backend
Database
- Added archived_at column to changelog_entries and an index that excludes archived rows so period entries can be soft‑archived and efficiently excluded from public views.database
- Repository code updated to archive/unarchive period entries, detect archived entries, and delete commit entries for LLM regeneration workflows.backend
Documentation & tests
- Updated changelog and added tests for settings schemas, migration dialog copy, slug validation, and archive/unarchive repository behaviours.