Skip to content

Releases: HexmosTech/git-lrc

v0.6.10

Choose a tag to compare

@shrsv shrsv released this 24 Aug 11:47

Release v0.6.10

Date: 2026-08-24

inside an HTML comment so release-gh can remind you after publishing.

Published raw URL base: https://raw.githubusercontent.com/HexmosTech/git-lrc/refs/heads/main/docs/releases/img/v0.6.10/
Published raw URL example: https://raw.githubusercontent.com/HexmosTech/git-lrc/refs/heads/main/docs/releases/img/v0.6.10/demo.png
-->

Summary

  • Fix --no-serve not suppressing serve for --range and --commit reviews

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Fix --no-serve flag not suppressing auto-serve when used with --range or --commit (the BuildFromContext code path set opts.Serve = true before the runtime ever saw --no-serve)
  • Add comprehensive tests for all --no-serve flag combinations

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.9

Choose a tag to compare

@shrsv shrsv released this 24 Aug 11:24

Release v0.6.9

Date: 2026-08-24

inside an HTML comment so release-gh can remind you after publishing.

Published raw URL base: https://raw.githubusercontent.com/HexmosTech/git-lrc/refs/heads/main/docs/releases/img/v0.6.9/
Published raw URL example: https://raw.githubusercontent.com/HexmosTech/git-lrc/refs/heads/main/docs/releases/img/v0.6.9/demo.png
-->

Summary

  • Add --no-serve flag for non-interactive agent/CI usage
  • Update --range and --commit help text to mention branches

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Add --no-serve flag that suppresses auto-serve (HTTP server, browser, interactive TUI) for CI/agent use with --output json
  • Update --range flag help text to mention "refs or branches"
  • Update --commit flag help text to mention "commit, branch, or commit range"
  • Add non-interactive mode usage examples to lrc review command description
  • Suppress interactive 413 error prompt when --no-serve is set

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.8

Choose a tag to compare

@shrsv shrsv released this 09 Aug 15:05

Release v0.6.8

Date: 2026-08-09

Summary

Hotfix: the offline commit-sync feature introduced in v0.6.7 silently synced nothing. lrc review commits now correctly show up in the LiveReview dashboard's commit coverage.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Fixed the post-commit hook running its two new v0.6.7 steps in the wrong order: lrc review-cleanup (which deletes every review-session row for the current branch) ran before lrc internal sync enqueue (which needs to read the row for the just-committed tree to find its review_id/api_url/api_key). Cleanup was wiping the row enqueue needed on every single commit, so no lrc review commit could ever sync to the LiveReview dashboard via the normal hook flow -- the queue always stayed empty. Fixed by swapping the order (hooks/post-commit.sh), with a regression test asserting enqueue always runs first (hooks/templates_test.go).
  • lrc self-update (and a fresh install) regenerates hooks from the updated binary automatically, so picking up this version repairs existing repos' hooks with no extra steps.

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc sync status

Known Issues

  • None.

v0.6.7

Choose a tag to compare

@shrsv shrsv released this 09 Aug 14:29

Release v0.6.7

Date: 2026-08-09

Summary

Adds lrc coverage (CI/CD-friendly review-coverage lookup for commits/ranges) and an offline-first background sync queue that reports plain lrc review commits back to the LiveReview dashboard once they're actually committed.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • New lrc coverage <ref> [ref...] command: given commit SHAs and/or a..b ranges, reports every scan found for them, merged from two sources — the local commit-log "LiveReview Pre-Commit Check" trailer (no network call) and LiveReview's backend (POST /api/v1/review-coverage, covering PR/MR, API, MCP, and --commit/--range CLI reviews). Supports --json for CI/CD gates; no pass/fail verdict is computed, so callers apply their own policy over the reports (cmd/app.go, internal/appcore/coverage_flow.go).
  • Plain lrc review (staged/working diff, the default) now syncs the commit it ends up in back to the LiveReview dashboard, offline-first: hooks/post-commit.sh queues the commit into a local ~/.lrc/sync-queue.db and kicks off a detached background worker; if that fails or the machine is offline, any later lrc invocation in any repo opportunistically retries due items with exponential backoff (internal/syncqueue, internal/appcore/sync_flow.go, main.go).
  • New lrc sync status|list|flush|forget commands to inspect and manage the sync queue — counts and oldest-pending age, a filterable item list, a manual foreground flush, and a way to give up on one stuck item (cmd/app.go, internal/appcore/sync_flow.go).
  • The per-repo review ledger (.git/lrc/reviews.db) now snapshots the API URL/key used at review-submission time so a later background sync always targets the account the review was actually submitted to, even if ~/.lrc.toml changes in the meantime; that file and the new ~/.lrc/sync-queue.db are both created with 0600 permissions (internal/reviewdb/service.go, attestation/db.go, storage/attestation_review_db_io.go).

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help
  • lrc coverage --help
  • lrc sync --help

Known Issues

  • None.

v0.6.6

Choose a tag to compare

@lovestaco lovestaco released this 08 Aug 16:26

Release v0.6.6

Date: 2026-08-08

Summary

Patch release fixing missing branch names on CLI-submitted reviews in the LiveReview dashboard.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Diff review submissions now include the current git branch name, so CLI-sourced reviews show their branch in the LiveReview dashboard instead of "-" (internal/reviewapi/helpers.go, internal/reviewmodel/types.go)

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.5

Choose a tag to compare

@shrsv shrsv released this 08 Aug 14:17

Release v0.6.5

Date: 2026-08-08

Summary

Patch release fixing quiz UI rendering, review timer accuracy, and toolbar layout issues.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Quiz: inline code (backtick-wrapped text) now renders as styled <code> elements instead of raw backticks (Quiz.js, styles.css)
  • Quiz: selected option has brighter visual feedback with blue gradient background, left accent border, and glow effect (styles.css)
  • Timer: review elapsed time now uses server-side startedAt timestamp, so the timer persists across page refreshes and shows the real elapsed time from review start (review_state.go, app.js)
  • Toolbar: performance pills no longer wrap to multiple lines; toolbar stays on one line with horizontal scroll when needed (styles.css)

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.4

Choose a tag to compare

@shrsv shrsv released this 07 Aug 15:40

Release v0.6.4

Date: 2026-08-07

Summary

  • Blast-radius reports now upload to LiveReview over a new generic artifact-sync channel, and the review UI header gets a persistent status chip showing upload progress, size, and transfer time.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • Added a generic artifact-sync channel to LiveReview (network.ReviewUploadArtifact, POST /api/v1/diff-review/{review_id}/artifacts/{artifact_type}) and wired the blast-radius report through it as the first consumer (internal/appcore/blastradius_bridge.go). Upload is fire-and-forget and non-fatal on failure, matching how blast-radius scoring already treats its own errors.
  • Replaced the transient blast-radius upload banner with a persistent "Blast Radius" status chip in the review UI header (internal/staticserve/static/components/Header.js), styled after the existing usage chip. It tracks idle/uploading/uploaded/failed state and shows report size and transfer time on hover.
  • Tracked upload size (size_bytes) and duration (duration_ms) alongside the existing status/error fields on the blast-radius upload state.
  • Documented the LiveReview sync convention in AGENTS.md ("Rule 4: Syncing to LiveReview") so future changes to blastradius/ or the review UI flag when a ported copy in the LiveReview repo may need a follow-up update.
  • Fixed stale evidence line references in network/network_status.md after the new ReviewUploadArtifact function shifted the line numbers of ReviewProxyRequest and ReviewForwardJSONWithBearer.

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.3

Choose a tag to compare

@shrsv shrsv released this 05 Aug 06:46

Release v0.6.3

Date: 2026-08-05

Summary

  • Five review-UI fixes: comment next/prev navigation now auto-expands the collapsed hunk/file it jumps to (was broken specifically in the "Score: Whole" ranked view), the issue filter panel no longer flashes open on an incidental mouse pass, risk-score-breakdown symbol names render as real code (original casing, monospace) instead of uppercased plain text, duplicate overlapping tooltips on the score-chip and methodology help icons are gone, and the sunburst/flamegraph call-graph charts no longer render corrupted/distorted arcs during rapid interaction.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • app.js: navigateToComment now resolves each comment's real file expandKey via a render-synced allCommentsRef instead of trusting the raw fileId it was passed - in "Score: Whole" ranked mode that id was a synthetic per-hunk id, distinct from the file's actual expand key, so next/prev navigation would jump to a comment without ever expanding its container.
  • styles.css: .issue-filter-details now has a 0.3s hover-open delay (previously 0s) so brushing the mouse across the "Open Filters" bar while moving elsewhere no longer flashes the panel open.
  • BlastRadiusPanel.js / styles.css: signal-section headers and Math Mode's per-symbol subject lines now render symbol names in a <code> element with the source's original casing preserved (text-transform: uppercase and a sans-serif font override were both removed).
  • BlastRadiusPanel.js: removed redundant native title attributes on ScoreChipWithHelp and MethodologyButton that were showing the browser's default tooltip stacked behind the custom popup with duplicate text.
  • BlastRadiusPanel.js: the symbols array feeding the sunburst/flamegraph is now memoized on detail.Symbols, so chartSymbol actually stays referentially stable across unrelated re-renders (hovering a caller chip, switching score mode); previously it churned identity on every render, causing the chart's D3 effect to tear down and restart mid-transition.
  • SunburstChart.js / FlameGraph.js: renderSunburst/renderFlameGraph now call .interrupt() before clearing the SVG, so any transition still in flight on the old elements is explicitly cancelled instead of left to race the new render.

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.2

Choose a tag to compare

@lovestaco lovestaco released this 04 Aug 19:05

Release v0.6.2

Date: 2026-08-04

Summary

  • Blast-radius review now flags renamed symbols directly: when a hunk renames a function, method, struct, or variable, the reviewer sees a distinct "Still uses the old name" caller group for any place in the codebase that hasn't been migrated yet - instead of that risk being buried in a generic reference count.
  • The dependency graph (sunburst/flamegraph) stays exactly as accurate as before this feature: it only ever draws verified call-graph edges, never a textual old-name reference, so a rename can never make the chart claim a call that isn't real.
  • Fixed the "Callers of old name (about to break)" signal asserting an unverified compile failure; it now states only what was actually measured - a textual reference to the old name still exists - since a text-search hit can be a real call site, a comment, or a string literal.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • blastradius/client/client.go: new SearchCodeSymbols method (search_code --mode compact) resolves a grep hit for a symbol's pre-rename name back to the graph node enclosing it, rather than just counting matches.
  • blastradius/rename.go: oldNameCallers/expandPreRenameCallers build a caller list for a renamed symbol's old name (with one hop of transitive fan-in reused via score.FanIn), flagged CallerRef.PreRename; renameOldNameSignal's wording changed from "Callers of old name (about to break)" to "Still uses the old name" - scoring itself (BlastRadiusRaw, point values) is unchanged.
  • blastradius/blastradius.go: new SymbolContribution.RenamedFrom field carries the pre-rename name through to the report for both the "calls" and "text-references" scoring paths.
  • BlastRadiusPanel.js: the caller-list sidebar groups pre-rename callers separately and highlights them in red; chartSymbol filters those out before either chart renders, so the sunburst/flamegraph only ever see genuine CALLS-graph callers.
  • callgraph-utils.js: fixed a tooltip rendering bug where HTML entities (&middot;, &#8627;) rendered verbatim instead of as characters, since the htm template tag doesn't decode entities in template text.

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.

v0.6.1

Choose a tag to compare

@shrsv shrsv released this 04 Aug 10:32

Release v0.6.1

Date: 2026-08-04

Summary

  • Fix lrc/git-lrc binaries silently drifting out of sync after self-update (one binary could stay on an old version while the other updated). Sync is now verified by checksum and self-healing on every invocation, in either direction - whichever binary is actually newer is treated as the source of truth, not just lrc by name.
  • Fix an intermittent partial/stuck render of the blast-radius sunburst and flamegraph call-graph visualizations on first load. Each chart now verifies its own render completed and automatically redraws (without animation) if it didn't, and every chart instance shares a single D3 script load instead of racing its own.
  • Center the call-graph visualization (sunburst/flamegraph) both horizontally and vertically within its panel, instead of it sitting pinned to the top of the available space.

Install and Update

New install:

# Linux/macOS
curl -L https://hexmos.com/ipm-install | bash && ipm i HexmosTech/git-lrc

# Windows
iwr https://hexmos.com/ipm-install-ps | iex; ipm i HexmosTech/git-lrc

Update:

lrc self-update

Changes

  • internal/selfupdate: new EnsureGitLRCBinarySynced self-heal check runs on every lrc/git-lrc invocation (cheap size check in the common case), and resyncBinary verifies every copy by SHA256 rather than trusting the copy call. Direction is decided by modification time, not by binary name, so a git-lrc that's ahead of lrc (or vice versa) is repaired correctly either way.
  • SunburstChart.js/FlameGraph.js: both render functions now report how many elements they expect to draw; a verification pass after the entrance animation's expected finish time checks every element actually rendered at visible opacity, and redraws immediately (no animation) if not.
  • callgraph-utils.js: new shared loadD3() so concurrently-mounted charts (e.g. "Expand All") load the D3 script once instead of each injecting its own <script> tag.
  • .blast-viz-wrapper now centers its fixed-size chart box on both axes instead of leaving it top-packed.

Breaking Changes

  • None.

Verification

  • lrc --version
  • lrc --help

Known Issues

  • None.