Pulse 1.0.0-beta.1 betaExact, immutable release documentation.Browse latest
Documentation platform maintainersactiveReviewed 2026-08-01Review by 2027-01-12

Environment-variable reference#

Pulse canonical handlers do not receive ambient process environment access. Handler authority comes only through the documented ctx capabilities and project/provider bindings. The variables here configure release tooling, compatibility helpers, or repository tests.

Do not use these variables as a substitute for ctx.config, ctx.secret, or provider bindings. Secret-bearing compatibility URIs must be handled as credentials and must not be copied into diagnostics.

Index#

VariableScopeStability
PULSE_FASTLY_BINSupported tooling configurationSupported Beta tooling override.
PULSE_VICEROY_BINSupported tooling configurationSupported Beta tooling override.
PULSE_PROFILESupported tooling configurationSupported project-selection input.
PULSE_RELEASE_REFContributor and test-only configurationRepository release-workflow internal; not an application setting.
PULSE_RELEASE_SHAContributor and test-only configurationRepository release-workflow internal; not an application setting.
PULSEWASM_ARTIFACTS_DIRContributor and test-only configurationContributor/test-only.
PULSEWASM_TEST_TMP_ROOTContributor and test-only configurationContributor/test-only; may change with test-runner updates.
PULSE_FASTLY_REALITY_EVIDENCEContributor and test-only configurationContributor/release tooling override.
PULSE_FOUR_MODE_EVIDENCEContributor and test-only configurationContributor/release tooling override.
PULSE_SOURCE_REVISIONContributor and test-only configurationRepository release-evidence internal; not an application setting.
PULSE_SOURCE_IDENTITY_KINDContributor and test-only configurationRepository release-evidence internal; not an application setting.
PULSE_SOURCE_DIGEST_SHA256Contributor and test-only configurationRepository release-evidence internal; not an application setting.
PULSE_SOURCE_FILE_COUNTContributor and test-only configurationRepository release-evidence internal; not an application setting.
PULSE_FAKE_FASTLY_CAPTUREContributor and test-only configurationFixture-only; not a public tooling setting.
PULSE_FAKE_VICEROY_CAPTUREContributor and test-only configurationFixture-only; not a public tooling setting.
PULSE_ES256_REPRODUCTION_ROOTContributor and test-only configurationContributor/test-only proof reproduction control.
PULSE_ES256_REPRODUCTION_ARCHIVEContributor and test-only configurationContributor/test-only proof reproduction control.
PULSE_RUST_CARGOContributor and test-only configurationContributor/test-only proof reproduction control.
PULSE_RUSTCContributor and test-only configurationContributor/test-only proof reproduction control.

Supported tooling configuration#

Documented environment inputs accepted by release tooling. These configure tools, not handler authority.

PULSE_FASTLY_BIN#

Selects the Fastly CLI binary used for external target inspection and local Compute execution.

PropertyContract
ValueAbsolute or relative executable path
DefaultNo explicit path; discover fastly on PATH.
PrecedenceAn explicit binary option wins, then PULSE_FASTLY_BIN, then PATH discovery.
ConsumerFastly CLI inspection and the external Compute reality gate.
Secret safetyNot a secret. Do not point it at an untrusted executable.
StabilitySupported Beta tooling override.
Source ownerspackages/provider-fastly/src/testing/fastly-cli.js

PULSE_VICEROY_BIN#

Selects an inspected Viceroy executable for direct local Compute execution when no explicit Fastly CLI launcher is selected.

PropertyContract
ValueAbsolute or relative executable path
DefaultUnset; discover the Fastly CLI first, then Viceroy, on PATH.
PrecedenceAn explicit launcher choice wins. Without one, an explicit Fastly CLI path selects CLI ownership; otherwise an explicit viceroyBinary or PULSE_VICEROY_BIN selects direct Viceroy execution.
ConsumerExternal Fastly Compute reality gates, either as the direct local engine or as an explicit Fastly CLI engine override.
Secret safetyNot a secret. Do not point it at an untrusted executable.
StabilitySupported Beta tooling override.
Source ownerspackages/provider-fastly/src/testing/fastly-cli.js

PULSE_PROFILE#

Selects the flat Pulse project profile when no explicit --profile option is supplied.

PropertyContract
ValuePulse profile name
DefaultUnset; use pulse.defaultProfile when declared.
Precedence--profile wins, then PULSE_PROFILE, then pulse.defaultProfile.
ConsumerProject-aware Pulse CLI commands using the .pulse/config.ts convention.
Secret safetyNot a secret. It selects a committed profile and never carries resolved binding values.
StabilitySupported project-selection input.
Source ownerswasm/packages/cli/src/project-config.js

Contributor and test-only configuration#

Repository harness controls. They are intentionally outside the application compatibility contract.

PULSE_RELEASE_REF#

Carries the sealed candidate release ref into the protected publish process for an equality check against GitHub's native identity.

PropertyContract
ValueFull Git ref (refs/tags/v<version>)
DefaultUnset; the protected npm workflow derives it from the sealed candidate.
PrecedenceWhen set by the workflow, it must exactly equal GitHub's native release-tag ref.
ConsumerProtected npm publication identity binding.
Secret safetyNot a secret. It is validated rather than trusted as independent authority.
StabilityRepository release-workflow internal; not an application setting.
Source ownersscripts/release-publication.cjs

PULSE_RELEASE_SHA#

Carries the sealed candidate source commit into the protected publish process for an equality check against GitHub's native identity.

PropertyContract
ValueFull lowercase 40-character Git commit SHA
DefaultUnset; the protected npm workflow derives it from the sealed candidate.
PrecedenceWhen set by the workflow, it must exactly equal GitHub's native release-tag commit.
ConsumerProtected npm publication identity binding.
Secret safetyNot a secret. It is validated rather than trusted as independent authority.
StabilityRepository release-workflow internal; not an application setting.
Source ownersscripts/release-publication.cjs

PULSEWASM_ARTIFACTS_DIR#

Redirects generated build and test artifacts away from the default repository directory.

PropertyContract
ValueDirectory path
Defaultwasm/artifacts.
PrecedenceOverrides the repository artifact root for scripts that opt into it.
ConsumerBuild and test isolation.
Secret safetyNot a secret. Use an isolated writable directory.
StabilityContributor/test-only.
Source ownerswasm/packages/build-support/src/artifacts-dir.js, wasm/scripts/build.cjs, wasm/scripts/run-wasm-tests.cjs

PULSEWASM_TEST_TMP_ROOT#

Pins test workspaces beneath a caller-managed temporary root.

PropertyContract
ValueDirectory path
DefaultA suite-specific temporary directory.
PrecedenceWhen set, tests create their working directories beneath this root.
ConsumerDocumentation, CLI, provider, package-release, and clean-machine acceptance tests.
Secret safetyNot a secret. The directory may contain generated projects and test data.
StabilityContributor/test-only; may change with test-runner updates.
Source ownerswasm/test/docs/assert-executable-documentation.cjs, wasm/test/release/assert-release-packages.cjs

PULSE_FASTLY_REALITY_EVIDENCE#

Selects the output path for the real Fastly host evidence report.

PropertyContract
ValueFile path
DefaultUnset; the reality gate prints its normal test result without retaining a proof file.
PrecedenceWhen set, the real-host gate writes its redacted machine-readable proof to this path.
ConsumerFastly CLI-managed or direct-Viceroy local Compute reality gate.
Secret safetyNot a secret. The proof intentionally excludes secret values and authorization plaintext.
StabilityContributor/release tooling override.
Source ownerswasm/test/provider/assert-fastly-compute-reality.cjs

PULSE_FOUR_MODE_EVIDENCE#

Selects the output path for the four-mode conformance evidence report.

PropertyContract
ValueFile path
Defaultwasm/.test-results/four-mode-conformance.json.
PrecedenceWhen set, the four-mode conformance suite writes its revision-bound proof to this path.
ConsumerNode/Fastly Native/JavaScript conformance evidence.
Secret safetyNot a secret. The proof records target identities, support hashes, and test outcomes without application secrets.
StabilityContributor/release tooling override.
Source ownerswasm/test/contracts/assert-four-mode-conformance.cjs

PULSE_SOURCE_REVISION#

Propagates one source identity through an aggregate release replay so independently written evidence cannot drift.

PropertyContract
Value40-character lowercase source identity
DefaultCurrent Git commit, or a deterministic archive-tree identity outside a Git checkout.
PrecedenceWhen set by the release runner, every child evidence shard validates and reuses this exact identity.
ConsumerRelease-seal task, four-mode, and offline deployment-candidate evidence binding.
Secret safetyNot a secret. It identifies source but grants no publication or deployment authority.
StabilityRepository release-evidence internal; not an application setting.
Source ownersscripts/source-identity.cjs

PULSE_SOURCE_IDENTITY_KIND#

Labels the provenance class of the propagated source identity.

PropertyContract
ValueSource identity classification
Defaultgit-commit in a checkout or archive-tree-sha256-160 for an extracted source tree.
PrecedenceMeaningful only with PULSE_SOURCE_REVISION; the release runner supplies both together.
ConsumerRelease-seal reports, test reports, four-mode evidence, and offline candidate manifests.
Secret safetyNot a secret. It prevents an archive digest from being represented as a Git commit.
StabilityRepository release-evidence internal; not an application setting.
Source ownersscripts/source-identity.cjs

PULSE_SOURCE_DIGEST_SHA256#

Preserves the full archive-tree digest behind the compatibility-width source revision field.

PropertyContract
Value64-character lowercase SHA-256 digest
DefaultUnset for Git commits; the full archive-tree digest outside a Git checkout.
PrecedenceThe release runner supplies it with an archive-tree source identity.
ConsumerRelease-seal reports, test reports, four-mode evidence, and offline candidate manifests.
Secret safetyNot a secret. It is integrity metadata and carries no release authority.
StabilityRepository release-evidence internal; not an application setting.
Source ownersscripts/source-identity.cjs

PULSE_SOURCE_FILE_COUNT#

Carries the source-file count associated with an archive-tree digest for audit clarity.

PropertyContract
ValueNon-negative integer
DefaultUnset for Git commits; the deterministic archive-tree inventory count otherwise.
PrecedenceThe release runner supplies it with an archive-tree source identity.
ConsumerRelease-seal reports, test reports, four-mode evidence, and offline candidate manifests.
Secret safetyNot a secret. It records only the number of source files in the identity inventory.
StabilityRepository release-evidence internal; not an application setting.
Source ownersscripts/source-identity.cjs

PULSE_FAKE_FASTLY_CAPTURE#

Tells the fake Fastly CLI where to write its captured invocation.

PropertyContract
ValueFile path
DefaultUnset.
PrecedenceUsed only by the fake Fastly CLI fixture when present.
ConsumerFastly CLI surface test fixture.
Secret safetyNot a secret. The file records test arguments and paths.
StabilityFixture-only; not a public tooling setting.
Source ownerswasm/test/provider/assert-fastly-cli-gate-surface.cjs

PULSE_FAKE_VICEROY_CAPTURE#

Tells the fake Viceroy launcher where to write its captured invocation.

PropertyContract
ValueFile path
DefaultUnset.
PrecedenceUsed only by the fake direct-Viceroy fixture when present.
ConsumerFastly local-engine surface test fixture.
Secret safetyNot a secret. The file records test arguments and paths.
StabilityFixture-only; not a public tooling setting.
Source ownerswasm/test/provider/assert-fastly-cli-gate-surface.cjs

PULSE_ES256_REPRODUCTION_ROOT#

Adds an independent source-identical raw guest artifact and Rust metadata comparison to G5.

PropertyContract
ValueDirectory path
DefaultUnset; the G5 seal still performs its required local maintainer reconstruction.
PrecedenceThe --reproduction-root G5 option wins, then PULSE_ES256_REPRODUCTION_ROOT.
ConsumerOptional independent clean-container output comparison in the ES256 G5 seal.
Secret safetyNot a secret. The directory must contain only the public verifier source and build output.
StabilityContributor/test-only proof reproduction control.
Source ownerswasm/test/jwt/assert-jwt-es256-final-seal.cjs

PULSE_ES256_REPRODUCTION_ARCHIVE#

Records the byte size and hash of the independently supplied ES256 reproduction archive.

PropertyContract
ValueFile path
DefaultUnset; no external archive identity is recorded.
PrecedenceThe --reproduction-archive G5 option wins, then PULSE_ES256_REPRODUCTION_ARCHIVE.
ConsumerOptional independent clean-container archive identity in the ES256 G5 seal.
Secret safetyNot a secret. The archive must contain only the public verifier source and build output.
StabilityContributor/test-only proof reproduction control.
Source ownerswasm/test/jwt/assert-jwt-es256-final-seal.cjs

PULSE_RUST_CARGO#

Selects the Cargo executable used to reproduce the sealed first-party Rust guest proof.

PropertyContract
ValueAbsolute or relative executable path
DefaultNo explicit path; discover cargo on PATH.
PrecedencePULSE_RUST_CARGO overrides PATH discovery in the guest-link proof harnesses.
ConsumerPhase A guest-link Rust fixture compilation and toolchain recording.
Secret safetyNot a secret. Do not point it at an untrusted executable.
StabilityContributor/test-only proof reproduction control.
Source ownerswasm/test/guest-link/assert-scalar-link-control.cjs, wasm/test/guest-link/assert-memory-matrix.cjs, wasm/test/guest-link/assert-final-artifact-reality.cjs

PULSE_RUSTC#

Selects the Rust compiler used to reproduce the sealed first-party Rust guest proof.

PropertyContract
ValueAbsolute or relative executable path
DefaultNo explicit path; discover rustc on PATH.
PrecedencePULSE_RUSTC overrides PATH discovery in the guest-link proof harnesses.
ConsumerPhase A guest-link Rust fixture compilation and toolchain recording.
Secret safetyNot a secret. Do not point it at an untrusted executable.
StabilityContributor/test-only proof reproduction control.
Source ownerswasm/test/guest-link/assert-scalar-link-control.cjs, wasm/test/guest-link/assert-memory-matrix.cjs, wasm/test/guest-link/assert-final-artifact-reality.cjs

Standard process variables#

Pulse also observes normal operating-system inputs such as PATH while locating external tools. Standard process variables are not renamed as Pulse configuration and are outside this catalog.

Browse other documentation