@teamscala/service-boot 0.23.420 → 0.23.421
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/package.json
CHANGED
|
@@ -8,25 +8,17 @@
|
|
|
8
8
|
* (getOrpcClient().fn.publicAgreement.*). The unguessable agreement id plus an
|
|
9
9
|
* email that matches one of the agreement's parties IS the gate (no password).
|
|
10
10
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
11
|
+
* Off-the-shelf path (building-applications): typed ORPC procedure, not a
|
|
12
|
+
* hand-written Hono handler; writes go through context.prisma inside the
|
|
13
|
+
* handler (orpc-is-the-only-api) so the audit trigger sees the ORPC caller.
|
|
14
|
+
* Multi-party model: signature_data holds a parties roster (JSON); each party
|
|
15
|
+
* is gated by its own email and the agreement completes only when every party
|
|
16
|
+
* has signed; single-signer falls back to signer_email/signer_name.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
* agreement falls back to the original signer_email/signer_name columns.
|
|
23
|
-
*
|
|
24
|
-
* This module holds the three procedures (verify/sign/verifyDocument). The
|
|
25
|
-
* supporting machinery lives as siblings: agreement-signing-evidence.ts
|
|
26
|
-
* (origin/IP extraction, tamper-evident hash, evidence parser),
|
|
27
|
-
* agreement-certificate.ts (Certificate of Completion), and
|
|
28
|
-
* agreement-sign-side-effects.ts (invoice, demo-reset, CRM connect) — split
|
|
29
|
-
* when the parent held them all at 853 lines.
|
|
18
|
+
* This module holds the three procedures (verify/sign/verifyDocument); the
|
|
19
|
+
* supporting machinery lives as siblings (agreement-signing-evidence,
|
|
20
|
+
* agreement-certificate, agreement-sign-side-effects) — split when the parent
|
|
21
|
+
* held them all at 853 lines.
|
|
30
22
|
*/
|
|
31
23
|
|
|
32
24
|
import { os } from "@orpc/server";
|
package/src/pg-boss-mount.ts
CHANGED
|
@@ -140,9 +140,15 @@ export async function mountPgBoss(
|
|
|
140
140
|
const boss = new PgBoss({
|
|
141
141
|
connectionString: pgSslCompatUrl(ctx.databaseUrl),
|
|
142
142
|
application_name: `pgboss:${ctx.serviceSlug}`,
|
|
143
|
-
//
|
|
144
|
-
//
|
|
145
|
-
|
|
143
|
+
// ONE connection, not three: pg-boss is a sibling pool that sits OUTSIDE
|
|
144
|
+
// the Prisma budget, and with ~46 declared holders the fleet saturated
|
|
145
|
+
// at 304/300 (2026-08-27) partly on 3-connection pg-boss pools that had
|
|
146
|
+
// no idle timeout. At max:1 jobs serialize into a queue — the sanctioned
|
|
147
|
+
// background degradation (`a-per-consumer-pool-max-is-not-a-bound-on-the-server`:
|
|
148
|
+
// background work degrades to a queue, interactive work degrades to an
|
|
149
|
+
// outage). The sibling total is declared in
|
|
150
|
+
// config/db-pool-sizing.serviceSiblingConnections.
|
|
151
|
+
max: 1,
|
|
146
152
|
// Generous connection-acquisition budget for the cross-internet link so
|
|
147
153
|
// a slow TLS handshake under sustained load doesn't terminate the conn.
|
|
148
154
|
connectionTimeoutMillis: 30_000,
|