Copy element debug JSON to the clipboard on cmd-alt-i - #9
Merged
Conversation
1 task
1 task
Anthony-Eid
pushed a commit
to Anthony-Eid/zed
that referenced
this pull request
Aug 1, 2024
* Wip move handle reverse requests on the debug panel * Remove todo for startDebugging * Remove unused code * Make clippy happy * Log error instead of ignoring it * Remove debug code
1 task
rtfeldman
added a commit
that referenced
this pull request
Feb 5, 2026
- Fix #9: ToolPermissionContext::input_value now includes both source and destination paths formatted as 'source -> destination' for copy_path and move_path tools. Updated doc comments in tool_permissions.rs and settings_content/agent.rs. Added CopyPathTool to path pattern extraction in build_permission_options. - Fix #14: Replaced .ok() on unbounded_send calls in authorize_third_party_tool and authorize methods with explicit error logging.
rtfeldman
added a commit
that referenced
this pull request
Feb 5, 2026
…cing docs - agent-settings.md: Add per-tool permission rules section with pattern precedence docs and copy_path/move_path pattern matching explanation - agent-panel.md: Add note about copy_path/move_path pattern behavior - mcp.md: Add link to detailed tool permissions documentation
rtfeldman
added a commit
that referenced
this pull request
Feb 5, 2026
Add a new 'MCP and External Tool Permissions' section to agent-settings.md documenting the mcp:server_name:tool_name key format for per-tool defaults.
rtfeldman
added a commit
that referenced
this pull request
Feb 28, 2026
#3: Ensure worktree creation status cannot get stuck in Creating. Clone the WeakEntity handle before passing it to setup_new_workspace so failures can call set_worktree_creation_error to transition the status to Error. #8: Store the visual-test global observer subscription instead of detaching it, and explicitly drop it during teardown. #9: Delete the preserved temp directory after visual-test cleanup so repeated runs don't accumulate filesystem artifacts. #10: Add run_git_command helper that checks exit status and includes stderr/stdout in the error message for actionable diagnostics. #11: Change two open_new().detach() calls to detach_and_log_err(cx) so workspace creation failures are logged instead of silently swallowed.
6 tasks
rtfeldman
added a commit
that referenced
this pull request
Mar 2, 2026
- Fix #3: Add catch-all error handling around setup_new_workspace so worktree creation status cannot get stuck in Creating - Fix #8: Store visual-test workspace observer subscription instead of detaching it; explicitly drop during teardown - Fix #9: Delete preserved temp directory after visual test completion - Fix #10: Add run_git_command helper that checks exit status and includes stderr/stdout context in failure messages - Fix #11: Change two open_new().detach() calls to detach_and_log_err - Revert unrelated thread_history.rs changes (delete event refactoring, format_relative_time extraction, v_flex layout, iteration guard) - Restore assistant namespace conditional and CopyCode test assertions in agent_ui.rs
chan-yuu
pushed a commit
to chan-yuu/zed
that referenced
this pull request
Apr 18, 2026
…ments, and update ToDo.md with new issue zed-industries#10 and a placeholder for zed-industries#9.
m-bers
pushed a commit
to m-bers/zed
that referenced
this pull request
Apr 19, 2026
…topped Three fixes for the systematic n-1 response shift where each message gets the response for the previous message: 1. EntryUpdated uses turn-scoped request_id with prev_turn fallback: Claude Code delivers background events (tool completions, text flushes) asynchronously via session_notification after a turn ends. EntryUpdated now checks whether the entry belongs to the current turn (>= turn_start) or a previous one, and tags it with the correct turn's request_id. Previously it read the global THREAD_REQUEST_MAP which could already point to the next turn. 2. NewEntry updates turn_request_id only at turn boundaries: turn_request_id is now only updated from the global map when current == last_completed (i.e. a new turn is starting). The old value is rotated into prev_turn_request_id for use by late EntryUpdated events from the previous turn. 3. Guard normal-completion Stopped against duplicate emission: When cancel() races with natural turn completion, both paths could emit Stopped. The duplicate triggers the stale-detection fallback which reads the global map (now pointing to the next turn's request_id), sending a premature message_completed that shifts all subsequent responses by one. Added stopped_emitted_for_task check to the normal completion path, matching the existing guard on the cancelled path. Documented as Critical Fix zed-industries#9 in portingguide.md. E2E tests pass for both zed-agent and claude (all 10 phases). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
4 tasks
KlausUllrich
added a commit
to KlausUllrich/zed
that referenced
this pull request
May 11, 2026
…p + refresh call-site tracers Three new cfg-gated log emits under texture-cache-debug feature, all in crates/gpui/src/window.rs: - entity_taffy_input (Tracer A, primary): per-entity style+children hash on every Window::request_layout call; tracks frame-to-frame stability to inform zed-industries#1 Path B viability + zed-industries#7 Taffy memoization hit rate. Hashes via seahash (already a workspace dep) over Debug repr (Style has no Hash derive). Per-EntityId keying — last-wins intra-frame semantics; cross-frame aggregation gives the useful signal. - ancestor_walk_step (Tracer B): per-iteration log inside mark_view_dirty's view_path_reversed walk; captures leaf id + step + walking ancestor + already_dirty bool. Tells us how many ancestors are spurious vs necessary. Inputs zed-industries#9 walk-skip viability decision. - window_refresh_called (Tracer C): logs every Window::refresh() call site via #[track_caller] + Location::caller(). #[track_caller] is unconditional (matches existing pattern in same file); emit cfg-gated. Counts which of the 12 div.rs refresh sites duo identified actually fire under real workloads. Inputs zed-industries#6 P5.2.8 extend viability. Hot-path overhead estimated 3-5% FPS measurement skew during smoke; acceptable trade-off for the empirical attribution. Zero release-build cost (cfg-gated). Refs: S538 synthesis §"Bundled Logging Proposal"; bolt S538 Hop 2 Step 1 implementation brief.
Sipaha
added a commit
to Sipaha/spk-editor
that referenced
this pull request
May 19, 2026
Adds Option<DateTime<Utc>> status_started_at to acp_thread::ToolCall, plumbs it through solution_agent MCP tool-call summary wire payload, renders an 'Xs' badge in conversation_render next to the InProgress status text, and adds a 1s tick on session_view while any visible tool is InProgress (mirrors the existing thinking_tick pattern in status_row). Mobile (task zed-industries#9) consumes the new wire field once that repo is unblocked. Touches an untouched-upstream file (acp_thread/src/acp_thread.rs) — additive field + init only, per ADR-0001's escape valve.
MartinYe1234
pushed a commit
that referenced
this pull request
May 19, 2026
Follow-ups from code review on #skills-announcement. Items #5 (the doc-comment removal was intentional), #7 (illustration skill names), and #9 (the TODO on the version match) are intentionally left as-is per discussion. ### Changes **`Try Now` no longer un-focuses an already-focused agent panel.** `ToggleFocus` dispatches `workspace.toggle_panel_focus` which un-focuses when already focused. Swapped for `FocusAgent`, which calls `focus_panel` unconditionally. **Migration bullet is omitted for users who never had Rules.** The deleted `RulesToSkillsModal` had two flavors (generic intro vs migration summary) gated on `MigrationResult::is_empty()`. The toast now reads `migration_result()` and only includes the "Default Rules are converted into your global AGENTS.md\u2026" bullet when the migration actually moved something. New users (and existing users without Rules) see a cleaner two-bullet message that doesn't reference rules they don't have. **Telemetry events prefixed with `Skills`.** Previously `Announcement Main Click` etc., which would collide with the past parallel-agent announcement data and any future announcement reusing this code path. Now `Skills Announcement Main Click` / `Skills Announcement Secondary Click` / `Skills Announcement Dismiss`. **Dropped `Option<SharedString>` around `secondary_action_label`.** The underlying `AnnouncementToast` field is a plain `SharedString` with a default of `"Learn More"`, so `None` didn't actually hide the button \u2014 it just kept the default label. Made the field a plain `SharedString` to match. **Renamed dismiss key** from `skills_migration_announcement_banner_dismissed_at` to `skills_announcement_dismissed`. "banner" was leftover from when this was a title-bar banner; `_at` suggested a timestamp value but it's a bool. Safe to rename because this PR hasn't shipped yet. **Refreshed stale doc comments** in `prompt_store/src/rules_to_skills_migration.rs` that still referenced the deleted modal and title-bar banner. ### Files - `crates/auto_update_ui/Cargo.toml` \u2014 add `prompt_store` dep - `crates/auto_update_ui/src/auto_update_ui.rs` \u2014 all the toast-side changes above - `crates/prompt_store/src/rules_to_skills_migration.rs` \u2014 doc-comment refresh only, no behavior change - `Cargo.lock` \u2014 `prompt_store` added to `auto_update_ui`'s deps `cargo check -p auto_update_ui` is clean. Release Notes: - N/A
hdmjack
added a commit
to hdmjack/zed
that referenced
this pull request
Jul 3, 2026
…lding
Remove the #![allow(dead_code)] that masked ahead-of-time scaffolding, and
delete what was actually unused now that the feature is wired:
- Provider trait: name, request_reviewers, fetch_checks, fetch_mergeable,
fetch_labels, apply_suggestion, and merge_pull_request (plus MergeMethod)
— superseded by fetch_pull_request_status or not yet used.
- Types: CheckStatus, CheckRun; slim PullRequestDetails to just `info`
(the only field consumed); drop PullRequestInfo.description/state,
PullRequestState::Merged, and FileChangeStatus::Renamed's unread `from`
(and the previous_filename plumbing).
- Mappers/fields: map_pr_state, map_graphql_state, and the unused `state`
fields on the REST/GraphQL PR structs.
- review_panel: ActiveView::{Empty,Configuration}, PendingAction::OpenLocal
+ open_local_file_by_path, and RowKind::Comment's unread `path`.
Merge and configuration scaffolding will be re-added when those features
land (zed-industries#5, zed-industries#9).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
LoneBeast27
added a commit
to LoneBeast27/zed
that referenced
this pull request
Jul 10, 2026
…ave arm, multi-conv momentum cap, wrong-conv wave spawns zed-industries#2 unquote slices only after confirming ASCII quote bytes -- a multi-byte first/last char (the em-dashes the writer fix now emits) panicked the indexer; surrogate pairs decode (zed-industries#6). zed-industries#1 orchestrator_target grows the missing "wave" arm (the native dispatch path was dead code; the bridge WAVE_RE fallback masked it). zed-industries#3 momentum_only_since moves onto ConvSim -- the Sim-level timer was reset every frame by any cold sibling conv, disabling the limit-cycle cap on multi-conversation boards. zed-industries#4+zed-industries#7+zed-industries#8 /wave + Run-wave: strict arg parse (bare vendor word refuses instead of spawning everything), in-flight guards, plan_conv (never the most-recent-conv fallback -- real spend on the wrong plan), refusals render verbatim (composer note + under-score line). zed-industries#9 project spokes prefer type:project docs over the generic first-wins resolve. 788 green single-threaded. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
LoneBeast27
added a commit
to LoneBeast27/zed
that referenced
this pull request
Jul 10, 2026
…mmands fetch + execute w/ honest 404/405/501 rendering (parity gap zed-industries#9) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
jolutz
pushed a commit
to jolutz/zed
that referenced
this pull request
Aug 8, 2026
Copy element debug JSON to the clipboard on cmd-alt-i
audivir
added a commit
to audivir/zed
that referenced
this pull request
Aug 10, 2026
…font scans Closes out High zed-industries#9 and Medium zed-industries#15 from BUG_REPORT.md: - resolve_project (walks parent directories checking typst.toml/main.typ - real filesystem I/O) ran synchronously in schedule_typst_update's foreground view.update closure on every debounced edit. It's now a plain (project_resolution: bool, active_path: &Path) function with no view dependency, called from the existing cx.background_executor() block instead; needs_new_world/world_arc selection moved there too since it depends on the resolved root. Covered by four new tests in typst_preview_view.rs exercising resolve_project directly. - TypstSystemWorld::new re-scanned every system font and re-parsed every bundled asset font on every project-root switch, even though neither depends on the root. Bundled + system fonts are now scanned once per process into a cached static_fonts() OnceLock<(FontBook, Vec<FontSlot>)> (FontSlot is now Clone); new() clones that and layers a fresh, root-scoped load_fonts_dir(&root) scan on top. Covered by two new tests in typst_world.rs. Also investigated the "path-normalization mismatch on symlinked roots" Low finding: traced worktree::LocalFile::abs_path to confirm Zed deliberately never canonicalizes worktree roots anywhere, so the mismatch this described is only reachable across multiple worktrees with divergent symlink paths to the same file - narrower than originally flagged, and fixing it locally would cut against that codebase-wide convention. Left open, documented in BUG_REPORT.md with the concrete reproduction condition instead of a fix. BUG_REPORT.md and TEST_PLAN.md updated to reflect what's fixed/tested now. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
audivir
added a commit
to audivir/zed
that referenced
this pull request
Aug 10, 2026
…font scans Closes out High zed-industries#9 and Medium zed-industries#15 from BUG_REPORT.md: - resolve_project (walks parent directories checking typst.toml/main.typ - real filesystem I/O) ran synchronously in schedule_typst_update's foreground view.update closure on every debounced edit. It's now a plain (project_resolution: bool, active_path: &Path) function with no view dependency, called from the existing cx.background_executor() block instead; needs_new_world/world_arc selection moved there too since it depends on the resolved root. Covered by four new tests in typst_preview_view.rs exercising resolve_project directly. - TypstSystemWorld::new re-scanned every system font and re-parsed every bundled asset font on every project-root switch, even though neither depends on the root. Bundled + system fonts are now scanned once per process into a cached static_fonts() OnceLock<(FontBook, Vec<FontSlot>)> (FontSlot is now Clone); new() clones that and layers a fresh, root-scoped load_fonts_dir(&root) scan on top. Covered by two new tests in typst_world.rs. Also investigated the "path-normalization mismatch on symlinked roots" Low finding: traced worktree::LocalFile::abs_path to confirm Zed deliberately never canonicalizes worktree roots anywhere, so the mismatch this described is only reachable across multiple worktrees with divergent symlink paths to the same file - narrower than originally flagged, and fixing it locally would cut against that codebase-wide convention. Left open, documented in BUG_REPORT.md with the concrete reproduction condition instead of a fix. BUG_REPORT.md and TEST_PLAN.md updated to reflect what's fixed/tested now.
Bombfuse
pushed a commit
to gemdropgames/zed
that referenced
this pull request
Aug 10, 2026
Conditional GGO_EMD hint (lookup failures only, not CLI drift), now that worldlib's Missing text is host-neutral (ggo zed-industries#86). MIGRATION re-tally: seven rows moved, 44/34/15/11. UPSTREAM: F5.3 measurements + drill zed-industries#9.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Picking up from #8, which got closed when I deleted the base branch.
This PR adds a new
cmd-alt-ikeybinding, which copies JSON representing the current element state to the clipboard. You can now callElement::namedinstead ofboxedto tag any element with a name that will appear in the JSON. I used the DJSON Chrome extension to produce the screenshot below showing the open file finder.