Releases: iiwish/dsh-testkit
Release list
DSH Testkit v0.3.1
DSH Testkit v0.3.1
This corrective release hardens v0.3.0 one-command adoption for real repository-root lifecycle runs.
Fixed
- Registers Git source-resolution stdout/stderr logs as declared report artifacts, so strict output audits pass when the tested plugin source is a Git repository.
- Parses the final
npm pack --jsonresult even when legitimateprepareor lifecycle scripts emit output first. - Keeps the parser fail-closed: invalid final pack metadata cannot fall back to package-controlled output.
Verified
- 111 tests across 22 files, typecheck, coverage, contracts, bundle E2E, pack smoke, audit, and CodeQL.
- Full Docker lifecycle passed against the root of the public
dsh-plugin-template: package, install, assemble, boot, register, exercise, uninstall, reboot, and cleanup. - Built and published by GitHub Actions with npm Trusted Publishing and provenance.
The one-command onboarding introduced in v0.3.0 remains:
pnpm dlx dsh-testkit@0 initSee the README and Chinese README.
DSH Testkit v0.3.0
One-command adoption
pnpm add -D dsh-testkit
pnpm dsh-test init
pnpm dsh-testinit works offline and creates a deterministic scenario, least-privilege lifecycle workflow, and project-local Agent Skill. It parses the declared DSH bundle patch, detects row IDs, remains byte-idempotent, and refuses conflicts or symlink paths before writing unless --force is explicit.
Agent Skill
The canonical dsh-testkit Skill ships at .agents/skills/dsh-testkit/SKILL.md, is exported from npm, and is registered by the native bundle when the optional DSH Skills service exists. It teaches coding agents to select and interpret the real-host lifecycle gate without weakening expectations or the Docker trust boundary.
Verified release
- 108 unit, integration, and contract tests
- 8 real DSH lifecycle fixtures
- real native bundle, tool execution, and Skill discovery
- clean packed-consumer install and generated adoption files
- publint, actionlint, dependency audit, CodeQL, and protected-branch CI
The supported host remains exactly @deepseek-ai/dsh@0.1.0-rc.6. DSH Testkit is an independent, unofficial community project.
Full Changelog: v0.2.1...v0.3.0
DSH Testkit v0.2.1
Highlights
- World-class English project entrypoint plus a parity-checked Simplified Chinese README
- Clear positioning between real-host lifecycle testing, plugin doctor/preflight checks and composition checks
- Warning-free optional DSH peers with runtime and declaration independence
- Exact-version, credential-free community cohort validation with aggregate-only public reporting
- Scheduled DSH release discovery and disposable real-host canaries
Ecosystem evidence
Ten exact public plugin versions completed Docker quick suites against DSH 0.1.0-rc.6. The aggregate was 2 passed and 8 failed; first failure stages were boot 5 and uninstall 3. This is environment-bound compatibility evidence, not a plugin ranking or security assessment. Named reports remain private pending independent reproduction and maintainer-ready evidence.
The evidence supports declarative prerequisite profiles as the next experiment, not arbitrary multi-plugin lifecycle orchestration.
Validation
The release passed 97 automated tests, eight real-host lifecycle cases, native DSH bundle E2E, packed-consumer verification, publint, actionlint, production dependency audit and CodeQL.
DSH Testkit v0.2.0
DSH Testkit v0.2.0 adds a native DeepSeek Harness Profile Bundle without forking the lifecycle engine.
Highlights
- Install with
dsh plugin --profile <name> add dsh-testkit@0.2.0. - Registers the
dsh_testtool through the officialdsh.bundle.patchcontract. - Forces Docker execution, constrains local paths to the active workspace, rejects credential-bearing URLs, and uses DSH pre-execution approval for agent calls.
- Forwards cancellation through Docker image and runner subprocesses.
- Adds real DSH install, registration, tool invocation, Docker lifecycle, removal, and packed-consumer gates.
The existing dsh-test CLI, GitHub Action, and v1 report contracts remain available. npm publication was produced by GitHub OIDC trusted publishing with SLSA provenance.
DSH Testkit v0.1.2
DSH Testkit v0.1.2 strengthens lifecycle reruns, contract compatibility, GitHub Action isolation, and the release supply chain.
Highlights
- Add
--caselifecycle-stage reruns with prefix execution, cleanup, report identity, and reproduction commands. - Validate v1 scenario/report compatibility against runtime and published JSON Schemas.
- Declare explicit support for
@deepseek-ai/dsh@0.1.0-rc.6. - Make composite Action output, check, and artifact identities safe for matrices and repeated calls.
- Preserve complex Action arguments with
args-jsonand expose artifact metadata outputs. - Publish through npm Trusted Publishing with SLSA provenance.
Install
npm install -D dsh-testkit@0.1.2See CHANGELOG.md for the complete release notes.
DSH Testkit v0.1.1
First recommended public-preview release.
- Fixes the composite GitHub Action on hosted runners by removing an invalid parent-traversing cache path.
- Adds a release check that rejects this cache-path pattern.
- Passes hosted validation, six real DSH fixtures, packed-consumer verification, and composite Action smoke testing.
Install with pnpm add -D dsh-testkit@0.1.1 or use iiwish/dsh-testkit/.github/actions/dsh-test@v0.
DSH Testkit v0.1.0
Initial public preview of DSH Testkit.
- Real DSH install-to-recovery lifecycle execution in Docker or explicit unsafe-local mode.
- Canonical JSON, JUnit, Markdown, and terminal reports with stable verdict exit codes.
- Directory, tarball, exact npm, and full-commit Git subject inputs.
- Content-aware filesystem, process, port, and canary observers.
- Update, recovery, repeatability, and flaky-result classification.
The npm CLI package is usable. The composite GitHub Action in this immutable tag has a cache-path compatibility issue; Action consumers should use @v0 or @v0.1.1.