Clean prepaid SoT, identity mailbox, public access planes, leaf policy, fleet spawn
Some checks are pending
offline / test (push) Waiting to run

Persist account-balance books; edge caches prepaid from books. Add zappier-identity, verae-nats-accounts, verae-jobs-events, verae-access-staff, zapier-decisions. Edge binds loopback; lan-134 stays off; HTTP services prefer local spawn.
This commit is contained in:
George Lambert 2026-09-11 17:15:16 -04:00
parent 345aeeead9
commit ddf772454b
153 changed files with 2236 additions and 116 deletions

View file

@ -2,7 +2,7 @@
**Package:** `zappier-account-balance`
**Source:** `packages/zappier-account-balance/src/books.js`
**Lines:** 100
**Lines:** 120
## What this module is
@ -36,6 +36,8 @@ Implementation module in `zappier-account-balance`. The tables below are extract
| `recordUsage` | `entry` |
| `recordPayment` | `entry` |
| `statement` | `customerId` |
| `dump` | `(none)` |
| `load` | `raw` |
## What it imports / requires
@ -43,7 +45,7 @@ _No imports detected._
## Call graph (identifiers invoked)
`constructor`, `remember`, `prepaidCents`, `adjust`, `trunc`, `now`, `toString`, `random`, `slice`, `toISOString`, `unshift`, `recordUsage`, `recordPayment`, `statement`, `filter`, `match`, `handle`, `endsWith`
`constructor`, `remember`, `prepaidCents`, `adjust`, `trunc`, `now`, `toString`, `random`, `slice`, `toISOString`, `unshift`, `recordUsage`, `recordPayment`, `statement`, `filter`, `match`, `dump`, `load`, `isArray`, `handle`, `endsWith`
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.

View file

@ -0,0 +1,50 @@
# `zappier-account-balance/persist`
**Package:** `zappier-account-balance`
**Source:** `packages/zappier-account-balance/src/persist.js`
**Lines:** 29
## What this module is
Implementation module in `zappier-account-balance`. The tables below are extracted from the source (signatures + JSDoc).
## Exports
`booksPath`, `loadInto`, `saveFrom`
## Types / interfaces / classes
_None extracted._
## Functions
| Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) |
|------|------------|---------------------|---------|-----------------------------|
| `booksPath` | `(none)` | — | `unknown` | see Call graph |
| `loadInto` | `books` | — | `unknown` | see Call graph |
| `saveFrom` | `books` | — | `unknown` | see Call graph |
## Methods (class / object)
| Name | Parameters |
|------|------------|
| `return` | `process.env.BOOKS_PATH ||
path.join(process.env.FLEET_STATE_DIR || process.cwd(` |
## What it imports / requires
- `node:fs`
- `node:path`
## Call graph (identifiers invoked)
`booksPath`, `join`, `cwd`, `loadInto`, `existsSync`, `load`, `parse`, `readFileSync`, `saveFrom`, `mkdirSync`, `dirname`, `writeFileSync`, `stringify`, `dump`, `renameSync`
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`.

View file

@ -2,7 +2,7 @@
**Package:** `zappier-account-balance`
**Source:** `packages/zappier-account-balance/src/server.js`
**Lines:** 93
**Lines:** 101
## What this module is
@ -20,6 +20,7 @@ _None extracted._
| Name | Parameters | Param types (JSDoc) | Returns | Calls (same file / helpers) |
|------|------------|---------------------|---------|-----------------------------|
| `apply` | `subject, payload` | — | `unknown` | see Call graph |
| `startNats` | `(none)` | — | `unknown` | see Call graph |
| `readBody` | `req` | — | `unknown` | see Call graph |
| `reply` | `sub, fn` | — | `unknown` | see Call graph |
@ -29,6 +30,7 @@ _None extracted._
| Name | Parameters |
|------|------------|
| `saveFrom` | `books` |
| `reply` | `nc.subscribe(SUBJECTS.STATEMENT_GET, { queue: SUBJECTS.QUEUE }` |
| `reply` | `nc.subscribe(SUBJECTS.BALANCE_GET, { queue: SUBJECTS.QUEUE }` |
| `reply` | `nc.subscribe(SUBJECTS.BALANCE_ADJUST, { queue: SUBJECTS.QUEUE }` |
@ -38,10 +40,11 @@ _None extracted._
- `node:http`
- `./books.js`
- `./subjects.js`
- `./persist.js`
## Call graph (identifiers invoked)
`startNats`, `import`, `connect`, `split`, `async`, `parse`, `decode`, `fn`, `respond`, `encode`, `stringify`, `reply`, `subscribe`, `handle`, `write`, `readBody`, `on`, `push`, `resolve`, `concat`, `toString`, `createServer`, `writeHead`, `end`, `json`, `match`, `statement`, `adjust`, `listen`
`loadInto`, `apply`, `handle`, `saveFrom`, `startNats`, `import`, `connect`, `split`, `async`, `parse`, `decode`, `fn`, `respond`, `encode`, `stringify`, `reply`, `subscribe`, `write`, `readBody`, `on`, `push`, `resolve`, `concat`, `toString`, `createServer`, `writeHead`, `end`, `json`, `match`, `statement`, `listen`
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.