@kya-os/cli 2.0.0 → 2.0.3
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/README.md +167 -231
- package/bin/__tests__/kya-os-shim.e2e.test.js +160 -0
- package/bin/__tests__/resolve-binary.test.js +54 -0
- package/bin/dco.js +17 -0
- package/bin/kya-os.js +135 -0
- package/bin/resolve-binary.js +98 -0
- package/bin/run-compile.mjs +29 -0
- package/dist/sidecar/sidecar/src/conformance/pins.js +54 -0
- package/dist/sidecar/sidecar/src/conformance/pins.js.map +1 -0
- package/dist/sidecar/sidecar/src/conformance/reference/adapter-helpers.js +117 -0
- package/dist/sidecar/sidecar/src/conformance/reference/adapter-helpers.js.map +1 -0
- package/dist/sidecar/sidecar/src/conformance/reference/crypto-kit.js +101 -0
- package/dist/sidecar/sidecar/src/conformance/reference/crypto-kit.js.map +1 -0
- package/dist/sidecar/sidecar/src/conformance/reference/reference-adapter.js +326 -0
- package/dist/sidecar/sidecar/src/conformance/reference/reference-adapter.js.map +1 -0
- package/dist/sidecar/sidecar/src/conformance/reference/runner.js +126 -0
- package/dist/sidecar/sidecar/src/conformance/reference/runner.js.map +1 -0
- package/dist/sidecar/sidecar/src/conformance/reference/types.js +40 -0
- package/dist/sidecar/sidecar/src/conformance/reference/types.js.map +1 -0
- package/dist/sidecar/sidecar/src/daemon.js +151 -0
- package/dist/sidecar/sidecar/src/daemon.js.map +1 -0
- package/dist/sidecar/sidecar/src/framing.js +36 -0
- package/dist/sidecar/sidecar/src/framing.js.map +1 -0
- package/dist/sidecar/sidecar/src/identity-manager.js +73 -0
- package/dist/sidecar/sidecar/src/identity-manager.js.map +1 -0
- package/dist/sidecar/sidecar/src/index.js +80 -0
- package/dist/sidecar/sidecar/src/index.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/convert-to-ssh.js +11 -0
- package/dist/sidecar/sidecar/src/ops/convert-to-ssh.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/echo.js +5 -0
- package/dist/sidecar/sidecar/src/ops/echo.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/ensure-identity.js +36 -0
- package/dist/sidecar/sidecar/src/ops/ensure-identity.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/resolve-identity.js +233 -0
- package/dist/sidecar/sidecar/src/ops/resolve-identity.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/rotate-identity.js +37 -0
- package/dist/sidecar/sidecar/src/ops/rotate-identity.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/run-conformance.js +78 -0
- package/dist/sidecar/sidecar/src/ops/run-conformance.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/sign-with-ed25519-seed.js +12 -0
- package/dist/sidecar/sidecar/src/ops/sign-with-ed25519-seed.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/sign.js +24 -0
- package/dist/sidecar/sidecar/src/ops/sign.js.map +1 -0
- package/dist/sidecar/sidecar/src/ops/verify-audit-bundle.js +139 -0
- package/dist/sidecar/sidecar/src/ops/verify-audit-bundle.js.map +1 -0
- package/dist/sidecar/sidecar/src/ssh-key.js +297 -0
- package/dist/sidecar/sidecar/src/ssh-key.js.map +1 -0
- package/node_modules/@kya-os/contracts/dist/agent-deployment-utils.d.ts +62 -0
- package/node_modules/@kya-os/contracts/dist/agent-deployment-utils.js +92 -0
- package/node_modules/@kya-os/contracts/dist/agent-deployment.d.ts +723 -0
- package/node_modules/@kya-os/contracts/dist/agent-deployment.js +270 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/admin-schemas.d.ts +49 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/admin-schemas.js +30 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/admin-types.d.ts +37 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/admin-types.js +10 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/endpoints.d.ts +53 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/endpoints.js +49 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/index.d.ts +15 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/index.js +46 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/schemas.d.ts +6583 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/schemas.js +340 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/types.d.ts +344 -0
- package/node_modules/@kya-os/contracts/dist/agentshield-api/types.js +26 -0
- package/node_modules/@kya-os/contracts/dist/attribution/index.d.ts +80 -0
- package/node_modules/@kya-os/contracts/dist/attribution/index.js +74 -0
- package/node_modules/@kya-os/contracts/dist/audit/index.d.ts +147 -0
- package/node_modules/@kya-os/contracts/dist/audit/index.js +51 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/analyze.d.ts +162 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/analyze.js +38 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/common.d.ts +70 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/common.js +55 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/index.d.ts +5 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/index.js +21 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/monitor.d.ts +241 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/monitor.js +70 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/projects.d.ts +195 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/projects.js +48 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/settings.d.ts +274 -0
- package/node_modules/@kya-os/contracts/dist/cli-read/settings.js +56 -0
- package/node_modules/@kya-os/contracts/dist/cli.d.ts +542 -0
- package/node_modules/@kya-os/contracts/dist/cli.js +266 -0
- package/node_modules/@kya-os/contracts/dist/compute-binding.d.ts +48 -0
- package/node_modules/@kya-os/contracts/dist/compute-binding.js +42 -0
- package/node_modules/@kya-os/contracts/dist/compute.d.ts +474 -0
- package/node_modules/@kya-os/contracts/dist/compute.js +213 -0
- package/node_modules/@kya-os/contracts/dist/config/base.d.ts +76 -0
- package/node_modules/@kya-os/contracts/dist/config/base.js +11 -0
- package/node_modules/@kya-os/contracts/dist/config/builder.d.ts +33 -0
- package/node_modules/@kya-os/contracts/dist/config/builder.js +71 -0
- package/node_modules/@kya-os/contracts/dist/config/checkpoint-env.d.ts +25 -0
- package/node_modules/@kya-os/contracts/dist/config/checkpoint-env.js +38 -0
- package/node_modules/@kya-os/contracts/dist/config/client-messages.d.ts +216 -0
- package/node_modules/@kya-os/contracts/dist/config/client-messages.js +50 -0
- package/node_modules/@kya-os/contracts/dist/config/delegation-denial.d.ts +14 -0
- package/node_modules/@kya-os/contracts/dist/config/delegation-denial.js +30 -0
- package/node_modules/@kya-os/contracts/dist/config/delegation.d.ts +194 -0
- package/node_modules/@kya-os/contracts/dist/config/delegation.js +10 -0
- package/node_modules/@kya-os/contracts/dist/config/identity.d.ts +1164 -0
- package/node_modules/@kya-os/contracts/dist/config/identity.js +155 -0
- package/node_modules/@kya-os/contracts/dist/config/index.d.ts +45 -0
- package/node_modules/@kya-os/contracts/dist/config/index.js +41 -0
- package/node_modules/@kya-os/contracts/dist/config/proofing.d.ts +120 -0
- package/node_modules/@kya-os/contracts/dist/config/proofing.js +10 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-context.d.ts +94 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-context.js +13 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-protection.d.ts +164 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-protection.js +10 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-refusal.d.ts +54 -0
- package/node_modules/@kya-os/contracts/dist/config/tool-refusal.js +82 -0
- package/node_modules/@kya-os/contracts/dist/consent/authorization-progress.d.ts +163 -0
- package/node_modules/@kya-os/contracts/dist/consent/authorization-progress.js +42 -0
- package/node_modules/@kya-os/contracts/dist/consent/index.d.ts +14 -0
- package/node_modules/@kya-os/contracts/dist/consent/index.js +94 -0
- package/node_modules/@kya-os/contracts/dist/consent/schemas.d.ts +965 -0
- package/node_modules/@kya-os/contracts/dist/consent/schemas.js +335 -0
- package/node_modules/@kya-os/contracts/dist/consent/types.d.ts +155 -0
- package/node_modules/@kya-os/contracts/dist/consent/types.js +10 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/default-config.d.ts +49 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/default-config.js +235 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/index.d.ts +10 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/index.js +37 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/schemas.d.ts +13351 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/schemas.js +267 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/types.d.ts +359 -0
- package/node_modules/@kya-os/contracts/dist/dashboard-config/types.js +10 -0
- package/node_modules/@kya-os/contracts/dist/delegation/constraints.d.ts +1021 -0
- package/node_modules/@kya-os/contracts/dist/delegation/constraints.js +218 -0
- package/node_modules/@kya-os/contracts/dist/delegation/index.d.ts +7 -0
- package/node_modules/@kya-os/contracts/dist/delegation/index.js +23 -0
- package/node_modules/@kya-os/contracts/dist/delegation/schemas.d.ts +9302 -0
- package/node_modules/@kya-os/contracts/dist/delegation/schemas.js +585 -0
- package/node_modules/@kya-os/contracts/dist/deploy/index.d.ts +27 -0
- package/node_modules/@kya-os/contracts/dist/deploy/index.js +62 -0
- package/node_modules/@kya-os/contracts/dist/deploy/schemas.d.ts +1001 -0
- package/node_modules/@kya-os/contracts/dist/deploy/schemas.js +284 -0
- package/node_modules/@kya-os/contracts/dist/deploy/types.d.ts +256 -0
- package/node_modules/@kya-os/contracts/dist/deploy/types.js +10 -0
- package/node_modules/@kya-os/contracts/dist/did/index.d.ts +8 -0
- package/node_modules/@kya-os/contracts/dist/did/index.js +24 -0
- package/node_modules/@kya-os/contracts/dist/did/resolve-contract.d.ts +219 -0
- package/node_modules/@kya-os/contracts/dist/did/resolve-contract.js +31 -0
- package/node_modules/@kya-os/contracts/dist/did/schemas.d.ts +112 -0
- package/node_modules/@kya-os/contracts/dist/did/schemas.js +172 -0
- package/node_modules/@kya-os/contracts/dist/did/types.d.ts +163 -0
- package/node_modules/@kya-os/contracts/dist/did/types.js +70 -0
- package/node_modules/@kya-os/contracts/dist/env/constants.d.ts +57 -0
- package/node_modules/@kya-os/contracts/dist/env/constants.js +59 -0
- package/node_modules/@kya-os/contracts/dist/env/index.d.ts +4 -0
- package/node_modules/@kya-os/contracts/dist/env/index.js +20 -0
- package/node_modules/@kya-os/contracts/dist/fleet/index.d.ts +17 -0
- package/node_modules/@kya-os/contracts/dist/fleet/index.js +69 -0
- package/node_modules/@kya-os/contracts/dist/gateway/agents.d.ts +21 -0
- package/node_modules/@kya-os/contracts/dist/gateway/agents.js +12 -0
- package/node_modules/@kya-os/contracts/dist/gateway/cron.d.ts +33 -0
- package/node_modules/@kya-os/contracts/dist/gateway/cron.js +16 -0
- package/node_modules/@kya-os/contracts/dist/gateway/index.d.ts +20 -0
- package/node_modules/@kya-os/contracts/dist/gateway/index.js +37 -0
- package/node_modules/@kya-os/contracts/dist/gateway/sessions.d.ts +30 -0
- package/node_modules/@kya-os/contracts/dist/gateway/sessions.js +15 -0
- package/node_modules/@kya-os/contracts/dist/gateway/skills.d.ts +445 -0
- package/node_modules/@kya-os/contracts/dist/gateway/skills.js +47 -0
- package/node_modules/@kya-os/contracts/dist/gateway/usage.d.ts +43 -0
- package/node_modules/@kya-os/contracts/dist/gateway/usage.js +18 -0
- package/node_modules/@kya-os/contracts/dist/handshake/github-credential-anchor.d.ts +299 -0
- package/node_modules/@kya-os/contracts/dist/handshake/github-credential-anchor.js +200 -0
- package/node_modules/@kya-os/contracts/dist/handshake/index.d.ts +16 -0
- package/node_modules/@kya-os/contracts/dist/handshake/index.js +32 -0
- package/node_modules/@kya-os/contracts/dist/handshake/schemas.d.ts +557 -0
- package/node_modules/@kya-os/contracts/dist/handshake/schemas.js +282 -0
- package/node_modules/@kya-os/contracts/dist/handshake/verify.d.ts +36 -0
- package/node_modules/@kya-os/contracts/dist/handshake/verify.js +58 -0
- package/node_modules/@kya-os/contracts/dist/handshake.d.ts +12 -0
- package/node_modules/@kya-os/contracts/dist/handshake.js +28 -0
- package/node_modules/@kya-os/contracts/dist/identity/index.d.ts +10 -0
- package/node_modules/@kya-os/contracts/dist/identity/index.js +30 -0
- package/node_modules/@kya-os/contracts/dist/identity/schemas.d.ts +250 -0
- package/node_modules/@kya-os/contracts/dist/identity/schemas.js +115 -0
- package/node_modules/@kya-os/contracts/dist/index.d.ts +28 -0
- package/node_modules/@kya-os/contracts/dist/index.js +66 -0
- package/node_modules/@kya-os/contracts/dist/molti/admin-ws.d.ts +1871 -0
- package/node_modules/@kya-os/contracts/dist/molti/admin-ws.js +177 -0
- package/node_modules/@kya-os/contracts/dist/molti/index.d.ts +30 -0
- package/node_modules/@kya-os/contracts/dist/molti/index.js +86 -0
- package/node_modules/@kya-os/contracts/dist/molti/schemas.d.ts +837 -0
- package/node_modules/@kya-os/contracts/dist/molti/schemas.js +267 -0
- package/node_modules/@kya-os/contracts/dist/molti/types.d.ts +216 -0
- package/node_modules/@kya-os/contracts/dist/molti/types.js +25 -0
- package/node_modules/@kya-os/contracts/dist/pairing/index.d.ts +44 -0
- package/node_modules/@kya-os/contracts/dist/pairing/index.js +11 -0
- package/node_modules/@kya-os/contracts/dist/policy/index.d.ts +8 -0
- package/node_modules/@kya-os/contracts/dist/policy/index.js +41 -0
- package/node_modules/@kya-os/contracts/dist/policy/schemas.d.ts +3839 -0
- package/node_modules/@kya-os/contracts/dist/policy/schemas.js +424 -0
- package/node_modules/@kya-os/contracts/dist/proof/detached-proof.d.ts +476 -0
- package/node_modules/@kya-os/contracts/dist/proof/detached-proof.js +116 -0
- package/node_modules/@kya-os/contracts/dist/proof/index.d.ts +15 -0
- package/node_modules/@kya-os/contracts/dist/proof/index.js +32 -0
- package/node_modules/@kya-os/contracts/dist/proof/proof-record.d.ts +837 -0
- package/node_modules/@kya-os/contracts/dist/proof/proof-record.js +133 -0
- package/node_modules/@kya-os/contracts/dist/proof/signing-spec.d.ts +146 -0
- package/node_modules/@kya-os/contracts/dist/proof/signing-spec.js +122 -0
- package/node_modules/@kya-os/contracts/dist/proof.d.ts +12 -0
- package/node_modules/@kya-os/contracts/dist/proof.js +28 -0
- package/node_modules/@kya-os/contracts/dist/registry.d.ts +342 -0
- package/node_modules/@kya-os/contracts/dist/registry.js +118 -0
- package/node_modules/@kya-os/contracts/dist/reputation/api.d.ts +2866 -0
- package/node_modules/@kya-os/contracts/dist/reputation/api.js +397 -0
- package/node_modules/@kya-os/contracts/dist/reputation/constants.d.ts +242 -0
- package/node_modules/@kya-os/contracts/dist/reputation/constants.js +259 -0
- package/node_modules/@kya-os/contracts/dist/reputation/credentials.d.ts +1493 -0
- package/node_modules/@kya-os/contracts/dist/reputation/credentials.js +302 -0
- package/node_modules/@kya-os/contracts/dist/reputation/index.d.ts +21 -0
- package/node_modules/@kya-os/contracts/dist/reputation/index.js +42 -0
- package/node_modules/@kya-os/contracts/dist/reputation/interactions.d.ts +146 -0
- package/node_modules/@kya-os/contracts/dist/reputation/interactions.js +82 -0
- package/node_modules/@kya-os/contracts/dist/reputation/schemas.d.ts +1600 -0
- package/node_modules/@kya-os/contracts/dist/reputation/schemas.js +499 -0
- package/node_modules/@kya-os/contracts/dist/review/canonicalize.d.ts +87 -0
- package/node_modules/@kya-os/contracts/dist/review/canonicalize.js +122 -0
- package/node_modules/@kya-os/contracts/dist/review/fix-attestation.d.ts +151 -0
- package/node_modules/@kya-os/contracts/dist/review/fix-attestation.js +105 -0
- package/node_modules/@kya-os/contracts/dist/review/index.d.ts +9 -0
- package/node_modules/@kya-os/contracts/dist/review/index.js +25 -0
- package/node_modules/@kya-os/contracts/dist/review/registry.d.ts +349 -0
- package/node_modules/@kya-os/contracts/dist/review/registry.js +293 -0
- package/node_modules/@kya-os/contracts/dist/review/schemas.d.ts +249 -0
- package/node_modules/@kya-os/contracts/dist/review/schemas.js +102 -0
- package/node_modules/@kya-os/contracts/dist/review/verify.d.ts +72 -0
- package/node_modules/@kya-os/contracts/dist/review/verify.js +111 -0
- package/node_modules/@kya-os/contracts/dist/runtime/errors.d.ts +347 -0
- package/node_modules/@kya-os/contracts/dist/runtime/errors.js +119 -0
- package/node_modules/@kya-os/contracts/dist/runtime/headers.d.ts +87 -0
- package/node_modules/@kya-os/contracts/dist/runtime/headers.js +85 -0
- package/node_modules/@kya-os/contracts/dist/runtime/index.d.ts +5 -0
- package/node_modules/@kya-os/contracts/dist/runtime/index.js +21 -0
- package/node_modules/@kya-os/contracts/dist/skills/index.d.ts +8 -0
- package/node_modules/@kya-os/contracts/dist/skills/index.js +24 -0
- package/node_modules/@kya-os/contracts/dist/skills/schemas.d.ts +92 -0
- package/node_modules/@kya-os/contracts/dist/skills/schemas.js +82 -0
- package/node_modules/@kya-os/contracts/dist/test.d.ts +251 -0
- package/node_modules/@kya-os/contracts/dist/test.js +119 -0
- package/node_modules/@kya-os/contracts/dist/tlkrc/index.d.ts +4 -0
- package/node_modules/@kya-os/contracts/dist/tlkrc/index.js +20 -0
- package/node_modules/@kya-os/contracts/dist/tlkrc/rotation.d.ts +245 -0
- package/node_modules/@kya-os/contracts/dist/tlkrc/rotation.js +126 -0
- package/node_modules/@kya-os/contracts/dist/tool-protection/index.d.ts +1369 -0
- package/node_modules/@kya-os/contracts/dist/tool-protection/index.js +499 -0
- package/node_modules/@kya-os/contracts/dist/utils/validation.d.ts +30 -0
- package/node_modules/@kya-os/contracts/dist/utils/validation.js +69 -0
- package/node_modules/@kya-os/contracts/dist/vault/index.d.ts +9 -0
- package/node_modules/@kya-os/contracts/dist/vault/index.js +16 -0
- package/node_modules/@kya-os/contracts/dist/vault/schemas.d.ts +71 -0
- package/node_modules/@kya-os/contracts/dist/vault/schemas.js +52 -0
- package/node_modules/@kya-os/contracts/dist/vault/types.d.ts +15 -0
- package/node_modules/@kya-os/contracts/dist/vault/types.js +9 -0
- package/node_modules/@kya-os/contracts/dist/vc/index.d.ts +7 -0
- package/node_modules/@kya-os/contracts/dist/vc/index.js +23 -0
- package/node_modules/@kya-os/contracts/dist/vc/schemas.d.ts +2483 -0
- package/node_modules/@kya-os/contracts/dist/vc/schemas.js +224 -0
- package/node_modules/@kya-os/contracts/dist/vc/statuslist.d.ts +493 -0
- package/node_modules/@kya-os/contracts/dist/vc/statuslist.js +132 -0
- package/node_modules/@kya-os/contracts/dist/verifier/index.d.ts +8 -0
- package/node_modules/@kya-os/contracts/dist/verifier/index.js +24 -0
- package/node_modules/@kya-os/contracts/dist/verifier/schemas.d.ts +216 -0
- package/node_modules/@kya-os/contracts/dist/verifier/schemas.js +94 -0
- package/node_modules/@kya-os/contracts/dist/verifier.d.ts +11 -0
- package/node_modules/@kya-os/contracts/dist/verifier.js +27 -0
- package/node_modules/@kya-os/contracts/dist/well-known/index.d.ts +1013 -0
- package/node_modules/@kya-os/contracts/dist/well-known/index.js +302 -0
- package/node_modules/@kya-os/contracts/dist/workbench/a2a.d.ts +267 -0
- package/node_modules/@kya-os/contracts/dist/workbench/a2a.js +124 -0
- package/node_modules/@kya-os/contracts/dist/workbench/artifact-bindings.d.ts +1448 -0
- package/node_modules/@kya-os/contracts/dist/workbench/artifact-bindings.js +233 -0
- package/node_modules/@kya-os/contracts/dist/workbench/cache.d.ts +461 -0
- package/node_modules/@kya-os/contracts/dist/workbench/cache.js +165 -0
- package/node_modules/@kya-os/contracts/dist/workbench/economics.d.ts +1097 -0
- package/node_modules/@kya-os/contracts/dist/workbench/economics.js +87 -0
- package/node_modules/@kya-os/contracts/dist/workbench/execution.d.ts +594 -0
- package/node_modules/@kya-os/contracts/dist/workbench/execution.js +76 -0
- package/node_modules/@kya-os/contracts/dist/workbench/governed.d.ts +4323 -0
- package/node_modules/@kya-os/contracts/dist/workbench/governed.js +37 -0
- package/node_modules/@kya-os/contracts/dist/workbench/graph-interfaces.d.ts +1330 -0
- package/node_modules/@kya-os/contracts/dist/workbench/graph-interfaces.js +302 -0
- package/node_modules/@kya-os/contracts/dist/workbench/index.d.ts +17 -0
- package/node_modules/@kya-os/contracts/dist/workbench/index.js +33 -0
- package/node_modules/@kya-os/contracts/dist/workbench/lead-planner.d.ts +7603 -0
- package/node_modules/@kya-os/contracts/dist/workbench/lead-planner.js +20 -0
- package/node_modules/@kya-os/contracts/dist/workbench/linear-installation.d.ts +797 -0
- package/node_modules/@kya-os/contracts/dist/workbench/linear-installation.js +80 -0
- package/node_modules/@kya-os/contracts/dist/workbench/mailbox.d.ts +3245 -0
- package/node_modules/@kya-os/contracts/dist/workbench/mailbox.js +475 -0
- package/node_modules/@kya-os/contracts/dist/workbench/managed-worker.d.ts +199 -0
- package/node_modules/@kya-os/contracts/dist/workbench/managed-worker.js +49 -0
- package/node_modules/@kya-os/contracts/dist/workbench/review.d.ts +1585 -0
- package/node_modules/@kya-os/contracts/dist/workbench/review.js +84 -0
- package/node_modules/@kya-os/contracts/dist/workbench/routing.d.ts +1200 -0
- package/node_modules/@kya-os/contracts/dist/workbench/routing.js +93 -0
- package/node_modules/@kya-os/contracts/dist/workbench/task-status-projection.d.ts +190 -0
- package/node_modules/@kya-os/contracts/dist/workbench/task-status-projection.js +49 -0
- package/node_modules/@kya-os/contracts/dist/workbench/tracking.d.ts +3364 -0
- package/node_modules/@kya-os/contracts/dist/workbench/tracking.js +221 -0
- package/node_modules/@kya-os/contracts/dist/workbench/usage.d.ts +62 -0
- package/node_modules/@kya-os/contracts/dist/workbench/usage.js +57 -0
- package/node_modules/@kya-os/contracts/package.json +185 -0
- package/node_modules/@kya-os/contracts/parity-vectors/delegation-conformance.json +265 -0
- package/node_modules/@kya-os/contracts/parity-vectors/did-key.json +134 -0
- package/node_modules/@kya-os/contracts/parity-vectors/index.ts +253 -0
- package/node_modules/@kya-os/contracts/parity-vectors/scope-matching.json +330 -0
- package/node_modules/@kya-os/contracts/parity-vectors/vc-jwt.json +210 -0
- package/node_modules/@kya-os/contracts/parity-vectors/workbench/artifact-bindings.v1.json +1005 -0
- package/node_modules/@kya-os/contracts/parity-vectors/workbench/graph-interfaces.v1.json +1967 -0
- package/node_modules/@kya-os/contracts/parity-vectors/workbench/linear-installation.v1.json +75 -0
- package/node_modules/@kya-os/contracts/parity-vectors/workbench/task-status-projection.v1.json +591 -0
- package/node_modules/@kya-os/contracts/parity-vectors/workbench/tracker-document-upgrade.v1.json +516 -0
- package/node_modules/zod/LICENSE +21 -0
- package/node_modules/zod/README.md +208 -0
- package/node_modules/zod/dist/cjs/index.js +22 -0
- package/node_modules/zod/dist/cjs/package.json +3 -0
- package/node_modules/zod/dist/cjs/v3/ZodError.js +137 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/datetime.js +54 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/discriminatedUnion.js +79 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/index.js +59 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/ipv4.js +54 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/object.js +70 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/primitives.js +159 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/realworld.js +56 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/string.js +55 -0
- package/node_modules/zod/dist/cjs/v3/benchmarks/union.js +79 -0
- package/node_modules/zod/dist/cjs/v3/errors.js +17 -0
- package/node_modules/zod/dist/cjs/v3/external.js +22 -0
- package/node_modules/zod/dist/cjs/v3/helpers/enumUtil.js +2 -0
- package/node_modules/zod/dist/cjs/v3/helpers/errorUtil.js +9 -0
- package/node_modules/zod/dist/cjs/v3/helpers/parseUtil.js +124 -0
- package/node_modules/zod/dist/cjs/v3/helpers/partialUtil.js +2 -0
- package/node_modules/zod/dist/cjs/v3/helpers/typeAliases.js +2 -0
- package/node_modules/zod/dist/cjs/v3/helpers/util.js +137 -0
- package/node_modules/zod/dist/cjs/v3/index.js +33 -0
- package/node_modules/zod/dist/cjs/v3/locales/en.js +109 -0
- package/node_modules/zod/dist/cjs/v3/standard-schema.js +2 -0
- package/node_modules/zod/dist/cjs/v3/tests/Mocker.js +57 -0
- package/node_modules/zod/dist/cjs/v3/types.js +3773 -0
- package/node_modules/zod/dist/cjs/v4/classic/checks.js +32 -0
- package/node_modules/zod/dist/cjs/v4/classic/coerce.js +47 -0
- package/node_modules/zod/dist/cjs/v4/classic/compat.js +63 -0
- package/node_modules/zod/dist/cjs/v4/classic/errors.js +67 -0
- package/node_modules/zod/dist/cjs/v4/classic/external.js +69 -0
- package/node_modules/zod/dist/cjs/v4/classic/index.js +33 -0
- package/node_modules/zod/dist/cjs/v4/classic/iso.js +60 -0
- package/node_modules/zod/dist/cjs/v4/classic/parse.js +32 -0
- package/node_modules/zod/dist/cjs/v4/classic/schemas.js +1100 -0
- package/node_modules/zod/dist/cjs/v4/core/api.js +1021 -0
- package/node_modules/zod/dist/cjs/v4/core/checks.js +580 -0
- package/node_modules/zod/dist/cjs/v4/core/config.js +10 -0
- package/node_modules/zod/dist/cjs/v4/core/core.js +63 -0
- package/node_modules/zod/dist/cjs/v4/core/doc.js +39 -0
- package/node_modules/zod/dist/cjs/v4/core/errors.js +222 -0
- package/node_modules/zod/dist/cjs/v4/core/function.js +102 -0
- package/node_modules/zod/dist/cjs/v4/core/index.js +44 -0
- package/node_modules/zod/dist/cjs/v4/core/json-schema.js +2 -0
- package/node_modules/zod/dist/cjs/v4/core/parse.js +87 -0
- package/node_modules/zod/dist/cjs/v4/core/regexes.js +103 -0
- package/node_modules/zod/dist/cjs/v4/core/registries.js +47 -0
- package/node_modules/zod/dist/cjs/v4/core/schemas.js +1719 -0
- package/node_modules/zod/dist/cjs/v4/core/standard-schema.js +2 -0
- package/node_modules/zod/dist/cjs/v4/core/to-json-schema.js +833 -0
- package/node_modules/zod/dist/cjs/v4/core/util.js +537 -0
- package/node_modules/zod/dist/cjs/v4/core/versions.js +8 -0
- package/node_modules/zod/dist/cjs/v4/core/zsf.js +172 -0
- package/node_modules/zod/dist/cjs/v4/index.js +22 -0
- package/node_modules/zod/dist/cjs/v4/locales/ar.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/az.js +141 -0
- package/node_modules/zod/dist/cjs/v4/locales/be.js +190 -0
- package/node_modules/zod/dist/cjs/v4/locales/ca.js +144 -0
- package/node_modules/zod/dist/cjs/v4/locales/cs.js +161 -0
- package/node_modules/zod/dist/cjs/v4/locales/de.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/en.js +145 -0
- package/node_modules/zod/dist/cjs/v4/locales/es.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/fa.js +148 -0
- package/node_modules/zod/dist/cjs/v4/locales/fi.js +148 -0
- package/node_modules/zod/dist/cjs/v4/locales/fr-CA.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/fr.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/he.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/hu.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/id.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/index.js +82 -0
- package/node_modules/zod/dist/cjs/v4/locales/it.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/ja.js +141 -0
- package/node_modules/zod/dist/cjs/v4/locales/kh.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/ko.js +147 -0
- package/node_modules/zod/dist/cjs/v4/locales/mk.js +144 -0
- package/node_modules/zod/dist/cjs/v4/locales/ms.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/nl.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/no.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/ota.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/pl.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/ps.js +148 -0
- package/node_modules/zod/dist/cjs/v4/locales/pt.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/ru.js +190 -0
- package/node_modules/zod/dist/cjs/v4/locales/sl.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/sv.js +144 -0
- package/node_modules/zod/dist/cjs/v4/locales/ta.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/th.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/tr.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/ua.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/ur.js +143 -0
- package/node_modules/zod/dist/cjs/v4/locales/vi.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/zh-CN.js +142 -0
- package/node_modules/zod/dist/cjs/v4/locales/zh-TW.js +143 -0
- package/node_modules/zod/dist/cjs/v4/mini/checks.js +34 -0
- package/node_modules/zod/dist/cjs/v4/mini/coerce.js +47 -0
- package/node_modules/zod/dist/cjs/v4/mini/external.js +61 -0
- package/node_modules/zod/dist/cjs/v4/mini/index.js +32 -0
- package/node_modules/zod/dist/cjs/v4/mini/iso.js +60 -0
- package/node_modules/zod/dist/cjs/v4/mini/parse.js +8 -0
- package/node_modules/zod/dist/cjs/v4/mini/schemas.js +831 -0
- package/node_modules/zod/dist/esm/index.js +3 -0
- package/node_modules/zod/dist/esm/package.json +3 -0
- package/node_modules/zod/dist/esm/v3/ZodError.js +132 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/datetime.js +49 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/discriminatedUnion.js +74 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/index.js +54 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/ipv4.js +49 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/object.js +65 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/primitives.js +154 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/realworld.js +51 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/string.js +50 -0
- package/node_modules/zod/dist/esm/v3/benchmarks/union.js +74 -0
- package/node_modules/zod/dist/esm/v3/errors.js +9 -0
- package/node_modules/zod/dist/esm/v3/external.js +6 -0
- package/node_modules/zod/dist/esm/v3/helpers/enumUtil.js +1 -0
- package/node_modules/zod/dist/esm/v3/helpers/errorUtil.js +6 -0
- package/node_modules/zod/dist/esm/v3/helpers/parseUtil.js +109 -0
- package/node_modules/zod/dist/esm/v3/helpers/partialUtil.js +1 -0
- package/node_modules/zod/dist/esm/v3/helpers/typeAliases.js +1 -0
- package/node_modules/zod/dist/esm/v3/helpers/util.js +133 -0
- package/node_modules/zod/dist/esm/v3/index.js +4 -0
- package/node_modules/zod/dist/esm/v3/locales/en.js +107 -0
- package/node_modules/zod/dist/esm/v3/standard-schema.js +1 -0
- package/node_modules/zod/dist/esm/v3/tests/Mocker.js +53 -0
- package/node_modules/zod/dist/esm/v3/types.js +3691 -0
- package/node_modules/zod/dist/esm/v4/classic/checks.js +1 -0
- package/node_modules/zod/dist/esm/v4/classic/coerce.js +17 -0
- package/node_modules/zod/dist/esm/v4/classic/compat.js +33 -0
- package/node_modules/zod/dist/esm/v4/classic/errors.js +41 -0
- package/node_modules/zod/dist/esm/v4/classic/external.js +18 -0
- package/node_modules/zod/dist/esm/v4/classic/index.js +4 -0
- package/node_modules/zod/dist/esm/v4/classic/iso.js +30 -0
- package/node_modules/zod/dist/esm/v4/classic/parse.js +6 -0
- package/node_modules/zod/dist/esm/v4/classic/schemas.js +998 -0
- package/node_modules/zod/dist/esm/v4/core/api.js +889 -0
- package/node_modules/zod/dist/esm/v4/core/checks.js +554 -0
- package/node_modules/zod/dist/esm/v4/core/config.js +6 -0
- package/node_modules/zod/dist/esm/v4/core/core.js +57 -0
- package/node_modules/zod/dist/esm/v4/core/doc.js +35 -0
- package/node_modules/zod/dist/esm/v4/core/errors.js +191 -0
- package/node_modules/zod/dist/esm/v4/core/function.js +75 -0
- package/node_modules/zod/dist/esm/v4/core/index.js +15 -0
- package/node_modules/zod/dist/esm/v4/core/json-schema.js +1 -0
- package/node_modules/zod/dist/esm/v4/core/parse.js +57 -0
- package/node_modules/zod/dist/esm/v4/core/regexes.js +95 -0
- package/node_modules/zod/dist/esm/v4/core/registries.js +42 -0
- package/node_modules/zod/dist/esm/v4/core/schemas.js +1688 -0
- package/node_modules/zod/dist/esm/v4/core/standard-schema.js +1 -0
- package/node_modules/zod/dist/esm/v4/core/to-json-schema.js +828 -0
- package/node_modules/zod/dist/esm/v4/core/util.js +491 -0
- package/node_modules/zod/dist/esm/v4/core/versions.js +5 -0
- package/node_modules/zod/dist/esm/v4/core/zsf.js +171 -0
- package/node_modules/zod/dist/esm/v4/index.js +3 -0
- package/node_modules/zod/dist/esm/v4/locales/ar.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/az.js +115 -0
- package/node_modules/zod/dist/esm/v4/locales/be.js +164 -0
- package/node_modules/zod/dist/esm/v4/locales/ca.js +118 -0
- package/node_modules/zod/dist/esm/v4/locales/cs.js +135 -0
- package/node_modules/zod/dist/esm/v4/locales/de.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/en.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/es.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/fa.js +122 -0
- package/node_modules/zod/dist/esm/v4/locales/fi.js +122 -0
- package/node_modules/zod/dist/esm/v4/locales/fr-CA.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/fr.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/he.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/hu.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/id.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/index.js +38 -0
- package/node_modules/zod/dist/esm/v4/locales/it.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/ja.js +115 -0
- package/node_modules/zod/dist/esm/v4/locales/kh.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/ko.js +121 -0
- package/node_modules/zod/dist/esm/v4/locales/mk.js +118 -0
- package/node_modules/zod/dist/esm/v4/locales/ms.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/nl.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/no.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/ota.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/pl.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/ps.js +122 -0
- package/node_modules/zod/dist/esm/v4/locales/pt.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/ru.js +164 -0
- package/node_modules/zod/dist/esm/v4/locales/sl.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/sv.js +118 -0
- package/node_modules/zod/dist/esm/v4/locales/ta.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/th.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/tr.js +115 -0
- package/node_modules/zod/dist/esm/v4/locales/ua.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/ur.js +117 -0
- package/node_modules/zod/dist/esm/v4/locales/vi.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/zh-CN.js +116 -0
- package/node_modules/zod/dist/esm/v4/locales/zh-TW.js +117 -0
- package/node_modules/zod/dist/esm/v4/mini/checks.js +1 -0
- package/node_modules/zod/dist/esm/v4/mini/coerce.js +17 -0
- package/node_modules/zod/dist/esm/v4/mini/external.js +13 -0
- package/node_modules/zod/dist/esm/v4/mini/index.js +3 -0
- package/node_modules/zod/dist/esm/v4/mini/iso.js +30 -0
- package/node_modules/zod/dist/esm/v4/mini/parse.js +1 -0
- package/node_modules/zod/dist/esm/v4/mini/schemas.js +725 -0
- package/node_modules/zod/dist/types/index.d.ts +3 -0
- package/node_modules/zod/dist/types/package.json +3 -0
- package/node_modules/zod/dist/types/v3/ZodError.d.ts +164 -0
- package/node_modules/zod/dist/types/v3/benchmarks/datetime.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/discriminatedUnion.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/index.d.ts +1 -0
- package/node_modules/zod/dist/types/v3/benchmarks/ipv4.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/object.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/primitives.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/realworld.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/string.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/benchmarks/union.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/errors.d.ts +5 -0
- package/node_modules/zod/dist/types/v3/external.d.ts +6 -0
- package/node_modules/zod/dist/types/v3/helpers/enumUtil.d.ts +8 -0
- package/node_modules/zod/dist/types/v3/helpers/errorUtil.d.ts +9 -0
- package/node_modules/zod/dist/types/v3/helpers/parseUtil.d.ts +78 -0
- package/node_modules/zod/dist/types/v3/helpers/partialUtil.d.ts +8 -0
- package/node_modules/zod/dist/types/v3/helpers/typeAliases.d.ts +2 -0
- package/node_modules/zod/dist/types/v3/helpers/util.d.ts +85 -0
- package/node_modules/zod/dist/types/v3/index.d.ts +4 -0
- package/node_modules/zod/dist/types/v3/locales/en.d.ts +3 -0
- package/node_modules/zod/dist/types/v3/standard-schema.d.ts +102 -0
- package/node_modules/zod/dist/types/v3/tests/Mocker.d.ts +17 -0
- package/node_modules/zod/dist/types/v3/types.d.ts +1031 -0
- package/node_modules/zod/dist/types/v4/classic/checks.d.ts +1 -0
- package/node_modules/zod/dist/types/v4/classic/coerce.d.ts +17 -0
- package/node_modules/zod/dist/types/v4/classic/compat.d.ts +48 -0
- package/node_modules/zod/dist/types/v4/classic/errors.d.ts +30 -0
- package/node_modules/zod/dist/types/v4/classic/external.d.ts +13 -0
- package/node_modules/zod/dist/types/v4/classic/index.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/classic/iso.d.ts +22 -0
- package/node_modules/zod/dist/types/v4/classic/parse.d.ts +23 -0
- package/node_modules/zod/dist/types/v4/classic/schemas.d.ts +624 -0
- package/node_modules/zod/dist/types/v4/core/api.d.ts +281 -0
- package/node_modules/zod/dist/types/v4/core/checks.d.ts +277 -0
- package/node_modules/zod/dist/types/v4/core/config.d.ts +9 -0
- package/node_modules/zod/dist/types/v4/core/core.d.ts +47 -0
- package/node_modules/zod/dist/types/v4/core/doc.d.ts +14 -0
- package/node_modules/zod/dist/types/v4/core/errors.d.ts +204 -0
- package/node_modules/zod/dist/types/v4/core/function.d.ts +52 -0
- package/node_modules/zod/dist/types/v4/core/index.d.ts +15 -0
- package/node_modules/zod/dist/types/v4/core/json-schema.d.ts +87 -0
- package/node_modules/zod/dist/types/v4/core/parse.d.ts +25 -0
- package/node_modules/zod/dist/types/v4/core/regexes.d.ts +62 -0
- package/node_modules/zod/dist/types/v4/core/registries.d.ts +39 -0
- package/node_modules/zod/dist/types/v4/core/schemas.d.ts +1005 -0
- package/node_modules/zod/dist/types/v4/core/standard-schema.d.ts +55 -0
- package/node_modules/zod/dist/types/v4/core/to-json-schema.d.ts +84 -0
- package/node_modules/zod/dist/types/v4/core/util.d.ts +183 -0
- package/node_modules/zod/dist/types/v4/core/versions.d.ts +5 -0
- package/node_modules/zod/dist/types/v4/core/zsf.d.ts +91 -0
- package/node_modules/zod/dist/types/v4/index.d.ts +3 -0
- package/node_modules/zod/dist/types/v4/locales/ar.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/az.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/be.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ca.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/cs.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/de.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/en.d.ts +5 -0
- package/node_modules/zod/dist/types/v4/locales/es.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/fa.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/fi.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/fr-CA.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/fr.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/he.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/hu.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/id.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/index.d.ts +38 -0
- package/node_modules/zod/dist/types/v4/locales/it.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ja.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/kh.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ko.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/mk.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ms.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/nl.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/no.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ota.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/pl.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ps.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/pt.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ru.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/sl.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/sv.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ta.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/th.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/tr.d.ts +5 -0
- package/node_modules/zod/dist/types/v4/locales/ua.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/ur.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/vi.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/zh-CN.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/locales/zh-TW.d.ts +4 -0
- package/node_modules/zod/dist/types/v4/mini/checks.d.ts +1 -0
- package/node_modules/zod/dist/types/v4/mini/coerce.d.ts +7 -0
- package/node_modules/zod/dist/types/v4/mini/external.d.ts +11 -0
- package/node_modules/zod/dist/types/v4/mini/index.d.ts +3 -0
- package/node_modules/zod/dist/types/v4/mini/iso.d.ts +22 -0
- package/node_modules/zod/dist/types/v4/mini/parse.d.ts +1 -0
- package/node_modules/zod/dist/types/v4/mini/schemas.d.ts +351 -0
- package/node_modules/zod/package.json +120 -0
- package/node_modules/zod/v3/index.d.ts +3 -0
- package/node_modules/zod/v3/index.js +1 -0
- package/node_modules/zod/v4/core/index.d.ts +1 -0
- package/node_modules/zod/v4/core/index.js +1 -0
- package/node_modules/zod/v4/index.d.ts +3 -0
- package/node_modules/zod/v4/index.js +1 -0
- package/node_modules/zod/v4/locales/en.d.ts +2 -0
- package/node_modules/zod/v4/locales/en.js +2 -0
- package/node_modules/zod/v4/locales/index.d.ts +1 -0
- package/node_modules/zod/v4/locales/index.js +1 -0
- package/node_modules/zod/v4-mini/index.d.ts +1 -0
- package/node_modules/zod/v4-mini/index.js +1 -0
- package/package.json +31 -33
- package/skills/fix/INSTRUCTIONS.md +40 -0
- package/skills/fix/skill.json +8 -0
- package/skills/review/INSTRUCTIONS.md +49 -0
- package/skills/review/skill.json +8 -0
- package/dist/commands/build.d.ts +0 -5
- package/dist/commands/build.d.ts.map +0 -1
- package/dist/commands/build.js +0 -173
- package/dist/commands/build.js.map +0 -1
- package/dist/commands/check.d.ts +0 -6
- package/dist/commands/check.d.ts.map +0 -1
- package/dist/commands/check.js +0 -145
- package/dist/commands/check.js.map +0 -1
- package/dist/commands/checkpoint-init.d.ts +0 -32
- package/dist/commands/checkpoint-init.d.ts.map +0 -1
- package/dist/commands/checkpoint-init.js +0 -521
- package/dist/commands/checkpoint-init.js.map +0 -1
- package/dist/commands/claim.d.ts +0 -22
- package/dist/commands/claim.d.ts.map +0 -1
- package/dist/commands/claim.js +0 -315
- package/dist/commands/claim.js.map +0 -1
- package/dist/commands/dco.d.ts +0 -55
- package/dist/commands/dco.d.ts.map +0 -1
- package/dist/commands/dco.js +0 -280
- package/dist/commands/dco.js.map +0 -1
- package/dist/commands/demo.d.ts +0 -10
- package/dist/commands/demo.d.ts.map +0 -1
- package/dist/commands/demo.js +0 -584
- package/dist/commands/demo.js.map +0 -1
- package/dist/commands/dev.d.ts +0 -5
- package/dist/commands/dev.d.ts.map +0 -1
- package/dist/commands/dev.js +0 -77
- package/dist/commands/dev.js.map +0 -1
- package/dist/commands/doctor.d.ts +0 -11
- package/dist/commands/doctor.d.ts.map +0 -1
- package/dist/commands/doctor.js +0 -524
- package/dist/commands/doctor.js.map +0 -1
- package/dist/commands/env.d.ts +0 -2
- package/dist/commands/env.d.ts.map +0 -1
- package/dist/commands/env.js +0 -320
- package/dist/commands/env.js.map +0 -1
- package/dist/commands/identity.d.ts +0 -14
- package/dist/commands/identity.d.ts.map +0 -1
- package/dist/commands/identity.js +0 -204
- package/dist/commands/identity.js.map +0 -1
- package/dist/commands/init.d.ts +0 -21
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -358
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/receipts.d.ts +0 -22
- package/dist/commands/receipts.d.ts.map +0 -1
- package/dist/commands/receipts.js +0 -189
- package/dist/commands/receipts.js.map +0 -1
- package/dist/commands/register.d.ts +0 -34
- package/dist/commands/register.d.ts.map +0 -1
- package/dist/commands/register.js +0 -463
- package/dist/commands/register.js.map +0 -1
- package/dist/commands/rotate.d.ts +0 -13
- package/dist/commands/rotate.d.ts.map +0 -1
- package/dist/commands/rotate.js +0 -167
- package/dist/commands/rotate.js.map +0 -1
- package/dist/commands/start.d.ts +0 -5
- package/dist/commands/start.d.ts.map +0 -1
- package/dist/commands/start.js +0 -129
- package/dist/commands/start.js.map +0 -1
- package/dist/commands/status.d.ts +0 -9
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -199
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/verify.d.ts +0 -22
- package/dist/commands/verify.d.ts.map +0 -1
- package/dist/commands/verify.js +0 -491
- package/dist/commands/verify.js.map +0 -1
- package/dist/components/agent-avatar.d.ts +0 -87
- package/dist/components/agent-avatar.d.ts.map +0 -1
- package/dist/components/agent-avatar.js +0 -257
- package/dist/components/agent-avatar.js.map +0 -1
- package/dist/components/agent-card.d.ts +0 -14
- package/dist/components/agent-card.d.ts.map +0 -1
- package/dist/components/agent-card.js +0 -167
- package/dist/components/agent-card.js.map +0 -1
- package/dist/components/agent-table.d.ts +0 -31
- package/dist/components/agent-table.d.ts.map +0 -1
- package/dist/components/agent-table.js +0 -341
- package/dist/components/agent-table.js.map +0 -1
- package/dist/components/box.d.ts +0 -14
- package/dist/components/box.d.ts.map +0 -1
- package/dist/components/box.js +0 -222
- package/dist/components/box.js.map +0 -1
- package/dist/components/claim-experience.d.ts +0 -21
- package/dist/components/claim-experience.d.ts.map +0 -1
- package/dist/components/claim-experience.js +0 -138
- package/dist/components/claim-experience.js.map +0 -1
- package/dist/components/index.d.ts +0 -17
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/index.js +0 -18
- package/dist/components/index.js.map +0 -1
- package/dist/components/messages.d.ts +0 -62
- package/dist/components/messages.d.ts.map +0 -1
- package/dist/components/messages.js +0 -146
- package/dist/components/messages.js.map +0 -1
- package/dist/components/types.d.ts +0 -51
- package/dist/components/types.d.ts.map +0 -1
- package/dist/components/types.js +0 -5
- package/dist/components/types.js.map +0 -1
- package/dist/components/welcome.d.ts +0 -46
- package/dist/components/welcome.d.ts.map +0 -1
- package/dist/components/welcome.js +0 -182
- package/dist/components/welcome.js.map +0 -1
- package/dist/dco.d.ts +0 -4
- package/dist/dco.d.ts.map +0 -1
- package/dist/dco.js +0 -21
- package/dist/dco.js.map +0 -1
- package/dist/effects/animation-engine.d.ts +0 -173
- package/dist/effects/animation-engine.d.ts.map +0 -1
- package/dist/effects/animation-engine.js +0 -254
- package/dist/effects/animation-engine.js.map +0 -1
- package/dist/effects/cli-integration.d.ts +0 -86
- package/dist/effects/cli-integration.d.ts.map +0 -1
- package/dist/effects/cli-integration.js +0 -310
- package/dist/effects/cli-integration.js.map +0 -1
- package/dist/effects/config.d.ts +0 -95
- package/dist/effects/config.d.ts.map +0 -1
- package/dist/effects/config.js +0 -216
- package/dist/effects/config.js.map +0 -1
- package/dist/effects/effect-runner.d.ts +0 -69
- package/dist/effects/effect-runner.d.ts.map +0 -1
- package/dist/effects/effect-runner.js +0 -255
- package/dist/effects/effect-runner.js.map +0 -1
- package/dist/effects/gradient.d.ts +0 -131
- package/dist/effects/gradient.d.ts.map +0 -1
- package/dist/effects/gradient.js +0 -236
- package/dist/effects/gradient.js.map +0 -1
- package/dist/effects/implementations/beams.d.ts +0 -80
- package/dist/effects/implementations/beams.d.ts.map +0 -1
- package/dist/effects/implementations/beams.js +0 -221
- package/dist/effects/implementations/beams.js.map +0 -1
- package/dist/effects/implementations/blackhole.d.ts +0 -98
- package/dist/effects/implementations/blackhole.d.ts.map +0 -1
- package/dist/effects/implementations/blackhole.js +0 -421
- package/dist/effects/implementations/blackhole.js.map +0 -1
- package/dist/effects/implementations/burn.d.ts +0 -74
- package/dist/effects/implementations/burn.d.ts.map +0 -1
- package/dist/effects/implementations/burn.js +0 -234
- package/dist/effects/implementations/burn.js.map +0 -1
- package/dist/effects/implementations/decrypt.d.ts +0 -115
- package/dist/effects/implementations/decrypt.d.ts.map +0 -1
- package/dist/effects/implementations/decrypt.js +0 -394
- package/dist/effects/implementations/decrypt.js.map +0 -1
- package/dist/effects/implementations/waves.d.ts +0 -78
- package/dist/effects/implementations/waves.d.ts.map +0 -1
- package/dist/effects/implementations/waves.js +0 -278
- package/dist/effects/implementations/waves.js.map +0 -1
- package/dist/effects/index.d.ts +0 -34
- package/dist/effects/index.d.ts.map +0 -1
- package/dist/effects/index.js +0 -114
- package/dist/effects/index.js.map +0 -1
- package/dist/effects/motion-engine.d.ts +0 -168
- package/dist/effects/motion-engine.d.ts.map +0 -1
- package/dist/effects/motion-engine.js +0 -353
- package/dist/effects/motion-engine.js.map +0 -1
- package/dist/effects/safe-executor.d.ts +0 -55
- package/dist/effects/safe-executor.d.ts.map +0 -1
- package/dist/effects/safe-executor.js +0 -210
- package/dist/effects/safe-executor.js.map +0 -1
- package/dist/effects/types.d.ts +0 -199
- package/dist/effects/types.d.ts.map +0 -1
- package/dist/effects/types.js +0 -80
- package/dist/effects/types.js.map +0 -1
- package/dist/effects/utils.d.ts +0 -104
- package/dist/effects/utils.d.ts.map +0 -1
- package/dist/effects/utils.js +0 -280
- package/dist/effects/utils.js.map +0 -1
- package/dist/index.d.ts +0 -4
- package/dist/index.js +0 -213
- package/dist/utils/api-response.d.ts +0 -96
- package/dist/utils/api-response.d.ts.map +0 -1
- package/dist/utils/api-response.js +0 -86
- package/dist/utils/api-response.js.map +0 -1
- package/dist/utils/checkpoint-api.d.ts +0 -86
- package/dist/utils/checkpoint-api.d.ts.map +0 -1
- package/dist/utils/checkpoint-api.js +0 -196
- package/dist/utils/checkpoint-api.js.map +0 -1
- package/dist/utils/checkpoint-env.d.ts +0 -23
- package/dist/utils/checkpoint-env.d.ts.map +0 -1
- package/dist/utils/checkpoint-env.js +0 -59
- package/dist/utils/checkpoint-env.js.map +0 -1
- package/dist/utils/checkpoint-scaffold.d.ts +0 -61
- package/dist/utils/checkpoint-scaffold.d.ts.map +0 -1
- package/dist/utils/checkpoint-scaffold.js +0 -268
- package/dist/utils/checkpoint-scaffold.js.map +0 -1
- package/dist/utils/cli-kit/browser.d.ts +0 -24
- package/dist/utils/cli-kit/browser.d.ts.map +0 -1
- package/dist/utils/cli-kit/browser.js +0 -58
- package/dist/utils/cli-kit/browser.js.map +0 -1
- package/dist/utils/cli-kit/claim-polling.d.ts +0 -18
- package/dist/utils/cli-kit/claim-polling.d.ts.map +0 -1
- package/dist/utils/cli-kit/claim-polling.js +0 -90
- package/dist/utils/cli-kit/claim-polling.js.map +0 -1
- package/dist/utils/cli-kit/diagnostics.d.ts +0 -9
- package/dist/utils/cli-kit/diagnostics.d.ts.map +0 -1
- package/dist/utils/cli-kit/diagnostics.js +0 -11
- package/dist/utils/cli-kit/diagnostics.js.map +0 -1
- package/dist/utils/cli-kit/fs-safe.d.ts +0 -14
- package/dist/utils/cli-kit/fs-safe.d.ts.map +0 -1
- package/dist/utils/cli-kit/fs-safe.js +0 -20
- package/dist/utils/cli-kit/fs-safe.js.map +0 -1
- package/dist/utils/cli-kit/index.d.ts +0 -15
- package/dist/utils/cli-kit/index.d.ts.map +0 -1
- package/dist/utils/cli-kit/index.js +0 -10
- package/dist/utils/cli-kit/index.js.map +0 -1
- package/dist/utils/cli-kit/json-file.d.ts +0 -21
- package/dist/utils/cli-kit/json-file.d.ts.map +0 -1
- package/dist/utils/cli-kit/json-file.js +0 -51
- package/dist/utils/cli-kit/json-file.js.map +0 -1
- package/dist/utils/cli-kit/marker-block.d.ts +0 -26
- package/dist/utils/cli-kit/marker-block.d.ts.map +0 -1
- package/dist/utils/cli-kit/marker-block.js +0 -61
- package/dist/utils/cli-kit/marker-block.js.map +0 -1
- package/dist/utils/cli-kit/paths.d.ts +0 -15
- package/dist/utils/cli-kit/paths.d.ts.map +0 -1
- package/dist/utils/cli-kit/paths.js +0 -21
- package/dist/utils/cli-kit/paths.js.map +0 -1
- package/dist/utils/cli-kit/secure-storage.d.ts +0 -14
- package/dist/utils/cli-kit/secure-storage.d.ts.map +0 -1
- package/dist/utils/cli-kit/secure-storage.js +0 -20
- package/dist/utils/cli-kit/secure-storage.js.map +0 -1
- package/dist/utils/cli-kit/step-report.d.ts +0 -16
- package/dist/utils/cli-kit/step-report.d.ts.map +0 -1
- package/dist/utils/cli-kit/step-report.js +0 -36
- package/dist/utils/cli-kit/step-report.js.map +0 -1
- package/dist/utils/dco/agent-metadata.d.ts +0 -24
- package/dist/utils/dco/agent-metadata.d.ts.map +0 -1
- package/dist/utils/dco/agent-metadata.js +0 -46
- package/dist/utils/dco/agent-metadata.js.map +0 -1
- package/dist/utils/dco/claude-config.d.ts +0 -55
- package/dist/utils/dco/claude-config.d.ts.map +0 -1
- package/dist/utils/dco/claude-config.js +0 -66
- package/dist/utils/dco/claude-config.js.map +0 -1
- package/dist/utils/dco/dispatch.d.ts +0 -59
- package/dist/utils/dco/dispatch.d.ts.map +0 -1
- package/dist/utils/dco/dispatch.js +0 -332
- package/dist/utils/dco/dispatch.js.map +0 -1
- package/dist/utils/dco/git-config.d.ts +0 -47
- package/dist/utils/dco/git-config.d.ts.map +0 -1
- package/dist/utils/dco/git-config.js +0 -161
- package/dist/utils/dco/git-config.js.map +0 -1
- package/dist/utils/dco/github.d.ts +0 -57
- package/dist/utils/dco/github.d.ts.map +0 -1
- package/dist/utils/dco/github.js +0 -165
- package/dist/utils/dco/github.js.map +0 -1
- package/dist/utils/dco/paths.d.ts +0 -9
- package/dist/utils/dco/paths.d.ts.map +0 -1
- package/dist/utils/dco/paths.js +0 -18
- package/dist/utils/dco/paths.js.map +0 -1
- package/dist/utils/dco/render.d.ts +0 -4
- package/dist/utils/dco/render.d.ts.map +0 -1
- package/dist/utils/dco/render.js +0 -35
- package/dist/utils/dco/render.js.map +0 -1
- package/dist/utils/dco/resolve-agent.d.ts +0 -54
- package/dist/utils/dco/resolve-agent.d.ts.map +0 -1
- package/dist/utils/dco/resolve-agent.js +0 -164
- package/dist/utils/dco/resolve-agent.js.map +0 -1
- package/dist/utils/dco/setup.d.ts +0 -50
- package/dist/utils/dco/setup.d.ts.map +0 -1
- package/dist/utils/dco/setup.js +0 -842
- package/dist/utils/dco/setup.js.map +0 -1
- package/dist/utils/dco/ssh-key.d.ts +0 -56
- package/dist/utils/dco/ssh-key.d.ts.map +0 -1
- package/dist/utils/dco/ssh-key.js +0 -197
- package/dist/utils/dco/ssh-key.js.map +0 -1
- package/dist/utils/dco/status.d.ts +0 -12
- package/dist/utils/dco/status.d.ts.map +0 -1
- package/dist/utils/dco/status.js +0 -238
- package/dist/utils/dco/status.js.map +0 -1
- package/dist/utils/dco/verify.d.ts +0 -114
- package/dist/utils/dco/verify.d.ts.map +0 -1
- package/dist/utils/dco/verify.js +0 -383
- package/dist/utils/dco/verify.js.map +0 -1
- package/dist/utils/env-manager.d.ts +0 -122
- package/dist/utils/env-manager.d.ts.map +0 -1
- package/dist/utils/env-manager.js +0 -514
- package/dist/utils/env-manager.js.map +0 -1
- package/dist/utils/gitignore.d.ts +0 -17
- package/dist/utils/gitignore.d.ts.map +0 -1
- package/dist/utils/gitignore.js +0 -40
- package/dist/utils/gitignore.js.map +0 -1
- package/dist/utils/identity-heal.d.ts +0 -16
- package/dist/utils/identity-heal.d.ts.map +0 -1
- package/dist/utils/identity-heal.js +0 -37
- package/dist/utils/identity-heal.js.map +0 -1
- package/dist/utils/identity-manager.d.ts +0 -41
- package/dist/utils/identity-manager.d.ts.map +0 -1
- package/dist/utils/identity-manager.js +0 -159
- package/dist/utils/identity-manager.js.map +0 -1
- package/dist/utils/kta-api.d.ts +0 -103
- package/dist/utils/kta-api.d.ts.map +0 -1
- package/dist/utils/kta-api.js +0 -149
- package/dist/utils/kta-api.js.map +0 -1
- package/dist/utils/platform-detector.d.ts +0 -54
- package/dist/utils/platform-detector.d.ts.map +0 -1
- package/dist/utils/platform-detector.js +0 -197
- package/dist/utils/platform-detector.js.map +0 -1
- package/dist/utils/poll.d.ts +0 -50
- package/dist/utils/poll.d.ts.map +0 -1
- package/dist/utils/poll.js +0 -73
- package/dist/utils/poll.js.map +0 -1
- package/dist/utils/prompts.d.ts +0 -24
- package/dist/utils/prompts.d.ts.map +0 -1
- package/dist/utils/prompts.js +0 -160
- package/dist/utils/prompts.js.map +0 -1
- package/dist/utils/screen-manager.d.ts +0 -10
- package/dist/utils/screen-manager.d.ts.map +0 -1
- package/dist/utils/screen-manager.js +0 -54
- package/dist/utils/screen-manager.js.map +0 -1
- package/dist/utils/time.d.ts +0 -19
- package/dist/utils/time.d.ts.map +0 -1
- package/dist/utils/time.js +0 -30
- package/dist/utils/time.js.map +0 -1
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Verifies that a pull request's attribution byline names an agent identity
|
|
3
|
-
* that actually resolves.
|
|
4
|
-
*
|
|
5
|
-
* `dco setup` only ever *instructs* the harness to write the byline —
|
|
6
|
-
* the PR body is composed by a model at PR time and can be edited by anyone
|
|
7
|
-
* with write access to the branch. So an `Agent DID:` line is a claim, not
|
|
8
|
-
* evidence, until the DID document behind it is fetched and checked. Every
|
|
9
|
-
* failure mode below exists because some way of "resolving" a DID would
|
|
10
|
-
* otherwise let an unverified claim read as verified.
|
|
11
|
-
*/
|
|
12
|
-
export type VerifyFailure = "no-did" | "unsupported-method" | "unresolvable" | "did-mismatch" | "blocked-host";
|
|
13
|
-
export interface AttributionVerification {
|
|
14
|
-
ok: boolean;
|
|
15
|
-
/** The DID claimed by the PR body, when exactly one valid claim is present. */
|
|
16
|
-
did?: string;
|
|
17
|
-
/** Where the DID document was fetched from. */
|
|
18
|
-
documentUrl?: string;
|
|
19
|
-
/** The agent's registry page, taken from the document's service entry. */
|
|
20
|
-
agentUrl?: string;
|
|
21
|
-
reason?: VerifyFailure;
|
|
22
|
-
detail?: string;
|
|
23
|
-
}
|
|
24
|
-
export type FetchLike = (url: string, init?: {
|
|
25
|
-
signal?: AbortSignal;
|
|
26
|
-
redirect?: RequestInit["redirect"];
|
|
27
|
-
}) => Promise<Response>;
|
|
28
|
-
/**
|
|
29
|
-
* Resolve a hostname to every address it answers to. Injectable for the same
|
|
30
|
-
* reason `FetchLike` is: production wants the real resolver, tests want a
|
|
31
|
-
* fixed answer instead of a live DNS lookup.
|
|
32
|
-
*/
|
|
33
|
-
export type LookupLike = (hostname: string) => Promise<string[]>;
|
|
34
|
-
/**
|
|
35
|
-
* The document host is chosen by the DID, which comes from a PR body we do
|
|
36
|
-
* not control. Without a deadline a hostile or merely unreachable host hangs
|
|
37
|
-
* the command for as long as it cares to hold the socket open — tolerable
|
|
38
|
-
* when a human can interrupt it, not when this runs unattended in CI.
|
|
39
|
-
*/
|
|
40
|
-
export declare const RESOLVE_TIMEOUT_MS = 10000;
|
|
41
|
-
/**
|
|
42
|
-
* Pull the claimed DID out of a PR body.
|
|
43
|
-
*
|
|
44
|
-
* Returns null when the body claims two *different* DIDs. Taking the first
|
|
45
|
-
* match would mean an appended line could never change the verdict, but it
|
|
46
|
-
* would also mean a forged line prepended above the real one silently wins.
|
|
47
|
-
* Ambiguous attribution is a failure, not a tie to be broken.
|
|
48
|
-
*/
|
|
49
|
-
export declare function extractAgentDid(prBody: string): string | null;
|
|
50
|
-
/**
|
|
51
|
-
* Whether a piece of text already carries an `Agent DID:` attribution line
|
|
52
|
-
* that `extractAgentDid` would pick up. Uses the exact same line pattern and
|
|
53
|
-
* backtick/whitespace handling, so a caller (notably `dco dispatch`, which
|
|
54
|
-
* appends its own authoritative line) can reject a description that would
|
|
55
|
-
* otherwise put a second, conflicting DID into the PR body. Matches the
|
|
56
|
-
* managed CLAUDE.md block's backticked, mid-line form, not just a line-start
|
|
57
|
-
* one.
|
|
58
|
-
*/
|
|
59
|
-
export declare function hasAgentDidClaim(text: string): boolean;
|
|
60
|
-
/**
|
|
61
|
-
* Map a `did:web` to the HTTPS URL its document must be served from, per the
|
|
62
|
-
* did:web method spec: the identifier's colon-separated segments *are* the
|
|
63
|
-
* path, and a bare domain resolves under `/.well-known/`.
|
|
64
|
-
*
|
|
65
|
-
* Segments are validated AFTER percent-decoding. `DID_PATTERN` permits `%`,
|
|
66
|
-
* so a crafted `%2F` would otherwise smuggle a path separator through and
|
|
67
|
-
* point resolution at an attacker-chosen URL on the same host.
|
|
68
|
-
*/
|
|
69
|
-
export declare function didWebToHttpsUrl(did: string): string | null;
|
|
70
|
-
/**
|
|
71
|
-
* Cheap, synchronous first line of defense against the exact literals an
|
|
72
|
-
* attacker would put directly in a did:web host: `localhost`, or an IPv4
|
|
73
|
-
* literal in a private, loopback, link-local, or otherwise reserved range.
|
|
74
|
-
*
|
|
75
|
-
* Takes the hostname `new URL()` produces, not the raw did:web segment.
|
|
76
|
-
* `URL` canonicalizes decimal/hex/octal IPv4 shorthand (`2130706433` and
|
|
77
|
-
* `0x7f000001` both become `127.0.0.1`) before `fetch` ever sees it, so
|
|
78
|
-
* checking the pre-parse segment would miss exactly the encodings an
|
|
79
|
-
* attacker would reach for to slip past a naive dotted-quad check. The
|
|
80
|
-
* trailing dot is stripped first for the same reason: `new URL()` preserves
|
|
81
|
-
* a root-zone dot (`"localhost."` stays `"localhost."`), and DNS treats it
|
|
82
|
-
* as identical to `"localhost"` — an unstripped compare would let that
|
|
83
|
-
* single character walk straight past an exact-match or `endsWith` check.
|
|
84
|
-
*
|
|
85
|
-
* This is a fast-path, not the actual guarantee: it only catches literals,
|
|
86
|
-
* so it cannot see a normal-looking hostname whose A/AAAA record happens to
|
|
87
|
-
* point at an internal address. `hostResolvesToBlockedAddress` below is
|
|
88
|
-
* what actually closes that gap, by checking where the name resolves to
|
|
89
|
-
* rather than how it's spelled.
|
|
90
|
-
*/
|
|
91
|
-
export declare function isBlockedResolutionHost(hostname: string): boolean;
|
|
92
|
-
/**
|
|
93
|
-
* The actual guarantee `isBlockedResolutionHost` can't provide on its own:
|
|
94
|
-
* resolve the hostname and check every address it answers to, not just
|
|
95
|
-
* whether the hostname string itself looks like one of the blocked
|
|
96
|
-
* literals. A domain an attacker controls can point an A/AAAA record at
|
|
97
|
-
* 169.254.169.254 (or loopback, or an RFC1918 address) just as easily as a
|
|
98
|
-
* did:web host can spell the address out directly — DNS is the attacker's
|
|
99
|
-
* to shape here just as much as the PR body text is, since the DID names
|
|
100
|
-
* whatever host they choose.
|
|
101
|
-
*
|
|
102
|
-
* Deliberately does not catch a lookup failure: that is "no evidence
|
|
103
|
-
* either way", the same as a failed fetch, and the caller already has a
|
|
104
|
-
* reason for that (`unresolvable`) that this must not collide with —
|
|
105
|
-
* mislabeling a plain NXDOMAIN as "blocked-host" would tell the CLI's user
|
|
106
|
-
* they hit a private address when they actually just mistyped a domain.
|
|
107
|
-
*/
|
|
108
|
-
export declare function hostResolvesToBlockedAddress(hostname: string, lookupImpl?: LookupLike): Promise<boolean>;
|
|
109
|
-
/**
|
|
110
|
-
* Resolve the DID claimed by a PR body and confirm the document describes
|
|
111
|
-
* that same DID.
|
|
112
|
-
*/
|
|
113
|
-
export declare function verifyPrAttribution(prBody: string, fetchImpl?: FetchLike, lookupImpl?: LookupLike): Promise<AttributionVerification>;
|
|
114
|
-
//# sourceMappingURL=verify.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/utils/dco/verify.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,oBAAoB,GACpB,cAAc,GACd,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,OAAO,CAAC;IACZ,+EAA+E;IAC/E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,SAAS,GAAG,CACtB,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;CAAE,KAChE,OAAO,CAAC,QAAQ,CAAC,CAAC;AAEvB;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;AAOjE;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,QAAS,CAAC;AAWzC;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY7D;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQtD;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAqC3D;AA0ED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIjE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,MAAM,EAChB,UAAU,GAAE,UAA0B,GACrC,OAAO,CAAC,OAAO,CAAC,CAGlB;AAyED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,SAA2C,EACtD,UAAU,GAAE,UAA0B,GACrC,OAAO,CAAC,uBAAuB,CAAC,CAwGlC"}
|
package/dist/utils/dco/verify.js
DELETED
|
@@ -1,383 +0,0 @@
|
|
|
1
|
-
import { lookup as dnsLookup } from "node:dns/promises";
|
|
2
|
-
import { isValidDid } from "./claude-config.js";
|
|
3
|
-
const defaultLookup = async (hostname) => {
|
|
4
|
-
const records = await dnsLookup(hostname, { all: true });
|
|
5
|
-
return records.map((record) => record.address);
|
|
6
|
-
};
|
|
7
|
-
/**
|
|
8
|
-
* The document host is chosen by the DID, which comes from a PR body we do
|
|
9
|
-
* not control. Without a deadline a hostile or merely unreachable host hangs
|
|
10
|
-
* the command for as long as it cares to hold the socket open — tolerable
|
|
11
|
-
* when a human can interrupt it, not when this runs unattended in CI.
|
|
12
|
-
*/
|
|
13
|
-
export const RESOLVE_TIMEOUT_MS = 10000;
|
|
14
|
-
/**
|
|
15
|
-
* Captures the whole remainder of the line, not the first whitespace-free
|
|
16
|
-
* run. Truncating at whitespace would silently reduce a malformed value to
|
|
17
|
-
* whichever prefix happens to parse: `Agent DID: did:web:knowthat.ai junk`
|
|
18
|
-
* would become `did:web:knowthat.ai`, resolve the registry's own root
|
|
19
|
-
* document, match its own `id`, and report a forged line as verified.
|
|
20
|
-
*/
|
|
21
|
-
const AGENT_DID_LINE = /Agent DID:[^\S\n\r]*([^\n\r]*)/g;
|
|
22
|
-
/**
|
|
23
|
-
* Pull the claimed DID out of a PR body.
|
|
24
|
-
*
|
|
25
|
-
* Returns null when the body claims two *different* DIDs. Taking the first
|
|
26
|
-
* match would mean an appended line could never change the verdict, but it
|
|
27
|
-
* would also mean a forged line prepended above the real one silently wins.
|
|
28
|
-
* Ambiguous attribution is a failure, not a tie to be broken.
|
|
29
|
-
*/
|
|
30
|
-
export function extractAgentDid(prBody) {
|
|
31
|
-
const claimed = new Set();
|
|
32
|
-
for (const match of prBody.matchAll(AGENT_DID_LINE)) {
|
|
33
|
-
// The managed block wraps the line in a code span, so a trailing
|
|
34
|
-
// backtick is expected punctuation rather than part of the identifier.
|
|
35
|
-
const candidate = match[1].replace(/`+\s*$/, "").trim();
|
|
36
|
-
if (isValidDid(candidate)) {
|
|
37
|
-
claimed.add(candidate);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
if (claimed.size !== 1)
|
|
41
|
-
return null;
|
|
42
|
-
return [...claimed][0];
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Whether a piece of text already carries an `Agent DID:` attribution line
|
|
46
|
-
* that `extractAgentDid` would pick up. Uses the exact same line pattern and
|
|
47
|
-
* backtick/whitespace handling, so a caller (notably `dco dispatch`, which
|
|
48
|
-
* appends its own authoritative line) can reject a description that would
|
|
49
|
-
* otherwise put a second, conflicting DID into the PR body. Matches the
|
|
50
|
-
* managed CLAUDE.md block's backticked, mid-line form, not just a line-start
|
|
51
|
-
* one.
|
|
52
|
-
*/
|
|
53
|
-
export function hasAgentDidClaim(text) {
|
|
54
|
-
for (const match of text.matchAll(AGENT_DID_LINE)) {
|
|
55
|
-
const candidate = match[1].replace(/`+\s*$/, "").trim();
|
|
56
|
-
if (isValidDid(candidate)) {
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Map a `did:web` to the HTTPS URL its document must be served from, per the
|
|
64
|
-
* did:web method spec: the identifier's colon-separated segments *are* the
|
|
65
|
-
* path, and a bare domain resolves under `/.well-known/`.
|
|
66
|
-
*
|
|
67
|
-
* Segments are validated AFTER percent-decoding. `DID_PATTERN` permits `%`,
|
|
68
|
-
* so a crafted `%2F` would otherwise smuggle a path separator through and
|
|
69
|
-
* point resolution at an attacker-chosen URL on the same host.
|
|
70
|
-
*/
|
|
71
|
-
export function didWebToHttpsUrl(did) {
|
|
72
|
-
const prefix = "did:web:";
|
|
73
|
-
if (!did.startsWith(prefix))
|
|
74
|
-
return null;
|
|
75
|
-
const segments = did.slice(prefix.length).split(":");
|
|
76
|
-
if (segments.length === 0 || segments.some((segment) => segment === "")) {
|
|
77
|
-
return null;
|
|
78
|
-
}
|
|
79
|
-
const decoded = [];
|
|
80
|
-
for (const segment of segments) {
|
|
81
|
-
try {
|
|
82
|
-
decoded.push(decodeURIComponent(segment));
|
|
83
|
-
}
|
|
84
|
-
catch {
|
|
85
|
-
return null;
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
const [host, ...path] = decoded;
|
|
89
|
-
// Host may carry a port (encoded as %3A in the DID) but nothing else.
|
|
90
|
-
if (!/^[A-Za-z0-9.-]+(:\d+)?$/.test(host))
|
|
91
|
-
return null;
|
|
92
|
-
if (path.some((segment) => segment === "" ||
|
|
93
|
-
segment === "." ||
|
|
94
|
-
segment === ".." ||
|
|
95
|
-
/[/\\?#]/.test(segment))) {
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
const suffix = path.length
|
|
99
|
-
? `${path.join("/")}/did.json`
|
|
100
|
-
: ".well-known/did.json";
|
|
101
|
-
return `https://${host}/${suffix}`;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* IPv4 ranges that must never be treated as a resolvable did:web host:
|
|
105
|
-
* loopback, all three RFC1918 private blocks, link-local (which is also
|
|
106
|
-
* where every major cloud's instance-metadata service lives, at
|
|
107
|
-
* 169.254.169.254), and the remaining reserved/special-use blocks that have
|
|
108
|
-
* no business serving a public DID document.
|
|
109
|
-
*/
|
|
110
|
-
const BLOCKED_IPV4_RANGES = [
|
|
111
|
-
["0.0.0.0", 8], // "this network"
|
|
112
|
-
["10.0.0.0", 8], // RFC1918 private
|
|
113
|
-
["100.64.0.0", 10], // shared address space (CGNAT)
|
|
114
|
-
["127.0.0.0", 8], // loopback
|
|
115
|
-
["169.254.0.0", 16], // link-local, incl. cloud metadata (169.254.169.254)
|
|
116
|
-
["172.16.0.0", 12], // RFC1918 private
|
|
117
|
-
["192.0.0.0", 24], // IETF protocol assignments
|
|
118
|
-
["192.0.2.0", 24], // documentation (TEST-NET-1)
|
|
119
|
-
["192.168.0.0", 16], // RFC1918 private
|
|
120
|
-
["198.18.0.0", 15], // benchmarking
|
|
121
|
-
["198.51.100.0", 24], // documentation (TEST-NET-2)
|
|
122
|
-
["203.0.113.0", 24], // documentation (TEST-NET-3)
|
|
123
|
-
["224.0.0.0", 4], // multicast
|
|
124
|
-
["240.0.0.0", 4], // reserved, incl. the 255.255.255.255 broadcast address
|
|
125
|
-
];
|
|
126
|
-
function ipv4ToInt(ip) {
|
|
127
|
-
const match = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(ip);
|
|
128
|
-
if (!match)
|
|
129
|
-
return null;
|
|
130
|
-
const octets = match.slice(1, 5).map(Number);
|
|
131
|
-
if (octets.some((octet) => octet > 255))
|
|
132
|
-
return null;
|
|
133
|
-
return (((octets[0] << 24) | (octets[1] << 16) | (octets[2] << 8) | octets[3]) >>>
|
|
134
|
-
0);
|
|
135
|
-
}
|
|
136
|
-
function isBlockedIpv4(ip) {
|
|
137
|
-
const value = ipv4ToInt(ip);
|
|
138
|
-
if (value === null)
|
|
139
|
-
return false;
|
|
140
|
-
return BLOCKED_IPV4_RANGES.some(([base, prefix]) => {
|
|
141
|
-
const mask = prefix === 0 ? 0 : (0xffffffff << (32 - prefix)) >>> 0;
|
|
142
|
-
return (value & mask) === (ipv4ToInt(base) & mask);
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* The IPv6 counterparts of the ranges above: loopback, unspecified,
|
|
147
|
-
* link-local (`fe80::/10`), and unique-local (`fc00::/7`, the IPv6 analogue
|
|
148
|
-
* of RFC1918). A resolver can hand back either family, so an address that
|
|
149
|
-
* only checked IPv4 would wave an AAAA-only loopback/private record through.
|
|
150
|
-
*/
|
|
151
|
-
function isBlockedIpv6(ip) {
|
|
152
|
-
const lower = ip.toLowerCase();
|
|
153
|
-
// A v4-mapped/v4-compatible address ends in a dotted IPv4 literal (e.g.
|
|
154
|
-
// "::ffff:127.0.0.1") — defer to the IPv4 check on that embedded address.
|
|
155
|
-
const tail = lower.slice(lower.lastIndexOf(":") + 1);
|
|
156
|
-
if (tail.includes(".") && isBlockedIpv4(tail))
|
|
157
|
-
return true;
|
|
158
|
-
if (lower === "::1" || lower === "::")
|
|
159
|
-
return true;
|
|
160
|
-
const firstGroup = lower.split(":")[0];
|
|
161
|
-
const firstHextet = firstGroup === "" ? NaN : parseInt(firstGroup, 16);
|
|
162
|
-
if (Number.isNaN(firstHextet))
|
|
163
|
-
return false;
|
|
164
|
-
if (firstHextet >= 0xfe80 && firstHextet <= 0xfebf)
|
|
165
|
-
return true; // link-local
|
|
166
|
-
if (firstHextet >= 0xfc00 && firstHextet <= 0xfdff)
|
|
167
|
-
return true; // unique-local
|
|
168
|
-
return false;
|
|
169
|
-
}
|
|
170
|
-
function isBlockedAddress(ip) {
|
|
171
|
-
return ip.includes(":") ? isBlockedIpv6(ip) : isBlockedIpv4(ip);
|
|
172
|
-
}
|
|
173
|
-
/**
|
|
174
|
-
* Cheap, synchronous first line of defense against the exact literals an
|
|
175
|
-
* attacker would put directly in a did:web host: `localhost`, or an IPv4
|
|
176
|
-
* literal in a private, loopback, link-local, or otherwise reserved range.
|
|
177
|
-
*
|
|
178
|
-
* Takes the hostname `new URL()` produces, not the raw did:web segment.
|
|
179
|
-
* `URL` canonicalizes decimal/hex/octal IPv4 shorthand (`2130706433` and
|
|
180
|
-
* `0x7f000001` both become `127.0.0.1`) before `fetch` ever sees it, so
|
|
181
|
-
* checking the pre-parse segment would miss exactly the encodings an
|
|
182
|
-
* attacker would reach for to slip past a naive dotted-quad check. The
|
|
183
|
-
* trailing dot is stripped first for the same reason: `new URL()` preserves
|
|
184
|
-
* a root-zone dot (`"localhost."` stays `"localhost."`), and DNS treats it
|
|
185
|
-
* as identical to `"localhost"` — an unstripped compare would let that
|
|
186
|
-
* single character walk straight past an exact-match or `endsWith` check.
|
|
187
|
-
*
|
|
188
|
-
* This is a fast-path, not the actual guarantee: it only catches literals,
|
|
189
|
-
* so it cannot see a normal-looking hostname whose A/AAAA record happens to
|
|
190
|
-
* point at an internal address. `hostResolvesToBlockedAddress` below is
|
|
191
|
-
* what actually closes that gap, by checking where the name resolves to
|
|
192
|
-
* rather than how it's spelled.
|
|
193
|
-
*/
|
|
194
|
-
export function isBlockedResolutionHost(hostname) {
|
|
195
|
-
const lower = hostname.toLowerCase().replace(/\.$/, "");
|
|
196
|
-
if (lower === "localhost" || lower.endsWith(".localhost"))
|
|
197
|
-
return true;
|
|
198
|
-
return isBlockedAddress(lower);
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* The actual guarantee `isBlockedResolutionHost` can't provide on its own:
|
|
202
|
-
* resolve the hostname and check every address it answers to, not just
|
|
203
|
-
* whether the hostname string itself looks like one of the blocked
|
|
204
|
-
* literals. A domain an attacker controls can point an A/AAAA record at
|
|
205
|
-
* 169.254.169.254 (or loopback, or an RFC1918 address) just as easily as a
|
|
206
|
-
* did:web host can spell the address out directly — DNS is the attacker's
|
|
207
|
-
* to shape here just as much as the PR body text is, since the DID names
|
|
208
|
-
* whatever host they choose.
|
|
209
|
-
*
|
|
210
|
-
* Deliberately does not catch a lookup failure: that is "no evidence
|
|
211
|
-
* either way", the same as a failed fetch, and the caller already has a
|
|
212
|
-
* reason for that (`unresolvable`) that this must not collide with —
|
|
213
|
-
* mislabeling a plain NXDOMAIN as "blocked-host" would tell the CLI's user
|
|
214
|
-
* they hit a private address when they actually just mistyped a domain.
|
|
215
|
-
*/
|
|
216
|
-
export async function hostResolvesToBlockedAddress(hostname, lookupImpl = defaultLookup) {
|
|
217
|
-
const addresses = await lookupImpl(hostname);
|
|
218
|
-
return addresses.some(isBlockedAddress);
|
|
219
|
-
}
|
|
220
|
-
/**
|
|
221
|
-
* Everything that has to be true about `documentUrl`'s host before it is
|
|
222
|
-
* worth spending a request on: it must parse, it must not be one of the
|
|
223
|
-
* literals `isBlockedResolutionHost` recognizes, and it must not resolve to
|
|
224
|
-
* one either. Pulled out on its own so `verifyPrAttribution` reads as one
|
|
225
|
-
* linear pipeline instead of three nested guard clauses doing the same kind
|
|
226
|
-
* of check.
|
|
227
|
-
*/
|
|
228
|
-
async function checkDocumentHostIsSafe(documentUrl, lookupImpl) {
|
|
229
|
-
let hostname;
|
|
230
|
-
try {
|
|
231
|
-
hostname = new URL(documentUrl).hostname;
|
|
232
|
-
}
|
|
233
|
-
catch {
|
|
234
|
-
return {
|
|
235
|
-
safe: false,
|
|
236
|
-
reason: "unresolvable",
|
|
237
|
-
detail: "The resolved document URL was invalid.",
|
|
238
|
-
};
|
|
239
|
-
}
|
|
240
|
-
if (isBlockedResolutionHost(hostname)) {
|
|
241
|
-
return {
|
|
242
|
-
safe: false,
|
|
243
|
-
reason: "blocked-host",
|
|
244
|
-
detail: "Refusing to resolve a private, loopback, link-local, or metadata address.",
|
|
245
|
-
};
|
|
246
|
-
}
|
|
247
|
-
let blocked;
|
|
248
|
-
try {
|
|
249
|
-
blocked = await hostResolvesToBlockedAddress(hostname, lookupImpl);
|
|
250
|
-
}
|
|
251
|
-
catch (error) {
|
|
252
|
-
// Same reasoning as a failed fetch: no evidence either way, so no pass.
|
|
253
|
-
return {
|
|
254
|
-
safe: false,
|
|
255
|
-
reason: "unresolvable",
|
|
256
|
-
detail: error instanceof Error ? error.message : String(error),
|
|
257
|
-
};
|
|
258
|
-
}
|
|
259
|
-
if (blocked) {
|
|
260
|
-
return {
|
|
261
|
-
safe: false,
|
|
262
|
-
reason: "blocked-host",
|
|
263
|
-
detail: "The claimed DID resolves to a private, loopback, link-local, or metadata address.",
|
|
264
|
-
};
|
|
265
|
-
}
|
|
266
|
-
return { safe: true };
|
|
267
|
-
}
|
|
268
|
-
function readServiceEndpoint(document) {
|
|
269
|
-
if (typeof document !== "object" || document === null)
|
|
270
|
-
return undefined;
|
|
271
|
-
const service = document.service;
|
|
272
|
-
if (!Array.isArray(service))
|
|
273
|
-
return undefined;
|
|
274
|
-
for (const entry of service) {
|
|
275
|
-
if (typeof entry !== "object" || entry === null)
|
|
276
|
-
continue;
|
|
277
|
-
const endpoint = entry.serviceEndpoint;
|
|
278
|
-
if (typeof endpoint === "string" && endpoint.length > 0)
|
|
279
|
-
return endpoint;
|
|
280
|
-
}
|
|
281
|
-
return undefined;
|
|
282
|
-
}
|
|
283
|
-
/**
|
|
284
|
-
* Resolve the DID claimed by a PR body and confirm the document describes
|
|
285
|
-
* that same DID.
|
|
286
|
-
*/
|
|
287
|
-
export async function verifyPrAttribution(prBody, fetchImpl = (url, init) => fetch(url, init), lookupImpl = defaultLookup) {
|
|
288
|
-
const did = extractAgentDid(prBody);
|
|
289
|
-
if (!did)
|
|
290
|
-
return { ok: false, reason: "no-did" };
|
|
291
|
-
const documentUrl = didWebToHttpsUrl(did);
|
|
292
|
-
if (!documentUrl) {
|
|
293
|
-
return {
|
|
294
|
-
ok: false,
|
|
295
|
-
did,
|
|
296
|
-
reason: "unsupported-method",
|
|
297
|
-
detail: "Only did:web identities can be resolved over HTTPS.",
|
|
298
|
-
};
|
|
299
|
-
}
|
|
300
|
-
// The document host came from a PR body we do not control, so it is
|
|
301
|
-
// checked — both how it's spelled and where it actually resolves — before
|
|
302
|
-
// we ever make a request to it. Skipping this would let an IP literal, or
|
|
303
|
-
// a normal-looking domain with an A/AAAA record pointing at one, reach a
|
|
304
|
-
// loopback, private, link-local, or cloud-metadata address — an SSRF that
|
|
305
|
-
// a hostile PR description can trigger unattended in CI.
|
|
306
|
-
const hostCheck = await checkDocumentHostIsSafe(documentUrl, lookupImpl);
|
|
307
|
-
if (!hostCheck.safe) {
|
|
308
|
-
return {
|
|
309
|
-
ok: false,
|
|
310
|
-
did,
|
|
311
|
-
documentUrl,
|
|
312
|
-
reason: hostCheck.reason,
|
|
313
|
-
detail: hostCheck.detail,
|
|
314
|
-
};
|
|
315
|
-
}
|
|
316
|
-
let response;
|
|
317
|
-
try {
|
|
318
|
-
response = await fetchImpl(documentUrl, {
|
|
319
|
-
signal: AbortSignal.timeout(RESOLVE_TIMEOUT_MS),
|
|
320
|
-
// A redirect target is unverified: it could bounce to an internal
|
|
321
|
-
// address the check above never saw. Refusing to follow it, rather
|
|
322
|
-
// than trusting `fetch`'s default of following automatically, keeps
|
|
323
|
-
// this host check from being bypassable by a 3xx response.
|
|
324
|
-
redirect: "manual",
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
catch (error) {
|
|
328
|
-
// A transport failure is indistinguishable from a missing document as far
|
|
329
|
-
// as trust goes: neither produced evidence, so neither may pass.
|
|
330
|
-
return {
|
|
331
|
-
ok: false,
|
|
332
|
-
did,
|
|
333
|
-
documentUrl,
|
|
334
|
-
reason: "unresolvable",
|
|
335
|
-
detail: error instanceof Error ? error.message : String(error),
|
|
336
|
-
};
|
|
337
|
-
}
|
|
338
|
-
if (!response.ok) {
|
|
339
|
-
return {
|
|
340
|
-
ok: false,
|
|
341
|
-
did,
|
|
342
|
-
documentUrl,
|
|
343
|
-
reason: "unresolvable",
|
|
344
|
-
detail: response.type === "opaqueredirect"
|
|
345
|
-
? "Server returned a redirect, which is not followed."
|
|
346
|
-
: `HTTP ${response.status}`,
|
|
347
|
-
};
|
|
348
|
-
}
|
|
349
|
-
let document;
|
|
350
|
-
try {
|
|
351
|
-
document = await response.json();
|
|
352
|
-
}
|
|
353
|
-
catch {
|
|
354
|
-
return {
|
|
355
|
-
ok: false,
|
|
356
|
-
did,
|
|
357
|
-
documentUrl,
|
|
358
|
-
reason: "unresolvable",
|
|
359
|
-
detail: "Response was not valid JSON.",
|
|
360
|
-
};
|
|
361
|
-
}
|
|
362
|
-
const resolvedId = typeof document === "object" && document !== null
|
|
363
|
-
? document.id
|
|
364
|
-
: undefined;
|
|
365
|
-
// A document that resolves but names a different subject proves nothing
|
|
366
|
-
// about the claimed identity.
|
|
367
|
-
if (resolvedId !== did) {
|
|
368
|
-
return {
|
|
369
|
-
ok: false,
|
|
370
|
-
did,
|
|
371
|
-
documentUrl,
|
|
372
|
-
reason: "did-mismatch",
|
|
373
|
-
detail: `Document describes ${typeof resolvedId === "string" ? resolvedId : "no DID"}.`,
|
|
374
|
-
};
|
|
375
|
-
}
|
|
376
|
-
return {
|
|
377
|
-
ok: true,
|
|
378
|
-
did,
|
|
379
|
-
documentUrl,
|
|
380
|
-
agentUrl: readServiceEndpoint(document),
|
|
381
|
-
};
|
|
382
|
-
}
|
|
383
|
-
//# sourceMappingURL=verify.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../../src/utils/dco/verify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,122 +0,0 @@
|
|
|
1
|
-
export interface EnvVariables {
|
|
2
|
-
AGENT_PRIVATE_KEY: string;
|
|
3
|
-
AGENT_KEY_ID: string;
|
|
4
|
-
AGENT_DID: string;
|
|
5
|
-
AGENT_PUBLIC_KEY?: string;
|
|
6
|
-
AGENT_NAME?: string;
|
|
7
|
-
AGENT_DESCRIPTION?: string;
|
|
8
|
-
AGENT_GITHUB_REPO?: string;
|
|
9
|
-
BASE_URL?: string;
|
|
10
|
-
KYA_VOUCHED_API_KEY: string;
|
|
11
|
-
VOUCHED_API_KEY?: string;
|
|
12
|
-
}
|
|
13
|
-
export interface EnvFile {
|
|
14
|
-
path: string;
|
|
15
|
-
filename: string;
|
|
16
|
-
exists: boolean;
|
|
17
|
-
writable: boolean;
|
|
18
|
-
hasmcpidentity: boolean;
|
|
19
|
-
xmcpVariables: Partial<EnvVariables>;
|
|
20
|
-
}
|
|
21
|
-
export interface EnvInsertionResult {
|
|
22
|
-
success: boolean;
|
|
23
|
-
targetFile: string;
|
|
24
|
-
operation: "created" | "updated" | "replaced";
|
|
25
|
-
warnings: string[];
|
|
26
|
-
conflicts?: {
|
|
27
|
-
file: string;
|
|
28
|
-
variable: string;
|
|
29
|
-
value: string;
|
|
30
|
-
}[];
|
|
31
|
-
}
|
|
32
|
-
export declare class EnvManager {
|
|
33
|
-
private projectRoot;
|
|
34
|
-
constructor(projectRoot?: string);
|
|
35
|
-
/**
|
|
36
|
-
* Scan for all .env files with detailed analysis
|
|
37
|
-
*/
|
|
38
|
-
scanEnvFiles(): EnvFile[];
|
|
39
|
-
/**
|
|
40
|
-
* Determine the best target file using precedence rules
|
|
41
|
-
*/
|
|
42
|
-
selectTargetEnvFile(envFiles: EnvFile[]): {
|
|
43
|
-
target: EnvFile | null;
|
|
44
|
-
warnings: string[];
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Check for conflicts across multiple .env files
|
|
48
|
-
*/
|
|
49
|
-
detectConflicts(envFiles: EnvFile[], newVariables: EnvVariables): {
|
|
50
|
-
file: string;
|
|
51
|
-
variable: string;
|
|
52
|
-
value: string;
|
|
53
|
-
}[];
|
|
54
|
-
/**
|
|
55
|
-
* Smart insertion/update of MCP-I variables
|
|
56
|
-
*/
|
|
57
|
-
smartInsertMcpVariables(variables: EnvVariables, options?: {
|
|
58
|
-
force?: boolean;
|
|
59
|
-
}): Promise<EnvInsertionResult>;
|
|
60
|
-
/**
|
|
61
|
-
* Parse .env file and extract MCP-I variables
|
|
62
|
-
*/
|
|
63
|
-
private parseEnvFile;
|
|
64
|
-
/**
|
|
65
|
-
* Create a new .env file
|
|
66
|
-
*/
|
|
67
|
-
private createEnvFile;
|
|
68
|
-
/**
|
|
69
|
-
* Update existing .env file by replacing MCP-I variables
|
|
70
|
-
*/
|
|
71
|
-
private updateExistingEnvFile;
|
|
72
|
-
/**
|
|
73
|
-
* Append MCP-I variables to existing .env file
|
|
74
|
-
*/
|
|
75
|
-
private appendToEnvFile;
|
|
76
|
-
/**
|
|
77
|
-
* Find existing .env files in the project
|
|
78
|
-
*/
|
|
79
|
-
findExistingEnvFiles(): string[];
|
|
80
|
-
/**
|
|
81
|
-
* Update or create environment file, merging with existing content
|
|
82
|
-
*/
|
|
83
|
-
updateEnvFile(filename: string, variables: EnvVariables, options?: {
|
|
84
|
-
force?: boolean;
|
|
85
|
-
example?: boolean;
|
|
86
|
-
}): Promise<void>;
|
|
87
|
-
/**
|
|
88
|
-
* Read environment variables from file
|
|
89
|
-
*/
|
|
90
|
-
readEnvFile(filename: string): Partial<EnvVariables>;
|
|
91
|
-
/**
|
|
92
|
-
* Check if .gitignore includes env files
|
|
93
|
-
*/
|
|
94
|
-
checkGitignore(envFiles: string[]): {
|
|
95
|
-
missing: string[];
|
|
96
|
-
ignored: string[];
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* Add files to .gitignore
|
|
100
|
-
*/
|
|
101
|
-
addToGitignore(files: string[]): void;
|
|
102
|
-
/**
|
|
103
|
-
* Get environment variables from process.env
|
|
104
|
-
*/
|
|
105
|
-
getFromProcess(): Partial<EnvVariables>;
|
|
106
|
-
/**
|
|
107
|
-
* Format environment variables for display
|
|
108
|
-
*/
|
|
109
|
-
formatForDisplay(vars: Partial<EnvVariables>, hideSecrets?: boolean): string;
|
|
110
|
-
/**
|
|
111
|
-
* Format for clipboard (no masking)
|
|
112
|
-
*/
|
|
113
|
-
formatForClipboard(vars: Partial<EnvVariables>): string;
|
|
114
|
-
/**
|
|
115
|
-
* Check if all required variables are present
|
|
116
|
-
*/
|
|
117
|
-
validateVariables(vars: Partial<EnvVariables>): {
|
|
118
|
-
valid: boolean;
|
|
119
|
-
missing: string[];
|
|
120
|
-
};
|
|
121
|
-
}
|
|
122
|
-
//# sourceMappingURL=env-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"env-manager.d.ts","sourceRoot":"","sources":["../../src/utils/env-manager.ts"],"names":[],"mappings":"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"}
|