gramps
8ec4dae062
fix scroll: rAF for layout-safe scrollHeight, direction-aware _userScrolledAway
2026-07-14 14:17:57 -07:00
gramps
7d50d07249
persist perplexity per assistant message; display on loaded convos
2026-07-14 14:13:24 -07:00
gramps
65baeba1f1
scrollbar left of spool holes, widened to 10px
2026-07-14 14:03:47 -07:00
gramps
40495548e5
fix: chat-container z-index above .main::after barcode strip that hid scrollbar
2026-07-14 14:01:24 -07:00
gramps
d79d8827c6
fix: scrollbar uses accent-dim blue thumb, visible on dark bg
2026-07-14 13:58:21 -07:00
gramps
01e2489846
fix: visible scrollbar (8px, track visible, Firefox compat)
2026-07-14 13:55:53 -07:00
gramps
3fccb0f2e7
rename NEW/OLD -> ↓SORT / ↑SORT for sort direction indicator
2026-07-14 13:49:20 -07:00
gramps
af2f8fa90f
fix: wider confidence scale + 80/15 thresholds (green/orange/red)
2026-07-14 13:47:19 -07:00
gramps
1f571f6284
fix: toggleDirection now reorders existing messages in DOM
2026-07-14 13:43:01 -07:00
gramps
fbd734ccd4
fix: privacy badge reads PRIVACY ON / PRIVACY OFF (not bare PRIVACY)
2026-07-14 13:36:56 -07:00
gramps
8e800b57d1
fix: rename PRIVATE->PRIVACY, implement info popup overlay for privacy mode
2026-07-14 13:36:01 -07:00
gramps
ac58531e8b
fix: private badge initial text shows PRIVATE OFF (matches default state)
2026-07-14 13:32:25 -07:00
gramps
c879c67e4c
fix: always show WEB search button (enable/disable instead of hide/show)
2026-07-14 13:30:34 -07:00
gramps
30deb0db64
v0.20.0: at-rest encryption (AES-256-GCM) for all query-derived text
...
- crypto.py: AES-256-GCM encrypt/decrypt + ensure_key()
- Key auto-generated on first boot, stored as heartbeat_interval_ms in settings
- All 12 storage paths wired (SQLite + Qdrant)
- memory.py: FTS5 search replaced with Python-side matching
- 200/200 tests pass
2026-07-14 13:22:32 -07:00
gramps
f6b01ec9ac
B8: Private Chat mode + WireGuard docs + README data safety section (v0.19.3)
2026-07-14 08:52:32 -07:00
gramps
4f16a9c078
B6: waterfall direction toggle (v0.19.2)
...
NEW/OLD button toggles between newest-first and oldest-first ordering.
scrollToTop() replaced by scrollToLatest() which checks direction.
appendMessage() uses prepend/append based on direction.
Preference persisted in localStorage.
2026-07-14 08:19:26 -07:00
gramps
b3746949a9
B5: default model auto-pull on first start (v0.19.1)
...
model_pull.py: ensure_model() checks llama-server availability at
startup, falls back to Ollama pull API if model not found.
Integrated into app.py lifespan after assess_hardware().
11 tests cover all paths: available/unreachable/pull success/fail.
2026-07-14 08:16:08 -07:00
gramps
790c81457a
B7: Apple Silicon worker support (v0.19.0)
...
gpu.py: darwin branch via system_profiler SPDisplaysDataType for GPU
model/VRAM on macOS, falls back to rocm-smi on Linux.
hardware.py: _get_vram_darwin() parses system_profiler output.
node_agent/agent.py: get_load() reports VRAM on darwin via
system_profiler.
tests: 5 new gpu tests (linux/darwin/absent), 3 new hardware tests
(darwin assessment + VRAM parsing).
2026-07-14 08:09:41 -07:00
gramps
feaa2830da
fix: auto-derive model shorthand from any model name following qwen2.5:7B:i convention
2026-07-13 16:40:58 -07:00
gramps
7ef220e579
feat: brand response avatar as cAIc instead of AI
2026-07-13 16:35:59 -07:00
gramps
868ef411ba
feat: show model label in response header via MODEL_LABELS map
2026-07-13 16:35:40 -07:00
gramps
8853a3761e
docs: add in-transit TLS note to B8
2026-07-13 16:28:58 -07:00
gramps
82beadf546
docs: prioritize Private Chat mode over encryption in B8
2026-07-13 16:27:34 -07:00
gramps
ba3df91db9
docs: add B8 encryption/PHI backlog item, update session work state
2026-07-13 16:24:45 -07:00
gramps
b5cc294ece
chore: remove rating thumbs up/down (no backend, privacy concern)
2026-07-13 16:19:37 -07:00
gramps
151e02fe40
fix: response copy icon stays emoji, uses execCopy helper
2026-07-13 16:14:12 -07:00
gramps
98b51c0775
fix: clipboard fallback for HTTP, response copy toast now works
2026-07-13 16:12:17 -07:00
gramps
ddcfd8a73f
fix: use data-content attr to avoid HTML injection in onclick
2026-07-13 16:11:00 -07:00
gramps
92e8608ac7
fix: capture this ref in user copy icon onclick
2026-07-13 16:10:30 -07:00
gramps
f07025a4e8
feat: toast notifications for all icon actions
...
- delete memory/preset/conversation/all/gallery/clear
- save/reset profile
- new chat, add preset, edit preset
- clear file selection
- rate up/down thumbs toasts
2026-07-13 16:08:32 -07:00
gramps
7105fe0d6d
fix: toast on save success/failure, skip toast on print
2026-07-13 16:05:56 -07:00
gramps
6a10674cdf
feat: slide-out toast notification on copy icon clicks
2026-07-13 16:05:32 -07:00
gramps
962003512f
fix: inline copy icon at end of user query text, not a toolbar
2026-07-13 16:04:24 -07:00
gramps
6c214e46f5
fix: WEB text uses input-bg dark blue var(--bg-tertiary)
2026-07-13 15:59:07 -07:00
gramps
51795cf072
fix: WEB text dark blue #0d2137 on orange for contrast
2026-07-13 15:58:04 -07:00
gramps
a9152b3060
fix: WEB text in blue, keep orange button background
2026-07-13 15:56:46 -07:00
gramps
b86c67dbe8
fix: match WEB button color to SEND button for better contrast
2026-07-13 15:55:46 -07:00
gramps
9ed2c27159
fix: restore magnifying glass icon on WEB button
2026-07-13 15:55:01 -07:00
gramps
a8d8822ab0
fix: WEB in all caps to match SEND button
2026-07-13 15:54:34 -07:00
gramps
4ee2a1613c
fix: remove emoji from search button, was breaking monospace typeface
2026-07-13 15:54:01 -07:00
gramps
7c751294c1
fix: update input placeholder to match Ctrl+Enter binding
2026-07-13 15:52:57 -07:00
gramps
ebb613b68c
docs: update work state in AGENTS.md
2026-07-13 15:50:51 -07:00
gramps
fbe02b1956
feat: add copy/toolbar to user messages
...
- msg-toolbar now rendered for all roles, not just assistant
- addCopyButtons and addMessageToolbar applied to any message with content
2026-07-13 15:49:52 -07:00
gramps
cb3c33aa57
fix: match search-btn height to send-btn, add 'web' label
...
- search-btn now uses same font/font-size/font-weight as send-btn
- label is 'web 🔍 ' so the purpose is obvious
2026-07-13 15:48:19 -07:00
gramps
934f85e178
fix: use Ctrl+Enter for web search, not Shift+Enter
...
Shift+Enter is the universal convention for inserting a newline.
Ctrl+Enter is the convention for alternate submit (Gmail, Slack, etc.).
2026-07-13 15:46:42 -07:00
gramps
2ecfd1663d
fix: reset cumulative token count on page refresh
...
- Remove localStorage persistence for cumulativeTokens (starts at 0 each load)
2026-07-13 15:42:47 -07:00
gramps
b8713a516b
fix: scroll-fighting, 401 errors, session timeout 90->3600s
...
- scrollToTop() now respects user scroll position (100px threshold)
- resetScrollLock() called on new messages
- SESSION_TIMEOUT_SECONDS 90 -> 3600 (1 hour) to prevent mid-use expiry
- wrap 10 unprotected authFetch calls in try/catch to kill unhandled rejections
2026-07-13 15:39:44 -07:00
gramps
e9700137df
docs: add Paired Programming subsection
2026-07-13 11:23:56 -07:00
gramps
8a18714886
fix wiki links to use actual wiki URLs
2026-07-13 11:15:53 -07:00
gramps
f9b7ad0379
docs: link FAQ from README
2026-07-13 11:15:14 -07:00