Skip to content

[APP-5777] Resolve loadSpec lazily during completion traversal - #15817

Open
warp-agent-staging[bot] wants to merge 9 commits into
masterfrom
factory/lazy-loadspec-traversal
Open

[APP-5777] Resolve loadSpec lazily during completion traversal#15817
warp-agent-staging[bot] wants to merge 9 commits into
masterfrom
factory/lazy-loadspec-traversal

Conversation

@warp-agent-staging

@warp-agent-staging warp-agent-staging Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Description

Resolve static loadSpec references lazily in the legacy completer instead of composing trees at load time. Coordinated with command-signatures#390. Tracking: APP-5777.

Pinned to command-signatures f465881. Referenced AWS/GCloud targets are sanitized runtime-only JSON at their natural json/aws and json/gcloud paths (35.89 MiB raw, item-local descriptions capped at 240 characters), looked up as aws/<name> / gcloud/<name>, with native rust-embed compression.

Linked Issue

  • The linked issue is labeled ready-to-spec or ready-to-implement.
  • Verification video and screenshots are included below.

Testing

  • Added warp_completer registry tests for lookup-before-entry, fvm flutter, slash-path targets, five-link nested references, missing targets, cycles, wrapper overlay, persistent options, per-origin generator/filter data, loaded-target descendants, and alias expansion.

  • cargo nextest run -p warp_completer --lib -E 'test(registry) or test(load_spec)': 31 passed against pin f465881.

  • command-signatures library tests: 180 passed, including strict all-assets graph validation, natural slash-path lookup, suggestion preservation, unsupported-data removal, and description bounds.

  • Full GUI build passed at exact head 9ddcd40b: WARP_SKIP_COMMON_SKILLS_INSTALL=1 cargo build --bin warp-oss --features "gui,fast_dev".

  • Fresh-process computer-controlled verification on the exact head confirmed:

    • aws application-autoscaling exposes imported service subcommands.
    • delete-scaling-policy --resource-id shows the concise item-specific description “The identifier of the resource associated with the scalable target.”
    • gcloud compute exposes imported Compute targets and descriptions.
  • Video: AWS and GCloud natural-path lazy targets

  • Screenshot: concise AWS --resource-id description

  • Screenshot: GCloud Compute target completions

  • All current command-signatures and Warp CI checks are green, including Linux/macOS/Windows tests, formatting/Clippy, release-feature builds, and CodeQL.

  • I have manually tested my changes locally with ./script/run or the equivalent built binary.

Agent Mode

  • Warp Agent Mode - This PR was created via Warp's AI Agent Mode

CHANGELOG-NONE

Pin warp-command-signatures to the unresolved-loadSpec commit and overlay
wrapper/target members by borrowing cached signature trees instead of
cloning composed results.
@warp-agent-staging

Copy link
Copy Markdown
Contributor Author

This PR was generated with Warp.

Comment @warp-factory on this PR to send it follow-up work.

View run View conversation View on Slack

Store every resolved target on the borrowed view instead of dropping
links after four, and look up generators/filters in the DynamicCompletionData
that owns the wrapper or target option.
When traversal enters a subcommand from a loadSpec target, keep that
target's DynamicCompletionData so generators and filters on the child
resolve from the target, not the original wrapper.
@acarl005
acarl005 marked this pull request as ready for review September 4, 2026 19:49
warp-agent-staging Bot and others added 6 commits September 4, 2026 20:18
wrapper/wrapper_dcd become current/current_dcd after loadSpec descent.
Pin warp-command-signatures to the corpus that drops dangling aws/gcloud
loadSpec pointers.
Bump warp-command-signatures to 1e9de7e so slash-path loadSpec targets
from command-signatures#390 resolve during lazy traversal.

Co-Authored-By: Warp Agent <agent@warp.dev>
Bump warp-command-signatures to d25f45a so the nested Fig import queue
follows slash-path loadSpec refs discovered inside imported targets.

Co-Authored-By: Warp Agent <agent@warp.dev>
Bump warp-command-signatures to 2946535 so nested aws/gcloud specs are
embedded via rust-embed's native include-flate compression.

Co-Authored-By: Warp Agent <agent@warp.dev>
Bump warp-command-signatures to 2d83dc5 so aws/gcloud loadSpec targets are
imported as runtime-only sanitized JSON under autogenerated/load_spec_targets.

Co-Authored-By: Warp Agent <agent@warp.dev>
…loud.

Bump warp-command-signatures to f465881 after dropping the dedicated
autogenerated subtree.

Co-Authored-By: Warp Agent <agent@warp.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants