Commit Graph
669 Commits
Author SHA1 Message Date
OpenClaw Sub-agent 509723c197 fix(invest): mobile chart — fixed height, sane scales, horizontal x labels, compact legend/points, Chinese help
Root cause of the squashed chart: canvas had a fixed height=90 attr and no container, so on narrow viewports Chart.js compressed everything — legend overlapped the plot, x labels tilted 45deg, y ticks degenerated (-1000% scale). Fix: relative h-72/h-80 container + maintainAspectRatio:false, grace 5%, maxTicksLimit, maxRotation:0, smaller points (r2/1.5), compact legend/tooltip, Chinese help text.
2026-08-02 08:28:08 +10:00
github-actions[bot] 24435c58df chore: update manifest image to 1.0.399 [skip ci] 2026-08-01 22:13:58 +00:00
OpenClaw Sub-agent b67a834def feat(invest): cost basis & P&L, AUD totals, chart ranges, per-ticker page, manual entry, tx search
P1:
- WAC cost basis per (portfolio, ticker): avg_cost / unrealized P&L / P&L%
  - transaction price when recorded, else trade-date market close (estimated, flagged)
  - dashboard: Unrealized P&L card + Avg Cost & P&L columns on holdings tables
  - fx: frankfurter.dev rates (USD/HKD->AUD, 24h cache, UA header required) -> AUD total on Total Value card
  - chart: 1M/3M/6M/YTD/1Y/ALL period buttons (all periods precomputed server-side, top-level payload stays YTD for compat)
P2:
- /invest/stocks/<ticker>/ per-ticker page: cross-account holdings, WAC, P&L, weight, theme, trade history
- manual transaction + cashflow entry forms (source=MANUAL, confidence=1.0)
- dashboard transaction search (?q= ticker/account) + add-transaction buttons
- tickers link to detail page; tabular-nums on all figures
- 8 new tests (WAC sell, estimated price, incomplete, per-portfolio agg, stock page, forms, search)
2026-08-02 08:09:58 +10:00
github-actions[bot] 911015e2f6 chore: update manifest image to 1.0.398 [skip ci] 2026-08-01 21:50:35 +00:00
OpenClaw Sub-agent 5252222674 feat(invest): P0 dashboard polish — intcomma amounts, ticker-aggregated risk table, unified mobile grid, tx source badges, drop dead invest/base.html
- Add django.contrib.humanize; apply intcomma to every currency amount across invest templates (dashboard, portfolio detail, transactions)
- get_risk_summary now aggregates top_positions by ticker (MRVL across MOMO+IBKR merges into one row with Accounts column), keeping Top 1/3/5 cards and table on the same basis
- Mobile: metric cards all 2-col (2x2 + 2+1 with Last Snapshot spanning full width), no more 1-col break
- Transactions show source badges: purple 🤖 AI (source ai/ocr), grey 手动, amber ⚠ 低置信 when confidence < 0.9
- Delete unused invest/base.html (dead nav; page extends GoLinks base.html)
- tailwind.config.js: add invest/jbot/routermon template dirs so their classes are scanned (text-[10px] etc. were silently missing)
2026-08-02 07:45:21 +10:00
github-actions[bot] 70973a063b chore: update manifest image to 1.0.397 [skip ci] 2026-08-01 13:27:16 +00:00
OpenClaw Sub-agent 8cd92812f7 feat: server-side thumbnails (Pillow/ffmpeg), 3D cover-flow carousel, fix preview close on iOS
- New /ui/files/{pk}/thumb/ endpoint: Pillow resize for images, ffmpeg first-frame for videos, disk-cached with per-record lock
- Grid & carousel render server thumbnails via <img> — fixes blank video thumbs on iOS Safari
- Carousel upgraded to 3D cover-flow: perspective rotateY/scale/opacity driven by scroll position
- Preview <video> gets playsinline + webkit-playsinline — fixes close button unusable after iOS fullscreen playback
- thumbnail_url exposed in serializer, upload response, and client JSON
- 3 new tests: thumb 200/cache, non-media 404, missing-file 404
2026-08-01 23:22:57 +10:00
github-actions[bot] 301224ed18 chore: update manifest image to 1.0.396 [skip ci] 2026-08-01 12:05:02 +00:00
OpenClaw Sub-agent ed4c8853a6 feat: Files page layout switcher — grid (Finder-style) & carousel (cover-flow) views
- Three layouts: list (unchanged) / grid / carousel, persisted in localStorage
- Grid: image thumbnails (lazy), video first-frame + play badge, doc icon fallback
- Carousel: scroll-snap horizontal track, desktop arrows, native swipe on mobile
- Click any card opens the existing preview modal (with prev/next navigation)
- Mobile-first: 2-column grid on phones, hidden carousel arrows on touch
- Pure frontend in list.html; no model/API changes
2026-08-01 22:00:37 +10:00
github-actions[bot] 7f10a90f10 chore: update manifest image to 1.0.395 [skip ci] 2026-08-01 11:41:23 +00:00
OpenClaw Sub-agent 815a5e3543 style: simplify action description to one-line Chinese hint 2026-08-01 21:37:03 +10:00
github-actions[bot] 2004dee25e chore: update manifest image to 1.0.394 [skip ci] 2026-08-01 11:31:49 +00:00
OpenClaw Sub-agent 3e1dd31bab fix: hide template description on Action tab, Discord-style message preview
- template-description box was shown on Action tab (JS never controlled it)
- Message preview now renders as a Discord-style chat bubble (avatar, author,
  dark background) with {query} highlighted as a chip
2026-08-01 21:27:19 +10:00
github-actions[bot] e2c76bd341 chore: update manifest image to 1.0.393 [skip ci] 2026-08-01 11:20:21 +00:00
OpenClaw Sub-agent c4a4b7a299 feat: Apple-style action link edit UI — hide JSON, card picker, live preview
- Hide action_config JSON field from the form (internal storage, not user-editable)
- Replace Action dropdown with an Apple-style radio card (💬 发消息到 Discord)
- Rename Message template → 消息内容 with plain-language help text
- Add live message preview that highlights {query} as a chip
- Tests: edit page renders card + Chinese labels, no JSON exposed (109 passed)
2026-08-01 21:16:00 +10:00
github-actions[bot] aa6a1a25fd chore: update manifest image to 1.0.392 [skip ci] 2026-08-01 11:02:23 +00:00
OpenClaw Sub-agent c7ba6e6fd3 fix: show Action badge for ACTION links in detail and list views
link_detail.html and _link_row.html only handled Template/LINK types,
so ACTION links fell through to the Custom badge. Add badge-action
branch + CSS so go/link/235/ (alias=ask) displays Action, matching the
Action tab in the link form.
2026-08-01 20:58:07 +10:00
github-actions[bot] 74d72b28a0 chore: update manifest image to 1.0.390 [skip ci] 2026-08-01 10:47:46 +00:00
OpenClaw Sub-agent b559cf6cba fix: migration must update existing ask LINK record (backup old chatgpt link)
Prod had an old ask link (LINK → chatgpt.com, id=235). get_or_create
would leave it as LINK, so go/ask/问题 would redirect to chatgpt instead
of sending to Discord. Switch to update_or_create and back up the old
chatgpt link to alias ask-chatgpt.
2026-08-01 20:47:08 +10:00
OpenClaw Sub-agent f2f8192fba refactor: make Ask a regular ACTION link instead of fixed route
Remove hardcoded /ask/ routes (core/urls.py), /api/ask/ (api_urls.py),
ask_views.py, and ask.html input page. Ask is now a normal Link record
(alias='ask', link_type=ACTION) created by data migration 0053, so it
behaves exactly like other action links: go/ask/问题 → catch-all →
execute_action → 302 to Discord, editable/deletable in the Links UI.

Tests updated: ask covered as ACTION link (redirect/dedup/empty-query).
2026-08-01 20:43:29 +10:00
github-actions[bot] 50b5c8ef9c chore: update manifest image to 1.0.388 [skip ci] 2026-07-31 13:42:05 +00:00
OpenClaw Sub-agent 7d89e91319 feat: action links send+redirect to Discord, no result page; 10-min dedup window 2026-07-31 23:37:36 +10:00
github-actions[bot] 56b391109f chore: update manifest image to 1.0.387 [skip ci] 2026-07-31 13:01:31 +00:00
OpenClaw Sub-agent 1c18f2b177 feat: add Action link type — configurable send-to-Discord links with UI form 2026-07-31 22:56:06 +10:00
github-actions[bot] c91112aed9 chore: update manifest image to 1.0.386 [skip ci] 2026-07-31 12:38:37 +00:00
OpenClaw Sub-agent 6be143d565 fix: use https universal link for open-discord button (discord:// dead on desktop) 2026-07-31 22:34:20 +10:00
github-actions[bot] 8b425d5485 chore: update manifest image to 1.0.385 [skip ci] 2026-07-31 12:27:24 +00:00
OpenClaw Sub-agent 1c4948b965 feat: add /ask/ quick-question page — mobile one-tap send to Discord via webhook 2026-07-31 22:22:14 +10:00
github-actions[bot] a5486eaaa5 chore: update manifest image to 1.0.383 [skip ci] 2026-07-31 01:54:54 +00:00
junv 9cefe20a26 Update dropdown style 2026-07-31 11:51:05 +10:00
github-actions[bot] fcff9039ae chore: update manifest image to 1.0.382 [skip ci] 2026-07-31 01:15:40 +00:00
junv 3c752b399c Update image logic 2026-07-31 11:11:19 +10:00
github-actions[bot] 5e289c29ba chore: update manifest image to 1.0.381 [skip ci] 2026-07-30 07:07:37 +00:00
junv 6bbc08ef52 Update md 2026-07-30 17:03:22 +10:00
junv 499c951b5e Update files page style 2026-07-30 17:03:22 +10:00
junv 2fb4c58771 update 2026-07-30 17:03:22 +10:00
junv ac35720c4f Update menu 2026-07-30 17:03:22 +10:00
github-actions[bot] 28140e50d8 chore: update manifest image to 1.0.380 [skip ci] 2026-07-30 06:00:50 +00:00
junv 53c1b28a57 Update readme 2026-07-30 15:56:31 +10:00
junv 921fd1e0cc Update links 2026-07-30 15:56:31 +10:00
github-actions[bot] 5292587807 chore: update manifest image to 1.0.379 [skip ci] 2026-07-30 04:32:00 +00:00
junv 10786ecf76 Update UI 2026-07-30 14:26:41 +10:00
github-actions[bot] f8bd96fe8c chore: update manifest image to 1.0.378 [skip ci] 2026-07-30 03:29:29 +00:00
junv 6b967e501f Update 2026-07-30 13:25:36 +10:00
junv d857eb58c5 Add bookmarks 2026-07-30 13:25:36 +10:00
github-actions[bot] d5fd6b5cac chore: update manifest image to 1.0.377 [skip ci] 2026-07-29 03:29:43 +00:00
junv 80d0ef5da0 Update style 2026-07-29 13:23:38 +10:00
github-actions[bot] 0e333f562c chore: update manifest image to 1.0.376 [skip ci] 2026-07-29 02:01:26 +00:00
junv b1acb24d81 Update UI 2026-07-29 11:57:12 +10:00
github-actions[bot] 361bd93788 chore: update manifest image to 1.0.375 [skip ci] 2026-07-28 11:51:33 +00:00