Skip to content

Update the Probitas plugin for Probitas 2.0 - #2

Merged
lambdalisue merged 5 commits into
mainfrom
docs/probitas-2
Oct 10, 2026
Merged

lambdalisue merged 5 commits into
mainfrom
docs/probitas-2

Conversation

@lambdalisue

Copy link
Copy Markdown
Member

Summary

  • /probitas-expect-methods no longer runs deno doc jsr:@probitas/expect: it reads the @probitas-test/expect type declarations from the project's node_modules (npm, bun and pnpm layouts) and falls back to the latest npm tarball. Deno KV interfaces are gone; AnythingExpectation is listed for plain values.
  • scenario-writer agent: imports from @probitas-test/probitas, process.env instead of Deno.env, a table mapping Deno.* to Node.js APIs, third-party modules via package.json with bare imports, the @types/node / "types": ["node"] requirement, Deno KV removed, an "API Docs" section the agent already referred to, and checklist items for jsr:/npm: specifiers and Deno.*.
  • probitas-info / probitas-setup skills and /probitas-init, /probitas-check: single binary (no Deno), 2.0 install paths (install.sh, Homebrew, setup-probitas@v2, Nix flake, staying on 1.x), the files probitas init writes and installing its package.json, fmt/lint/check in 2.0 terms with troubleshooting, and a link to MIGRATION.md.
  • Plugin version 0.14.0 → 2.0.0 (the plugin version tracks the CLI's), and the dev shell's probitas flake input updated to 2.0.0.

Why

Probitas 2.0 runs on Bun as a single binary. The plugins still taught Deno-era scenarios (jsr: imports, Deno.env, Deno KV), and /probitas-expect-methods depended on deno doc, so on a machine with only Probitas 2 it could not work. See MIGRATION.md.

@types/node matters because probitas check (built-in bun check, TypeScript 7 semantics) loads only the @types packages listed in tsconfig.json; probitas init in 2.0.0 does not add it yet (probitas-test/probitas#119).

Test Plan

  • deno fmt --check in the dev shell (the repo's only check; Deno here formats this repo's Markdown, not Probitas)
  • /probitas-expect-methods lookup against the published @probitas-test/expect 0.5.0 (the version @probitas-test/probitas 2.0.0 depends on), from node_modules and from the npm tarball
  • Dev shell probitas --version reports 2.0.0

🤖 Generated with Claude Code

https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq

lambdalisue and others added 5 commits October 11, 2026 01:43
Probitas 2.0 ships as a single Bun-built binary, so `deno doc` is no longer
available to users, and `jsr:@probitas/expect` is no longer the package
scenarios depend on. Read the method names from the type declarations of the
`@probitas-test/expect` npm package instead: from the project's node_modules
when the `package.json` written by `probitas init` is installed, otherwise
from the published tarball.

Also drop the Deno KV interfaces (the client was removed in 2.0) and the
`RedisExpectation`-style names, which are conditional types without methods.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq
Probitas 2.0 runs scenarios on Bun inside a single binary, so the guidance
written for the Deno-based 1.x leads to scenarios that no longer type-check
or run:

- Import from `@probitas-test/probitas` instead of `jsr:@probitas/probitas`
- Use Node.js APIs (`process.env`, `node:fs/promises`, ...) instead of
  `Deno.*`, with `@types/node` and `"types": ["node"]` for `probitas check`
- Install third-party modules via package.json; `npm:`/`jsr:` specifiers
  are not resolved
- Drop the removed Deno KV client
- Document the 2.0 install channels (install.sh piped to sh, Homebrew
  `probitas-test/tap/probitas`, setup-probitas@v2, Nix flake) and how to
  stay on 1.x
- Describe the files `probitas init` writes and installing its package.json
- Describe the built-in fmt/lint/check behaviour, including biome-ignore
- Point API lookups at the npm type declarations and the JSR reference
  instead of `deno doc`

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq
The plugin version follows the Probitas CLI version it documents.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq
Probitas 2.0 no longer involves Deno, so research the API through the JSR
reference and the npm type declarations. Also drop the removed
probitas-new command from the command list.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq
The dev shell now provides the Probitas 2.0.0 release binary, matching the
behaviour the plugin documents.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N3xvJ1TaozjYSE6eoyo9mq
Copilot AI balanced review requested due to automatic review settings October 10, 2026 16:45

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@lambdalisue
lambdalisue merged commit 80ab843 into main Oct 10, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants