• Mohamed Aziz Mejri's avatar
    Automatically read logs as tool-call (#2012) · 66421906
    Mohamed Aziz Mejri 提交于
    <!-- This is an auto-generated description by cubic. -->
    ---
    ## Summary by cubic
    Add a central log store and a new read_logs tool so the agent can fetch
    recent client, server, build-time, and network logs on demand, with a
    dyad-read-logs UI tag that shows progress and results in chat. This
    improves debugging by giving the agent a filtered snapshot of logs at
    the time of the call.
    
    - **New Features**
      - Central in-memory log store (per app, capped at 1000 entries).
    - PreviewIframe and runtime forward client, network, build-time, and
    server logs to the store via IPC; Supabase logs included.
    - New read_logs agent tool with filters: type, level, searchTerm, limit;
    returns a formatted snapshot and emits dyad-read-logs with results.
    - Added dyad-read-logs custom tag and DyadLogs component for collapsible
    output with pending/aborted indicators and result counts.
    - New IPC channels (add-log, clear-logs) whitelisted in preload, handled
    in main, and exposed via IpcClient.addLog and clearLogs.
      - E2E test for local agent validates filtered log reads.
    
    - **Bug Fixes**
    - Fixed missing forwarding of network-error logs from PreviewIframe to
    the central store.
    - Clear logs on app restart and deletion to prevent stale data and
    memory growth.
    
    <sup>Written for commit ab52f494158cea54f5e996349097abb597b1fd92.
    Summary will update on new commits.</sup>
    
    <!-- End of auto-generated description by cubic. -->
    
    <!-- greptile_comment -->
    
    <h3>Greptile Summary</h3>
    
    
    - Implements centralized log store and `read_logs` agent tool enabling
    AI to fetch console logs on demand for debugging with comprehensive
    filtering options (time window, log type, level, source name, search
    terms)
    - Integrates log collection from client console, network events, and
    server stdout/stderr through IPC channels, forwarding logs to main
    process store with 1000-entry circular buffer per app
    - Adds `dyad-read-logs` UI component for collapsible log display in chat
    with proper state management and visual indicators for
    pending/aborted/completed states
    
    <h3>Important Files Changed</h3>
    
    
    | Filename | Overview |
    |----------|----------|
    | `src/components/preview_panel/PreviewIframe.tsx` | Forwards client
    console and network events to central log store; network-error events
    missing `IpcClient.addLog()` call |
    | `src/pro/main/ipc/handlers/local_agent/tools/read_logs.ts` | New
    read_logs tool with comprehensive filtering, smart stack trace
    truncation, and direct log store access |
    | `src/ipc/handlers/app_handlers.ts` | Added server stdout/stderr to log
    store and registered add-log IPC handler; entry parameter uses `any`
    type instead of `ConsoleEntry` |
    | `src/lib/log_store.ts` | New central in-memory log store with circular
    buffer; duplicate `ConsoleEntry` type definition exists |
    
    <h3>Confidence score: 4/5</h3>
    
    
    - This PR requires attention before merging due to incomplete log
    forwarding that could impact debugging effectiveness
    - Score reduced due to missing network-error log forwarding in
    `PreviewIframe.tsx` lines 414-428, type safety issue in
    `app_handlers.ts` using `any` instead of proper typing, and duplicate
    type definitions that need consolidation
    - Pay close attention to
    `src/components/preview_panel/PreviewIframe.tsx` network-error handler
    and `src/ipc/handlers/app_handlers.ts` type definitions
    
    <h3>Sequence Diagram</h3>
    
    ```mermaid
    sequenceDiagram
        participant User as User
        participant IFrame as PreviewIframe<br/>(Client)
        participant IPC as IpcClient
        participant Main as app_handlers<br/>(Main Process)
        participant LogStore as LogStore
        participant Agent as read_logs tool
        participant UI as DyadReadLogs<br/>(Chat Component)
    
        Note over User,UI: Log Collection Flow
        
        User->>IFrame: "Triggers network/console event"
        IFrame->>IFrame: "Handles event (console-log, network-request, etc.)"
        IFrame->>IPC: "addLog(logEntry)"
        IPC->>Main: 'invoke("add-log", entry)'
        Main->>LogStore: "addLog(entry)"
        LogStore->>LogStore: "Store in Map<appId, ConsoleEntry[]>"
        
        Note over User,UI: Server Log Collection
        Main->>Main: "Process stdout/stderr from app"
        Main->>LogStore: "addLog(serverLogEntry)"
        
        Note over User,UI: Agent Tool Flow
        User->>Agent: "Agent executes read_logs tool"
        Agent->>LogStore: "getLogs(appId)"
        LogStore-->>Agent: "ConsoleEntry[]"
        Agent->>Agent: "Filter by time/type/level/search"
        Agent->>Agent: "Format logs for AI consumption"
        Agent-->>UI: '<dyad-read-logs> XML tag'
        UI->>UI: "Render collapsible log viewer"
    ```
    
    <!-- greptile_other_comments_section -->
    
    **Context used:**
    
    - Context from `dashboard` - .cursor/rules/ipc.mdc
    ([source](https://app.greptile.com/review/custom-context?memory=92de190d-1eac-4167-a0e4-35db6533fe3d))
    - Context from `dashboard` - AGENTS.md
    ([source](https://app.greptile.com/review/custom-context?memory=32c86e9e-6a00-48f2-ac32-69590e8d298c))
    
    <!-- /greptile_comment -->
    
    <!-- CURSOR_SUMMARY -->
    ---
    
    > [!NOTE]
    > Adds an in-memory, per-app log store and wires all major sources into
    it, enabling the agent to fetch filtered log snapshots and render them
    in chat.
    > 
    > - New central store `lib/log_store.ts` with
    `addLog`/`getLogs`/`clearLogs` and `ConsoleEntry` moved to
    `ipc/ipc_types.ts`
    > - IPC: preload whitelists `add-log` and `clear-logs`; main handlers in
    `app_handlers.ts`; renderer API via `IpcClient.addLog`/`clearLogs`
    > - Log producers now forward to store:
    > - `PreviewIframe.tsx`: client console, network request/response/error,
    runtime errors; also keeps UI atom in sync
    > - `useRunApp.ts`: build-time and client-error logs; restart clears
    logs via IPC
    >   - `app_handlers.ts`: server stdout/stderr appended to store
    >   - `useSupabase.ts`: edge function logs appended to store
    > - New agent tool `read_logs` (`pro/main/.../tools/read_logs.ts`) with
    filters (`type`, `level`, `searchTerm`, `limit`), formats results, and
    emits `<dyad-read-logs>` with counts
    > - Chat UI: `DyadLogs` component and parser updates to render
    collapsible results (`dyad-read-logs`)
    > - E2E: fixture and spec validate filtered log reads in local-agent
    mode
    > 
    > <sup>Written by [Cursor
    Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
    d77e209c269ad2de80e2c57ed0c8824a288244a2. This will update automatically
    on new commits. Configure
    [here](https://cursor.com/dashboard?tab=bugbot).</sup>
    <!-- /CURSOR_SUMMARY -->
    66421906
名称
最后提交
最后更新
..
add_prompt_deep_link.spec.ts_add-prompt-via-deep-link-with-base64-encoded-data-1.aria.yml 正在载入提交数据...
approve.spec.ts_write-to-index-approve-check-preview-1.aria.yml 正在载入提交数据...
approve.spec.ts_write-to-index-approve-check-preview-2.aria.yml 正在载入提交数据...
approve.spec.ts_write-to-index-approve-check-preview-3.aria.yml 正在载入提交数据...
astro.spec.ts_astro-1.txt 正在载入提交数据...
attach_image.spec.ts_attach-image 正在载入提交数据...
attach_image.spec.ts_attach-image---chat---upload-to-codebase-1.aria.yml 正在载入提交数据...
attach_image.spec.ts_attach-image---chat-1.aria.yml 正在载入提交数据...
attach_image.spec.ts_attach-image---home-chat-1.aria.yml 正在载入提交数据...
attach_image.spec.ts_attach-image-via-drag---chat-1.aria.yml 正在载入提交数据...
attach_image.spec.ts_upload-to-codebase 正在载入提交数据...
auto_approve.spec.ts_auto-approve-1.aria.yml 正在载入提交数据...
auto_approve.spec.ts_auto-approve-2.aria.yml 正在载入提交数据...
auto_update.spec.ts_auto-update---disable-and-enable-1.txt 正在载入提交数据...
auto_update.spec.ts_auto-update---disable-and-enable-2.txt 正在载入提交数据...
azure_send_message.spec.ts_send-message-through-Azure-OpenAI-1.aria.yml 正在载入提交数据...
capacitor.spec.ts_upgraded-capacitor.txt 正在载入提交数据...
chat_mode.spec.ts_chat-mode-selector---ask-mode-1.aria.yml 正在载入提交数据...
chat_mode.spec.ts_chat-mode-selector---ask-mode-1.txt 正在载入提交数据...
chat_mode.spec.ts_chat-mode-selector---default-build-mode-1.aria.yml 正在载入提交数据...
chat_mode.spec.ts_chat-mode-selector---default-build-mode-1.txt 正在载入提交数据...
chat_mode.spec.ts_dyadwrite-edit-and-cancel-1.aria.yml 正在载入提交数据...
chat_mode.spec.ts_dyadwrite-edit-and-save---basic-flow-1.aria.yml 正在载入提交数据...
concurrent_chat.spec.ts_concurrent-chat-1.aria.yml 正在载入提交数据...
concurrent_chat.spec.ts_concurrent-chat-2.aria.yml 正在载入提交数据...
context_limit_banner.spec.ts_context-limit-banner-appears-and-summarize-works-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_exclude-paths-basic 正在载入提交数据...
context_manage.spec.ts_exclude-paths-precedence 正在载入提交数据...
context_manage.spec.ts_exclude-paths-with-smart-context 正在载入提交数据...
context_manage.spec.ts_manage-context---default-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---default-1.txt 正在载入提交数据...
context_manage.spec.ts_manage-context---default-2.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---exclude-paths-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---exclude-paths-2.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---exclude-paths-3.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---exclude-paths-with-smart-context-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---exclude-paths-with-smart-context-2.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context---auto-includes-only-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context---auto-includes-only-1.txt 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context---auto-includes-only-2.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-1.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-1.txt 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-2.aria.yml 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-2.txt 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-3.txt 正在载入提交数据...
context_manage.spec.ts_manage-context---smart-context-4.txt 正在载入提交数据...
context_window.spec.ts_context-window-1.aria.yml 正在载入提交数据...
context_window.spec.ts_context-window-1.txt 正在载入提交数据...
context_window.spec.ts_context-window-2.txt 正在载入提交数据...
context_window.spec.ts_context-window-3.txt 正在载入提交数据...
context_window.spec.ts_context-window-4.txt 正在载入提交数据...
context_window.spec.ts_context-window-5.txt 正在载入提交数据...
copy_app.spec.ts_app.txt 正在载入提交数据...
dump_messages.spec.ts_dump-messages-1.txt 正在载入提交数据...
dyad_tags_parsing.spec.ts_angle-tags-handled.txt 正在载入提交数据...
edit_code.spec.ts_edited-mde-with-dyad.txt 正在载入提交数据...
engine.spec.ts_regular-auto-should-send-message-to-engine-1.aria.yml 正在载入提交数据...
engine.spec.ts_regular-auto-should-send-message-to-engine-1.txt 正在载入提交数据...
engine.spec.ts_send-message-to-engine---anthropic-claude-sonnet-4-1.txt 正在载入提交数据...
engine.spec.ts_send-message-to-engine---openai-gpt-5-1.txt 正在载入提交数据...
engine.spec.ts_send-message-to-engine---smart-context-deep-1.aria.yml 正在载入提交数据...
engine.spec.ts_send-message-to-engine---smart-context-deep-1.txt 正在载入提交数据...
engine.spec.ts_send-message-to-engine-1.aria.yml 正在载入提交数据...
engine.spec.ts_send-message-to-engine-1.txt 正在载入提交数据...
engine.spec.ts_smart-auto-should-send-message-to-engine-1.aria.yml 正在载入提交数据...
engine.spec.ts_smart-auto-should-send-message-to-engine-1.txt 正在载入提交数据...
env_var.spec.ts_create-aKey 正在载入提交数据...
env_var.spec.ts_create-bKey 正在载入提交数据...
env_var.spec.ts_delete-aKey 正在载入提交数据...
env_var.spec.ts_edit-bKey 正在载入提交数据...
fix_error.spec.ts_fix-all-errors-button-1.aria.yml 正在载入提交数据...
fix_error.spec.ts_fix-error-with-AI-1.aria.yml 正在载入提交数据...
fix_error.spec.ts_fix-error-with-AI-2.aria.yml 正在载入提交数据...
fix_error.spec.ts_fix-error-with-AI-3.aria.yml 正在载入提交数据...
fix_error.spec.ts_fix-error-with-AI-4.aria.yml 正在载入提交数据...
gateway.spec.ts_claude-4-sonnet-1.aria.yml 正在载入提交数据...
gateway.spec.ts_claude-4-sonnet-1.txt 正在载入提交数据...
gateway.spec.ts_send-message-to-gateway---claude-4-sonnet-1.txt 正在载入提交数据...
github-import.spec.ts_should-import-from-URL-1.aria.yml 正在载入提交数据...
github-import.spec.ts_should-import-from-repository-list-1.aria.yml 正在载入提交数据...
github.spec.ts_create-and-sync-to-existing-repo---custom-branch-1.aria.yml 正在载入提交数据...
github.spec.ts_create-and-sync-to-existing-repo-1.aria.yml 正在载入提交数据...
github.spec.ts_create-and-sync-to-new-repo---custom-branch-1.aria.yml 正在载入提交数据...
github.spec.ts_create-and-sync-to-new-repo-1.aria.yml 正在载入提交数据...
github.spec.ts_create-and-sync-to-new-repo-2.aria.yml 正在载入提交数据...
github.spec.ts_disconnect-from-repo-1.aria.yml 正在载入提交数据...
github.spec.ts_github-clear-integration-settings-1.txt 正在载入提交数据...
github.spec.ts_should-create-a-new-GitHub-repository-1.aria.yml 正在载入提交数据...
github.spec.ts_should-create-a-new-GitHub-repository-2.aria.yml 正在载入提交数据...
import.spec.ts_advanced-options-both-cleared-are-valid-and-use-defaults-1.aria.yml 正在载入提交数据...
import.spec.ts_import-app-1.aria.yml 正在载入提交数据...
import.spec.ts_import-app-2.aria.yml 正在载入提交数据...
import.spec.ts_import-app-with-AI-rules-1.aria.yml 正在载入提交数据...
import.spec.ts_import-app-with-AI-rules-1.txt 正在载入提交数据...
import.spec.ts_import-app-with-AI-rules-2.aria.yml 正在载入提交数据...
lm_studio.spec.ts_send-message-to-LM-studio-1.aria.yml 正在载入提交数据...
local_agent_advanced.spec.ts_after-mention-app.txt 正在载入提交数据...
local_agent_advanced.spec.ts_local-agent---mcp-tool-call-1.aria.yml 正在载入提交数据...
local_agent_advanced.spec.ts_local-agent---mention-apps-1.txt 正在载入提交数据...
local_agent_advanced.spec.ts_local-agent---security-review-fix-1.aria.yml 正在载入提交数据...
local_agent_advanced.spec.ts_local-agent---security-review-fix-1.txt 正在载入提交数据...
local_agent_basic.spec.ts_after-edit.txt 正在载入提交数据...
local_agent_basic.spec.ts_after-parallel.txt 正在载入提交数据...
local_agent_basic.spec.ts_after-write.txt 正在载入提交数据...
local_agent_basic.spec.ts_local-agent---dump-request-1.txt 正在载入提交数据...
local_agent_basic.spec.ts_local-agent---dump-request-2.txt 正在载入提交数据...
local_agent_basic.spec.ts_local-agent---parallel-tool-calls-1.aria.yml 正在载入提交数据...
local_agent_basic.spec.ts_local-agent---read-then-edit-1.aria.yml 正在载入提交数据...
local_agent_consent.spec.ts_local-agent---add-dependency-consent-allow-once-1.aria.yml 正在载入提交数据...
local_agent_consent.spec.ts_local-agent---add-dependency-consent-always-allow-1.aria.yml 正在载入提交数据...
local_agent_consent.spec.ts_local-agent---add-dependency-consent-decline-1.aria.yml 正在载入提交数据...
local_agent_read_logs.spec.ts_local-agent---read-logs-with-filters-1.aria.yml 正在载入提交数据...
main.spec.ts_basic-message-to-custom-test-model-1.aria.yml 正在载入提交数据...
main.spec.ts_simple-message-to-custom-test-model-1.aria.yml 正在载入提交数据...
mcp.spec.ts_mcp---call-calculator-1.aria.yml 正在载入提交数据...
mcp.spec.ts_mcp---call-calculator-1.txt 正在载入提交数据...
mention_app.spec.ts_mention-app-with-pro-1.txt 正在载入提交数据...
mention_app.spec.ts_mention-app-without-pro-1.txt 正在载入提交数据...
mention_files.spec.ts_mention-file-1.txt 正在载入提交数据...
new_chat.spec.ts_new-chat-first-button-1.aria.yml 正在载入提交数据...
new_chat.spec.ts_new-chat-first-button-2.aria.yml 正在载入提交数据...
new_chat.spec.ts_new-chat-first-button-3.aria.yml 正在载入提交数据...
new_chat.spec.ts_new-chat-second-button-1.aria.yml 正在载入提交数据...
new_chat.spec.ts_new-chat-second-button-2.aria.yml 正在载入提交数据...
new_chat.spec.ts_new-chat-second-button-3.aria.yml 正在载入提交数据...
ollama.spec.ts_send-message-to-ollama-1.aria.yml 正在载入提交数据...
partial_response.spec.ts_message-resumed.txt 正在载入提交数据...
partial_response.spec.ts_partial-message-is-resumed-1.aria.yml 正在载入提交数据...
partial_response.spec.ts_partial-message-is-resumed-1.txt 正在载入提交数据...
preview_iframe.spec.ts_preview-iframe-has-sandbox-attributes-1.txt 正在载入提交数据...
problems.spec.ts_problems---fix-all-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems---fix-all-1.txt 正在载入提交数据...
problems.spec.ts_problems---manual-edit-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems---manual-edit-2.aria.yml 正在载入提交数据...
problems.spec.ts_problems---select-specific-problems-and-fix-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems---select-specific-problems-and-fix-1.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---complex-delete-rename-write-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems-auto-fix---complex-delete-rename-write-1.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---complex-delete-rename-write-2.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---disabled-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems-auto-fix---enabled-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems-auto-fix---enabled-1.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---enabled-2.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---gives-up-after-2-attempts-1.aria.yml 正在载入提交数据...
problems.spec.ts_problems-auto-fix---gives-up-after-2-attempts-1.txt 正在载入提交数据...
problems.spec.ts_problems-auto-fix---gives-up-after-2-attempts-2.aria.yml 正在载入提交数据...
problems.spec.ts_problems-auto-fix---gives-up-after-2-attempts-2.txt 正在载入提交数据...
prompt_library.spec.ts_create-and-edit-prompt-1.aria.yml 正在载入提交数据...
prompt_library.spec.ts_create-and-edit-prompt-2.aria.yml 正在载入提交数据...
prompt_library.spec.ts_use-prompt-1.txt 正在载入提交数据...
rebuild.spec.ts_rebuild-app-1.aria.yml 正在载入提交数据...
rebuild.spec.ts_rebuild-app-2.aria.yml 正在载入提交数据...
refresh.spec.ts_refresh-app-1.aria.yml 正在载入提交数据...
reject.spec.ts_reject-1.aria.yml 正在载入提交数据...
reject.spec.ts_reject-2.aria.yml 正在载入提交数据...
release_channel.spec.ts_release-channel---change-from-stable-to-beta-and-back-1.txt 正在载入提交数据...
release_channel.spec.ts_release-channel---change-from-stable-to-beta-and-back-2.txt 正在载入提交数据...
rename_edit.spec.ts_rename-edit.txt 正在载入提交数据...
restart.spec.ts_restart-app-1.aria.yml 正在载入提交数据...
retry.spec.ts_retry---should-work-1.aria.yml 正在载入提交数据...
retry.spec.ts_retry---should-work-2.aria.yml 正在载入提交数据...
security_review.spec.ts_security-review---edit-and-use-knowledge-1.txt 正在载入提交数据...
security_review.spec.ts_security-review---multi-select-and-fix-issues-1.aria.yml 正在载入提交数据...
security_review.spec.ts_security-review-1.aria.yml 正在载入提交数据...
security_review.spec.ts_security-review-1.txt 正在载入提交数据...
security_review.spec.ts_security-review-2.aria.yml 正在载入提交数据...
select_component.spec.ts_app-upgraded.txt 正在载入提交数据...
select_component.spec.ts_deselect-component-1.aria.yml 正在载入提交数据...
select_component.spec.ts_deselect-component-1.txt 正在载入提交数据...
select_component.spec.ts_deselect-component-2.aria.yml 正在载入提交数据...
select_component.spec.ts_deselect-component-3.aria.yml 正在载入提交数据...
select_component.spec.ts_deselect-individual-component-from-multiple-1.aria.yml 正在载入提交数据...
select_component.spec.ts_deselect-individual-component-from-multiple-2.aria.yml 正在载入提交数据...
select_component.spec.ts_deselect-individual-component-from-multiple-3.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-1.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-1.txt 正在载入提交数据...
select_component.spec.ts_select-component-2.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-2.txt 正在载入提交数据...
select_component.spec.ts_select-component-3.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-next-js-1.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-next-js-1.txt 正在载入提交数据...
select_component.spec.ts_select-component-next-js-2.aria.yml 正在载入提交数据...
select_component.spec.ts_select-component-next-js-3.aria.yml 正在载入提交数据...
select_component.spec.ts_select-multiple-components-1.aria.yml 正在载入提交数据...
select_component.spec.ts_select-multiple-components-1.txt 正在载入提交数据...
select_component.spec.ts_select-multiple-components-2.aria.yml 正在载入提交数据...
select_component.spec.ts_select-multiple-components-3.aria.yml 正在载入提交数据...
select_component.spec.ts_upgrade-app-to-select-component-1.txt 正在载入提交数据...
smart_context_balanced.spec.ts_smart-context-balanced---simple-1.aria.yml 正在载入提交数据...
smart_context_balanced.spec.ts_smart-context-balanced---simple-1.txt 正在载入提交数据...
smart_context_deep.spec.ts_smart-context-deep---mention-app-should-fallback-to-balanced-1.txt 正在载入提交数据...
smart_context_deep.spec.ts_smart-context-deep---read-write-read-1.aria.yml 正在载入提交数据...
smart_context_deep.spec.ts_smart-context-deep---read-write-read-1.txt 正在载入提交数据...
smart_context_options.spec.ts_switching-smart-context-mode-saves-the-right-setting-1.txt 正在载入提交数据...
smart_context_options.spec.ts_switching-smart-context-mode-saves-the-right-setting-2.txt 正在载入提交数据...
smart_context_options.spec.ts_switching-smart-context-mode-saves-the-right-setting-3.txt 正在载入提交数据...
supabase_branch.spec.ts_supabase-branch-selection-works-1.aria.yml 正在载入提交数据...
supabase_client.spec.ts_supabase-client-generated.txt 正在载入提交数据...
supabase_stale_ui.spec.ts_supabase---stale-ui-1.aria.yml 正在载入提交数据...
supabase_stale_ui.spec.ts_supabase---stale-ui-2.aria.yml 正在载入提交数据...
supabase_stale_ui.spec.ts_supabase---stale-ui-3.aria.yml 正在载入提交数据...
switch_versions.spec.ts_switch-versions-1.aria.yml 正在载入提交数据...
switch_versions.spec.ts_switch-versions-2.aria.yml 正在载入提交数据...
switch_versions.spec.ts_switch-versions-3.aria.yml 正在载入提交数据...
switch_versions.spec.ts_v1 正在载入提交数据...
switch_versions.spec.ts_v2 正在载入提交数据...
telemetry.spec.ts_telemetry---accept-1.txt 正在载入提交数据...
telemetry.spec.ts_telemetry---later-1.txt 正在载入提交数据...
telemetry.spec.ts_telemetry---reject-1.txt 正在载入提交数据...
template-community.spec.ts_template---community-1.txt 正在载入提交数据...
template-community.spec.ts_template---community-2.txt 正在载入提交数据...
template-create-nextjs.spec.ts_create-next-js-app-1.aria.yml 正在载入提交数据...
template-create-nextjs.spec.ts_create-next-js-app-1.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-1.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-2.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-3.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-4.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-5.txt 正在载入提交数据...
thinking_budget.spec.ts_thinking-budget-6.txt 正在载入提交数据...
turbo_edits_options.spec.ts_switching-turbo-edits-saves-the-right-setting-1.txt 正在载入提交数据...
turbo_edits_options.spec.ts_switching-turbo-edits-saves-the-right-setting-2.txt 正在载入提交数据...
turbo_edits_options.spec.ts_switching-turbo-edits-saves-the-right-setting-3.txt 正在载入提交数据...
turbo_edits_v2.spec.ts_after-search-replace-fallback.txt 正在载入提交数据...
turbo_edits_v2.spec.ts_after-search-replace.txt 正在载入提交数据...
turbo_edits_v2.spec.ts_turbo-edits-v2---search-replace-approve-1.aria.yml 正在载入提交数据...
turbo_edits_v2.spec.ts_turbo-edits-v2---search-replace-dump-1.txt 正在载入提交数据...
turbo_edits_v2.spec.ts_turbo-edits-v2---search-replace-dump-2.txt 正在载入提交数据...
turbo_edits_v2.spec.ts_turbo-edits-v2---search-replace-fallback-1.aria.yml 正在载入提交数据...
turbo_edits_v2.spec.ts_turbo-edits-v2---search-replace-fallback-1.txt 正在载入提交数据...
version_integrity.spec.ts_v1.txt 正在载入提交数据...
version_integrity.spec.ts_v2.txt 正在载入提交数据...
version_integrity.spec.ts_v3.txt 正在载入提交数据...
visual_editing.spec.ts_visual-editing-single-component-margin.txt 正在载入提交数据...
visual_editing.spec.ts_visual-editing-text-content.txt 正在载入提交数据...