@powerhousedao/switchboard 6.2.2-dev.5 → 6.2.2-dev.50

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/CHANGELOG.md CHANGED
@@ -1,3 +1,294 @@
1
+ ## 6.2.2-dev.50 (2026-08-18)
2
+
3
+ ### 🚀 Features
4
+
5
+ - **switchboard:** read the group and condition enforcement flags ([e3d72b0a8](https://github.com/powerhouse-inc/powerhouse/commit/e3d72b0a8))
6
+
7
+ ### 🩹 Fixes
8
+
9
+ - **ci:** install chromium from the package that owns playwright ([653349ee0](https://github.com/powerhouse-inc/powerhouse/commit/653349ee0))
10
+ - **connect:** stage the CSP rewrite instead of sed -i ([ab5cd1d8f](https://github.com/powerhouse-inc/powerhouse/commit/ab5cd1d8f))
11
+
12
+ ### ❤️ Thank You
13
+
14
+ - Benjamin Jordan
15
+ - Claude Opus 5 (1M context)
16
+
17
+ ## 6.2.2-dev.49 (2026-08-17)
18
+
19
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
20
+
21
+ ## 6.2.2-dev.48 (2026-08-15)
22
+
23
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
24
+
25
+ ## 6.2.2-dev.47 (2026-08-14)
26
+
27
+ ### 🩹 Fixes
28
+
29
+ - **connect:** sync CSP registry origin to runtime packageRegistryUrl ([418652419](https://github.com/powerhouse-inc/powerhouse/commit/418652419))
30
+
31
+ ### ❤️ Thank You
32
+
33
+ - Frank Pfeift
34
+
35
+ ## 6.2.2-dev.46 (2026-08-14)
36
+
37
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
38
+
39
+ ## 6.2.2-dev.45 (2026-08-13)
40
+
41
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
42
+
43
+ ## 6.2.2-dev.44 (2026-08-12)
44
+
45
+ ### 🚀 Features
46
+
47
+ - **reactor-api,codegen:** register upgrade manifests on the switchboard ([85383aa0f](https://github.com/powerhouse-inc/powerhouse/commit/85383aa0f))
48
+ - **reactor-group:** ship the PHGroup document model as @powerhousedao/reactor-group ([d5a323016](https://github.com/powerhouse-inc/powerhouse/commit/d5a323016))
49
+
50
+ ### 🩹 Fixes
51
+
52
+ - **shared:** harden the condition evaluator per review ([eea3fb475](https://github.com/powerhouse-inc/powerhouse/commit/eea3fb475))
53
+
54
+ ### ❤️ Thank You
55
+
56
+ - Benjamin Jordan
57
+ - Claude Fable 5
58
+
59
+ ## 6.2.2-dev.43 (2026-08-11)
60
+
61
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
62
+
63
+ ## 6.2.2-dev.42 (2026-08-10)
64
+
65
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
66
+
67
+ ## 6.2.2-dev.41 (2026-08-09)
68
+
69
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
70
+
71
+ ## 6.2.2-dev.40 (2026-08-08)
72
+
73
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
74
+
75
+ ## 6.2.2-dev.39 (2026-08-07)
76
+
77
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
78
+
79
+ ## 6.2.2-dev.38 (2026-08-06)
80
+
81
+ ### 🚀 Features
82
+
83
+ - added recipe e2e tests to the suite ([88cd1a55c](https://github.com/powerhouse-inc/powerhouse/commit/88cd1a55c))
84
+ - auth phase 4 ([28aa9ad6a](https://github.com/powerhouse-inc/powerhouse/commit/28aa9ad6a))
85
+
86
+ ### 🩹 Fixes
87
+
88
+ - stage llm files from pre-commit hook ([0af2ab705](https://github.com/powerhouse-inc/powerhouse/commit/0af2ab705))
89
+ - **reactor:** point preflight:auth at a real store ([c1315a9f9](https://github.com/powerhouse-inc/powerhouse/commit/c1315a9f9))
90
+ - **reactor:** filter initialState and keep auth in a scoped subscription read ([77fee70b4](https://github.com/powerhouse-inc/powerhouse/commit/77fee70b4))
91
+ - **reactor:** degrade the poll query against a remote on the older schema ([0c3aefe65](https://github.com/powerhouse-inc/powerhouse/commit/0c3aefe65))
92
+ - **shared:** stop a state snapshot from installing or replacing a policy ([f947e562e](https://github.com/powerhouse-inc/powerhouse/commit/f947e562e))
93
+ - **shared:** make auth-administration retention a reachability rule ([3db42daac](https://github.com/powerhouse-inc/powerhouse/commit/3db42daac))
94
+
95
+ ### ❤️ Thank You
96
+
97
+ - Benjamin Jordan
98
+ - Claude Fable 5
99
+
100
+ ## 6.2.2-dev.37 (2026-08-05)
101
+
102
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
103
+
104
+ ## 6.2.2-dev.36 (2026-08-04)
105
+
106
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
107
+
108
+ ## 6.2.2-dev.35 (2026-08-03)
109
+
110
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
111
+
112
+ ## 6.2.2-dev.34 (2026-08-02)
113
+
114
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
115
+
116
+ ## 6.2.2-dev.33 (2026-08-01)
117
+
118
+ ### 🩹 Fixes
119
+
120
+ - **reactor:** fixing a few defects with document scope reshuffle specifics ([7546b9ff2](https://github.com/powerhouse-inc/powerhouse/commit/7546b9ff2))
121
+
122
+ ### ❤️ Thank You
123
+
124
+ - Benjamin Jordan
125
+
126
+ ## 6.2.2-dev.32 (2026-07-31)
127
+
128
+ ### 🚀 Features
129
+
130
+ - **reactor:** feature flag guards and spec updates to make plan for guarded reshuffle edge cases ([20b0fd6be](https://github.com/powerhouse-inc/powerhouse/commit/20b0fd6be))
131
+
132
+ ### 🩹 Fixes
133
+
134
+ - **reactor:** fix convergence in the case we deny an operation that has a skip ([21cbb3ecb](https://github.com/powerhouse-inc/powerhouse/commit/21cbb3ecb))
135
+ - auth-scope spec updates, assert ordered streams, and fix some busted default protocol versions ([97c5a37b5](https://github.com/powerhouse-inc/powerhouse/commit/97c5a37b5))
136
+
137
+ ### ❤️ Thank You
138
+
139
+ - Benjamin Jordan
140
+
141
+ ## 6.2.2-dev.31 (2026-07-31)
142
+
143
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
144
+
145
+ ## 6.2.2-dev.30 (2026-07-31)
146
+
147
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
148
+
149
+ ## 6.2.2-dev.29 (2026-07-31)
150
+
151
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
152
+
153
+ ## 6.2.2-dev.28 (2026-07-30)
154
+
155
+ ### 🚀 Features
156
+
157
+ - **reactor-browser:** add IReactorBrowserClient and a light GraphQL client ([#2893](https://github.com/powerhouse-inc/powerhouse/pull/2893))
158
+ - **reactor:** plugging in the first decision model ([27e9b2772](https://github.com/powerhouse-inc/powerhouse/commit/27e9b2772))
159
+
160
+ ### ❤️ Thank You
161
+
162
+ - Benjamin Jordan
163
+ - Guillermo Puente Sandoval @gpuente
164
+
165
+ ## 6.2.2-dev.27 (2026-07-30)
166
+
167
+ ### 🩹 Fixes
168
+
169
+ - **connect:** pin @privy-io/react-auth to 3.35.0 ([909352ce3](https://github.com/powerhouse-inc/powerhouse/commit/909352ce3))
170
+
171
+ ### ❤️ Thank You
172
+
173
+ - acaldas
174
+
175
+ ## 6.2.2-dev.26 (2026-07-30)
176
+
177
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
178
+
179
+ ## 6.2.2-dev.25 (2026-07-29)
180
+
181
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
182
+
183
+ ## 6.2.2-dev.24 (2026-07-29)
184
+
185
+ ### 🩹 Fixes
186
+
187
+ - **reactor:** fix an issue exacerbated by auth where snapshots were ordered by insertion not revision ([4aa32fe1b](https://github.com/powerhouse-inc/powerhouse/commit/4aa32fe1b))
188
+
189
+ ### ❤️ Thank You
190
+
191
+ - Benjamin Jordan
192
+
193
+ ## 6.2.2-dev.23 (2026-07-28)
194
+
195
+ ### 🩹 Fixes
196
+
197
+ - **deps:** pin qr to 0.5.5 so RainbowKit can render the WalletConnect QR ([5343f9178](https://github.com/powerhouse-inc/powerhouse/commit/5343f9178))
198
+
199
+ ### ❤️ Thank You
200
+
201
+ - acaldas
202
+
203
+ ## 6.2.2-dev.22 (2026-07-28)
204
+
205
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
206
+
207
+ ## 6.2.2-dev.21 (2026-07-27)
208
+
209
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
210
+
211
+ ## 6.2.2-dev.20 (2026-07-27)
212
+
213
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
214
+
215
+ ## 6.2.2-dev.19 (2026-07-27)
216
+
217
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
218
+
219
+ ## 6.2.2-dev.18 (2026-07-27)
220
+
221
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
222
+
223
+ ## 6.2.2-dev.17 (2026-07-26)
224
+
225
+ ### 🚀 Features
226
+
227
+ - **attachments:** S3-compatible storage, direct transfers, and document-derived authorization ([#2884](https://github.com/powerhouse-inc/powerhouse/pull/2884))
228
+
229
+ ### ❤️ Thank You
230
+
231
+ - Guillermo Puente Sandoval @gpuente
232
+
233
+ ## 6.2.2-dev.16 (2026-07-25)
234
+
235
+ ### 🩹 Fixes
236
+
237
+ - code review fixes ([318cbefa9](https://github.com/powerhouse-inc/powerhouse/commit/318cbefa9))
238
+ - version 0 is reserved and only 1 and on is available for setting ([193ac4c56](https://github.com/powerhouse-inc/powerhouse/commit/193ac4c56))
239
+ - resolve a contradiction in group membership ([39845a65c](https://github.com/powerhouse-inc/powerhouse/commit/39845a65c))
240
+ - grant evaluation needs to ignore features that do not exist yet ([0c1d06396](https://github.com/powerhouse-inc/powerhouse/commit/0c1d06396))
241
+
242
+ ### ❤️ Thank You
243
+
244
+ - Benjamin Jordan
245
+
246
+ ## 6.2.2-dev.15 (2026-07-24)
247
+
248
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
249
+
250
+ ## 6.2.2-dev.14 (2026-07-23)
251
+
252
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
253
+
254
+ ## 6.2.2-dev.13 (2026-07-23)
255
+
256
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
257
+
258
+ ## 6.2.2-dev.12 (2026-07-23)
259
+
260
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
261
+
262
+ ## 6.2.2-dev.11 (2026-07-22)
263
+
264
+ ### 🚀 Features
265
+
266
+ - **connect:** dynamic packages can contribute to the PWA configuration ([da867e21d](https://github.com/powerhouse-inc/powerhouse/commit/da867e21d))
267
+
268
+ ### ❤️ Thank You
269
+
270
+ - Yasiel Cabrera @YasielCabrera
271
+
272
+ ## 6.2.2-dev.10 (2026-07-21)
273
+
274
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
275
+
276
+ ## 6.2.2-dev.9 (2026-07-20)
277
+
278
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
279
+
280
+ ## 6.2.2-dev.8 (2026-07-19)
281
+
282
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
283
+
284
+ ## 6.2.2-dev.7 (2026-07-18)
285
+
286
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
287
+
288
+ ## 6.2.2-dev.6 (2026-07-17)
289
+
290
+ This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
291
+
1
292
  ## 6.2.2-dev.5 (2026-07-17)
2
293
 
3
294
  This was a version bump only for @powerhousedao/switchboard to align it with other projects, there were no code changes.
package/README.md CHANGED
@@ -156,6 +156,43 @@ The same settings are available programmatically via
156
156
  `startSwitchboard({ workerPool: { numWorkers, dbPoolSizePerWorker, acquireTimeoutMs } })`,
157
157
  which takes precedence over the environment variables.
158
158
 
159
+ ### Reactor Enforcement Flags
160
+
161
+ | Variable | Description | Default |
162
+ | ------------------------------ | ------------------------------------------------------------------ | ------- |
163
+ | `REACTOR_DOCUMENT_DECISIONS` | Decide writes from the document stream, not the meta cache | `false` |
164
+ | `REACTOR_AUTH_ENFORCEMENT` | Enforce the auth scope's policy at admission, replay and read | `false` |
165
+ | `REACTOR_AUTH_GROUPS` | Let `{ group }` principals match against group-document rosters | `false` |
166
+ | `REACTOR_AUTH_CONDITIONS` | Evaluate `where` / `match` conditions on grants | `false` |
167
+
168
+ Set each to the literal `true` to enable. Each flag requires the one above it,
169
+ and switchboard refuses to start on a set that skips one — a partially enforcing
170
+ reactor would apply less than the operator asked for.
171
+
172
+ These change replay outcomes, which are consensus outcomes, so **a flag flips
173
+ for a whole document-sharing fleet, never per node**. Two nodes that share
174
+ documents and disagree on the flags diverge, exactly as two nodes on
175
+ incompatible versions would. Connect carries the same flags in
176
+ `connect.reactor.featureFlags` (see `apps/connect/RUNTIME-CONFIG.md`); a fleet
177
+ that includes browser replicas has to set them there too.
178
+
179
+ Sweep the store before enabling either auth flag — neither unsafe condition is
180
+ repairable after the fact, because the auth stream is never reshuffled:
181
+
182
+ ```bash
183
+ cd packages/reactor && pnpm preflight:auth --pg <connection-string>
184
+ ```
185
+
186
+ Exit `0` is clean for both; `1` means streams unsafe for `authEnforcement`, `2`
187
+ means documents unsafe for `authConditions`, `3` both, and `68` means the run
188
+ died having checked nothing. Gate on the whole code, not on a bit.
189
+
190
+ One expectation worth stating: turning enforcement on protects nothing that
191
+ already exists. The host's permission tables still own sync serving and the
192
+ GraphQL boundary, and every document that predates the auth scope carries an
193
+ uninitialized policy, which allows everything. Enforcement bites only on
194
+ documents that have emitted `INITIALIZE_AUTH`.
195
+
159
196
  ### Authentication Configuration
160
197
 
161
198
  ```typescript
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="5a65c537-fadb-5705-95c0-4cec44d7b4d2")}catch(e){}}();
4
- import { a as parseForcePgVersion, r as startSwitchboard } from "./server-Cgud_ONM.mjs";
4
+ import { a as parseForcePgVersion, r as startSwitchboard } from "./server-By1-k-B6.mjs";
5
5
  import "./utils-Baw7rThP.mjs";
6
6
  import { metrics } from "@opentelemetry/api";
7
7
  import { OTLPTraceExporter } from "@opentelemetry/exporter-trace-otlp-http";