Skip to main content

live-testing

Live testing protocol for Rust and TypeScript projects: sync, discover project structure, execute the built binary, CLI, server, or web app end-to-end, detect anomalies, track coverage, file bug issues. Used by the live-tester agent; invoked directly it delegates to a background live-tester.

来源信息

仓库
bug-ops/claude-plugins
最近来源活动
2026年10月8日 16:31
检测到的 SKILL.md 语言
英语
星标
11
Forks
0

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

文件资源管理器
2 个文件

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
live-testing
description
Live testing protocol for Rust and TypeScript projects: sync, discover project structure, execute the built binary, CLI, server, or web app end-to-end, detect anomalies, track coverage, file bug issues. Used by the live-tester agent; invoked directly it delegates to a background live-tester.
argument-hint
[feature-name|regression|full]
# Live Testing Protocol Execute live tests on the current project: run the real artifact, verify behavior end-to-end, detect regressions, and file issues for every anomaly found. **Focus**: $ARGUMENTS (default: `full` — all phases) ## Direct Invocation This protocol is loaded by `live-tester` at startup via `Skill()`. When it is invoked directly (`/dev-agents:live-testing`) in a session that is **not** that agent, do not run the audit in the current context: delegate it so the findings, not the tool noise, land in the conversation. ``` Agent(subagent_type: "dev-agents:live-tester", description: "live-testing $ARGUMENTS", prompt: "Call Skill(skill: \"dev-agents:live-testing\", args: \"$ARGUMENTS\") and follow it end to end. Report findings and filed issue URLs; do not modify source files.") ``` The agent runs in the background; report its result when the task notification arrives. If you **are** `live-tester`, continue with the protocol below. ## Mandatory Reading Read all reference files before starting: - [Testing Methodology](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md) — execution protocol, priority order, testing gate, journal, what to check after each session - [Issue Management](${CLAUDE_PLUGIN_ROOT}/skills/continuous-improvement/references/issue-management.md) — anomaly classification, P0-P4 labels, filing template - [SDD Integration](${CLAUDE_PLUGIN_ROOT}/skills/continuous-improvement/references/sdd-integration.md) — when and how to spawn the `sdd` agent before filing ## Stack Profile For each detected profile (the `Stack:` line in your prompt, or the `stack` skill's detection), apply `${CLAUDE_PLUGIN_ROOT}/skills/stack/references/<profile>/live-tester.md` together with that profile's `toolchain.md`: manifest fields to read, build and run commands, log verbosity, crash signatures, benchmark and cleanup commands. Polyglot project: apply each profile to the components of its language. ## Project Verify Skill If `.claude/skills/verify/SKILL.md` exists (created by `/dev-agents:init-project`), call `Skill(skill: "verify")` before Phase 2 and use its build, run, and test commands as the authoritative recipe. When a command there is wrong or a step is missing, fix that file — it is the project's shared verification recipe. ## Hard Rules 1. **NEVER modify source code** — not even one-liners; this covers sources, manifests, lockfiles, build and CI configs 2. **ALL findings become GitHub issues** — including symptoms without a known root cause; fixes happen in separate team sessions 3. **You MAY write ONLY to `.local/testing/`** — journal, coverage status, playbooks, debug logs, helper scripts — under the main repository root, even from a git worktree ## Phase 1: Sync ```bash git pull origin main ``` - Review new commits to identify what changed since the last session - Examine changed files to understand scope - Update `.local/testing/coverage-status.md` — add `Untested` rows for new features, reset rows of significantly changed components to `Untested` - Compare `git rev-parse HEAD` with the HEAD recorded in the last handoff or journal; equal means unchanged-HEAD mode (see Phase 3) - Prioritize testing changed functionality first - Journal: append to `{journal-path}` when the prompt passes one; standalone, create the next journal file per [Testing Methodology](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md#journal) ## Phase 2: Project Discovery Before testing, understand the project: 1. Read the manifest(s) the profile names — workspace members, entry points and build targets, feature flags or build modes 2. Look for test configs: `.local/config/`, `tests/`, env files, and the profile's config locations 3. Identify executable entry points and supported interfaces (CLI, TUI, server/API, web UI, bots) 4. Note the flags, env vars, or build modes needed to reach the feature under test ## Phase 3: Live Testing **Unit and integration tests alone are NOT sufficient.** This phase requires real execution of the built artifact with real I/O and real user-like interactions. See [Testing Methodology](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md) for the full execution guide. **Priority order:** 1. New/changed functionality (from recent PRs) — highest probability of regressions 2. `Untested` or `Partial` components from `coverage-status.md` 3. Known-tricky scenarios from `regressions.md` 4. Cross-interface consistency (if project has multiple I/O modes) **Unchanged HEAD:** never skip the session; follow [Testing Methodology](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md#unchanged-head). **Optional checks** (benchmarks, live drift gate): see [Testing Methodology](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md#optional-checks). **Testing gate:** When a large portion of components are Untested or Partial, testing takes priority over everything else. Do not proceed to Phase 4 until critical components are verified. **After each test session, review:** - Logs: WARN, ERROR, crashes (the profile's crash signatures), unexpected retries, timeouts - Output correctness: expected vs actual behavior - Resource usage: memory, CPU, latency, tokens if applicable - Feature interactions: combinations that unit tests cannot cover ## Phase 4: Anomaly Detection and Issue Filing For each anomaly found: 1. **Reproduce** — confirm the issue is consistent, not a one-off 2. **Document** — exact steps, config, relevant log excerpts 3. **Classify** — P0 (critical) to P4 (nice-to-have); see [Issue Management](${CLAUDE_PLUGIN_ROOT}/skills/continuous-improvement/references/issue-management.md) 4. **Spec** — for P0–P2: spawn `sdd` agent before filing; see [SDD Integration](${CLAUDE_PLUGIN_ROOT}/skills/continuous-improvement/references/sdd-integration.md) 5. **Check duplicates** — `gh issue list --state open --limit 100 --json number,title,labels` 6. **File** — `gh issue create` with the literal `P0`-`P4` label set at creation (create the label if missing), a category label, reproduction steps, evidence; file the implementation issue in the same pass as the spec. A symptom without a root cause is still filed 7. **Record** — append finding row (issue and spec together) to the journal (`{journal-path}` in a CI cycle, the standalone journal otherwise), update `coverage-status.md` ## Phase 5: Cross-Interface Consistency If the project supports multiple interfaces (CLI, TUI, web, API, bots): - Exercise the same scenario across all applicable interfaces - Compare output content, formatting, behavior, state changes - File issues when behavior diverges across interfaces ## Session Exit Before finishing: 1. Update `.local/testing/coverage-status.md` for all components touched (rows in place, no cycle headers) 2. Run the [Process Self-Improvement Loop](${CLAUDE_PLUGIN_ROOT}/skills/live-testing/references/testing-methodology.md#process-self-improvement-loop) 3. Print a summary: features tested, issues filed, coverage changes 4. Write handoff with **Testing Results** section listing all filed issue URLs
在 GitHub 查看