Feat/new home#3453
Conversation
🧪 BenchmarkShould we run the Virtual MCP strategy benchmark for this PR? React with 👍 to run the benchmark.
Benchmark will run on the next push after you react. |
Release OptionsSuggested: Patch ( React with an emoji to override the release type:
Current version:
|
There was a problem hiding this comment.
8 issues found across 74 files
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
There was a problem hiding this comment.
1 issue found across 5 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
Replaces the previous agents-list home with a tile-board centered on three preset tiles (brand context, landing page, error monitoring). Adds Figma-exported SVG task thumbnails, capybara accent, and a subtle background pattern. Home renders the chat composer on top with tiles below when activated, persisted per-org in localStorage. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Tasks panel sidebar grows a "new" mode showing five preset cards (New chat, Extract brand context, Create landing page, Set up error monitoring, Import Deco). Preset cards prefill a chat, pin the matching home tile, and navigate to the new thread. Panel open/closed state is now per-route — closing the panel inside a chat doesn't follow you to home and vice versa. URL ?tasks=0|1 seeds the initial value for refresh-after-close to stay closed. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds the preset-tasks server: definition registry (brand context, landing page, error monitoring), brand-context workflow, org-scoped routes (/api/:org/preset-tasks, /api/:org/home-board), and Kysely storage tables for preset-task runs and home-board pin state. mesh-sdk exposes preset task definitions and helpers so the client can render the matching tiles and start preconfigured chats. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…tool plumbing Three new agents with dynamic instructions, paired with decopilot built-in tools for each (brand-context setup/confirm/helpers, system-health, web-developer). Wires agent dispatch through the existing decopilot routes. Adds the auto-install flow (system-health + GitHub) with OAuth handshake hook and a shared install-flow dialog. Chat message rendering grows specialized tool-call parts for brand-context previews and write-html-page (rendered in the new web-page tab). Misc: configure-trigger, generate-id, kv/virtual storage touches, and test updates kept together with the agent work that needed them. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Lint: moved render-time .current accesses into useEffect (with the project's standard oxlint-disable comment for imperative effects) in write-html-page.tsx and web-page-tab.tsx. Matched the sibling useAutoInstallGitHub suppression pattern in useAutoInstallSystemHealth to keep the two hooks consistent. Knip: removed orphaned agent built-in tools that were left behind when dispatch-run.ts kept main's harness-refactor version instead of the branch's inline tool registration. Also dropped a few unused exports the branch surfaced (resolveBrandContextPrompt, getBrandContextAgentMode, getSystemHealthAgentConnectionId, BRAND_EXTRACTED_TOPIC export). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Changed the user profile route to use the authenticated user's email instead of a hardcoded value, enhancing security. - Refactored the home board auto pin slot logic to ensure it correctly calculates the maximum bottom position, improving tile placement accuracy. - Updated constants to derive all sizes from SIZE_PRESETS for better maintainability. - Modified the snapshotAndPatch function to return a promise and handle cache updates more effectively, ensuring smoother state management during mutations. - Enhanced error handling in the OAuth handshake process to provide clearer feedback on token persistence failures.
Row-by-row scan was O(maxBottom) — a stale tall tile could spin the loop for huge y values. Walk by blocker bottom instead; terminates in ≤ tiles.length + 1 iterations. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
162ad9c to
c83d481
Compare
- Deleted the brand-context agent helpers and system-health agent files as they are no longer needed. - Cleaned up related imports and references in the codebase to streamline the project structure.
There was a problem hiding this comment.
6 issues found across 58 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
- Deleted unused web-developer related components and tools from the codebase, including `WriteHtmlPagePart` and associated functions. - Enhanced the `DesktopSandboxProvider` to include health checks for sandbox URLs, ensuring stale entries are properly evicted and respawned when necessary. - Updated tests to reflect changes in sandbox management and health probing logic, ensuring robust handling of daemon failures.
There was a problem hiding this comment.
1 issue found across 14 files (changes from recent commits).
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/mesh/src/link-daemon/sandbox-provider.ts">
<violation number="1" location="apps/mesh/src/link-daemon/sandbox-provider.ts:133">
P2: Use liveness endpoint here. `/health` is not the designated probe path for this check. Probe `/health/live` so cache-hit reuse follows the health contract.
(Based on your team's feedback about using /health/live for liveness and /health/ready for readiness.) [FEEDBACK_USED]</violation>
</file>
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
- Added a check in the suggested actions route to filter agents by organization ID, preventing cross-organization metadata leakage. - Updated the memory handling in decopilot to correctly identify the first non-system message, ensuring compliance with Anthropic's requirements for message roles. - Improved error handling in built-in tools to manage state and cache more effectively during auto-restart scenarios. - Refined the brand context list to ensure proper handling of result items, enhancing the user experience in chat message rendering. - Adjusted thread conversation key generation to handle cases where user IDs may be undefined, improving stability in the UI. - Introduced a new method in the DesktopSandboxProvider to clear in-process cache without contacting the daemon, optimizing performance during auto-restart operations.
There was a problem hiding this comment.
1 issue found across 9 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
- Introduced `scheduleFrame` and `cancelFrame` functions to handle animation frame scheduling in a cross-platform manner, ensuring compatibility with environments lacking `requestAnimationFrame`. - Updated the `ThreadConnection` class to utilize these new functions, enhancing performance and reliability during message processing.
…ndling - Modified the `createVmTools` function to directly return the updated content after an edit, enhancing the user experience by providing immediate feedback. - Improved error handling to ensure that the edit success is surfaced even if the follow-up read fails, maintaining a best-effort approach for previews. - Updated the daemon's edit handler to include the updated content in the response, streamlining the data flow between the daemon and the VM tools.
- Updated the suggested actions route to utilize studio pack agents for improved task descriptions based on agent context. - Introduced a new function to describe thread states, enhancing the clarity of suggested actions based on message content. - Added new task description resolvers for various studio pack agents, providing more relevant suggestions for user actions. - Refactored the suggestion generation logic to support asynchronous processing, improving performance and responsiveness.
There was a problem hiding this comment.
1 issue found across 2 files (changes from recent commits).
Tip: Review your code locally with the cubic CLI to iterate faster.
Re-trigger cubic
This commit removes the HomeBoardStore, associated routes, and all related UI components from the application. The home board feature has been deprecated, and its removal simplifies the codebase. All references to home board tiles and their management have been eliminated, including constants and types related to tile rendering. The changes also include updates to the app's main routing and API structure to reflect this removal.
…face This commit removes the typed `kvGet` and `kvSet` functions from the `KVStorage` interface, simplifying the codebase by eliminating unnecessary abstractions. The changes streamline the storage access methods, focusing on direct interactions with the `KVStorage` implementation.
|
You're iterating quickly on this pull request. To help protect your rate limits, cubic has paused automatic reviews on new pushes for now—when you're ready for another review, comment |
This commit enhances the error handling in the `createSuggestedActionsRoutes` function. It adds a fallback mechanism for the task description when resolving the studio pack task description fails, ensuring that a default reply message is used instead. This change improves the robustness of the application by preventing potential runtime errors in scenarios where the task description cannot be retrieved.
This commit introduces a new `ImportDecoSiteBanner` component to the home page, allowing Deco users to import their sites. It includes a query to check if the user is a Deco user and conditionally renders the import banner. Additionally, the `ImportFromDecoDialog` is integrated to handle the import process. The layout has been adjusted to accommodate these new features while maintaining responsiveness for mobile users.
This commit updates the suggested actions feature by adding an agent icon to the display. The `createSuggestedActionsRoutes` function now includes an icon property for agents, and the `TasksSection` component has been modified to render the agent's avatar alongside their name and description. This improves the visual representation of suggested actions, making it easier for users to identify agents at a glance.
This commit improves the task description resolution logic in the `studio-pack` module. It refines the conditions under which task descriptions are generated for various agents, ensuring more accurate and context-aware messages. Additionally, it introduces a new `isStale` function to determine the freshness of data, enhancing the overall user experience by providing relevant prompts based on the state of the user's agents and connections.
This commit refines the object storage binding logic in the `resolve-org-from-path` middleware to ensure it correctly rebinds to the organization associated with the request path. It also introduces a new test case to verify that object storage is properly updated even when prebound to a stale organization. Additionally, the `createSuggestedActionsRoutes` function has been updated to improve the resolution of task descriptions, ensuring more accurate suggestions for users. The `TasksSection` component now supports toggling between viewing suggestions and all tasks, enhancing user interaction.
- Added a new design plan for sandbox repo-cache and snapshots, detailing the architecture and goals for loading and saving tarballs in the sandbox daemon. - Introduced API routes for managing studio pack checklists, including onboarding checklists for various agents and storefront management. - Created components for adding storefronts, installing GitHub MCP connections, and setting up site monitoring, enhancing the user experience for managing storefronts. - Implemented hooks and utilities for auto-installing GitHub connections and managing state for checklists, improving integration with GitHub services.
- Added new routes for managing Studio Pack checklists and welcome messages, improving onboarding for agents. - Integrated the new routes into the existing organization-scoped API, allowing for streamlined access to checklist and welcome functionalities. - Removed outdated storefront monitoring logic from the checklist state, simplifying the overall structure. - Introduced a catalog of GitHub automations for storefronts, enhancing the automation capabilities within the Studio Pack.
|
@cubic-dev-ai review |
@pedrofrxncx I have started the AI code review. It will take a few minutes to complete. |
- Deleted the Studio Pack onboarding checklist items from the agent manager, streamlining the code and focusing on core functionalities. - Adjusted the agent manager's structure to reflect the removal of these items, ensuring clarity and maintainability.
- Deleted several SVG files including task-brand.svg, task-import-deco.svg, task-landing.svg, task-monitoring.svg, and task-new-chat.svg to streamline the asset library. - Removed the preset task types from the mesh SDK, ensuring the codebase is cleaner and more maintainable by eliminating outdated and unused types.
- Introduced a new Storefront Manager agent to streamline checklist management for storefronts, allowing for dynamic state updates based on organization data. - Replaced outdated logic in the checklist routes with a more efficient resolution method for storefront states, including GitHub connection checks and automation configurations. - Added caching for rapid refetching of checklist data, improving performance during user interactions. - Enhanced API routes for managing welcome messages and suggested actions, ensuring better integration with the overall Studio Pack functionality.
What is this contribution about?
Screenshots/Demonstration
How to Test
Migration Notes
Review Checklist
Summary by cubic
Rebuilt the home around preset tasks and a server‑driven task flow; removed the legacy home board. Added Studio Pack onboarding with cached checklists and welcome threads, a Storefront Manager checklist and storefront setup flow, and a publish‑gated web‑page preview with coalesced HTML writes.
New Features
pages/<slug>.htmlwrites with one flush per step and rAF fallback./health, evict stale, auto‑restart); threadslistWithLastMessagepowers suggestions; optional model tiers viatryResolveTier; object storage always rebinds to the path org; brand‑context helpers exported in@decocms/mesh-sdk; unused preset‑task types and SVGs removed; bumped@decocms/sandboxto 0.5.6.Migration
DECO_SYSTEM_HEALTH_MCPto your system‑health MCP URL.kvGet/kvSetremoved); KV storage must be available for suggested‑actions, preset‑task state, and checklists.Written for commit 43d3da5. Summary will update on new commits. Review in cubic