β¨ feat: add task template tracking#14517
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
π‘ Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ba1eaa3c7c
βΉοΈ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with π.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
Codecov Reportβ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## canary #14517 +/- ##
==========================================
+ Coverage 68.94% 69.12% +0.18%
==========================================
Files 2564 2563 -1
Lines 224036 224090 +54
Branches 22732 23666 +934
==========================================
+ Hits 154453 154904 +451
+ Misses 69436 69037 -399
- Partials 147 149 +2
Flags with carried forward coverage won't be shown. Click here to find out more.
π New features to boost your workflow:
|
# π LobeHub Release (20260509) **Release Date:** May 9, 2026 **Since v2.1.56:** 236 merged PRs Β· 19 contributors > Agent Task System reaches general availability, the Agent Signal pipeline runs nightly self-review with skill-aware policies, the heterogeneous-agent runtime crosses replica boundaries, inline documents become a first-class context source, and bot platforms expand across Messager, Line, and Telegram. --- ## β¨ Highlights - **Agent Task System (GA)** β End-to-end task execution platform: templates, tracking, comment tools, parent reassignment, scheduled cron, and dependency-ordered batch runs. (#14540, #14515, #14517, #14272, #14246, #14418, #14403, #14488) - **Agent Signal nightly self-review** β Wired self-review loop with prompt + DB support, exponential-backoff retry on receipt listing, skill-aware policy, and improved skill-intent detection. (#14543, #14542, #14281, #14409, #14526, #14437) - **Inline documents in KB tool** β BM25 search and `docs_*` read for inline document grounding; agent documents usable as VFS. (#14494, #14222) - **Inline agent cards in chat** β `lobeAgents` markdown tag renders agent profile cards inline; clickable card after `createAgent`. (#14495, #14493) - **Heterogeneous agent runtime** β Cloud hetero exec pipeline steps 3+4 land, persistence recovers across Vercel replicas, server-side ingest/finish handler, and `lh hetero exec` CLI. (#14486, #14539, #14444, #14431) - **Bot platforms expand** β Messager, Line, DM pair policy, and messenger DB tables; Telegram API path restored. (#14442, #14207, #14211, #14496, #14519) - **Visual analysis tool** β New visual understanding tool, with trigger tracking and flattened schema. (#14378, #14399, #14550) - **DeepSeek V4 Pro as OSS default** β OSS deployments ship with DeepSeek V4 Pro by default; DeepSeek Anthropic runtime supported. (#14555, #14312) --- ## ποΈ Core Agent & Architecture ### Agent Task System - **Task System GA** β End-to-end execution platform now available. (#14540) - **Templates, comments, reparenting** β Template tracking, comment tools, and parent reassignment. (#14515, #14517, #14488) - **Cron + dependency-ordered runs** β Scheduled status with cron editor and dependency-ordered subtask batches. (#14246, #14418, #14272) - **Inspector + chip UI + batch tasks** β Task Inspector/Render registry, batch `createTasks`/`runTasks`, and chip-based agent-documents inspector. (#14403, #14404) - **Recommend templates regardless of brief count** β Recommendations no longer suppressed when briefs are sparse. (#14508) - **Scheduling resilience** β Manual run no longer eats next scheduled tick; recurring tasks survive brief resolution. (#14304, #14348) - **Brief synthesis** β Auto-synthesize topic briefs; brief actions revamp; mute resolved-brief icon on home. (#14324, #14228, #14452) - **Task list & detail polish** β Topic operation ID exposed; task drawer Gateway reconnect. (#14282) ### Agent Signal pipeline - **Nightly self-review wired** β Prompt + DB support for the self-review loop. (#14543) - **Self-review activities push to briefs** β Activities during nightly self-reflection now create briefs. (#14437) - **Skill management policy** β New policy for Skill management running inside Agent Signal. (#14281) - **Skill intent detection & routing** β Improved detection plus direct intent handling when `hintIsSkill`. (#14409, #14526) - **Document tool outcome rendering** β Decision view restores missing document tool outcomes. (#14534) - **Exponential backoff retry** β Listing signal receipts retries with jittered backoff. (#14542) - **Easier-to-use signals** β Structural simplification + recent-activities surface for receipts. (#14290, #14326, #14407) ### Heterogeneous agent runtime - **Cloud hetero exec pipeline (steps 3 + 4)** β Refactor lands the next two stages of the cloud hetero agent execution pipeline. (#14486) - **Persistence recovery on Vercel** β Hetero state recovered across replica boundaries. (#14539) - **Server-side ingest/finish + persistence** β `aiAgent.heteroIngest` / `heteroFinish` handlers. (#14444) - **`lh hetero exec` CLI** β Standalone heterogeneous agent runs from CLI. (#14431) - **Gateway round-trip loading** β `execAgentTask` keeps the input box in loading state through the full round-trip. (#14503) - **Provider SDK type routing** β Provider routing now respects SDK type. (#14520) - **DeepSeek reasoning preserved** β `reasoning_content` preserved in OpenAI-compatible runtime for DeepSeek models. (#14546) ### Knowledge & inline docs - **KB tool BM25 + docs read** β BM25 search and `docs_*` read integrated for inline documents. (#14494) - **Agent documents as VFS** β FS-compatible output for agent documents. (#14222) - **`lobeAgents` markdown tag** β Inline agent cards rendered from a markdown tag. (#14495) - **Clickable agent card after `createAgent`** β Mentions and recommendations become clickable. (#14493) - **ExplorerTree** β Generic tree component built on `@pierre/trees` for reusable explorer surfaces. (#14094) - **Local file mention snapshots** β Mentions can now snapshot local files. (#14278) ### Architecture - **Agent Hono routes** β New agent routes added on Hono. (#14535) - **`/api/agent` migrated to Hono** β Remaining `/api/agent` routes finish their migration. (#14478) - **Agent marketplace merged into web-onboarding** β Reduces package fragmentation. (#14514) - **Producer pipeline extracted** β Shared package for the producer pipeline. (#14425) - **`agentDispatcher.selectRuntimeType`** β New runtime selection abstraction. (#14428) - **pnpm v11 migration** β Workspace consolidated. (#14316) - **Browser-compatible frontmatter parser** β Replaces `gray-matter`. (#14435) --- ## π± Platforms & Integrations - **Messager support** β New messager package wired into the chat surface. (#14442) - **Messenger DB tables** β IM bot integration gains its persistence layer. (#14496) - **Line bot** β Initial Line support and downstream optimization. (#14207, #14448) - **DM pair policy** β Group/DM pair-based delivery. (#14211) - **Telegram API restored** β Missing Telegram API path reconnected. (#14519) - **xAI Responses tools stabilized** β Plus unsupported parameter handling. (#14462, #14445) - **Volcengine websearch via ResponseAPI** β Built-in websearch for Volcengine. (#14216) --- ## π€ Models & Providers - **DeepSeek V4 Pro default for OSS** β OSS distribution defaults to DeepSeek V4 Pro. (#14555) - **DeepSeek Anthropic runtime** β Anthropic-shape runtime support for DeepSeek. (#14312) - **GPT-5.5 / GPT-5.5 Pro** β New OpenAI tier. (#14142) - **Grok 4.20 / Grok 4.3 / LobeHub-hosted Grok 4.3** β (#14253, #14382, #14446) - **Gemma 4 + provider settings normalization** β (#13313) - **gpt-image-2 + step-image-edit-2** β (#14253, #14329) - **Model bank refresh + original-pricing display** β Batch model updates and pricing surfaces. (#14070, #14391) - **Hunyuan migrated to TokenHub for Hy3 Preview** β (#14108) - **Reject lobehub model ids no longer in the bank** β (#14261) - **Hide runtime-only aliases** β Runtime-only model aliases no longer leak into the model picker. (#14552) --- ## π₯οΈ User Experience ### Onboarding - **Shared prefix steps** β Language and privacy extracted as shared prefix steps. (#14538) - **Identity intervention card simplified** β Plus tool result renders cleanup. (#14505, #14506) - **Welcome polish + web-onboarding tool UI** β (#14475) - **Templates fetched from market API** β (#14286) - **Virtual model id for default onboarding model** β (#14311) - **Skip / mode-switch footer behind feature flag** β Footer guarded for desktop and web initialization. (#14560) ### Home & navigation - **Home recents performance** β Recents refresh periodically and inline task status; brief and task-template fetch overhead trimmed. (#14518, #14516) - **Home refactor + skill-connect recommendations** β Restructured home with skill-connect recommendation system. (#14266, #14214) - **Tasks in agent sidebar** β Tasks moved from welcome card into the sidebar list. (#14500) - **Sidebar collapse persists** β Home sidebar collapse state stored. (#14473) - **Agent-specific topic grouping** β Plus improved empty state and agent identity in topic search. (#14225) - **MentionMenu scroll fix** β Mention menu no longer clips inside chat input. (#14533) ### Conversation & chat - **Follow-up chips fill input** β Clicking a follow-up chip now fills the input instead of sending immediately. (#14536) - **Quick-reply chips below assistant messages** β (#14350) - **Inline single-tool assistant group + leading sentence promotion** β (#14244) - **Assistant-group rendering** β Per-segment content overrides flow into MessageContent. (#14504) - **Tool call timer fix** β Timer no longer resets when tool calls collapse or expand. (#14513) - **Streaming re-render reduction** β Reference stabilization and self-subscribing components. (#14470) - **Topic chat drawer feedback input** β (#14392) ### Skills, agents, devtools - **Managed skill folders** β Agent view displays managed skill folders and aligns delete confirmations. (#14553) - **Review tab + bulk git diffs** β New Review tab with bulk diffs; gating uses effective working directory. (#14334, #14512) - **Devtools gallery rebuild** β Plus Review polish, queue-tray images. (#14423) - **Agent mock devtools** β Playback & fixture viewer. (#14436) ### Desktop & CLI - **App tray visibility setting** β (#14463) - **Notification settings in desktop** β (#14491) - **Multimodal input across CLI / shared spawn / desktop** β (#14433) - **CLI bot + userId guide** β (#14258) --- ## π§ Tooling - **Visual analysis tool** β New visual understanding tool with flattened schema. (#14378, #14550) - **GitHub marketplace tool UI** β (#14420) - **Drop "Local" prefix and `____builtin` suffix from tool names** β (#14364, #14289) - **Sanitize provider tool names** β Avoids invalid characters from external providers. (#14510) - **Generation moderation context** β Moderation context passed through the generation pipeline. (#14541) - **Visual analysis trigger tracking** β (#14399) - **Claude thinking signature sanitization** β History signatures sanitized when replaying Claude conversations. (#14499) - **Responses input media sanitization** β Assistant media sanitized in Responses input. (#14497) --- ## π Security & Reliability - **Security:** Removed the `/webapi/proxy` route and dead URL-manifest plugin code to shrink the SSRF surface. (#14549) - **Security:** Sessions revoked after password reset. (#14424) - **Reliability:** Added `prompt_cache_key` to OpenAI chat requests for stable cache hits. (#14349) - **Reliability:** `onFinish` now fires even when the browser tab is backgrounded mid-SSE stream. (#14461) - **Reliability:** Better-auth session refetch preserves user fields rather than overwriting them. (#14531) - **Reliability:** User-memory queries sanitize backticks; user-memory errors now explicitly injected so failures stay visible. (#14524, #14525) - **Reliability:** Auth captcha retries handled; input loading unsticks on `auth_failed` and recoverable `auth_expired`. (#14346, #14419) - **Reliability:** Trace snapshot finalized on error path. (#14440) - **Reliability:** Drop `switchTopic` race under rapid sidebar clicks. (#14115) - **Reliability:** PDF chunking logic fixed to prevent vectorization failure. (#14327) - **Performance:** Marketplace fork uses a batched API for parallel installs. (#14537) - **Performance:** Review tab open latency cut ~9Γ on large dirty trees. (#14338) --- ## π₯ Contributors Huge thanks to **18 contributors** who shipped **236 merged PRs** this cycle. @hezhijie0327 Β· @sxjeru Β· @yueyinqiu Β· @octo-patch Β· @hardy-one Β· @Coooolfan Β· @CanYuanA Β· @BillionClaw Β· @arvinxx Β· @tjx666 Β· @Innei Β· @neko Β· @AmAzing129 Β· @rdmclin2 Β· @lijian Β· @sudongyuer Β· @rivertwilight Β· @cy948 Plus @lobehubbot for i18n and translation maintenance. --- **Full Changelog**: v2.1.56...release/weekly-20260509
After #14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from #14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
The recommendation surface is about to be redesigned, so the analytics funnel added in #14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from #14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult).
After #14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from #14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in #14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from #14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After #14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from #14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in #14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from #14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After #14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from #14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
* π₯ chore: drop task template tracking The recommendation surface is about to be redesigned, so the analytics funnel added in lobehub#14517 is being removed up front. A fresh tracking schema will land alongside the redesigned UI. - Delete `analytics.ts` plus its test and the tracking-focused `TaskTemplateCard.test.tsx`. - Drop `RecommendedTaskTemplate` / `TaskTemplateRecommendationSource` / `TaskTemplateFallbackPool` and revert the service to plain `TaskTemplate[]`. - Strip impression, dismiss, create-clicked/result and skill-connect-clicked/result calls from `TaskTemplateCard.tsx`, while keeping the createTask + navigate-to-task flow from lobehub#14540. - Remove `recommendationBatchId` / `userInterestCount` / `onCreated` plumbing from `useDailyBriefRecommendationsUI`, `DailyBriefRecommendationsView`, and the card props. - Revert `useSkillConnection` to the pre-tracking variant (no onConnectResult / SkillConnectionResult). * π fix: remove created template from recommendation cache After lobehub#14540 changed the create-task flow to auto-navigate to `/task/{id}`, removing the `onCreated` plumbing from lobehub#14517 in the same sweep meant the SWR recommendation cache was never mutated on success. Combined with the server-side `recordCreated` being a no-op and `listDailyRecommend` not excluding created IDs, returning to Home showed the same recommendation as actionable again β letting users trigger duplicate scheduled tasks from the same template. Re-add the minimal cache-eviction plumbing (no analytics): - TaskTemplateCard exposes `onCreated` and calls it on success - useDailyBriefRecommendationsUI shares `removeTemplateFromList` for both dismiss and created flows - DailyBriefRecommendationsView passes `onCreated` through
π» Change Type
π Related Issue
Fixes LOBE-8190
π Description of Change
Adds client-side analytics for the Task Template recommendation funnel:
matchedorfallback, with fallback pool metadata.π§ͺ How to Test
Result: 26 tests passed.
πΈ Screenshots / Videos
N/A. Analytics-only behavior change.
π Additional Information
PostHog does not need event pre-registration by default. After deployment, verify new events in Live Events before creating the recommendation, skill connection, and dismiss funnels.