@odla-ai/chapter 0.44.0 → 0.46.0

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.
@@ -146,6 +146,26 @@ interface ResolvedNetworkPersonRegistry {
146
146
  chapterIds: readonly string[];
147
147
  }
148
148
 
149
+ /** One exact Stripe event partition accepted by the network commercial shadow. */
150
+ interface NetworkCommercialSource {
151
+ appId: string;
152
+ chapterId: string;
153
+ environment: string;
154
+ dataEnvironment: string;
155
+ runtime: string;
156
+ stripeMode: "test" | "live";
157
+ }
158
+ /** Opt-in, read-only projection of a shared Stripe account. */
159
+ interface ChapterNetworkCommercialReadModel {
160
+ mode: "shadow";
161
+ sources: readonly NetworkCommercialSource[];
162
+ }
163
+ /** Validated settings carried by a resolved hub. */
164
+ interface ResolvedNetworkCommercialReadModel {
165
+ mode: "shadow";
166
+ sources: readonly NetworkCommercialSource[];
167
+ }
168
+
149
169
  /** Scalar kinds accepted by the Chapter schema adapter. */
150
170
  type AttrType = "string" | "number" | "boolean" | "json";
151
171
  /** One odla-db attribute: its type and index/uniqueness/optionality flags. */
@@ -208,6 +228,10 @@ interface ChapterNetworkTarget {
208
228
  /** Allow package-owned desired admission decisions for existing leader CRM
209
229
  * people to be delivered to this target. Omitted means default deny. */
210
230
  admissionGrants?: boolean;
231
+ /** Allow this leader to request a PII-free commercial parity snapshot from
232
+ * this follower. The follower must independently enable the same reader;
233
+ * omitted means no application or Stripe identifier digest crosses. */
234
+ commercialParity?: boolean;
211
235
  }
212
236
  /** One signed peer allowed to browse a privacy-bounded projection of this
213
237
  * site's CRM. The follower owns this allowlist; a leader target declaration
@@ -232,6 +256,9 @@ interface ChapterNetworkReader {
232
256
  /** Accept signed desired admission decisions from this reader. Independent
233
257
  * of record browsing; an admission-only reader may omit `fields`. */
234
258
  admissionGrants?: boolean;
259
+ /** Disclose a bounded, PII-free commercial parity snapshot to this signed
260
+ * reader. Identifiers leave only as edge-keyed, domain-separated HMACs. */
261
+ commercialParity?: boolean;
235
262
  }
236
263
  /** Leader/follower network configuration. A follower needs no code config to
237
264
  * receive pushed records. It must explicitly declare `readers` before any peer
@@ -277,6 +304,7 @@ interface ResolvedNetworkTarget {
277
304
  editableFields: Record<string, readonly string[]>;
278
305
  stageTransitions: readonly string[];
279
306
  admissionGrants?: boolean;
307
+ commercialParity?: boolean;
280
308
  }
281
309
  /** A validated follower-owned record projection for one signed reader. */
282
310
  interface ResolvedNetworkReader {
@@ -286,6 +314,7 @@ interface ResolvedNetworkReader {
286
314
  editableFields: Record<string, readonly string[]>;
287
315
  stageTransitions: readonly string[];
288
316
  admissionGrants?: boolean;
317
+ commercialParity?: boolean;
289
318
  }
290
319
  /** Fully-resolved leader network configuration. */
291
320
  interface ResolvedNetwork {
@@ -610,6 +639,8 @@ interface ChapterConfig {
610
639
  /** Network-scoped canonical Person registry. Shadow mode is additive only:
611
640
  * Chapter workflows and access continue to read their existing authority. */
612
641
  networkPersonRegistry?: ChapterNetworkPersonRegistry;
642
+ /** Read-only, rebuildable commercial projection from a shared Stripe account. */
643
+ networkCommercialReadModel?: ChapterNetworkCommercialReadModel;
613
644
  /** Enable a public, host-rendered formation application workflow. */
614
645
  formation?: LeaderFormationConfig;
615
646
  thesis?: unknown;
@@ -712,6 +743,8 @@ interface Chapter {
712
743
  builderLibrary: ResolvedBuilderLibrary | null;
713
744
  /** Null unless this hub explicitly enables the shadow Person registry. */
714
745
  networkPersonRegistry: ResolvedNetworkPersonRegistry | null;
746
+ /** Null unless this hub explicitly enables the commercial shadow. */
747
+ networkCommercialReadModel: ResolvedNetworkCommercialReadModel | null;
715
748
  /** Resolved public formation intake contract (disabled when omitted). */
716
749
  formation: ResolvedLeaderFormation;
717
750
  /** Resolved CRM engine (from `defineCrm`). */
@@ -146,6 +146,26 @@ interface ResolvedNetworkPersonRegistry {
146
146
  chapterIds: readonly string[];
147
147
  }
148
148
 
149
+ /** One exact Stripe event partition accepted by the network commercial shadow. */
150
+ interface NetworkCommercialSource {
151
+ appId: string;
152
+ chapterId: string;
153
+ environment: string;
154
+ dataEnvironment: string;
155
+ runtime: string;
156
+ stripeMode: "test" | "live";
157
+ }
158
+ /** Opt-in, read-only projection of a shared Stripe account. */
159
+ interface ChapterNetworkCommercialReadModel {
160
+ mode: "shadow";
161
+ sources: readonly NetworkCommercialSource[];
162
+ }
163
+ /** Validated settings carried by a resolved hub. */
164
+ interface ResolvedNetworkCommercialReadModel {
165
+ mode: "shadow";
166
+ sources: readonly NetworkCommercialSource[];
167
+ }
168
+
149
169
  /** Scalar kinds accepted by the Chapter schema adapter. */
150
170
  type AttrType = "string" | "number" | "boolean" | "json";
151
171
  /** One odla-db attribute: its type and index/uniqueness/optionality flags. */
@@ -208,6 +228,10 @@ interface ChapterNetworkTarget {
208
228
  /** Allow package-owned desired admission decisions for existing leader CRM
209
229
  * people to be delivered to this target. Omitted means default deny. */
210
230
  admissionGrants?: boolean;
231
+ /** Allow this leader to request a PII-free commercial parity snapshot from
232
+ * this follower. The follower must independently enable the same reader;
233
+ * omitted means no application or Stripe identifier digest crosses. */
234
+ commercialParity?: boolean;
211
235
  }
212
236
  /** One signed peer allowed to browse a privacy-bounded projection of this
213
237
  * site's CRM. The follower owns this allowlist; a leader target declaration
@@ -232,6 +256,9 @@ interface ChapterNetworkReader {
232
256
  /** Accept signed desired admission decisions from this reader. Independent
233
257
  * of record browsing; an admission-only reader may omit `fields`. */
234
258
  admissionGrants?: boolean;
259
+ /** Disclose a bounded, PII-free commercial parity snapshot to this signed
260
+ * reader. Identifiers leave only as edge-keyed, domain-separated HMACs. */
261
+ commercialParity?: boolean;
235
262
  }
236
263
  /** Leader/follower network configuration. A follower needs no code config to
237
264
  * receive pushed records. It must explicitly declare `readers` before any peer
@@ -277,6 +304,7 @@ interface ResolvedNetworkTarget {
277
304
  editableFields: Record<string, readonly string[]>;
278
305
  stageTransitions: readonly string[];
279
306
  admissionGrants?: boolean;
307
+ commercialParity?: boolean;
280
308
  }
281
309
  /** A validated follower-owned record projection for one signed reader. */
282
310
  interface ResolvedNetworkReader {
@@ -286,6 +314,7 @@ interface ResolvedNetworkReader {
286
314
  editableFields: Record<string, readonly string[]>;
287
315
  stageTransitions: readonly string[];
288
316
  admissionGrants?: boolean;
317
+ commercialParity?: boolean;
289
318
  }
290
319
  /** Fully-resolved leader network configuration. */
291
320
  interface ResolvedNetwork {
@@ -610,6 +639,8 @@ interface ChapterConfig {
610
639
  /** Network-scoped canonical Person registry. Shadow mode is additive only:
611
640
  * Chapter workflows and access continue to read their existing authority. */
612
641
  networkPersonRegistry?: ChapterNetworkPersonRegistry;
642
+ /** Read-only, rebuildable commercial projection from a shared Stripe account. */
643
+ networkCommercialReadModel?: ChapterNetworkCommercialReadModel;
613
644
  /** Enable a public, host-rendered formation application workflow. */
614
645
  formation?: LeaderFormationConfig;
615
646
  thesis?: unknown;
@@ -712,6 +743,8 @@ interface Chapter {
712
743
  builderLibrary: ResolvedBuilderLibrary | null;
713
744
  /** Null unless this hub explicitly enables the shadow Person registry. */
714
745
  networkPersonRegistry: ResolvedNetworkPersonRegistry | null;
746
+ /** Null unless this hub explicitly enables the commercial shadow. */
747
+ networkCommercialReadModel: ResolvedNetworkCommercialReadModel | null;
715
748
  /** Resolved public formation intake contract (disabled when omitted). */
716
749
  formation: ResolvedLeaderFormation;
717
750
  /** Resolved CRM engine (from `defineCrm`). */