rapidkit 0.30.0 → 0.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import {c,b as b$1,d as d$1,e,f,a}from'./chunk-U7XJZHU6.js';import {b}from'./chunk-AC6KIKII.js';import {promises}from'fs';import d from'path';import o from'chalk';import S from'ora';import {execa}from'execa';function _(e){return `package main
1
+ import {c,b as b$1,d as d$1,e,f,a}from'./chunk-X5KRT2DT.js';import {b}from'./chunk-AC6KIKII.js';import {promises}from'fs';import d from'path';import o from'chalk';import S from'ora';import {execa}from'execa';function _(e){return `package main
2
2
 
3
3
  import (
4
4
  "fmt"
@@ -311,7 +311,7 @@ services:
311
311
  CORS_ALLOW_ORIGINS: "*"
312
312
  RATE_LIMIT_RPS: "100"
313
313
  restart: unless-stopped
314
- `}function L(e){return d$1({projectName:e.project_name,devCommand:"$(GOBIN)/air",runCommand:"go run $(LDFLAGS) ./cmd/server",testCommand:"go test ./... -v -race"})}function G(e){return `# Application
314
+ `}function L(e){return d$1({projectName:e.project_name,devCommand:"$(GOBIN)/air",runCommand:"go run $(LDFLAGS) ./cmd/server",testCommand:"go test ./... -v -race",includeLintAndFmt:true})}function G(e){return `# Application
315
315
  PORT=${e.port}
316
316
  APP_ENV=development
317
317
  LOG_LEVEL=debug
@@ -530,7 +530,7 @@ ${e.project_name}/
530
530
  ## License
531
531
 
532
532
  ${e.app_version} \xB7 ${e.author}
533
- `}function x(){return `package middleware
533
+ `}function k(){return `package middleware
534
534
 
535
535
  import (
536
536
  "crypto/rand"
@@ -583,7 +583,7 @@ func newID() string {
583
583
  }
584
584
  return hex.EncodeToString(b)
585
585
  }
586
- `}function k(e){return `package middleware_test
586
+ `}function x(e){return `package middleware_test
587
587
 
588
588
  import (
589
589
  "net/http"
@@ -1392,6 +1392,6 @@ issues:
1392
1392
  linters:
1393
1393
  - errcheck
1394
1394
  - wrapcheck
1395
- `}function Q(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Y(e$1){return e({runtimeLabel:"Go/Fiber",projectName:e$1.project_name,fallbackDevCommand:'exec go run ./cmd/server "$@"'})}function z(e){return f({runtimeLabel:"Go/Fiber",projectName:e.project_name})}function Z(e,i){return JSON.stringify({kit_name:"gofiber.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"rapidkit-npm",rapidkit_version:i,created_at:new Date().toISOString()},null,2)}async function pe(e,i){let r={project_name:i.project_name,module_path:i.module_path||i.project_name,author:i.author||"RapidKit User",description:i.description||`Go/Fiber REST API \u2014 ${i.project_name}`,go_version:i.go_version||a,app_version:i.app_version||"0.1.0",port:i.port||"3000",skipGit:i.skipGit??false},h=b();try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1396
- `));}let n=S(`Generating Go/Fiber project: ${r.project_name}\u2026`).start();try{let t=(R,w)=>c(d.join(e,R),w),b=d.join(e,"rapidkit"),v=d.join(e,"rapidkit.cmd");await Promise.all([t("cmd/server/main.go",_(r)),t("go.mod",T(r)),t("internal/config/config.go",q(r)),t("internal/server/server.go",O(r)),t("internal/middleware/requestid.go",x()),t("internal/middleware/requestid_test.go",k(r)),t("internal/apierr/apierr.go",P()),t("internal/apierr/apierr_test.go",D(r)),t("internal/handlers/health.go",y()),t("internal/handlers/health_test.go",C(r)),t("internal/handlers/example.go",B(r)),t("internal/handlers/example_test.go",$(r)),t("internal/config/config_test.go",j(r)),t("internal/middleware/cors.go",H()),t("internal/middleware/cors_test.go",U(r)),t("internal/middleware/ratelimit.go",J(r)),t("internal/middleware/ratelimit_test.go",W(r)),t("internal/server/server_test.go",V(r)),t("docs/doc.go",M(r)),t(".air.toml",K(r)),t("Dockerfile",N()),t("docker-compose.yml",E(r)),t("Makefile",L(r)),t(".golangci.yml",X(r.module_path)),t(".env.example",G(r)),t(".gitignore",A()),t(".github/workflows/ci.yml",I(r)),t("README.md",F(r)),t(".rapidkit/project.json",Z(r,h)),t(".rapidkit/context.json",Q()),t("rapidkit",Y(r)),t("rapidkit.cmd",z(r))]),await promises.chmod(b,493),await promises.chmod(v,493),n.succeed(o.green(`Project created at ${e}`));try{n.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),n.succeed(o.gray("\u2713 go mod tidy completed"));}catch{n.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await execa("git",["init"],{cwd:e}),await execa("git",["add","-A"],{cwd:e}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gofiber.standard)"],{cwd:e}),console.log(o.gray("\u2713 git repository initialized"));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Fiber project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw n.fail(o.red("Failed to generate Go/Fiber project")),t}}
1395
+ `}function Q(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function Y(e$1){return e({runtimeLabel:"Go/Fiber",projectName:e$1.project_name,fallbackDevCommand:'exec go run ./cmd/server "$@"'})}function z(e){return f({runtimeLabel:"Go/Fiber",projectName:e.project_name})}function Z(e,i){return JSON.stringify({kit_name:"gofiber.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"rapidkit-npm",rapidkit_version:i,created_at:new Date().toISOString()},null,2)}async function pe(e,i){let r={project_name:i.project_name,module_path:i.module_path||i.project_name,author:i.author||"RapidKit User",description:i.description||`Go/Fiber REST API \u2014 ${i.project_name}`,go_version:i.go_version||a,app_version:i.app_version||"0.1.0",port:i.port||"3000",skipGit:i.skipGit??false,skipInstall:i.skipInstall??false},h=b();try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1396
+ `));}let n=S(`Generating Go/Fiber project: ${r.project_name}\u2026`).start();try{let t=(R,w)=>c(d.join(e,R),w),b=d.join(e,"rapidkit"),v=d.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",_(r)),t("go.mod",T(r)),t("internal/config/config.go",q(r)),t("internal/server/server.go",O(r)),t("internal/middleware/requestid.go",k()),t("internal/middleware/requestid_test.go",x(r)),t("internal/apierr/apierr.go",P()),t("internal/apierr/apierr_test.go",D(r)),t("internal/handlers/health.go",y()),t("internal/handlers/health_test.go",C(r)),t("internal/handlers/example.go",B(r)),t("internal/handlers/example_test.go",$(r)),t("internal/config/config_test.go",j(r)),t("internal/middleware/cors.go",H()),t("internal/middleware/cors_test.go",U(r)),t("internal/middleware/ratelimit.go",J(r)),t("internal/middleware/ratelimit_test.go",W(r)),t("internal/server/server_test.go",V(r)),t("docs/doc.go",M(r)),t(".air.toml",K(r)),t("Dockerfile",N()),t("docker-compose.yml",E(r)),t("Makefile",L(r)),t(".golangci.yml",X(r.module_path)),t(".env.example",G(r)),t(".gitignore",A()),t(".github/workflows/ci.yml",I(r)),t("README.md",F(r)),t(".rapidkit/project.json",Z(r,h)),t(".rapidkit/context.json",Q()),t("rapidkit",Y(r)),t("rapidkit.cmd",z(r))]),await promises.chmod(b,493),await promises.chmod(v,493),n.succeed(o.green(`Project created at ${e}`)),r.skipInstall)n.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{n.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),n.succeed(o.gray("\u2713 go mod tidy completed"));}catch{n.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await execa("git",["init"],{cwd:e}),await execa("git",["add","-A"],{cwd:e}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gofiber.standard)"],{cwd:e}),console.log(o.gray("\u2713 git repository initialized"));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Fiber project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw n.fail(o.red("Failed to generate Go/Fiber project")),t}}
1397
1397
  export{pe as generateGoFiberKit};
@@ -1,4 +1,4 @@
1
- import {c,b as b$2,d as d$1,e,f,a}from'./chunk-U7XJZHU6.js';import {b as b$1}from'./chunk-AC6KIKII.js';import {promises}from'fs';import d from'path';import o from'chalk';import _ from'ora';import {execa}from'execa';function T(e){return `package main
1
+ import {c,b as b$2,d as d$1,e,f,a}from'./chunk-X5KRT2DT.js';import {b as b$1}from'./chunk-AC6KIKII.js';import {promises}from'fs';import d from'path';import o from'chalk';import _ from'ora';import {execa}from'execa';function T(e){return `package main
2
2
 
3
3
  import (
4
4
  "context"
@@ -311,7 +311,7 @@ services:
311
311
  CORS_ALLOW_ORIGINS: "*"
312
312
  RATE_LIMIT_RPS: "100"
313
313
  restart: unless-stopped
314
- `}function C(e){return d$1({projectName:e.project_name,devCommand:"GIN_MODE=debug $(GOBIN)/air",runCommand:"GIN_MODE=debug go run $(LDFLAGS) ./cmd/server",testCommand:"GIN_MODE=test go test ./... -v -race",includeLintAndFmt:true})}function y(e){return `# Application
314
+ `}function y(e){return d$1({projectName:e.project_name,devCommand:"GIN_MODE=debug $(GOBIN)/air",runCommand:"GIN_MODE=debug go run $(LDFLAGS) ./cmd/server",testCommand:"GIN_MODE=test go test ./... -v -race",includeLintAndFmt:true})}function C(e){return `# Application
315
315
  PORT=${e.port}
316
316
  APP_ENV=development
317
317
  GIN_MODE=debug
@@ -416,7 +416,7 @@ jobs:
416
416
  uses: golangci/golangci-lint-action@v6
417
417
  with:
418
418
  version: latest
419
- `}function M(e){return `# ${b$2(e.project_name)}
419
+ `}function k(e){return `# ${b$2(e.project_name)}
420
420
 
421
421
  > ${e.description}
422
422
 
@@ -532,7 +532,7 @@ ${e.project_name}/
532
532
  ## License
533
533
 
534
534
  ${e.app_version} \xB7 ${e.author}
535
- `}function k(){return `package middleware
535
+ `}function M(){return `package middleware
536
536
 
537
537
  import (
538
538
  "crypto/rand"
@@ -1454,6 +1454,6 @@ issues:
1454
1454
  linters:
1455
1455
  - errcheck
1456
1456
  - wrapcheck
1457
- `}function Q(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function z(e,n){return JSON.stringify({kit_name:"gogin.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"rapidkit-npm",rapidkit_version:n,created_at:new Date().toISOString()},null,2)}function Y(e$1){return e({runtimeLabel:"Go/Gin",projectName:e$1.project_name,fallbackDevCommand:'cd "$SCRIPT_DIR" && GIN_MODE=debug exec go run ./cmd/server "$@"'})}function Z(e){return f({runtimeLabel:"Go/Gin",projectName:e.project_name})}async function ce(e,n){let r={project_name:n.project_name,module_path:n.module_path||n.project_name,author:n.author||"RapidKit User",description:n.description||`Go/Gin REST API \u2014 ${n.project_name}`,go_version:n.go_version||a,app_version:n.app_version||"0.1.0",port:n.port||"8080",skipGit:n.skipGit??false},f=b$1();try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1458
- `));}let i=_(`Generating Go/Gin project: ${r.project_name}\u2026`).start();try{let t=(v,S)=>c(d.join(e,v),S),w=d.join(e,"rapidkit"),R=d.join(e,"rapidkit.cmd");await Promise.all([t("cmd/server/main.go",T(r)),t("go.mod",O(r)),t("internal/config/config.go",N(r)),t("internal/server/server.go",b(r)),t("internal/middleware/requestid.go",k()),t("internal/middleware/requestid_test.go",A(r)),t("internal/apierr/apierr.go",P()),t("internal/apierr/apierr_test.go",D(r)),t("internal/handlers/health.go",G()),t("internal/handlers/health_test.go",q(r)),t("internal/handlers/example.go",F(r)),t("internal/handlers/example_test.go",$(r)),t("internal/config/config_test.go",j(r)),t("internal/middleware/cors.go",U()),t("internal/middleware/cors_test.go",B(r)),t("internal/middleware/ratelimit.go",W(r)),t("internal/middleware/ratelimit_test.go",J(r)),t("internal/server/server_test.go",V(r)),t("docs/doc.go",H(r)),t(".air.toml",K(r)),t("Dockerfile",E()),t("docker-compose.yml",L(r)),t("Makefile",C(r)),t(".golangci.yml",X(r.module_path)),t(".env.example",y(r)),t(".gitignore",I()),t(".github/workflows/ci.yml",x(r)),t("README.md",M(r)),t(".rapidkit/project.json",z(r,f)),t(".rapidkit/context.json",Q()),t("rapidkit",Y(r)),t("rapidkit.cmd",Z(r))]),await promises.chmod(w,493),await promises.chmod(R,493),i.succeed(o.green(`Project created at ${e}`));try{i.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),i.succeed(o.gray("\u2713 go mod tidy completed"));}catch{i.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await execa("git",["init"],{cwd:e}),await execa("git",["add","-A"],{cwd:e}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gogin.standard)"],{cwd:e}),console.log(o.gray("\u2713 git repository initialized"));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Gin project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw i.fail(o.red("Failed to generate Go/Gin project")),t}}
1457
+ `}function Q(){return JSON.stringify({engine:"npm",runtime:"go"},null,2)}function z(e,n){return JSON.stringify({kit_name:"gogin.standard",runtime:"go",module_support:false,project_name:e.project_name,module_path:e.module_path,app_version:e.app_version,created_by:"rapidkit-npm",rapidkit_version:n,created_at:new Date().toISOString()},null,2)}function Y(e$1){return e({runtimeLabel:"Go/Gin",projectName:e$1.project_name,fallbackDevCommand:'cd "$SCRIPT_DIR" && GIN_MODE=debug exec go run ./cmd/server "$@"'})}function Z(e){return f({runtimeLabel:"Go/Gin",projectName:e.project_name})}async function ce(e,n){let r={project_name:n.project_name,module_path:n.module_path||n.project_name,author:n.author||"RapidKit User",description:n.description||`Go/Gin REST API \u2014 ${n.project_name}`,go_version:n.go_version||a,app_version:n.app_version||"0.1.0",port:n.port||"8080",skipGit:n.skipGit??false,skipInstall:n.skipInstall??false},f=b$1();try{await execa("go",["version"],{timeout:3e3});}catch{console.log(o.yellow("\n\u26A0 Go not found in PATH \u2014 project will be scaffolded, but `go mod tidy` requires Go 1.21+")),console.log(o.gray(` Install: https://go.dev/dl/
1458
+ `));}let i=_(`Generating Go/Gin project: ${r.project_name}\u2026`).start();try{let t=(v,S)=>c(d.join(e,v),S),w=d.join(e,"rapidkit"),R=d.join(e,"rapidkit.cmd");if(await Promise.all([t("cmd/server/main.go",T(r)),t("go.mod",O(r)),t("internal/config/config.go",N(r)),t("internal/server/server.go",b(r)),t("internal/middleware/requestid.go",M()),t("internal/middleware/requestid_test.go",A(r)),t("internal/apierr/apierr.go",P()),t("internal/apierr/apierr_test.go",D(r)),t("internal/handlers/health.go",G()),t("internal/handlers/health_test.go",q(r)),t("internal/handlers/example.go",F(r)),t("internal/handlers/example_test.go",$(r)),t("internal/config/config_test.go",j(r)),t("internal/middleware/cors.go",U()),t("internal/middleware/cors_test.go",B(r)),t("internal/middleware/ratelimit.go",W(r)),t("internal/middleware/ratelimit_test.go",J(r)),t("internal/server/server_test.go",V(r)),t("docs/doc.go",H(r)),t(".air.toml",K(r)),t("Dockerfile",E()),t("docker-compose.yml",L(r)),t("Makefile",y(r)),t(".golangci.yml",X(r.module_path)),t(".env.example",C(r)),t(".gitignore",I()),t(".github/workflows/ci.yml",x(r)),t("README.md",k(r)),t(".rapidkit/project.json",z(r,f)),t(".rapidkit/context.json",Q()),t("rapidkit",Y(r)),t("rapidkit.cmd",Z(r))]),await promises.chmod(w,493),await promises.chmod(R,493),i.succeed(o.green(`Project created at ${e}`)),r.skipInstall)i.info(o.gray("Skipped Go dependency warm-up (--skip-install)."));else try{i.start("Fetching Go dependencies\u2026"),await execa("go",["mod","tidy"],{cwd:e,timeout:12e4}),i.succeed(o.gray("\u2713 go mod tidy completed"));}catch{i.warn(o.yellow("\u26A0 go mod tidy failed \u2014 run manually: go mod tidy"));}if(!r.skipGit)try{await execa("git",["init"],{cwd:e}),await execa("git",["add","-A"],{cwd:e}),await execa("git",["commit","-m","chore: initial scaffold (rapidkit gogin.standard)"],{cwd:e}),console.log(o.gray("\u2713 git repository initialized"));}catch{console.log(o.gray("\u26A0 git init skipped (git not found or error)"));}console.log(""),console.log(o.bold("\u2705 Go/Gin project ready!")),console.log(""),console.log(o.cyan("Next steps:")),console.log(o.white(` cd ${r.project_name}`)),console.log(o.white(" make run # start dev server")),console.log(o.white(" make test # run tests")),console.log(""),console.log(o.gray("Server will listen on port "+r.port)),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/live")),console.log(o.gray(" http://localhost:"+r.port+"/api/v1/health/ready")),console.log(""),console.log(o.yellow("\u2139 RapidKit modules are not available for Go projects (module system uses Python/pip).")),console.log("");}catch(t){throw i.fail(o.red("Failed to generate Go/Gin project")),t}}
1459
1459
  export{ce as generateGoGinKit};
package/dist/index.d.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  declare function handleCreateOrFallback(args: string[]): Promise<number>;
3
- declare const NPM_ONLY_TOP_LEVEL_COMMANDS: readonly ["analyze", "readiness", "doctor", "autopilot", "import", "snapshot", "project", "workspace", "bootstrap", "setup", "cache", "mirror", "ai", "config", "shell"];
3
+ declare const NPM_ONLY_TOP_LEVEL_COMMANDS: readonly ["analyze", "readiness", "doctor", "autopilot", "import", "snapshot", "workspace", "bootstrap", "setup", "cache", "mirror", "ai", "config", "product", "shell", "commands"];
4
+ declare const NPM_ONLY_SCOPED_COMMANDS: readonly [readonly ["project", "commands"], readonly ["project", "archives"], readonly ["project", "archive"], readonly ["project", "restore"], readonly ["project", "delete"]];
4
5
  declare const WRAPPER_ORCHESTRATED_PROJECT_COMMANDS: readonly ["init"];
6
+ declare function isNpmExecInvocation(env?: NodeJS.ProcessEnv): boolean;
5
7
  interface DoctorWorkspaceShadowDiagnostic {
6
8
  detected: boolean;
7
9
  candidatePath?: string;
@@ -28,4 +30,4 @@ declare function handleMirrorCommand(args: string[]): Promise<number>;
28
30
  declare function handleInitCommand(args: string[]): Promise<number>;
29
31
  declare function shouldForwardToCore(args: string[]): Promise<boolean>;
30
32
 
31
- export { type DoctorWorkspaceShadowDiagnostic, NPM_ONLY_TOP_LEVEL_COMMANDS, WRAPPER_ORCHESTRATED_PROJECT_COMMANDS, detectWindowsDoctorWorkspaceShadow, handleBootstrapCommand, handleCacheCommand, handleCreateOrFallback, handleImportCommand, handleInitCommand, handleMirrorCommand, handleSetupCommand, installWorkspaceDependencies, shouldForwardToCore };
33
+ export { type DoctorWorkspaceShadowDiagnostic, NPM_ONLY_SCOPED_COMMANDS, NPM_ONLY_TOP_LEVEL_COMMANDS, WRAPPER_ORCHESTRATED_PROJECT_COMMANDS, detectWindowsDoctorWorkspaceShadow, handleBootstrapCommand, handleCacheCommand, handleCreateOrFallback, handleImportCommand, handleInitCommand, handleMirrorCommand, handleSetupCommand, installWorkspaceDependencies, isNpmExecInvocation, shouldForwardToCore };