@happyvertical/smrt-profiles 0.39.17 → 0.40.1
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/AGENTS.md +5 -1
- package/README.md +6 -1
- package/dist/index.js +1 -1
- package/dist/manifest.json +33 -33
- package/dist/smrt-knowledge.json +6 -6
- package/package.json +11 -11
package/AGENTS.md
CHANGED
|
@@ -112,7 +112,11 @@ import { smrtProfilesGenerateBioPrompt } from '@happyvertical/smrt-profiles';
|
|
|
112
112
|
existing email match through this helper; User/session provisioning still
|
|
113
113
|
rejects unsafe linked Profiles before creating authentication state. Use
|
|
114
114
|
`UserCollection.getOrCreateFromOidc()` for owner-aware verified-email reuse and
|
|
115
|
-
its supported transaction-bound
|
|
115
|
+
its supported transaction-bound hooks. A pre-provisioned owned Person remains
|
|
116
|
+
fail-closed unless the application explicitly uses `authorizeProfileOwner`
|
|
117
|
+
to select both the canonical Profile and its existing approved sole owner;
|
|
118
|
+
the users package revalidates those IDs, emails, and identity authority in
|
|
119
|
+
the provisioning transaction.
|
|
116
120
|
- **Email storage and identity matching differ**: `Profile.email` has an
|
|
117
121
|
exact-value DB constraint. Identity boundaries query readonly indexed
|
|
118
122
|
`Profile.emailKey`, derived by the shared TypeScript
|
package/README.md
CHANGED
|
@@ -175,7 +175,12 @@ errors, and permitted row creation; the Profiles and Users suites execute its
|
|
|
175
175
|
applicable rows directly. In particular, Profile-only exact reuse preserves an
|
|
176
176
|
established legacy link because it creates no User/session authentication state,
|
|
177
177
|
while `UserCollection.getOrCreateFromOidc()` remains owner-aware and fail-closed.
|
|
178
|
-
Use the Users API for verified-email reuse and application reconciliation.
|
|
178
|
+
Use the Users API for verified-email reuse and application reconciliation. Its
|
|
179
|
+
`authorizeProfileOwner` option is the only supported exception for a new
|
|
180
|
+
issuer/subject targeting a pre-provisioned owned Person: the users package
|
|
181
|
+
atomically verifies the canonical Profile, sole approved owner, matching User
|
|
182
|
+
email, and non-rebindable identity. Without that explicit application
|
|
183
|
+
authorization, the owned Profile still returns `profile_owned`.
|
|
179
184
|
|
|
180
185
|
`Profile` and `ProfileCollection` both expose `getAssets()`, `addAsset()`, and
|
|
181
186
|
`removeAsset()` helpers backed by `profile_assets`. Typical relationships are
|