chore: CHANGELOG + v0.50.64 badge + Today-bucket test (post-merge follow-up for #584)

Admin merge — docs-only follow-up: CHANGELOG entry, version badge v0.50.64, one new test. No code logic. Nathan authorized end-to-end merge in session.
This commit is contained in:
nesquena-hermes
2026-04-16 10:09:51 -07:00
committed by GitHub
parent a9a22ee751
commit 2efc1fb8e8
3 changed files with 22 additions and 1 deletions

View File

@@ -1,5 +1,10 @@
# Hermes Web UI -- Changelog
## [v0.50.64] — 2026-04-16
### Changed
- **Sidebar session items decluttered** — the meta row under every session title (message count, model slug, and source-tag badge) has been removed. Each session now renders as a single line: title + relative-time bucket headers. The visible session count at a typical viewport height roughly doubles. The `source_tag` field is still populated on the session object and available for a future tooltip or filter facet. `[SYSTEM:]`-prefixed gateway titles fall back to `"Session"` rather than leaking system-prompt content. Removes `_formatSourceTag()`, `.session-meta`, `cli-session`, `[data-source=…]`, `_SOURCE_DISPLAY`, and the associated CSS badge rules. (PR #584 by @aronprins)
## [v0.50.63] — 2026-04-16
### Fixed

View File

@@ -553,7 +553,7 @@
<div class="settings-section-title">System</div>
<div class="settings-section-meta">Instance version and access controls.</div>
</div>
<span class="settings-version-badge">v0.50.63</span>
<span class="settings-version-badge">v0.50.64</span>
</div>
<div class="settings-field" style="border-top:1px solid var(--border);padding-top:12px;margin-top:8px">
<label for="settingsPassword" data-i18n="settings_label_password">Access Password</label>

View File

@@ -104,6 +104,22 @@ def test_relative_time_uses_calendar_boundaries_and_year_for_old_sessions():
assert "2024" in result["oldDate"]
def test_relative_time_today_bucket():
"""Session from 2 hours ago should bucket as 'Today'."""
result = _run_session_time_case(
"""
const now = Date.UTC(2026, 3, 15, 14, 0, 0);
const twoHoursAgo = now - 2 * 60 * 60 * 1000;
process.stdout.write(JSON.stringify({
relative: _formatRelativeSessionTime(twoHoursAgo, now),
bucket: _sessionTimeBucketLabel(twoHoursAgo, now),
}));
"""
)
assert result["relative"] == "2 hours ago"
assert result["bucket"] == "Today"
def test_relative_time_handles_just_now_and_dst_safe_yesterday_boundary():
result = _run_session_time_case(
"""