Changelog

v1.6.8 (2026-05-24)

Analysis queue for rate-limited URLs

  • When GitHub API rate limits are hit, the URL is queued in the database
  • User gets a "queued" page with estimated wait time
  • Deduplication — same URL can't be queued twice
  • Background processor retries analysis when rate limit resets
  • Refreshable status page

v1.6.7 (2026-05-23)

Scoring accuracy improvements

  • Fixed recent contributor activity always returning 1.0 (now uses commit recency)
  • Fixed first response time inflated by subsequent issue activity
  • Fixed tracking fields for open/closed issues and PRs in mergeWith
  • Added 8 unit tests for mergeWith
  • Softened Activity thresholds (14d for A, 20 commits/mo for A)
  • Alternative PR workflow detection — repos using mailing lists no longer penalized
  • License classification corrected (EPL/OSL removed from permissive, MPL added)

Silent failure fixes

  • Added warning logging to parseInstant, safeContentLength, safeHead, safeGet
  • Persistence failures now return Failed to user instead of silent Success
  • Enum parse errors in AnalysisHistory now logged
  • Skipped GitLab pipelines marked as NotApplicable instead of Available
  • Warning logging in all 4 scraper extractCount methods
  • Warning logging for unknown metrics in RecommendationEngine

New features

  • Per-repository grade history page at /history?url= with timeline chart
  • Grade History link on analysis page

Infrastructure

  • CI: mvn verify now uses -am for version-bumped builds
  • DOCKER_HOST configured in Surefire for Podman native pipe

v1.6.6 (2026-05-22)

GraalVM 25 native image support

  • Native image build with GraalVM 25 — Flyway pre-migration, JTE reflection, Jackson without KotlinModule
  • 27 automated e2e tests (JVM) + 10 native image e2e tests
  • Dynamic migration manifest generation at build time
  • Null-safe MetricAvailability deserialization for native image
  • Fixed footer version display

v1.6.5 (2026-05-09)

Coverage-weighted grading

  • Grades now weighted by metric availability — categories with missing data contribute proportionally less to the overall grade
  • New MetricAvailability tracking: rate-limited, fetch errors, and not-applicable metrics shown inline
  • New Confidence badge: HIGH (80%+ metrics), MEDIUM (50-79%), LOW (below 50%)
  • Coverage warning banner when less than 50% of metrics available
  • All providers (GitHub, GitLab, Gitea/CodeBerg, Bitbucket) now record per-metric availability
  • Removed flaky test that hit the live GitHub API

v1.6.4 (2026-05-08)

Footer version fix

  • Fixed footer showing literal v%s — platform i18n bug with ParameterInjector not supporting %s syntax
  • Footer now reads version directly from AppConfig.version
  • Added footer regression test

v1.6.3 (2026-05-08)

Theme toggle and footer fixes

  • Fixed theme toggle button — was generating broken href="light" links that 404'd, now uses proper HTMX form submission
  • Fixed footer showing build timestamp instead of version number
  • Theme toggle matches platform's SidebarSelector pattern with hidden fields

v1.6.0 (2026-05-08)

UI fixes and content rendering

  • Fixed content pages (algorithm, changelog) rendering empty bodies — worked around JTE !{} bug in Content blocks
  • Fixed theme switching — uses DaisyUI theme IDs directly via data-theme
  • Fixed desktop navbar hidden on large screens
  • Added Tailwind Typography plugin for proper prose rendering
  • Added regression tests for themes, content pages, and desktop header
  • Sidebar layout with responsive drawer navigation

v1.5.0 (2026-05-08)

Platform upgrade

  • Upgraded outerstellar-platform from 1.5.1-SNAPSHOT to 1.6.0 (stable, Maven Central)
  • Fixed theme switching — now uses DaisyUI theme IDs directly
  • Fixed empty content pages (changelog, algorithm) — added Tailwind Typography for proper prose rendering
  • Added proper desktop header visible on all screen sizes
  • Moved recommendations section to bottom of analysis results

v1.4.0 (2026-05-08)

Metric availability tracking

  • Providers declare which fields they fetched via MetricField enum
  • Provider merge — results from API + scraper merged to maximize coverage
  • Unavailable metrics excluded from grading (shown grayed out in UI, not scored as F)
  • Overall grade renormalized from only categories with available data

v1.3.0 (2026-05-05)

Deeper analysis: richer signals, history tracking, and recommendations

  • 9 new metrics: commit frequency trend, release cadence, README quality, stale issue ratio, first response time, PR size, PR review depth, contributor growth, recent contributor activity
  • Metric explanations: collapsible "What/Why/Improve" for every metric on the analysis page
  • Grade history: automatic snapshots when grades change, with trend arrows (improving/declining)
  • History cleanup: automatic pruning (per-repo cap + age limit) via background job
  • Actionable recommendations: prioritized suggestions for metrics graded C or below, with effort levels and specific guidance
  • Algorithm page updated with new metrics, thresholds, and recommendation docs

v1.2.0 (2026-05-03)

Platform integration

  • outerstellar-platform v1.4.2 integration (PlatformPlugin architecture)
  • Full repository analysis engine with A-F grading
  • Leaderboard, algorithm, and changelog pages
  • JTE precompiled templates with Tailwind + DaisyUI 5
  • Testcontainers-based integration tests with PostgreSQL 18

v1.1.0 (2026-05-02)

Initial scoring engine

  • 5 scoring categories: Activity, Community, Issues, Pull Requests, Contributors
  • GitHub API provider with metrics collection
  • PostgreSQL persistence layer with JDBI

v1.0.0 (2026-05-01)

Project scaffolding

  • Maven multi-module structure (core + web)
  • Core domain models and repository interfaces
RepoQuality v1780299654789 · AGPL-3.0