@odla-ai/chapter 0.47.8 → 0.47.10
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 +28 -0
- package/dist/index.cjs +24 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -1
- package/dist/testing.cjs +164 -46
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.cts +10 -2
- package/dist/testing.d.ts +10 -2
- package/dist/testing.js +164 -46
- package/dist/testing.js.map +1 -1
- package/dist/worker/index.cjs +160 -33
- package/dist/worker/index.cjs.map +1 -1
- package/dist/worker/index.js +160 -33
- package/dist/worker/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1579,6 +1579,34 @@ These bite silently — a smoke test won't catch them:
|
|
|
1579
1579
|
merge-`PATCH`es only the public role, so it cannot clobber the private profile.
|
|
1580
1580
|
All take an injectable `fetch` and the vault `clerk_secret_key`.
|
|
1581
1581
|
|
|
1582
|
+
### Multi-site acceptance tests
|
|
1583
|
+
|
|
1584
|
+
`@odla-ai/chapter/testing` exports a schema-validated manifest, scenario planner,
|
|
1585
|
+
public join-contract probe, serial suite runner, and text report formatter.
|
|
1586
|
+
Declare every logical chapter and every authoritative developer runtime in the
|
|
1587
|
+
manifest; runtime identity is separate from Stripe test/live mode.
|
|
1588
|
+
|
|
1589
|
+
- `probeChapterJoinContracts(manifest)` reads deployed health and catalog routes.
|
|
1590
|
+
It compares effective app/chapter/data-environment/runtime health headers with
|
|
1591
|
+
the manifest; missing headers or a legacy `test` runtime are failures, not an
|
|
1592
|
+
inferred match. Chapter's health body remains `{ ok: true }`.
|
|
1593
|
+
It refuses redirects, caps responses at 64 KiB and ten seconds, and reports
|
|
1594
|
+
malformed or unavailable targets independently without retaining raw bodies
|
|
1595
|
+
or provider error messages. It does not create an application or prove payment.
|
|
1596
|
+
- `planChapterAcceptanceMatrix(manifest)` requires test Stripe and literal `dev`
|
|
1597
|
+
runtime/data environments. Test Stripe alone cannot authorize production data.
|
|
1598
|
+
- `runChapterAcceptanceSuite(manifest, suite, executor)` runs the actual adapter
|
|
1599
|
+
supplied by the host. A provider adapter must execute the deployed journey,
|
|
1600
|
+
assert resulting application and provider state, and supply an immutable
|
|
1601
|
+
deployment version. Returning assertion labels from a mock proves only the
|
|
1602
|
+
runner contract, never a real user flow.
|
|
1603
|
+
- Provider cleanup is mandatory, including after a failed attempt. Unconfirmed
|
|
1604
|
+
cleanup stops further attempts; remaining cases fail with
|
|
1605
|
+
`not_run_cleanup_failed`. Reconcile the exact test resources before rerunning.
|
|
1606
|
+
- Evidence is copied only after validation. Extra fields and rejected payloads
|
|
1607
|
+
are discarded; check labels must contain no personal data, and references must
|
|
1608
|
+
be opaque provider IDs or digests, never client secrets or raw provider objects.
|
|
1609
|
+
|
|
1582
1610
|
### Verify from the types, not this file
|
|
1583
1611
|
|
|
1584
1612
|
At several releases a day, prose lags. Treat this README as intent and verify the
|
package/dist/index.cjs
CHANGED
|
@@ -681,6 +681,29 @@ var stripeEventReceiptsEntity = {
|
|
|
681
681
|
receivedAt: attr4("number", { indexed: true })
|
|
682
682
|
}
|
|
683
683
|
};
|
|
684
|
+
var subscriptionCheckoutIntentsEntity = {
|
|
685
|
+
attrs: {
|
|
686
|
+
id: attr4("string", { unique: true, indexed: true }),
|
|
687
|
+
applicationId: attr4("string", { unique: true, indexed: true }),
|
|
688
|
+
appId: attr4("string", { indexed: true }),
|
|
689
|
+
chapterId: attr4("string", { indexed: true }),
|
|
690
|
+
environment: attr4("string", { indexed: true }),
|
|
691
|
+
runtime: attr4("string", { indexed: true, optional: true }),
|
|
692
|
+
groupId: attr4("string", { indexed: true }),
|
|
693
|
+
tierId: attr4("string", { indexed: true }),
|
|
694
|
+
priceId: attr4("string", { indexed: true }),
|
|
695
|
+
priceCents: attr4("number"),
|
|
696
|
+
currency: attr4("string", { indexed: true }),
|
|
697
|
+
interval: attr4("string", { indexed: true }),
|
|
698
|
+
purchaserEmailNormalized: attr4("string", { indexed: true }),
|
|
699
|
+
requestedCustomerId: attr4("string", { indexed: true, optional: true }),
|
|
700
|
+
providerCustomerId: attr4("string", { indexed: true, optional: true }),
|
|
701
|
+
providerSubscriptionId: attr4("string", { unique: true, indexed: true, optional: true }),
|
|
702
|
+
status: attr4("string", { indexed: true }),
|
|
703
|
+
createdAt: attr4("number", { indexed: true }),
|
|
704
|
+
updatedAt: attr4("number", { indexed: true })
|
|
705
|
+
}
|
|
706
|
+
};
|
|
684
707
|
|
|
685
708
|
// src/schema-network-person.ts
|
|
686
709
|
var string = (flags = {}) => ({
|
|
@@ -1011,6 +1034,7 @@ function chapterDb(mode, auth, includeNetworkNotes = false, application = resolv
|
|
|
1011
1034
|
entities.meetings = meetings;
|
|
1012
1035
|
entities.emailLog = emailLog;
|
|
1013
1036
|
entities.stripeEventReceipts = stripeEventReceiptsEntity;
|
|
1037
|
+
entities.subscriptionCheckoutIntents = subscriptionCheckoutIntentsEntity;
|
|
1014
1038
|
entities.admissionGrants = admissionGrantsEntity;
|
|
1015
1039
|
entities.admissionGrantRevisions = admissionGrantRevisionsEntity;
|
|
1016
1040
|
entities.giftPurchaseIntents = giftPurchaseIntentsEntity;
|