@antseed/cli 0.1.179 → 0.1.180
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 +2 -0
- package/dist/buyer-identities/store.d.ts +39 -2
- package/dist/buyer-identities/store.d.ts.map +1 -1
- package/dist/buyer-identities/store.js +99 -10
- package/dist/buyer-identities/store.js.map +1 -1
- package/dist/cli/commands/buyer/identity.d.ts +3 -1
- package/dist/cli/commands/buyer/identity.d.ts.map +1 -1
- package/dist/cli/commands/buyer/identity.js +55 -8
- package/dist/cli/commands/buyer/identity.js.map +1 -1
- package/dist/cli/commands/buyer/identity.test.d.ts +2 -0
- package/dist/cli/commands/buyer/identity.test.d.ts.map +1 -0
- package/dist/cli/commands/buyer/identity.test.js +168 -0
- package/dist/cli/commands/buyer/identity.test.js.map +1 -0
- package/dist/cli/commands/buyer/set-authorized-wallet.d.ts +10 -0
- package/dist/cli/commands/buyer/set-authorized-wallet.d.ts.map +1 -1
- package/dist/cli/commands/buyer/set-authorized-wallet.js +26 -4
- package/dist/cli/commands/buyer/set-authorized-wallet.js.map +1 -1
- package/dist/cli/commands/buyer/set-authorized-wallet.test.js +37 -2
- package/dist/cli/commands/buyer/set-authorized-wallet.test.js.map +1 -1
- package/dist/cli/commands/buyer/start.d.ts +15 -0
- package/dist/cli/commands/buyer/start.d.ts.map +1 -1
- package/dist/cli/commands/buyer/start.js +158 -48
- package/dist/cli/commands/buyer/start.js.map +1 -1
- package/dist/cli/commands/buyer/start.test.js +16 -1
- package/dist/cli/commands/buyer/start.test.js.map +1 -1
- package/dist/cli/commands/chat.d.ts +3 -0
- package/dist/cli/commands/chat.d.ts.map +1 -0
- package/dist/cli/commands/chat.js +189 -0
- package/dist/cli/commands/chat.js.map +1 -0
- package/dist/cli/commands/gateway/activity.d.ts +15 -0
- package/dist/cli/commands/gateway/activity.d.ts.map +1 -0
- package/dist/cli/commands/gateway/activity.js +233 -0
- package/dist/cli/commands/gateway/activity.js.map +1 -0
- package/dist/cli/commands/gateway/admin-token.d.ts +3 -0
- package/dist/cli/commands/gateway/admin-token.d.ts.map +1 -0
- package/dist/cli/commands/gateway/admin-token.js +90 -0
- package/dist/cli/commands/gateway/admin-token.js.map +1 -0
- package/dist/cli/commands/gateway/console-link.d.ts +20 -0
- package/dist/cli/commands/gateway/console-link.d.ts.map +1 -0
- package/dist/cli/commands/gateway/console-link.js +92 -0
- package/dist/cli/commands/gateway/console-link.js.map +1 -0
- package/dist/cli/commands/gateway/gateway-commands.test.d.ts +2 -0
- package/dist/cli/commands/gateway/gateway-commands.test.d.ts.map +1 -0
- package/dist/cli/commands/gateway/gateway-commands.test.js +230 -0
- package/dist/cli/commands/gateway/gateway-commands.test.js.map +1 -0
- package/dist/cli/commands/gateway/gateway-console-commands.test.d.ts +2 -0
- package/dist/cli/commands/gateway/gateway-console-commands.test.d.ts.map +1 -0
- package/dist/cli/commands/gateway/gateway-console-commands.test.js +373 -0
- package/dist/cli/commands/gateway/gateway-console-commands.test.js.map +1 -0
- package/dist/cli/commands/gateway/index.d.ts +8 -0
- package/dist/cli/commands/gateway/index.d.ts.map +1 -1
- package/dist/cli/commands/gateway/index.js +93 -14
- package/dist/cli/commands/gateway/index.js.map +1 -1
- package/dist/cli/commands/gateway/key.d.ts +4 -0
- package/dist/cli/commands/gateway/key.d.ts.map +1 -1
- package/dist/cli/commands/gateway/key.js +297 -182
- package/dist/cli/commands/gateway/key.js.map +1 -1
- package/dist/cli/commands/gateway/member.d.ts +3 -0
- package/dist/cli/commands/gateway/member.d.ts.map +1 -0
- package/dist/cli/commands/gateway/member.js +302 -0
- package/dist/cli/commands/gateway/member.js.map +1 -0
- package/dist/cli/commands/gateway/migrate.d.ts +18 -0
- package/dist/cli/commands/gateway/migrate.d.ts.map +1 -0
- package/dist/cli/commands/gateway/migrate.js +158 -0
- package/dist/cli/commands/gateway/migrate.js.map +1 -0
- package/dist/cli/commands/gateway/operator.d.ts +11 -0
- package/dist/cli/commands/gateway/operator.d.ts.map +1 -0
- package/dist/cli/commands/gateway/operator.js +199 -0
- package/dist/cli/commands/gateway/operator.js.map +1 -0
- package/dist/cli/commands/gateway/operator.test.d.ts +2 -0
- package/dist/cli/commands/gateway/operator.test.d.ts.map +1 -0
- package/dist/cli/commands/gateway/operator.test.js +151 -0
- package/dist/cli/commands/gateway/operator.test.js.map +1 -0
- package/dist/cli/commands/gateway/peer-list.d.ts +3 -0
- package/dist/cli/commands/gateway/peer-list.d.ts.map +1 -0
- package/dist/cli/commands/gateway/peer-list.js +107 -0
- package/dist/cli/commands/gateway/peer-list.js.map +1 -0
- package/dist/cli/commands/gateway/policy-options.d.ts +23 -0
- package/dist/cli/commands/gateway/policy-options.d.ts.map +1 -0
- package/dist/cli/commands/gateway/policy-options.js +156 -0
- package/dist/cli/commands/gateway/policy-options.js.map +1 -0
- package/dist/cli/commands/gateway/preset.d.ts +3 -0
- package/dist/cli/commands/gateway/preset.d.ts.map +1 -0
- package/dist/cli/commands/gateway/preset.js +181 -0
- package/dist/cli/commands/gateway/preset.js.map +1 -0
- package/dist/cli/commands/gateway/routing.d.ts +3 -0
- package/dist/cli/commands/gateway/routing.d.ts.map +1 -0
- package/dist/cli/commands/gateway/routing.js +110 -0
- package/dist/cli/commands/gateway/routing.js.map +1 -0
- package/dist/cli/commands/gateway/settings.d.ts +4 -0
- package/dist/cli/commands/gateway/settings.d.ts.map +1 -0
- package/dist/cli/commands/gateway/settings.js +314 -0
- package/dist/cli/commands/gateway/settings.js.map +1 -0
- package/dist/cli/commands/gateway/shared.d.ts +55 -6
- package/dist/cli/commands/gateway/shared.d.ts.map +1 -1
- package/dist/cli/commands/gateway/shared.js +206 -26
- package/dist/cli/commands/gateway/shared.js.map +1 -1
- package/dist/cli/commands/gateway/workspace.d.ts +3 -0
- package/dist/cli/commands/gateway/workspace.d.ts.map +1 -0
- package/dist/cli/commands/gateway/workspace.js +250 -0
- package/dist/cli/commands/gateway/workspace.js.map +1 -0
- package/dist/cli/commands/tunnel/start.d.ts.map +1 -1
- package/dist/cli/commands/tunnel/start.js +23 -5
- package/dist/cli/commands/tunnel/start.js.map +1 -1
- package/dist/cli/index.js +12 -44
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/program.d.ts +4 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +49 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/cli/program.test.d.ts +2 -0
- package/dist/cli/program.test.d.ts.map +1 -0
- package/dist/cli/program.test.js +38 -0
- package/dist/cli/program.test.js.map +1 -0
- package/dist/cli/prompt-hidden.d.ts +3 -0
- package/dist/cli/prompt-hidden.d.ts.map +1 -0
- package/dist/cli/prompt-hidden.js +38 -0
- package/dist/cli/prompt-hidden.js.map +1 -0
- package/dist/cli/wallet-passphrase.d.ts +48 -0
- package/dist/cli/wallet-passphrase.d.ts.map +1 -0
- package/dist/cli/wallet-passphrase.js +119 -0
- package/dist/cli/wallet-passphrase.js.map +1 -0
- package/dist/cli/wallet-passphrase.test.d.ts +2 -0
- package/dist/cli/wallet-passphrase.test.d.ts.map +1 -0
- package/dist/cli/wallet-passphrase.test.js +79 -0
- package/dist/cli/wallet-passphrase.test.js.map +1 -0
- package/dist/config/effective.d.ts +12 -0
- package/dist/config/effective.d.ts.map +1 -1
- package/dist/config/effective.js +39 -6
- package/dist/config/effective.js.map +1 -1
- package/dist/config/effective.test.js +9 -1
- package/dist/config/effective.test.js.map +1 -1
- package/dist/config/loader.d.ts +6 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +12 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/config/loader.test.js +7 -1
- package/dist/config/loader.test.js.map +1 -1
- package/dist/config/types.d.ts +14 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/validation.d.ts.map +1 -1
- package/dist/config/validation.js +19 -0
- package/dist/config/validation.js.map +1 -1
- package/dist/gateway/accounting.d.ts +33 -3
- package/dist/gateway/accounting.d.ts.map +1 -1
- package/dist/gateway/accounting.js +86 -7
- package/dist/gateway/accounting.js.map +1 -1
- package/dist/gateway/admission-benchmark.test.d.ts +2 -0
- package/dist/gateway/admission-benchmark.test.d.ts.map +1 -0
- package/dist/gateway/admission-benchmark.test.js +75 -0
- package/dist/gateway/admission-benchmark.test.js.map +1 -0
- package/dist/gateway/auth/auth.test.d.ts +4 -0
- package/dist/gateway/auth/auth.test.d.ts.map +1 -0
- package/dist/gateway/auth/auth.test.js +337 -0
- package/dist/gateway/auth/auth.test.js.map +1 -0
- package/dist/gateway/auth/credentials.test.d.ts +2 -0
- package/dist/gateway/auth/credentials.test.d.ts.map +1 -0
- package/dist/gateway/auth/credentials.test.js +132 -0
- package/dist/gateway/auth/credentials.test.js.map +1 -0
- package/dist/gateway/auth/db.d.ts +156 -0
- package/dist/gateway/auth/db.d.ts.map +1 -0
- package/dist/gateway/auth/db.js +390 -0
- package/dist/gateway/auth/db.js.map +1 -0
- package/dist/gateway/auth/hardening.test.d.ts +2 -0
- package/dist/gateway/auth/hardening.test.d.ts.map +1 -0
- package/dist/gateway/auth/hardening.test.js +155 -0
- package/dist/gateway/auth/hardening.test.js.map +1 -0
- package/dist/gateway/auth/http.d.ts +53 -0
- package/dist/gateway/auth/http.d.ts.map +1 -0
- package/dist/gateway/auth/http.js +165 -0
- package/dist/gateway/auth/http.js.map +1 -0
- package/dist/gateway/auth/index.d.ts +26 -0
- package/dist/gateway/auth/index.d.ts.map +1 -0
- package/dist/gateway/auth/index.js +1014 -0
- package/dist/gateway/auth/index.js.map +1 -0
- package/dist/gateway/auth/oidc.d.ts +57 -0
- package/dist/gateway/auth/oidc.d.ts.map +1 -0
- package/dist/gateway/auth/oidc.js +159 -0
- package/dist/gateway/auth/oidc.js.map +1 -0
- package/dist/gateway/auth/oidc.test.d.ts +2 -0
- package/dist/gateway/auth/oidc.test.d.ts.map +1 -0
- package/dist/gateway/auth/oidc.test.js +223 -0
- package/dist/gateway/auth/oidc.test.js.map +1 -0
- package/dist/gateway/auth/reauth.test.d.ts +2 -0
- package/dist/gateway/auth/reauth.test.d.ts.map +1 -0
- package/dist/gateway/auth/reauth.test.js +108 -0
- package/dist/gateway/auth/reauth.test.js.map +1 -0
- package/dist/gateway/auth/store-integration.test.d.ts +2 -0
- package/dist/gateway/auth/store-integration.test.d.ts.map +1 -0
- package/dist/gateway/auth/store-integration.test.js +100 -0
- package/dist/gateway/auth/store-integration.test.js.map +1 -0
- package/dist/gateway/auth/test-helpers.d.ts +167 -0
- package/dist/gateway/auth/test-helpers.d.ts.map +1 -0
- package/dist/gateway/auth/test-helpers.js +368 -0
- package/dist/gateway/auth/test-helpers.js.map +1 -0
- package/dist/gateway/auth/types.d.ts +145 -0
- package/dist/gateway/auth/types.d.ts.map +1 -0
- package/dist/gateway/auth/types.js +2 -0
- package/dist/gateway/auth/types.js.map +1 -0
- package/dist/gateway/auth/wallet.d.ts +15 -0
- package/dist/gateway/auth/wallet.d.ts.map +1 -0
- package/dist/gateway/auth/wallet.js +43 -0
- package/dist/gateway/auth/wallet.js.map +1 -0
- package/dist/gateway/bundle.d.ts +127 -0
- package/dist/gateway/bundle.d.ts.map +1 -0
- package/dist/gateway/bundle.js +604 -0
- package/dist/gateway/bundle.js.map +1 -0
- package/dist/gateway/bundle.test.d.ts +2 -0
- package/dist/gateway/bundle.test.d.ts.map +1 -0
- package/dist/gateway/bundle.test.js +277 -0
- package/dist/gateway/bundle.test.js.map +1 -0
- package/dist/gateway/buyer-control.d.ts +33 -0
- package/dist/gateway/buyer-control.d.ts.map +1 -0
- package/dist/gateway/buyer-control.js +93 -0
- package/dist/gateway/buyer-control.js.map +1 -0
- package/dist/gateway/buyer-policy-probe.d.ts +41 -0
- package/dist/gateway/buyer-policy-probe.d.ts.map +1 -0
- package/dist/gateway/buyer-policy-probe.js +99 -0
- package/dist/gateway/buyer-policy-probe.js.map +1 -0
- package/dist/gateway/buyer-policy-probe.test.d.ts +2 -0
- package/dist/gateway/buyer-policy-probe.test.d.ts.map +1 -0
- package/dist/gateway/buyer-policy-probe.test.js +128 -0
- package/dist/gateway/buyer-policy-probe.test.js.map +1 -0
- package/dist/gateway/buyer-process.d.ts +30 -0
- package/dist/gateway/buyer-process.d.ts.map +1 -0
- package/dist/gateway/buyer-process.js +101 -0
- package/dist/gateway/buyer-process.js.map +1 -0
- package/dist/gateway/buyer-process.test.d.ts +2 -0
- package/dist/gateway/buyer-process.test.d.ts.map +1 -0
- package/dist/gateway/buyer-process.test.js +112 -0
- package/dist/gateway/buyer-process.test.js.map +1 -0
- package/dist/gateway/chat/routes.d.ts +45 -0
- package/dist/gateway/chat/routes.d.ts.map +1 -0
- package/dist/gateway/chat/routes.js +439 -0
- package/dist/gateway/chat/routes.js.map +1 -0
- package/dist/gateway/chat/routes.test.d.ts +2 -0
- package/dist/gateway/chat/routes.test.d.ts.map +1 -0
- package/dist/gateway/chat/routes.test.js +304 -0
- package/dist/gateway/chat/routes.test.js.map +1 -0
- package/dist/gateway/chat/tools.d.ts +35 -0
- package/dist/gateway/chat/tools.d.ts.map +1 -0
- package/dist/gateway/chat/tools.js +347 -0
- package/dist/gateway/chat/tools.js.map +1 -0
- package/dist/gateway/chat/tools.test.d.ts +2 -0
- package/dist/gateway/chat/tools.test.d.ts.map +1 -0
- package/dist/gateway/chat/tools.test.js +136 -0
- package/dist/gateway/chat/tools.test.js.map +1 -0
- package/dist/gateway/console-api/access.d.ts +52 -0
- package/dist/gateway/console-api/access.d.ts.map +1 -0
- package/dist/gateway/console-api/access.js +171 -0
- package/dist/gateway/console-api/access.js.map +1 -0
- package/dist/gateway/console-api/deps.d.ts +52 -0
- package/dist/gateway/console-api/deps.d.ts.map +1 -0
- package/dist/gateway/console-api/deps.js +2 -0
- package/dist/gateway/console-api/deps.js.map +1 -0
- package/dist/gateway/console-api/handlers/admin-tokens.d.ts +8 -0
- package/dist/gateway/console-api/handlers/admin-tokens.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/admin-tokens.js +48 -0
- package/dist/gateway/console-api/handlers/admin-tokens.js.map +1 -0
- package/dist/gateway/console-api/handlers/audit.d.ts +8 -0
- package/dist/gateway/console-api/handlers/audit.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/audit.js +19 -0
- package/dist/gateway/console-api/handlers/audit.js.map +1 -0
- package/dist/gateway/console-api/handlers/audit.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/audit.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/audit.test.js +241 -0
- package/dist/gateway/console-api/handlers/audit.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/data-settings.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/data-settings.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/data-settings.test.js +264 -0
- package/dist/gateway/console-api/handlers/data-settings.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/index.d.ts +4 -0
- package/dist/gateway/console-api/handlers/index.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/index.js +24 -0
- package/dist/gateway/console-api/handlers/index.js.map +1 -0
- package/dist/gateway/console-api/handlers/keys.d.ts +13 -0
- package/dist/gateway/console-api/handlers/keys.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/keys.js +128 -0
- package/dist/gateway/console-api/handlers/keys.js.map +1 -0
- package/dist/gateway/console-api/handlers/keys.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/keys.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/keys.test.js +166 -0
- package/dist/gateway/console-api/handlers/keys.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/network-buyer.d.ts +22 -0
- package/dist/gateway/console-api/handlers/network-buyer.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/network-buyer.js +39 -0
- package/dist/gateway/console-api/handlers/network-buyer.js.map +1 -0
- package/dist/gateway/console-api/handlers/network-mapping.d.ts +33 -0
- package/dist/gateway/console-api/handlers/network-mapping.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/network-mapping.js +219 -0
- package/dist/gateway/console-api/handlers/network-mapping.js.map +1 -0
- package/dist/gateway/console-api/handlers/network-test-helpers.d.ts +35 -0
- package/dist/gateway/console-api/handlers/network-test-helpers.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/network-test-helpers.js +121 -0
- package/dist/gateway/console-api/handlers/network-test-helpers.js.map +1 -0
- package/dist/gateway/console-api/handlers/network.d.ts +15 -0
- package/dist/gateway/console-api/handlers/network.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/network.js +57 -0
- package/dist/gateway/console-api/handlers/network.js.map +1 -0
- package/dist/gateway/console-api/handlers/network.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/network.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/network.test.js +383 -0
- package/dist/gateway/console-api/handlers/network.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/org.d.ts +10 -0
- package/dist/gateway/console-api/handlers/org.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/org.js +150 -0
- package/dist/gateway/console-api/handlers/org.js.map +1 -0
- package/dist/gateway/console-api/handlers/peer-lists.d.ts +5 -0
- package/dist/gateway/console-api/handlers/peer-lists.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/peer-lists.js +43 -0
- package/dist/gateway/console-api/handlers/peer-lists.js.map +1 -0
- package/dist/gateway/console-api/handlers/presets.d.ts +9 -0
- package/dist/gateway/console-api/handlers/presets.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/presets.js +79 -0
- package/dist/gateway/console-api/handlers/presets.js.map +1 -0
- package/dist/gateway/console-api/handlers/routing.d.ts +5 -0
- package/dist/gateway/console-api/handlers/routing.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/routing.js +20 -0
- package/dist/gateway/console-api/handlers/routing.js.map +1 -0
- package/dist/gateway/console-api/handlers/settings.d.ts +10 -0
- package/dist/gateway/console-api/handlers/settings.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/settings.js +38 -0
- package/dist/gateway/console-api/handlers/settings.js.map +1 -0
- package/dist/gateway/console-api/handlers/status.d.ts +9 -0
- package/dist/gateway/console-api/handlers/status.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/status.js +47 -0
- package/dist/gateway/console-api/handlers/status.js.map +1 -0
- package/dist/gateway/console-api/handlers/status.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/status.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/status.test.js +82 -0
- package/dist/gateway/console-api/handlers/status.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/usage.d.ts +10 -0
- package/dist/gateway/console-api/handlers/usage.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/usage.js +68 -0
- package/dist/gateway/console-api/handlers/usage.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-card-link.d.ts +29 -0
- package/dist/gateway/console-api/handlers/wallet-card-link.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-card-link.js +46 -0
- package/dist/gateway/console-api/handlers/wallet-card-link.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-chain.d.ts +26 -0
- package/dist/gateway/console-api/handlers/wallet-chain.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-chain.js +80 -0
- package/dist/gateway/console-api/handlers/wallet-chain.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-mapping.d.ts +45 -0
- package/dist/gateway/console-api/handlers/wallet-mapping.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-mapping.js +202 -0
- package/dist/gateway/console-api/handlers/wallet-mapping.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-operator.d.ts +41 -0
- package/dist/gateway/console-api/handlers/wallet-operator.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-operator.js +198 -0
- package/dist/gateway/console-api/handlers/wallet-operator.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-operator.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/wallet-operator.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet-operator.test.js +195 -0
- package/dist/gateway/console-api/handlers/wallet-operator.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet.d.ts +61 -0
- package/dist/gateway/console-api/handlers/wallet.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet.js +221 -0
- package/dist/gateway/console-api/handlers/wallet.js.map +1 -0
- package/dist/gateway/console-api/handlers/wallet.test.d.ts +2 -0
- package/dist/gateway/console-api/handlers/wallet.test.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/wallet.test.js +581 -0
- package/dist/gateway/console-api/handlers/wallet.test.js.map +1 -0
- package/dist/gateway/console-api/handlers/workspaces.d.ts +12 -0
- package/dist/gateway/console-api/handlers/workspaces.d.ts.map +1 -0
- package/dist/gateway/console-api/handlers/workspaces.js +96 -0
- package/dist/gateway/console-api/handlers/workspaces.js.map +1 -0
- package/dist/gateway/console-api/operator-types.d.ts +68 -0
- package/dist/gateway/console-api/operator-types.d.ts.map +1 -0
- package/dist/gateway/console-api/operator-types.js +21 -0
- package/dist/gateway/console-api/operator-types.js.map +1 -0
- package/dist/gateway/console-api/router.d.ts +97 -0
- package/dist/gateway/console-api/router.d.ts.map +1 -0
- package/dist/gateway/console-api/router.js +69 -0
- package/dist/gateway/console-api/router.js.map +1 -0
- package/dist/gateway/console-api/routes.test.d.ts +2 -0
- package/dist/gateway/console-api/routes.test.d.ts.map +1 -0
- package/dist/gateway/console-api/routes.test.js +331 -0
- package/dist/gateway/console-api/routes.test.js.map +1 -0
- package/dist/gateway/console-api/serialize.d.ts +33 -0
- package/dist/gateway/console-api/serialize.d.ts.map +1 -0
- package/dist/gateway/console-api/serialize.js +179 -0
- package/dist/gateway/console-api/serialize.js.map +1 -0
- package/dist/gateway/console-api/server.d.ts +38 -0
- package/dist/gateway/console-api/server.d.ts.map +1 -0
- package/dist/gateway/console-api/server.js +308 -0
- package/dist/gateway/console-api/server.js.map +1 -0
- package/dist/gateway/console-api/server.test.d.ts +2 -0
- package/dist/gateway/console-api/server.test.d.ts.map +1 -0
- package/dist/gateway/console-api/server.test.js +149 -0
- package/dist/gateway/console-api/server.test.js.map +1 -0
- package/dist/gateway/console-api/test-support.d.ts +59 -0
- package/dist/gateway/console-api/test-support.d.ts.map +1 -0
- package/dist/gateway/console-api/test-support.js +120 -0
- package/dist/gateway/console-api/test-support.js.map +1 -0
- package/dist/gateway/console-api/types.d.ts +779 -0
- package/dist/gateway/console-api/types.d.ts.map +1 -0
- package/dist/gateway/console-api/types.js +6 -0
- package/dist/gateway/console-api/types.js.map +1 -0
- package/dist/gateway/console-location.d.ts +21 -0
- package/dist/gateway/console-location.d.ts.map +1 -0
- package/dist/gateway/console-location.js +41 -0
- package/dist/gateway/console-location.js.map +1 -0
- package/dist/gateway/console-recovery.d.ts +34 -0
- package/dist/gateway/console-recovery.d.ts.map +1 -0
- package/dist/gateway/console-recovery.js +94 -0
- package/dist/gateway/console-recovery.js.map +1 -0
- package/dist/gateway/console-recovery.test.d.ts +2 -0
- package/dist/gateway/console-recovery.test.d.ts.map +1 -0
- package/dist/gateway/console-recovery.test.js +106 -0
- package/dist/gateway/console-recovery.test.js.map +1 -0
- package/dist/gateway/console.d.ts +18 -0
- package/dist/gateway/console.d.ts.map +1 -0
- package/dist/gateway/console.js +101 -0
- package/dist/gateway/console.js.map +1 -0
- package/dist/gateway/console.test.d.ts +2 -0
- package/dist/gateway/console.test.d.ts.map +1 -0
- package/dist/gateway/console.test.js +165 -0
- package/dist/gateway/console.test.js.map +1 -0
- package/dist/gateway/errors.d.ts +3 -0
- package/dist/gateway/errors.d.ts.map +1 -0
- package/dist/gateway/errors.js +5 -0
- package/dist/gateway/errors.js.map +1 -0
- package/dist/gateway/exposure.d.ts +33 -0
- package/dist/gateway/exposure.d.ts.map +1 -0
- package/dist/gateway/exposure.js +146 -0
- package/dist/gateway/exposure.js.map +1 -0
- package/dist/gateway/exposure.test.d.ts +2 -0
- package/dist/gateway/exposure.test.d.ts.map +1 -0
- package/dist/gateway/exposure.test.js +93 -0
- package/dist/gateway/exposure.test.js.map +1 -0
- package/dist/gateway/gateway-policy.test.d.ts +2 -0
- package/dist/gateway/gateway-policy.test.d.ts.map +1 -0
- package/dist/gateway/gateway-policy.test.js +404 -0
- package/dist/gateway/gateway-policy.test.js.map +1 -0
- package/dist/gateway/gateway.test.js +47 -25
- package/dist/gateway/gateway.test.js.map +1 -1
- package/dist/gateway/keys.d.ts +2 -0
- package/dist/gateway/keys.d.ts.map +1 -1
- package/dist/gateway/keys.js +2 -0
- package/dist/gateway/keys.js.map +1 -1
- package/dist/gateway/limits.d.ts +32 -8
- package/dist/gateway/limits.d.ts.map +1 -1
- package/dist/gateway/limits.js +27 -11
- package/dist/gateway/limits.js.map +1 -1
- package/dist/gateway/observability.d.ts +51 -0
- package/dist/gateway/observability.d.ts.map +1 -0
- package/dist/gateway/observability.js +136 -0
- package/dist/gateway/observability.js.map +1 -0
- package/dist/gateway/policy-resolver.d.ts +73 -0
- package/dist/gateway/policy-resolver.d.ts.map +1 -0
- package/dist/gateway/policy-resolver.js +142 -0
- package/dist/gateway/policy-resolver.js.map +1 -0
- package/dist/gateway/policy-resolver.test.d.ts +2 -0
- package/dist/gateway/policy-resolver.test.d.ts.map +1 -0
- package/dist/gateway/policy-resolver.test.js +273 -0
- package/dist/gateway/policy-resolver.test.js.map +1 -0
- package/dist/gateway/request-errors.test.d.ts +2 -0
- package/dist/gateway/request-errors.test.d.ts.map +1 -0
- package/dist/gateway/request-errors.test.js +108 -0
- package/dist/gateway/request-errors.test.js.map +1 -0
- package/dist/gateway/request-shaping.d.ts +25 -0
- package/dist/gateway/request-shaping.d.ts.map +1 -0
- package/dist/gateway/request-shaping.js +66 -0
- package/dist/gateway/request-shaping.js.map +1 -0
- package/dist/gateway/response-usage.d.ts +35 -0
- package/dist/gateway/response-usage.d.ts.map +1 -0
- package/dist/gateway/response-usage.js +167 -0
- package/dist/gateway/response-usage.js.map +1 -0
- package/dist/gateway/response-usage.test.d.ts +2 -0
- package/dist/gateway/response-usage.test.d.ts.map +1 -0
- package/dist/gateway/response-usage.test.js +78 -0
- package/dist/gateway/response-usage.test.js.map +1 -0
- package/dist/gateway/runtime.d.ts +25 -0
- package/dist/gateway/runtime.d.ts.map +1 -1
- package/dist/gateway/runtime.js +39 -19
- package/dist/gateway/runtime.js.map +1 -1
- package/dist/gateway/server.d.ts +68 -2
- package/dist/gateway/server.d.ts.map +1 -1
- package/dist/gateway/server.js +532 -116
- package/dist/gateway/server.js.map +1 -1
- package/dist/gateway/services/audit.d.ts +16 -0
- package/dist/gateway/services/audit.d.ts.map +1 -0
- package/dist/gateway/services/audit.js +18 -0
- package/dist/gateway/services/audit.js.map +1 -0
- package/dist/gateway/services/context.d.ts +66 -0
- package/dist/gateway/services/context.d.ts.map +1 -0
- package/dist/gateway/services/context.js +52 -0
- package/dist/gateway/services/context.js.map +1 -0
- package/dist/gateway/services/keys.d.ts +78 -0
- package/dist/gateway/services/keys.d.ts.map +1 -0
- package/dist/gateway/services/keys.js +232 -0
- package/dist/gateway/services/keys.js.map +1 -0
- package/dist/gateway/services/members.d.ts +72 -0
- package/dist/gateway/services/members.d.ts.map +1 -0
- package/dist/gateway/services/members.js +161 -0
- package/dist/gateway/services/members.js.map +1 -0
- package/dist/gateway/services/network.d.ts +36 -0
- package/dist/gateway/services/network.d.ts.map +1 -0
- package/dist/gateway/services/network.js +147 -0
- package/dist/gateway/services/network.js.map +1 -0
- package/dist/gateway/services/operator.d.ts +98 -0
- package/dist/gateway/services/operator.d.ts.map +1 -0
- package/dist/gateway/services/operator.js +170 -0
- package/dist/gateway/services/operator.js.map +1 -0
- package/dist/gateway/services/operator.test.d.ts +2 -0
- package/dist/gateway/services/operator.test.d.ts.map +1 -0
- package/dist/gateway/services/operator.test.js +184 -0
- package/dist/gateway/services/operator.test.js.map +1 -0
- package/dist/gateway/services/peer-lists.d.ts +20 -0
- package/dist/gateway/services/peer-lists.d.ts.map +1 -0
- package/dist/gateway/services/peer-lists.js +134 -0
- package/dist/gateway/services/peer-lists.js.map +1 -0
- package/dist/gateway/services/presets.d.ts +34 -0
- package/dist/gateway/services/presets.d.ts.map +1 -0
- package/dist/gateway/services/presets.js +134 -0
- package/dist/gateway/services/presets.js.map +1 -0
- package/dist/gateway/services/routing.d.ts +13 -0
- package/dist/gateway/services/routing.d.ts.map +1 -0
- package/dist/gateway/services/routing.js +18 -0
- package/dist/gateway/services/routing.js.map +1 -0
- package/dist/gateway/services/services.test.d.ts +2 -0
- package/dist/gateway/services/services.test.d.ts.map +1 -0
- package/dist/gateway/services/services.test.js +476 -0
- package/dist/gateway/services/services.test.js.map +1 -0
- package/dist/gateway/services/settings.d.ts +68 -0
- package/dist/gateway/services/settings.d.ts.map +1 -0
- package/dist/gateway/services/settings.js +580 -0
- package/dist/gateway/services/settings.js.map +1 -0
- package/dist/gateway/services/tokens.d.ts +29 -0
- package/dist/gateway/services/tokens.d.ts.map +1 -0
- package/dist/gateway/services/tokens.js +48 -0
- package/dist/gateway/services/tokens.js.map +1 -0
- package/dist/gateway/services/usage.d.ts +55 -0
- package/dist/gateway/services/usage.d.ts.map +1 -0
- package/dist/gateway/services/usage.js +225 -0
- package/dist/gateway/services/usage.js.map +1 -0
- package/dist/gateway/services/wallet-address-env.test.d.ts +2 -0
- package/dist/gateway/services/wallet-address-env.test.d.ts.map +1 -0
- package/dist/gateway/services/wallet-address-env.test.js +119 -0
- package/dist/gateway/services/wallet-address-env.test.js.map +1 -0
- package/dist/gateway/services/wallet-address.d.ts +40 -0
- package/dist/gateway/services/wallet-address.d.ts.map +1 -0
- package/dist/gateway/services/wallet-address.js +116 -0
- package/dist/gateway/services/wallet-address.js.map +1 -0
- package/dist/gateway/services/wallet-address.test.d.ts +2 -0
- package/dist/gateway/services/wallet-address.test.d.ts.map +1 -0
- package/dist/gateway/services/wallet-address.test.js +84 -0
- package/dist/gateway/services/wallet-address.test.js.map +1 -0
- package/dist/gateway/services/workspaces.d.ts +75 -0
- package/dist/gateway/services/workspaces.d.ts.map +1 -0
- package/dist/gateway/services/workspaces.js +228 -0
- package/dist/gateway/services/workspaces.js.map +1 -0
- package/dist/gateway/spend-durability.test.d.ts +2 -0
- package/dist/gateway/spend-durability.test.d.ts.map +1 -0
- package/dist/gateway/spend-durability.test.js +330 -0
- package/dist/gateway/spend-durability.test.js.map +1 -0
- package/dist/gateway/spend-feed.d.ts +11 -1
- package/dist/gateway/spend-feed.d.ts.map +1 -1
- package/dist/gateway/spend-feed.js +17 -4
- package/dist/gateway/spend-feed.js.map +1 -1
- package/dist/gateway/spend-feed.test.d.ts +2 -0
- package/dist/gateway/spend-feed.test.d.ts.map +1 -0
- package/dist/gateway/spend-feed.test.js +34 -0
- package/dist/gateway/spend-feed.test.js.map +1 -0
- package/dist/gateway/store-data.test.d.ts +2 -0
- package/dist/gateway/store-data.test.d.ts.map +1 -0
- package/dist/gateway/store-data.test.js +346 -0
- package/dist/gateway/store-data.test.js.map +1 -0
- package/dist/gateway/store-migrations.d.ts +6 -0
- package/dist/gateway/store-migrations.d.ts.map +1 -0
- package/dist/gateway/store-migrations.js +301 -0
- package/dist/gateway/store-migrations.js.map +1 -0
- package/dist/gateway/store.d.ts +595 -10
- package/dist/gateway/store.d.ts.map +1 -1
- package/dist/gateway/store.js +1242 -120
- package/dist/gateway/store.js.map +1 -1
- package/dist/gateway/store.test.d.ts +2 -0
- package/dist/gateway/store.test.d.ts.map +1 -0
- package/dist/gateway/store.test.js +185 -0
- package/dist/gateway/store.test.js.map +1 -0
- package/dist/proxy/buyer-chain-reader.d.ts +68 -0
- package/dist/proxy/buyer-chain-reader.d.ts.map +1 -0
- package/dist/proxy/buyer-chain-reader.js +152 -0
- package/dist/proxy/buyer-chain-reader.js.map +1 -0
- package/dist/proxy/buyer-chain-reader.test.d.ts +2 -0
- package/dist/proxy/buyer-chain-reader.test.d.ts.map +1 -0
- package/dist/proxy/buyer-chain-reader.test.js +102 -0
- package/dist/proxy/buyer-chain-reader.test.js.map +1 -0
- package/dist/proxy/buyer-proxy.d.ts +169 -3
- package/dist/proxy/buyer-proxy.d.ts.map +1 -1
- package/dist/proxy/buyer-proxy.js +873 -117
- package/dist/proxy/buyer-proxy.js.map +1 -1
- package/dist/proxy/buyer-proxy.test.js +31 -0
- package/dist/proxy/buyer-proxy.test.js.map +1 -1
- package/dist/proxy/chain-read-cache.d.ts +47 -0
- package/dist/proxy/chain-read-cache.d.ts.map +1 -0
- package/dist/proxy/chain-read-cache.js +110 -0
- package/dist/proxy/chain-read-cache.js.map +1 -0
- package/dist/proxy/chain-read-cache.test.d.ts +2 -0
- package/dist/proxy/chain-read-cache.test.d.ts.map +1 -0
- package/dist/proxy/chain-read-cache.test.js +75 -0
- package/dist/proxy/chain-read-cache.test.js.map +1 -0
- package/dist/proxy/chain-rpc-test-support.d.ts +31 -0
- package/dist/proxy/chain-rpc-test-support.d.ts.map +1 -0
- package/dist/proxy/chain-rpc-test-support.js +136 -0
- package/dist/proxy/chain-rpc-test-support.js.map +1 -0
- package/dist/proxy/chain-rpc.d.ts +121 -0
- package/dist/proxy/chain-rpc.d.ts.map +1 -0
- package/dist/proxy/chain-rpc.js +420 -0
- package/dist/proxy/chain-rpc.js.map +1 -0
- package/dist/proxy/chain-rpc.test.d.ts +2 -0
- package/dist/proxy/chain-rpc.test.d.ts.map +1 -0
- package/dist/proxy/chain-rpc.test.js +180 -0
- package/dist/proxy/chain-rpc.test.js.map +1 -0
- package/dist/proxy/deposit-watch-hub.d.ts +47 -0
- package/dist/proxy/deposit-watch-hub.d.ts.map +1 -0
- package/dist/proxy/deposit-watch-hub.js +111 -0
- package/dist/proxy/deposit-watch-hub.js.map +1 -0
- package/dist/proxy/deposit-watch-hub.test.d.ts +2 -0
- package/dist/proxy/deposit-watch-hub.test.d.ts.map +1 -0
- package/dist/proxy/deposit-watch-hub.test.js +133 -0
- package/dist/proxy/deposit-watch-hub.test.js.map +1 -0
- package/dist/proxy/deposit-watcher.d.ts +44 -4
- package/dist/proxy/deposit-watcher.d.ts.map +1 -1
- package/dist/proxy/deposit-watcher.js +76 -11
- package/dist/proxy/deposit-watcher.js.map +1 -1
- package/dist/proxy/deposit-watcher.test.js +54 -1
- package/dist/proxy/deposit-watcher.test.js.map +1 -1
- package/dist/proxy/gateway-policy.test.d.ts +2 -0
- package/dist/proxy/gateway-policy.test.d.ts.map +1 -0
- package/dist/proxy/gateway-policy.test.js +576 -0
- package/dist/proxy/gateway-policy.test.js.map +1 -0
- package/dist/proxy/network-models.d.ts +2 -0
- package/dist/proxy/network-models.d.ts.map +1 -1
- package/dist/proxy/network-models.js +3 -1
- package/dist/proxy/network-models.js.map +1 -1
- package/dist/proxy/route-policy.d.ts +97 -0
- package/dist/proxy/route-policy.d.ts.map +1 -0
- package/dist/proxy/route-policy.js +230 -0
- package/dist/proxy/route-policy.js.map +1 -0
- package/dist/proxy/route-policy.test.d.ts +2 -0
- package/dist/proxy/route-policy.test.d.ts.map +1 -0
- package/dist/proxy/route-policy.test.js +120 -0
- package/dist/proxy/route-policy.test.js.map +1 -0
- package/dist/proxy/spend-attribution.d.ts +41 -10
- package/dist/proxy/spend-attribution.d.ts.map +1 -1
- package/dist/proxy/spend-attribution.js +133 -37
- package/dist/proxy/spend-attribution.js.map +1 -1
- package/dist/proxy/tee-control.d.ts +3 -1
- package/dist/proxy/tee-control.d.ts.map +1 -1
- package/dist/proxy/tee-control.js +5 -3
- package/dist/proxy/tee-control.js.map +1 -1
- package/dist/proxy/telemetry.d.ts +2 -1
- package/dist/proxy/telemetry.d.ts.map +1 -1
- package/dist/proxy/telemetry.js +10 -5
- package/dist/proxy/telemetry.js.map +1 -1
- package/dist/routing-policy/policy.d.ts +149 -0
- package/dist/routing-policy/policy.d.ts.map +1 -0
- package/dist/routing-policy/policy.js +450 -0
- package/dist/routing-policy/policy.js.map +1 -0
- package/dist/routing-policy/policy.test.d.ts +2 -0
- package/dist/routing-policy/policy.test.d.ts.map +1 -0
- package/dist/routing-policy/policy.test.js +134 -0
- package/dist/routing-policy/policy.test.js.map +1 -0
- package/package.json +15 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/proxy/telemetry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../src/proxy/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A routing policy says which sellers may serve a request and how the
|
|
3
|
+
* eligible ones are ranked. Policies are set at several levels (gateway
|
|
4
|
+
* default, workspace, member, API key, preset) and combined with
|
|
5
|
+
* `narrowPolicy`: a lower level can only restrict what the level above it
|
|
6
|
+
* allows, never widen it.
|
|
7
|
+
*
|
|
8
|
+
* The gateway resolves the effective policy for each request and hands it to
|
|
9
|
+
* the buyer in `ROUTING_POLICY_HEADER`, authenticated by
|
|
10
|
+
* `GATEWAY_CONTROL_HEADER`. The buyer narrows it under its own config (hard
|
|
11
|
+
* limits, plus routing preferences for automatic routing; see
|
|
12
|
+
* `proxy/route-policy.ts`), so a request can never escape the buyer's
|
|
13
|
+
* configuration either.
|
|
14
|
+
*/
|
|
15
|
+
export declare const ROUTING_POLICY_HEADER = "x-antseed-routing-policy";
|
|
16
|
+
/** Shared secret proving the routing policy came from the local gateway. */
|
|
17
|
+
export declare const GATEWAY_CONTROL_HEADER = "x-antseed-gateway-auth";
|
|
18
|
+
/** File, relative to the data dir, holding the gateway↔buyer control secret. */
|
|
19
|
+
export declare const GATEWAY_CONTROL_SECRET_FILE = "gateway/buyer-control.secret";
|
|
20
|
+
/** Overrides the secret file, e.g. when the buyer and gateway run in separate containers. */
|
|
21
|
+
export declare const GATEWAY_CONTROL_SECRET_ENV = "ANTSEED_GATEWAY_CONTROL_SECRET";
|
|
22
|
+
export type RoutingSort = 'balanced' | 'price' | 'latency' | 'trust';
|
|
23
|
+
export interface RoutingPolicy {
|
|
24
|
+
/** Only these sellers may serve. Undefined means any seller; an empty list means none. */
|
|
25
|
+
allowedPeerIds?: string[];
|
|
26
|
+
/** These sellers never serve. */
|
|
27
|
+
blockedPeerIds?: string[];
|
|
28
|
+
/**
|
|
29
|
+
* Saved peer lists (ids), by reference, so editing a list changes every
|
|
30
|
+
* policy that uses it. Allowed lists add their members to the allowed
|
|
31
|
+
* sellers (the allow list exists once either field is set); blocked lists
|
|
32
|
+
* add theirs to the blocked ones. The gateway expands them with
|
|
33
|
+
* `expandPeerLists` before routing; the buyer refuses policies that still
|
|
34
|
+
* carry them.
|
|
35
|
+
*/
|
|
36
|
+
allowedPeerLists?: string[];
|
|
37
|
+
blockedPeerLists?: string[];
|
|
38
|
+
/**
|
|
39
|
+
* Further allow specs a seller must also match, each read like
|
|
40
|
+
* `allowedPeerIds` ∪ `allowedPeerLists` (an AND of ORs). `narrowPolicy`
|
|
41
|
+
* produces them when it combines allow specs that reference peer lists, so
|
|
42
|
+
* a lower level adding a list can never widen the level above it.
|
|
43
|
+
* `expandPeerLists` intersects them into `allowedPeerIds`.
|
|
44
|
+
*/
|
|
45
|
+
allowedPeerGroups?: AllowGroup[];
|
|
46
|
+
/** Minimum trust score, 0–100. */
|
|
47
|
+
minTrustScore?: number;
|
|
48
|
+
/** Minimum reputation, 0–100. */
|
|
49
|
+
minReputation?: number;
|
|
50
|
+
/** Only sellers whose responses pass a verifier (e.g. TEE attestation). */
|
|
51
|
+
requireVerified?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Only sellers advertising the TEE verifier capability. A capability check,
|
|
54
|
+
* not a verification result, so it works whether or not this buyer runs
|
|
55
|
+
* verification.
|
|
56
|
+
*/
|
|
57
|
+
requireTee?: boolean;
|
|
58
|
+
/** Price caps; a seller over any cap is not eligible. */
|
|
59
|
+
maxInputUsdPerMillion?: number;
|
|
60
|
+
maxOutputUsdPerMillion?: number;
|
|
61
|
+
maxCachedInputUsdPerMillion?: number;
|
|
62
|
+
maxImageUsdPerImage?: number;
|
|
63
|
+
/** Rank free sellers first among the eligible ones. */
|
|
64
|
+
preferFreePeers?: boolean;
|
|
65
|
+
/** How eligible sellers are ordered. Defaults to 'balanced'. */
|
|
66
|
+
sort?: RoutingSort;
|
|
67
|
+
/**
|
|
68
|
+
* Only these models (service ids, without a `peer@` prefix), matched with
|
|
69
|
+
* `sameRoutingModel`. Undefined means any model.
|
|
70
|
+
*/
|
|
71
|
+
allowedModels?: string[];
|
|
72
|
+
/**
|
|
73
|
+
* Ordered sellers to try first per model (a fallback chain). Sellers that
|
|
74
|
+
* the rest of the policy excludes are skipped; after the chain the normal
|
|
75
|
+
* ranking continues unless `strict` is set on the entry. Keys are matched
|
|
76
|
+
* with `sameRoutingModel`.
|
|
77
|
+
*/
|
|
78
|
+
modelRoutes?: Record<string, ModelRoute>;
|
|
79
|
+
}
|
|
80
|
+
/** One allow spec: a seller matches when it is in `peerIds` or in any of `peerLists`. */
|
|
81
|
+
export interface AllowGroup {
|
|
82
|
+
peerIds?: string[];
|
|
83
|
+
peerLists?: string[];
|
|
84
|
+
}
|
|
85
|
+
export interface ModelRoute {
|
|
86
|
+
peerIds: string[];
|
|
87
|
+
/** Only the listed sellers may serve this model. */
|
|
88
|
+
strict?: boolean;
|
|
89
|
+
}
|
|
90
|
+
/** The service part of a model id: `peer@model` → `model`. */
|
|
91
|
+
export declare function modelServiceId(model: string): string;
|
|
92
|
+
/**
|
|
93
|
+
* The key every policy model comparison uses (gateway `allowedModels`, the
|
|
94
|
+
* buyer's allow check, per-model routes), the same canonical key the buyer
|
|
95
|
+
* routes by: a pinned `peer@model` counts as its service, case and cosmetic
|
|
96
|
+
* variants (`GPT-5.6`, `gpt-56`, vendor paths, release dates) collapse.
|
|
97
|
+
*/
|
|
98
|
+
export declare function policyModelKey(model: string): string;
|
|
99
|
+
/** Whether two model ids name the same model for routing-policy purposes. */
|
|
100
|
+
export declare function sameRoutingModel(a: string, b: string): boolean;
|
|
101
|
+
/** The policy's route for a model, by exact key first, then by `sameRoutingModel`. */
|
|
102
|
+
export declare function findModelRoute(policy: RoutingPolicy | null | undefined, model: string | null | undefined): ModelRoute | null;
|
|
103
|
+
export declare function normalizePeerId(peerId: string): string;
|
|
104
|
+
/**
|
|
105
|
+
* Combines a parent policy with a child's. Restrictions accumulate (allow
|
|
106
|
+
* specs intersect as sets of sellers, peer lists included, block lists
|
|
107
|
+
* union, minimums take the higher value, caps the lower, `requireVerified`
|
|
108
|
+
* and `requireTee` are sticky); ranking
|
|
109
|
+
* preferences (`sort`, `preferFreePeers`, non-strict per-model routes) take
|
|
110
|
+
* the child's value when it sets one. A strict parent route stays strict and
|
|
111
|
+
* can only lose sellers.
|
|
112
|
+
*/
|
|
113
|
+
export declare function narrowPolicy(parent: RoutingPolicy, child: RoutingPolicy | null | undefined): RoutingPolicy;
|
|
114
|
+
export declare function normalizePolicy(policy: RoutingPolicy): RoutingPolicy;
|
|
115
|
+
/**
|
|
116
|
+
* Replaces peer list references with the lists' current members. A list that
|
|
117
|
+
* no longer exists contributes no sellers, so an allow list made only of
|
|
118
|
+
* deleted lists lets no seller serve (it never widens to "any seller").
|
|
119
|
+
* Expand each level before `narrowPolicy`, so allow lists intersect as sets
|
|
120
|
+
* of sellers rather than as list ids.
|
|
121
|
+
*/
|
|
122
|
+
export declare function expandPeerLists(policy: RoutingPolicy, listPeers: (listId: string) => readonly string[] | null): RoutingPolicy;
|
|
123
|
+
/**
|
|
124
|
+
* The policy without settings that change nothing: the default sort, flags
|
|
125
|
+
* set to false, an empty route map. A policy that is empty after this routes
|
|
126
|
+
* exactly like no policy at all, so the gateway does not send it.
|
|
127
|
+
*/
|
|
128
|
+
export declare function meaningfulPolicy(policy: RoutingPolicy): RoutingPolicy;
|
|
129
|
+
/**
|
|
130
|
+
* Fields where `sent` asked for more than `effective` (the policy after
|
|
131
|
+
* narrowing `sent` under every level above it) allows: sellers or models the
|
|
132
|
+
* levels above do not allow, a looser minimum or price cap, a requirement
|
|
133
|
+
* turned off, a model route that lost sellers. Both must have their peer
|
|
134
|
+
* lists expanded. Settings `sent` leaves out never count.
|
|
135
|
+
*/
|
|
136
|
+
export declare function narrowedFields(sent: RoutingPolicy, effective: RoutingPolicy): string[];
|
|
137
|
+
/** Whether the policy lets this seller serve at all (allow and block lists only). */
|
|
138
|
+
export declare function policyAllowsPeer(policy: RoutingPolicy, peerId: string): boolean;
|
|
139
|
+
/**
|
|
140
|
+
* The `allowedModels` check shared by the gateway and the buyer. A pinned
|
|
141
|
+
* `peer@model` is judged by its service; with an allow list, no model at all
|
|
142
|
+
* is refused rather than routed to anything.
|
|
143
|
+
*/
|
|
144
|
+
export declare function policyAllowsModel(policy: RoutingPolicy | null | undefined, model: string | null | undefined): boolean;
|
|
145
|
+
export declare function encodePolicyHeader(policy: RoutingPolicy): string;
|
|
146
|
+
/** Returns null for a malformed header; callers must then reject the request rather than route unrestricted. */
|
|
147
|
+
export declare function decodePolicyHeader(value: string): RoutingPolicy | null;
|
|
148
|
+
export declare function isRoutingPolicy(value: unknown): value is RoutingPolicy;
|
|
149
|
+
//# sourceMappingURL=policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/routing-policy/policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAIH,eAAO,MAAM,qBAAqB,6BAA6B,CAAA;AAC/D,4EAA4E;AAC5E,eAAO,MAAM,sBAAsB,2BAA2B,CAAA;AAC9D,gFAAgF;AAChF,eAAO,MAAM,2BAA2B,iCAAiC,CAAA;AACzE,6FAA6F;AAC7F,eAAO,MAAM,0BAA0B,mCAAmC,CAAA;AAE1E,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAA;AAEpE,MAAM,WAAW,aAAa;IAC5B,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB,iCAAiC;IACjC,cAAc,CAAC,EAAE,MAAM,EAAE,CAAA;IACzB;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC3B;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAA;IAChC,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,iCAAiC;IACjC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;OAIG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,yDAAyD;IACzD,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAA;IAC/B,2BAA2B,CAAC,EAAE,MAAM,CAAA;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,uDAAuD;IACvD,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,gEAAgE;IAChE,IAAI,CAAC,EAAE,WAAW,CAAA;IAClB;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;IACxB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CACzC;AAED,yFAAyF;AACzF,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,oDAAoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAED,8DAA8D;AAC9D,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGpD;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAG9D;AAED,sFAAsF;AACtF,wBAAgB,cAAc,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,IAAI,CAU5H;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEtD;AAgJD;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,GAAG,aAAa,CAsB1G;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAwBpE;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,aAAa,CAc7H;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,aAAa,CAQrE;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,GAAG,MAAM,EAAE,CA8BtF;AAED,qFAAqF;AACrF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAO/E;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAIrH;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEhE;AAED,gHAAgH;AAChH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAUtE;AAUD,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CA+BtE"}
|
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A routing policy says which sellers may serve a request and how the
|
|
3
|
+
* eligible ones are ranked. Policies are set at several levels (gateway
|
|
4
|
+
* default, workspace, member, API key, preset) and combined with
|
|
5
|
+
* `narrowPolicy`: a lower level can only restrict what the level above it
|
|
6
|
+
* allows, never widen it.
|
|
7
|
+
*
|
|
8
|
+
* The gateway resolves the effective policy for each request and hands it to
|
|
9
|
+
* the buyer in `ROUTING_POLICY_HEADER`, authenticated by
|
|
10
|
+
* `GATEWAY_CONTROL_HEADER`. The buyer narrows it under its own config (hard
|
|
11
|
+
* limits, plus routing preferences for automatic routing; see
|
|
12
|
+
* `proxy/route-policy.ts`), so a request can never escape the buyer's
|
|
13
|
+
* configuration either.
|
|
14
|
+
*/
|
|
15
|
+
import { canonicalModelKey } from '@antseed/node/model-identity';
|
|
16
|
+
export const ROUTING_POLICY_HEADER = 'x-antseed-routing-policy';
|
|
17
|
+
/** Shared secret proving the routing policy came from the local gateway. */
|
|
18
|
+
export const GATEWAY_CONTROL_HEADER = 'x-antseed-gateway-auth';
|
|
19
|
+
/** File, relative to the data dir, holding the gateway↔buyer control secret. */
|
|
20
|
+
export const GATEWAY_CONTROL_SECRET_FILE = 'gateway/buyer-control.secret';
|
|
21
|
+
/** Overrides the secret file, e.g. when the buyer and gateway run in separate containers. */
|
|
22
|
+
export const GATEWAY_CONTROL_SECRET_ENV = 'ANTSEED_GATEWAY_CONTROL_SECRET';
|
|
23
|
+
/** The service part of a model id: `peer@model` → `model`. */
|
|
24
|
+
export function modelServiceId(model) {
|
|
25
|
+
const trimmed = model.trim();
|
|
26
|
+
const at = trimmed.indexOf('@');
|
|
27
|
+
return at > 0 ? trimmed.slice(at + 1) : trimmed;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* The key every policy model comparison uses (gateway `allowedModels`, the
|
|
31
|
+
* buyer's allow check, per-model routes), the same canonical key the buyer
|
|
32
|
+
* routes by: a pinned `peer@model` counts as its service, case and cosmetic
|
|
33
|
+
* variants (`GPT-5.6`, `gpt-56`, vendor paths, release dates) collapse.
|
|
34
|
+
*/
|
|
35
|
+
export function policyModelKey(model) {
|
|
36
|
+
const service = modelServiceId(model);
|
|
37
|
+
return canonicalModelKey(service) || service.toLowerCase();
|
|
38
|
+
}
|
|
39
|
+
/** Whether two model ids name the same model for routing-policy purposes. */
|
|
40
|
+
export function sameRoutingModel(a, b) {
|
|
41
|
+
const key = policyModelKey(a);
|
|
42
|
+
return key !== '' && key === policyModelKey(b);
|
|
43
|
+
}
|
|
44
|
+
/** The policy's route for a model, by exact key first, then by `sameRoutingModel`. */
|
|
45
|
+
export function findModelRoute(policy, model) {
|
|
46
|
+
if (!policy?.modelRoutes || !model)
|
|
47
|
+
return null;
|
|
48
|
+
const exact = policy.modelRoutes[model];
|
|
49
|
+
if (exact)
|
|
50
|
+
return exact;
|
|
51
|
+
const wanted = policyModelKey(model);
|
|
52
|
+
if (!wanted)
|
|
53
|
+
return null;
|
|
54
|
+
for (const [key, route] of Object.entries(policy.modelRoutes)) {
|
|
55
|
+
if (policyModelKey(key) === wanted)
|
|
56
|
+
return route;
|
|
57
|
+
}
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
export function normalizePeerId(peerId) {
|
|
61
|
+
return peerId.trim().toLowerCase().replace(/^0x/, '');
|
|
62
|
+
}
|
|
63
|
+
function normalizeList(values) {
|
|
64
|
+
if (values === undefined)
|
|
65
|
+
return undefined;
|
|
66
|
+
return [...new Set(values.map(normalizePeerId).filter((value) => value.length > 0))];
|
|
67
|
+
}
|
|
68
|
+
function intersect(a, b) {
|
|
69
|
+
if (a === undefined)
|
|
70
|
+
return b;
|
|
71
|
+
if (b === undefined)
|
|
72
|
+
return a;
|
|
73
|
+
const right = new Set(b);
|
|
74
|
+
return a.filter((value) => right.has(value));
|
|
75
|
+
}
|
|
76
|
+
function union(a, b) {
|
|
77
|
+
if (a === undefined)
|
|
78
|
+
return b;
|
|
79
|
+
if (b === undefined)
|
|
80
|
+
return a;
|
|
81
|
+
return [...new Set([...a, ...b])];
|
|
82
|
+
}
|
|
83
|
+
function maxOf(a, b) {
|
|
84
|
+
if (a === undefined)
|
|
85
|
+
return b;
|
|
86
|
+
if (b === undefined)
|
|
87
|
+
return a;
|
|
88
|
+
return Math.max(a, b);
|
|
89
|
+
}
|
|
90
|
+
function minOf(a, b) {
|
|
91
|
+
if (a === undefined)
|
|
92
|
+
return b;
|
|
93
|
+
if (b === undefined)
|
|
94
|
+
return a;
|
|
95
|
+
return Math.min(a, b);
|
|
96
|
+
}
|
|
97
|
+
function normalizeListIds(values) {
|
|
98
|
+
if (values === undefined)
|
|
99
|
+
return undefined;
|
|
100
|
+
return [...new Set(values.map((value) => value.trim()).filter((value) => value.length > 0))];
|
|
101
|
+
}
|
|
102
|
+
function intersectModels(a, b) {
|
|
103
|
+
if (a === undefined)
|
|
104
|
+
return b;
|
|
105
|
+
if (b === undefined)
|
|
106
|
+
return a;
|
|
107
|
+
const right = new Set(b.map(policyModelKey));
|
|
108
|
+
return a.filter((model) => right.has(policyModelKey(model)));
|
|
109
|
+
}
|
|
110
|
+
function normalizeModels(values) {
|
|
111
|
+
if (values === undefined)
|
|
112
|
+
return undefined;
|
|
113
|
+
const seen = new Set();
|
|
114
|
+
const result = [];
|
|
115
|
+
for (const value of values) {
|
|
116
|
+
const model = value.trim();
|
|
117
|
+
const key = policyModelKey(model);
|
|
118
|
+
if (!model || seen.has(key))
|
|
119
|
+
continue;
|
|
120
|
+
seen.add(key);
|
|
121
|
+
result.push(model);
|
|
122
|
+
}
|
|
123
|
+
return result;
|
|
124
|
+
}
|
|
125
|
+
/** A policy's allow specs as groups that must all match; empty when any seller may serve. */
|
|
126
|
+
function allowGroupsOf(policy) {
|
|
127
|
+
const groups = (policy.allowedPeerGroups ?? []).map((group) => ({ peerIds: group.peerIds ?? [], peerLists: group.peerLists ?? [] }));
|
|
128
|
+
if (policy.allowedPeerIds !== undefined || policy.allowedPeerLists !== undefined) {
|
|
129
|
+
groups.unshift({ peerIds: policy.allowedPeerIds ?? [], peerLists: policy.allowedPeerLists ?? [] });
|
|
130
|
+
}
|
|
131
|
+
return groups;
|
|
132
|
+
}
|
|
133
|
+
function isSubset(a, b) {
|
|
134
|
+
const right = new Set(b);
|
|
135
|
+
return a.every((value) => right.has(value));
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Combines allow specs as one set per level: a seller must be allowed by
|
|
139
|
+
* every level (its ids or its lists). Groups without lists intersect at once;
|
|
140
|
+
* groups with lists stay separate until `expandPeerLists` knows their
|
|
141
|
+
* members. A group that contains another one adds nothing and is dropped.
|
|
142
|
+
*/
|
|
143
|
+
function combineAllowSpecs(groups) {
|
|
144
|
+
if (groups.length === 0)
|
|
145
|
+
return {};
|
|
146
|
+
let idsOnly;
|
|
147
|
+
const withLists = [];
|
|
148
|
+
for (const group of groups) {
|
|
149
|
+
if (group.peerLists.length === 0)
|
|
150
|
+
idsOnly = intersect(idsOnly, group.peerIds);
|
|
151
|
+
else
|
|
152
|
+
withLists.push(group);
|
|
153
|
+
}
|
|
154
|
+
const all = idsOnly === undefined ? withLists : [{ peerIds: idsOnly, peerLists: [] }, ...withLists];
|
|
155
|
+
const within = (a, b) => isSubset(a.peerIds, b.peerIds) && isSubset(a.peerLists, b.peerLists);
|
|
156
|
+
let kept = [];
|
|
157
|
+
for (const group of all) {
|
|
158
|
+
if (kept.some((other) => within(other, group)))
|
|
159
|
+
continue;
|
|
160
|
+
kept = [...kept.filter((other) => !within(group, other)), group];
|
|
161
|
+
}
|
|
162
|
+
const [first, ...rest] = kept;
|
|
163
|
+
const result = {};
|
|
164
|
+
if (first.peerIds.length > 0 || first.peerLists.length === 0)
|
|
165
|
+
result.allowedPeerIds = first.peerIds;
|
|
166
|
+
if (first.peerLists.length > 0)
|
|
167
|
+
result.allowedPeerLists = first.peerLists;
|
|
168
|
+
if (rest.length > 0) {
|
|
169
|
+
result.allowedPeerGroups = rest.map((group) => ({
|
|
170
|
+
...(group.peerIds.length > 0 ? { peerIds: group.peerIds } : {}),
|
|
171
|
+
peerLists: group.peerLists,
|
|
172
|
+
}));
|
|
173
|
+
}
|
|
174
|
+
return result;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* A child's route for a model under the parent's. Under a strict parent the
|
|
178
|
+
* result stays strict and may only name the parent's sellers (the child's
|
|
179
|
+
* order, or the parent's list when the child names none); otherwise the
|
|
180
|
+
* child's chain replaces the parent's.
|
|
181
|
+
*/
|
|
182
|
+
function narrowRoute(parent, child) {
|
|
183
|
+
if (!parent.strict)
|
|
184
|
+
return { peerIds: [...child.peerIds], ...(child.strict ? { strict: true } : {}) };
|
|
185
|
+
if (child.peerIds.length === 0)
|
|
186
|
+
return { peerIds: [...parent.peerIds], strict: true };
|
|
187
|
+
const allowed = new Set(parent.peerIds);
|
|
188
|
+
return { peerIds: child.peerIds.filter((peerId) => allowed.has(peerId)), strict: true };
|
|
189
|
+
}
|
|
190
|
+
/** Merges route maps by model (`policyModelKey`), keeping the first spelling of each key. */
|
|
191
|
+
function narrowModelRoutes(parent, child) {
|
|
192
|
+
if (!child)
|
|
193
|
+
return parent && Object.keys(parent).length > 0 ? parent : undefined;
|
|
194
|
+
const result = { ...(parent ?? {}) };
|
|
195
|
+
const keys = new Map(Object.keys(result).map((model) => [policyModelKey(model), model]));
|
|
196
|
+
for (const [model, route] of Object.entries(child)) {
|
|
197
|
+
const key = policyModelKey(model);
|
|
198
|
+
const existing = keys.get(key);
|
|
199
|
+
if (existing === undefined) {
|
|
200
|
+
keys.set(key, model);
|
|
201
|
+
result[model] = route;
|
|
202
|
+
}
|
|
203
|
+
else {
|
|
204
|
+
result[existing] = narrowRoute(result[existing], route);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
return Object.keys(result).length > 0 ? result : undefined;
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Combines a parent policy with a child's. Restrictions accumulate (allow
|
|
211
|
+
* specs intersect as sets of sellers, peer lists included, block lists
|
|
212
|
+
* union, minimums take the higher value, caps the lower, `requireVerified`
|
|
213
|
+
* and `requireTee` are sticky); ranking
|
|
214
|
+
* preferences (`sort`, `preferFreePeers`, non-strict per-model routes) take
|
|
215
|
+
* the child's value when it sets one. A strict parent route stays strict and
|
|
216
|
+
* can only lose sellers.
|
|
217
|
+
*/
|
|
218
|
+
export function narrowPolicy(parent, child) {
|
|
219
|
+
if (!child)
|
|
220
|
+
return normalizePolicy(parent);
|
|
221
|
+
const p = normalizePolicy(parent);
|
|
222
|
+
const c = normalizePolicy(child);
|
|
223
|
+
const result = {
|
|
224
|
+
...combineAllowSpecs([...allowGroupsOf(p), ...allowGroupsOf(c)]),
|
|
225
|
+
blockedPeerIds: union(p.blockedPeerIds, c.blockedPeerIds),
|
|
226
|
+
blockedPeerLists: union(p.blockedPeerLists, c.blockedPeerLists),
|
|
227
|
+
minTrustScore: maxOf(p.minTrustScore, c.minTrustScore),
|
|
228
|
+
minReputation: maxOf(p.minReputation, c.minReputation),
|
|
229
|
+
requireVerified: p.requireVerified || c.requireVerified ? true : undefined,
|
|
230
|
+
requireTee: p.requireTee || c.requireTee ? true : undefined,
|
|
231
|
+
maxInputUsdPerMillion: minOf(p.maxInputUsdPerMillion, c.maxInputUsdPerMillion),
|
|
232
|
+
maxOutputUsdPerMillion: minOf(p.maxOutputUsdPerMillion, c.maxOutputUsdPerMillion),
|
|
233
|
+
maxCachedInputUsdPerMillion: minOf(p.maxCachedInputUsdPerMillion, c.maxCachedInputUsdPerMillion),
|
|
234
|
+
maxImageUsdPerImage: minOf(p.maxImageUsdPerImage, c.maxImageUsdPerImage),
|
|
235
|
+
preferFreePeers: c.preferFreePeers ?? p.preferFreePeers,
|
|
236
|
+
sort: c.sort ?? p.sort,
|
|
237
|
+
allowedModels: intersectModels(p.allowedModels, c.allowedModels),
|
|
238
|
+
modelRoutes: narrowModelRoutes(p.modelRoutes, c.modelRoutes),
|
|
239
|
+
};
|
|
240
|
+
return stripUndefined(result);
|
|
241
|
+
}
|
|
242
|
+
export function normalizePolicy(policy) {
|
|
243
|
+
// Keys naming the same model (`GPT-X`, `gpt-x`) collapse into the first,
|
|
244
|
+
// combined like a parent and child route so a strict entry never loosens.
|
|
245
|
+
let modelRoutes;
|
|
246
|
+
if (policy.modelRoutes) {
|
|
247
|
+
for (const [rawModel, route] of Object.entries(policy.modelRoutes)) {
|
|
248
|
+
const model = rawModel.trim();
|
|
249
|
+
if (!model)
|
|
250
|
+
continue;
|
|
251
|
+
const normalized = { peerIds: normalizeList(route.peerIds) ?? [], ...(route.strict ? { strict: true } : {}) };
|
|
252
|
+
modelRoutes = narrowModelRoutes(modelRoutes, { [model]: normalized });
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
return stripUndefined({
|
|
256
|
+
...policy,
|
|
257
|
+
allowedModels: normalizeModels(policy.allowedModels),
|
|
258
|
+
allowedPeerIds: normalizeList(policy.allowedPeerIds),
|
|
259
|
+
blockedPeerIds: normalizeList(policy.blockedPeerIds),
|
|
260
|
+
allowedPeerLists: normalizeListIds(policy.allowedPeerLists),
|
|
261
|
+
blockedPeerLists: normalizeListIds(policy.blockedPeerLists),
|
|
262
|
+
allowedPeerGroups: policy.allowedPeerGroups?.length
|
|
263
|
+
? policy.allowedPeerGroups.map((group) => stripUndefined({ peerIds: normalizeList(group.peerIds), peerLists: normalizeListIds(group.peerLists) }))
|
|
264
|
+
: undefined,
|
|
265
|
+
modelRoutes,
|
|
266
|
+
});
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Replaces peer list references with the lists' current members. A list that
|
|
270
|
+
* no longer exists contributes no sellers, so an allow list made only of
|
|
271
|
+
* deleted lists lets no seller serve (it never widens to "any seller").
|
|
272
|
+
* Expand each level before `narrowPolicy`, so allow lists intersect as sets
|
|
273
|
+
* of sellers rather than as list ids.
|
|
274
|
+
*/
|
|
275
|
+
export function expandPeerLists(policy, listPeers) {
|
|
276
|
+
const { allowedPeerLists, blockedPeerLists, allowedPeerGroups, ...rest } = policy;
|
|
277
|
+
if (allowedPeerLists === undefined && blockedPeerLists === undefined && allowedPeerGroups === undefined)
|
|
278
|
+
return normalizePolicy(rest);
|
|
279
|
+
const members = (ids) => ids.flatMap((id) => listPeers(id) ?? []);
|
|
280
|
+
const expanded = { ...rest };
|
|
281
|
+
let allowed;
|
|
282
|
+
for (const group of allowGroupsOf(policy)) {
|
|
283
|
+
allowed = intersect(allowed, normalizeList([...group.peerIds, ...members(group.peerLists)]));
|
|
284
|
+
}
|
|
285
|
+
if (allowed !== undefined)
|
|
286
|
+
expanded.allowedPeerIds = allowed;
|
|
287
|
+
if (blockedPeerLists !== undefined && blockedPeerLists.length > 0) {
|
|
288
|
+
expanded.blockedPeerIds = [...(rest.blockedPeerIds ?? []), ...members(blockedPeerLists)];
|
|
289
|
+
}
|
|
290
|
+
return normalizePolicy(expanded);
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* The policy without settings that change nothing: the default sort, flags
|
|
294
|
+
* set to false, an empty route map. A policy that is empty after this routes
|
|
295
|
+
* exactly like no policy at all, so the gateway does not send it.
|
|
296
|
+
*/
|
|
297
|
+
export function meaningfulPolicy(policy) {
|
|
298
|
+
const result = normalizePolicy(policy);
|
|
299
|
+
if (result.sort === 'balanced')
|
|
300
|
+
delete result.sort;
|
|
301
|
+
if (result.preferFreePeers === false)
|
|
302
|
+
delete result.preferFreePeers;
|
|
303
|
+
if (result.requireVerified === false)
|
|
304
|
+
delete result.requireVerified;
|
|
305
|
+
if (result.requireTee === false)
|
|
306
|
+
delete result.requireTee;
|
|
307
|
+
if (result.modelRoutes && Object.keys(result.modelRoutes).length === 0)
|
|
308
|
+
delete result.modelRoutes;
|
|
309
|
+
return result;
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Fields where `sent` asked for more than `effective` (the policy after
|
|
313
|
+
* narrowing `sent` under every level above it) allows: sellers or models the
|
|
314
|
+
* levels above do not allow, a looser minimum or price cap, a requirement
|
|
315
|
+
* turned off, a model route that lost sellers. Both must have their peer
|
|
316
|
+
* lists expanded. Settings `sent` leaves out never count.
|
|
317
|
+
*/
|
|
318
|
+
export function narrowedFields(sent, effective) {
|
|
319
|
+
const fields = [];
|
|
320
|
+
if (sent.allowedPeerIds !== undefined) {
|
|
321
|
+
const allowed = effective.allowedPeerIds;
|
|
322
|
+
if (allowed !== undefined && !isSubset(normalizeList(sent.allowedPeerIds), allowed))
|
|
323
|
+
fields.push('allowedPeerIds');
|
|
324
|
+
}
|
|
325
|
+
if (sent.allowedModels !== undefined && effective.allowedModels !== undefined) {
|
|
326
|
+
const allowed = new Set(effective.allowedModels.map(policyModelKey));
|
|
327
|
+
if (sent.allowedModels.some((model) => !allowed.has(policyModelKey(model))))
|
|
328
|
+
fields.push('allowedModels');
|
|
329
|
+
}
|
|
330
|
+
for (const field of ['minTrustScore', 'minReputation']) {
|
|
331
|
+
if (sent[field] !== undefined && (effective[field] ?? 0) > sent[field])
|
|
332
|
+
fields.push(field);
|
|
333
|
+
}
|
|
334
|
+
for (const field of ['maxInputUsdPerMillion', 'maxOutputUsdPerMillion', 'maxCachedInputUsdPerMillion', 'maxImageUsdPerImage']) {
|
|
335
|
+
if (sent[field] !== undefined && effective[field] !== undefined && effective[field] < sent[field])
|
|
336
|
+
fields.push(field);
|
|
337
|
+
}
|
|
338
|
+
for (const field of ['requireVerified', 'requireTee']) {
|
|
339
|
+
if (sent[field] === false && effective[field] === true)
|
|
340
|
+
fields.push(field);
|
|
341
|
+
}
|
|
342
|
+
if (sent.modelRoutes) {
|
|
343
|
+
for (const [model, route] of Object.entries(sent.modelRoutes)) {
|
|
344
|
+
const actual = findModelRoute(effective, model);
|
|
345
|
+
const peers = normalizeList(route.peerIds) ?? [];
|
|
346
|
+
if (!actual || (route.strict && !actual.strict) || actual.peerIds.length !== peers.length || !isSubset(peers, actual.peerIds)) {
|
|
347
|
+
fields.push('modelRoutes');
|
|
348
|
+
break;
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
return fields;
|
|
353
|
+
}
|
|
354
|
+
/** Whether the policy lets this seller serve at all (allow and block lists only). */
|
|
355
|
+
export function policyAllowsPeer(policy, peerId) {
|
|
356
|
+
const id = normalizePeerId(peerId);
|
|
357
|
+
if (policy.blockedPeerIds?.some((blocked) => normalizePeerId(blocked) === id))
|
|
358
|
+
return false;
|
|
359
|
+
if (policy.allowedPeerIds && !policy.allowedPeerIds.some((allowed) => normalizePeerId(allowed) === id))
|
|
360
|
+
return false;
|
|
361
|
+
// Unexpanded list references cannot be checked here; only listed ids count.
|
|
362
|
+
if (policy.allowedPeerGroups?.some((group) => !group.peerIds?.some((allowed) => normalizePeerId(allowed) === id)))
|
|
363
|
+
return false;
|
|
364
|
+
return true;
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* The `allowedModels` check shared by the gateway and the buyer. A pinned
|
|
368
|
+
* `peer@model` is judged by its service; with an allow list, no model at all
|
|
369
|
+
* is refused rather than routed to anything.
|
|
370
|
+
*/
|
|
371
|
+
export function policyAllowsModel(policy, model) {
|
|
372
|
+
if (!policy?.allowedModels)
|
|
373
|
+
return true;
|
|
374
|
+
if (!model)
|
|
375
|
+
return false;
|
|
376
|
+
return policy.allowedModels.some((allowed) => sameRoutingModel(allowed, model));
|
|
377
|
+
}
|
|
378
|
+
export function encodePolicyHeader(policy) {
|
|
379
|
+
return Buffer.from(JSON.stringify(stripUndefined(policy)), 'utf8').toString('base64url');
|
|
380
|
+
}
|
|
381
|
+
/** Returns null for a malformed header; callers must then reject the request rather than route unrestricted. */
|
|
382
|
+
export function decodePolicyHeader(value) {
|
|
383
|
+
try {
|
|
384
|
+
const parsed = JSON.parse(Buffer.from(value, 'base64url').toString('utf8'));
|
|
385
|
+
if (!isRoutingPolicy(parsed))
|
|
386
|
+
return null;
|
|
387
|
+
// The buyer cannot resolve list ids; refuse rather than ignore a restriction.
|
|
388
|
+
if (parsed.allowedPeerLists !== undefined || parsed.blockedPeerLists !== undefined || parsed.allowedPeerGroups !== undefined)
|
|
389
|
+
return null;
|
|
390
|
+
return normalizePolicy(parsed);
|
|
391
|
+
}
|
|
392
|
+
catch {
|
|
393
|
+
return null;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
function isStringArray(value) {
|
|
397
|
+
return Array.isArray(value) && value.every((item) => typeof item === 'string');
|
|
398
|
+
}
|
|
399
|
+
function isOptionalNumber(value) {
|
|
400
|
+
return value === undefined || (typeof value === 'number' && Number.isFinite(value) && value >= 0);
|
|
401
|
+
}
|
|
402
|
+
export function isRoutingPolicy(value) {
|
|
403
|
+
if (!value || typeof value !== 'object' || Array.isArray(value))
|
|
404
|
+
return false;
|
|
405
|
+
const policy = value;
|
|
406
|
+
const lists = ['allowedPeerIds', 'blockedPeerIds', 'allowedPeerLists', 'blockedPeerLists', 'allowedModels'];
|
|
407
|
+
if (lists.some((key) => policy[key] !== undefined && !isStringArray(policy[key])))
|
|
408
|
+
return false;
|
|
409
|
+
const numbers = ['minTrustScore', 'minReputation', 'maxInputUsdPerMillion', 'maxOutputUsdPerMillion', 'maxCachedInputUsdPerMillion', 'maxImageUsdPerImage'];
|
|
410
|
+
if (numbers.some((key) => !isOptionalNumber(policy[key])))
|
|
411
|
+
return false;
|
|
412
|
+
const flags = ['requireVerified', 'requireTee', 'preferFreePeers'];
|
|
413
|
+
if (flags.some((key) => policy[key] !== undefined && typeof policy[key] !== 'boolean'))
|
|
414
|
+
return false;
|
|
415
|
+
if (policy['sort'] !== undefined && !['balanced', 'price', 'latency', 'trust'].includes(policy['sort']))
|
|
416
|
+
return false;
|
|
417
|
+
const groups = policy['allowedPeerGroups'];
|
|
418
|
+
if (groups !== undefined) {
|
|
419
|
+
if (!Array.isArray(groups))
|
|
420
|
+
return false;
|
|
421
|
+
for (const group of groups) {
|
|
422
|
+
if (!group || typeof group !== 'object' || Array.isArray(group))
|
|
423
|
+
return false;
|
|
424
|
+
const entry = group;
|
|
425
|
+
if (entry['peerIds'] !== undefined && !isStringArray(entry['peerIds']))
|
|
426
|
+
return false;
|
|
427
|
+
if (entry['peerLists'] !== undefined && !isStringArray(entry['peerLists']))
|
|
428
|
+
return false;
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
const routes = policy['modelRoutes'];
|
|
432
|
+
if (routes !== undefined) {
|
|
433
|
+
if (!routes || typeof routes !== 'object' || Array.isArray(routes))
|
|
434
|
+
return false;
|
|
435
|
+
for (const route of Object.values(routes)) {
|
|
436
|
+
if (!route || typeof route !== 'object')
|
|
437
|
+
return false;
|
|
438
|
+
const entry = route;
|
|
439
|
+
if (!isStringArray(entry['peerIds']))
|
|
440
|
+
return false;
|
|
441
|
+
if (entry['strict'] !== undefined && typeof entry['strict'] !== 'boolean')
|
|
442
|
+
return false;
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
return true;
|
|
446
|
+
}
|
|
447
|
+
function stripUndefined(value) {
|
|
448
|
+
return Object.fromEntries(Object.entries(value).filter(([, entry]) => entry !== undefined));
|
|
449
|
+
}
|
|
450
|
+
//# sourceMappingURL=policy.js.map
|