Skip to content

docs(release): finalize the v1.8.0 changelog section - #90

Merged
scotej merged 1 commit into
mainfrom
chore/release-1.8.0-notes
Jul 26, 2026
Merged

docs(release): finalize the v1.8.0 changelog section#90
scotej merged 1 commit into
mainfrom
chore/release-1.8.0-notes

Conversation

@scotej

@scotej scotej commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Cuts the release notes for v1.8.0 (minor: the range adds a new persisted setting, a new Settings row, and a three-state friends list — the same shape that earned minors for 1.5.0/1.6.0/1.7.0).

This must land before Release-prep can run: both release paths extract the body with scripts/changelog-section.sh, which matches ## <version>. With ## Unreleased in place, changelog-section.sh 1.8.0 exits 1 — on the one-click path that aborts before the bump/tag/push (fails safe), but on the manual path it fails after the tag is immutable, stranding a pushed tag with no build.

Two corrections, because this text ships verbatim as the Release body

  • A false developer claim. The notes said fresh checkouts "build and run" without scripts/fetch-llama-server.sh. src-tauri/build.rs:41-55 writes a debug-only placeholder and its release arm panics on it — so a release-profile build still requires the script, exactly as README.md:330-336 says. The changelog was contradicting our own README. Rewritten into a ### For developers section that matches.
  • A wrong download size. "~10–20 MB" appeared in the notes, the in-app Settings row (src/strings.ts), and a store comment. Measured live against the pinned tag-b9095 assets: 8,643,613 B (macos-arm64) to 16,054,993 B (win-cpu-x64). All three now read 8–16 MB, so the release notes, the in-app copy, and the actual bytes agree.

Three omissions added

  • The idle network-footprint increase from the I74 relay presence leg (one extra socket per pinned relay, a ~300-byte beacon every 30s, no off switch) — a friend deserves to know before auto-updating.
  • The AI pane's rewritten privacy line (src/strings.ts), changed in this range but undocumented.
  • A ### Known issue for the in-session Invite picker, which still renders a limited-connection friend as plain Available — a new failure mode I74 introduces. Deliberately shipped documented rather than fixed: batching a code change here would invalidate the CI-green-on-exact-SHA gate Release-prep requires. Filed for 1.8.1.

Also softened "direct connection proven" to account for LIMITED_CONNECTION_SETTLE_MS (120s), during which a relay-only friend renders plain green.

Verification

bash scripts/changelog-section.sh 1.8.0 → exit 0, non-empty body. prettier --check, check-strings, check-tokens, check-contrast, lint, build, and 871 tests all pass. No test or story asserts the old size string; Unreleased no longer appears anywhere in the tree.

Backed by a 22-agent readiness audit whose blocking findings each survived an independent adversarial refutation pass. It separately confirmed the release is safe to auto-deliver: no new SQLite migrations, an additive settings key with a tested absent→default path, an untouched updater pubkey/endpoint, untouched identity derivation, and a relay-presence namespace a 1.7.1 peer neither publishes nor subscribes.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • New Features
    • Added optional automatic installation of the AI engine, with download progress and installation status.
    • Friends’ connectivity now includes relay-based presence updates and more detailed connection states.
    • Offline friends now show how recently they were last seen.
  • Bug Fixes
    • Fixed AI startup when the engine is installed.
    • Improved Windows messaging for missing runtime components.
    • Fixed friends incorrectly appearing offline when direct connections are unavailable.
  • Documentation
    • Clarified AI download privacy information and updated the estimated engine download size to 8–16 MB.

Renames '## Unreleased' to the real version heading — release.yml and
release-prep.yml both extract the release body with
scripts/changelog-section.sh, which matches on '## <version>', so an
Unreleased heading strands the tag with no publishable build.

Also corrects two things the notes got wrong, since this text ships
verbatim as the GitHub Release body friends read before auto-updating:

- The developer claim that fresh checkouts 'build and run' without
  fetch-llama-server.sh contradicted our own README. build.rs writes a
  DEBUG-only placeholder and its release arm panics on it, so a
  release-profile build still needs the script. Moved to a
  'For developers' section that matches README.md.
- The engine download size read ~10-20 MB in the notes, the Settings
  row, and a store comment. Measured against the pinned b9095 assets it
  is 8.6-16.1 MB, so all three now read 8-16 MB.

Adds the three user-visible changes the notes had omitted: the idle
network-footprint increase from the relay presence leg, the AI pane's
rewritten privacy line, and a known issue covering the in-session
Invite picker, which still renders a limited-connection friend as
plain Available.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 26, 2026 08:28

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@coderabbitai

coderabbitai Bot commented Jul 26, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 573cfc0a-3e84-4e17-a902-7de5fce6d1bb

📥 Commits

Reviewing files that changed from the base of the PR and between e1c93c8 and f5a8390.

📒 Files selected for processing (3)
  • CHANGELOG.md
  • src/stores/settingsStore.ts
  • src/strings.ts
📜 Recent review details
⏰ Context from checks skipped due to timeout. (3)
  • GitHub Check: Rust (Windows)
  • GitHub Check: Rust (macOS)
  • GitHub Check: Frontend
🧰 Additional context used
📓 Path-based instructions (5)
src/**/*.{ts,tsx,css}

📄 CodeRabbit inference engine (CLAUDE.md)

src/**/*.{ts,tsx,css}: Frontend code must use design tokens rather than raw visual values; token compliance is enforced by scripts/check-tokens.ts.
Maintain WCAG AA contrast for every text/background pairing in both themes, provide information without relying on color alone, and respect the global reduced-motion kill switch.

Files:

  • src/stores/settingsStore.ts
  • src/strings.ts
src/**/*.{ts,tsx}

📄 CodeRabbit inference engine (CLAUDE.md)

src/**/*.{ts,tsx}: New motion sites must be gated by the global reduced-motion behavior by default.
Peer wire formats and identity derivation are cross-version contracts; coordinate changes so older peers remain compatible and stored identity/data are not stranded.
The application must remain local-only with no telemetry; never instruct users to paste model files or BIP39 mnemonics into an AI service.
Do not add comments unless the rationale is non-obvious; preserve established provenance tags such as I9, F6, or PR-27 when fixing traceable code.
Avoid unrelated refactors, hypothetical abstractions, and adjacent cleanup when implementing a feature or bug fix.

Files:

  • src/stores/settingsStore.ts
  • src/strings.ts
**/*.{ts,tsx,js,jsx,css,json,md,rs,toml,yml,yaml}

📄 CodeRabbit inference engine (CLAUDE.md)

Run repository formatting before committing multi-file or subagent work; Prettier formatting must pass for the whole tree.

Files:

  • src/stores/settingsStore.ts
  • src/strings.ts
  • CHANGELOG.md
src/strings.ts

📄 CodeRabbit inference engine (CLAUDE.md)

Toast and notification copy must be centralized in src/strings.ts; prefer this module for other user-facing strings.

Files:

  • src/strings.ts
CHANGELOG.md

📄 CodeRabbit inference engine (CLAUDE.md)

Update CHANGELOG.md as part of every release.

Files:

  • CHANGELOG.md
🔇 Additional comments (3)
CHANGELOG.md (1)

21-28: LGTM!

Also applies to: 29-44, 45-56, 57-72, 73-85, 86-93, 94-98, 99-108, 109-115

src/stores/settingsStore.ts (1)

112-112: LGTM!

src/strings.ts (1)

1264-1264: LGTM!


📝 Walkthrough

Walkthrough

Updates the changelog to v1.8.0 and documents AI engine installation, path resolution, friends presence, privacy, known issues, and development behavior. Adjusts llama.cpp download-size wording in settings documentation and user-facing help text.

Changes

Release documentation

Layer / File(s) Summary
v1.8.0 release framing
CHANGELOG.md
Replaces the “Unreleased” heading with the dated v1.8.0 release section.
AI engine behavior and copy
CHANGELOG.md, src/stores/settingsStore.ts, src/strings.ts
Documents automatic llama.cpp installation, engine path resolution, privacy wording, build notes, and changes the stated download size to about 8–16 MB.
Friends presence documentation
CHANGELOG.md
Documents relay-based presence heartbeats, expanded connectivity states, relay changes, network usage, and the invite-list known issue.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

  • scotej/studyvis#88: Implements the AI engine resolution, automatic installation behavior, and related settings UI documented here.

Suggested reviewers: copilot, claude

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main change: finalizing the v1.8.0 changelog/release notes section.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
✨ Simplify code
  • Create PR with simplified code
  • Commit simplified code in branch chore/release-1.8.0-notes

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@scotej
scotej merged commit abc294c into main Jul 26, 2026
4 checks passed
@scotej
scotej deleted the chore/release-1.8.0-notes branch July 26, 2026 08:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants