@rjromeoent/ein-supabase 0.1.4 → 0.1.6

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
@@ -31,9 +31,21 @@ From the Event Intelligence Network repo root:
31
31
  ```sh
32
32
  npm install
33
33
  npm run generate:supabase-types
34
+ npm run test:functions
35
+ npm run test:db:rad
34
36
  npm run build:packages
37
+ npm run verify:ein-supabase
35
38
  ```
36
39
 
40
+ `test:db:rad` is an optional integration test suite. It requires
41
+ `DATABASE_URL` to point at a disposable or remote Supabase Postgres database
42
+ and each SQL test runs inside a transaction that rolls back its fixtures. It
43
+ proves the RAD Booking offer-context consumer RPC updates both the read model
44
+ and event consumer offset against real database constraints, and it validates
45
+ RAD decision integrity rules such as append-only decision logs and
46
+ offer-created/link consistency. It also verifies app-scoped RAD RLS blocks
47
+ cross-organization decision-log reads under the `authenticated` role.
48
+
37
49
  Or from this package directory:
38
50
 
39
51
  ```sh
@@ -54,11 +66,17 @@ available to the publishing user, types are regenerated, and the package build
54
66
  passes:
55
67
 
56
68
  ```sh
57
- npm run build:packages
69
+ npm run verify:ein-supabase
58
70
  npm run pack:ein-supabase
59
71
  npm run publish:ein-supabase
60
72
  ```
61
73
 
74
+ `verify:ein-supabase` regenerates Supabase types, fails if the generated
75
+ database contract is not committed, runs Deno edge-function tests, builds the
76
+ package, and runs an npm pack dry-run. The rollbacked DB integration test is
77
+ kept as an explicit script because it needs a live Postgres connection.
78
+ Publishing should not happen from unverified or locally drifted schema types.
79
+
62
80
  The package is configured as a public scoped package. That is intentional for
63
81
  Lovable apps: app deploys can install it without an npm auth token. Do not put
64
82
  secrets, service-role keys, database passwords, or private environment values in