@haven_ai/signer 0.8.0-alpha.0 → 0.8.1-alpha.0

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 CHANGED
@@ -381,7 +381,7 @@ The delegate key is read from `HAVEN_DELEGATE_KEY` or a `--credentials` file's
381
381
  `delegate_key` (with a permissive-file warning). It stays in this process, and
382
382
  is never transmitted.
383
383
 
384
- **The signer makes at most two kinds of network call, both reads.** Since
384
+ **The signer's network calls are all reads of a signing context.** Since
385
385
  [#1263](https://github.com/d-hinders/Haven-AI/issues/1263) the `{ payment_id }`
386
386
  form of `haven_sign` and `haven_sign_x402` performs an authenticated,
387
387
  read-only `GET /x402/:payment_id/sign-context` against Haven, so that agents
@@ -389,13 +389,16 @@ never have to relay multi-KB EIP-712 payloads through a model's context
389
389
  window. Since #3271, `haven_sign` (never `haven_sign_x402`) falls back to a
390
390
  second read — `GET /payments/:payment_id/sign-context` — only when that first
391
391
  fetch answers the backend's 409 `sign_context_unavailable`, i.e. this
392
- `payment_id` names a direct payment rather than an x402 intent. **Only the
393
- Bearer API key goes out on either read; the delegate key is never part of
394
- either request or response.** Since #2985 both reads are bounded: each aborts
392
+ `payment_id` names a direct payment rather than an x402 intent. Since
393
+ #3329/#3330, `haven_sign` given a `task_budget_id` or `sub_budget_id` reads
394
+ `GET /task-budgets/:id/sign-context` or `GET /sub-budgets/:id/sign-context`.
395
+ **Only the Bearer API key and the signer's `X-Haven-Client` version header go
396
+ out on any read; the delegate key is never part of a request or response.** Since #2985 the two payment reads are bounded (the budget reads use the same
397
+ 15 s bound): each payment read aborts
395
398
  after `SIGN_CONTEXT_TIMEOUT_MS` (15 s) and reports a `HavenSignContextError`
396
399
  naming the timeout and the `typed_data_b64` fallback, so a hung backend cannot
397
400
  hang the signer — and the agent — past the funding window. Every refusal on
398
- either fetch (timeout, unreachable host, a non-ok backend response, a
401
+ any of these fetches (timeout, unreachable host, a non-ok backend response, a
399
402
  malformed body) is structured the same way, not just prose — see
400
403
  [Sign-context refusal codes](#sign-context-refusal-codes) below.
401
404
  Nothing else in the package reaches the
package/dist/cli.cjs CHANGED
@@ -680,7 +680,7 @@ async function fetchTaskBudgetSignContext(identity, taskBudgetId, fetchImpl = fe
680
680
 
681
681
  // src/tools.ts
682
682
  var SIGNER_NAME = "@haven_ai/signer";
683
- var SIGNER_VERSION = "0.8.0-alpha.0";
683
+ var SIGNER_VERSION = "0.8.1-alpha.0";
684
684
  var UNSUPPORTED_ARGUMENT_MARKER = "HavenSignerUnsupportedArgument:";
685
685
  var USEROP_BINDING_MISMATCH = "USEROP_BINDING_MISMATCH";
686
686
  var HavenUserOpBindingRefusedError = class extends edge.HavenSigningError {