📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Backend
└ BarkFluff.Web ✅3 ✏️2
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
refactor(web): split messenger UI modules
📂 Backend
└ BarkFluff.Web ✅3 ✏️2
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Backend
└ BarkFluff.Web ✅3 ✏️6
📂 /
└ .gitignore ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
build(web): bundle messenger app with esbuild
📂 Backend
└ BarkFluff.Web ✅3 ✏️6
📂 /
└ .gitignore ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Backend
└ BarkFluff.Web ✏️1
👤 Liis17
fix(web): publish fresh browser bundles in Docker image
📂 Backend
└ BarkFluff.Web ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 .github
└ workflows ✏️1
📂 Backend
└ BarkFluff.Web ✏️7
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
fix(web): complete app bundle workflow
📂 .github
└ workflows ✏️1
📂 Backend
└ BarkFluff.Web ✏️7
📂 Obsidian
└ ClaudeVault ✏️1
✅ Сборка успешна
🐋 BarkFluff.Web
📌 Ветка:
🔗 Коммит:
👤 Автор: Liis17
🏷️ Тег:
🐋 BarkFluff.Web
📌 Ветка:
dev🔗 Коммит:
84d0f8a40c828a272390456a784344c0d2b17b4e👤 Автор: Liis17
🏷️ Тег:
docker.barkfluff.com/barkfluff-web-dev:1.0.36📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Windows
└ BarkFluff.Client.Core ✅5 ✏️2
👤 Liis17
feat(winui): port the message markdown dialect to the Core layer
Android and the web client both render message text as markdown, while
WinUI shows the raw source. Port the same dialect into BarkFluff.Client.Core
as a UI-free parser so the WinUI renderer and the plain-text previews can
share it.
Rules and their order follow MarkdownRenderer.kt: inline code is protected
first, then html tags, bold, strike, italic, links and bare-url autolinking.
Bold with stars takes the web variant of the pattern, because the Android
...
📂 Windows
└ BarkFluff.Client.Core ✅5 ✏️2
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 /
├ .editorconfig ✅1
└ .gitignore ✏️1
📂 Backend
└ BarkFluff.Web ✅9 ✏️10
📂 .github
└ workflows ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
Merge branch 'dev' of Liis17/BarkFluff into dev
📂 /
├ .editorconfig ✅1
└ .gitignore ✏️1
📂 Backend
└ BarkFluff.Web ✅9 ✏️10
📂 .github
└ workflows ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Windows
├ BarkFluff.Client.WinUI ✅1 ✏️1
└ BarkFluff.Client.Core ✏️1
👤 Liis17
feat(winui): render message markdown in the chat bubble
MarkdownTextBlock turns the parsed document into a visual tree: headings,
lists and rules go into RichTextBlock, while quotes, code blocks, tables
and html images need their own containers, the same way the Android
renderer builds separate views.
Each line is its own RichTextBlock so the inline-code highlight ranges are
counted within a single paragraph. Plain messages skip the tree entirely
and get a single TextBlock, which keeps the virtualized feed cheap.
...
📂 Windows
├ BarkFluff.Client.WinUI ✅1 ✏️1
└ BarkFluff.Client.Core ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
docs(obsidian): describe markdown rendering in the WinUI bubbles
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Windows
└ BarkFluff.Client.WinUI ✏️1
👤 Liis17
fix(winui): scale html image height when its width is clamped
📂 Windows
└ BarkFluff.Client.WinUI ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
└ core ✅6 ✏️1
👤 Liis17
Add variant-aware TLS transport foundation
📂 Android
└ core ✅6 ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
├ Barkfluff.Client.Android ✅3 ✏️10
└ core ✏️3
👤 Liis17
Route Android clients through TLS policy
📂 Android
├ Barkfluff.Client.Android ✅3 ✏️10
└ core ✏️3
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
├ core ✅1 ✏️2
└ Barkfluff.Client.Android ✏️7
👤 Liis17
Add self-signed node certificate approval
📂 Android
├ core ✅1 ✏️2
└ Barkfluff.Client.Android ✏️7
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
└ Barkfluff.Client.Android ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
Document Android TLS trust policy
📂 Android
└ Barkfluff.Client.Android ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
├ Barkfluff.Client.Android ✅1 ✏️4
└ core ✅4 ✏️5
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
Harden TLS endpoint refresh and coverage
📂 Android
├ Barkfluff.Client.Android ✅1 ✏️4
└ core ✅4 ✏️5
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
└ core ✏️3
👤 Liis17
Isolate cleartext gRPC to debug policy
📂 Android
└ core ✏️3
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Android
├ core ✅2 ✏️5 ❌2
└ Barkfluff.Client.Android ✏️9
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
Cover TLS variants and bound node refresh
📂 Android
├ core ✅2 ✏️5 ❌2
└ Barkfluff.Client.Android ✏️9
📂 Obsidian
└ ClaudeVault ✏️1
📦 Liis17/BarkFluff [dev]
👤 Liis17
📂 Windows
├ BarkFluff.Client.Core ✅5 ✏️2
└ BarkFluff.Client.WinUI ✅1 ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
👤 Liis17
Merge branch 'dev' of Liis17/BarkFluff into dev
📂 Windows
├ BarkFluff.Client.Core ✅5 ✏️2
└ BarkFluff.Client.WinUI ✅1 ✏️1
📂 Obsidian
└ ClaudeVault ✏️1
✅ Сборка успешна
📱 Android Client v0.0.114 beta
📌 Ветка:
🔗 Коммит:
👤 Автор: Liis17
📱 Android Client v0.0.114 beta
📌 Ветка:
dev🔗 Коммит:
09b4a8b2c05829c702d67225fda030e262afc686👤 Автор: Liis17
📦 Liis17/BarkFluff [claude/message-forward-reply-2qiobx]
👤 claude
📂 Backend
└ BarkFluff.Messages ✅2 ✏️3
📂 Android
└ core ✏️2
📂 Shared
└ BarkFluff.Proto ✏️2
👤 claude
feat(messages): separate reply from forward in schema and contracts
Reply and forward were the same thing on the backend: both travelled through
OutgoingMessage.forwarded_message_id and were stored as a ForwardedMessage
attachment holding a snapshot of the original. Clients told them apart with a
heuristic ("is the original in the currently loaded page?"), which misrenders a
reply as a forward once the history scrolls away.
Introduce the schema and contracts for a real split:
...
📂 Backend
└ BarkFluff.Messages ✅2 ✏️3
📂 Android
└ core ✏️2
📂 Shared
└ BarkFluff.Proto ✏️2
📦 Liis17/BarkFluff [claude/message-forward-reply-2qiobx]
👤 claude
📂 Backend
└ BarkFluff.Messages ✅2 ✏️5
📂 Shared
└ BarkFluff.Shared.Exceptions ✅2
👤 claude
feat(messages): send replies by reference and forward several messages at once
SendMessage now distinguishes the two actions instead of funnelling both through
one field:
- reply_to_message_id is validated and stored on Message.ReplyToMessageId. No
snapshot is taken, so the quote stays live.
- forwarded_message_ids accepts up to 20 originals and keeps the client's order
in ForwardedOrder. Each snapshot now records the original's chat, sender and
send time.
...
📂 Backend
└ BarkFluff.Messages ✅2 ✏️5
📂 Shared
└ BarkFluff.Shared.Exceptions ✅2