feat(debug): add eval-at probes - #11
Merged
Merged
Conversation
- `.zpm/kb/feedback/journal.wal`: Record eval-at implementation feedback rules - `.zpm/kb/pr_feature_f002_standalone_linter_sidecar_extension/journal.wal`: Remove stale PR memory journal - `.zpm/kb/pr_feature_f002_standalone_linter_sidecar_extension/knowledge.pl`: Remove stale PR memory schema - `.zpm/kb/pr_feature_f003_lint_fix_apply_machine_applicable_lin/journal.wal`: Remove stale PR memory journal - `.zpm/kb/pr_feature_f003_lint_fix_apply_machine_applicable_lin/knowledge.pl`: Remove stale PR memory schema - `.zpm/mounts.json`: Unmount stale PR memory segments - `README.md`: Document eval-at debug probes - `crates/core_engine/tests/extension_debug_e2e.rs`: Add eval-at registry and fixture e2e coverage - `crates/extension_protocol/tests/protocol_tests.rs`: Assert eval-at manifest protocol stability - `docs/README.md`: Reference eval-at debug documentation - `docs/mcp-tools.md`: Document tower_debug_eval_at request and response - `docs/user-guide/debug-sessions.md`: Add one-shot debug probe workflow - `extensions/debug/extension.toml`: Expose eval_at tool schema - `extensions/debug/src/eval_at.rs`: Implement stateless eval-at orchestration - `extensions/debug/src/main.rs`: Wire eval_at dispatch and request handling - `extensions/debug/src/protocol.rs`: Add eval-at protocol support - `extensions/debug/src/session.rs`: Support eval-at session lifecycle behavior - `extensions/debug/src/tools.rs`: Register eval_at debug tool - `extensions/debug/src/types.rs`: Extend debug DTOs for eval-at results - `extensions/debug/tests/eval_at_contract.rs`: Add eval-at contract tests - `extensions/fixtures/debug_adapter/src/main.rs`: Add eval-at fixture scenarios - `extensions/fixtures/debug_adapter/tests/eval_at_scenario.rs`: Cover fixture eval-at behavior Closes #10
pocky
marked this pull request as ready for review
June 24, 2026 14:09
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.
Summary
tower_debug_eval_at, a stateless debug probe that launches a configured DAP program, captures breakpoint evidence, and tears down without exposing a persistent session.Changes
Debug eval-at implementation
extensions/debug/src/eval_at.rs: Add eval-at request/response DTOs, orchestration, bounded stack/local/arg capture, expression evaluation, timeout handling, cleanup, and unit coverage.extensions/debug/src/main.rs: Wireeval_atinto debug sidecar dispatch and request handling.extensions/debug/src/protocol.rs: Add eval-at protocol support and typed error handling paths.extensions/debug/src/session.rs: Extend debug session behavior needed for one-shot probes, exited outcomes, output capture, and cleanup.extensions/debug/src/tools.rs: Register and dispatch theeval_attool.extensions/debug/src/types.rs: Add shared debug result types used by eval-at capture and responses.extensions/debug/extension.toml: Advertise theeval_attool with a strict JSON schema.Protocol and engine integration
crates/core_engine/tests/extension_debug_e2e.rs: Add merged-registry availability tests and fixture-backed e2e coverage for eval-at hit, no-hit exit, timeout, cleanup, and nosession_idleakage.crates/extension_protocol/tests/protocol_tests.rs: Update debug manifest expectations from 12 to 13 tools and asserteval_atis present without workspace mutation capabilities.Debug fixture support
extensions/fixtures/debug_adapter/src/main.rs: Extend the fixture adapter with eval-at scenarios, output behavior, delayed continue handling, and no-hit exits.extensions/fixtures/debug_adapter/tests/eval_at_scenario.rs: Add fixture scenario tests for breakpoint hit, normal no-hit exit, and timeout-style behavior.Documentation
README.md: Update the debugging capability summary and docs index to includetower_debug_eval_at.docs/README.md: Add eval-at to the debug and MCP tool documentation index descriptions.docs/mcp-tools.md: Documenttower_debug_eval_atarguments, response shape, finish states, timeout behavior, and condition handling.docs/user-guide/debug-sessions.md: Expand the guide from interactive sessions to sessions plus one-shot probes with example calls and responses.Project memory
.zpm/kb/feedback/journal.wal: Record F005 feedback rules for exact cargo test names, DAP timeout modeling, strict eval-at DTOs, and breakpoint ordering..zpm/mounts.json: Remove stale PR memory mounts for completed F002 and F003 branches..zpm/kb/pr_feature_f002_standalone_linter_sidecar_extension/journal.wal: Remove stale F002 PR memory segment..zpm/kb/pr_feature_f002_standalone_linter_sidecar_extension/knowledge.pl: Remove stale F002 PR memory schema..zpm/kb/pr_feature_f003_lint_fix_apply_machine_applicable_lin/journal.wal: Remove stale F003 PR memory segment..zpm/kb/pr_feature_f003_lint_fix_apply_machine_applicable_lin/knowledge.pl: Remove stale F003 PR memory schema.Test plan
cargo fmt --checkcargo clippy --workspace --all-targets -- -D warningscargo build --workspace --binscargo test --workspaceCloses #10
Generated with awf commit workflow