feat(cli): sync targets adapter registry with packages/targets filesystem#223
feat(cli): sync targets adapter registry with packages/targets filesystem#223emil07770 wants to merge 2 commits into
Conversation
…stem Closes profullstack#219. Addresses profullstack#133. The CATEGORIES registry in adapter-registry.ts listed only 42 of the 66 directories under packages/targets/, meaning commands such as `sh1pt targets browser-edge info`, `sh1pt targets plugin-vscode info`, `sh1pt targets sdk-pypi info`, and 23 others were silently unregistered. Adds the 24 missing adapters, grouped by kind with inline comments so future additions are easy to place: browser-edge, browser-firefox, browser-safari deploy-coolify, deploy-lambda exe-dev mobile-android payment-adyen, payment-coinpay, payment-paypal, payment-square, payment-stripe pkg-apt, pkg-aur, pkg-flatpak, pkg-nix, pkg-perry, pkg-scoop, pkg-snap, pkg-winget plugin-jetbrains, plugin-vscode qa-geisterhand sdk-pypi Also adds a 6-test Vitest regression suite (adapter-registry.test.ts) that reads packages/targets/ at test time and fails if any directory is not registered or if any registered adapter no longer exists on disk, so the registry can't silently drift again. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
3 similar comments
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
Summary
Closes #219. Addresses #133.
The
CATEGORIESregistry inadapter-registry.tslisted only 42 of the 66 directories underpackages/targets/, meaning commands such assh1pt targets browser-edge info,sh1pt targets plugin-vscode info,sh1pt targets sdk-pypi info, and 21 others were silently unregistered.Missing adapters added (24 total)
browser-edge,browser-firefox,browser-safarideploy-coolify,deploy-lambdaexe-devmobile-androidpayment-adyen,payment-coinpay,payment-paypal,payment-square,payment-stripepkg-apt,pkg-aur,pkg-flatpak,pkg-nix,pkg-perry,pkg-scoop,pkg-snap,pkg-wingetplugin-jetbrains,plugin-vscodeqa-geisterhandsdk-pypiRegression prevention
Adds
adapter-registry.test.tswith 6 tests:targetsregistry contains allpackages/targets/directories (fails if a new target is added without updating the registry)targetsregistry has no phantom entries (fails if a registered adapter no longer exists on disk)pkgPrefixanddescriptionThe FS-diff tests gracefully skip in shallow CI checkouts (
readdirSyncreturns[]), so they don't break the test suite in environments that don't clone the full monorepo.Test plan
pnpm exec vitest run packages/cli/src/adapter-registry.test.ts— 6/6 passpnpm --filter @profullstack/sh1pt typecheck— no errorsgit diff --check— no trailing whitespace🤖 Generated with Claude Code