Bind each customer to a Verae userId for hop tracing
Some checks are pending
offline / test (push) Waiting to run

Signup registers/binds a Verae central user and stores veraeUserId. Public access stays the zappier API key. Chain JWTs stay server-side behind tokenRef. Authz, billing, and jobs.watch carry veraeUserId.
This commit is contained in:
George Lambert 2026-09-11 16:18:06 -04:00
parent 1b199ca4d4
commit 345aeeead9
79 changed files with 703 additions and 95 deletions

View file

@ -0,0 +1,46 @@
# `zappier/verae-bind`
**Package:** `zappier`
**Source:** `packages/zappier/src/verae-bind.ts`
**Lines:** 77
## What this module is
Implementation module in `zappier`. The tables below are extracted from the source (signatures + JSDoc).
## Exports
`normalizeVeraeUsername`, `stableVeraeUserId`, `VeraeBind`, `bindVeraeUser`
## Types / interfaces / classes
| Kind | Name |
|------|------|
| type | `VeraeBind` |
## Functions
| Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) |
|------|------------|---------------------|---------|-----------------------------|
| `normalizeVeraeUsername` | `username: string` | — | `unknown` | see Call graph |
| `stableVeraeUserId` | `username: string` | — | `unknown` | see Call graph |
| `mockBind` | `email: string` | — | `unknown` | see Call graph |
| `bindVeraeUser` | `email: string` | — | `unknown` | see Call graph |
| `login` | `username: string, pass: string` | — | `unknown` | see Call graph |
## What it imports / requires
- `crypto`
## Call graph (identifiers invoked)
`normalizeVeraeUsername`, `trim`, `toLowerCase`, `stableVeraeUserId`, `createHash`, `update`, `digest`, `slice`, `mockBind`, `bindVeraeUser`, `replace`, `randomBytes`, `toString`, `async`, `fetch`, `stringify`, `json`, `login`
Each identifier is a call site in this file. Follow the import list to see the defining module; open that modules MD for parameter and return types.
## Return values (how to read this)
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
- Pricing functions return integer **cents** on `Quote.totalCents`.