internal/

directory
v0.8.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 2, 2026 License: Apache-2.0

Directories

Path Synopsis
Package adoscope is the Azure DevOps CAPABILITY CATALOGUE: it names the access a request needs, classifies one request to exactly one name, and maps those names to Entra scopes — because Azure DevOps asks for vso.code_write both to push a commit and to complete a pull request while BYPASSING branch policy, so a token minted from the requested scope is strictly wider than the work it was minted for.
Package adoscope is the Azure DevOps CAPABILITY CATALOGUE: it names the access a request needs, classifies one request to exactly one name, and maps those names to Entra scopes — because Azure DevOps asks for vso.code_write both to push a commit and to complete a pull request while BYPASSING branch policy, so a token minted from the requested scope is strictly wider than the work it was minted for.
Package agentpolicy generates the AGENT-SIDE half of a run's autonomy level: the managed-settings document an agent CLI reads before it will honour — or refuse — its own launch flags.
Package agentpolicy generates the AGENT-SIDE half of a run's autonomy level: the managed-settings document an agent CLI reads before it will honour — or refuse — its own launch flags.
Access / role-mapping CRUD (migration 0051): the console's Getting Started -> People editor over the store half of internal/auth/oidc's RoleMappingSource.
Access / role-mapping CRUD (migration 0051): the console's Getting Started -> People editor over the store half of internal/auth/oidc's RoleMappingSource.
Package approval implements the ApprovalRequest FSM service.
Package approval implements the ApprovalRequest FSM service.
Package audit defines the append-only audit contract.
Package audit defines the append-only audit contract.
sinks
Package sinks provides production audit.Sink implementations (syslog, webhook, file) plus a Fanout multiplexer and config wiring.
Package sinks provides production audit.Sink implementations (syslog, webhook, file) plus a Fanout multiplexer and config wiring.
auth
oidc
derive.go holds the IDENTITY-DERIVATION seam: everything that turns an ID token's claims into WHO this human is (deriveRole, Config.RoleMap, the legacy operator allowlist) and their group snapshot (sessionGroups).
derive.go holds the IDENTITY-DERIVATION seam: everything that turns an ID token's claims into WHO this human is (deriveRole, Config.RoleMap, the legacy operator allowlist) and their group snapshot (sessionGroups).
Package authz is Wardyn's authorization kernel: the one Decision every door refuses with, and the registry of refusal reasons that is the audit contract a SIEM rule is written against.
Package authz is Wardyn's authorization kernel: the one Decision every door refuses with, and the registry of refusal reasons that is the audit contract a SIEM rule is written against.
Package broker implements Wardyn's token broker: the ONLY component that holds long-lived secrets and the sole issuer of short-lived run credentials.
Package broker implements Wardyn's token broker: the ONLY component that holds long-lived secrets and the sole issuer of short-lived run credentials.
Package cliutil holds tiny env/flag helpers shared by Wardyn's cmd/* main packages, plus ScrubChildEnv, the one env denylist shared by every host-exec'd third-party CLI child.
Package cliutil holds tiny env/flag helpers shared by Wardyn's cmd/* main packages, plus ScrubChildEnv, the one env denylist shared by every host-exec'd third-party CLI child.
Package component provides the shared name→constructor registry backing Wardyn's pluggable seams (identity provider, secret store, recording store, confinement substrate), so each seam selects an implementation uniformly via a WARDYN_<SEAM> name while keeping a type-safe constructor signature.
Package component provides the shared name→constructor registry backing Wardyn's pluggable seams (identity provider, secret store, recording store, confinement substrate), so each seam selects an implementation uniformly via a WARDYN_<SEAM> name while keeping a type-safe constructor signature.
Posture-gated autonomy, arithmetic half.
Posture-gated autonomy, arithmetic half.
Package contentscan implements Wardyn's OPTIONAL, off-by-default outbound content-inspection layer: scans outbound LLM request bodies for known secret values before they leave the sandbox boundary and yields a CONTENT-FREE finding.
Package contentscan implements Wardyn's OPTIONAL, off-by-default outbound content-inspection layer: scans outbound LLM request bodies for known secret values before they leave the sandbox boundary and yields a CONTENT-FREE finding.
Package db provides Postgres connection bootstrapping and schema migration for the Wardyn control plane.
Package db provides Postgres connection bootstrapping and schema migration for the Wardyn control plane.
Package directory turns what an admin TYPES into what Wardyn STORES.
Package directory turns what an admin TYPES into what Wardyn STORES.
Package egress defines the proxy decision model shared by cmd/wardyn-proxy and the control plane's policy/approval wiring.
Package egress defines the proxy decision model shared by cmd/wardyn-proxy and the control plane's policy/approval wiring.
evaluatortest
Package evaluatortest provides a reusable conformance suite for any egress.Evaluator implementation, so the blessed default (builtin) and a future alternate (OPA/Cedar) are held to the identical policy-verdict contract.
Package evaluatortest provides a reusable conformance suite for any egress.Evaluator implementation, so the blessed default (builtin) and a future alternate (OPA/Cedar) are held to the identical policy-verdict contract.
proxy
Package proxy implements the L2 per-workspace egress sidecar (wardyn-proxy): an HTTP forward proxy that enforces the internal/egress decision model (default-deny domain allowlist, method rules, first-use approval), streams decision logs, and injects credentials proxy-side.
Package proxy implements the L2 per-workspace egress sidecar (wardyn-proxy): an HTTP forward proxy that enforces the internal/egress decision model (default-deny domain allowlist, method rules, first-use approval), streams decision logs, and injects credentials proxy-side.
Package federation is the laptop half of hybrid enrolment: the client for the organisation's device routes, and the forwarder pushing this daemon's audit rows upward.
Package federation is the laptop half of hybrid enrolment: the client for the organisation's device routes, and the forwarder pushing this daemon's audit rows upward.
Package gitpack answers one question about a buffered git-receive-pack request: which paths would this push change, with what file modes and sizes? It is a pure library: no sockets, no config, no fetching the base objects a thin pack refers to — a push is judged from its own bytes only.
Package gitpack answers one question about a buffered git-receive-pack request: which paths would this push change, with what file modes and sizes? It is a pure library: no sockets, no config, no fetching the base objects a thin pack refers to — a push is judged from its own bytes only.
Package gitremote deterministically detects the git remotes configured in a local directory tree, so Wardyn can ground a composed run's GitHub grant on the workspace's ACTUAL remotes rather than a guess.
Package gitremote deterministically detects the git remotes configured in a local directory tree, so Wardyn can ground a composed run's GitHub grant on the workspace's ACTUAL remotes rather than a guess.
Package groundtruth maps kernel-level eBPF (Tetragon) observations into Wardyn's audit vocabulary (types.AuditEvent): the tamper-proof ground-truth counterpart to the agent's self-report and PTY replay.
Package groundtruth maps kernel-level eBPF (Tetragon) observations into Wardyn's audit vocabulary (types.AuditEvent): the tamper-proof ground-truth counterpart to the agent's self-report and PTY replay.
Package hoptls is the TLS on the hop between wardynd and each run's wardyn-proxy: the hop the proxy resolves credential VALUES over, plus every other internal call it makes (mints, token renewal, decisions, approvals, uploads).
Package hoptls is the TLS on the hop between wardynd and each run's wardyn-proxy: the hop the proxy resolves credential VALUES over, plus every other internal call it makes (mints, token renewal, decisions, approvals, uploads).
Package hostcapacity refuses new runs while the host is short of memory or over a load ceiling, so a burst of launches cannot push the machine that hosts the daemon (and everything else on it) into swap or an OOM kill.
Package hostcapacity refuses new runs while the host is short of memory or over a load ceiling, so a burst of launches cannot push the machine that hosts the daemon (and everything else on it) into swap or an OOM kill.
Package hostrules holds host-shape rules and artifact-registry tables that runtime governance paths depend on — approval write-back, egress substitution, site-config validation, and the artifact-redirect emitter.
Package hostrules holds host-shape rules and artifact-registry tables that runtime governance paths depend on — approval write-back, egress substitution, site-config validation, and the artifact-redirect emitter.
Package identity defines the per-run workload identity contract.
Package identity defines the per-run workload identity contract.
embedded
Package embedded implements the default, SPIFFE-shaped JWT-SVID identity provider satisfying identity.Provider.
Package embedded implements the default, SPIFFE-shaped JWT-SVID identity provider satisfying identity.Provider.
identitytest
Package identitytest provides a reusable conformance suite for any identity.Provider implementation, so the blessed default (embedded) and a future alternate (SPIRE) are held to the identical security contract.
Package identitytest provides a reusable conformance suite for any identity.Provider implementation, so the blessed default (embedded) and a future alternate (SPIRE) are held to the identical security contract.
Package ipguard holds the SSRF private/reserved membership test shared by the egress proxy's policy guard and the composer transport guard.
Package ipguard holds the SSRF private/reserved membership test shared by the egress proxy's policy guard and the composer transport guard.
Package lifecycle implements workspace lifecycle automation: the Reaper loop finds RUNNING agent runs idle past their policy's AutoStopAfterSec threshold and stops them, emitting a "run.autostop" audit event for each.
Package lifecycle implements workspace lifecycle automation: the Reaper loop finds RUNNING agent runs idle past their policy's AutoStopAfterSec threshold and stops them, emitting a "run.autostop" audit event for each.
Package nodump keeps a process that holds credentials from writing them to disk in a core dump, or from having its memory read by another process of the same user (credential-storage design §2.8, CS-4).
Package nodump keeps a process that holds credentials from writing them to disk in a core dump, or from having its memory read by another process of the same user (credential-storage design §2.8, CS-4).
Package recording provides storage and HTTP serving of asciicast session recordings produced by wardyn-rec.
Package recording provides storage and HTTP serving of asciicast session recordings produced by wardyn-rec.
recordingtest
Package recordingtest provides a reusable conformance suite for any recording.Store implementation, holding a blessed default and any future alternate to the identical contract.
Package recordingtest provides a reusable conformance suite for any recording.Store implementation, holding a blessed default and any future alternate to the identical contract.
Package recordmode is the deterministic core of Wardyn's "Recording Mode": it OBSERVES what a fully-open (allow-all-egress, broad-grant) run actually used — purely from already-captured audit events — and SYNTHESIZES a tightened, least-privilege RunPolicySpec the operator can review and promote.
Package recordmode is the deterministic core of Wardyn's "Recording Mode": it OBSERVES what a fully-open (allow-all-egress, broad-grant) run actually used — purely from already-captured audit events — and SYNTHESIZES a tightened, least-privilege RunPolicySpec the operator can review and promote.
Package runner defines the target-agnostic sandbox lifecycle contract.
Package runner defines the target-agnostic sandbox lifecycle contract.
orchestrator
Package orchestrator is the build-tag-free runner.Runner the control plane talks to.
Package orchestrator is the build-tag-free runner.Runner the control plane talks to.
substrate
Package substrate defines the confinement-substrate sub-interface: the seam beneath runner.Runner that lets a non-OCI microVM VMM back a Confinement Class alongside the OCI/Docker substrate.
Package substrate defines the confinement-substrate sub-interface: the seam beneath runner.Runner that lets a non-OCI microVM VMM back a Confinement Class alongside the OCI/Docker substrate.
Package secretmask implements Wardyn's output-masking layer for PTY capture and asciicast streams: it replaces verbatim byte-identical occurrences of registered secret values with the literal placeholder "<secret-hidden>".
Package secretmask implements Wardyn's output-masking layer for PTY capture and asciicast streams: it replaces verbatim byte-identical occurrences of registered secret values with the literal placeholder "<secret-hidden>".
Package secretstore defines the at-rest secret storage contract.
Package secretstore defines the at-rest secret storage contract.
azurekv
Package azurekv is the Azure Key Vault Secrets external store (credential-storage design §2.3a.3): in store mode each credential's value lives in the organisation's Key Vault, and the Postgres row is a pointer to it.
Package azurekv is the Azure Key Vault Secrets external store (credential-storage design §2.3a.3): in store mode each credential's value lives in the organisation's Key Vault, and the Postgres row is a pointer to it.
kek
Package kek holds the key-encryption keys that wrap each stored credential's data key (DEK), and the shared envelope framing.
Package kek holds the key-encryption keys that wrap each stored credential's data key (DEK), and the shared envelope framing.
kek/kektest
Package kektest is the conformance suite every key-encryption key is held to (credential-storage design §2.2, §2.3): the local key, Vault Transit against the fake and against real Vault and OpenBao servers.
Package kektest is the conformance suite every key-encryption key is held to (credential-storage design §2.2, §2.3): the local key, Vault Transit against the fake and against real Vault and OpenBao servers.
pg
Package pg implements secretstore.Store over the Postgres `secrets` table, one envelope-encrypted row per credential (envelope v1): every Put mints a fresh 32-byte data key (DEK), seals the value under it with AES-256-GCM bound to the row's (owned_by, name), and stores the DEK wrapped by a key-encryption key (package kek).
Package pg implements secretstore.Store over the Postgres `secrets` table, one envelope-encrypted row per credential (envelope v1): every Put mints a fresh 32-byte data key (DEK), seals the value under it with AES-256-GCM bound to the row's (owned_by, name), and stores the DEK wrapped by a key-encryption key (package kek).
secretstoretest
Package secretstoretest provides a reusable conformance suite for any secretstore.Store implementation.
Package secretstoretest provides a reusable conformance suite for any secretstore.Store implementation.
vaultkv
Package vaultkv is Wardyn's Vault client and what it serves: the KV v2 external store (credential-storage design §2.3a.1), and the Transit KEK (transit.go, §2.3).
Package vaultkv is Wardyn's Vault client and what it serves: the KV v2 external store (credential-storage design §2.3a.1), and the Transit KEK (transit.go, §2.3).
Package setup provides host-environment detection for the first-run setup surface: resident coding-agent CLIs, and the OS/WSL posture the environment-step copy keys off.
Package setup provides host-environment detection for the first-run setup surface: resident coding-agent CLIs, and the OS/WSL posture the environment-step copy keys off.
Package sidecar holds the small brokered-PUT plumbing shared by Wardyn's in-sandbox result-uploader binaries: validate WARDYN_PROXY_URL/ WARDYN_RUN_ID, build the brokered result URL, and PUT a JSON body.
Package sidecar holds the small brokered-PUT plumbing shared by Wardyn's in-sandbox result-uploader binaries: validate WARDYN_PROXY_URL/ WARDYN_RUN_ID, build the brokered result URL, and PUT a JSON body.
Governance profiles and their subject assignments (migration 0052).
Governance profiles and their subject assignments (migration 0052).
Package subscription is the seam between the injection sink and a person's captured Claude subscription token: the sink resolves a subscription sentinel through a Provider, and the token lives only in proxy memory.
Package subscription is the seam between the injection sink and a person's captured Claude subscription token: the sink resolves a subscription sentinel through a Provider, and the token lives only in proxy memory.
Package testfloor lets a test mark itself part of a suite's skip floor: tests whose whole purpose is proving a real invariant holds, so a suite reporting green while all of them silently skipped would be a lie.
Package testfloor lets a test mark itself part of a suite's skip floor: tests whose whole purpose is proving a real invariant holds, so a suite reporting green while all of them silently skipped would be a lie.
Package testlive is the opt-in live-local harness: tests that reach the owner's real identity provider, Azure DevOps organisation and AWS account.
Package testlive is the opt-in live-local harness: tests that reach the owner's real identity provider, Azure DevOps organisation and AWS account.
Package testutil holds small, dependency-free helpers shared by Go tests across packages.
Package testutil holds small, dependency-free helpers shared by Go tests across packages.
Governance profiles (migration 0052): the wire + store types for an ASSIGNABLE ceiling and the row that binds one to a subject.
Governance profiles (migration 0052): the wire + store types for an ASSIGNABLE ceiling and the row that binds one to a subject.
Package version holds Wardyn's one shipped version string, kept out of cmd/* so the CLI, daemon startup log, and /healthz all report the same build — needed to diagnose CLI/server skew after a rolling upgrade.
Package version holds Wardyn's one shipped version string, kept out of cmd/* so the CLI, daemon startup log, and /healthz all report the same build — needed to diagnose CLI/server skew after a rolling upgrade.
Package workspacescan deterministically detects a workspace's dev conventions (languages, package managers, egress registries, devcontainer/Dockerfile presence, tools, git remotes) from what's actually in the tree, not an LLM guess.
Package workspacescan deterministically detects a workspace's dev conventions (languages, package managers, egress registries, devcontainer/Dockerfile presence, tools, git remotes) from what's actually in the tree, not an LLM guess.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL