@socketsecurity/lib 6.0.6 → 6.0.8
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.
- package/CHANGELOG.md +46 -1
- package/README.md +1 -1
- package/dist/ai/agent-context.d.mts +103 -0
- package/dist/ai/agent-context.js +157 -0
- package/dist/ai/backends.d.mts +83 -0
- package/dist/ai/backends.js +173 -0
- package/dist/ai/credentials.d.mts +49 -0
- package/dist/ai/credentials.js +82 -0
- package/dist/ai/discover.d.mts +6 -2
- package/dist/ai/discover.js +4 -3
- package/dist/ai/exec.d.mts +52 -0
- package/dist/ai/exec.js +92 -0
- package/dist/ai/http.d.mts +132 -0
- package/dist/ai/http.js +130 -0
- package/dist/ai/profiles.d.mts +41 -6
- package/dist/ai/profiles.js +52 -10
- package/dist/ai/route.d.mts +69 -0
- package/dist/ai/route.js +156 -0
- package/dist/ai/spawn.d.mts +10 -2
- package/dist/ai/spawn.js +56 -31
- package/dist/ai/subagent-status.d.mts +48 -0
- package/dist/ai/subagent-status.js +57 -0
- package/dist/ai/tier.d.mts +60 -0
- package/dist/ai/tier.js +53 -0
- package/dist/ai/types.d.mts +31 -6
- package/dist/ai/worktree.d.mts +6 -6
- package/dist/ai/worktree.js +5 -1
- package/dist/ansi/strip.d.ts +1 -1
- package/dist/ansi/strip.js +0 -2
- package/dist/archives/_internal.js +7 -9
- package/dist/archives/extract.js +1 -1
- package/dist/archives/tar.js +7 -7
- package/dist/archives/zip.js +5 -7
- package/dist/argv/flag-predicates.d.ts +12 -12
- package/dist/argv/flag-predicates.js +17 -17
- package/dist/argv/flag-types.d.ts +18 -18
- package/dist/argv/flag-types.js +4 -4
- package/dist/argv/parse.d.ts +20 -3
- package/dist/argv/parse.js +1 -1
- package/dist/arrays/_internal.js +11 -12
- package/dist/arrays/chunk.js +0 -1
- package/dist/arrays/join.d.ts +37 -3
- package/dist/arrays/join.js +47 -7
- package/dist/arrays/unique.js +0 -1
- package/dist/bin/_internal.d.ts +1 -1
- package/dist/bin/_internal.js +1 -1
- package/dist/bin/exec.js +2 -3
- package/dist/bin/find.js +17 -17
- package/dist/bin/prim.cjs +36175 -35861
- package/dist/bin/resolve.js +13 -14
- package/dist/bin/which.js +8 -8
- package/dist/cache/ttl/store.js +6 -6
- package/dist/checks/primordials-defaults.d.ts +3 -3
- package/dist/checks/primordials-defaults.js +3 -3
- package/dist/checks/primordials.js +4 -3
- package/dist/{bin → cli}/check-primordials.d.ts +18 -13
- package/dist/{bin → cli}/check-primordials.js +58 -55
- package/dist/{bin → cli}/check.js +3 -3
- package/dist/{bin → cli}/socket-lib.d.ts +1 -1
- package/dist/{bin → cli}/socket-lib.js +4 -4
- package/dist/colors/socket-palette.js +7 -9
- package/dist/compression/_internal.d.ts +12 -12
- package/dist/compression/_internal.js +18 -18
- package/dist/compression/brotli.d.ts +26 -27
- package/dist/compression/brotli.js +39 -35
- package/dist/compression/gzip.d.ts +23 -23
- package/dist/compression/gzip.js +46 -42
- package/dist/constants/agents.d.ts +3 -1
- package/dist/constants/agents.js +15 -11
- package/dist/constants/licenses.js +3 -3
- package/dist/constants/node.d.ts +23 -0
- package/dist/constants/node.js +47 -15
- package/dist/constants/packages.d.ts +3 -0
- package/dist/constants/packages.js +24 -29
- package/dist/constants/platform.d.ts +30 -3
- package/dist/constants/platform.js +72 -12
- package/dist/constants/runtime.d.ts +22 -0
- package/dist/constants/runtime.js +32 -0
- package/dist/constants/socket.d.ts +2 -6
- package/dist/constants/socket.js +12 -14
- package/dist/cover/code.js +10 -10
- package/dist/cover/formatters.js +5 -5
- package/dist/crypto/hash.d.ts +30 -2
- package/dist/crypto/hash.js +47 -13
- package/dist/debug/_internal.js +4 -6
- package/dist/debug/caller-info.js +3 -4
- package/dist/debug/namespace.d.ts +7 -0
- package/dist/debug/namespace.js +21 -12
- package/dist/debug/output.js +21 -24
- package/dist/debug/types.d.ts +4 -4
- package/dist/dlx/arborist.js +18 -8
- package/dist/dlx/binary-cache.js +15 -15
- package/dist/dlx/binary-download.d.ts +1 -1
- package/dist/dlx/binary-download.js +11 -11
- package/dist/dlx/binary-resolution.js +17 -15
- package/dist/dlx/binary-types.d.ts +5 -5
- package/dist/dlx/binary.js +5 -5
- package/dist/dlx/cache.js +1 -1
- package/dist/dlx/detect.d.ts +42 -25
- package/dist/dlx/detect.js +86 -77
- package/dist/dlx/dir.js +2 -2
- package/dist/dlx/firewall.d.ts +9 -1
- package/dist/dlx/firewall.js +1 -1
- package/dist/dlx/lockfile.d.ts +19 -18
- package/dist/dlx/lockfile.js +19 -16
- package/dist/dlx/manifest.d.ts +6 -6
- package/dist/dlx/manifest.js +5 -5
- package/dist/dlx/package.d.ts +10 -10
- package/dist/dlx/package.js +20 -16
- package/dist/dlx/packages.js +4 -4
- package/dist/dlx/paths.js +7 -7
- package/dist/dlx/spec.js +1 -1
- package/dist/dlx/types.d.ts +28 -27
- package/dist/eco/cargo/parse-lockfile.d.ts +2 -3
- package/dist/eco/cargo/parse-lockfile.js +5 -5
- package/dist/eco/manifest/analyze-lockfile.js +2 -2
- package/dist/eco/manifest/detect-format.js +5 -5
- package/dist/eco/manifest/find-packages.js +2 -2
- package/dist/eco/manifest/get-package-versions.js +2 -2
- package/dist/eco/manifest/get-package.js +2 -2
- package/dist/eco/manifest/parse-lockfile.js +2 -2
- package/dist/eco/manifest/parse-manifest.js +2 -2
- package/dist/eco/manifest/parse.js +2 -2
- package/dist/eco/npm/npm/exec.js +2 -2
- package/dist/eco/npm/npm/flags.js +7 -12
- package/dist/eco/npm/npm/parse-lockfile.d.ts +17 -18
- package/dist/eco/npm/npm/parse-lockfile.js +4 -4
- package/dist/eco/npm/parse-package-json.d.ts +11 -0
- package/dist/eco/npm/parse-package-json.js +3 -3
- package/dist/eco/npm/pnpm/exec.d.ts +1 -1
- package/dist/eco/npm/pnpm/exec.js +5 -5
- package/dist/eco/npm/pnpm/flags.js +0 -3
- package/dist/eco/npm/pnpm/parse-lockfile.d.ts +6 -4
- package/dist/eco/npm/pnpm/parse-lockfile.js +7 -7
- package/dist/eco/npm/script.js +9 -6
- package/dist/eco/npm/yarnpkg/yarn/exec.js +4 -4
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.d.ts +3 -4
- package/dist/eco/npm/yarnpkg/yarn/parse-lockfile.js +9 -9
- package/dist/effects/pulse-frames.d.ts +3 -1
- package/dist/effects/shimmer-keyframes.d.ts +1 -1
- package/dist/effects/shimmer-terminal.d.ts +1 -1
- package/dist/env/boolean.js +0 -1
- package/dist/env/ci.js +0 -1
- package/dist/env/debug.js +0 -1
- package/dist/env/github-status.d.ts +51 -0
- package/dist/env/github-status.js +90 -0
- package/dist/env/github.js +0 -8
- package/dist/env/home.js +0 -1
- package/dist/env/locale.js +0 -3
- package/dist/env/node-auth-token.js +0 -1
- package/dist/env/node-env.js +0 -1
- package/dist/env/node-version-managers.d.ts +53 -0
- package/dist/env/node-version-managers.js +90 -0
- package/dist/env/npm.js +0 -5
- package/dist/env/number.js +0 -1
- package/dist/env/package-manager.js +3 -6
- package/dist/env/path.js +0 -1
- package/dist/env/pre-commit.js +1 -2
- package/dist/env/proxy.js +1 -1
- package/dist/env/rewire.d.ts +8 -6
- package/dist/env/rewire.js +16 -17
- package/dist/env/shell.js +0 -1
- package/dist/env/socket-cli.js +5 -18
- package/dist/env/socket-mcp.d.ts +114 -0
- package/dist/env/socket-mcp.js +146 -0
- package/dist/env/socket.d.ts +8 -109
- package/dist/env/socket.js +22 -167
- package/dist/env/string.js +0 -1
- package/dist/env/temp-dir.js +0 -3
- package/dist/env/term.js +0 -1
- package/dist/env/test.js +3 -6
- package/dist/env/windows.js +0 -4
- package/dist/env/xdg.js +0 -3
- package/dist/errors/predicates.js +1 -1
- package/dist/events/exit/_internal.d.ts +11 -9
- package/dist/events/exit/_internal.js +31 -35
- package/dist/events/exit/handler.js +3 -4
- package/dist/events/exit/intercept.js +4 -6
- package/dist/events/exit/lifecycle.js +16 -18
- package/dist/events/exit/signals.js +1 -2
- package/dist/events/exit/types.d.ts +6 -5
- package/dist/external/@npmcli/package-json.js +2 -2
- package/dist/external/@npmcli/promise-spawn.js +3 -1
- package/dist/external/npm-pack.js +2 -2
- package/dist/external/pico-pack.js +4 -2
- package/dist/external/which.js +3 -1
- package/dist/external-tools/bazel/asset-names.d.ts +1 -1
- package/dist/external-tools/bazel/asset-names.js +5 -2
- package/dist/external-tools/bazel/from-download.d.ts +1 -1
- package/dist/external-tools/bazel/from-download.js +5 -2
- package/dist/external-tools/bazel/read-bazel-version-file.js +1 -1
- package/dist/external-tools/bazel/resolve-bazel-version.js +4 -0
- package/dist/external-tools/bazel/resolve.d.ts +3 -3
- package/dist/external-tools/bazel/resolve.js +16 -8
- package/dist/external-tools/bazel/types.d.ts +1 -1
- package/dist/external-tools/cdxgen/asset-names.d.ts +1 -1
- package/dist/external-tools/cdxgen/asset-names.js +5 -2
- package/dist/external-tools/cdxgen/from-download.d.ts +1 -1
- package/dist/external-tools/cdxgen/from-download.js +7 -4
- package/dist/external-tools/cdxgen/from-vfs.js +1 -1
- package/dist/external-tools/cdxgen/resolve.d.ts +3 -3
- package/dist/external-tools/cdxgen/resolve.js +16 -8
- package/dist/external-tools/cdxgen/types.d.ts +1 -1
- package/dist/external-tools/from-download.d.ts +3 -3
- package/dist/external-tools/from-download.js +12 -6
- package/dist/external-tools/from-pip-venv.d.ts +1 -1
- package/dist/external-tools/from-pip-venv.js +12 -5
- package/dist/external-tools/janus/asset-names.d.ts +1 -1
- package/dist/external-tools/janus/asset-names.js +5 -2
- package/dist/external-tools/janus/from-download.d.ts +1 -1
- package/dist/external-tools/janus/from-download.js +5 -2
- package/dist/external-tools/janus/from-vfs.js +1 -1
- package/dist/external-tools/janus/resolve.d.ts +3 -3
- package/dist/external-tools/janus/resolve.js +16 -8
- package/dist/external-tools/janus/types.d.ts +1 -1
- package/dist/external-tools/jre/asset-names.d.ts +1 -1
- package/dist/external-tools/jre/asset-names.js +5 -2
- package/dist/external-tools/jre/detect-platform-arch.d.ts +10 -6
- package/dist/external-tools/jre/detect-platform-arch.js +29 -14
- package/dist/external-tools/jre/from-download.d.ts +1 -1
- package/dist/external-tools/jre/from-download.js +7 -4
- package/dist/external-tools/jre/from-java-home.js +2 -2
- package/dist/external-tools/jre/from-vfs.js +3 -3
- package/dist/external-tools/jre/resolve.d.ts +3 -3
- package/dist/external-tools/jre/resolve.js +16 -8
- package/dist/external-tools/jre/types.d.ts +1 -1
- package/dist/external-tools/manifest.d.ts +25 -7
- package/dist/external-tools/manifest.js +13 -13
- package/dist/external-tools/opengrep/asset-names.d.ts +1 -1
- package/dist/external-tools/opengrep/asset-names.js +5 -2
- package/dist/external-tools/opengrep/from-download.d.ts +1 -1
- package/dist/external-tools/opengrep/from-download.js +5 -2
- package/dist/external-tools/opengrep/from-vfs.js +1 -1
- package/dist/external-tools/opengrep/resolve.d.ts +3 -3
- package/dist/external-tools/opengrep/resolve.js +16 -8
- package/dist/external-tools/opengrep/types.d.ts +1 -1
- package/dist/external-tools/python/asset-names.d.ts +76 -0
- package/dist/external-tools/python/asset-names.js +111 -0
- package/dist/external-tools/python/dlx.d.ts +80 -0
- package/dist/external-tools/python/dlx.js +98 -0
- package/dist/external-tools/python/from-download.d.ts +53 -0
- package/dist/external-tools/python/from-download.js +75 -0
- package/dist/external-tools/python/from-path.d.ts +7 -0
- package/dist/external-tools/python/from-path.js +23 -0
- package/dist/external-tools/python/pin.d.ts +121 -0
- package/dist/external-tools/python/pin.js +176 -0
- package/dist/external-tools/python/pip-install.d.ts +75 -0
- package/dist/external-tools/python/pip-install.js +142 -0
- package/dist/external-tools/python/resolve.d.ts +42 -0
- package/dist/external-tools/python/resolve.js +66 -0
- package/dist/external-tools/python/types.d.ts +49 -0
- package/dist/external-tools/sbt/asset-names.d.ts +1 -1
- package/dist/external-tools/sbt/asset-names.js +5 -2
- package/dist/external-tools/sbt/from-download.d.ts +1 -1
- package/dist/external-tools/sbt/from-download.js +5 -2
- package/dist/external-tools/sbt/from-vfs.js +1 -1
- package/dist/external-tools/sbt/resolve.d.ts +3 -3
- package/dist/external-tools/sbt/resolve.js +16 -8
- package/dist/external-tools/sbt/types.d.ts +1 -1
- package/dist/external-tools/skillspector/from-dlx.d.ts +1 -1
- package/dist/external-tools/skillspector/from-dlx.js +10 -3
- package/dist/external-tools/skillspector/from-path.js +3 -5
- package/dist/external-tools/skillspector/from-vfs.js +1 -1
- package/dist/external-tools/skillspector/resolve.d.ts +2 -2
- package/dist/external-tools/skillspector/resolve.js +14 -6
- package/dist/external-tools/synp/asset-names.d.ts +1 -1
- package/dist/external-tools/synp/asset-names.js +6 -2
- package/dist/external-tools/synp/from-download.d.ts +1 -1
- package/dist/external-tools/synp/from-download.js +7 -4
- package/dist/external-tools/synp/from-vfs.js +1 -1
- package/dist/external-tools/synp/resolve.d.ts +3 -3
- package/dist/external-tools/synp/resolve.js +16 -8
- package/dist/external-tools/trivy/asset-names.d.ts +1 -1
- package/dist/external-tools/trivy/asset-names.js +5 -2
- package/dist/external-tools/trivy/from-download.d.ts +1 -1
- package/dist/external-tools/trivy/from-download.js +7 -4
- package/dist/external-tools/trivy/from-vfs.js +1 -1
- package/dist/external-tools/trivy/resolve.d.ts +3 -3
- package/dist/external-tools/trivy/resolve.js +16 -8
- package/dist/external-tools/trivy/types.d.ts +1 -1
- package/dist/external-tools/trufflehog/asset-names.d.ts +1 -1
- package/dist/external-tools/trufflehog/asset-names.js +5 -2
- package/dist/external-tools/trufflehog/from-download.d.ts +1 -1
- package/dist/external-tools/trufflehog/from-download.js +7 -4
- package/dist/external-tools/trufflehog/from-vfs.js +1 -1
- package/dist/external-tools/trufflehog/resolve.d.ts +3 -3
- package/dist/external-tools/trufflehog/resolve.js +16 -8
- package/dist/external-tools/trufflehog/types.d.ts +1 -1
- package/dist/fs/_internal.d.ts +1 -1
- package/dist/fs/_internal.js +7 -7
- package/dist/fs/access.js +5 -9
- package/dist/fs/allowed-dirs-cache.d.ts +47 -0
- package/dist/fs/allowed-dirs-cache.js +69 -0
- package/dist/fs/encoding.js +5 -7
- package/dist/fs/{find-up.js → find.js} +12 -14
- package/dist/fs/inspect.js +7 -13
- package/dist/fs/read-dir.js +7 -10
- package/dist/fs/read-file.js +8 -14
- package/dist/fs/read-json-cache.d.ts +13 -4
- package/dist/fs/read-json-cache.js +9 -6
- package/dist/fs/read-json.js +4 -6
- package/dist/fs/resolve-module.js +7 -3
- package/dist/fs/safe.d.ts +1 -1
- package/dist/fs/safe.js +13 -14
- package/dist/fs/unique.js +4 -5
- package/dist/fs/validate.js +1 -2
- package/dist/fs/write-json.js +4 -5
- package/dist/git/_internal.js +11 -11
- package/dist/git/changed.js +4 -4
- package/dist/git/repo.js +5 -7
- package/dist/git/staged.js +12 -4
- package/dist/git/tracked.d.ts +84 -0
- package/dist/git/tracked.js +163 -0
- package/dist/git/unstaged.js +12 -4
- package/dist/github/ghsa.js +2 -2
- package/dist/github/refs-cache.d.ts +1 -1
- package/dist/github/refs-cache.js +5 -5
- package/dist/github/refs-graphql.js +4 -0
- package/dist/github/refs-rest.js +9 -5
- package/dist/github/refs.js +15 -10
- package/dist/github/{fetch.js → request.js} +13 -2
- package/dist/github/token.js +1 -1
- package/dist/github/types.d.ts +1 -1
- package/dist/globs/_internal.js +8 -10
- package/dist/globs/match.js +13 -7
- package/dist/globs/matcher.d.ts +3 -3
- package/dist/globs/matcher.js +16 -14
- package/dist/globs/stream.js +1 -2
- package/dist/globs/types.d.ts +24 -24
- package/dist/http-request/_internal.d.ts +1 -1
- package/dist/http-request/browser.js +10 -4
- package/dist/http-request/checksum-file.d.ts +55 -0
- package/dist/http-request/checksum-file.js +95 -0
- package/dist/http-request/download-types.d.ts +15 -23
- package/dist/http-request/download.js +3 -3
- package/dist/http-request/{browser-fetch.d.ts → fetch/browser.d.ts} +2 -2
- package/dist/http-request/{browser-fetch.js → fetch/browser.js} +4 -4
- package/dist/http-request/headers.js +1 -2
- package/dist/http-request/request-attempt.js +38 -34
- package/dist/http-request/request-types.d.ts +2 -2
- package/dist/http-request/request.js +1 -1
- package/dist/http-request/user-agent.js +4 -5
- package/dist/integrity.d.ts +92 -18
- package/dist/integrity.js +125 -30
- package/dist/ipc/directory.js +2 -2
- package/dist/ipc/paths.js +1 -1
- package/dist/ipc/write.js +1 -1
- package/dist/ipc-cli/get.js +12 -12
- package/dist/json/edit.js +51 -44
- package/dist/json/format.js +1 -1
- package/dist/json/parse.d.ts +1 -1
- package/dist/json/parse.js +3 -7
- package/dist/logger/_internal.d.ts +4 -4
- package/dist/logger/_internal.js +3 -3
- package/dist/logger/colors.js +4 -3
- package/dist/logger/console-methods.d.ts +132 -0
- package/dist/logger/console-methods.js +169 -0
- package/dist/logger/console.d.ts +12 -0
- package/dist/logger/console.js +42 -11
- package/dist/logger/indentation-methods.d.ts +81 -0
- package/dist/logger/indentation-methods.js +121 -0
- package/dist/logger/node.d.ts +16 -338
- package/dist/logger/node.js +75 -608
- package/dist/logger/options.d.ts +39 -0
- package/dist/logger/options.js +47 -0
- package/dist/logger/semantic-methods.d.ts +63 -0
- package/dist/logger/semantic-methods.js +108 -0
- package/dist/logger/stream-methods.d.ts +63 -0
- package/dist/logger/stream-methods.js +101 -0
- package/dist/logger/stream.d.ts +37 -0
- package/dist/logger/stream.js +42 -0
- package/dist/logger/symbols-builder.js +9 -9
- package/dist/logger/symbols.d.ts +2 -25
- package/dist/logger/symbols.js +53 -74
- package/dist/logger/types.d.ts +1 -1
- package/dist/memo/types.d.ts +6 -6
- package/dist/native-messaging/host.d.ts +20 -0
- package/dist/native-messaging/host.js +120 -0
- package/dist/native-messaging/index.d.ts +5 -0
- package/dist/native-messaging/index.js +22 -0
- package/dist/native-messaging/install.d.ts +60 -0
- package/dist/native-messaging/install.js +144 -0
- package/dist/native-messaging/rate-limit.d.ts +69 -0
- package/dist/native-messaging/rate-limit.js +119 -0
- package/dist/native-messaging/run.d.ts +10 -0
- package/dist/native-messaging/run.js +17 -0
- package/dist/node/async-hooks.js +4 -3
- package/dist/node/child-process.js +4 -3
- package/dist/node/crypto.js +4 -3
- package/dist/node/events.js +4 -3
- package/dist/node/fs-promises.js +4 -3
- package/dist/node/fs.d.ts +22 -6
- package/dist/node/fs.js +17 -3
- package/dist/node/http.js +4 -3
- package/dist/node/https.js +4 -3
- package/dist/node/module.js +10 -6
- package/dist/node/os.d.ts +10 -2
- package/dist/node/os.js +12 -4
- package/dist/node/path.d.ts +11 -2
- package/dist/node/path.js +18 -4
- package/dist/node/timers-promises.js +4 -3
- package/dist/node/url.js +4 -3
- package/dist/node/util.js +4 -3
- package/dist/objects/getters.js +6 -8
- package/dist/objects/inspect.js +1 -4
- package/dist/objects/mutate.js +4 -5
- package/dist/objects/predicates.js +1 -5
- package/dist/objects/sort.js +3 -7
- package/dist/packages/edit-class.d.ts +2 -3
- package/dist/packages/edit-class.js +53 -48
- package/dist/packages/edit.js +12 -14
- package/dist/packages/exports.js +15 -21
- package/dist/packages/fetch.d.ts +16 -0
- package/dist/packages/fetch.js +81 -0
- package/dist/packages/find.d.ts +55 -0
- package/dist/packages/find.js +65 -0
- package/dist/packages/isolation.js +14 -14
- package/dist/packages/licenses.js +18 -18
- package/dist/packages/manifest.js +16 -19
- package/dist/packages/metadata-extensions.d.ts +14 -0
- package/dist/packages/metadata-extensions.js +43 -0
- package/dist/packages/normalize.js +6 -10
- package/dist/packages/provenance.js +17 -19
- package/dist/packages/read.d.ts +29 -0
- package/dist/packages/read.js +66 -0
- package/dist/packages/specs.d.ts +48 -1
- package/dist/packages/specs.js +75 -12
- package/dist/packages/tarball.d.ts +24 -0
- package/dist/packages/tarball.js +81 -0
- package/dist/packages/types.d.ts +22 -22
- package/dist/packages/validation.js +0 -3
- package/dist/paths/_internal.d.ts +2 -1
- package/dist/paths/_internal.js +7 -19
- package/dist/paths/conversion.js +5 -9
- package/dist/paths/dirnames.d.ts +1 -0
- package/dist/paths/dirnames.js +2 -0
- package/dist/paths/filenames.d.ts +0 -1
- package/dist/paths/filenames.js +0 -2
- package/dist/paths/normalize.js +4 -5
- package/dist/paths/packages.js +4 -7
- package/dist/paths/predicates.js +9 -16
- package/dist/paths/resolve.js +17 -25
- package/dist/paths/rewire.d.ts +5 -0
- package/dist/paths/rewire.js +3 -3
- package/dist/paths/socket.d.ts +74 -111
- package/dist/paths/socket.js +106 -139
- package/dist/paths/walk.d.ts +1 -1
- package/dist/paths/walk.js +4 -4
- package/dist/perf/report.js +2 -2
- package/dist/perf/types.d.ts +1 -1
- package/dist/pkg-ext/data.js +1 -1
- package/dist/primordials/array.js +9 -9
- package/dist/primordials/date.js +2 -2
- package/dist/primordials/error.js +3 -3
- package/dist/primordials/headers.d.ts +10 -0
- package/dist/primordials/headers.js +23 -0
- package/dist/primordials/intl.d.ts +13 -0
- package/dist/primordials/intl.js +26 -0
- package/dist/primordials/math.js +33 -33
- package/dist/primordials/number.js +9 -9
- package/dist/primordials/object.js +5 -5
- package/dist/primordials/process.d.ts +88 -0
- package/dist/primordials/process.js +132 -0
- package/dist/primordials/string.d.ts +2 -2
- package/dist/primordials/string.js +6 -6
- package/dist/primordials/symbol.js +3 -3
- package/dist/primordials/uncurry.d.ts +1 -2
- package/dist/primordials/uncurry.js +9 -9
- package/dist/process/abort.js +3 -3
- package/dist/process/lock-manager.js +8 -8
- package/dist/process/spawn/_internal.js +6 -8
- package/dist/process/spawn/child.js +20 -14
- package/dist/process/spawn/errors.js +3 -5
- package/dist/process/spawn/kill-tree.d.ts +53 -0
- package/dist/process/spawn/kill-tree.js +85 -0
- package/dist/process/spawn/stdio.js +0 -1
- package/dist/process/spawn/types.d.ts +5 -5
- package/dist/process/transient.js +2 -2
- package/dist/promises/_internal.d.ts +2 -1
- package/dist/promises/_internal.js +2 -6
- package/dist/promises/iterate.js +11 -15
- package/dist/promises/options.js +3 -6
- package/dist/promises/retry.js +4 -5
- package/dist/promises/timers.d.ts +30 -0
- package/dist/promises/timers.js +48 -0
- package/dist/regexps/spec.js +1 -1
- package/dist/releases/github-archives.d.ts +6 -6
- package/dist/releases/github-archives.js +3 -3
- package/dist/releases/github-asset-url.d.ts +1 -1
- package/dist/releases/github-asset-url.js +5 -5
- package/dist/releases/github-downloads.d.ts +1 -1
- package/dist/releases/github-downloads.js +3 -3
- package/dist/releases/github-listing.d.ts +12 -4
- package/dist/releases/github-listing.js +20 -7
- package/dist/releases/github-retry-config.js +1 -1
- package/dist/releases/github-types.d.ts +6 -6
- package/dist/releases/socket-btm-binary-naming.d.ts +107 -0
- package/dist/releases/socket-btm-binary-naming.js +155 -0
- package/dist/releases/socket-btm.d.ts +8 -115
- package/dist/releases/socket-btm.js +16 -159
- package/dist/schema/types.d.ts +4 -5
- package/dist/schema/validate.js +1 -1
- package/dist/sea/detect.js +6 -6
- package/dist/secrets/_internal.d.ts +2 -2
- package/dist/secrets/_internal.js +2 -2
- package/dist/secrets/compare.d.ts +45 -0
- package/dist/secrets/compare.js +61 -0
- package/dist/secrets/find.d.ts +2 -2
- package/dist/secrets/find.js +10 -4
- package/dist/secrets/keychain.d.ts +1 -1
- package/dist/secrets/keychain.js +6 -4
- package/dist/secrets/linux.js +40 -52
- package/dist/secrets/macos.d.ts +2 -3
- package/dist/secrets/macos.js +24 -33
- package/dist/secrets/rc.d.ts +4 -4
- package/dist/secrets/rc.js +27 -17
- package/dist/secrets/socket-api-token.d.ts +4 -4
- package/dist/secrets/socket-api-token.js +26 -9
- package/dist/secrets/windows.js +32 -37
- package/dist/shadow/skip.js +2 -2
- package/dist/shell/parse.d.ts +32 -0
- package/dist/shell/parse.js +60 -0
- package/dist/smol/detect.js +9 -10
- package/dist/smol/http.js +6 -7
- package/dist/smol/https.js +6 -7
- package/dist/smol/manifest.d.ts +1 -1
- package/dist/smol/manifest.js +6 -7
- package/dist/smol/path.d.ts +1 -1
- package/dist/smol/path.js +7 -8
- package/dist/smol/primordial.d.ts +4 -0
- package/dist/smol/primordial.js +6 -7
- package/dist/smol/purl.d.ts +1 -1
- package/dist/smol/purl.js +7 -8
- package/dist/smol/versions.js +6 -7
- package/dist/smol/vfs.js +6 -7
- package/dist/sorts/_internal.js +6 -8
- package/dist/sorts/natural.js +10 -12
- package/dist/sorts/semver.js +1 -2
- package/dist/sorts/strings.js +0 -1
- package/dist/sorts/types.d.ts +1 -1
- package/dist/spinner/create-spinner-class.d.ts +38 -0
- package/dist/spinner/create-spinner-class.js +302 -0
- package/dist/spinner/default.js +8 -9
- package/dist/spinner/spinner-internals.d.ts +36 -0
- package/dist/spinner/spinner-internals.js +105 -0
- package/dist/spinner/spinner-shimmer-methods.d.ts +54 -0
- package/dist/spinner/spinner-shimmer-methods.js +143 -0
- package/dist/spinner/spinner-status-methods.d.ts +40 -0
- package/dist/spinner/spinner-status-methods.js +133 -0
- package/dist/spinner/spinner.d.ts +8 -5
- package/dist/spinner/spinner.js +19 -706
- package/dist/spinner/types.d.ts +3 -1
- package/dist/spinner/with.d.ts +10 -0
- package/dist/spinner/with.js +16 -2
- package/dist/stdio/divider.js +1 -1
- package/dist/stdio/footer.js +3 -3
- package/dist/stdio/header.js +4 -4
- package/dist/stdio/progress.js +10 -6
- package/dist/stdio/prompts.d.ts +7 -5
- package/dist/stdio/prompts.js +7 -8
- package/dist/stdio/stdout.js +3 -3
- package/dist/streams/parallel.js +3 -5
- package/dist/streams/transform.js +2 -3
- package/dist/strings/format.js +2 -6
- package/dist/strings/predicates.js +0 -2
- package/dist/strings/search.js +1 -2
- package/dist/strings/transform.js +0 -3
- package/dist/strings/width.js +9 -10
- package/dist/tables/bordered.js +4 -3
- package/dist/tables/padding.js +1 -1
- package/dist/tables/simple.js +8 -5
- package/dist/temporal/instant.js +1 -1
- package/dist/temporal/slots.js +6 -6
- package/dist/temporal/system.js +9 -9
- package/dist/themes/context.d.ts +3 -2
- package/dist/themes/context.js +4 -5
- package/dist/themes/themes.js +15 -15
- package/dist/themes/types.d.ts +3 -3
- package/dist/url/assert-safe.d.ts +29 -0
- package/dist/url/assert-safe.js +54 -0
- package/dist/url/parse.js +0 -2
- package/dist/url/predicates.d.ts +31 -1
- package/dist/url/predicates.js +43 -3
- package/dist/url/search-params.js +3 -9
- package/dist/url/types.d.ts +9 -5
- package/dist/versions/_internal.js +3 -3
- package/dist/words/article.js +0 -1
- package/dist/words/capitalize.js +0 -1
- package/dist/words/pluralize.js +15 -5
- package/package.json +419 -216
- package/dist/external-tools/uv/asset-names.d.ts +0 -36
- package/dist/external-tools/uv/asset-names.js +0 -70
- package/dist/external-tools/uv/from-download.d.ts +0 -17
- package/dist/external-tools/uv/from-download.js +0 -47
- package/dist/external-tools/uv/from-path.d.ts +0 -5
- package/dist/external-tools/uv/from-path.js +0 -22
- package/dist/external-tools/uv/from-vfs.d.ts +0 -7
- package/dist/external-tools/uv/from-vfs.js +0 -26
- package/dist/external-tools/uv/resolve.d.ts +0 -25
- package/dist/external-tools/uv/resolve.js +0 -53
- package/dist/external-tools/uv/types.d.ts +0 -24
- package/dist/fs/path-cache.d.ts +0 -21
- package/dist/fs/path-cache.js +0 -34
- package/dist/http-request/checksums.d.ts +0 -69
- package/dist/http-request/checksums.js +0 -108
- package/dist/http-request/http-request.d.ts +0 -12
- package/dist/http-request/http-request.js +0 -11
- package/dist/packages/operations.d.ts +0 -113
- package/dist/packages/operations.js +0 -304
- package/dist/ssri/convert.d.ts +0 -48
- package/dist/ssri/convert.js +0 -69
- package/dist/ssri/parse.d.ts +0 -27
- package/dist/ssri/parse.js +0 -41
- package/dist/ssri/validate.d.ts +0 -41
- package/dist/ssri/validate.js +0 -56
- /package/dist/{bin → cli}/check.d.ts +0 -0
- /package/dist/external-tools/{uv → python}/types.js +0 -0
- /package/dist/fs/{find-up.d.ts → find.d.ts} +0 -0
- /package/dist/github/{fetch.d.ts → request.d.ts} +0 -0
package/dist/ai/tier.js
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* Socket Lib - Built with rolldown */
|
|
3
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
|
|
5
|
+
//#region src/ai/tier.mts
|
|
6
|
+
/**
|
|
7
|
+
* Canonical tier → { model, effort }. The single source of truth for which
|
|
8
|
+
* Claude model + effort each tier runs. Bump here on a model generation roll;
|
|
9
|
+
* every orchestrator that imports this picks it up.
|
|
10
|
+
*
|
|
11
|
+
* - `haiku` / low — deterministic, regex-shaped rewrites (identifier rename,
|
|
12
|
+
* null→undefined, single-token substitution).
|
|
13
|
+
* - `sonnet` / medium — control-flow / caller-chain reasoning (fetch→httpJson,
|
|
14
|
+
* sync→async), a check script, a doc edit.
|
|
15
|
+
* - `opus` / high — real authoring / refactoring (module split, a brand-new hook
|
|
16
|
+
* or lint rule with its test).
|
|
17
|
+
* - `fable` / xhigh — apex escalation only: a stuck compiler / native problem
|
|
18
|
+
* after cheaper tiers fail, or planning + decomposition of a large task whose
|
|
19
|
+
* chunks then run on cheaper tiers. Most expensive model on the board; never
|
|
20
|
+
* a default.
|
|
21
|
+
*/
|
|
22
|
+
const AI_TIER = {
|
|
23
|
+
__proto__: null,
|
|
24
|
+
fable: {
|
|
25
|
+
effort: "xhigh",
|
|
26
|
+
model: "claude-fable-5"
|
|
27
|
+
},
|
|
28
|
+
haiku: {
|
|
29
|
+
effort: "low",
|
|
30
|
+
model: "claude-haiku-4-5"
|
|
31
|
+
},
|
|
32
|
+
opus: {
|
|
33
|
+
effort: "high",
|
|
34
|
+
model: "claude-opus-4-8"
|
|
35
|
+
},
|
|
36
|
+
sonnet: {
|
|
37
|
+
effort: "medium",
|
|
38
|
+
model: "claude-sonnet-4-6"
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Resolve a tier label to its `{ model, effort }` spawn pair. A convenience
|
|
43
|
+
* over indexing `AI_TIER` directly; returns the `sonnet` row for an unknown
|
|
44
|
+
* label so a caller that hands in a stray string degrades to the safe default
|
|
45
|
+
* rather than producing `undefined` model/effort.
|
|
46
|
+
*/
|
|
47
|
+
function tierToSpawn(tier) {
|
|
48
|
+
return AI_TIER[tier] ?? AI_TIER.sonnet;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
exports.AI_TIER = AI_TIER;
|
|
53
|
+
exports.tierToSpawn = tierToSpawn;
|
package/dist/ai/types.d.mts
CHANGED
|
@@ -25,6 +25,19 @@ export type AiAgentName = 'claude' | 'codex' | 'gemini' | 'opencode';
|
|
|
25
25
|
* tools that mutate state.
|
|
26
26
|
*/
|
|
27
27
|
export type PermissionMode = 'acceptEdits' | 'dontAsk' | 'plan';
|
|
28
|
+
/**
|
|
29
|
+
* Reasoning-effort level for the agent session. Two agents consume it, each via
|
|
30
|
+
* its own flag — `buildArgs` translates per-agent:
|
|
31
|
+
*
|
|
32
|
+
* - Claude: `--effort <level>`, accepts low/medium/high/xhigh/max.
|
|
33
|
+
* - Codex: `-c model_reasoning_effort=<level>`, accepts minimal/low/medium/high/
|
|
34
|
+
* xhigh (no `max` — `buildArgs` clamps `max` → `xhigh`, codex's ceiling).
|
|
35
|
+
*
|
|
36
|
+
* Gemini / opencode have no reasoning-effort flag, so they ignore it. Pair a
|
|
37
|
+
* cheap model with low effort for mechanical work and reserve high/max for
|
|
38
|
+
* tasks that genuinely need deeper reasoning.
|
|
39
|
+
*/
|
|
40
|
+
export type AiEffort = 'high' | 'low' | 'max' | 'medium' | 'xhigh';
|
|
28
41
|
/**
|
|
29
42
|
* Result of an agent spawn. Consumers should inspect `exitCode` before using
|
|
30
43
|
* `stdout` — non-zero usually means the agent's CLI itself rejected, not just
|
|
@@ -34,6 +47,13 @@ export interface AgentSpawnResult {
|
|
|
34
47
|
readonly attempts: number;
|
|
35
48
|
readonly durationMs: number;
|
|
36
49
|
readonly exitCode: number;
|
|
50
|
+
/**
|
|
51
|
+
* True when the spawn failed because the API stayed overloaded (HTTP 529 /
|
|
52
|
+
* "Overloaded") through every retry. Lets a caller distinguish "back off and
|
|
53
|
+
* retry later" from "the work genuinely failed" — both surface as a non-zero
|
|
54
|
+
* `exitCode`, so this is the only way to tell them apart.
|
|
55
|
+
*/
|
|
56
|
+
readonly overloaded: boolean;
|
|
37
57
|
readonly stderr: string;
|
|
38
58
|
readonly stdout: string;
|
|
39
59
|
}
|
|
@@ -55,27 +75,32 @@ export interface SpawnAiAgentOptions {
|
|
|
55
75
|
/**
|
|
56
76
|
* Optional explicit agent. Defaults to claude when discovered.
|
|
57
77
|
*/
|
|
58
|
-
readonly agent?: AiAgentName;
|
|
78
|
+
readonly agent?: AiAgentName | undefined;
|
|
59
79
|
/**
|
|
60
80
|
* Allow-list extras (Bash glob patterns, MCP tools, etc.).
|
|
61
81
|
*/
|
|
62
|
-
readonly allow?: readonly string[];
|
|
82
|
+
readonly allow?: readonly string[] | undefined;
|
|
63
83
|
/**
|
|
64
84
|
* Extra dirs the agent can read (e.g. parent of cwd for monorepo).
|
|
65
85
|
*/
|
|
66
|
-
readonly addDirs?: readonly string[];
|
|
86
|
+
readonly addDirs?: readonly string[] | undefined;
|
|
67
87
|
/**
|
|
68
88
|
* Tool denylist — required to enforce the lockdown.
|
|
69
89
|
*/
|
|
70
90
|
readonly disallow: readonly string[];
|
|
91
|
+
/**
|
|
92
|
+
* Reasoning-effort level (claude `--effort`); agent default if absent.
|
|
93
|
+
* claude-specific — other agents ignore it.
|
|
94
|
+
*/
|
|
95
|
+
readonly effort?: AiEffort | undefined;
|
|
71
96
|
/**
|
|
72
97
|
* Override the agent's flag list (rare; for one-off advanced cases).
|
|
73
98
|
*/
|
|
74
|
-
readonly extraArgs?: readonly string[];
|
|
99
|
+
readonly extraArgs?: readonly string[] | undefined;
|
|
75
100
|
/**
|
|
76
101
|
* Model name override; agent default if absent.
|
|
77
102
|
*/
|
|
78
|
-
readonly model?: string;
|
|
103
|
+
readonly model?: string | undefined;
|
|
79
104
|
/**
|
|
80
105
|
* Permission mode — see PermissionMode docstring.
|
|
81
106
|
*/
|
|
@@ -91,7 +116,7 @@ export interface SpawnAiAgentOptions {
|
|
|
91
116
|
/**
|
|
92
117
|
* Per-call timeout (ms). Caller should set for predictable bounds.
|
|
93
118
|
*/
|
|
94
|
-
readonly timeoutMs?: number;
|
|
119
|
+
readonly timeoutMs?: number | undefined;
|
|
95
120
|
/**
|
|
96
121
|
* Tool allowlist. Required to enforce the lockdown.
|
|
97
122
|
*/
|
package/dist/ai/worktree.d.mts
CHANGED
|
@@ -22,23 +22,23 @@ export interface WorktreeRunOptions {
|
|
|
22
22
|
/**
|
|
23
23
|
* Branch to merge results into. Default: current branch of baseRepo.
|
|
24
24
|
*/
|
|
25
|
-
readonly branch?: string;
|
|
25
|
+
readonly branch?: string | undefined;
|
|
26
26
|
/**
|
|
27
27
|
* Cleanup policy. Default 'always'.
|
|
28
28
|
*/
|
|
29
|
-
readonly cleanup?: WorktreeCleanup;
|
|
29
|
+
readonly cleanup?: WorktreeCleanup | undefined;
|
|
30
30
|
/**
|
|
31
31
|
* Parallel cap. Default 4, max 8.
|
|
32
32
|
*/
|
|
33
|
-
readonly concurrency?: number;
|
|
33
|
+
readonly concurrency?: number | undefined;
|
|
34
34
|
/**
|
|
35
35
|
* Prefix for worktree branch + dir names. Default 'agent-task'.
|
|
36
36
|
*/
|
|
37
|
-
readonly namePrefix?: string;
|
|
37
|
+
readonly namePrefix?: string | undefined;
|
|
38
38
|
/**
|
|
39
39
|
* Where worktrees live on disk. Default: `${tmpdir}/${prefix}-<n>`.
|
|
40
40
|
*/
|
|
41
|
-
readonly worktreeRoot?: string;
|
|
41
|
+
readonly worktreeRoot?: string | undefined;
|
|
42
42
|
}
|
|
43
43
|
export interface WorktreeRunContext {
|
|
44
44
|
/**
|
|
@@ -56,7 +56,7 @@ export interface WorktreeRunContext {
|
|
|
56
56
|
}
|
|
57
57
|
export interface WorktreeRunSettled<T> {
|
|
58
58
|
readonly cleanup: 'removed' | 'kept';
|
|
59
|
-
readonly error?: unknown;
|
|
59
|
+
readonly error?: unknown | undefined;
|
|
60
60
|
readonly merged: boolean;
|
|
61
61
|
readonly status: 'fulfilled' | 'rejected';
|
|
62
62
|
readonly value?: T | undefined;
|
package/dist/ai/worktree.js
CHANGED
|
@@ -133,6 +133,10 @@ async function runOne(item, index, worktreeBranch, worktreePath, baseRepo, branc
|
|
|
133
133
|
* ```
|
|
134
134
|
*/
|
|
135
135
|
async function spawnAiAgentsInWorktrees(items, fn, options) {
|
|
136
|
+
options = {
|
|
137
|
+
__proto__: null,
|
|
138
|
+
...options
|
|
139
|
+
};
|
|
136
140
|
const cleanup = options.cleanup ?? "always";
|
|
137
141
|
const namePrefix = options.namePrefix ?? "agent-task";
|
|
138
142
|
const concurrency = require_primordials_math.MathMax(1, Math.min(options.concurrency ?? DEFAULT_CONCURRENCY, MAX_CONCURRENCY));
|
|
@@ -161,7 +165,7 @@ function tryGit(cwd, ...args) {
|
|
|
161
165
|
output: git(cwd, ...args)
|
|
162
166
|
};
|
|
163
167
|
} catch (e) {
|
|
164
|
-
if (
|
|
168
|
+
if (require_process_spawn_errors.isSpawnError(e)) return {
|
|
165
169
|
ok: false,
|
|
166
170
|
output: String(e.stderr ?? e.stdout ?? "")
|
|
167
171
|
};
|
package/dist/ansi/strip.d.ts
CHANGED
package/dist/ansi/strip.js
CHANGED
|
@@ -26,7 +26,6 @@ const ANSI_REGEX = /\x1b\[[0-9;]*m/g;
|
|
|
26
26
|
* ansiRegex({ onlyFirst: true }) // matches only the first code
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
30
29
|
function ansiRegex(options) {
|
|
31
30
|
const { onlyFirst } = options ?? {};
|
|
32
31
|
return new require_primordials_regexp.RegExpCtor(`(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]`, onlyFirst ? void 0 : "g");
|
|
@@ -40,7 +39,6 @@ function ansiRegex(options) {
|
|
|
40
39
|
* stripAnsi('\u001b[1mBold\u001b[0m') // 'Bold'
|
|
41
40
|
* ```
|
|
42
41
|
*/
|
|
43
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
44
42
|
function stripAnsi(text) {
|
|
45
43
|
return require_primordials_string.StringPrototypeReplace(text, ANSI_REGEX, "");
|
|
46
44
|
}
|
|
@@ -15,8 +15,8 @@ let node_fs = require("node:fs");
|
|
|
15
15
|
const DEFAULT_MAX_FILE_SIZE = 100 * 1024 * 1024;
|
|
16
16
|
const DEFAULT_MAX_TOTAL_SIZE = 1024 * 1024 * 1024;
|
|
17
17
|
const DEFAULT_MAX_ENTRIES = 1e5;
|
|
18
|
-
let
|
|
19
|
-
let
|
|
18
|
+
let admZip;
|
|
19
|
+
let tarFs;
|
|
20
20
|
/**
|
|
21
21
|
* Assert that an archive file exists on disk before handing it to the
|
|
22
22
|
* underlying extractor. Normalizes the "missing archive" surface across all
|
|
@@ -38,15 +38,13 @@ function assertArchiveExists(archivePath) {
|
|
|
38
38
|
throw err;
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
42
41
|
function getAdmZip() {
|
|
43
|
-
if (
|
|
44
|
-
return
|
|
42
|
+
if (admZip === void 0) admZip = /*@__PURE__*/ require("../external/adm-zip.js");
|
|
43
|
+
return admZip;
|
|
45
44
|
}
|
|
46
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
47
45
|
function getTarFs() {
|
|
48
|
-
if (
|
|
49
|
-
return
|
|
46
|
+
if (tarFs === void 0) tarFs = /*@__PURE__*/ require("../external/tar-fs.js");
|
|
47
|
+
return tarFs;
|
|
50
48
|
}
|
|
51
49
|
/**
|
|
52
50
|
* Validate that a resolved path is within the target directory. Prevents path
|
|
@@ -61,7 +59,7 @@ function getTarFs() {
|
|
|
61
59
|
* @throws Error if path is outside the base directory
|
|
62
60
|
*/
|
|
63
61
|
function validatePathWithinBase(targetPath, baseDir, entryName) {
|
|
64
|
-
const path =
|
|
62
|
+
const path = require_node_path.getNodePath();
|
|
65
63
|
const resolvedTarget = path.resolve(targetPath);
|
|
66
64
|
const resolvedBase = path.resolve(baseDir);
|
|
67
65
|
if (!require_primordials_string.StringPrototypeStartsWith(resolvedTarget, resolvedBase + path.sep) && resolvedTarget !== resolvedBase) throw new require_primordials_error.ErrorCtor(`Path traversal attempt detected: entry "${entryName}" would extract to "${resolvedTarget}" outside target directory "${resolvedBase}"`);
|
package/dist/archives/extract.js
CHANGED
|
@@ -31,7 +31,7 @@ const require_archives_zip = require('./zip.js');
|
|
|
31
31
|
async function extractArchive(archivePath, outputDir, options = {}) {
|
|
32
32
|
const format = require_archives_detect.detectArchiveFormat(archivePath);
|
|
33
33
|
if (!format) {
|
|
34
|
-
const ext =
|
|
34
|
+
const ext = require_node_path.getNodePath().extname(archivePath).toLowerCase();
|
|
35
35
|
throw new require_primordials_error.ErrorCtor(`Unsupported archive format${ext ? ` (extension: ${ext})` : ""}: ${archivePath}. Supported formats: .zip, .tar, .tar.gz, .tgz`);
|
|
36
36
|
}
|
|
37
37
|
switch (format) {
|
package/dist/archives/tar.js
CHANGED
|
@@ -4,8 +4,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
4
4
|
const require_runtime = require('../_virtual/_rolldown/runtime.js');
|
|
5
5
|
const require_primordials_error = require('../primordials/error.js');
|
|
6
6
|
const require_paths_normalize = require('../paths/normalize.js');
|
|
7
|
-
const require_archives__internal = require('./_internal.js');
|
|
8
7
|
const require_fs_safe = require('../fs/safe.js');
|
|
8
|
+
const require_archives__internal = require('./_internal.js');
|
|
9
9
|
let node_fs = require("node:fs");
|
|
10
10
|
let node_process = require("node:process");
|
|
11
11
|
node_process = require_runtime.__toESM(node_process);
|
|
@@ -42,12 +42,12 @@ let node_zlib = require("node:zlib");
|
|
|
42
42
|
async function extractTar(archivePath, outputDir, options = {}) {
|
|
43
43
|
require_archives__internal.assertArchiveExists(archivePath);
|
|
44
44
|
const { maxEntries = require_archives__internal.DEFAULT_MAX_ENTRIES, maxFileSize = require_archives__internal.DEFAULT_MAX_FILE_SIZE, maxTotalSize = require_archives__internal.DEFAULT_MAX_TOTAL_SIZE, strip = 0 } = options;
|
|
45
|
-
const normalizedOutputDir =
|
|
45
|
+
const normalizedOutputDir = require_paths_normalize.normalizePath(outputDir);
|
|
46
46
|
await require_fs_safe.safeMkdir(normalizedOutputDir);
|
|
47
47
|
let totalExtractedSize = 0;
|
|
48
48
|
let entryCount = 0;
|
|
49
49
|
let destroyScheduled = false;
|
|
50
|
-
const extractStream =
|
|
50
|
+
const extractStream = require_archives__internal.getTarFs().extract(normalizedOutputDir, {
|
|
51
51
|
map: (header) => {
|
|
52
52
|
/* c8 ignore start - destroyScheduled is set by the same map() when a
|
|
53
53
|
security limit trips; only fires after the schedule. */
|
|
@@ -73,7 +73,7 @@ async function extractTar(archivePath, outputDir, options = {}) {
|
|
|
73
73
|
});
|
|
74
74
|
return header;
|
|
75
75
|
}
|
|
76
|
-
if (header.type === "
|
|
76
|
+
if (header.type === "link" || header.type === "symlink") {
|
|
77
77
|
destroyScheduled = true;
|
|
78
78
|
node_process.default.nextTick(() => {
|
|
79
79
|
extractStream.destroy(new require_primordials_error.ErrorCtor(`Symlink detected in archive: ${header.name}. Symlinks are not supported for security reasons.`));
|
|
@@ -127,12 +127,12 @@ async function extractTar(archivePath, outputDir, options = {}) {
|
|
|
127
127
|
async function extractTarGz(archivePath, outputDir, options = {}) {
|
|
128
128
|
require_archives__internal.assertArchiveExists(archivePath);
|
|
129
129
|
const { maxEntries = require_archives__internal.DEFAULT_MAX_ENTRIES, maxFileSize = require_archives__internal.DEFAULT_MAX_FILE_SIZE, maxTotalSize = require_archives__internal.DEFAULT_MAX_TOTAL_SIZE, strip = 0 } = options;
|
|
130
|
-
const normalizedOutputDir =
|
|
130
|
+
const normalizedOutputDir = require_paths_normalize.normalizePath(outputDir);
|
|
131
131
|
await require_fs_safe.safeMkdir(normalizedOutputDir);
|
|
132
132
|
let totalExtractedSize = 0;
|
|
133
133
|
let entryCount = 0;
|
|
134
134
|
let destroyScheduled = false;
|
|
135
|
-
const extractStream =
|
|
135
|
+
const extractStream = require_archives__internal.getTarFs().extract(normalizedOutputDir, {
|
|
136
136
|
map: (header) => {
|
|
137
137
|
/* c8 ignore start - destroyScheduled is set by the same map() when a
|
|
138
138
|
security limit trips; only fires after the schedule. */
|
|
@@ -158,7 +158,7 @@ async function extractTarGz(archivePath, outputDir, options = {}) {
|
|
|
158
158
|
});
|
|
159
159
|
return header;
|
|
160
160
|
}
|
|
161
|
-
if (header.type === "
|
|
161
|
+
if (header.type === "link" || header.type === "symlink") {
|
|
162
162
|
destroyScheduled = true;
|
|
163
163
|
node_process.default.nextTick(() => {
|
|
164
164
|
extractStream.destroy(new require_primordials_error.ErrorCtor(`Symlink detected in archive: ${header.name}. Symlinks are not supported for security reasons.`));
|
package/dist/archives/zip.js
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
const require_primordials_error = require('../primordials/error.js');
|
|
5
|
+
const require_primordials_map_set = require('../primordials/map-set.js');
|
|
5
6
|
const require_paths_normalize = require('../paths/normalize.js');
|
|
6
7
|
const require_primordials_array = require('../primordials/array.js');
|
|
7
|
-
const require_primordials_map_set = require('../primordials/map-set.js');
|
|
8
8
|
const require_node_path = require('../node/path.js');
|
|
9
9
|
const require_primordials_promise = require('../primordials/promise.js');
|
|
10
|
-
const require_archives__internal = require('./_internal.js');
|
|
11
10
|
const require_fs_safe = require('../fs/safe.js');
|
|
11
|
+
const require_archives__internal = require('./_internal.js');
|
|
12
12
|
|
|
13
13
|
//#region src/archives/zip.ts
|
|
14
14
|
/**
|
|
@@ -32,10 +32,10 @@ const require_fs_safe = require('../fs/safe.js');
|
|
|
32
32
|
async function extractZip(archivePath, outputDir, options = {}) {
|
|
33
33
|
require_archives__internal.assertArchiveExists(archivePath);
|
|
34
34
|
const { maxEntries = require_archives__internal.DEFAULT_MAX_ENTRIES, maxFileSize = require_archives__internal.DEFAULT_MAX_FILE_SIZE, maxTotalSize = require_archives__internal.DEFAULT_MAX_TOTAL_SIZE, strip = 0 } = options;
|
|
35
|
-
const normalizedOutputDir =
|
|
35
|
+
const normalizedOutputDir = require_paths_normalize.normalizePath(outputDir);
|
|
36
36
|
await require_fs_safe.safeMkdir(normalizedOutputDir);
|
|
37
|
-
const zip = new (
|
|
38
|
-
const path =
|
|
37
|
+
const zip = new (require_archives__internal.getAdmZip())(archivePath);
|
|
38
|
+
const path = require_node_path.getNodePath();
|
|
39
39
|
const entries = zip.getEntries();
|
|
40
40
|
/* c8 ignore start */
|
|
41
41
|
if (entries.length > maxEntries) throw new require_primordials_error.ErrorCtor(`Archive has too many entries: ${entries.length} (limit: ${maxEntries})`);
|
|
@@ -60,8 +60,6 @@ async function extractZip(archivePath, outputDir, options = {}) {
|
|
|
60
60
|
for (const entry of entries) if (!entry.isDirectory) require_archives__internal.validatePathWithinBase(path.join(normalizedOutputDir, entry.entryName), normalizedOutputDir, entry.entryName);
|
|
61
61
|
zip.extractAllTo(normalizedOutputDir, true);
|
|
62
62
|
} else {
|
|
63
|
-
const path = /* @__PURE__ */ require_node_path.getNodePath();
|
|
64
|
-
const entries = zip.getEntries();
|
|
65
63
|
const dirsToCreate = new require_primordials_map_set.SetCtor();
|
|
66
64
|
for (const entry of entries) {
|
|
67
65
|
if (entry.isDirectory) continue;
|
|
@@ -11,6 +11,18 @@
|
|
|
11
11
|
* accepts both `--quiet` and `--silent`).
|
|
12
12
|
*/
|
|
13
13
|
import type { FlagInput } from './flag-types';
|
|
14
|
+
/**
|
|
15
|
+
* Get the appropriate log level based on flags. Returns 'silent', 'error',
|
|
16
|
+
* 'warn', 'info', 'verbose', or 'debug'.
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ;```typescript
|
|
20
|
+
* getLogLevel() // 'info' (default)
|
|
21
|
+
* getLogLevel({ quiet: true }) // 'silent'
|
|
22
|
+
* getLogLevel(['--debug']) // 'debug'
|
|
23
|
+
* ```
|
|
24
|
+
*/
|
|
25
|
+
export declare function getLogLevel(input?: FlagInput): string;
|
|
14
26
|
/**
|
|
15
27
|
* Build a flag predicate that accepts `FlagValues`, `string[]`, or `undefined`
|
|
16
28
|
* (in which case it consults the frozen `processArg`).
|
|
@@ -165,15 +177,3 @@ export declare const isVerbose: (input?: FlagInput) => boolean;
|
|
|
165
177
|
* ```
|
|
166
178
|
*/
|
|
167
179
|
export declare const isWatch: (input?: FlagInput) => boolean;
|
|
168
|
-
/**
|
|
169
|
-
* Get the appropriate log level based on flags. Returns 'silent', 'error',
|
|
170
|
-
* 'warn', 'info', 'verbose', or 'debug'.
|
|
171
|
-
*
|
|
172
|
-
* @example
|
|
173
|
-
* ;```typescript
|
|
174
|
-
* getLogLevel() // 'info' (default)
|
|
175
|
-
* getLogLevel({ quiet: true }) // 'silent'
|
|
176
|
-
* getLogLevel(['--debug']) // 'debug'
|
|
177
|
-
* ```
|
|
178
|
-
*/
|
|
179
|
-
export declare function getLogLevel(input?: FlagInput): string;
|
|
@@ -21,6 +21,23 @@ node_process = require_runtime.__toESM(node_process);
|
|
|
21
21
|
*/
|
|
22
22
|
const processArg = [...node_process.default.argv];
|
|
23
23
|
/**
|
|
24
|
+
* Get the appropriate log level based on flags. Returns 'silent', 'error',
|
|
25
|
+
* 'warn', 'info', 'verbose', or 'debug'.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ;```typescript
|
|
29
|
+
* getLogLevel() // 'info' (default)
|
|
30
|
+
* getLogLevel({ quiet: true }) // 'silent'
|
|
31
|
+
* getLogLevel(['--debug']) // 'debug'
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
function getLogLevel(input) {
|
|
35
|
+
if (isQuiet(input)) return "silent";
|
|
36
|
+
if (isDebug(input)) return "debug";
|
|
37
|
+
if (isVerbose(input)) return "verbose";
|
|
38
|
+
return "info";
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
24
41
|
* Build a flag predicate that accepts `FlagValues`, `string[]`, or `undefined`
|
|
25
42
|
* (in which case it consults the frozen `processArg`).
|
|
26
43
|
*
|
|
@@ -183,23 +200,6 @@ const isVerbose = makeFlagPredicate(["--verbose"]);
|
|
|
183
200
|
* ```
|
|
184
201
|
*/
|
|
185
202
|
const isWatch = makeFlagPredicate(["--watch"], ["-w"]);
|
|
186
|
-
/**
|
|
187
|
-
* Get the appropriate log level based on flags. Returns 'silent', 'error',
|
|
188
|
-
* 'warn', 'info', 'verbose', or 'debug'.
|
|
189
|
-
*
|
|
190
|
-
* @example
|
|
191
|
-
* ;```typescript
|
|
192
|
-
* getLogLevel() // 'info' (default)
|
|
193
|
-
* getLogLevel({ quiet: true }) // 'silent'
|
|
194
|
-
* getLogLevel(['--debug']) // 'debug'
|
|
195
|
-
* ```
|
|
196
|
-
*/
|
|
197
|
-
function getLogLevel(input) {
|
|
198
|
-
if (isQuiet(input)) return "silent";
|
|
199
|
-
if (isDebug(input)) return "debug";
|
|
200
|
-
if (isVerbose(input)) return "verbose";
|
|
201
|
-
return "info";
|
|
202
|
-
}
|
|
203
203
|
|
|
204
204
|
//#endregion
|
|
205
205
|
exports.getLogLevel = getLogLevel;
|
|
@@ -8,22 +8,22 @@
|
|
|
8
8
|
*/
|
|
9
9
|
export interface FlagValues {
|
|
10
10
|
[key: string]: unknown;
|
|
11
|
-
quiet?: boolean;
|
|
12
|
-
silent?: boolean;
|
|
13
|
-
verbose?: boolean;
|
|
14
|
-
help?: boolean;
|
|
15
|
-
all?: boolean;
|
|
16
|
-
fix?: boolean;
|
|
17
|
-
force?: boolean;
|
|
18
|
-
'dry-run'?: boolean;
|
|
19
|
-
json?: boolean;
|
|
20
|
-
debug?: boolean;
|
|
21
|
-
watch?: boolean;
|
|
22
|
-
coverage?: boolean;
|
|
23
|
-
cover?: boolean;
|
|
24
|
-
update?: boolean;
|
|
25
|
-
staged?: boolean;
|
|
26
|
-
changed?: boolean;
|
|
11
|
+
quiet?: boolean | undefined;
|
|
12
|
+
silent?: boolean | undefined;
|
|
13
|
+
verbose?: boolean | undefined;
|
|
14
|
+
help?: boolean | undefined;
|
|
15
|
+
all?: boolean | undefined;
|
|
16
|
+
fix?: boolean | undefined;
|
|
17
|
+
force?: boolean | undefined;
|
|
18
|
+
'dry-run'?: boolean | undefined;
|
|
19
|
+
json?: boolean | undefined;
|
|
20
|
+
debug?: boolean | undefined;
|
|
21
|
+
watch?: boolean | undefined;
|
|
22
|
+
coverage?: boolean | undefined;
|
|
23
|
+
cover?: boolean | undefined;
|
|
24
|
+
update?: boolean | undefined;
|
|
25
|
+
staged?: boolean | undefined;
|
|
26
|
+
changed?: boolean | undefined;
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
29
|
* Accepted input types for flag checking functions. Can be parsed flag values,
|
|
@@ -45,12 +45,12 @@ export declare const COMMON_FLAGS: {
|
|
|
45
45
|
default: boolean;
|
|
46
46
|
description: string;
|
|
47
47
|
};
|
|
48
|
-
|
|
48
|
+
cover: {
|
|
49
49
|
type: 'boolean';
|
|
50
50
|
default: boolean;
|
|
51
51
|
description: string;
|
|
52
52
|
};
|
|
53
|
-
|
|
53
|
+
coverage: {
|
|
54
54
|
type: 'boolean';
|
|
55
55
|
default: boolean;
|
|
56
56
|
description: string;
|
package/dist/argv/flag-types.js
CHANGED
|
@@ -18,15 +18,15 @@ const COMMON_FLAGS = {
|
|
|
18
18
|
default: false,
|
|
19
19
|
description: "Target changed files"
|
|
20
20
|
},
|
|
21
|
-
|
|
21
|
+
cover: {
|
|
22
22
|
type: "boolean",
|
|
23
23
|
default: false,
|
|
24
|
-
description: "Run with coverage"
|
|
24
|
+
description: "Run with coverage (alias)"
|
|
25
25
|
},
|
|
26
|
-
|
|
26
|
+
coverage: {
|
|
27
27
|
type: "boolean",
|
|
28
28
|
default: false,
|
|
29
|
-
description: "Run with coverage
|
|
29
|
+
description: "Run with coverage"
|
|
30
30
|
},
|
|
31
31
|
debug: {
|
|
32
32
|
type: "boolean",
|
package/dist/argv/parse.d.ts
CHANGED
|
@@ -3,12 +3,30 @@
|
|
|
3
3
|
* yargs-parser with a Node.js parseArgs-compatible surface for booleans,
|
|
4
4
|
* strings, arrays, aliases, defaults, and coercion.
|
|
5
5
|
*/
|
|
6
|
+
/**
|
|
7
|
+
* Yargs parser options interface.
|
|
8
|
+
*/
|
|
9
|
+
export interface YargsOptions {
|
|
10
|
+
boolean?: string[] | undefined;
|
|
11
|
+
string?: string[] | undefined;
|
|
12
|
+
array?: string[] | undefined;
|
|
13
|
+
alias?: Record<string, string | string[]> | undefined;
|
|
14
|
+
default?: Record<string, unknown> | undefined;
|
|
15
|
+
coerce?: Record<string, (value: unknown) => unknown> | undefined;
|
|
16
|
+
'unknown-options-as-args'?: boolean | undefined;
|
|
17
|
+
'parse-numbers'?: boolean | undefined;
|
|
18
|
+
'parse-positional-numbers'?: boolean | undefined;
|
|
19
|
+
'boolean-negation'?: boolean | undefined;
|
|
20
|
+
'halt-at-non-option'?: boolean | undefined;
|
|
21
|
+
configuration?: Record<string, boolean | string> | undefined;
|
|
22
|
+
strict?: boolean | undefined;
|
|
23
|
+
}
|
|
6
24
|
/**
|
|
7
25
|
* Yargs parser result interface.
|
|
8
26
|
*/
|
|
9
|
-
interface YargsArguments extends Record<string, unknown> {
|
|
27
|
+
export interface YargsArguments extends Record<string, unknown> {
|
|
10
28
|
_: string[];
|
|
11
|
-
$0?: string;
|
|
29
|
+
$0?: string | undefined;
|
|
12
30
|
}
|
|
13
31
|
/**
|
|
14
32
|
* Options for configuring argument parsing, similar to Node.js util.parseArgs.
|
|
@@ -95,4 +113,3 @@ export declare function parseArgs<T = Record<string, unknown>>(config?: ParseArg
|
|
|
95
113
|
* ```
|
|
96
114
|
*/
|
|
97
115
|
export declare function parseArgsWithDefaults<T = Record<string, unknown>>(config?: ParseArgsConfig): ParsedArgs<T>;
|
|
98
|
-
export {};
|
package/dist/argv/parse.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
4
|
const require_runtime = require('../_virtual/_rolldown/runtime.js');
|
|
5
|
+
const require_primordials_object = require('../primordials/object.js');
|
|
5
6
|
const require_primordials_string = require('../primordials/string.js');
|
|
6
7
|
const require_primordials_array = require('../primordials/array.js');
|
|
7
|
-
const require_primordials_object = require('../primordials/object.js');
|
|
8
8
|
let node_process = require("node:process");
|
|
9
9
|
node_process = require_runtime.__toESM(node_process);
|
|
10
10
|
let src_external_yargs_parser = require("../external/yargs-parser");
|
package/dist/arrays/_internal.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/* Socket Lib - Built with rolldown */
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
4
|
+
const require_primordials_intl = require('../primordials/intl.js');
|
|
4
5
|
|
|
5
6
|
//#region src/arrays/_internal.ts
|
|
6
7
|
/**
|
|
@@ -8,8 +9,8 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
8
9
|
* instances for conjunction (and) and disjunction (or) joins. Constructed
|
|
9
10
|
* lazily because `new Intl.ListFormat(...)` is a measurable startup cost.
|
|
10
11
|
*/
|
|
11
|
-
let
|
|
12
|
-
let
|
|
12
|
+
let conjunctionFormatter;
|
|
13
|
+
let disjunctionFormatter;
|
|
13
14
|
/**
|
|
14
15
|
* Get a cached Intl.ListFormat instance for conjunction (and) formatting.
|
|
15
16
|
*
|
|
@@ -28,15 +29,14 @@ let _disjunctionFormatter;
|
|
|
28
29
|
* @returns Cached Intl.ListFormat instance configured for conjunction
|
|
29
30
|
* formatting.
|
|
30
31
|
*/
|
|
31
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
32
32
|
function getConjunctionFormatter() {
|
|
33
|
-
if (
|
|
34
|
-
/* c8 ignore start */
|
|
35
|
-
|
|
33
|
+
if (conjunctionFormatter === void 0)
|
|
34
|
+
/* c8 ignore start - lazy singleton init runs once; not worth a dedicated test */
|
|
35
|
+
conjunctionFormatter = new require_primordials_intl.IntlListFormat("en", {
|
|
36
36
|
style: "long",
|
|
37
37
|
type: "conjunction"
|
|
38
38
|
});
|
|
39
|
-
return
|
|
39
|
+
return conjunctionFormatter;
|
|
40
40
|
}
|
|
41
41
|
/**
|
|
42
42
|
* Get a cached Intl.ListFormat instance for disjunction (or) formatting.
|
|
@@ -56,15 +56,14 @@ function getConjunctionFormatter() {
|
|
|
56
56
|
* @returns Cached Intl.ListFormat instance configured for disjunction
|
|
57
57
|
* formatting.
|
|
58
58
|
*/
|
|
59
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
60
59
|
function getDisjunctionFormatter() {
|
|
61
|
-
if (
|
|
62
|
-
/* c8 ignore start */
|
|
63
|
-
|
|
60
|
+
if (disjunctionFormatter === void 0)
|
|
61
|
+
/* c8 ignore start - lazy singleton init runs once; not worth a dedicated test */
|
|
62
|
+
disjunctionFormatter = new require_primordials_intl.IntlListFormat("en", {
|
|
64
63
|
style: "long",
|
|
65
64
|
type: "disjunction"
|
|
66
65
|
});
|
|
67
|
-
return
|
|
66
|
+
return disjunctionFormatter;
|
|
68
67
|
}
|
|
69
68
|
|
|
70
69
|
//#endregion
|
package/dist/arrays/chunk.js
CHANGED
|
@@ -40,7 +40,6 @@ const require_primordials_error = require('../primordials/error.js');
|
|
|
40
40
|
*
|
|
41
41
|
* @throws {Error} If chunk size is less than or equal to 0
|
|
42
42
|
*/
|
|
43
|
-
/*@__NO_SIDE_EFFECTS__*/
|
|
44
43
|
function arrayChunk(arr, size) {
|
|
45
44
|
const chunkSize = size ?? 2;
|
|
46
45
|
if (chunkSize <= 0) throw new require_primordials_error.ErrorCtor("Chunk size must be greater than 0");
|