@oxy.so/core 7.19.0 → 7.19.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/README.md CHANGED
@@ -173,8 +173,11 @@ router.get('/orgs/:accountId', async (req, res) => {
173
173
  `createOxyAuthMiddleware(oxy)` resolves the bearer session and requires a user
174
174
  in one middleware; `createOptionalOxyAuth(oxy)` is the optional form. The
175
175
  permission questions (`appPermissionsFor`, `accountAccessFor`,
176
- `applicationAccessFor`), user clients (`withUser`), files and outbound HTTP are
177
- in [Building a backend](./docs/backend.mdx).
176
+ `applicationAccessFor`), user clients (`withUser`), per-call options
177
+ (`oxy.withCallOptions({ timeout, deadline, retry, signal })`), files and
178
+ outbound HTTP (`safeFetch`, with `validated` to reuse an `assertSafePublicUrl`
179
+ check and `requireHttps` for an all-https chain) are in
180
+ [Building a backend](./docs/backend.mdx).
178
181
 
179
182
  ## Security Headers And CSP
180
183
 
@@ -3,10 +3,13 @@
3
3
  * Application roles, from the application's side: which of THIS application's
4
4
  * declared permissions does the person behind a request hold?
5
5
  *
6
- * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`).
7
- * An app declares its keys (`payments.operate`, …) in the Console, its owners
8
- * grant them to people, and its backend asks — so no app keeps a
9
- * `*_OPERATOR_OXY_USER_IDS` allow-list in its environment.
6
+ * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`),
7
+ * and the backend asks — so no app keeps a `*_OPERATOR_OXY_USER_IDS` allow-list
8
+ * in its environment. One of Oxy's own applications declares its keys
9
+ * (`payments.operate`, …) in Oxy's first-party registry, each held by roles of
10
+ * the owning organization (ADR 0056); a third-party app declares them in the
11
+ * Console and its owners grant them to people. The answer has the same shape
12
+ * either way.
10
13
  *
11
14
  * ```ts
12
15
  * const oxy = new OxyServer({ baseURL: 'https://api.oxy.so', applicationId: process.env.OXY_APPLICATION_ID });
@@ -2,10 +2,13 @@
2
2
  * Application roles, from the application's side: which of THIS application's
3
3
  * declared permissions does the person behind a request hold?
4
4
  *
5
- * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`).
6
- * An app declares its keys (`payments.operate`, …) in the Console, its owners
7
- * grant them to people, and its backend asks — so no app keeps a
8
- * `*_OPERATOR_OXY_USER_IDS` allow-list in its environment.
5
+ * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`),
6
+ * and the backend asks — so no app keeps a `*_OPERATOR_OXY_USER_IDS` allow-list
7
+ * in its environment. One of Oxy's own applications declares its keys
8
+ * (`payments.operate`, …) in Oxy's first-party registry, each held by roles of
9
+ * the owning organization (ADR 0056); a third-party app declares them in the
10
+ * Console and its owners grant them to people. The answer has the same shape
11
+ * either way.
9
12
  *
10
13
  * ```ts
11
14
  * const oxy = new OxyServer({ baseURL: 'https://api.oxy.so', applicationId: process.env.OXY_APPLICATION_ID });
@@ -2,10 +2,13 @@
2
2
  * Application roles, from the application's side: which of THIS application's
3
3
  * declared permissions does the person behind a request hold?
4
4
  *
5
- * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`).
6
- * An app declares its keys (`payments.operate`, …) in the Console, its owners
7
- * grant them to people, and its backend asks — so no app keeps a
8
- * `*_OPERATOR_OXY_USER_IDS` allow-list in its environment.
5
+ * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`),
6
+ * and the backend asks — so no app keeps a `*_OPERATOR_OXY_USER_IDS` allow-list
7
+ * in its environment. One of Oxy's own applications declares its keys
8
+ * (`payments.operate`, …) in Oxy's first-party registry, each held by roles of
9
+ * the owning organization (ADR 0056); a third-party app declares them in the
10
+ * Console and its owners grant them to people. The answer has the same shape
11
+ * either way.
9
12
  *
10
13
  * ```ts
11
14
  * const oxy = new OxyServer({ baseURL: 'https://api.oxy.so', applicationId: process.env.OXY_APPLICATION_ID });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxy.so/core",
3
- "version": "7.19.0",
3
+ "version": "7.19.1",
4
4
  "description": "OxyHQ SDK Foundation — API client, authentication, cryptographic identity, and shared utilities",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -181,7 +181,7 @@
181
181
  "dependencies": {
182
182
  "@noble/ciphers": "^2.4.0",
183
183
  "@noble/hashes": "^2.4.0",
184
- "@oxy.so/contracts": "6.5.0",
184
+ "@oxy.so/contracts": "6.6.0",
185
185
  "@oxy.so/protocol": "^1.6.1",
186
186
  "@oxy.so/telemetry": "^2.1.0",
187
187
  "@scure/bip39": "^2.4.0",
@@ -2,10 +2,13 @@
2
2
  * Application roles, from the application's side: which of THIS application's
3
3
  * declared permissions does the person behind a request hold?
4
4
  *
5
- * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`).
6
- * An app declares its keys (`payments.operate`, …) in the Console, its owners
7
- * grant them to people, and its backend asks — so no app keeps a
8
- * `*_OPERATOR_OXY_USER_IDS` allow-list in its environment.
5
+ * Oxy decides who holds an app's operator powers (`docs/auth/application-roles.md`),
6
+ * and the backend asks — so no app keeps a `*_OPERATOR_OXY_USER_IDS` allow-list
7
+ * in its environment. One of Oxy's own applications declares its keys
8
+ * (`payments.operate`, …) in Oxy's first-party registry, each held by roles of
9
+ * the owning organization (ADR 0056); a third-party app declares them in the
10
+ * Console and its owners grant them to people. The answer has the same shape
11
+ * either way.
9
12
  *
10
13
  * ```ts
11
14
  * const oxy = new OxyServer({ baseURL: 'https://api.oxy.so', applicationId: process.env.OXY_APPLICATION_ID });