Repository navigation
chore(release): 0.4.0 - #89
Merged
blink-admin merged 2 commits intoSep 10, 2026
Merged
blink-admin merged 2 commits into
blink-admin merged 2 commits into
Conversation
blink-admin
approved these changes
Sep 10, 2026
blink-admin
deleted the
release-please--branches--main--components--esign-monorepo
branch
September 10, 2026 22:46
Contributor
Author
|
🤖 Created releases: 🌻 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 Merging this PR tags the version below, creates the GitHub Release with these notes, and publishes the four packages under
latest.0.4.0 (2026-09-10)
The production release of the backend: one library for hosts that mint in-process, one
service that runs from environment alone as a function or a container, and a runbook by
role. Migration notes: docs/upgrading.md; operations:
docs/operations/production.md.
⚠ Breaking changes
@blinkbitcoin/esign-serveris now@blinkbitcoin/esign-node(
packages/esign-node), platform-named likeesign-react/esign-react-native.No aliases: update every import, including the
/docusign,/expressand/knexsubpaths. (#83, 97e55a3)
examples/full-service-demois now
packages/esign-service(@blinkbitcoin/esign-service, published); the imageghcr.io/blinkbitcoin/esign-apiis nowghcr.io/blinkbitcoin/esign-service. (#83)createApp()is gone; the entry pointsare
createESignApp(env, deps)(Fetch) andstartServer(env)on@blinkbitcoin/esign-service/node. The container command isnode dist/node.js,migrations are
node dist/node.js migrate(wasdist/migrate.js).express,helmet,corsandexpress-rate-limitare no longer dependencies. (#86, 302ab25)ESIGN_ENV=productionreplacesNODE_ENV=productionas the production switch(GraphQL introspection off; demo DocuSign hosts and the mock provider refused unless
ESIGN_ALLOW_DEMO=true; a client's own prefill refused unlessESIGN_ALLOW_CLIENT_PREFILL=true). The image setsESIGN_ENV=productionitself; anon-container deployment that relied on
NODE_ENVmust set it. (#84, #86)DOCUSIGN_HMAC_KEYandDOCUSIGN_TEMPLATE_IDare required only when envelope orchestration is on; a mintrequires
DOCUSIGN_WEBFORM_IDandDOCUSIGN_RETURN_URLat provider selection;validateSecurityConfig()isvalidateConfig(env, { runtime }). (#84, #86)Features
ESIGN_ENV,ESIGN_ALLOW_DEMO), hosted-form boot checks(
HOSTED_FORM_SETTINGS, incl. the return URL that used to fail silently), private keyfrom
DOCUSIGN_PRIVATE_KEY_BASE64/DOCUSIGN_PRIVATE_KEY_FILE,hostedFormProviderFromEnv, and two presets that serve the mint, the return-URLbridge and
/health:createHostedFormRouter(Express) andcreateHostedFormApp(Fetch), with a
prefillhook so the host computes locked terms from its own data;a hook rejects with
Errors.validationError→ 400. (#84, e621645)capability by environment: the mint is always on,
DATABASE_URLadds/graphql,POST /webhook/esignand the Knex store. Entries for Node (the image, in-memory ratelimits,
TRUST_PROXY), Vercel and Cloudflare Workers (mint only). Sessionverification via
SESSION_JWKS_URLorSESSION_HS256_SECRET(JWT_SECRETstays analias). Locked terms via a
TERMS_URLcallback (TERMS_SHARED_SECRET,TERMS_TIMEOUT_MS; plaintext refused in production unless private orTERMS_ALLOW_INSECURE=true). Deploy templates for Compose, Kubernetes, Vercel,Cloudflare and NixOS ship in the package;
/healthreports the capabilities thatare on. (#86, 302ab25)
Documentation
failure modes), a "who are you" router and a backend-options table in the README, and
the architecture docs and diagrams redrawn for the two tiers. (#87, 0ecf631)
This PR was generated with Release Please. See documentation.