aimeat 2.2.0 → 2.3.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.
- package/README.md +110 -84
- package/dist/.env.example +47 -11
- package/dist/locales/en.json +251 -371
- package/dist/locales/fi.json +255 -375
- package/dist/public/components/ContactCard.js +30 -5
- package/dist/public/components/ContactPicker.js +3 -2
- package/dist/public/components/ImageDeliverable.js +2 -1
- package/dist/public/components/JsonView.js +1 -0
- package/dist/public/components/LinkPreview.js +1 -1
- package/dist/public/components/NotificationBell.js +6 -4
- package/dist/public/components/UsageChart.js +2 -1
- package/dist/public/css/theme.css +1516 -1432
- package/dist/public/css/views/app-grant.css +95 -36
- package/dist/public/css/views/help.css +28 -0
- package/dist/public/css/views/landing.css +20 -0
- package/dist/public/css/views/members.css +40 -10
- package/dist/public/css/views/portal-dev.css +64 -45
- package/dist/public/css/views/profile.css +8 -0
- package/dist/public/js/api.js +1 -0
- package/dist/public/js/app-sandbox.js +1 -0
- package/dist/public/js/components/auth-image.js +3 -1
- package/dist/public/js/i18n.js +3 -1
- package/dist/public/js/presence-store.js +3 -1
- package/dist/public/js/recents.js +2 -0
- package/dist/public/js/services/agent-activity.js +2 -1
- package/dist/public/js/services/agent-directives.js +2 -1
- package/dist/public/js/services/agent-integration.js +2 -1
- package/dist/public/js/services/agent-messages.js +2 -1
- package/dist/public/js/services/agent-tasks.js +2 -1
- package/dist/public/js/services/agents.js +3 -2
- package/dist/public/js/services/calibrator.js +2 -1
- package/dist/public/js/services/consent.js +2 -1
- package/dist/public/js/services/contacts.js +2 -1
- package/dist/public/js/services/cortex.js +5 -4
- package/dist/public/js/services/ecosystem.js +2 -1
- package/dist/public/js/services/knowledge.js +2 -1
- package/dist/public/js/services/ledger.js +2 -1
- package/dist/public/js/services/living.js +10 -9
- package/dist/public/js/services/memory.js +2 -1
- package/dist/public/js/services/messages.js +53 -8
- package/dist/public/js/services/nodes.js +3 -2
- package/dist/public/js/services/notebook-plan.js +2 -1
- package/dist/public/js/services/notebook.js +6 -5
- package/dist/public/js/services/offers.js +6 -5
- package/dist/public/js/services/organisms.js +26 -25
- package/dist/public/js/services/organisms.prompts.js +3 -2
- package/dist/public/js/services/organisms.shared.js +2 -1
- package/dist/public/js/services/organisms.workspace-gen.js +3 -2
- package/dist/public/js/services/packages.js +1 -0
- package/dist/public/js/services/schedules.js +2 -1
- package/dist/public/js/services/security.js +3 -2
- package/dist/public/js/services/skills.js +1 -0
- package/dist/public/js/services/tracked-responses.js +4 -3
- package/dist/public/js/services/unfurl.js +4 -4
- package/dist/public/js/services/work.js +2 -1
- package/dist/public/js/site.js +74 -0
- package/dist/public/js/swallowed.js +69 -0
- package/dist/public/js/theme.js +2 -1
- package/dist/public/js/utils.js +3 -1
- package/dist/public/lib/VENDORED.md +1 -0
- package/dist/public/lib/aimeat-game/board.css +262 -0
- package/dist/public/lib/aimeat-game/progress.css +406 -0
- package/dist/public/lib/aimeat-game/shell.css +388 -0
- package/dist/public/lib/aimeat-game.css +394 -0
- package/dist/public/lib/pdfjs@6/pdf.min.mjs +29 -0
- package/dist/public/lib/pdfjs@6/pdf.worker.min.mjs +29 -0
- package/dist/public/privacy.fi.html +1 -1
- package/dist/public/privacy.html +1 -1
- package/dist/public/spa.html +885 -793
- package/dist/public/sw.js +4 -2
- package/dist/public/views/admin/agent-integration-tab.js +7 -6
- package/dist/public/views/admin/ai-usage-tab.js +2 -1
- package/dist/public/views/admin/cortex-tab.js +2 -1
- package/dist/public/views/admin/economy-tab.js +0 -1
- package/dist/public/views/admin/email-tab.js +4 -2
- package/dist/public/views/admin/federation-tab.js +3 -2
- package/dist/public/views/admin/feedback-tab.js +2 -1
- package/dist/public/views/admin/knowledge-tab.js +2 -1
- package/dist/public/views/admin/messages-tab.js +2 -1
- package/dist/public/views/admin/msm-tab.js +2 -1
- package/dist/public/views/admin/packages-tab.js +3 -2
- package/dist/public/views/admin/portal-tab.js +7 -2
- package/dist/public/views/admin/push-tab.js +9 -4
- package/dist/public/views/admin/stats-tab.js +2 -1
- package/dist/public/views/admin/usage-tab.js +4 -3
- package/dist/public/views/admin.js +6 -4
- package/dist/public/views/agent-solo.js +4 -3
- package/dist/public/views/app-grant.js +105 -32
- package/dist/public/views/business.js +139 -55
- package/dist/public/views/command-palette.js +5 -3
- package/dist/public/views/companies.js +3 -2
- package/dist/public/views/doc-solo.js +2 -1
- package/dist/public/views/help.js +95 -15
- package/dist/public/views/how-it-works.js +41 -8
- package/dist/public/views/invite-accept.js +3 -2
- package/dist/public/views/landing-activity.js +3 -2
- package/dist/public/views/landing-node-totals.js +2 -1
- package/dist/public/views/landing.js +75 -152
- package/dist/public/views/members.js +29 -2
- package/dist/public/views/my-company.js +9 -7
- package/dist/public/views/my-company.payments.js +2 -1
- package/dist/public/views/portal-classic.js +2 -1
- package/dist/public/views/portal-dev.js +64 -35
- package/dist/public/views/portal-dev.panels.js +39 -2
- package/dist/public/views/portal-dev.upload.js +25 -196
- package/dist/public/views/portal.components.js +4 -3
- package/dist/public/views/portfolio.js +5 -4
- package/dist/public/views/profile/access-tab/access-tokens.js +2 -1
- package/dist/public/views/profile/access-tab/agent-defaults.js +3 -1
- package/dist/public/views/profile/access-tab/connected-apps.js +72 -3
- package/dist/public/views/profile/access-tab/sharing-groups.js +4 -1
- package/dist/public/views/profile/access-tab.js +3 -1
- package/dist/public/views/profile/agents/agent-card.js +6 -5
- package/dist/public/views/profile/agents/tab-activity.js +10 -8
- package/dist/public/views/profile/agents/tab-agent-config.js +3 -1
- package/dist/public/views/profile/agents/tab-contracts.js +2 -1
- package/dist/public/views/profile/agents/tab-data-access.js +10 -7
- package/dist/public/views/profile/agents/tab-helpers.js +5 -0
- package/dist/public/views/profile/agents/tab-integration.js +12 -9
- package/dist/public/views/profile/agents/tab-messages.js +6 -4
- package/dist/public/views/profile/agents/tab-quality.js +3 -2
- package/dist/public/views/profile/agents/tab-usage.js +5 -3
- package/dist/public/views/profile/agents/task-item.js +12 -7
- package/dist/public/views/profile/agents-activity-subtab.js +5 -2
- package/dist/public/views/profile/agents-capabilities-subtab.js +4 -2
- package/dist/public/views/profile/agents-messages-subtab.js +5 -2
- package/dist/public/views/profile/agents-services-subtab.js +1 -0
- package/dist/public/views/profile/agents-tab.js +11 -7
- package/dist/public/views/profile/appdev-tab.js +3 -2
- package/dist/public/views/profile/apps-tab.js +10 -8
- package/dist/public/views/profile/boards-tab.js +5 -4
- package/dist/public/views/profile/calibrator-batch.helpers.js +3 -2
- package/dist/public/views/profile/calibrator-batch.js +3 -1
- package/dist/public/views/profile/calibrator-llm-editor.js +3 -2
- package/dist/public/views/profile/calibrator-tab.js +5 -4
- package/dist/public/views/profile/capabilities-tab.js +2 -1
- package/dist/public/views/profile/chat-sessions-tab.js +6 -3
- package/dist/public/views/profile/contacts-tab.js +2 -1
- package/dist/public/views/profile/data-wallet-tab.js +5 -4
- package/dist/public/views/profile/discover-tab.js +4 -1
- package/dist/public/views/profile/ecosystem-tab.automation.js +13 -9
- package/dist/public/views/profile/ecosystem-tab.cards.js +3 -2
- package/dist/public/views/profile/ecosystem-tab.js +10 -7
- package/dist/public/views/profile/email-tab.js +2 -1
- package/dist/public/views/profile/extensions-tab.js +7 -6
- package/dist/public/views/profile/extensions-tab.maturity.js +2 -1
- package/dist/public/views/profile/extensions-tab.prompts.js +24 -0
- package/dist/public/views/profile/federation-tab.js +2 -1
- package/dist/public/views/profile/inbox-tab/components.js +13 -10
- package/dist/public/views/profile/inbox-tab/helpers.js +15 -1
- package/dist/public/views/profile/inbox-tab/use-thread-ux.js +1 -1
- package/dist/public/views/profile/inbox-tab.js +33 -30
- package/dist/public/views/profile/inline-panels.js +5 -4
- package/dist/public/views/profile/knowledge-tab.js +15 -13
- package/dist/public/views/profile/landing-page.cards.js +14 -9
- package/dist/public/views/profile/landing-page.helpers.js +5 -2
- package/dist/public/views/profile/landing-page.js +11 -7
- package/dist/public/views/profile/landing-page.modals.js +8 -5
- package/dist/public/views/profile/living-tab.js +3 -2
- package/dist/public/views/profile/mcp-tab.js +4 -2
- package/dist/public/views/profile/memory-tab/browse-view.js +3 -2
- package/dist/public/views/profile/memory-tab/components.js +4 -3
- package/dist/public/views/profile/memory-tab/entries-view.js +3 -2
- package/dist/public/views/profile/memory-tab.js +18 -16
- package/dist/public/views/profile/nodes-tab.js +2 -1
- package/dist/public/views/profile/notebook-card.js +4 -3
- package/dist/public/views/profile/notebook-tab.js +7 -5
- package/dist/public/views/profile/notifications-tab.js +9 -5
- package/dist/public/views/profile/offers-tab.js +5 -4
- package/dist/public/views/profile/openrouter-settings.js +5 -4
- package/dist/public/views/profile/organisms/activity-panel.js +2 -1
- package/dist/public/views/profile/organisms/agents.js +2 -1
- package/dist/public/views/profile/organisms/document.js +13 -12
- package/dist/public/views/profile/organisms/helpers.js +2 -1
- package/dist/public/views/profile/organisms/home.js +7 -6
- package/dist/public/views/profile/organisms/invite-panel.js +1 -1
- package/dist/public/views/profile/organisms/members.js +7 -6
- package/dist/public/views/profile/organisms/mindmap.js +1 -1
- package/dist/public/views/profile/organisms/panels.js +4 -3
- package/dist/public/views/profile/organisms/participants-panel.js +11 -10
- package/dist/public/views/profile/organisms/readme-panel.js +1 -0
- package/dist/public/views/profile/organisms/sources-panel.js +2 -1
- package/dist/public/views/profile/organisms/workspace/doc-space.js +2 -1
- package/dist/public/views/profile/organisms/workspace/model.js +1 -0
- package/dist/public/views/profile/organisms/workspace-apps.js +4 -2
- package/dist/public/views/profile/organisms/workspace-comments.js +3 -2
- package/dist/public/views/profile/organisms/workspace-list.js +5 -4
- package/dist/public/views/profile/organisms/workspace.js +19 -16
- package/dist/public/views/profile/organisms-tab.js +20 -12
- package/dist/public/views/profile/packages-tab.js +6 -4
- package/dist/public/views/profile/portfolio-tab.js +1 -1
- package/dist/public/views/profile/scheduler-calendar.js +2 -1
- package/dist/public/views/profile/scheduler-tab.js +2 -1
- package/dist/public/views/profile/security-tab.js +2 -1
- package/dist/public/views/profile/services-tab.js +4 -3
- package/dist/public/views/profile/wallet-tab.js +90 -84
- package/dist/public/views/profile/work-tab.js +3 -2
- package/dist/public/views/profile/workflows-form.js +2 -1
- package/dist/public/views/profile/workflows-tab.js +3 -2
- package/dist/public/views/public-workspace-viewer.js +7 -4
- package/dist/scripts/build-sdk-libs.d.ts.map +1 -1
- package/dist/scripts/build-sdk-libs.js +4 -0
- package/dist/scripts/build-sdk-libs.js.map +1 -1
- package/dist/scripts/check-silent-catch.d.ts +2 -0
- package/dist/scripts/check-silent-catch.d.ts.map +1 -0
- package/dist/scripts/check-silent-catch.js +159 -0
- package/dist/scripts/check-silent-catch.js.map +1 -0
- package/dist/src/auth/jwt.d.ts +2 -0
- package/dist/src/auth/jwt.d.ts.map +1 -1
- package/dist/src/auth/jwt.js +15 -3
- package/dist/src/auth/jwt.js.map +1 -1
- package/dist/src/auth/keypair.d.ts.map +1 -1
- package/dist/src/auth/keypair.js +3 -0
- package/dist/src/auth/keypair.js.map +1 -1
- package/dist/src/auth/middleware.d.ts +2 -0
- package/dist/src/auth/middleware.d.ts.map +1 -1
- package/dist/src/auth/middleware.js +33 -14
- package/dist/src/auth/middleware.js.map +1 -1
- package/dist/src/auth/node-keys.d.ts.map +1 -1
- package/dist/src/auth/node-keys.js +59 -16
- package/dist/src/auth/node-keys.js.map +1 -1
- package/dist/src/cli/config-import.d.ts.map +1 -1
- package/dist/src/cli/config-import.js +3 -1
- package/dist/src/cli/config-import.js.map +1 -1
- package/dist/src/cli/connect/auth.d.ts.map +1 -1
- package/dist/src/cli/connect/auth.js +1 -0
- package/dist/src/cli/connect/auth.js.map +1 -1
- package/dist/src/cli/connect/config.d.ts.map +1 -1
- package/dist/src/cli/connect/config.js +3 -1
- package/dist/src/cli/connect/config.js.map +1 -1
- package/dist/src/cli/connect/keychain.d.ts.map +1 -1
- package/dist/src/cli/connect/keychain.js +6 -2
- package/dist/src/cli/connect/keychain.js.map +1 -1
- package/dist/src/cli/connect/mcp/local-server.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/local-server.js +9 -2
- package/dist/src/cli/connect/mcp/local-server.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workspaces.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/workspaces.js +2 -0
- package/dist/src/cli/connect/mcp/tools/workspaces.js.map +1 -1
- package/dist/src/cli/connect/task-runner.d.ts.map +1 -1
- package/dist/src/cli/connect/task-runner.js +11 -4
- package/dist/src/cli/connect/task-runner.js.map +1 -1
- package/dist/src/cli/connect/tool-call-helpers.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-helpers.js +1 -0
- package/dist/src/cli/connect/tool-call-helpers.js.map +1 -1
- package/dist/src/cli/connect/tunnel-client.d.ts.map +1 -1
- package/dist/src/cli/connect/tunnel-client.js +26 -8
- package/dist/src/cli/connect/tunnel-client.js.map +1 -1
- package/dist/src/cli/federation-join.d.ts.map +1 -1
- package/dist/src/cli/federation-join.js +7 -3
- package/dist/src/cli/federation-join.js.map +1 -1
- package/dist/src/cli/init-wizard/presets.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/presets.js +21 -0
- package/dist/src/cli/init-wizard/presets.js.map +1 -1
- package/dist/src/cli/init-wizard/steps-advanced.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/steps-advanced.js +2 -0
- package/dist/src/cli/init-wizard/steps-advanced.js.map +1 -1
- package/dist/src/cli/init-wizard/steps-operator.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/steps-operator.js +10 -0
- package/dist/src/cli/init-wizard/steps-operator.js.map +1 -1
- package/dist/src/commerce/invoice-handler.d.ts +5 -0
- package/dist/src/commerce/invoice-handler.d.ts.map +1 -0
- package/dist/src/commerce/invoice-handler.js +41 -0
- package/dist/src/commerce/invoice-handler.js.map +1 -0
- package/dist/src/commerce/payable-book.d.ts +31 -0
- package/dist/src/commerce/payable-book.d.ts.map +1 -0
- package/dist/src/commerce/payable-book.js +27 -0
- package/dist/src/commerce/payable-book.js.map +1 -0
- package/dist/src/commerce/payment-handlers.d.ts.map +1 -1
- package/dist/src/commerce/payment-handlers.js +8 -4
- package/dist/src/commerce/payment-handlers.js.map +1 -1
- package/dist/src/commerce/sellable-resolvers.d.ts +6 -6
- package/dist/src/commerce/sellable-resolvers.d.ts.map +1 -1
- package/dist/src/commerce/sellable-resolvers.js +17 -4
- package/dist/src/commerce/sellable-resolvers.js.map +1 -1
- package/dist/src/commerce/session-service.js +2 -2
- package/dist/src/commerce/session-service.js.map +1 -1
- package/dist/src/commerce/stripe-handler.d.ts +33 -0
- package/dist/src/commerce/stripe-handler.d.ts.map +1 -0
- package/dist/src/commerce/stripe-handler.js +108 -0
- package/dist/src/commerce/stripe-handler.js.map +1 -0
- package/dist/src/commerce/types.d.ts +10 -12
- package/dist/src/commerce/types.d.ts.map +1 -1
- package/dist/src/commerce/x402-facilitator.d.ts.map +1 -1
- package/dist/src/commerce/x402-facilitator.js +1 -0
- package/dist/src/commerce/x402-facilitator.js.map +1 -1
- package/dist/src/config-types.d.ts +66 -0
- package/dist/src/config-types.d.ts.map +1 -1
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +62 -1
- package/dist/src/config.js.map +1 -1
- package/dist/src/data/library-packs/sdk.d.ts +4 -0
- package/dist/src/data/library-packs/sdk.d.ts.map +1 -1
- package/dist/src/data/library-packs/sdk.js +46 -0
- package/dist/src/data/library-packs/sdk.js.map +1 -1
- package/dist/src/data/library-packs/vendored.d.ts.map +1 -1
- package/dist/src/data/library-packs/vendored.js +88 -0
- package/dist/src/data/library-packs/vendored.js.map +1 -1
- package/dist/src/generated/api-types.d.ts +472 -26
- package/dist/src/generated/api-types.d.ts.map +1 -1
- package/dist/src/index-connect.d.ts.map +1 -1
- package/dist/src/index-connect.js +4 -1
- package/dist/src/index-connect.js.map +1 -1
- package/dist/src/index-start.d.ts.map +1 -1
- package/dist/src/index-start.js +10 -6
- package/dist/src/index-start.js.map +1 -1
- package/dist/src/mcp/app-template-proposals.d.ts.map +1 -1
- package/dist/src/mcp/app-template-proposals.js +2 -1
- package/dist/src/mcp/app-template-proposals.js.map +1 -1
- package/dist/src/mcp/apps.d.ts.map +1 -1
- package/dist/src/mcp/apps.js +4 -3
- package/dist/src/mcp/apps.js.map +1 -1
- package/dist/src/mcp/capabilities.d.ts.map +1 -1
- package/dist/src/mcp/capabilities.js +3 -2
- package/dist/src/mcp/capabilities.js.map +1 -1
- package/dist/src/mcp/catalog/scopes.d.ts +0 -1
- package/dist/src/mcp/catalog/scopes.d.ts.map +1 -1
- package/dist/src/mcp/catalog/scopes.js +2 -11
- package/dist/src/mcp/catalog/scopes.js.map +1 -1
- package/dist/src/mcp/catalog/surfaces.d.ts +1 -7
- package/dist/src/mcp/catalog/surfaces.d.ts.map +1 -1
- package/dist/src/mcp/catalog/surfaces.js +10 -16
- package/dist/src/mcp/catalog/surfaces.js.map +1 -1
- package/dist/src/mcp/commerce.d.ts.map +1 -1
- package/dist/src/mcp/commerce.js +35 -3
- package/dist/src/mcp/commerce.js.map +1 -1
- package/dist/src/mcp/core.d.ts.map +1 -1
- package/dist/src/mcp/core.js +3 -2
- package/dist/src/mcp/core.js.map +1 -1
- package/dist/src/mcp/exchange-run.d.ts +28 -0
- package/dist/src/mcp/exchange-run.d.ts.map +1 -1
- package/dist/src/mcp/exchange-run.js +58 -37
- package/dist/src/mcp/exchange-run.js.map +1 -1
- package/dist/src/mcp/exchange.d.ts.map +1 -1
- package/dist/src/mcp/exchange.js +9 -7
- package/dist/src/mcp/exchange.js.map +1 -1
- package/dist/src/mcp/extensions.d.ts.map +1 -1
- package/dist/src/mcp/extensions.js +60 -106
- package/dist/src/mcp/extensions.js.map +1 -1
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +1 -5
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/mcp/knowledge.d.ts.map +1 -1
- package/dist/src/mcp/knowledge.js +1 -0
- package/dist/src/mcp/knowledge.js.map +1 -1
- package/dist/src/mcp/oauth.d.ts +3 -0
- package/dist/src/mcp/oauth.d.ts.map +1 -1
- package/dist/src/mcp/oauth.js +13 -8
- package/dist/src/mcp/oauth.js.map +1 -1
- package/dist/src/mcp/workspaces.d.ts.map +1 -1
- package/dist/src/mcp/workspaces.js +7 -4
- package/dist/src/mcp/workspaces.js.map +1 -1
- package/dist/src/middleware/cors.d.ts.map +1 -1
- package/dist/src/middleware/cors.js +3 -1
- package/dist/src/middleware/cors.js.map +1 -1
- package/dist/src/middleware/subdomain.d.ts +4 -0
- package/dist/src/middleware/subdomain.d.ts.map +1 -1
- package/dist/src/middleware/subdomain.js +23 -2
- package/dist/src/middleware/subdomain.js.map +1 -1
- package/dist/src/models/app-tool-schemas.d.ts +35 -0
- package/dist/src/models/app-tool-schemas.d.ts.map +1 -1
- package/dist/src/models/app-tool-schemas.js +44 -0
- package/dist/src/models/app-tool-schemas.js.map +1 -1
- package/dist/src/routes/admin-config.d.ts.map +1 -1
- package/dist/src/routes/admin-config.js +4 -1
- package/dist/src/routes/admin-config.js.map +1 -1
- package/dist/src/routes/admin-extensions.d.ts.map +1 -1
- package/dist/src/routes/admin-extensions.js +2 -1
- package/dist/src/routes/admin-extensions.js.map +1 -1
- package/dist/src/routes/admin-monitoring.js +14 -5
- package/dist/src/routes/admin-monitoring.js.map +1 -1
- package/dist/src/routes/admin-security.d.ts.map +1 -1
- package/dist/src/routes/admin-security.js +4 -1
- package/dist/src/routes/admin-security.js.map +1 -1
- package/dist/src/routes/admin.d.ts.map +1 -1
- package/dist/src/routes/admin.js +6 -4
- package/dist/src/routes/admin.js.map +1 -1
- package/dist/src/routes/agent-activity.d.ts.map +1 -1
- package/dist/src/routes/agent-activity.js +4 -1
- package/dist/src/routes/agent-activity.js.map +1 -1
- package/dist/src/routes/agent-directives.d.ts +3 -10
- package/dist/src/routes/agent-directives.d.ts.map +1 -1
- package/dist/src/routes/agent-directives.js +7 -12
- package/dist/src/routes/agent-directives.js.map +1 -1
- package/dist/src/routes/agent-integration.d.ts.map +1 -1
- package/dist/src/routes/agent-integration.js +3 -1
- package/dist/src/routes/agent-integration.js.map +1 -1
- package/dist/src/routes/agent-messages.d.ts.map +1 -1
- package/dist/src/routes/agent-messages.js +5 -2
- package/dist/src/routes/agent-messages.js.map +1 -1
- package/dist/src/routes/agent-onboarding.d.ts.map +1 -1
- package/dist/src/routes/agent-onboarding.js +19 -6
- package/dist/src/routes/agent-onboarding.js.map +1 -1
- package/dist/src/routes/agent-skills-discovery.d.ts.map +1 -1
- package/dist/src/routes/agent-skills-discovery.js +2 -1
- package/dist/src/routes/agent-skills-discovery.js.map +1 -1
- package/dist/src/routes/agent-tasks/completion.js +1 -1
- package/dist/src/routes/agent-tasks/completion.js.map +1 -1
- package/dist/src/routes/agent-tasks/create-read.js +3 -1
- package/dist/src/routes/agent-tasks/create-read.js.map +1 -1
- package/dist/src/routes/agent-tasks/lifecycle.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks/lifecycle.js +28 -9
- package/dist/src/routes/agent-tasks/lifecycle.js.map +1 -1
- package/dist/src/routes/agents/management.d.ts.map +1 -1
- package/dist/src/routes/agents/management.js +4 -1
- package/dist/src/routes/agents/management.js.map +1 -1
- package/dist/src/routes/agents/offers.d.ts.map +1 -1
- package/dist/src/routes/agents/offers.js +0 -0
- package/dist/src/routes/agents/offers.js.map +1 -1
- package/dist/src/routes/agents/profile-metadata.d.ts.map +1 -1
- package/dist/src/routes/agents/profile-metadata.js +2 -1
- package/dist/src/routes/agents/profile-metadata.js.map +1 -1
- package/dist/src/routes/app-grants.d.ts +7 -0
- package/dist/src/routes/app-grants.d.ts.map +1 -1
- package/dist/src/routes/app-grants.js +69 -4
- package/dist/src/routes/app-grants.js.map +1 -1
- package/dist/src/routes/appdev-overview.d.ts.map +1 -1
- package/dist/src/routes/appdev-overview.js +2 -1
- package/dist/src/routes/appdev-overview.js.map +1 -1
- package/dist/src/routes/apps/catalogue-admin.d.ts.map +1 -1
- package/dist/src/routes/apps/catalogue-admin.js +2 -1
- package/dist/src/routes/apps/catalogue-admin.js.map +1 -1
- package/dist/src/routes/apps/drafts.d.ts.map +1 -1
- package/dist/src/routes/apps/drafts.js +2 -1
- package/dist/src/routes/apps/drafts.js.map +1 -1
- package/dist/src/routes/apps/fork-manage.d.ts.map +1 -1
- package/dist/src/routes/apps/fork-manage.js +6 -3
- package/dist/src/routes/apps/fork-manage.js.map +1 -1
- package/dist/src/routes/apps/helpers.d.ts.map +1 -1
- package/dist/src/routes/apps/helpers.js +5 -1
- package/dist/src/routes/apps/helpers.js.map +1 -1
- package/dist/src/routes/apps/publish.d.ts.map +1 -1
- package/dist/src/routes/apps/publish.js +8 -3
- package/dist/src/routes/apps/publish.js.map +1 -1
- package/dist/src/routes/apps/read.d.ts.map +1 -1
- package/dist/src/routes/apps/read.js +2 -1
- package/dist/src/routes/apps/read.js.map +1 -1
- package/dist/src/routes/auth.d.ts.map +1 -1
- package/dist/src/routes/auth.js +2 -1
- package/dist/src/routes/auth.js.map +1 -1
- package/dist/src/routes/boards.js +1 -1
- package/dist/src/routes/boards.js.map +1 -1
- package/dist/src/routes/bootstrap.d.ts.map +1 -1
- package/dist/src/routes/bootstrap.js +8 -3
- package/dist/src/routes/bootstrap.js.map +1 -1
- package/dist/src/routes/capabilities.d.ts.map +1 -1
- package/dist/src/routes/capabilities.js +4 -3
- package/dist/src/routes/capabilities.js.map +1 -1
- package/dist/src/routes/commerce-acp.js +1 -1
- package/dist/src/routes/commerce-acp.js.map +1 -1
- package/dist/src/routes/commerce-ucp.d.ts +2 -3
- package/dist/src/routes/commerce-ucp.d.ts.map +1 -1
- package/dist/src/routes/commerce-ucp.js +6 -12
- package/dist/src/routes/commerce-ucp.js.map +1 -1
- package/dist/src/routes/commerce.d.ts +7 -1
- package/dist/src/routes/commerce.d.ts.map +1 -1
- package/dist/src/routes/commerce.js +65 -15
- package/dist/src/routes/commerce.js.map +1 -1
- package/dist/src/routes/csm.d.ts.map +1 -1
- package/dist/src/routes/csm.js +3 -1
- package/dist/src/routes/csm.js.map +1 -1
- package/dist/src/routes/ecosystem-apps.d.ts.map +1 -1
- package/dist/src/routes/ecosystem-apps.js +7 -6
- package/dist/src/routes/ecosystem-apps.js.map +1 -1
- package/dist/src/routes/exchange-market.d.ts.map +1 -1
- package/dist/src/routes/exchange-market.js +10 -6
- package/dist/src/routes/exchange-market.js.map +1 -1
- package/dist/src/routes/exchange.d.ts +10 -1
- package/dist/src/routes/exchange.d.ts.map +1 -1
- package/dist/src/routes/exchange.js +344 -9
- package/dist/src/routes/exchange.js.map +1 -1
- package/dist/src/routes/extensions/actions.d.ts +2 -0
- package/dist/src/routes/extensions/actions.d.ts.map +1 -1
- package/dist/src/routes/extensions/actions.js +47 -8
- package/dist/src/routes/extensions/actions.js.map +1 -1
- package/dist/src/routes/extensions/entitlement-gate.d.ts +44 -7
- package/dist/src/routes/extensions/entitlement-gate.d.ts.map +1 -1
- package/dist/src/routes/extensions/entitlement-gate.js +21 -142
- package/dist/src/routes/extensions/entitlement-gate.js.map +1 -1
- package/dist/src/routes/extensions/internal-pass.d.ts +23 -0
- package/dist/src/routes/extensions/internal-pass.d.ts.map +1 -0
- package/dist/src/routes/extensions/internal-pass.js +70 -0
- package/dist/src/routes/extensions/internal-pass.js.map +1 -0
- package/dist/src/routes/extensions/manifest.d.ts +4 -0
- package/dist/src/routes/extensions/manifest.d.ts.map +1 -1
- package/dist/src/routes/extensions/manifest.js +68 -4
- package/dist/src/routes/extensions/manifest.js.map +1 -1
- package/dist/src/routes/extensions/metered-response.d.ts +37 -0
- package/dist/src/routes/extensions/metered-response.d.ts.map +1 -0
- package/dist/src/routes/extensions/metered-response.js +60 -0
- package/dist/src/routes/extensions/metered-response.js.map +1 -0
- package/dist/src/routes/extensions/pacing.d.ts +31 -0
- package/dist/src/routes/extensions/pacing.d.ts.map +1 -1
- package/dist/src/routes/extensions/pacing.js +5 -33
- package/dist/src/routes/extensions/pacing.js.map +1 -1
- package/dist/src/routes/extensions/paywall.d.ts +16 -0
- package/dist/src/routes/extensions/paywall.d.ts.map +1 -1
- package/dist/src/routes/extensions/paywall.js +157 -8
- package/dist/src/routes/extensions/paywall.js.map +1 -1
- package/dist/src/routes/extensions/priced-binding.d.ts +50 -0
- package/dist/src/routes/extensions/priced-binding.d.ts.map +1 -0
- package/dist/src/routes/extensions/priced-binding.js +46 -0
- package/dist/src/routes/extensions/priced-binding.js.map +1 -0
- package/dist/src/routes/federation-genesis.d.ts.map +1 -1
- package/dist/src/routes/federation-genesis.js +14 -5
- package/dist/src/routes/federation-genesis.js.map +1 -1
- package/dist/src/routes/federation-peer/introduce.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/introduce.js +3 -1
- package/dist/src/routes/federation-peer/introduce.js.map +1 -1
- package/dist/src/routes/federation-peer/lifecycle.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/lifecycle.js +3 -2
- package/dist/src/routes/federation-peer/lifecycle.js.map +1 -1
- package/dist/src/routes/federation-peer/peers.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/peers.js +5 -3
- package/dist/src/routes/federation-peer/peers.js.map +1 -1
- package/dist/src/routes/federation-peer/policy-book.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/policy-book.js +2 -1
- package/dist/src/routes/federation-peer/policy-book.js.map +1 -1
- package/dist/src/routes/federation-peer/promotion.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/promotion.js +4 -1
- package/dist/src/routes/federation-peer/promotion.js.map +1 -1
- package/dist/src/routes/federation-settlements.js +2 -2
- package/dist/src/routes/federation-settlements.js.map +1 -1
- package/dist/src/routes/federation-sync/catalogue-trust.js +5 -3
- package/dist/src/routes/federation-sync/catalogue-trust.js.map +1 -1
- package/dist/src/routes/federation-sync/messaging.js +5 -3
- package/dist/src/routes/federation-sync/messaging.js.map +1 -1
- package/dist/src/routes/federation-sync/routing.d.ts.map +1 -1
- package/dist/src/routes/federation-sync/routing.js +7 -5
- package/dist/src/routes/federation-sync/routing.js.map +1 -1
- package/dist/src/routes/flags.d.ts.map +1 -1
- package/dist/src/routes/flags.js +3 -1
- package/dist/src/routes/flags.js.map +1 -1
- package/dist/src/routes/ghii/register-login.js +1 -1
- package/dist/src/routes/ghii/register-login.js.map +1 -1
- package/dist/src/routes/instances/install.d.ts.map +1 -1
- package/dist/src/routes/instances/install.js +2 -1
- package/dist/src/routes/instances/install.js.map +1 -1
- package/dist/src/routes/instances/manage.d.ts.map +1 -1
- package/dist/src/routes/instances/manage.js +2 -1
- package/dist/src/routes/instances/manage.js.map +1 -1
- package/dist/src/routes/knowledge/packages-core.d.ts.map +1 -1
- package/dist/src/routes/knowledge/packages-core.js +2 -1
- package/dist/src/routes/knowledge/packages-core.js.map +1 -1
- package/dist/src/routes/knowledge/sharing.d.ts.map +1 -1
- package/dist/src/routes/knowledge/sharing.js +2 -1
- package/dist/src/routes/knowledge/sharing.js.map +1 -1
- package/dist/src/routes/library-packs.d.ts.map +1 -1
- package/dist/src/routes/library-packs.js +10 -3
- package/dist/src/routes/library-packs.js.map +1 -1
- package/dist/src/routes/libs.d.ts +9 -0
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +11 -2
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/matches.d.ts.map +1 -1
- package/dist/src/routes/matches.js +7 -3
- package/dist/src/routes/matches.js.map +1 -1
- package/dist/src/routes/memory/bulk.d.ts.map +1 -1
- package/dist/src/routes/memory/bulk.js +3 -1
- package/dist/src/routes/memory/bulk.js.map +1 -1
- package/dist/src/routes/memory/crud.d.ts.map +1 -1
- package/dist/src/routes/memory/crud.js +4 -2
- package/dist/src/routes/memory/crud.js.map +1 -1
- package/dist/src/routes/memory/federation.d.ts.map +1 -1
- package/dist/src/routes/memory/federation.js +5 -0
- package/dist/src/routes/memory/federation.js.map +1 -1
- package/dist/src/routes/memory/key.d.ts.map +1 -1
- package/dist/src/routes/memory/key.js +9 -4
- package/dist/src/routes/memory/key.js.map +1 -1
- package/dist/src/routes/messages.d.ts.map +1 -1
- package/dist/src/routes/messages.js +2 -1
- package/dist/src/routes/messages.js.map +1 -1
- package/dist/src/routes/msm.d.ts.map +1 -1
- package/dist/src/routes/msm.js +3 -1
- package/dist/src/routes/msm.js.map +1 -1
- package/dist/src/routes/oauth-login.d.ts.map +1 -1
- package/dist/src/routes/oauth-login.js +1 -0
- package/dist/src/routes/oauth-login.js.map +1 -1
- package/dist/src/routes/openrouter.js +2 -2
- package/dist/src/routes/openrouter.js.map +1 -1
- package/dist/src/routes/organisms/crud.d.ts.map +1 -1
- package/dist/src/routes/organisms/crud.js +3 -2
- package/dist/src/routes/organisms/crud.js.map +1 -1
- package/dist/src/routes/organisms/gates.d.ts.map +1 -1
- package/dist/src/routes/organisms/gates.js +3 -2
- package/dist/src/routes/organisms/gates.js.map +1 -1
- package/dist/src/routes/organisms/intake.d.ts.map +1 -1
- package/dist/src/routes/organisms/intake.js +13 -1
- package/dist/src/routes/organisms/intake.js.map +1 -1
- package/dist/src/routes/organisms/shared.d.ts.map +1 -1
- package/dist/src/routes/organisms/shared.js +7 -3
- package/dist/src/routes/organisms/shared.js.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.js +6 -5
- package/dist/src/routes/organisms/workspace-ops.js.map +1 -1
- package/dist/src/routes/organisms/workspace-read.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-read.js +4 -2
- package/dist/src/routes/organisms/workspace-read.js.map +1 -1
- package/dist/src/routes/owners.d.ts.map +1 -1
- package/dist/src/routes/owners.js +37 -12
- package/dist/src/routes/owners.js.map +1 -1
- package/dist/src/routes/personal.js +3 -1
- package/dist/src/routes/personal.js.map +1 -1
- package/dist/src/routes/portal.d.ts +6 -1
- package/dist/src/routes/portal.d.ts.map +1 -1
- package/dist/src/routes/portal.js +75 -10
- package/dist/src/routes/portal.js.map +1 -1
- package/dist/src/routes/portfolio.d.ts.map +1 -1
- package/dist/src/routes/portfolio.js +5 -1
- package/dist/src/routes/portfolio.js.map +1 -1
- package/dist/src/routes/prompts.d.ts.map +1 -1
- package/dist/src/routes/prompts.js +36 -2
- package/dist/src/routes/prompts.js.map +1 -1
- package/dist/src/routes/public-events.d.ts.map +1 -1
- package/dist/src/routes/public-events.js +4 -1
- package/dist/src/routes/public-events.js.map +1 -1
- package/dist/src/routes/public-stats.d.ts.map +1 -1
- package/dist/src/routes/public-stats.js +29 -10
- package/dist/src/routes/public-stats.js.map +1 -1
- package/dist/src/routes/schedules.d.ts +3 -0
- package/dist/src/routes/schedules.d.ts.map +1 -1
- package/dist/src/routes/schedules.js +14 -1
- package/dist/src/routes/schedules.js.map +1 -1
- package/dist/src/routes/stats.d.ts.map +1 -1
- package/dist/src/routes/stats.js +5 -1
- package/dist/src/routes/stats.js.map +1 -1
- package/dist/src/routes/storage-files.d.ts +4 -0
- package/dist/src/routes/storage-files.d.ts.map +1 -1
- package/dist/src/routes/storage-files.js +11 -0
- package/dist/src/routes/storage-files.js.map +1 -1
- package/dist/src/routes/subdomains.d.ts +9 -0
- package/dist/src/routes/subdomains.d.ts.map +1 -1
- package/dist/src/routes/subdomains.js +66 -5
- package/dist/src/routes/subdomains.js.map +1 -1
- package/dist/src/routes/unfurl.d.ts.map +1 -1
- package/dist/src/routes/unfurl.js +13 -3
- package/dist/src/routes/unfurl.js.map +1 -1
- package/dist/src/routes/upload.d.ts +11 -0
- package/dist/src/routes/upload.d.ts.map +1 -1
- package/dist/src/routes/upload.js +99 -9
- package/dist/src/routes/upload.js.map +1 -1
- package/dist/src/routes/wallet.d.ts +3 -0
- package/dist/src/routes/wallet.d.ts.map +1 -1
- package/dist/src/routes/wallet.js +6 -1
- package/dist/src/routes/wallet.js.map +1 -1
- package/dist/src/routes/webmcp.d.ts +8 -0
- package/dist/src/routes/webmcp.d.ts.map +1 -1
- package/dist/src/routes/webmcp.js +96 -49
- package/dist/src/routes/webmcp.js.map +1 -1
- package/dist/src/routes/wellknown.d.ts.map +1 -1
- package/dist/src/routes/wellknown.js +1 -0
- package/dist/src/routes/wellknown.js.map +1 -1
- package/dist/src/server-bootstrap/config-init.d.ts.map +1 -1
- package/dist/src/server-bootstrap/config-init.js +2 -0
- package/dist/src/server-bootstrap/config-init.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts +4 -2
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +11 -22
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/server-bootstrap/service-init.js +3 -1
- package/dist/src/server-bootstrap/service-init.js.map +1 -1
- package/dist/src/server-bootstrap/static-files.d.ts.map +1 -1
- package/dist/src/server-bootstrap/static-files.js +3 -1
- package/dist/src/server-bootstrap/static-files.js.map +1 -1
- package/dist/src/services/agent-statistics.d.ts.map +1 -1
- package/dist/src/services/agent-statistics.js +4 -1
- package/dist/src/services/agent-statistics.js.map +1 -1
- package/dist/src/services/app-agent-deploy.d.ts.map +1 -1
- package/dist/src/services/app-agent-deploy.js +4 -1
- package/dist/src/services/app-agent-deploy.js.map +1 -1
- package/dist/src/services/app-agent-surface.d.ts +78 -0
- package/dist/src/services/app-agent-surface.d.ts.map +1 -0
- package/dist/src/services/app-agent-surface.js +74 -0
- package/dist/src/services/app-agent-surface.js.map +1 -0
- package/dist/src/services/app-tool-names.d.ts +15 -0
- package/dist/src/services/app-tool-names.d.ts.map +1 -0
- package/dist/src/services/app-tool-names.js +24 -0
- package/dist/src/services/app-tool-names.js.map +1 -0
- package/dist/src/services/appdev-overview.d.ts.map +1 -1
- package/dist/src/services/appdev-overview.js +3 -2
- package/dist/src/services/appdev-overview.js.map +1 -1
- package/dist/src/services/attachment-duplication.js +3 -3
- package/dist/src/services/attachment-duplication.js.map +1 -1
- package/dist/src/services/build-extension-prompt.d.ts +40 -0
- package/dist/src/services/build-extension-prompt.d.ts.map +1 -0
- package/dist/src/services/build-extension-prompt.js +253 -0
- package/dist/src/services/build-extension-prompt.js.map +1 -0
- package/dist/src/services/cache-cleanup.d.ts.map +1 -1
- package/dist/src/services/cache-cleanup.js +2 -1
- package/dist/src/services/cache-cleanup.js.map +1 -1
- package/dist/src/services/call-timing.d.ts.map +1 -1
- package/dist/src/services/call-timing.js +2 -1
- package/dist/src/services/call-timing.js.map +1 -1
- package/dist/src/services/capability-invoke.d.ts +6 -1
- package/dist/src/services/capability-invoke.d.ts.map +1 -1
- package/dist/src/services/capability-invoke.js +14 -2
- package/dist/src/services/capability-invoke.js.map +1 -1
- package/dist/src/services/catalogue-sync.d.ts.map +1 -1
- package/dist/src/services/catalogue-sync.js +1 -0
- package/dist/src/services/catalogue-sync.js.map +1 -1
- package/dist/src/services/component-registrar.d.ts.map +1 -1
- package/dist/src/services/component-registrar.js +22 -6
- package/dist/src/services/component-registrar.js.map +1 -1
- package/dist/src/services/config-loader.d.ts.map +1 -1
- package/dist/src/services/config-loader.js +6 -1
- package/dist/src/services/config-loader.js.map +1 -1
- package/dist/src/services/config-schema.d.ts.map +1 -1
- package/dist/src/services/config-schema.js +1 -0
- package/dist/src/services/config-schema.js.map +1 -1
- package/dist/src/services/connect-tunnel.d.ts.map +1 -1
- package/dist/src/services/connect-tunnel.js +17 -6
- package/dist/src/services/connect-tunnel.js.map +1 -1
- package/dist/src/services/consent.d.ts.map +1 -1
- package/dist/src/services/consent.js +3 -1
- package/dist/src/services/consent.js.map +1 -1
- package/dist/src/services/consul-config.d.ts.map +1 -1
- package/dist/src/services/consul-config.js +7 -2
- package/dist/src/services/consul-config.js.map +1 -1
- package/dist/src/services/contacts.js +4 -2
- package/dist/src/services/contacts.js.map +1 -1
- package/dist/src/services/core-jobs.js +1 -1
- package/dist/src/services/core-jobs.js.map +1 -1
- package/dist/src/services/db/agent-messages-overview-db-service.d.ts.map +1 -1
- package/dist/src/services/db/agent-messages-overview-db-service.js +2 -1
- package/dist/src/services/db/agent-messages-overview-db-service.js.map +1 -1
- package/dist/src/services/db/agent-quality-overview-db-service.d.ts.map +1 -1
- package/dist/src/services/db/agent-quality-overview-db-service.js +2 -1
- package/dist/src/services/db/agent-quality-overview-db-service.js.map +1 -1
- package/dist/src/services/db/messages-inbox-db-service.d.ts.map +1 -1
- package/dist/src/services/db/messages-inbox-db-service.js +3 -2
- package/dist/src/services/db/messages-inbox-db-service.js.map +1 -1
- package/dist/src/services/db/messaging-db-service.d.ts.map +1 -1
- package/dist/src/services/db/messaging-db-service.js +3 -2
- package/dist/src/services/db/messaging-db-service.js.map +1 -1
- package/dist/src/services/db/wallet-tab-db-service.d.ts +3 -3
- package/dist/src/services/doc-images.d.ts.map +1 -1
- package/dist/src/services/doc-images.js +7 -4
- package/dist/src/services/doc-images.js.map +1 -1
- package/dist/src/services/ecosystem-automation-notify.d.ts.map +1 -1
- package/dist/src/services/ecosystem-automation-notify.js +10 -4
- package/dist/src/services/ecosystem-automation-notify.js.map +1 -1
- package/dist/src/services/ecosystem-automation.d.ts.map +1 -1
- package/dist/src/services/ecosystem-automation.js +3 -2
- package/dist/src/services/ecosystem-automation.js.map +1 -1
- package/dist/src/services/ecosystem-events.js +1 -1
- package/dist/src/services/ecosystem-events.js.map +1 -1
- package/dist/src/services/entitlement-merge.d.ts +50 -0
- package/dist/src/services/entitlement-merge.d.ts.map +1 -0
- package/dist/src/services/entitlement-merge.js +116 -0
- package/dist/src/services/entitlement-merge.js.map +1 -0
- package/dist/src/services/entitlement-money.d.ts.map +1 -1
- package/dist/src/services/entitlement-money.js +4 -1
- package/dist/src/services/entitlement-money.js.map +1 -1
- package/dist/src/services/exchange-market.d.ts +47 -2
- package/dist/src/services/exchange-market.d.ts.map +1 -1
- package/dist/src/services/exchange-market.js +80 -9
- package/dist/src/services/exchange-market.js.map +1 -1
- package/dist/src/services/exchange-projection.d.ts +8 -2
- package/dist/src/services/exchange-projection.d.ts.map +1 -1
- package/dist/src/services/exchange-projection.js +146 -21
- package/dist/src/services/exchange-projection.js.map +1 -1
- package/dist/src/services/exchange-proposals.d.ts.map +1 -1
- package/dist/src/services/exchange-proposals.js +4 -2
- package/dist/src/services/exchange-proposals.js.map +1 -1
- package/dist/src/services/extension-purchase.d.ts +36 -0
- package/dist/src/services/extension-purchase.d.ts.map +1 -0
- package/dist/src/services/extension-purchase.js +110 -0
- package/dist/src/services/extension-purchase.js.map +1 -0
- package/dist/src/services/extension-runtime.d.ts +23 -1
- package/dist/src/services/extension-runtime.d.ts.map +1 -1
- package/dist/src/services/extension-runtime.js +21 -4
- package/dist/src/services/extension-runtime.js.map +1 -1
- package/dist/src/services/extension-secrets.d.ts +8 -0
- package/dist/src/services/extension-secrets.d.ts.map +1 -1
- package/dist/src/services/extension-secrets.js +14 -0
- package/dist/src/services/extension-secrets.js.map +1 -1
- package/dist/src/services/federation-availability.d.ts.map +1 -1
- package/dist/src/services/federation-availability.js +1 -0
- package/dist/src/services/federation-availability.js.map +1 -1
- package/dist/src/services/federation-book.js +15 -7
- package/dist/src/services/federation-book.js.map +1 -1
- package/dist/src/services/federation-helpers.d.ts.map +1 -1
- package/dist/src/services/federation-helpers.js +1 -0
- package/dist/src/services/federation-helpers.js.map +1 -1
- package/dist/src/services/federation.d.ts.map +1 -1
- package/dist/src/services/federation.js +8 -6
- package/dist/src/services/federation.js.map +1 -1
- package/dist/src/services/gate-expiry.d.ts.map +1 -1
- package/dist/src/services/gate-expiry.js +2 -1
- package/dist/src/services/gate-expiry.js.map +1 -1
- package/dist/src/services/genesis-sync.d.ts.map +1 -1
- package/dist/src/services/genesis-sync.js +9 -4
- package/dist/src/services/genesis-sync.js.map +1 -1
- package/dist/src/services/handbooks/commerce.d.ts +13 -0
- package/dist/src/services/handbooks/commerce.d.ts.map +1 -0
- package/dist/src/services/handbooks/commerce.js +60 -0
- package/dist/src/services/handbooks/commerce.js.map +1 -0
- package/dist/src/services/handbooks/index.d.ts +1 -0
- package/dist/src/services/handbooks/index.d.ts.map +1 -1
- package/dist/src/services/handbooks/index.js +2 -2
- package/dist/src/services/handbooks/index.js.map +1 -1
- package/dist/src/services/hooks.d.ts.map +1 -1
- package/dist/src/services/hooks.js +2 -0
- package/dist/src/services/hooks.js.map +1 -1
- package/dist/src/services/invitations.d.ts.map +1 -1
- package/dist/src/services/invitations.js +2 -0
- package/dist/src/services/invitations.js.map +1 -1
- package/dist/src/services/living-author.d.ts.map +1 -1
- package/dist/src/services/living-author.js +4 -1
- package/dist/src/services/living-author.js.map +1 -1
- package/dist/src/services/living-pulse.js +18 -6
- package/dist/src/services/living-pulse.js.map +1 -1
- package/dist/src/services/mailbox-notification.d.ts.map +1 -1
- package/dist/src/services/mailbox-notification.js +1 -0
- package/dist/src/services/mailbox-notification.js.map +1 -1
- package/dist/src/services/match-notification.d.ts.map +1 -1
- package/dist/src/services/match-notification.js +2 -1
- package/dist/src/services/match-notification.js.map +1 -1
- package/dist/src/services/matching.d.ts.map +1 -1
- package/dist/src/services/matching.js +5 -2
- package/dist/src/services/matching.js.map +1 -1
- package/dist/src/services/memory-replication.d.ts.map +1 -1
- package/dist/src/services/memory-replication.js +3 -1
- package/dist/src/services/memory-replication.js.map +1 -1
- package/dist/src/services/message-broadcast.d.ts.map +1 -1
- package/dist/src/services/message-broadcast.js +2 -1
- package/dist/src/services/message-broadcast.js.map +1 -1
- package/dist/src/services/message-delivery.d.ts.map +1 -1
- package/dist/src/services/message-delivery.js +9 -4
- package/dist/src/services/message-delivery.js.map +1 -1
- package/dist/src/services/metered-access.d.ts +148 -0
- package/dist/src/services/metered-access.d.ts.map +1 -0
- package/dist/src/services/metered-access.js +128 -0
- package/dist/src/services/metered-access.js.map +1 -0
- package/dist/src/services/metered-entitlements.d.ts +140 -5
- package/dist/src/services/metered-entitlements.d.ts.map +1 -1
- package/dist/src/services/metered-entitlements.js +247 -30
- package/dist/src/services/metered-entitlements.js.map +1 -1
- package/dist/src/services/metered-settlement.d.ts +45 -0
- package/dist/src/services/metered-settlement.d.ts.map +1 -0
- package/dist/src/services/metered-settlement.js +117 -0
- package/dist/src/services/metered-settlement.js.map +1 -0
- package/dist/src/services/network-policy.d.ts.map +1 -1
- package/dist/src/services/network-policy.js +6 -2
- package/dist/src/services/network-policy.js.map +1 -1
- package/dist/src/services/notebook-classify.d.ts.map +1 -1
- package/dist/src/services/notebook-classify.js +7 -2
- package/dist/src/services/notebook-classify.js.map +1 -1
- package/dist/src/services/notebook-plan.d.ts.map +1 -1
- package/dist/src/services/notebook-plan.js +4 -1
- package/dist/src/services/notebook-plan.js.map +1 -1
- package/dist/src/services/notify.d.ts.map +1 -1
- package/dist/src/services/notify.js +6 -3
- package/dist/src/services/notify.js.map +1 -1
- package/dist/src/services/openrouter.d.ts.map +1 -1
- package/dist/src/services/openrouter.js +1 -0
- package/dist/src/services/openrouter.js.map +1 -1
- package/dist/src/services/organism-export.d.ts.map +1 -1
- package/dist/src/services/organism-export.js +4 -1
- package/dist/src/services/organism-export.js.map +1 -1
- package/dist/src/services/organism-import.d.ts.map +1 -1
- package/dist/src/services/organism-import.js +5 -1
- package/dist/src/services/organism-import.js.map +1 -1
- package/dist/src/services/perf-trace.js +3 -1
- package/dist/src/services/perf-trace.js.map +1 -1
- package/dist/src/services/personal-tunnel.js +14 -8
- package/dist/src/services/personal-tunnel.js.map +1 -1
- package/dist/src/services/presence.d.ts.map +1 -1
- package/dist/src/services/presence.js +11 -5
- package/dist/src/services/presence.js.map +1 -1
- package/dist/src/services/protected-resource.d.ts +60 -0
- package/dist/src/services/protected-resource.d.ts.map +1 -0
- package/dist/src/services/protected-resource.js +137 -0
- package/dist/src/services/protected-resource.js.map +1 -0
- package/dist/src/services/realtime-manager.d.ts.map +1 -1
- package/dist/src/services/realtime-manager.js +8 -5
- package/dist/src/services/realtime-manager.js.map +1 -1
- package/dist/src/services/safe-zip.d.ts.map +1 -1
- package/dist/src/services/safe-zip.js +4 -1
- package/dist/src/services/safe-zip.js.map +1 -1
- package/dist/src/services/scheduler-extension-job.js +2 -2
- package/dist/src/services/scheduler-extension-job.js.map +1 -1
- package/dist/src/services/scheduler.js +13 -7
- package/dist/src/services/scheduler.js.map +1 -1
- package/dist/src/services/security-incident.d.ts.map +1 -1
- package/dist/src/services/security-incident.js +7 -2
- package/dist/src/services/security-incident.js.map +1 -1
- package/dist/src/services/site-sync.d.ts.map +1 -1
- package/dist/src/services/site-sync.js +1 -0
- package/dist/src/services/site-sync.js.map +1 -1
- package/dist/src/services/site.d.ts +1 -1
- package/dist/src/services/site.d.ts.map +1 -1
- package/dist/src/services/site.js +29 -8
- package/dist/src/services/site.js.map +1 -1
- package/dist/src/services/structure-overview.d.ts.map +1 -1
- package/dist/src/services/structure-overview.js +4 -1
- package/dist/src/services/structure-overview.js.map +1 -1
- package/dist/src/services/structure-snapshot.d.ts.map +1 -1
- package/dist/src/services/structure-snapshot.js +3 -2
- package/dist/src/services/structure-snapshot.js.map +1 -1
- package/dist/src/services/sync-scheduler.js +3 -2
- package/dist/src/services/sync-scheduler.js.map +1 -1
- package/dist/src/services/tracked-response.js +1 -1
- package/dist/src/services/tracked-response.js.map +1 -1
- package/dist/src/services/trust-broadcast.d.ts.map +1 -1
- package/dist/src/services/trust-broadcast.js +1 -0
- package/dist/src/services/trust-broadcast.js.map +1 -1
- package/dist/src/services/upload-zip.d.ts +7 -0
- package/dist/src/services/upload-zip.d.ts.map +1 -1
- package/dist/src/services/upload-zip.js +19 -85
- package/dist/src/services/upload-zip.js.map +1 -1
- package/dist/src/services/web-bot-auth.d.ts.map +1 -1
- package/dist/src/services/web-bot-auth.js +1 -0
- package/dist/src/services/web-bot-auth.js.map +1 -1
- package/dist/src/services/workflow/engine-steps.d.ts.map +1 -1
- package/dist/src/services/workflow/engine-steps.js +12 -6
- package/dist/src/services/workflow/engine-steps.js.map +1 -1
- package/dist/src/services/workspace-export.d.ts.map +1 -1
- package/dist/src/services/workspace-export.js +5 -2
- package/dist/src/services/workspace-export.js.map +1 -1
- package/dist/src/services/workspace-import.d.ts.map +1 -1
- package/dist/src/services/workspace-import.js +2 -1
- package/dist/src/services/workspace-import.js.map +1 -1
- package/dist/src/services/workspace-versions.d.ts.map +1 -1
- package/dist/src/services/workspace-versions.js +0 -0
- package/dist/src/services/workspace-versions.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts +5 -0
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/helpers.d.ts +11 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/helpers.js +14 -0
- package/dist/src/storage/providers/postgres-kysely/helpers.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.d.ts +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.js +6 -0
- package/dist/src/storage/providers/postgres-kysely/methods/app-grants.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.js +3 -3
- package/dist/src/storage/providers/postgres-kysely/methods/capabilities.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.js +3 -3
- package/dist/src/storage/providers/postgres-kysely/methods/ecosystem.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/federation.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/federation.js +12 -10
- package/dist/src/storage/providers/postgres-kysely/methods/federation.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/identity.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js +26 -12
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.js +5 -5
- package/dist/src/storage/providers/postgres-kysely/methods/marketplace.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.d.ts +9 -0
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.js +31 -27
- package/dist/src/storage/providers/postgres-kysely/methods/node-ext-escrow.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.js +10 -14
- package/dist/src/storage/providers/postgres-kysely/methods/organisms.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/otk.js +3 -3
- package/dist/src/storage/providers/postgres-kysely/methods/otk.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/packages.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/packages.js +4 -14
- package/dist/src/storage/providers/postgres-kysely/methods/packages.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.js +11 -10
- package/dist/src/storage/providers/postgres-kysely/methods/template-listings.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js +3 -1
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/migrate.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/migrate.js +3 -0
- package/dist/src/storage/providers/postgres-kysely/migrate.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/migrations/0013_ghii_password_lockout.sql +12 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0014_transaction_initiator.sql +6 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0015_app_grant_spend_cap.sql +5 -0
- package/dist/src/storage/providers/sqlite/methods/apps.d.ts +1 -1
- package/dist/src/storage/providers/sqlite/methods/apps.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/apps.js +12 -2
- package/dist/src/storage/providers/sqlite/methods/apps.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.js +6 -1
- package/dist/src/storage/providers/sqlite/methods/community.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.js +9 -2
- package/dist/src/storage/providers/sqlite/methods/identity-nodes.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.js +4 -2
- package/dist/src/storage/providers/sqlite/methods/work.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/community.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/community.js +6 -1
- package/dist/src/storage/providers/sqlite/repos/community.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/identity.d.ts +3 -0
- package/dist/src/storage/providers/sqlite/repos/identity.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/identity.js +13 -4
- package/dist/src/storage/providers/sqlite/repos/identity.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/work.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/work.js +4 -2
- package/dist/src/storage/providers/sqlite/repos/work.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.js +1 -0
- package/dist/src/storage/providers/sqlite/schema-tables-1.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.js +2 -0
- package/dist/src/storage/providers/sqlite/schema-tables-2.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +14 -1
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/repositories/app-grant.repository.d.ts +1 -1
- package/dist/src/storage/repositories/app-grant.repository.d.ts.map +1 -1
- package/dist/src/storage/types/auth.d.ts +9 -0
- package/dist/src/storage/types/auth.d.ts.map +1 -1
- package/dist/src/storage/types/commerce.d.ts +13 -0
- package/dist/src/storage/types/commerce.d.ts.map +1 -1
- package/dist/src/utils/app-agent-discovery.d.ts +31 -0
- package/dist/src/utils/app-agent-discovery.d.ts.map +1 -0
- package/dist/src/utils/app-agent-discovery.js +96 -0
- package/dist/src/utils/app-agent-discovery.js.map +1 -0
- package/dist/src/utils/app-protect.d.ts.map +1 -1
- package/dist/src/utils/app-protect.js +1 -0
- package/dist/src/utils/app-protect.js.map +1 -1
- package/dist/src/utils/env-validator.d.ts.map +1 -1
- package/dist/src/utils/env-validator.js +5 -1
- package/dist/src/utils/env-validator.js.map +1 -1
- package/dist/src/utils/gaii.d.ts +50 -0
- package/dist/src/utils/gaii.d.ts.map +1 -1
- package/dist/src/utils/gaii.js +66 -0
- package/dist/src/utils/gaii.js.map +1 -1
- package/dist/src/utils/url-validator.d.ts.map +1 -1
- package/dist/src/utils/url-validator.js +4 -1
- package/dist/src/utils/url-validator.js.map +1 -1
- package/dist/src/utils/version.d.ts.map +1 -1
- package/dist/src/utils/version.js +1 -0
- package/dist/src/utils/version.js.map +1 -1
- package/dist/static/sdk-libs/auth/session.js +7 -3
- package/dist/static/sdk-libs/dist/aimeat-auth.js +1 -1
- package/dist/static/sdk-libs/dist/aimeat-exchange.js +675 -0
- package/dist/static/sdk-libs/dist/aimeat-game.js +1555 -0
- package/dist/static/sdk-libs/dist/aimeat-webmcp.js +46 -0
- package/dist/static/sdk-libs/exchange/browse.js +81 -0
- package/dist/static/sdk-libs/exchange/client.js +131 -0
- package/dist/static/sdk-libs/exchange/contracts.js +228 -0
- package/dist/static/sdk-libs/exchange/demand.js +106 -0
- package/dist/static/sdk-libs/exchange/earnings.js +39 -0
- package/dist/static/sdk-libs/exchange/format.js +51 -0
- package/dist/static/sdk-libs/exchange/index.js +70 -0
- package/dist/static/sdk-libs/exchange/odps-completeness.js +177 -0
- package/dist/static/sdk-libs/exchange/sell.js +253 -0
- package/dist/static/sdk-libs/game/board.js +331 -0
- package/dist/static/sdk-libs/game/dom.js +223 -0
- package/dist/static/sdk-libs/game/i18n.js +201 -0
- package/dist/static/sdk-libs/game/index.js +72 -0
- package/dist/static/sdk-libs/game/markers.js +150 -0
- package/dist/static/sdk-libs/game/menu.js +260 -0
- package/dist/static/sdk-libs/game/overlay.js +193 -0
- package/dist/static/sdk-libs/game/progress.js +280 -0
- package/dist/static/sdk-libs/game/score.js +134 -0
- package/dist/static/sdk-libs/game/screen.js +120 -0
- package/dist/static/sdk-libs/game/units.js +55 -0
- package/dist/static/sdk-libs/webmcp/index.js +63 -0
- package/package.json +2 -1
|
@@ -6,8 +6,9 @@ import { notify } from '../../services/notify.js';
|
|
|
6
6
|
import { executeExtensionAction } from '../../services/extension-runtime.js';
|
|
7
7
|
import { makeExtensionFiles } from '../../services/extension-files.js';
|
|
8
8
|
import { logger } from '../../utils/logger.js';
|
|
9
|
-
import { resolveIdentity } from '../../utils/gaii.js';
|
|
10
|
-
import {
|
|
9
|
+
import { resolveIdentity, callerPrincipal } from '../../utils/gaii.js';
|
|
10
|
+
import { INTERNAL_PASS_HEADER } from './internal-pass.js';
|
|
11
|
+
import { enforcePaywall, APP_TOOL_HEADER } from './paywall.js';
|
|
11
12
|
import { recordCallDuration } from '../../services/call-timing.js';
|
|
12
13
|
import { safeFetch } from '../../utils/url-validator.js';
|
|
13
14
|
import { enforceExtensionMemoryLimits } from '../../services/quota.js';
|
|
@@ -20,6 +21,9 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
20
21
|
const instanceId = req.params.instanceId;
|
|
21
22
|
const actionId = req.params.actionId;
|
|
22
23
|
const callerGaii = resolveIdentity(req.auth, config.nodeId);
|
|
24
|
+
// Who PAYS and whose namespace this runs in is `callerGaii`; who ACTED may be a hosted app, and
|
|
25
|
+
// the money path is where that distinction has to survive or nobody can be told an app spent.
|
|
26
|
+
const meteredCaller = callerPrincipal(req.auth, config.nodeId);
|
|
23
27
|
try {
|
|
24
28
|
// Look up the extension
|
|
25
29
|
const ext = await storage.getExtension(extName);
|
|
@@ -55,7 +59,10 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
55
59
|
return;
|
|
56
60
|
}
|
|
57
61
|
// Per-call paywall: owner-free / anti-abuse toll / priced payment (design: paywall.ts).
|
|
58
|
-
const pay = await enforcePaywall({ config, storage, ext, action, callerGaii, res, payToken: req.header('x-aimeat-pay-token') ?? undefined
|
|
62
|
+
const pay = await enforcePaywall({ config, storage, ext, action, callerGaii: meteredCaller, res, payToken: req.header('x-aimeat-pay-token') ?? undefined,
|
|
63
|
+
internalPass: req.header(INTERNAL_PASS_HEADER) ?? undefined,
|
|
64
|
+
namedAppTool: req.header(APP_TOOL_HEADER) ?? undefined,
|
|
65
|
+
session: { roles: req.auth.roles, scopes: req.auth.scopes, appGrantId: req.auth.app_grant ?? null } });
|
|
59
66
|
if (!pay.ok)
|
|
60
67
|
return;
|
|
61
68
|
// Build the ExtensionCtx with instance-scoped memory namespace
|
|
@@ -69,7 +76,7 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
69
76
|
const record = await storage.getMemory(extMemoryOwner, key);
|
|
70
77
|
return record ? record.value : null;
|
|
71
78
|
},
|
|
72
|
-
set: async (key, value) => {
|
|
79
|
+
set: async (key, value, opts) => {
|
|
73
80
|
await enforceExtensionMemoryLimits(config, storage, extMemoryOwner, key, value);
|
|
74
81
|
const existing = await storage.getMemory(extMemoryOwner, key);
|
|
75
82
|
const now = new Date().toISOString();
|
|
@@ -77,7 +84,7 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
77
84
|
key,
|
|
78
85
|
ownerGaii: extMemoryOwner,
|
|
79
86
|
value,
|
|
80
|
-
visibility: 'public',
|
|
87
|
+
visibility: opts?.visibility === 'private' ? 'private' : 'public',
|
|
81
88
|
tags: [],
|
|
82
89
|
ttlHours: null,
|
|
83
90
|
version: existing ? existing.version + 1 : 1,
|
|
@@ -214,6 +221,19 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
214
221
|
owner: req.auth.owner,
|
|
215
222
|
roles: req.auth.roles,
|
|
216
223
|
},
|
|
224
|
+
// Buy a capability from ANOTHER provider, on this extension's owner's account. The other half
|
|
225
|
+
// of a supply chain: the user pays the app, the app pays its supplier, and the difference is
|
|
226
|
+
// the owner's margin. Bills the extension's owner, never the caller — the person calling this
|
|
227
|
+
// app has no relationship with whoever it buys from and should not acquire one.
|
|
228
|
+
buy: async (appRef, tool, buyInput) => {
|
|
229
|
+
const { buyForExtension } = await import('../../services/extension-purchase.js');
|
|
230
|
+
return buyForExtension({
|
|
231
|
+
config, storage, extName: ext.name, extOwner: ext.installedBy,
|
|
232
|
+
appRef, tool, input: buyInput ?? {},
|
|
233
|
+
jwt: (req.headers.authorization || '').replace('Bearer ', ''),
|
|
234
|
+
correlationId: req.header('x-aimeat-correlation') ?? null,
|
|
235
|
+
});
|
|
236
|
+
},
|
|
217
237
|
// Decrypt `type: 'secret'` config fields just before handing them to the sandbox VM.
|
|
218
238
|
config: decryptSecretFields(ext.config, getExtSecretKeys(ext), getEncryptionKey(config)),
|
|
219
239
|
instance: { id: instanceId, config: decryptSecretFields(instance.config, getInstanceSecretKeys(ext), getEncryptionKey(config)) },
|
|
@@ -304,6 +324,9 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
304
324
|
const extName = req.params.extName;
|
|
305
325
|
const actionId = req.params.actionId;
|
|
306
326
|
const callerGaii = resolveIdentity(req.auth, config.nodeId);
|
|
327
|
+
// Who PAYS and whose namespace this runs in is `callerGaii`; who ACTED may be a hosted app, and
|
|
328
|
+
// the money path is where that distinction has to survive or nobody can be told an app spent.
|
|
329
|
+
const meteredCaller = callerPrincipal(req.auth, config.nodeId);
|
|
307
330
|
try {
|
|
308
331
|
// Look up the extension
|
|
309
332
|
const ext = await storage.getExtension(extName);
|
|
@@ -328,7 +351,10 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
328
351
|
return;
|
|
329
352
|
}
|
|
330
353
|
// Per-call paywall: owner-free / anti-abuse toll / priced payment (design: paywall.ts).
|
|
331
|
-
const pay = await enforcePaywall({ config, storage, ext, action, callerGaii, res, payToken: req.header('x-aimeat-pay-token') ?? undefined
|
|
354
|
+
const pay = await enforcePaywall({ config, storage, ext, action, callerGaii: meteredCaller, res, payToken: req.header('x-aimeat-pay-token') ?? undefined,
|
|
355
|
+
internalPass: req.header(INTERNAL_PASS_HEADER) ?? undefined,
|
|
356
|
+
namedAppTool: req.header(APP_TOOL_HEADER) ?? undefined,
|
|
357
|
+
session: { roles: req.auth.roles, scopes: req.auth.scopes, appGrantId: req.auth.app_grant ?? null } });
|
|
332
358
|
if (!pay.ok)
|
|
333
359
|
return;
|
|
334
360
|
// Build the ExtensionCtx
|
|
@@ -341,7 +367,7 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
341
367
|
const record = await storage.getMemory(extMemoryOwner, key);
|
|
342
368
|
return record ? record.value : null;
|
|
343
369
|
},
|
|
344
|
-
set: async (key, value) => {
|
|
370
|
+
set: async (key, value, opts) => {
|
|
345
371
|
await enforceExtensionMemoryLimits(config, storage, extMemoryOwner, key, value);
|
|
346
372
|
const existing = await storage.getMemory(extMemoryOwner, key);
|
|
347
373
|
const now = new Date().toISOString();
|
|
@@ -349,7 +375,7 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
349
375
|
key,
|
|
350
376
|
ownerGaii: extMemoryOwner,
|
|
351
377
|
value,
|
|
352
|
-
visibility: 'public',
|
|
378
|
+
visibility: opts?.visibility === 'private' ? 'private' : 'public',
|
|
353
379
|
tags: [],
|
|
354
380
|
ttlHours: null,
|
|
355
381
|
version: existing ? existing.version + 1 : 1,
|
|
@@ -491,6 +517,19 @@ export function registerExtensionActionRoutes(router, config, storage, emailServ
|
|
|
491
517
|
owner: req.auth.owner,
|
|
492
518
|
roles: req.auth.roles,
|
|
493
519
|
},
|
|
520
|
+
// Buy a capability from ANOTHER provider, on this extension's owner's account. The other half
|
|
521
|
+
// of a supply chain: the user pays the app, the app pays its supplier, and the difference is
|
|
522
|
+
// the owner's margin. Bills the extension's owner, never the caller — the person calling this
|
|
523
|
+
// app has no relationship with whoever it buys from and should not acquire one.
|
|
524
|
+
buy: async (appRef, tool, buyInput) => {
|
|
525
|
+
const { buyForExtension } = await import('../../services/extension-purchase.js');
|
|
526
|
+
return buyForExtension({
|
|
527
|
+
config, storage, extName: ext.name, extOwner: ext.installedBy,
|
|
528
|
+
appRef, tool, input: buyInput ?? {},
|
|
529
|
+
jwt: (req.headers.authorization || '').replace('Bearer ', ''),
|
|
530
|
+
correlationId: req.header('x-aimeat-correlation') ?? null,
|
|
531
|
+
});
|
|
532
|
+
},
|
|
494
533
|
// Decrypt `type: 'secret'` config fields just before handing them to the sandbox VM.
|
|
495
534
|
config: decryptSecretFields(ext.config, getExtSecretKeys(ext), getEncryptionKey(config)),
|
|
496
535
|
log: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../src/routes/extensions/actions.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAGnH,MAAM,UAAU,6BAA6B,CAAC,MAAc,EAAE,MAAoB,EAAE,OAAgB,EAAE,YAA2B;IAC/H,uFAAuF;IACvF,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACtF,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAiB,CAAC;QAC7C,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,UAAoB,CAAC;QACnD,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAkB,CAAC;QAC/C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,IAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,OAAO,aAAa,CAAC,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YAED,2BAA2B;YAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,cAAc,OAAO,iBAAiB,CAAC,CAAC,CAAC;gBAC3C,OAAO;YACT,CAAC;YAED,uBAAuB;YACvB,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACzE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EACnD,aAAa,UAAU,8BAA8B,OAAO,GAAG,CAAC,CAAC,CAAC;gBACpE,OAAO;YACT,CAAC;YAED,0BAA0B;YAC1B,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACjC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAC3D,aAAa,UAAU,mBAAmB,OAAO,iBAAiB,CAAC,CAAC,CAAC;gBACvE,OAAO;YACT,CAAC;YAED,kBAAkB;YAClB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EACnD,WAAW,QAAQ,6BAA6B,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC7D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,WAAW,QAAQ,cAAc,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACxE,OAAO;YACT,CAAC;YAED,wFAAwF;YACxF,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;YAC7I,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO;YAEpB,+DAA+D;YAC/D,4EAA4E;YAC5E,6EAA6E;YAC7E,6EAA6E;YAC7E,MAAM,cAAc,GAAG,OAAO,GAAG,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YACvD,MAAM,GAAG,GAAiB;gBACxB,MAAM,EAAE;oBACN,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;wBAC5D,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBACtC,CAAC;oBACD,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;wBACxB,MAAM,4BAA4B,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;wBAChF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;wBAC9D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;wBACrC,MAAM,OAAO,CAAC,SAAS,CAAC;4BACtB,GAAG;4BACH,SAAS,EAAE,cAAc;4BACzB,KAAK;4BACL,UAAU,EAAE,QAAQ;4BACpB,IAAI,EAAE,EAAE;4BACR,QAAQ,EAAE,IAAI;4BACd,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC5C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;4BAC9C,SAAS,EAAE,GAAG;yBACf,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBACvB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;wBACrE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC5D,CAAC;oBACD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG,CAAC;oBAChE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;wBAClC,oCAAoC;wBACpC,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACrD,mEAAmE;wBACnE,sDAAsD;wBACtD,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;4BACrG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;4BACzD,uFAAuF;4BACvF,+EAA+E;4BAC/E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;4BACzF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;4BACnF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gCACjC,IAAI,CAAC,EAAE,CAAC;oCAAC,MAAM,GAAG,CAAC,CAAC;oCAAC,MAAM;gCAAC,CAAC;4BAC/B,CAAC;wBACH,CAAC;wBACD,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC1E,CAAC;iBACF;gBACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;oBACzB,gFAAgF;oBAChF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;wBAChC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK;wBAC7B,OAAO,EAAE,IAAI,EAAE,OAAO;wBACtB,IAAI,EAAE,IAAI,EAAE,IAAI;wBAChB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;qBACpC,CAAC,CAAC;oBACH,6EAA6E;oBAC7E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;oBAClD,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrD,IAAI,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAEpE,2FAA2F;oBAC3F,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;wBAChE,MAAM,QAAQ,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACzD,MAAM,SAAS,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACpE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;oBACvE,CAAC;oBAED,+EAA+E;oBAC/E,gFAAgF;oBAChF,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;wBACzD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;wBAClC,IAAI,YAAY,GAAG,KAAK,CAAC;wBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC1C,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gCAC3E,YAAY,GAAG,IAAI,CAAC;gCAAC,MAAM;4BAC7B,CAAC;4BACD,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM;gCAC5D,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gCACrE,YAAY,GAAG,IAAI,CAAC;gCAAC,MAAM;4BAC7B,CAAC;wBACH,CAAC;wBACD,IAAI,YAAY;4BAAE,OAAO,GAAG,OAAO,CAAC;oBACtC,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACxE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,OAAO,GAA2B,EAAE,CAAC;oBAC3C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpD,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAC7D,CAAC;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE;wBAChD,kGAAkG;wBAClG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;4BAC5C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;wBAC9E,CAAC;wBACD,IAAI,MAAM,GAAG,MAAM,CAAC,wBAAwB,EAAE,CAAC;4BAC7C,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,wBAAwB,mBAAmB,CAAC,CAAC;wBAC1F,CAAC;wBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;wBAC/D,IAAI,CAAC,OAAO;4BAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;wBACvE,MAAM,OAAO,CAAC,cAAc,CAAC;4BAC3B,EAAE,EAAE,UAAU,UAAU,EAAE,EAAE;4BAC5B,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,mBAAmB;4BACzB,MAAM,EAAE,CAAC,MAAM;4BACf,YAAY,EAAE,OAAO,GAAG,CAAC,IAAI,IAAI,UAAU,IAAI,MAAM,EAAE;4BACvD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACpC,CAAC,CAAC;wBACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBAC3B,CAAC;oBACD,UAAU,EAAE,KAAK,IAAI,EAAE;wBACrB,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;wBAC3E,IAAI,CAAC,MAAM;4BAAE,OAAO,CAAC,CAAC;wBACtB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACxD,OAAO,IAAI,EAAE,aAAa,IAAI,CAAC,CAAC;oBAClC,CAAC;iBACF;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;wBAC3B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACxE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;oBACjD,CAAC;oBACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;wBAC7B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACxE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC;4BAC7C,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;wBAChD,CAAC;oBACH,CAAC;iBACF;gBACD,KAAK,EAAE;oBACL,QAAQ,EAAE,KAAK,EAAE,IAAY,EAAE,EAAE;wBAC/B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC3C,OAAO,KAAK,EAAE,UAAU,IAAI,CAAC,CAAC;oBAChC,CAAC;iBACF;gBACD,mFAAmF;gBACnF,0FAA0F;gBAC1F,8DAA8D;gBAC9D,KAAK,EAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,CAAC,IAAK,CAAC,KAAe,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBACrH,MAAM,EAAE;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,GAAG,CAAC,IAAK,CAAC,KAAK;oBACtB,KAAK,EAAE,GAAG,CAAC,IAAK,CAAC,KAAK;iBACvB;gBACD,qFAAqF;gBACrF,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACxF,QAAQ,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE;gBAChI,GAAG,EAAE;oBACH,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,UAAU,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;oBAChF,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,UAAU,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;oBAChF,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,IAAI,IAAI,UAAU,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;iBACnF;gBACD,MAAM,EAAE,KAAK,EAAE,OAAe,EAAE,IAA8D,EAAE,EAAE;oBAChG,MAAM,GAAG,GAAG,iBAAiB,GAAG,CAAC,IAAK,CAAC,KAAK,EAAE,CAAC;oBAC/C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;oBAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAE,QAAQ,CAAC,KAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAC1N,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAChR,8EAA8E;oBAC9E,qCAAqC;oBACrC,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,IAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE;wBAC1D,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,4BAA4B;qBACrG,CAAC,CAAC;oBACH,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,KAAK,EAAE,KAAK,EAAE,EAAU,EAAE,OAAe,EAAE,IAAY,EAAE,EAAE;oBACzD,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;wBAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,6CAA6C,CAAC,CAAC;wBAAC,OAAO,KAAK,CAAC;oBAAC,CAAC;oBACzH,wCAAwC;oBACxC,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,cAAc,EAAE,CAAC;wBAC/C,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,IAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;oBACpD,kDAAkD;oBAClD,IAAI,OAAO,EAAE,iBAAiB,KAAK,EAAE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;wBACjE,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,4CAA4C;oBAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAChF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,iBAAiB,IAAI,CAAC,CAAC,WAAW,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;wBAC/F,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,iDAAiD,CAAC,CAAC;oBAC/E,OAAO,KAAK,CAAC;gBACf,CAAC;aACF,CAAC;YAEF,oCAAoC;YACpC,uDAAuD;YACvD,MAAM,MAAM,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,oBAAoB,CAAC;gBAClF,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,kBAAkB,CAAC;gBACpF,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,oBAAoB,CAAC;aACzF,CAAC;YACF,IAAI,MAAM,CAAC;YACX,gGAAgG;YAChG,gGAAgG;YAChG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC,IAA+B,EAAE,MAAM,CAAC,CAAC;YAChH,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,IAAI,GAAG,CAAC,MAAM;oBAAE,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,CAAG,oDAAoD;gBAC1F,MAAM,OAAO,CAAC;YAChB,CAAC;YACD,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;YAEhH,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE;gBACtC,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,kBAAkB,OAAO,EAAE,EAAE;aACnF,CAAC,CAAC,CAAC;YACJ,UAAU,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAI,GAAa,CAAC,OAAO,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,IAAI,UAAU,IAAI,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAEtH,IAAI,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAC3D,WAAW,QAAQ,aAAa,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,WAAW,QAAQ,2BAA2B,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,EACzD,WAAW,QAAQ,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QAC1E,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,OAAiB,CAAC;QAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAkB,CAAC;QAC/C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,IAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAE7D,IAAI,CAAC;YACH,wBAAwB;YACxB,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAChD,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,cAAc,OAAO,aAAa,CAAC,CAAC,CAAC;gBAC5F,OAAO;YACT,CAAC;YAED,2BAA2B;YAC3B,IAAI,GAAG,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC5B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,cAAc,OAAO,iBAAiB,CAAC,CAAC,CAAC;gBAC3C,OAAO;YACT,CAAC;YAED,kBAAkB;YAClB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;YACxD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EACnD,WAAW,QAAQ,6BAA6B,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC/D,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC7D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,WAAW,QAAQ,cAAc,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACxE,OAAO;YACT,CAAC;YAED,wFAAwF;YACxF,MAAM,GAAG,GAAG,MAAM,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;YAC7I,IAAI,CAAC,GAAG,CAAC,EAAE;gBAAE,OAAO;YAEpB,yBAAyB;YACzB,kEAAkE;YAClE,wEAAwE;YACxE,MAAM,cAAc,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,GAAG,GAAiB;gBACxB,MAAM,EAAE;oBACN,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;wBACjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;wBAC5D,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBACtC,CAAC;oBACD,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;wBACxB,MAAM,4BAA4B,CAAC,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;wBAChF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;wBAC9D,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;wBACrC,MAAM,OAAO,CAAC,SAAS,CAAC;4BACtB,GAAG;4BACH,SAAS,EAAE,cAAc;4BACzB,KAAK;4BACL,UAAU,EAAE,QAAQ;4BACpB,IAAI,EAAE,EAAE;4BACR,QAAQ,EAAE,IAAI;4BACd,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC5C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG;4BAC9C,SAAS,EAAE,GAAG;yBACf,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;wBACvB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;wBACrE,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBAC5D,CAAC;oBACD,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,cAAc,EAAE,GAAG,CAAC;oBAChE,yFAAyF;oBACzF,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,EAAE;wBAClC,oCAAoC;wBACpC,IAAI,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;wBACrD,mEAAmE;wBACnE,sDAAsD;wBACtD,IAAI,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;4BACrG,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;4BACzD,uFAAuF;4BACvF,+EAA+E;4BAC/E,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;4BACzF,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;4BACnF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gCAC3B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gCACjC,IAAI,CAAC,EAAE,CAAC;oCAAC,MAAM,GAAG,CAAC,CAAC;oCAAC,MAAM;gCAAC,CAAC;4BAC/B,CAAC;wBACH,CAAC;wBACD,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC1E,CAAC;iBACF;gBACD,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;oBACzB,gFAAgF;oBAChF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;wBAChC,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK;wBAC7B,OAAO,EAAE,IAAI,EAAE,OAAO;wBACtB,IAAI,EAAE,IAAI,EAAE,IAAI;wBAChB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;qBACpC,CAAC,CAAC;oBACH,6EAA6E;oBAC7E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;oBACrC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;oBAClD,MAAM,cAAc,GAAG,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACrD,IAAI,OAAO,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAEpE,2FAA2F;oBAC3F,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;wBAChE,MAAM,QAAQ,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACzD,MAAM,SAAS,GAAG,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACpE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;oBACvE,CAAC;oBAED,+EAA+E;oBAC/E,gFAAgF;oBAChF,IAAI,OAAO,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;wBACzD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;wBAClC,IAAI,YAAY,GAAG,KAAK,CAAC;wBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC1C,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gCAC3E,YAAY,GAAG,IAAI,CAAC;gCAAC,MAAM;4BAC7B,CAAC;4BACD,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM;gCAC5D,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;gCACrE,YAAY,GAAG,IAAI,CAAC;gCAAC,MAAM;4BAC7B,CAAC;wBACH,CAAC;wBACD,IAAI,YAAY;4BAAE,OAAO,GAAG,OAAO,CAAC;oBACtC,CAAC;oBAED,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACxE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,OAAO,GAA2B,EAAE,CAAC;oBAC3C,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpD,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAC7D,CAAC;gBACD,MAAM,EAAE;oBACN,sEAAsE;oBACtE,OAAO,EAAE,KAAK,EAAE,MAAc,EAAE,MAAc,EAAE,EAAE;wBAChD,kGAAkG;wBAClG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;4BAC5C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;wBAC9E,CAAC;wBACD,IAAI,MAAM,GAAG,MAAM,CAAC,wBAAwB,EAAE,CAAC;4BAC7C,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,wBAAwB,mBAAmB,CAAC,CAAC;wBAC1F,CAAC;wBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;wBAC/D,IAAI,CAAC,OAAO;4BAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;wBACvE,MAAM,OAAO,CAAC,cAAc,CAAC;4BAC3B,EAAE,EAAE,UAAU,UAAU,EAAE,EAAE;4BAC5B,IAAI,EAAE,UAAU;4BAChB,IAAI,EAAE,mBAAmB;4BACzB,MAAM,EAAE,CAAC,MAAM;4BACf,YAAY,EAAE,OAAO,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE;4BACzC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACpC,CAAC,CAAC;wBACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;oBAC3B,CAAC;oBACD,qEAAqE;oBACrE,UAAU,EAAE,KAAK,IAAI,EAAE;wBACrB,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;wBAC3E,IAAI,CAAC,MAAM;4BAAE,OAAO,CAAC,CAAC;wBACtB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACxD,OAAO,IAAI,EAAE,aAAa,IAAI,CAAC,CAAC;oBAClC,CAAC;oBACD,+EAA+E;iBAChF;gBACD,OAAO,EAAE;oBACP,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;wBAC3B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACxE,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;oBACjD,CAAC;oBACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE;wBAC7B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wBACxE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,EAAE,CAAC;4BAC7C,MAAM,IAAI,KAAK,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAC;wBAChD,CAAC;oBACH,CAAC;iBACF;gBACD,KAAK,EAAE;oBACL,QAAQ,EAAE,KAAK,EAAE,IAAY,EAAE,EAAE;wBAC/B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;wBAC3C,OAAO,KAAK,EAAE,UAAU,IAAI,CAAC,CAAC;oBAChC,CAAC;oBACD,+DAA+D;iBAChE;gBACD,mFAAmF;gBACnF,0FAA0F;gBAC1F,8DAA8D;gBAC9D,KAAK,EAAE,kBAAkB,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,CAAC,IAAK,CAAC,KAAe,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC;gBACrH,MAAM,EAAE;oBACN,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,GAAG,CAAC,IAAK,CAAC,KAAK;oBACtB,KAAK,EAAE,GAAG,CAAC,IAAK,CAAC,KAAK;iBACvB;gBACD,qFAAqF;gBACrF,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACxF,GAAG,EAAE;oBACH,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;oBAClE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;oBAClE,KAAK,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,EAAE,IAAI,CAAC;iBACrE;gBACD,MAAM,EAAE,KAAK,EAAE,OAAe,EAAE,IAA8D,EAAE,EAAE;oBAChG,MAAM,GAAG,GAAG,iBAAiB,GAAG,CAAC,IAAK,CAAC,KAAK,EAAE,CAAC;oBAC/C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;oBAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAE,QAAQ,CAAC,KAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjF,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,IAAI,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAC1N,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;oBAChR,8EAA8E;oBAC9E,qCAAqC;oBACrC,KAAK,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,IAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE;wBAC1D,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,4BAA4B;qBACrG,CAAC,CAAC;oBACH,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,KAAK,EAAE,KAAK,EAAE,EAAU,EAAE,OAAe,EAAE,IAAY,EAAE,EAAE;oBACzD,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,CAAC;wBAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,6CAA6C,CAAC,CAAC;wBAAC,OAAO,KAAK,CAAC;oBAAC,CAAC;oBACzH,wCAAwC;oBACxC,IAAI,GAAG,CAAC,MAAM,EAAE,WAAW,KAAK,cAAc,EAAE,CAAC;wBAC/C,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,IAAK,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC3D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;oBACpD,kDAAkD;oBAClD,IAAI,OAAO,EAAE,iBAAiB,KAAK,EAAE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;wBACjE,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,4CAA4C;oBAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAChF,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,iBAAiB,IAAI,CAAC,CAAC,WAAW,KAAK,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;wBAC/F,OAAO,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1D,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,iDAAiD,CAAC,CAAC;oBAC/E,OAAO,KAAK,CAAC;gBACf,CAAC;aACF,CAAC;YAEF,oCAAoC;YACpC,uDAAuD;YACvD,MAAM,MAAM,GAAG;gBACb,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,oBAAoB,CAAC;gBAClF,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,kBAAkB,CAAC;gBACpF,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,oBAAoB,CAAC;aACzF,CAAC;YACF,IAAI,MAAM,CAAC;YACX,gGAAgG;YAChG,gGAAgG;YAChG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,sBAAsB,CAAC,MAAM,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,CAAC,IAA+B,EAAE,MAAM,CAAC,CAAC;YAChH,CAAC;YAAC,OAAO,OAAO,EAAE,CAAC;gBACjB,IAAI,GAAG,CAAC,MAAM;oBAAE,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,CAAG,oDAAoD;gBAC1F,MAAM,OAAO,CAAC;YAChB,CAAC;YACD,kBAAkB,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;YAEhH,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE;gBACtC,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,kBAAkB,OAAO,EAAE,EAAE;aACnF,CAAC,CAAC,CAAC;YACJ,UAAU,CAAC,YAAY,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAI,GAAa,CAAC,OAAO,CAAC;YACvC,MAAM,CAAC,KAAK,CAAC,4BAA4B,OAAO,IAAI,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YAExG,IAAI,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBACnD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,mBAAmB,EAC3D,WAAW,QAAQ,aAAa,CAAC,CAAC,CAAC;YACvC,CAAC;iBAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,CAAC;gBACvD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,oBAAoB,EAC5D,WAAW,QAAQ,2BAA2B,CAAC,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,EACzD,WAAW,QAAQ,aAAa,OAAO,EAAE,CAAC,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../../src/routes/extensions/actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/routes/extensions/entitlement-gate.ts
|
|
3
|
+
* @description The HTTP adapter over the metered chokepoint — thin on purpose.
|
|
4
|
+
*
|
|
5
|
+
* The decision and the settlement moved to `services/metered-access.ts` and
|
|
6
|
+
* `services/metered-settlement.ts` when it became clear that sharing the SETTLEMENT while every door
|
|
7
|
+
* re-derived the decisions around it was the shape producing the bugs: owner-free lived in four
|
|
8
|
+
* places and was missing from a fifth, and each door had to remember the sequence. What is left here
|
|
9
|
+
* is the express-shaped convenience the raw-invoke paywall wants — call the chokepoint, render a
|
|
10
|
+
* refusal, hand back the paywall's outcome type.
|
|
11
|
+
*
|
|
12
|
+
* A door that is NOT express-shaped (the MCP twin, the checkout) should call `authoriseMeteredCall`
|
|
13
|
+
* directly rather than fabricate a `Response` to reach it, which is what the previous shape forced.
|
|
14
|
+
* @structure settleMeteredCoordinate (express adapter) · settleViaEntitlement (ext wrapper)
|
|
15
|
+
* @version-history
|
|
16
|
+
* v2.0.0 — 2026-07-28 — Reduced to an adapter: the sequence lives in services/metered-access.ts, so
|
|
17
|
+
* the owner-free rule now applies on every door instead of three of them.
|
|
18
|
+
* v1.4.0 — 2026-07-27 — Grants settle through this same gate at price 0: the pacing burn moves to the
|
|
19
|
+
* provider's wallet and the ceiling checked is what the PROVIDER carries.
|
|
20
|
+
* v1.3.0 — 2026-07-21 — Generalised to a metered COORDINATE (ext, action strings) so it settles app-tool
|
|
21
|
+
* calls too (EXCHANGE cross-app selling, Gap 1); settleViaEntitlement is now the ext wrapper.
|
|
22
|
+
* v1.2.0 — 2026-07-20 — Pricing models (Phase B): computeCharge drives per-call amount (bundle/subscription + rate limit).
|
|
23
|
+
* v1.1.0 — 2026-07-20 — Wire the money unit to the accrual rail (real EUR/USD); split morsel/money settlement.
|
|
24
|
+
* v1.0.0 — 2026-07-20 — Initial G2 gateway: entitlement authorise + morsel settlement + platform rake.
|
|
25
|
+
*/
|
|
1
26
|
import type { Response } from 'express';
|
|
2
27
|
import type { AimeatConfig } from '../../config.js';
|
|
3
28
|
import type { Storage, ExtensionRecord } from '../../storage/interface.js';
|
|
4
29
|
import type { PaywallOutcome } from './paywall.js';
|
|
5
30
|
type ExtAction = ExtensionRecord['actions'][number];
|
|
6
31
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
32
|
+
* Authorise + settle a metered call at a COORDINATE, rendering any refusal as HTTP.
|
|
33
|
+
*
|
|
34
|
+
* Returns `null` when nothing authorises the call, so the caller can offer whatever it offers instead
|
|
35
|
+
* (a price list, a checkout). `{ ok: true }` covers both a settled call and the provider's own free
|
|
36
|
+
* one — from a door's point of view they are the same instruction: go ahead.
|
|
10
37
|
*/
|
|
11
38
|
export declare function settleMeteredCoordinate(args: {
|
|
12
39
|
config: AimeatConfig;
|
|
@@ -16,11 +43,16 @@ export declare function settleMeteredCoordinate(args: {
|
|
|
16
43
|
label: string;
|
|
17
44
|
callerGaii: string;
|
|
18
45
|
res: Response;
|
|
46
|
+
/** The selling owner, when the coordinate does not name one (a raw extension action). */
|
|
47
|
+
providerOwner?: string | null;
|
|
48
|
+
/** The session behind the request, so the chokepoint can check what it is permitted to spend. */
|
|
49
|
+
session?: {
|
|
50
|
+
roles: string[];
|
|
51
|
+
scopes: string[];
|
|
52
|
+
appGrantId?: string | null;
|
|
53
|
+
} | null;
|
|
19
54
|
}): Promise<PaywallOutcome | null>;
|
|
20
|
-
/**
|
|
21
|
-
* Settle a raw extension invoke through a durable entitlement (the ext-action path wrapper), or return
|
|
22
|
-
* `null` to fall through to the standard paywall.
|
|
23
|
-
*/
|
|
55
|
+
/** Settle a raw extension invoke (the ext-action wrapper), or return `null` to fall through. */
|
|
24
56
|
export declare function settleViaEntitlement(args: {
|
|
25
57
|
config: AimeatConfig;
|
|
26
58
|
storage: Storage;
|
|
@@ -28,6 +60,11 @@ export declare function settleViaEntitlement(args: {
|
|
|
28
60
|
action: ExtAction;
|
|
29
61
|
callerGaii: string;
|
|
30
62
|
res: Response;
|
|
63
|
+
session?: {
|
|
64
|
+
roles: string[];
|
|
65
|
+
scopes: string[];
|
|
66
|
+
appGrantId?: string | null;
|
|
67
|
+
} | null;
|
|
31
68
|
}): Promise<PaywallOutcome | null>;
|
|
32
69
|
export {};
|
|
33
70
|
//# sourceMappingURL=entitlement-gate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entitlement-gate.d.ts","sourceRoot":"","sources":["../../../../src/routes/extensions/entitlement-gate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entitlement-gate.d.ts","sourceRoot":"","sources":["../../../../src/routes/extensions/entitlement-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAEnD,KAAK,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAC7F,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IAClC,yFAAyF;IACzF,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iGAAiG;IACjG,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACpF,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAcjC;AAED,gGAAgG;AAChG,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,MAAM,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IACnH,OAAO,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACpF,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAQjC"}
|
|
@@ -1,156 +1,35 @@
|
|
|
1
|
+
import { authoriseMeteredCall } from '../../services/metered-access.js';
|
|
2
|
+
import { respondMeteredRefusal } from './metered-response.js';
|
|
1
3
|
/**
|
|
2
|
-
*
|
|
3
|
-
* @description G2 — the metered-call GATEWAY for EXCHANGE (TARGET-045). When a cross-owner caller holds a
|
|
4
|
-
* durable {@link MeteredEntitlement} for the exact (ext, action) it is invoking, this takes over the
|
|
5
|
-
* commercial settlement instead of the per-call one-time token: it authorises against the entitlement's
|
|
6
|
-
* budget cap, moves the value, and applies the platform RAKE — all at the node (the trust boundary a
|
|
7
|
-
* client-side app could never enforce). It is purely ADDITIVE: with no entitlement it returns `null` and
|
|
8
|
-
* the existing paywall channels (one-time money token / plain morsel charge) run unchanged.
|
|
4
|
+
* Authorise + settle a metered call at a COORDINATE, rendering any refusal as HTTP.
|
|
9
5
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* - `morsels` — atomic in-repo debit/credit + rake via {@link settleMarketplaceFee}.
|
|
14
|
-
* - `money` — real EUR/USD accrual via {@link settleEntitlementMoney} (off the morsel ledger).
|
|
15
|
-
* @structure settleMeteredCoordinate · settleViaEntitlement (ext wrapper) · settleMorsels · settleMoney
|
|
16
|
-
* @version-history
|
|
17
|
-
* v1.3.0 — 2026-07-21 — Generalised to a metered COORDINATE (ext, action strings) so it settles app-tool
|
|
18
|
-
* calls too (EXCHANGE cross-app selling, Gap 1); settleViaEntitlement is now the ext wrapper.
|
|
19
|
-
* v1.2.0 — 2026-07-20 — Pricing models (Phase B): computeCharge drives per-call amount (bundle/subscription + rate limit).
|
|
20
|
-
* v1.1.0 — 2026-07-20 — Wire the money unit to the accrual rail (real EUR/USD); split morsel/money settlement.
|
|
21
|
-
* v1.0.0 — 2026-07-20 — Initial G2 gateway: entitlement authorise + morsel settlement + platform rake.
|
|
22
|
-
*/
|
|
23
|
-
import { randomUUID } from 'node:crypto';
|
|
24
|
-
import { error } from '../../middleware/envelope.js';
|
|
25
|
-
import { paymentChallenge } from '../../commerce/x402.js';
|
|
26
|
-
import { percentFee, formatMoneyMajor } from '../../commerce/money.js';
|
|
27
|
-
import { burnPacingToll, resolvePacingToll } from './pacing.js';
|
|
28
|
-
import { commerceFeePercent, settleMarketplaceFee } from '../../services/marketplace-fee.js';
|
|
29
|
-
import { readEntitlementForCall, budgetAllows, commitSpend, refundSpend, computeCharge, } from '../../services/metered-entitlements.js';
|
|
30
|
-
import { settleEntitlementMoney, refundEntitlementMoney } from '../../services/entitlement-money.js';
|
|
31
|
-
import { logger } from '../../utils/logger.js';
|
|
32
|
-
/**
|
|
33
|
-
* Settle a metered call at a COORDINATE (ext/action strings) through a durable entitlement, or return `null`
|
|
34
|
-
* to fall through to the standard paywall. Shared by the ext raw-invoke path and the app-tool WebMCP invoke
|
|
35
|
-
* path (EXCHANGE cross-app selling). On an `ok:false` outcome a 402/429/500 has already been sent.
|
|
6
|
+
* Returns `null` when nothing authorises the call, so the caller can offer whatever it offers instead
|
|
7
|
+
* (a price list, a checkout). `{ ok: true }` covers both a settled call and the provider's own free
|
|
8
|
+
* one — from a door's point of view they are the same instruction: go ahead.
|
|
36
9
|
*/
|
|
37
10
|
export async function settleMeteredCoordinate(args) {
|
|
38
|
-
const { config, storage, coordExt, coordAction, label, callerGaii, res } = args;
|
|
39
|
-
const
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
// PACING FIRST, before any authorisation or payment. Every metered path reaches settlement here —
|
|
43
|
-
// app tools, exchange runs, agent work, MCP runs, raw extension invokes — so this is the one place a
|
|
44
|
-
// rate ceiling can hold for all of them, whatever unit the contract settles in. A money-only contract
|
|
45
|
-
// was previously unpaced: its only brake was the buyer's total budget, which a loop empties at machine
|
|
46
|
-
// speed. Charged before the price so a paced-out call never has to be refunded.
|
|
47
|
-
const toll = resolvePacingToll(config, ent.tollMorsels);
|
|
48
|
-
const paced = await burnPacingToll({
|
|
49
|
-
config, storage, callerGaii, providerOwner: ent.providerGhii.split('@')[0] ?? null,
|
|
50
|
-
label, toll, res,
|
|
11
|
+
const { config, storage, coordExt, coordAction, label, callerGaii, res, providerOwner, session } = args;
|
|
12
|
+
const outcome = await authoriseMeteredCall({
|
|
13
|
+
config, storage, caller: callerGaii, session: session ?? null,
|
|
14
|
+
product: { ext: coordExt, action: coordAction, label, providerOwner: providerOwner ?? null },
|
|
51
15
|
});
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
// Pricing model decides the per-call charge (bundle quota / subscription period + rate limit).
|
|
60
|
-
const decision = computeCharge(ent, Date.now());
|
|
61
|
-
if (!decision.allowed) {
|
|
62
|
-
res.status(429).json(error(config.nodeId, 'RATE_LIMITED', `Your EXCHANGE subscription for ${label} is over its rate limit — retry shortly (contract ${ent.contractRef}).`));
|
|
63
|
-
return { ok: false };
|
|
64
|
-
}
|
|
65
|
-
// Budget cap is checked against THIS call's charge (a refill/renewal may cost a block/period fee).
|
|
66
|
-
if (!budgetAllows(ent, decision.chargeUnits)) {
|
|
67
|
-
const cap = ent.unit === 'money' ? `${formatMoneyMajor(ent.budget.capUnits ?? 0)} ${ent.currency ?? ''}`.trim() : `${ent.budget.capUnits} morsel`;
|
|
68
|
-
res.status(402).json({ ...error(config.nodeId, 'BUDGET_EXHAUSTED', `Your EXCHANGE entitlement for ${label} has spent its ${cap} budget (contract ${ent.contractRef}).`),
|
|
69
|
-
...paymentChallenge(config) });
|
|
70
|
-
return { ok: false };
|
|
16
|
+
switch (outcome.kind) {
|
|
17
|
+
case 'no_right': return null;
|
|
18
|
+
case 'free_owner': return { ok: true };
|
|
19
|
+
case 'settled': return { ok: true, refund: outcome.refund };
|
|
20
|
+
default:
|
|
21
|
+
respondMeteredRefusal(config, res, outcome, label);
|
|
22
|
+
return { ok: false };
|
|
71
23
|
}
|
|
72
|
-
const settleArgs = { config, storage, coordExt, coordAction, label, callerGaii, res, ent, charge: decision.chargeUnits, newPricing: decision.pricing };
|
|
73
|
-
return ent.unit === 'money' ? settleMoney(settleArgs) : settleMorsels(settleArgs);
|
|
74
24
|
}
|
|
75
|
-
/**
|
|
76
|
-
* Settle a raw extension invoke through a durable entitlement (the ext-action path wrapper), or return
|
|
77
|
-
* `null` to fall through to the standard paywall.
|
|
78
|
-
*/
|
|
25
|
+
/** Settle a raw extension invoke (the ext-action wrapper), or return `null` to fall through. */
|
|
79
26
|
export async function settleViaEntitlement(args) {
|
|
80
27
|
return settleMeteredCoordinate({
|
|
81
28
|
config: args.config, storage: args.storage,
|
|
82
29
|
coordExt: args.ext.name, coordAction: args.action.id, label: `${args.ext.name}/${args.action.id}`,
|
|
83
|
-
callerGaii: args.callerGaii, res: args.res,
|
|
30
|
+
callerGaii: args.callerGaii, res: args.res, session: args.session ?? null,
|
|
31
|
+
// A bare extension name carries no owner; the record does.
|
|
32
|
+
providerOwner: args.ext.installedBy,
|
|
84
33
|
});
|
|
85
34
|
}
|
|
86
|
-
/** Morsel rail: atomic debit caller / credit provider cut / route rake for THIS call's charge, then commit. */
|
|
87
|
-
async function settleMorsels({ config, storage, coordExt, coordAction, label, callerGaii, res, ent, charge, newPricing }) {
|
|
88
|
-
const price = Math.max(0, charge);
|
|
89
|
-
const rakePct = ent.rakePercent ?? commerceFeePercent(config);
|
|
90
|
-
const fee = percentFee(price, rakePct); // ceils — a positive charge always carries its rake
|
|
91
|
-
const providerCut = price - fee;
|
|
92
|
-
const track = `exchange:${coordExt}:${coordAction}:${ent.contractRef}`;
|
|
93
|
-
const ts = new Date().toISOString();
|
|
94
|
-
if (price > 0) {
|
|
95
|
-
const debited = await storage.debitBalance(callerGaii, price);
|
|
96
|
-
if (!debited) {
|
|
97
|
-
res.status(402).json({ ...error(config.nodeId, 'INSUFFICIENT_MORSELS', `This EXCHANGE call costs ${price} morsels and your balance does not cover it`), ...paymentChallenge(config) });
|
|
98
|
-
return { ok: false };
|
|
99
|
-
}
|
|
100
|
-
if (providerCut > 0) {
|
|
101
|
-
const credited = await storage.creditBalance(ent.providerGhii, providerCut);
|
|
102
|
-
if (!credited) {
|
|
103
|
-
await storage.creditBalance(callerGaii, price);
|
|
104
|
-
logger.error('[entitlement-gate] provider credit failed; refunded caller', { label, provider: ent.providerGhii });
|
|
105
|
-
res.status(500).json(error(config.nodeId, 'SETTLEMENT_FAILED', 'Payment could not be settled to the provider; you were not charged'));
|
|
106
|
-
return { ok: false };
|
|
107
|
-
}
|
|
108
|
-
await storage.addTransaction({ id: `xchg-earn-${randomUUID()}`, gaii: ent.providerGhii, type: 'extension_earn', amount: providerCut, counterpartyGaii: callerGaii, trackingCode: track, timestamp: ts });
|
|
109
|
-
}
|
|
110
|
-
await storage.addTransaction({ id: `xchg-pay-${randomUUID()}`, gaii: callerGaii, type: 'extension_pay', amount: -price, counterpartyGaii: ent.providerGhii, trackingCode: track, timestamp: ts });
|
|
111
|
-
await settleMarketplaceFee(storage, config, { fee, payerGhii: callerGaii, trackingCode: track, source: 'exchange' });
|
|
112
|
-
}
|
|
113
|
-
await commitSpend(storage, ent, price, newPricing);
|
|
114
|
-
return {
|
|
115
|
-
ok: true,
|
|
116
|
-
refund: async () => {
|
|
117
|
-
if (price > 0) {
|
|
118
|
-
if (providerCut > 0)
|
|
119
|
-
await storage.debitBalance(ent.providerGhii, providerCut);
|
|
120
|
-
await storage.creditBalance(callerGaii, price);
|
|
121
|
-
}
|
|
122
|
-
await refundSpend(storage, callerGaii, coordExt, coordAction, price);
|
|
123
|
-
logger.warn(`[entitlement-gate] refunded ${price} morsels (script threw after payment)`, { label });
|
|
124
|
-
},
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
/** Money rail: accrue a REAL currency obligation for THIS call's charge (buyer → provider, minus rake), then commit. */
|
|
128
|
-
async function settleMoney({ config, storage, coordExt, coordAction, label, callerGaii, res, ent, charge, newPricing }) {
|
|
129
|
-
const price = Math.max(0, charge); // micro-units
|
|
130
|
-
const currency = ent.currency ?? 'EUR';
|
|
131
|
-
const rakePct = ent.rakePercent ?? commerceFeePercent(config);
|
|
132
|
-
const reference = `exchange:${coordExt}:${coordAction}:${ent.contractRef}`;
|
|
133
|
-
let trackingCode = '';
|
|
134
|
-
if (price > 0) {
|
|
135
|
-
const settled = await settleEntitlementMoney(storage, config, {
|
|
136
|
-
consumerGhii: callerGaii, providerGhii: ent.providerGhii, priceMicros: price, currency, feePct: rakePct, reference,
|
|
137
|
-
});
|
|
138
|
-
if (!settled.ok) {
|
|
139
|
-
res.status(402).json({ ...error(config.nodeId, 'MONEY_SETTLEMENT_UNAVAILABLE', `This EXCHANGE call is priced ${formatMoneyMajor(price)} ${currency} but the money rail could not settle (${settled.reason}).`),
|
|
140
|
-
...paymentChallenge(config) });
|
|
141
|
-
return { ok: false };
|
|
142
|
-
}
|
|
143
|
-
trackingCode = settled.trackingCode;
|
|
144
|
-
}
|
|
145
|
-
await commitSpend(storage, ent, price, newPricing);
|
|
146
|
-
return {
|
|
147
|
-
ok: true,
|
|
148
|
-
refund: async () => {
|
|
149
|
-
if (price > 0)
|
|
150
|
-
await refundEntitlementMoney(storage, config, { consumerGhii: callerGaii, providerGhii: ent.providerGhii, priceMicros: price, currency, trackingCode });
|
|
151
|
-
await refundSpend(storage, callerGaii, coordExt, coordAction, price);
|
|
152
|
-
logger.warn(`[entitlement-gate] refunded ${formatMoneyMajor(price)} ${currency} (script threw after payment)`, { label });
|
|
153
|
-
},
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
35
|
//# sourceMappingURL=entitlement-gate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entitlement-gate.js","sourceRoot":"","sources":["../../../../src/routes/extensions/entitlement-gate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entitlement-gate.js","sourceRoot":"","sources":["../../../../src/routes/extensions/entitlement-gate.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAK9D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAO7C;IACC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACxG,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;QACzC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI;QAC7D,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,IAAI,IAAI,EAAE;KAC7F,CAAC,CAAC;IACH,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,UAAU,CAAC,CAAC,OAAO,IAAI,CAAC;QAC7B,KAAK,YAAY,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACvC,KAAK,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;QAC5D;YACE,qBAAqB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,IAG1C;IACC,OAAO,uBAAuB,CAAC;QAC7B,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;QAC1C,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;QACjG,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;QACzE,2DAA2D;QAC3D,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW;KACpC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Header the loopback invoke carries. Meaningless to an outside caller — see the file note. */
|
|
2
|
+
export declare const INTERNAL_PASS_HEADER = "x-aimeat-internal-pass";
|
|
3
|
+
/**
|
|
4
|
+
* What the upstream door decided, so the paywall knows how much to stand down.
|
|
5
|
+
*
|
|
6
|
+
* The two answers are NOT the same. `settled` means the contract for this product was charged and
|
|
7
|
+
* there is nothing left to take. `unpriced` means the door looked the product up and the manifest
|
|
8
|
+
* puts no price on it — which retires the app-tool question only. An extension action that names its
|
|
9
|
+
* own `commercial` terms is still owed those, because a free app-tool is the provider declining to
|
|
10
|
+
* charge for THEIR tool, not for someone else's action.
|
|
11
|
+
*/
|
|
12
|
+
export interface InternalPass {
|
|
13
|
+
kind: 'settled' | 'unpriced';
|
|
14
|
+
coordExt: string;
|
|
15
|
+
coordAction: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function mintInternalPass(coordExt: string, coordAction: string, kind?: InternalPass['kind']): string;
|
|
18
|
+
/**
|
|
19
|
+
* Consume a pass. Returns what it covered, or null if it is absent, unknown, expired or already
|
|
20
|
+
* used — every one of which means "charge this call normally", never "let it through free".
|
|
21
|
+
*/
|
|
22
|
+
export declare function consumeInternalPass(token: string | undefined | null): InternalPass | null;
|
|
23
|
+
//# sourceMappingURL=internal-pass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal-pass.d.ts","sourceRoot":"","sources":["../../../../src/routes/extensions/internal-pass.ts"],"names":[],"mappings":"AAkCA,gGAAgG;AAChG,eAAO,MAAM,oBAAoB,2BAA2B,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAkBD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,YAAY,CAAC,MAAM,CAAa,GAAG,MAAM,CAMtH;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,YAAY,GAAG,IAAI,CAMzF"}
|