aimeat 2.6.1 → 3.0.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 +57 -0
- package/dist/.env.example +86 -2
- package/dist/build-stamp.json +4 -4
- package/dist/locales/en.json +7103 -6614
- package/dist/locales/fi.json +6971 -6482
- package/dist/public/agent-consent.html +17 -2
- package/dist/public/changelog.json +182 -0
- package/dist/public/components/AgentConsent.js +158 -0
- package/dist/public/components/CardMenu.js +100 -0
- package/dist/public/components/CopyButton.js +20 -4
- package/dist/public/components/HomeUiSwitch.js +78 -0
- package/dist/public/components/ImageDeliverable.js +2 -3
- package/dist/public/components/LinkPreview.js +28 -5
- package/dist/public/components/NotificationBell.js +4 -3
- package/dist/public/components/OpenItemsButton.js +67 -0
- package/dist/public/components/OpenItemsList.js +151 -0
- package/dist/public/components/PromptCard.js +128 -0
- package/dist/public/css/components/card-menu.css +64 -0
- package/dist/public/css/components/hello-mcp.css +8 -0
- package/dist/public/css/style-testbed.css +2 -5
- package/dist/public/css/theme.css +86 -35
- package/dist/public/css/views/agents-detail.css +1 -16
- package/dist/public/css/views/help.css +7 -33
- package/dist/public/css/views/home.css +538 -0
- package/dist/public/css/views/inbox.css +40 -1
- package/dist/public/css/views/landing.css +25 -8
- package/dist/public/css/views/portal-classic.css +3 -17
- package/dist/public/css/views/portal-dev.css +23 -12
- package/dist/public/css/views/profile.css +3683 -3553
- package/dist/public/css/views/start.css +1 -1
- package/dist/public/js/api.js +17 -17
- package/dist/public/js/components/auth-image.js +2 -8
- package/dist/public/js/services/admin.js +0 -8
- package/dist/public/js/services/auth.js +261 -79
- package/dist/public/js/services/memory.js +2 -5
- package/dist/public/js/services/offers.js +22 -2
- package/dist/public/js/services/open-items.js +116 -0
- package/dist/public/js/services/organisms.images.js +2 -2
- package/dist/public/js/services/organisms.js +7 -11
- package/dist/public/js/services/organisms.prompts.js +29 -9
- package/dist/public/js/services/packages.js +3 -6
- package/dist/public/js/services/shares.js +70 -0
- package/dist/public/js/services/skills.js +5 -8
- package/dist/public/js/services/unfurl.js +2 -3
- package/dist/public/js/style-testbed.js +13 -15
- package/dist/public/js/use-session.js +38 -0
- package/dist/public/lib/VENDORED.md +1 -0
- package/dist/public/lib/three-world@1.min.js +4335 -0
- package/dist/public/oauth-consent.html +54 -10
- package/dist/public/spa.html +1025 -959
- package/dist/public/style-testbed.html +12 -11
- package/dist/public/views/admin/csm-tab.js +4 -1
- package/dist/public/views/admin/portal-tab.js +4 -2
- package/dist/public/views/admin/prompts-tab.js +16 -0
- package/dist/public/views/admin/security-tab.js +2 -2
- package/dist/public/views/admin.js +1 -4
- package/dist/public/views/app-grant.js +7 -12
- package/dist/public/views/help.js +3 -1
- package/dist/public/views/home/feed.js +209 -0
- package/dist/public/views/home/header.js +44 -0
- package/dist/public/views/home/index.js +227 -0
- package/dist/public/views/home/settings-dialog.js +96 -0
- package/dist/public/views/home/step-agent.js +277 -0
- package/dist/public/views/home/step-branch-b.js +186 -0
- package/dist/public/views/home/step-mat.js +228 -0
- package/dist/public/views/home/welcome-door.js +143 -0
- package/dist/public/views/invite-accept.js +17 -20
- package/dist/public/views/landing-prompts.js +170 -0
- package/dist/public/views/landing.js +89 -188
- package/dist/public/views/portal-classic.js +19 -13
- package/dist/public/views/portal-dev.js +28 -16
- package/dist/public/views/portal-dev.panels.js +18 -30
- package/dist/public/views/portal-dev.shared.js +9 -4
- package/dist/public/views/portfolio/builder.js +4 -1
- package/dist/public/views/portfolio/shared.js +4 -8
- package/dist/public/views/portfolio.js +9 -25
- package/dist/public/views/profile/access-tab/access-tokens.js +3 -8
- package/dist/public/views/profile/access-tab/connections.js +158 -3
- package/dist/public/views/profile/access-tab/shares-incoming.js +63 -0
- package/dist/public/views/profile/access-tab/sharing-groups.js +119 -2
- package/dist/public/views/profile/access-tab.js +11 -4
- package/dist/public/views/profile/agents/agent-card.js +44 -32
- package/dist/public/views/profile/agents/scope-config.js +27 -43
- package/dist/public/views/profile/agents/scope-model.js +288 -0
- package/dist/public/views/profile/agents/scopes-modal.js +54 -43
- package/dist/public/views/profile/agents/shared-board.js +20 -16
- package/dist/public/views/profile/agents/state-detector.js +35 -29
- package/dist/public/views/profile/agents/tab-agent-config.js +5 -2
- package/dist/public/views/profile/agents/tab-integration.js +8 -4
- package/dist/public/views/profile/agents-tab.js +20 -70
- package/dist/public/views/profile/ai-setup-guide.js +7 -3
- package/dist/public/views/profile/appdev-tab.js +46 -2
- package/dist/public/views/profile/apps-tab.js +19 -13
- package/dist/public/views/profile/calibrator-batch.helpers.js +2 -3
- package/dist/public/views/profile/calibrator-batch.js +5 -2
- package/dist/public/views/profile/calibrator-tab.js +6 -3
- package/dist/public/views/profile/companies-front-page.js +172 -0
- package/dist/public/views/profile/companies-prompts.js +194 -0
- package/dist/public/views/profile/companies-tab.js +354 -0
- package/dist/public/views/profile/ecosystem-tab.cards.js +3 -1
- package/dist/public/views/profile/ecosystem-tab.helpers.js +12 -1
- package/dist/public/views/profile/extensions-tab.js +8 -8
- package/dist/public/views/profile/hello-mcp-panel.js +5 -2
- package/dist/public/views/profile/inbox-tab/components.js +24 -40
- package/dist/public/views/profile/inbox-tab/helpers.js +57 -4
- package/dist/public/views/profile/inbox-tab/panels.js +7 -0
- package/dist/public/views/profile/inbox-tab/use-thread-ux.js +48 -2
- package/dist/public/views/profile/inbox-tab.js +63 -57
- package/dist/public/views/profile/instruction-block.js +4 -1
- package/dist/public/views/profile/landing-page.cards.js +32 -2
- package/dist/public/views/profile/landing-page.js +52 -7
- package/dist/public/views/profile/landing-page.modals.js +2 -6
- package/dist/public/views/profile/memory-tab/backup.js +77 -0
- package/dist/public/views/profile/memory-tab/browse-view.js +4 -1
- package/dist/public/views/profile/memory-tab/components.js +16 -46
- package/dist/public/views/profile/memory-tab/entries-view.js +50 -10
- package/dist/public/views/profile/memory-tab/file-helpers.js +2 -5
- package/dist/public/views/profile/memory-tab/files-view.js +5 -2
- package/dist/public/views/profile/memory-tab/sharing.js +74 -0
- package/dist/public/views/profile/memory-tab.js +19 -57
- package/dist/public/views/profile/nodes-tab.js +4 -1
- package/dist/public/views/profile/notifications-tab.js +2 -1
- package/dist/public/views/profile/organisms/helpers.js +2 -2
- package/dist/public/views/profile/organisms/home.js +4 -1
- package/dist/public/views/profile/organisms/invite-panel.js +6 -5
- package/dist/public/views/profile/organisms/members.js +2 -1
- package/dist/public/views/profile/organisms/panels.js +4 -1
- package/dist/public/views/profile/organisms/readme-panel.js +17 -7
- package/dist/public/views/profile/organisms/workspace/generator.js +4 -1
- package/dist/public/views/profile/organisms/workspace/model.js +4 -7
- package/dist/public/views/profile/organisms/workspace/panels.js +7 -2
- package/dist/public/views/profile/organisms/workspace/record-space.js +9 -1
- package/dist/public/views/profile/organisms/workspace-comments.js +2 -1
- package/dist/public/views/profile/organisms/workspace-list.js +3 -3
- package/dist/public/views/profile/organisms/workspace.js +8 -5
- package/dist/public/views/profile/organisms-tab.js +37 -4
- package/dist/public/views/profile/pnl-tab.js +236 -0
- package/dist/public/views/profile/portfolio-tab.js +4 -1
- package/dist/public/views/profile/wallet-tab.js +48 -3
- package/dist/public/views/profile.js +4 -0
- package/dist/public/views/public-knowledge-viewer.js +4 -1
- package/dist/public/views/public-workspace-viewer.js +7 -16
- package/dist/public/views/start.js +6 -4
- package/dist/public/views/transparency.js +11 -0
- package/dist/scripts/audit-mcp-tools.js +32 -1
- package/dist/scripts/audit-mcp-tools.js.map +1 -1
- package/dist/scripts/changelog-add.d.ts +2 -0
- package/dist/scripts/changelog-add.d.ts.map +1 -0
- package/dist/scripts/changelog-add.js +133 -0
- package/dist/scripts/changelog-add.js.map +1 -0
- package/dist/scripts/check-ai-disclosure.js +11 -3
- package/dist/scripts/check-ai-disclosure.js.map +1 -1
- package/dist/scripts/check-copied-logic.d.ts +2 -0
- package/dist/scripts/check-copied-logic.d.ts.map +1 -0
- package/dist/scripts/check-copied-logic.js +201 -0
- package/dist/scripts/check-copied-logic.js.map +1 -0
- package/dist/scripts/check-ext-entrypoints.d.ts +2 -0
- package/dist/scripts/check-ext-entrypoints.d.ts.map +1 -0
- package/dist/scripts/check-ext-entrypoints.js +118 -0
- package/dist/scripts/check-ext-entrypoints.js.map +1 -0
- package/dist/scripts/check-js-syntax.d.ts +1 -26
- package/dist/scripts/check-js-syntax.d.ts.map +1 -1
- package/dist/scripts/check-js-syntax.js +9 -82
- package/dist/scripts/check-js-syntax.js.map +1 -1
- package/dist/scripts/check-liaison-surface.d.ts +2 -0
- package/dist/scripts/check-liaison-surface.d.ts.map +1 -0
- package/dist/scripts/check-liaison-surface.js +181 -0
- package/dist/scripts/check-liaison-surface.js.map +1 -0
- package/dist/scripts/check-outbound-fetch.d.ts +8 -0
- package/dist/scripts/check-outbound-fetch.d.ts.map +1 -0
- package/dist/scripts/check-outbound-fetch.js +134 -0
- package/dist/scripts/check-outbound-fetch.js.map +1 -0
- package/dist/scripts/check-profile-tabs.d.ts +2 -0
- package/dist/scripts/check-profile-tabs.d.ts.map +1 -0
- package/dist/scripts/check-profile-tabs.js +71 -0
- package/dist/scripts/check-profile-tabs.js.map +1 -0
- package/dist/scripts/check-route-scopes.d.ts +8 -0
- package/dist/scripts/check-route-scopes.d.ts.map +1 -0
- package/dist/scripts/check-route-scopes.js +174 -0
- package/dist/scripts/check-route-scopes.js.map +1 -0
- package/dist/scripts/check-shared-implementation.d.ts +2 -0
- package/dist/scripts/check-shared-implementation.d.ts.map +1 -0
- package/dist/scripts/check-shared-implementation.js +158 -0
- package/dist/scripts/check-shared-implementation.js.map +1 -0
- package/dist/scripts/check-sse-parity.d.ts +2 -0
- package/dist/scripts/check-sse-parity.d.ts.map +1 -0
- package/dist/scripts/check-sse-parity.js +195 -0
- package/dist/scripts/check-sse-parity.js.map +1 -0
- package/dist/scripts/check-storage-parity.d.ts +2 -0
- package/dist/scripts/check-storage-parity.d.ts.map +1 -0
- package/dist/scripts/check-storage-parity.js +121 -0
- package/dist/scripts/check-storage-parity.js.map +1 -0
- package/dist/scripts/check-trusted-keys.d.ts +9 -0
- package/dist/scripts/check-trusted-keys.d.ts.map +1 -0
- package/dist/scripts/check-trusted-keys.js +122 -0
- package/dist/scripts/check-trusted-keys.js.map +1 -0
- package/dist/scripts/migrate-group-shares.d.ts +2 -0
- package/dist/scripts/migrate-group-shares.d.ts.map +1 -0
- package/dist/scripts/migrate-group-shares.js +89 -0
- package/dist/scripts/migrate-group-shares.js.map +1 -0
- package/dist/src/auth/jwt.d.ts.map +1 -1
- package/dist/src/auth/jwt.js +12 -2
- package/dist/src/auth/jwt.js.map +1 -1
- package/dist/src/auth/middleware.d.ts +50 -0
- package/dist/src/auth/middleware.d.ts.map +1 -1
- package/dist/src/auth/middleware.js +97 -0
- package/dist/src/auth/middleware.js.map +1 -1
- package/dist/src/auth/sse-domain-scopes.d.ts +4 -7
- package/dist/src/auth/sse-domain-scopes.d.ts.map +1 -1
- package/dist/src/auth/sse-domain-scopes.js +15 -4
- package/dist/src/auth/sse-domain-scopes.js.map +1 -1
- package/dist/src/cli/connect/clients/claude.d.ts +22 -0
- package/dist/src/cli/connect/clients/claude.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/claude.js +105 -0
- package/dist/src/cli/connect/clients/claude.js.map +1 -0
- package/dist/src/cli/connect/clients/cursor-vscode.d.ts +17 -0
- package/dist/src/cli/connect/clients/cursor-vscode.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/cursor-vscode.js +88 -0
- package/dist/src/cli/connect/clients/cursor-vscode.js.map +1 -0
- package/dist/src/cli/connect/clients/fs-merge.d.ts +35 -0
- package/dist/src/cli/connect/clients/fs-merge.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/fs-merge.js +87 -0
- package/dist/src/cli/connect/clients/fs-merge.js.map +1 -0
- package/dist/src/cli/connect/clients/goose.d.ts +15 -0
- package/dist/src/cli/connect/clients/goose.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/goose.js +67 -0
- package/dist/src/cli/connect/clients/goose.js.map +1 -0
- package/dist/src/cli/connect/clients/index.d.ts +23 -0
- package/dist/src/cli/connect/clients/index.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/index.js +148 -0
- package/dist/src/cli/connect/clients/index.js.map +1 -0
- package/dist/src/cli/connect/clients/launcher.d.ts +33 -0
- package/dist/src/cli/connect/clients/launcher.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/launcher.js +94 -0
- package/dist/src/cli/connect/clients/launcher.js.map +1 -0
- package/dist/src/cli/connect/clients/types.d.ts +63 -0
- package/dist/src/cli/connect/clients/types.d.ts.map +1 -0
- package/dist/src/cli/connect/clients/types.js +16 -0
- package/dist/src/cli/connect/clients/types.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/appdev.d.ts +8 -1
- package/dist/src/cli/connect/mcp/tools/appdev.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/appdev.js +13 -13
- package/dist/src/cli/connect/mcp/tools/appdev.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/companies.d.ts +20 -0
- package/dist/src/cli/connect/mcp/tools/companies.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/companies.js +103 -0
- package/dist/src/cli/connect/mcp/tools/companies.js.map +1 -0
- package/dist/src/cli/connect/mcp/tools/groups.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/groups.js +27 -0
- package/dist/src/cli/connect/mcp/tools/groups.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/index.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/index.js +4 -2
- package/dist/src/cli/connect/mcp/tools/index.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/knowledge.d.ts +7 -0
- package/dist/src/cli/connect/mcp/tools/knowledge.d.ts.map +1 -1
- package/dist/src/cli/connect/mcp/tools/knowledge.js +9 -5
- package/dist/src/cli/connect/mcp/tools/knowledge.js.map +1 -1
- package/dist/src/cli/connect/mcp/tools/portfolio.d.ts +19 -0
- package/dist/src/cli/connect/mcp/tools/portfolio.d.ts.map +1 -0
- package/dist/src/cli/connect/mcp/tools/portfolio.js +13 -0
- package/dist/src/cli/connect/mcp/tools/portfolio.js.map +1 -0
- package/dist/src/cli/connect/tool-call-defs-agent.d.ts +1 -1
- package/dist/src/cli/connect/tool-call-defs-agent.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-agent.js +0 -31
- package/dist/src/cli/connect/tool-call-defs-agent.js.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-apps.d.ts +39 -0
- package/dist/src/cli/connect/tool-call-defs-apps.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-apps.js +116 -21
- package/dist/src/cli/connect/tool-call-defs-apps.js.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-core.d.ts +33 -0
- package/dist/src/cli/connect/tool-call-defs-core.d.ts.map +1 -1
- package/dist/src/cli/connect/tool-call-defs-core.js +64 -4
- package/dist/src/cli/connect/tool-call-defs-core.js.map +1 -1
- package/dist/src/cli/init-wizard/presets.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/presets.js +2 -0
- package/dist/src/cli/init-wizard/presets.js.map +1 -1
- package/dist/src/cli/init-wizard/steps-advanced.d.ts +3 -0
- package/dist/src/cli/init-wizard/steps-advanced.d.ts.map +1 -1
- package/dist/src/cli/init-wizard/steps-advanced.js +30 -0
- package/dist/src/cli/init-wizard/steps-advanced.js.map +1 -1
- package/dist/src/commerce/beneficiary-book.d.ts +19 -0
- package/dist/src/commerce/beneficiary-book.d.ts.map +1 -1
- package/dist/src/commerce/beneficiary-book.js +20 -0
- package/dist/src/commerce/beneficiary-book.js.map +1 -1
- package/dist/src/commerce/hold-book.d.ts +49 -0
- package/dist/src/commerce/hold-book.d.ts.map +1 -0
- package/dist/src/commerce/hold-book.js +181 -0
- package/dist/src/commerce/hold-book.js.map +1 -0
- package/dist/src/commerce/session-service.d.ts +8 -1
- package/dist/src/commerce/session-service.d.ts.map +1 -1
- package/dist/src/commerce/session-service.js +45 -1
- package/dist/src/commerce/session-service.js.map +1 -1
- package/dist/src/commerce/stripe-handler.d.ts +3 -0
- package/dist/src/commerce/stripe-handler.d.ts.map +1 -1
- package/dist/src/commerce/stripe-handler.js +49 -0
- package/dist/src/commerce/stripe-handler.js.map +1 -1
- package/dist/src/commerce/test-money-handler.d.ts +1 -1
- package/dist/src/commerce/test-money-handler.d.ts.map +1 -1
- package/dist/src/commerce/test-money-handler.js +36 -5
- package/dist/src/commerce/test-money-handler.js.map +1 -1
- package/dist/src/commerce/types.d.ts +41 -0
- package/dist/src/commerce/types.d.ts.map +1 -1
- package/dist/src/config-hosts.d.ts +25 -0
- package/dist/src/config-hosts.d.ts.map +1 -0
- package/dist/src/config-hosts.js +43 -0
- package/dist/src/config-hosts.js.map +1 -0
- package/dist/src/config-posture.d.ts +25 -0
- package/dist/src/config-posture.d.ts.map +1 -0
- package/dist/src/config-posture.js +30 -0
- package/dist/src/config-posture.js.map +1 -0
- package/dist/src/config-site-contacts.d.ts +24 -0
- package/dist/src/config-site-contacts.d.ts.map +1 -0
- package/dist/src/config-site-contacts.js +42 -0
- package/dist/src/config-site-contacts.js.map +1 -0
- package/dist/src/config-types.d.ts +54 -0
- package/dist/src/config-types.d.ts.map +1 -1
- package/dist/src/config.d.ts +1 -7
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +60 -94
- package/dist/src/config.js.map +1 -1
- package/dist/src/data/app-templates/components.d.ts +1 -0
- package/dist/src/data/app-templates/components.d.ts.map +1 -1
- package/dist/src/data/app-templates/components.js +28 -0
- package/dist/src/data/app-templates/components.js.map +1 -1
- package/dist/src/data/app-templates.d.ts.map +1 -1
- package/dist/src/data/app-templates.js +2 -1
- package/dist/src/data/app-templates.js.map +1 -1
- package/dist/src/data/appdev-pitfalls.d.ts +4 -0
- package/dist/src/data/appdev-pitfalls.d.ts.map +1 -1
- package/dist/src/data/appdev-pitfalls.js +34 -0
- package/dist/src/data/appdev-pitfalls.js.map +1 -1
- package/dist/src/data/builtin-skills.d.ts +8 -0
- package/dist/src/data/builtin-skills.d.ts.map +1 -1
- package/dist/src/data/builtin-skills.js +25 -3
- package/dist/src/data/builtin-skills.js.map +1 -1
- package/dist/src/data/builtin-skills.open-items.d.ts +19 -0
- package/dist/src/data/builtin-skills.open-items.d.ts.map +1 -0
- package/dist/src/data/builtin-skills.open-items.js +130 -0
- package/dist/src/data/builtin-skills.open-items.js.map +1 -0
- package/dist/src/data/getting-started.d.ts +29 -0
- package/dist/src/data/getting-started.d.ts.map +1 -0
- package/dist/src/data/getting-started.js +89 -0
- package/dist/src/data/getting-started.js.map +1 -0
- package/dist/src/data/library-packs/sdk.js +2 -2
- 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 +41 -0
- package/dist/src/data/library-packs/vendored.js.map +1 -1
- package/dist/src/generated/api-types.d.ts +22849 -18768
- 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 -0
- package/dist/src/index-connect.js.map +1 -1
- package/dist/src/index-help.d.ts +2 -2
- package/dist/src/index-help.d.ts.map +1 -1
- package/dist/src/index-help.js +16 -0
- package/dist/src/index-help.js.map +1 -1
- package/dist/src/mcp/agent-capabilities.d.ts +5 -0
- package/dist/src/mcp/agent-capabilities.d.ts.map +1 -1
- package/dist/src/mcp/agent-capabilities.js +13 -23
- package/dist/src/mcp/agent-capabilities.js.map +1 -1
- package/dist/src/mcp/agent-management.d.ts +5 -0
- package/dist/src/mcp/agent-management.d.ts.map +1 -1
- package/dist/src/mcp/agent-management.js +20 -66
- package/dist/src/mcp/agent-management.js.map +1 -1
- package/dist/src/mcp/agent-messages.d.ts +8 -0
- package/dist/src/mcp/agent-messages.d.ts.map +1 -1
- package/dist/src/mcp/agent-messages.js +39 -43
- package/dist/src/mcp/agent-messages.js.map +1 -1
- package/dist/src/mcp/agent-onboarding.d.ts +5 -1
- package/dist/src/mcp/agent-onboarding.d.ts.map +1 -1
- package/dist/src/mcp/agent-onboarding.js +44 -135
- package/dist/src/mcp/agent-onboarding.js.map +1 -1
- package/dist/src/mcp/agent-schedules.d.ts +11 -3
- package/dist/src/mcp/agent-schedules.d.ts.map +1 -1
- package/dist/src/mcp/agent-schedules.js +67 -80
- package/dist/src/mcp/agent-schedules.js.map +1 -1
- package/dist/src/mcp/agent-tasks.d.ts +20 -0
- package/dist/src/mcp/agent-tasks.d.ts.map +1 -1
- package/dist/src/mcp/agent-tasks.js +118 -172
- package/dist/src/mcp/agent-tasks.js.map +1 -1
- package/dist/src/mcp/agent-telemetry.d.ts.map +1 -1
- package/dist/src/mcp/agent-telemetry.js +5 -23
- package/dist/src/mcp/agent-telemetry.js.map +1 -1
- package/dist/src/mcp/annotations.d.ts +1 -0
- package/dist/src/mcp/annotations.d.ts.map +1 -1
- package/dist/src/mcp/annotations.js +14 -3
- package/dist/src/mcp/annotations.js.map +1 -1
- package/dist/src/mcp/appdev-pitfalls.d.ts +9 -1
- package/dist/src/mcp/appdev-pitfalls.d.ts.map +1 -1
- package/dist/src/mcp/appdev-pitfalls.js +37 -18
- package/dist/src/mcp/appdev-pitfalls.js.map +1 -1
- package/dist/src/mcp/appdev-proofs.d.ts +11 -3
- package/dist/src/mcp/appdev-proofs.d.ts.map +1 -1
- package/dist/src/mcp/appdev-proofs.js +33 -72
- package/dist/src/mcp/appdev-proofs.js.map +1 -1
- package/dist/src/mcp/apps-fork.d.ts +22 -0
- package/dist/src/mcp/apps-fork.d.ts.map +1 -0
- package/dist/src/mcp/apps-fork.js +71 -0
- package/dist/src/mcp/apps-fork.js.map +1 -0
- package/dist/src/mcp/apps-ui.d.ts +39 -0
- package/dist/src/mcp/apps-ui.d.ts.map +1 -0
- package/dist/src/mcp/apps-ui.js +291 -0
- package/dist/src/mcp/apps-ui.js.map +1 -0
- package/dist/src/mcp/apps.d.ts +27 -0
- package/dist/src/mcp/apps.d.ts.map +1 -1
- package/dist/src/mcp/apps.js +180 -228
- package/dist/src/mcp/apps.js.map +1 -1
- package/dist/src/mcp/boards.d.ts +5 -0
- package/dist/src/mcp/boards.d.ts.map +1 -1
- package/dist/src/mcp/boards.js +68 -98
- package/dist/src/mcp/boards.js.map +1 -1
- package/dist/src/mcp/capabilities.d.ts +11 -0
- package/dist/src/mcp/capabilities.d.ts.map +1 -1
- package/dist/src/mcp/capabilities.js +76 -79
- package/dist/src/mcp/capabilities.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.d.ts +2 -1
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.js +30 -21
- package/dist/src/mcp/catalog/definitions/capabilities-groups-skills.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/companies.d.ts +20 -0
- package/dist/src/mcp/catalog/definitions/companies.d.ts.map +1 -0
- package/dist/src/mcp/catalog/definitions/companies.js +81 -0
- package/dist/src/mcp/catalog/definitions/companies.js.map +1 -0
- package/dist/src/mcp/catalog/definitions/organisms-workspaces-apps.js +2 -2
- package/dist/src/mcp/catalog/definitions/organisms-workspaces-apps.js.map +1 -1
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.js +6 -1
- package/dist/src/mcp/catalog/definitions/schedules-tasks-memory.js.map +1 -1
- package/dist/src/mcp/catalog/definitions.d.ts.map +1 -1
- package/dist/src/mcp/catalog/definitions.js +2 -0
- package/dist/src/mcp/catalog/definitions.js.map +1 -1
- package/dist/src/mcp/catalog/scopes.d.ts +21 -43
- package/dist/src/mcp/catalog/scopes.d.ts.map +1 -1
- package/dist/src/mcp/catalog/scopes.js +190 -16
- package/dist/src/mcp/catalog/scopes.js.map +1 -1
- package/dist/src/mcp/catalog/surfaces.d.ts.map +1 -1
- package/dist/src/mcp/catalog/surfaces.js +8 -2
- package/dist/src/mcp/catalog/surfaces.js.map +1 -1
- package/dist/src/mcp/chat-instances.d.ts +4 -0
- package/dist/src/mcp/chat-instances.d.ts.map +1 -1
- package/dist/src/mcp/chat-instances.js +14 -34
- package/dist/src/mcp/chat-instances.js.map +1 -1
- package/dist/src/mcp/commerce.d.ts +19 -4
- package/dist/src/mcp/commerce.d.ts.map +1 -1
- package/dist/src/mcp/commerce.js +131 -62
- package/dist/src/mcp/commerce.js.map +1 -1
- package/dist/src/mcp/companies.d.ts +21 -0
- package/dist/src/mcp/companies.d.ts.map +1 -0
- package/dist/src/mcp/companies.js +156 -0
- package/dist/src/mcp/companies.js.map +1 -0
- package/dist/src/mcp/consent.d.ts +4 -1
- package/dist/src/mcp/consent.d.ts.map +1 -1
- package/dist/src/mcp/consent.js +30 -33
- package/dist/src/mcp/consent.js.map +1 -1
- package/dist/src/mcp/core-admin.d.ts +4 -0
- package/dist/src/mcp/core-admin.d.ts.map +1 -1
- package/dist/src/mcp/core-admin.js +12 -22
- package/dist/src/mcp/core-admin.js.map +1 -1
- package/dist/src/mcp/core-storage.d.ts +6 -0
- package/dist/src/mcp/core-storage.d.ts.map +1 -1
- package/dist/src/mcp/core-storage.js +37 -37
- package/dist/src/mcp/core-storage.js.map +1 -1
- package/dist/src/mcp/core.d.ts +27 -1
- package/dist/src/mcp/core.d.ts.map +1 -1
- package/dist/src/mcp/core.js +161 -160
- package/dist/src/mcp/core.js.map +1 -1
- package/dist/src/mcp/cortex.d.ts +9 -0
- package/dist/src/mcp/cortex.d.ts.map +1 -1
- package/dist/src/mcp/cortex.js +87 -123
- package/dist/src/mcp/cortex.js.map +1 -1
- package/dist/src/mcp/dm-messages.d.ts.map +1 -1
- package/dist/src/mcp/dm-messages.js +38 -5
- package/dist/src/mcp/dm-messages.js.map +1 -1
- package/dist/src/mcp/exchange-run.d.ts.map +1 -1
- package/dist/src/mcp/exchange-run.js +8 -0
- 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 +12 -41
- package/dist/src/mcp/exchange.js.map +1 -1
- package/dist/src/mcp/extensions.d.ts +23 -1
- package/dist/src/mcp/extensions.d.ts.map +1 -1
- package/dist/src/mcp/extensions.js +202 -255
- package/dist/src/mcp/extensions.js.map +1 -1
- package/dist/src/mcp/flags.d.ts +7 -2
- package/dist/src/mcp/flags.d.ts.map +1 -1
- package/dist/src/mcp/flags.js +24 -25
- package/dist/src/mcp/flags.js.map +1 -1
- package/dist/src/mcp/index.d.ts +17 -0
- package/dist/src/mcp/index.d.ts.map +1 -1
- package/dist/src/mcp/index.js +65 -33
- package/dist/src/mcp/index.js.map +1 -1
- package/dist/src/mcp/instructions.d.ts +31 -0
- package/dist/src/mcp/instructions.d.ts.map +1 -0
- package/dist/src/mcp/instructions.js +38 -0
- package/dist/src/mcp/instructions.js.map +1 -0
- package/dist/src/mcp/knowledge.d.ts +7 -1
- package/dist/src/mcp/knowledge.d.ts.map +1 -1
- package/dist/src/mcp/knowledge.js +32 -114
- package/dist/src/mcp/knowledge.js.map +1 -1
- package/dist/src/mcp/memory-namespace-hints.d.ts.map +1 -1
- package/dist/src/mcp/memory-namespace-hints.js +11 -8
- package/dist/src/mcp/memory-namespace-hints.js.map +1 -1
- package/dist/src/mcp/memory-version-lock.d.ts +43 -0
- package/dist/src/mcp/memory-version-lock.d.ts.map +1 -0
- package/dist/src/mcp/memory-version-lock.js +49 -0
- package/dist/src/mcp/memory-version-lock.js.map +1 -0
- package/dist/src/mcp/oauth.d.ts +2 -0
- package/dist/src/mcp/oauth.d.ts.map +1 -1
- package/dist/src/mcp/oauth.js +11 -0
- package/dist/src/mcp/oauth.js.map +1 -1
- package/dist/src/mcp/operator-config.d.ts +29 -1
- package/dist/src/mcp/operator-config.d.ts.map +1 -1
- package/dist/src/mcp/operator-config.js +84 -31
- package/dist/src/mcp/operator-config.js.map +1 -1
- package/dist/src/mcp/organisms-email-invites.d.ts +6 -0
- package/dist/src/mcp/organisms-email-invites.d.ts.map +1 -1
- package/dist/src/mcp/organisms-email-invites.js +19 -8
- package/dist/src/mcp/organisms-email-invites.js.map +1 -1
- package/dist/src/mcp/organisms-name-invites.d.ts +3 -0
- package/dist/src/mcp/organisms-name-invites.d.ts.map +1 -1
- package/dist/src/mcp/organisms-name-invites.js +8 -2
- package/dist/src/mcp/organisms-name-invites.js.map +1 -1
- package/dist/src/mcp/organisms.d.ts +4 -0
- package/dist/src/mcp/organisms.d.ts.map +1 -1
- package/dist/src/mcp/organisms.js +56 -125
- package/dist/src/mcp/organisms.js.map +1 -1
- package/dist/src/mcp/portfolio.d.ts +28 -0
- package/dist/src/mcp/portfolio.d.ts.map +1 -0
- package/dist/src/mcp/portfolio.js +49 -0
- package/dist/src/mcp/portfolio.js.map +1 -0
- package/dist/src/mcp/prompts-managed.d.ts +30 -0
- package/dist/src/mcp/prompts-managed.d.ts.map +1 -0
- package/dist/src/mcp/prompts-managed.js +102 -0
- package/dist/src/mcp/prompts-managed.js.map +1 -0
- package/dist/src/mcp/schema-flags.d.ts +33 -0
- package/dist/src/mcp/schema-flags.d.ts.map +1 -0
- package/dist/src/mcp/schema-flags.js +31 -0
- package/dist/src/mcp/schema-flags.js.map +1 -0
- package/dist/src/mcp/sharing-groups.d.ts +9 -2
- package/dist/src/mcp/sharing-groups.d.ts.map +1 -1
- package/dist/src/mcp/sharing-groups.js +93 -68
- package/dist/src/mcp/sharing-groups.js.map +1 -1
- package/dist/src/mcp/skills.d.ts.map +1 -1
- package/dist/src/mcp/skills.js +7 -0
- package/dist/src/mcp/skills.js.map +1 -1
- package/dist/src/mcp/workflows.d.ts.map +1 -1
- package/dist/src/mcp/workflows.js +15 -20
- package/dist/src/mcp/workflows.js.map +1 -1
- package/dist/src/mcp/workspace-create.d.ts +41 -0
- package/dist/src/mcp/workspace-create.d.ts.map +1 -0
- package/dist/src/mcp/workspace-create.js +52 -0
- package/dist/src/mcp/workspace-create.js.map +1 -0
- package/dist/src/mcp/workspace-transfer.d.ts.map +1 -1
- package/dist/src/mcp/workspace-transfer.js +4 -1
- package/dist/src/mcp/workspace-transfer.js.map +1 -1
- package/dist/src/mcp/workspaces.d.ts +11 -0
- package/dist/src/mcp/workspaces.d.ts.map +1 -1
- package/dist/src/mcp/workspaces.js +152 -228
- package/dist/src/mcp/workspaces.js.map +1 -1
- package/dist/src/middleware/cors.d.ts +5 -0
- package/dist/src/middleware/cors.d.ts.map +1 -1
- package/dist/src/middleware/cors.js +30 -2
- package/dist/src/middleware/cors.js.map +1 -1
- package/dist/src/middleware/envelope.d.ts.map +1 -1
- package/dist/src/middleware/envelope.js +25 -2
- package/dist/src/middleware/envelope.js.map +1 -1
- package/dist/src/middleware/readiness-gate.d.ts +12 -0
- package/dist/src/middleware/readiness-gate.d.ts.map +1 -1
- package/dist/src/middleware/readiness-gate.js +26 -0
- package/dist/src/middleware/readiness-gate.js.map +1 -1
- package/dist/src/middleware/subdomain.d.ts +27 -0
- package/dist/src/middleware/subdomain.d.ts.map +1 -1
- package/dist/src/middleware/subdomain.js +103 -10
- package/dist/src/middleware/subdomain.js.map +1 -1
- package/dist/src/middleware/workspace-access.d.ts +6 -4
- package/dist/src/middleware/workspace-access.d.ts.map +1 -1
- package/dist/src/middleware/workspace-access.js +9 -138
- package/dist/src/middleware/workspace-access.js.map +1 -1
- package/dist/src/models/agent-onboarding-schemas.d.ts +9 -0
- package/dist/src/models/agent-onboarding-schemas.d.ts.map +1 -1
- package/dist/src/models/agent-onboarding-schemas.js +22 -0
- package/dist/src/models/agent-onboarding-schemas.js.map +1 -1
- package/dist/src/models/company-schemas.d.ts +85 -0
- package/dist/src/models/company-schemas.d.ts.map +1 -0
- package/dist/src/models/company-schemas.js +24 -0
- package/dist/src/models/company-schemas.js.map +1 -0
- package/dist/src/models/company-smtp-schemas.d.ts +31 -0
- package/dist/src/models/company-smtp-schemas.d.ts.map +1 -0
- package/dist/src/models/company-smtp-schemas.js +15 -0
- package/dist/src/models/company-smtp-schemas.js.map +1 -0
- package/dist/src/models/connection-schemas.d.ts +77 -2
- package/dist/src/models/connection-schemas.d.ts.map +1 -1
- package/dist/src/models/finance-schemas.d.ts +268 -0
- package/dist/src/models/finance-schemas.d.ts.map +1 -0
- package/dist/src/models/finance-schemas.js +33 -0
- package/dist/src/models/finance-schemas.js.map +1 -0
- package/dist/src/models/message-schemas.d.ts +3 -1
- package/dist/src/models/message-schemas.d.ts.map +1 -1
- package/dist/src/models/message-schemas.js +9 -2
- package/dist/src/models/message-schemas.js.map +1 -1
- package/dist/src/models/outbound-schemas.d.ts +81 -0
- package/dist/src/models/outbound-schemas.d.ts.map +1 -0
- package/dist/src/models/outbound-schemas.js +20 -0
- package/dist/src/models/outbound-schemas.js.map +1 -0
- package/dist/src/models/schemas.d.ts +3 -0
- package/dist/src/models/schemas.d.ts.map +1 -1
- package/dist/src/models/schemas.js +16 -0
- package/dist/src/models/schemas.js.map +1 -1
- package/dist/src/models/workflow-schemas.d.ts +1 -0
- package/dist/src/models/workflow-schemas.d.ts.map +1 -1
- package/dist/src/models/workflow-schemas.js +1 -1
- package/dist/src/models/workflow-schemas.js.map +1 -1
- package/dist/src/routes/access-tokens.d.ts.map +1 -1
- package/dist/src/routes/access-tokens.js +6 -0
- package/dist/src/routes/access-tokens.js.map +1 -1
- package/dist/src/routes/admin-economy.d.ts +4 -1
- package/dist/src/routes/admin-economy.d.ts.map +1 -1
- package/dist/src/routes/admin-economy.js +12 -41
- package/dist/src/routes/admin-economy.js.map +1 -1
- package/dist/src/routes/admin-monitoring.d.ts.map +1 -1
- package/dist/src/routes/admin-monitoring.js +98 -0
- package/dist/src/routes/admin-monitoring.js.map +1 -1
- package/dist/src/routes/agent-capabilities.d.ts +3 -0
- package/dist/src/routes/agent-capabilities.d.ts.map +1 -1
- package/dist/src/routes/agent-capabilities.js +18 -33
- package/dist/src/routes/agent-capabilities.js.map +1 -1
- package/dist/src/routes/agent-messages.d.ts +6 -0
- package/dist/src/routes/agent-messages.d.ts.map +1 -1
- package/dist/src/routes/agent-messages.js +17 -83
- package/dist/src/routes/agent-messages.js.map +1 -1
- package/dist/src/routes/agent-onboarding.d.ts +12 -0
- package/dist/src/routes/agent-onboarding.d.ts.map +1 -1
- package/dist/src/routes/agent-onboarding.js +95 -144
- package/dist/src/routes/agent-onboarding.js.map +1 -1
- package/dist/src/routes/agent-tasks/completion.d.ts +13 -0
- package/dist/src/routes/agent-tasks/completion.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks/completion.js +54 -149
- package/dist/src/routes/agent-tasks/completion.js.map +1 -1
- package/dist/src/routes/agent-tasks/create-read.d.ts +3 -0
- package/dist/src/routes/agent-tasks/create-read.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks/create-read.js +27 -158
- package/dist/src/routes/agent-tasks/create-read.js.map +1 -1
- package/dist/src/routes/agent-tasks/helpers.d.ts +22 -1
- package/dist/src/routes/agent-tasks/helpers.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks/helpers.js +35 -1
- package/dist/src/routes/agent-tasks/helpers.js.map +1 -1
- package/dist/src/routes/agent-tasks/lifecycle.d.ts +3 -0
- package/dist/src/routes/agent-tasks/lifecycle.d.ts.map +1 -1
- package/dist/src/routes/agent-tasks/lifecycle.js +12 -106
- package/dist/src/routes/agent-tasks/lifecycle.js.map +1 -1
- package/dist/src/routes/agent-telemetry.d.ts.map +1 -1
- package/dist/src/routes/agent-telemetry.js +3 -25
- package/dist/src/routes/agent-telemetry.js.map +1 -1
- package/dist/src/routes/agents/device-auth.d.ts +23 -0
- package/dist/src/routes/agents/device-auth.d.ts.map +1 -1
- package/dist/src/routes/agents/device-auth.js +53 -8
- package/dist/src/routes/agents/device-auth.js.map +1 -1
- package/dist/src/routes/agents/profile-metadata.d.ts +8 -0
- package/dist/src/routes/agents/profile-metadata.d.ts.map +1 -1
- package/dist/src/routes/agents/profile-metadata.js +46 -102
- package/dist/src/routes/agents/profile-metadata.js.map +1 -1
- package/dist/src/routes/agents/registration.d.ts +6 -0
- package/dist/src/routes/agents/registration.d.ts.map +1 -1
- package/dist/src/routes/agents/registration.js +8 -1
- package/dist/src/routes/agents/registration.js.map +1 -1
- package/dist/src/routes/ai-transparency.d.ts +10 -4
- package/dist/src/routes/ai-transparency.d.ts.map +1 -1
- package/dist/src/routes/ai-transparency.js +63 -6
- package/dist/src/routes/ai-transparency.js.map +1 -1
- package/dist/src/routes/ai.d.ts +4 -0
- package/dist/src/routes/ai.d.ts.map +1 -1
- package/dist/src/routes/ai.js +10 -1
- package/dist/src/routes/ai.js.map +1 -1
- package/dist/src/routes/app-grants.d.ts +26 -0
- package/dist/src/routes/app-grants.d.ts.map +1 -1
- package/dist/src/routes/app-grants.js +139 -5
- package/dist/src/routes/app-grants.js.map +1 -1
- package/dist/src/routes/apps/catalogue-admin.d.ts.map +1 -1
- package/dist/src/routes/apps/catalogue-admin.js +15 -1
- package/dist/src/routes/apps/catalogue-admin.js.map +1 -1
- package/dist/src/routes/apps/drafts.d.ts +8 -0
- package/dist/src/routes/apps/drafts.d.ts.map +1 -1
- package/dist/src/routes/apps/drafts.js +41 -69
- package/dist/src/routes/apps/drafts.js.map +1 -1
- package/dist/src/routes/apps/fork-manage.d.ts +5 -0
- package/dist/src/routes/apps/fork-manage.d.ts.map +1 -1
- package/dist/src/routes/apps/fork-manage.js +37 -176
- package/dist/src/routes/apps/fork-manage.js.map +1 -1
- package/dist/src/routes/apps/helpers.d.ts +25 -2
- package/dist/src/routes/apps/helpers.d.ts.map +1 -1
- package/dist/src/routes/apps/helpers.js +57 -12
- package/dist/src/routes/apps/helpers.js.map +1 -1
- package/dist/src/routes/apps/publish.d.ts +4 -0
- 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 +10 -0
- package/dist/src/routes/apps/read.d.ts.map +1 -1
- package/dist/src/routes/apps/read.js +93 -10
- package/dist/src/routes/apps/read.js.map +1 -1
- package/dist/src/routes/attestations.d.ts +18 -0
- package/dist/src/routes/attestations.d.ts.map +1 -0
- package/dist/src/routes/attestations.js +92 -0
- package/dist/src/routes/attestations.js.map +1 -0
- package/dist/src/routes/auth.d.ts +6 -0
- package/dist/src/routes/auth.d.ts.map +1 -1
- package/dist/src/routes/auth.js +23 -15
- package/dist/src/routes/auth.js.map +1 -1
- package/dist/src/routes/boards.d.ts +13 -1
- package/dist/src/routes/boards.d.ts.map +1 -1
- package/dist/src/routes/boards.js +104 -303
- 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 +10 -61
- package/dist/src/routes/bootstrap.js.map +1 -1
- package/dist/src/routes/capabilities.d.ts +10 -0
- package/dist/src/routes/capabilities.d.ts.map +1 -1
- package/dist/src/routes/capabilities.js +39 -177
- package/dist/src/routes/capabilities.js.map +1 -1
- package/dist/src/routes/chat-instances.d.ts +4 -0
- package/dist/src/routes/chat-instances.d.ts.map +1 -1
- package/dist/src/routes/chat-instances.js +10 -30
- package/dist/src/routes/chat-instances.js.map +1 -1
- package/dist/src/routes/commerce-acp.d.ts +1 -0
- package/dist/src/routes/commerce-acp.d.ts.map +1 -1
- package/dist/src/routes/commerce-acp.js +2 -1
- package/dist/src/routes/commerce-acp.js.map +1 -1
- package/dist/src/routes/commerce-beneficiaries.d.ts.map +1 -1
- package/dist/src/routes/commerce-beneficiaries.js +1 -13
- package/dist/src/routes/commerce-beneficiaries.js.map +1 -1
- package/dist/src/routes/commerce-ucp.d.ts +1 -0
- package/dist/src/routes/commerce-ucp.d.ts.map +1 -1
- package/dist/src/routes/commerce-ucp.js +2 -1
- package/dist/src/routes/commerce-ucp.js.map +1 -1
- package/dist/src/routes/commerce-webhooks.d.ts +35 -0
- package/dist/src/routes/commerce-webhooks.d.ts.map +1 -0
- package/dist/src/routes/commerce-webhooks.js +178 -0
- package/dist/src/routes/commerce-webhooks.js.map +1 -0
- package/dist/src/routes/commerce.d.ts +4 -0
- package/dist/src/routes/commerce.d.ts.map +1 -1
- package/dist/src/routes/commerce.js +100 -3
- package/dist/src/routes/commerce.js.map +1 -1
- package/dist/src/routes/companies.d.ts +22 -0
- package/dist/src/routes/companies.d.ts.map +1 -0
- package/dist/src/routes/companies.js +291 -0
- package/dist/src/routes/companies.js.map +1 -0
- package/dist/src/routes/connections.d.ts +3 -0
- package/dist/src/routes/connections.d.ts.map +1 -1
- package/dist/src/routes/connections.js +232 -18
- package/dist/src/routes/connections.js.map +1 -1
- package/dist/src/routes/consent.d.ts.map +1 -1
- package/dist/src/routes/consent.js +21 -60
- package/dist/src/routes/consent.js.map +1 -1
- package/dist/src/routes/cortex.d.ts +5 -0
- package/dist/src/routes/cortex.d.ts.map +1 -1
- package/dist/src/routes/cortex.js +64 -176
- package/dist/src/routes/cortex.js.map +1 -1
- package/dist/src/routes/disputes.d.ts +4 -0
- package/dist/src/routes/disputes.d.ts.map +1 -1
- package/dist/src/routes/disputes.js +18 -1
- package/dist/src/routes/disputes.js.map +1 -1
- package/dist/src/routes/exchange-market.d.ts.map +1 -1
- package/dist/src/routes/exchange-market.js +7 -44
- package/dist/src/routes/exchange-market.js.map +1 -1
- package/dist/src/routes/extensions/actions.d.ts +6 -1
- package/dist/src/routes/extensions/actions.d.ts.map +1 -1
- package/dist/src/routes/extensions/actions.js +62 -423
- package/dist/src/routes/extensions/actions.js.map +1 -1
- package/dist/src/routes/extensions/crud.d.ts +7 -0
- package/dist/src/routes/extensions/crud.d.ts.map +1 -1
- package/dist/src/routes/extensions/crud.js +64 -215
- package/dist/src/routes/extensions/crud.js.map +1 -1
- package/dist/src/routes/extensions/entitlement-gate.d.ts +4 -3
- package/dist/src/routes/extensions/entitlement-gate.d.ts.map +1 -1
- package/dist/src/routes/extensions/entitlement-gate.js.map +1 -1
- package/dist/src/routes/extensions/instances.d.ts +2 -0
- package/dist/src/routes/extensions/instances.d.ts.map +1 -1
- package/dist/src/routes/extensions/instances.js +10 -3
- package/dist/src/routes/extensions/instances.js.map +1 -1
- package/dist/src/routes/extensions/internal-pass.d.ts +2 -0
- package/dist/src/routes/extensions/internal-pass.d.ts.map +1 -1
- package/dist/src/routes/extensions/internal-pass.js +12 -0
- package/dist/src/routes/extensions/internal-pass.js.map +1 -1
- package/dist/src/routes/extensions/manifest.d.ts +40 -7
- package/dist/src/routes/extensions/manifest.d.ts.map +1 -1
- package/dist/src/routes/extensions/manifest.js +115 -5
- package/dist/src/routes/extensions/manifest.js.map +1 -1
- package/dist/src/routes/extensions/metered-response.d.ts +31 -2
- package/dist/src/routes/extensions/metered-response.d.ts.map +1 -1
- package/dist/src/routes/extensions/metered-response.js +18 -0
- package/dist/src/routes/extensions/metered-response.js.map +1 -1
- package/dist/src/routes/extensions/pacing.d.ts +4 -3
- package/dist/src/routes/extensions/pacing.d.ts.map +1 -1
- package/dist/src/routes/extensions/pacing.js.map +1 -1
- package/dist/src/routes/extensions/paywall.d.ts +2 -2
- package/dist/src/routes/extensions/paywall.d.ts.map +1 -1
- package/dist/src/routes/extensions/paywall.js +111 -3
- package/dist/src/routes/extensions/paywall.js.map +1 -1
- package/dist/src/routes/extensions/permissions.d.ts +38 -0
- package/dist/src/routes/extensions/permissions.d.ts.map +1 -1
- package/dist/src/routes/extensions/permissions.js +44 -3
- package/dist/src/routes/extensions/permissions.js.map +1 -1
- package/dist/src/routes/federation-genesis.d.ts +2 -0
- package/dist/src/routes/federation-genesis.d.ts.map +1 -1
- package/dist/src/routes/federation-genesis.js +14 -8
- package/dist/src/routes/federation-genesis.js.map +1 -1
- package/dist/src/routes/federation-peer/lifecycle.d.ts +4 -1
- package/dist/src/routes/federation-peer/lifecycle.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/lifecycle.js +49 -4
- package/dist/src/routes/federation-peer/lifecycle.js.map +1 -1
- package/dist/src/routes/federation-peer/peers.d.ts +3 -1
- package/dist/src/routes/federation-peer/peers.d.ts.map +1 -1
- package/dist/src/routes/federation-peer/peers.js +26 -16
- package/dist/src/routes/federation-peer/peers.js.map +1 -1
- package/dist/src/routes/federation-settlements.d.ts +3 -0
- package/dist/src/routes/federation-settlements.d.ts.map +1 -1
- package/dist/src/routes/federation-settlements.js +11 -3
- package/dist/src/routes/federation-settlements.js.map +1 -1
- package/dist/src/routes/federation-sync/templates.d.ts +4 -0
- package/dist/src/routes/federation-sync/templates.d.ts.map +1 -1
- package/dist/src/routes/federation-sync/templates.js +39 -1
- package/dist/src/routes/federation-sync/templates.js.map +1 -1
- package/dist/src/routes/finance-ledger.d.ts +17 -0
- package/dist/src/routes/finance-ledger.d.ts.map +1 -0
- package/dist/src/routes/finance-ledger.js +384 -0
- package/dist/src/routes/finance-ledger.js.map +1 -0
- package/dist/src/routes/finance.d.ts +22 -0
- package/dist/src/routes/finance.d.ts.map +1 -0
- package/dist/src/routes/finance.js +338 -0
- package/dist/src/routes/finance.js.map +1 -0
- package/dist/src/routes/flags.d.ts +4 -2
- package/dist/src/routes/flags.d.ts.map +1 -1
- package/dist/src/routes/flags.js +18 -111
- package/dist/src/routes/flags.js.map +1 -1
- package/dist/src/routes/ghii/attach-email.d.ts +18 -0
- package/dist/src/routes/ghii/attach-email.d.ts.map +1 -0
- package/dist/src/routes/ghii/attach-email.js +90 -0
- package/dist/src/routes/ghii/attach-email.js.map +1 -0
- package/dist/src/routes/ghii/profile.d.ts +6 -0
- package/dist/src/routes/ghii/profile.d.ts.map +1 -1
- package/dist/src/routes/ghii/profile.js +31 -7
- package/dist/src/routes/ghii/profile.js.map +1 -1
- package/dist/src/routes/ghii/recovery.d.ts +8 -0
- package/dist/src/routes/ghii/recovery.d.ts.map +1 -1
- package/dist/src/routes/ghii/recovery.js +34 -9
- package/dist/src/routes/ghii/recovery.js.map +1 -1
- package/dist/src/routes/ghii/register-login.d.ts +10 -0
- package/dist/src/routes/ghii/register-login.d.ts.map +1 -1
- package/dist/src/routes/ghii/register-login.js +31 -121
- package/dist/src/routes/ghii/register-login.js.map +1 -1
- package/dist/src/routes/ghii/web-verify.d.ts +7 -0
- package/dist/src/routes/ghii/web-verify.d.ts.map +1 -1
- package/dist/src/routes/ghii/web-verify.js +32 -10
- package/dist/src/routes/ghii/web-verify.js.map +1 -1
- package/dist/src/routes/ghii.d.ts.map +1 -1
- package/dist/src/routes/ghii.js +2 -0
- package/dist/src/routes/ghii.js.map +1 -1
- package/dist/src/routes/home/feed.d.ts +17 -0
- package/dist/src/routes/home/feed.d.ts.map +1 -0
- package/dist/src/routes/home/feed.js +51 -0
- package/dist/src/routes/home/feed.js.map +1 -0
- package/dist/src/routes/home/first-agent.d.ts +24 -0
- package/dist/src/routes/home/first-agent.d.ts.map +1 -0
- package/dist/src/routes/home/first-agent.js +41 -0
- package/dist/src/routes/home/first-agent.js.map +1 -0
- package/dist/src/routes/home/state.d.ts +18 -0
- package/dist/src/routes/home/state.d.ts.map +1 -0
- package/dist/src/routes/home/state.js +56 -0
- package/dist/src/routes/home/state.js.map +1 -0
- package/dist/src/routes/home/track.d.ts +32 -0
- package/dist/src/routes/home/track.d.ts.map +1 -0
- package/dist/src/routes/home/track.js +73 -0
- package/dist/src/routes/home/track.js.map +1 -0
- package/dist/src/routes/home/welcome-mat.d.ts +45 -0
- package/dist/src/routes/home/welcome-mat.d.ts.map +1 -0
- package/dist/src/routes/home/welcome-mat.js +193 -0
- package/dist/src/routes/home/welcome-mat.js.map +1 -0
- package/dist/src/routes/home.d.ts +26 -0
- package/dist/src/routes/home.d.ts.map +1 -0
- package/dist/src/routes/home.js +38 -0
- package/dist/src/routes/home.js.map +1 -0
- package/dist/src/routes/instances/install.d.ts +1 -0
- package/dist/src/routes/instances/install.d.ts.map +1 -1
- package/dist/src/routes/instances/install.js +2 -0
- package/dist/src/routes/instances/install.js.map +1 -1
- package/dist/src/routes/instances/migration.d.ts +3 -0
- package/dist/src/routes/instances/migration.d.ts.map +1 -1
- package/dist/src/routes/instances/migration.js +23 -1
- package/dist/src/routes/instances/migration.js.map +1 -1
- package/dist/src/routes/invite-accept.d.ts +39 -0
- package/dist/src/routes/invite-accept.d.ts.map +1 -0
- package/dist/src/routes/invite-accept.js +304 -0
- package/dist/src/routes/invite-accept.js.map +1 -0
- package/dist/src/routes/ledger.js +1 -1
- package/dist/src/routes/ledger.js.map +1 -1
- package/dist/src/routes/librarian.d.ts +3 -0
- package/dist/src/routes/librarian.d.ts.map +1 -1
- package/dist/src/routes/librarian.js +8 -1
- package/dist/src/routes/librarian.js.map +1 -1
- package/dist/src/routes/libs.d.ts.map +1 -1
- package/dist/src/routes/libs.js +7 -1
- package/dist/src/routes/libs.js.map +1 -1
- package/dist/src/routes/memory/bulk.d.ts +2 -0
- package/dist/src/routes/memory/bulk.d.ts.map +1 -1
- package/dist/src/routes/memory/bulk.js +4 -2
- package/dist/src/routes/memory/bulk.js.map +1 -1
- package/dist/src/routes/memory/crud.d.ts +3 -0
- package/dist/src/routes/memory/crud.d.ts.map +1 -1
- package/dist/src/routes/memory/crud.js +62 -156
- package/dist/src/routes/memory/crud.js.map +1 -1
- package/dist/src/routes/memory/federation.d.ts +2 -0
- package/dist/src/routes/memory/federation.d.ts.map +1 -1
- package/dist/src/routes/memory/federation.js +19 -2
- package/dist/src/routes/memory/federation.js.map +1 -1
- package/dist/src/routes/memory/files.d.ts +2 -0
- package/dist/src/routes/memory/files.d.ts.map +1 -1
- package/dist/src/routes/memory/files.js +6 -4
- package/dist/src/routes/memory/files.js.map +1 -1
- package/dist/src/routes/memory/key.d.ts +5 -0
- package/dist/src/routes/memory/key.d.ts.map +1 -1
- package/dist/src/routes/memory/key.js +22 -2
- package/dist/src/routes/memory/key.js.map +1 -1
- package/dist/src/routes/memory/owner-target.d.ts +105 -0
- package/dist/src/routes/memory/owner-target.d.ts.map +1 -0
- package/dist/src/routes/memory/owner-target.js +104 -0
- package/dist/src/routes/memory/owner-target.js.map +1 -0
- package/dist/src/routes/memory/patch.d.ts +32 -0
- package/dist/src/routes/memory/patch.d.ts.map +1 -0
- package/dist/src/routes/memory/patch.js +264 -0
- package/dist/src/routes/memory/patch.js.map +1 -0
- package/dist/src/routes/memory.d.ts.map +1 -1
- package/dist/src/routes/memory.js +3 -0
- package/dist/src/routes/memory.js.map +1 -1
- package/dist/src/routes/messages.d.ts.map +1 -1
- package/dist/src/routes/messages.js +80 -2
- package/dist/src/routes/messages.js.map +1 -1
- package/dist/src/routes/open-items.d.ts +22 -0
- package/dist/src/routes/open-items.d.ts.map +1 -0
- package/dist/src/routes/open-items.js +183 -0
- package/dist/src/routes/open-items.js.map +1 -0
- package/dist/src/routes/organisms/crud.d.ts +6 -0
- package/dist/src/routes/organisms/crud.d.ts.map +1 -1
- package/dist/src/routes/organisms/crud.js +44 -202
- 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 +5 -0
- package/dist/src/routes/organisms/gates.js.map +1 -1
- package/dist/src/routes/organisms/membership.d.ts +6 -0
- package/dist/src/routes/organisms/membership.d.ts.map +1 -1
- package/dist/src/routes/organisms/membership.js +47 -30
- package/dist/src/routes/organisms/membership.js.map +1 -1
- package/dist/src/routes/organisms/record-helpers.d.ts +33 -0
- package/dist/src/routes/organisms/record-helpers.d.ts.map +1 -0
- package/dist/src/routes/organisms/record-helpers.js +44 -0
- package/dist/src/routes/organisms/record-helpers.js.map +1 -0
- package/dist/src/routes/organisms/shared.d.ts +14 -5
- package/dist/src/routes/organisms/shared.d.ts.map +1 -1
- package/dist/src/routes/organisms/shared.js +44 -50
- package/dist/src/routes/organisms/shared.js.map +1 -1
- package/dist/src/routes/organisms/workspace-access.d.ts +7 -0
- package/dist/src/routes/organisms/workspace-access.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-access.js +58 -232
- package/dist/src/routes/organisms/workspace-access.js.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.d.ts.map +1 -1
- package/dist/src/routes/organisms/workspace-ops.js +1 -0
- package/dist/src/routes/organisms/workspace-ops.js.map +1 -1
- package/dist/src/routes/organisms.d.ts.map +1 -1
- package/dist/src/routes/organisms.js +4 -0
- package/dist/src/routes/organisms.js.map +1 -1
- package/dist/src/routes/outbound.d.ts +22 -0
- package/dist/src/routes/outbound.d.ts.map +1 -0
- package/dist/src/routes/outbound.js +212 -0
- package/dist/src/routes/outbound.js.map +1 -0
- package/dist/src/routes/owners/export.d.ts +25 -0
- package/dist/src/routes/owners/export.d.ts.map +1 -0
- package/dist/src/routes/owners/export.js +417 -0
- package/dist/src/routes/owners/export.js.map +1 -0
- package/dist/src/routes/owners.d.ts +6 -0
- package/dist/src/routes/owners.d.ts.map +1 -1
- package/dist/src/routes/owners.js +30 -555
- package/dist/src/routes/owners.js.map +1 -1
- package/dist/src/routes/portal.d.ts.map +1 -1
- package/dist/src/routes/portal.js +3 -0
- package/dist/src/routes/portal.js.map +1 -1
- package/dist/src/routes/portfolio.d.ts +58 -1
- package/dist/src/routes/portfolio.d.ts.map +1 -1
- package/dist/src/routes/portfolio.js +157 -54
- package/dist/src/routes/portfolio.js.map +1 -1
- package/dist/src/routes/prompts-intent-pool.d.ts +13 -0
- package/dist/src/routes/prompts-intent-pool.d.ts.map +1 -0
- package/dist/src/routes/prompts-intent-pool.js +27 -0
- package/dist/src/routes/prompts-intent-pool.js.map +1 -0
- package/dist/src/routes/prompts-open-items.d.ts +32 -0
- package/dist/src/routes/prompts-open-items.d.ts.map +1 -0
- package/dist/src/routes/prompts-open-items.js +115 -0
- package/dist/src/routes/prompts-open-items.js.map +1 -0
- package/dist/src/routes/prompts.d.ts +4 -0
- package/dist/src/routes/prompts.d.ts.map +1 -1
- package/dist/src/routes/prompts.js +75 -4
- package/dist/src/routes/prompts.js.map +1 -1
- package/dist/src/routes/push.d.ts +9 -4
- package/dist/src/routes/push.d.ts.map +1 -1
- package/dist/src/routes/push.js +73 -14
- package/dist/src/routes/push.js.map +1 -1
- package/dist/src/routes/registration-invites.d.ts +31 -0
- package/dist/src/routes/registration-invites.d.ts.map +1 -0
- package/dist/src/routes/registration-invites.js +110 -0
- package/dist/src/routes/registration-invites.js.map +1 -0
- package/dist/src/routes/schedules.d.ts +18 -0
- package/dist/src/routes/schedules.d.ts.map +1 -1
- package/dist/src/routes/schedules.js +45 -269
- package/dist/src/routes/schedules.js.map +1 -1
- package/dist/src/routes/sharing-groups.d.ts +13 -0
- package/dist/src/routes/sharing-groups.d.ts.map +1 -1
- package/dist/src/routes/sharing-groups.js +119 -99
- package/dist/src/routes/sharing-groups.js.map +1 -1
- package/dist/src/routes/storage-files.d.ts +13 -0
- package/dist/src/routes/storage-files.d.ts.map +1 -1
- package/dist/src/routes/storage-files.js +58 -64
- package/dist/src/routes/storage-files.js.map +1 -1
- package/dist/src/routes/subdomain-admin.d.ts +17 -0
- package/dist/src/routes/subdomain-admin.d.ts.map +1 -0
- package/dist/src/routes/subdomain-admin.js +132 -0
- package/dist/src/routes/subdomain-admin.js.map +1 -0
- package/dist/src/routes/subdomains.d.ts +18 -5
- package/dist/src/routes/subdomains.d.ts.map +1 -1
- package/dist/src/routes/subdomains.js +76 -125
- package/dist/src/routes/subdomains.js.map +1 -1
- package/dist/src/routes/totp.d.ts +5 -0
- package/dist/src/routes/totp.d.ts.map +1 -1
- package/dist/src/routes/totp.js +18 -9
- package/dist/src/routes/totp.js.map +1 -1
- package/dist/src/routes/upload.d.ts +29 -1
- package/dist/src/routes/upload.d.ts.map +1 -1
- package/dist/src/routes/upload.js +123 -35
- package/dist/src/routes/upload.js.map +1 -1
- package/dist/src/routes/verification.d.ts +5 -0
- package/dist/src/routes/verification.d.ts.map +1 -1
- package/dist/src/routes/verification.js +13 -5
- package/dist/src/routes/verification.js.map +1 -1
- package/dist/src/routes/work.d.ts +74 -16
- package/dist/src/routes/work.d.ts.map +1 -1
- package/dist/src/routes/work.js +38 -206
- package/dist/src/routes/work.js.map +1 -1
- package/dist/src/routes/workflows.d.ts.map +1 -1
- package/dist/src/routes/workflows.js +29 -20
- package/dist/src/routes/workflows.js.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
- package/dist/src/server-bootstrap/routes-loader.js +25 -3
- package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
- package/dist/src/server-bootstrap/service-init.d.ts.map +1 -1
- package/dist/src/server-bootstrap/service-init.js +8 -0
- package/dist/src/server-bootstrap/service-init.js.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +4 -0
- package/dist/src/server.js.map +1 -1
- package/dist/src/services/access-guard.d.ts +4 -0
- package/dist/src/services/access-guard.d.ts.map +1 -1
- package/dist/src/services/access-guard.js +13 -0
- package/dist/src/services/access-guard.js.map +1 -1
- package/dist/src/services/agent-connect-prompt.d.ts +41 -0
- package/dist/src/services/agent-connect-prompt.d.ts.map +1 -0
- package/dist/src/services/agent-connect-prompt.js +113 -0
- package/dist/src/services/agent-connect-prompt.js.map +1 -0
- package/dist/src/services/agent-health.d.ts +104 -0
- package/dist/src/services/agent-health.d.ts.map +1 -0
- package/dist/src/services/agent-health.js +130 -0
- package/dist/src/services/agent-health.js.map +1 -0
- package/dist/src/services/agent-message-send.d.ts +52 -0
- package/dist/src/services/agent-message-send.d.ts.map +1 -0
- package/dist/src/services/agent-message-send.js +142 -0
- package/dist/src/services/agent-message-send.js.map +1 -0
- package/dist/src/services/agent-offers-write.d.ts +108 -0
- package/dist/src/services/agent-offers-write.d.ts.map +1 -0
- package/dist/src/services/agent-offers-write.js +98 -0
- package/dist/src/services/agent-offers-write.js.map +1 -0
- package/dist/src/services/agent-onboard-prompt.d.ts +23 -0
- package/dist/src/services/agent-onboard-prompt.d.ts.map +1 -0
- package/dist/src/services/agent-onboard-prompt.js +78 -0
- package/dist/src/services/agent-onboard-prompt.js.map +1 -0
- package/dist/src/services/agent-profile-write.d.ts +152 -0
- package/dist/src/services/agent-profile-write.d.ts.map +1 -0
- package/dist/src/services/agent-profile-write.js +328 -0
- package/dist/src/services/agent-profile-write.js.map +1 -0
- package/dist/src/services/agent-task-fanout.d.ts +40 -0
- package/dist/src/services/agent-task-fanout.d.ts.map +1 -0
- package/dist/src/services/agent-task-fanout.js +150 -0
- package/dist/src/services/agent-task-fanout.js.map +1 -0
- package/dist/src/services/agent-task-rules.d.ts +67 -0
- package/dist/src/services/agent-task-rules.d.ts.map +1 -0
- package/dist/src/services/agent-task-rules.js +54 -0
- package/dist/src/services/agent-task-rules.js.map +1 -0
- package/dist/src/services/agent-task-write.d.ts +116 -0
- package/dist/src/services/agent-task-write.d.ts.map +1 -0
- package/dist/src/services/agent-task-write.js +395 -0
- package/dist/src/services/agent-task-write.js.map +1 -0
- package/dist/src/services/ai-provenance-marks.d.ts +5 -0
- package/dist/src/services/ai-provenance-marks.d.ts.map +1 -1
- package/dist/src/services/ai-provenance-marks.js +39 -8
- package/dist/src/services/ai-provenance-marks.js.map +1 -1
- package/dist/src/services/ai-provenance.d.ts.map +1 -1
- package/dist/src/services/ai-provenance.js +22 -1
- package/dist/src/services/ai-provenance.js.map +1 -1
- package/dist/src/services/ai-tool-setup.d.ts +117 -0
- package/dist/src/services/ai-tool-setup.d.ts.map +1 -1
- package/dist/src/services/ai-tool-setup.js +195 -17
- package/dist/src/services/ai-tool-setup.js.map +1 -1
- package/dist/src/services/app-access-token.d.ts +26 -0
- package/dist/src/services/app-access-token.d.ts.map +1 -0
- package/dist/src/services/app-access-token.js +94 -0
- package/dist/src/services/app-access-token.js.map +1 -0
- package/dist/src/services/app-artifact-lint.d.ts +60 -0
- package/dist/src/services/app-artifact-lint.d.ts.map +1 -0
- package/dist/src/services/app-artifact-lint.js +285 -0
- package/dist/src/services/app-artifact-lint.js.map +1 -0
- package/dist/src/services/app-lifecycle.d.ts +156 -0
- package/dist/src/services/app-lifecycle.d.ts.map +1 -0
- package/dist/src/services/app-lifecycle.js +410 -0
- package/dist/src/services/app-lifecycle.js.map +1 -0
- package/dist/src/services/app-publish-next-steps.d.ts +30 -0
- package/dist/src/services/app-publish-next-steps.d.ts.map +1 -0
- package/dist/src/services/app-publish-next-steps.js +40 -0
- package/dist/src/services/app-publish-next-steps.js.map +1 -0
- package/dist/src/services/app-publish.d.ts +14 -0
- package/dist/src/services/app-publish.d.ts.map +1 -1
- package/dist/src/services/app-publish.js +64 -5
- package/dist/src/services/app-publish.js.map +1 -1
- package/dist/src/services/app-serve-marks.d.ts +4 -0
- package/dist/src/services/app-serve-marks.d.ts.map +1 -1
- package/dist/src/services/app-serve-marks.js +7 -0
- package/dist/src/services/app-serve-marks.js.map +1 -1
- package/dist/src/services/app-spec-gate.d.ts +60 -0
- package/dist/src/services/app-spec-gate.d.ts.map +1 -0
- package/dist/src/services/app-spec-gate.js +48 -0
- package/dist/src/services/app-spec-gate.js.map +1 -0
- package/dist/src/services/appdev-kb.d.ts +18 -2
- package/dist/src/services/appdev-kb.d.ts.map +1 -1
- package/dist/src/services/appdev-kb.js +26 -4
- package/dist/src/services/appdev-kb.js.map +1 -1
- package/dist/src/services/attestation.d.ts +39 -0
- package/dist/src/services/attestation.d.ts.map +1 -0
- package/dist/src/services/attestation.js +142 -0
- package/dist/src/services/attestation.js.map +1 -0
- package/dist/src/services/board-post.d.ts +79 -0
- package/dist/src/services/board-post.d.ts.map +1 -0
- package/dist/src/services/board-post.js +215 -0
- package/dist/src/services/board-post.js.map +1 -0
- package/dist/src/services/board-read-access.d.ts +46 -0
- package/dist/src/services/board-read-access.d.ts.map +1 -0
- package/dist/src/services/board-read-access.js +30 -0
- package/dist/src/services/board-read-access.js.map +1 -0
- package/dist/src/services/board-subscribers.d.ts +28 -0
- package/dist/src/services/board-subscribers.d.ts.map +1 -0
- package/dist/src/services/board-subscribers.js +37 -0
- package/dist/src/services/board-subscribers.js.map +1 -0
- package/dist/src/services/board-write.d.ts +95 -0
- package/dist/src/services/board-write.d.ts.map +1 -0
- package/dist/src/services/board-write.js +195 -0
- package/dist/src/services/board-write.js.map +1 -0
- package/dist/src/services/build-app-prompt.d.ts +7 -69
- package/dist/src/services/build-app-prompt.d.ts.map +1 -1
- package/dist/src/services/build-app-prompt.js +167 -5
- package/dist/src/services/build-app-prompt.js.map +1 -1
- package/dist/src/services/capability-record.d.ts +103 -0
- package/dist/src/services/capability-record.d.ts.map +1 -0
- package/dist/src/services/capability-record.js +298 -0
- package/dist/src/services/capability-record.js.map +1 -0
- package/dist/src/services/chat-instance-write.d.ts +91 -0
- package/dist/src/services/chat-instance-write.d.ts.map +1 -0
- package/dist/src/services/chat-instance-write.js +59 -0
- package/dist/src/services/chat-instance-write.js.map +1 -0
- package/dist/src/services/company/company-portfolio.d.ts +53 -0
- package/dist/src/services/company/company-portfolio.d.ts.map +1 -0
- package/dist/src/services/company/company-portfolio.js +78 -0
- package/dist/src/services/company/company-portfolio.js.map +1 -0
- package/dist/src/services/company/company-service.d.ts +30 -0
- package/dist/src/services/company/company-service.d.ts.map +1 -0
- package/dist/src/services/company/company-service.js +217 -0
- package/dist/src/services/company/company-service.js.map +1 -0
- package/dist/src/services/company/company-smtp.d.ts +42 -0
- package/dist/src/services/company/company-smtp.d.ts.map +1 -0
- package/dist/src/services/company/company-smtp.js +127 -0
- package/dist/src/services/company/company-smtp.js.map +1 -0
- package/dist/src/services/component-registrar.d.ts +26 -0
- package/dist/src/services/component-registrar.d.ts.map +1 -1
- package/dist/src/services/component-registrar.js +67 -29
- package/dist/src/services/component-registrar.js.map +1 -1
- package/dist/src/services/config-schema.d.ts.map +1 -1
- package/dist/src/services/config-schema.js +5 -1
- package/dist/src/services/config-schema.js.map +1 -1
- package/dist/src/services/connections/attach.d.ts.map +1 -1
- package/dist/src/services/connections/attach.js +2 -0
- package/dist/src/services/connections/attach.js.map +1 -1
- package/dist/src/services/connections/instance.d.ts.map +1 -1
- package/dist/src/services/connections/instance.js +2 -0
- package/dist/src/services/connections/instance.js.map +1 -1
- package/dist/src/services/connections/metrics.d.ts +62 -0
- package/dist/src/services/connections/metrics.d.ts.map +1 -0
- package/dist/src/services/connections/metrics.js +287 -0
- package/dist/src/services/connections/metrics.js.map +1 -0
- package/dist/src/services/connections/oauth.d.ts.map +1 -1
- package/dist/src/services/connections/oauth.js +88 -16
- package/dist/src/services/connections/oauth.js.map +1 -1
- package/dist/src/services/connections/providers.d.ts +53 -2
- package/dist/src/services/connections/providers.d.ts.map +1 -1
- package/dist/src/services/connections/providers.js +191 -9
- package/dist/src/services/connections/providers.js.map +1 -1
- package/dist/src/services/connections/publish-gate.d.ts +9 -1
- package/dist/src/services/connections/publish-gate.d.ts.map +1 -1
- package/dist/src/services/connections/publish-gate.js +0 -0
- package/dist/src/services/connections/publish-gate.js.map +1 -1
- package/dist/src/services/connections/publish-run.d.ts +64 -0
- package/dist/src/services/connections/publish-run.d.ts.map +1 -0
- package/dist/src/services/connections/publish-run.js +120 -0
- package/dist/src/services/connections/publish-run.js.map +1 -0
- package/dist/src/services/connections/publish.d.ts +9 -1
- package/dist/src/services/connections/publish.d.ts.map +1 -1
- package/dist/src/services/connections/publish.js +211 -1
- package/dist/src/services/connections/publish.js.map +1 -1
- package/dist/src/services/connections/refresh.d.ts.map +1 -1
- package/dist/src/services/connections/refresh.js +49 -17
- package/dist/src/services/connections/refresh.js.map +1 -1
- package/dist/src/services/connections/scheduled-publish-job.d.ts +57 -0
- package/dist/src/services/connections/scheduled-publish-job.d.ts.map +1 -0
- package/dist/src/services/connections/scheduled-publish-job.js +101 -0
- package/dist/src/services/connections/scheduled-publish-job.js.map +1 -0
- package/dist/src/services/consent-write.d.ts +49 -0
- package/dist/src/services/consent-write.d.ts.map +1 -0
- package/dist/src/services/consent-write.js +141 -0
- package/dist/src/services/consent-write.js.map +1 -0
- package/dist/src/services/contribution-proofs.d.ts +92 -0
- package/dist/src/services/contribution-proofs.d.ts.map +1 -0
- package/dist/src/services/contribution-proofs.js +144 -0
- package/dist/src/services/contribution-proofs.js.map +1 -0
- package/dist/src/services/conversation-group.d.ts +90 -0
- package/dist/src/services/conversation-group.d.ts.map +1 -0
- package/dist/src/services/conversation-group.js +201 -0
- package/dist/src/services/conversation-group.js.map +1 -0
- package/dist/src/services/core-jobs.d.ts.map +1 -1
- package/dist/src/services/core-jobs.js +12 -0
- package/dist/src/services/core-jobs.js.map +1 -1
- package/dist/src/services/cortex-lifecycle.d.ts +138 -0
- package/dist/src/services/cortex-lifecycle.d.ts.map +1 -0
- package/dist/src/services/cortex-lifecycle.js +187 -0
- package/dist/src/services/cortex-lifecycle.js.map +1 -0
- package/dist/src/services/db/access-tab-db-service.js +1 -1
- package/dist/src/services/db/access-tab-db-service.js.map +1 -1
- package/dist/src/services/db/agent-activity-overview-db-service.js +1 -1
- package/dist/src/services/db/agent-activity-overview-db-service.js.map +1 -1
- package/dist/src/services/db/agent-data-access-overview-db-service.js +1 -1
- package/dist/src/services/db/agent-data-access-overview-db-service.js.map +1 -1
- package/dist/src/services/db/agent-db-service.d.ts +3 -3
- package/dist/src/services/db/agent-db-service.d.ts.map +1 -1
- package/dist/src/services/db/agent-db-service.js +2 -2
- package/dist/src/services/db/agent-db-service.js.map +1 -1
- package/dist/src/services/db/agent-integration-overview-db-service.js +1 -1
- package/dist/src/services/db/agent-integration-overview-db-service.js.map +1 -1
- package/dist/src/services/db/agent-messages-overview-db-service.js +1 -1
- package/dist/src/services/db/agent-messages-overview-db-service.js.map +1 -1
- package/dist/src/services/db/calibrator-detail-db-service.js +1 -1
- package/dist/src/services/db/calibrator-detail-db-service.js.map +1 -1
- package/dist/src/services/db/data-wallet-db-service.js +1 -1
- package/dist/src/services/db/data-wallet-db-service.js.map +1 -1
- package/dist/src/services/db/home-dashboard-service.js +1 -1
- package/dist/src/services/db/home-dashboard-service.js.map +1 -1
- package/dist/src/services/db/knowledge-tab-db-service.js +1 -1
- package/dist/src/services/db/knowledge-tab-db-service.js.map +1 -1
- package/dist/src/services/db/living-docs-db-service.js +1 -1
- package/dist/src/services/db/living-docs-db-service.js.map +1 -1
- package/dist/src/services/db/memory-tab-db-service.js +1 -1
- package/dist/src/services/db/memory-tab-db-service.js.map +1 -1
- package/dist/src/services/db/messages-inbox-db-service.d.ts +16 -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 +33 -2
- package/dist/src/services/db/messages-inbox-db-service.js.map +1 -1
- package/dist/src/services/db/messaging-db-service.js +1 -1
- package/dist/src/services/db/messaging-db-service.js.map +1 -1
- package/dist/src/services/db/notebook-db-service.js +1 -1
- package/dist/src/services/db/notebook-db-service.js.map +1 -1
- package/dist/src/services/db/owner-identity.d.ts +5 -5
- package/dist/src/services/db/owner-identity.d.ts.map +1 -1
- package/dist/src/services/db/owner-identity.js +10 -10
- package/dist/src/services/db/owner-identity.js.map +1 -1
- package/dist/src/services/db/packages-tab-db-service.js +1 -1
- package/dist/src/services/db/packages-tab-db-service.js.map +1 -1
- package/dist/src/services/db/security-tab-db-service.js +1 -1
- package/dist/src/services/db/security-tab-db-service.js.map +1 -1
- package/dist/src/services/db/wallet-tab-db-service.js +1 -1
- package/dist/src/services/db/wallet-tab-db-service.js.map +1 -1
- package/dist/src/services/db/work-tab-db-service.js +1 -1
- package/dist/src/services/db/work-tab-db-service.js.map +1 -1
- package/dist/src/services/discovery/sources/memory-source.d.ts +4 -0
- package/dist/src/services/discovery/sources/memory-source.d.ts.map +1 -1
- package/dist/src/services/discovery/sources/memory-source.js +5 -1
- package/dist/src/services/discovery/sources/memory-source.js.map +1 -1
- package/dist/src/services/email-templates.d.ts +46 -0
- package/dist/src/services/email-templates.d.ts.map +1 -1
- package/dist/src/services/email-templates.js +221 -104
- package/dist/src/services/email-templates.js.map +1 -1
- package/dist/src/services/email-verification-start.d.ts +7 -0
- package/dist/src/services/email-verification-start.d.ts.map +1 -0
- package/dist/src/services/email-verification-start.js +34 -0
- package/dist/src/services/email-verification-start.js.map +1 -0
- package/dist/src/services/email.d.ts +13 -0
- package/dist/src/services/email.d.ts.map +1 -1
- package/dist/src/services/email.js +23 -0
- package/dist/src/services/email.js.map +1 -1
- package/dist/src/services/exchange-market.d.ts +43 -0
- package/dist/src/services/exchange-market.d.ts.map +1 -1
- package/dist/src/services/exchange-market.js +81 -1
- package/dist/src/services/exchange-market.js.map +1 -1
- package/dist/src/services/extension-ctx.d.ts +108 -0
- package/dist/src/services/extension-ctx.d.ts.map +1 -0
- package/dist/src/services/extension-ctx.js +347 -0
- package/dist/src/services/extension-ctx.js.map +1 -0
- package/dist/src/services/extension-lifecycle.d.ts +109 -0
- package/dist/src/services/extension-lifecycle.d.ts.map +1 -0
- package/dist/src/services/extension-lifecycle.js +200 -0
- package/dist/src/services/extension-lifecycle.js.map +1 -0
- package/dist/src/services/extension-notify.d.ts +21 -0
- package/dist/src/services/extension-notify.d.ts.map +1 -0
- package/dist/src/services/extension-notify.js +102 -0
- package/dist/src/services/extension-notify.js.map +1 -0
- package/dist/src/services/extension-purchase.d.ts.map +1 -1
- package/dist/src/services/extension-purchase.js +30 -6
- package/dist/src/services/extension-purchase.js.map +1 -1
- package/dist/src/services/extension-runtime.d.ts +3 -0
- package/dist/src/services/extension-runtime.d.ts.map +1 -1
- package/dist/src/services/extension-runtime.js.map +1 -1
- package/dist/src/services/extension-secrets.d.ts +27 -0
- package/dist/src/services/extension-secrets.d.ts.map +1 -1
- package/dist/src/services/extension-secrets.js +37 -0
- package/dist/src/services/extension-secrets.js.map +1 -1
- package/dist/src/services/extension-upsert.d.ts +52 -0
- package/dist/src/services/extension-upsert.d.ts.map +1 -0
- package/dist/src/services/extension-upsert.js +61 -0
- package/dist/src/services/extension-upsert.js.map +1 -0
- package/dist/src/services/federation.d.ts +11 -0
- package/dist/src/services/federation.d.ts.map +1 -1
- package/dist/src/services/federation.js +11 -0
- package/dist/src/services/federation.js.map +1 -1
- package/dist/src/services/finance/accountant-access.d.ts +40 -0
- package/dist/src/services/finance/accountant-access.d.ts.map +1 -0
- package/dist/src/services/finance/accountant-access.js +84 -0
- package/dist/src/services/finance/accountant-access.js.map +1 -0
- package/dist/src/services/finance/errors.d.ts +14 -0
- package/dist/src/services/finance/errors.d.ts.map +1 -0
- package/dist/src/services/finance/errors.js +19 -0
- package/dist/src/services/finance/errors.js.map +1 -0
- package/dist/src/services/finance/export.d.ts +16 -0
- package/dist/src/services/finance/export.d.ts.map +1 -0
- package/dist/src/services/finance/export.js +116 -0
- package/dist/src/services/finance/export.js.map +1 -0
- package/dist/src/services/finance/finvoice-operator.d.ts +22 -0
- package/dist/src/services/finance/finvoice-operator.d.ts.map +1 -0
- package/dist/src/services/finance/finvoice-operator.js +154 -0
- package/dist/src/services/finance/finvoice-operator.js.map +1 -0
- package/dist/src/services/finance/finvoice.d.ts +29 -0
- package/dist/src/services/finance/finvoice.d.ts.map +1 -0
- package/dist/src/services/finance/finvoice.js +151 -0
- package/dist/src/services/finance/finvoice.js.map +1 -0
- package/dist/src/services/finance/invoice-pdf.d.ts +4 -0
- package/dist/src/services/finance/invoice-pdf.d.ts.map +1 -0
- package/dist/src/services/finance/invoice-pdf.js +177 -0
- package/dist/src/services/finance/invoice-pdf.js.map +1 -0
- package/dist/src/services/finance/invoice-service.d.ts +55 -0
- package/dist/src/services/finance/invoice-service.d.ts.map +1 -0
- package/dist/src/services/finance/invoice-service.js +292 -0
- package/dist/src/services/finance/invoice-service.js.map +1 -0
- package/dist/src/services/finance/pnl.d.ts +37 -0
- package/dist/src/services/finance/pnl.d.ts.map +1 -0
- package/dist/src/services/finance/pnl.js +51 -0
- package/dist/src/services/finance/pnl.js.map +1 -0
- package/dist/src/services/finance/reference-number.d.ts +28 -0
- package/dist/src/services/finance/reference-number.d.ts.map +1 -0
- package/dist/src/services/finance/reference-number.js +74 -0
- package/dist/src/services/finance/reference-number.js.map +1 -0
- package/dist/src/services/finance/vat-codes.d.ts +28 -0
- package/dist/src/services/finance/vat-codes.d.ts.map +1 -0
- package/dist/src/services/finance/vat-codes.js +84 -0
- package/dist/src/services/finance/vat-codes.js.map +1 -0
- package/dist/src/services/finance/vat-report.d.ts +41 -0
- package/dist/src/services/finance/vat-report.d.ts.map +1 -0
- package/dist/src/services/finance/vat-report.js +59 -0
- package/dist/src/services/finance/vat-report.js.map +1 -0
- package/dist/src/services/finance/vouchers.d.ts +30 -0
- package/dist/src/services/finance/vouchers.d.ts.map +1 -0
- package/dist/src/services/finance/vouchers.js +101 -0
- package/dist/src/services/finance/vouchers.js.map +1 -0
- package/dist/src/services/group-shares.d.ts +103 -0
- package/dist/src/services/group-shares.d.ts.map +1 -0
- package/dist/src/services/group-shares.js +224 -0
- package/dist/src/services/group-shares.js.map +1 -0
- package/dist/src/services/handbooks/agent.d.ts +4 -1
- package/dist/src/services/handbooks/agent.d.ts.map +1 -1
- package/dist/src/services/handbooks/agent.js +13 -6
- package/dist/src/services/handbooks/agent.js.map +1 -1
- package/dist/src/services/hello-mcp.d.ts +3 -0
- package/dist/src/services/hello-mcp.d.ts.map +1 -1
- package/dist/src/services/hello-mcp.js +12 -2
- package/dist/src/services/hello-mcp.js.map +1 -1
- package/dist/src/services/home-feed.d.ts +49 -0
- package/dist/src/services/home-feed.d.ts.map +1 -0
- package/dist/src/services/home-feed.js +61 -0
- package/dist/src/services/home-feed.js.map +1 -0
- package/dist/src/services/home-rooms.d.ts +58 -0
- package/dist/src/services/home-rooms.d.ts.map +1 -0
- package/dist/src/services/home-rooms.js +80 -0
- package/dist/src/services/home-rooms.js.map +1 -0
- package/dist/src/services/home-state.d.ts +117 -0
- package/dist/src/services/home-state.d.ts.map +1 -0
- package/dist/src/services/home-state.js +160 -0
- package/dist/src/services/home-state.js.map +1 -0
- package/dist/src/services/inactivity-nudge.d.ts +103 -0
- package/dist/src/services/inactivity-nudge.d.ts.map +1 -0
- package/dist/src/services/inactivity-nudge.js +207 -0
- package/dist/src/services/inactivity-nudge.js.map +1 -0
- package/dist/src/services/install-quotas.d.ts +52 -0
- package/dist/src/services/install-quotas.d.ts.map +1 -0
- package/dist/src/services/install-quotas.js +47 -0
- package/dist/src/services/install-quotas.js.map +1 -0
- package/dist/src/services/intent-pool-prompt.d.ts +24 -0
- package/dist/src/services/intent-pool-prompt.d.ts.map +1 -0
- package/dist/src/services/intent-pool-prompt.js +62 -0
- package/dist/src/services/intent-pool-prompt.js.map +1 -0
- package/dist/src/services/invitations.d.ts +95 -2
- package/dist/src/services/invitations.d.ts.map +1 -1
- package/dist/src/services/invitations.js +195 -3
- package/dist/src/services/invitations.js.map +1 -1
- package/dist/src/services/job-seeding.d.ts.map +1 -1
- package/dist/src/services/job-seeding.js +8 -0
- package/dist/src/services/job-seeding.js.map +1 -1
- package/dist/src/services/key-credentials.js +1 -1
- package/dist/src/services/key-credentials.js.map +1 -1
- package/dist/src/services/knowledge-package-entry.d.ts +107 -0
- package/dist/src/services/knowledge-package-entry.d.ts.map +1 -0
- package/dist/src/services/knowledge-package-entry.js +103 -0
- package/dist/src/services/knowledge-package-entry.js.map +1 -0
- package/dist/src/services/memory-ceilings.d.ts +66 -0
- package/dist/src/services/memory-ceilings.d.ts.map +1 -0
- package/dist/src/services/memory-ceilings.js +69 -0
- package/dist/src/services/memory-ceilings.js.map +1 -0
- package/dist/src/services/memory-write.d.ts +146 -0
- package/dist/src/services/memory-write.d.ts.map +1 -0
- package/dist/src/services/memory-write.js +251 -0
- package/dist/src/services/memory-write.js.map +1 -0
- package/dist/src/services/message-alias.d.ts +105 -0
- package/dist/src/services/message-alias.d.ts.map +1 -0
- package/dist/src/services/message-alias.js +102 -0
- package/dist/src/services/message-alias.js.map +1 -0
- package/dist/src/services/message-provenance.d.ts +45 -0
- package/dist/src/services/message-provenance.d.ts.map +1 -0
- package/dist/src/services/message-provenance.js +38 -0
- package/dist/src/services/message-provenance.js.map +1 -0
- package/dist/src/services/metered-access.d.ts +21 -0
- package/dist/src/services/metered-access.d.ts.map +1 -1
- package/dist/src/services/metered-access.js +44 -18
- package/dist/src/services/metered-access.js.map +1 -1
- package/dist/src/services/metered-settlement.js +28 -14
- package/dist/src/services/metered-settlement.js.map +1 -1
- package/dist/src/services/moderation-flags.d.ts +62 -0
- package/dist/src/services/moderation-flags.d.ts.map +1 -0
- package/dist/src/services/moderation-flags.js +196 -0
- package/dist/src/services/moderation-flags.js.map +1 -0
- package/dist/src/services/morsel.d.ts +26 -0
- package/dist/src/services/morsel.d.ts.map +1 -1
- package/dist/src/services/morsel.js +65 -1
- package/dist/src/services/morsel.js.map +1 -1
- package/dist/src/services/onboarding-funnel.d.ts +240 -0
- package/dist/src/services/onboarding-funnel.d.ts.map +1 -0
- package/dist/src/services/onboarding-funnel.js +538 -0
- package/dist/src/services/onboarding-funnel.js.map +1 -0
- package/dist/src/services/onboarding-progress.d.ts +85 -0
- package/dist/src/services/onboarding-progress.d.ts.map +1 -0
- package/dist/src/services/onboarding-progress.js +169 -0
- package/dist/src/services/onboarding-progress.js.map +1 -0
- package/dist/src/services/open-items-prompt.d.ts +33 -0
- package/dist/src/services/open-items-prompt.d.ts.map +1 -0
- package/dist/src/services/open-items-prompt.js +67 -0
- package/dist/src/services/open-items-prompt.js.map +1 -0
- package/dist/src/services/open-items.d.ts +169 -0
- package/dist/src/services/open-items.d.ts.map +1 -0
- package/dist/src/services/open-items.js +364 -0
- package/dist/src/services/open-items.js.map +1 -0
- package/dist/src/services/operators.d.ts +32 -0
- package/dist/src/services/operators.d.ts.map +1 -0
- package/dist/src/services/operators.js +21 -0
- package/dist/src/services/operators.js.map +1 -0
- package/dist/src/services/organism-export.d.ts.map +1 -1
- package/dist/src/services/organism-export.js +7 -1
- package/dist/src/services/organism-export.js.map +1 -1
- package/dist/src/services/organism-lifecycle.d.ts +85 -0
- package/dist/src/services/organism-lifecycle.d.ts.map +1 -0
- package/dist/src/services/organism-lifecycle.js +320 -0
- package/dist/src/services/organism-lifecycle.js.map +1 -0
- package/dist/src/services/organism-namespace-access.d.ts +59 -0
- package/dist/src/services/organism-namespace-access.d.ts.map +1 -0
- package/dist/src/services/organism-namespace-access.js +122 -0
- package/dist/src/services/organism-namespace-access.js.map +1 -0
- package/dist/src/services/outbound/outbound-service.d.ts +53 -0
- package/dist/src/services/outbound/outbound-service.d.ts.map +1 -0
- package/dist/src/services/outbound/outbound-service.js +258 -0
- package/dist/src/services/outbound/outbound-service.js.map +1 -0
- package/dist/src/services/owner-erasure.d.ts +38 -0
- package/dist/src/services/owner-erasure.d.ts.map +1 -0
- package/dist/src/services/owner-erasure.js +94 -0
- package/dist/src/services/owner-erasure.js.map +1 -0
- package/dist/src/services/owner-provisioning.d.ts.map +1 -1
- package/dist/src/services/owner-provisioning.js +14 -0
- package/dist/src/services/owner-provisioning.js.map +1 -1
- package/dist/src/services/platform-detector.d.ts +11 -0
- package/dist/src/services/platform-detector.d.ts.map +1 -1
- package/dist/src/services/platform-detector.js +44 -16
- package/dist/src/services/platform-detector.js.map +1 -1
- package/dist/src/services/prompt-defaults/portal.d.ts.map +1 -1
- package/dist/src/services/prompt-defaults/portal.js +57 -5
- package/dist/src/services/prompt-defaults/portal.js.map +1 -1
- package/dist/src/services/prompt-defaults.d.ts +7 -0
- package/dist/src/services/prompt-defaults.d.ts.map +1 -1
- package/dist/src/services/prompt-defaults.js.map +1 -1
- package/dist/src/services/prompt-seeder.d.ts.map +1 -1
- package/dist/src/services/prompt-seeder.js +8 -2
- package/dist/src/services/prompt-seeder.js.map +1 -1
- package/dist/src/services/push.d.ts +7 -1
- package/dist/src/services/push.d.ts.map +1 -1
- package/dist/src/services/push.js +32 -20
- package/dist/src/services/push.js.map +1 -1
- package/dist/src/services/quota-alarm.d.ts +39 -0
- package/dist/src/services/quota-alarm.d.ts.map +1 -0
- package/dist/src/services/quota-alarm.js +114 -0
- package/dist/src/services/quota-alarm.js.map +1 -0
- package/dist/src/services/quota.d.ts +2 -0
- package/dist/src/services/quota.d.ts.map +1 -1
- package/dist/src/services/quota.js +10 -1
- package/dist/src/services/quota.js.map +1 -1
- package/dist/src/services/schedule-gate.d.ts +31 -0
- package/dist/src/services/schedule-gate.d.ts.map +1 -0
- package/dist/src/services/schedule-gate.js +88 -0
- package/dist/src/services/schedule-gate.js.map +1 -0
- package/dist/src/services/schedule-write.d.ts +66 -0
- package/dist/src/services/schedule-write.d.ts.map +1 -0
- package/dist/src/services/schedule-write.js +396 -0
- package/dist/src/services/schedule-write.js.map +1 -0
- package/dist/src/services/scheduler-extension-job.d.ts +11 -0
- package/dist/src/services/scheduler-extension-job.d.ts.map +1 -1
- package/dist/src/services/scheduler-extension-job.js +23 -179
- package/dist/src/services/scheduler-extension-job.js.map +1 -1
- package/dist/src/services/scheduler-remote-jobs.d.ts +4 -0
- package/dist/src/services/scheduler-remote-jobs.d.ts.map +1 -1
- package/dist/src/services/scheduler-remote-jobs.js +9 -1
- package/dist/src/services/scheduler-remote-jobs.js.map +1 -1
- package/dist/src/services/scheduler.d.ts +9 -0
- package/dist/src/services/scheduler.d.ts.map +1 -1
- package/dist/src/services/scheduler.js +22 -0
- package/dist/src/services/scheduler.js.map +1 -1
- package/dist/src/services/scope-vocabulary-migration.d.ts +77 -0
- package/dist/src/services/scope-vocabulary-migration.d.ts.map +1 -0
- package/dist/src/services/scope-vocabulary-migration.js +87 -0
- package/dist/src/services/scope-vocabulary-migration.js.map +1 -0
- package/dist/src/services/sharing-group-members.d.ts +66 -0
- package/dist/src/services/sharing-group-members.d.ts.map +1 -0
- package/dist/src/services/sharing-group-members.js +185 -0
- package/dist/src/services/sharing-group-members.js.map +1 -0
- 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 +8 -1
- package/dist/src/services/site.js.map +1 -1
- package/dist/src/services/storage-file-write.d.ts +103 -0
- package/dist/src/services/storage-file-write.d.ts.map +1 -0
- package/dist/src/services/storage-file-write.js +113 -0
- package/dist/src/services/storage-file-write.js.map +1 -0
- package/dist/src/services/task-resume.d.ts +10 -0
- package/dist/src/services/task-resume.d.ts.map +1 -0
- package/dist/src/services/task-resume.js +43 -0
- package/dist/src/services/task-resume.js.map +1 -0
- package/dist/src/services/upload-token.d.ts +14 -2
- package/dist/src/services/upload-token.d.ts.map +1 -1
- package/dist/src/services/upload-token.js +59 -4
- package/dist/src/services/upload-token.js.map +1 -1
- package/dist/src/services/usage-metering.d.ts +16 -0
- package/dist/src/services/usage-metering.d.ts.map +1 -1
- package/dist/src/services/usage-metering.js +32 -0
- package/dist/src/services/usage-metering.js.map +1 -1
- package/dist/src/services/usage-summary.d.ts.map +1 -1
- package/dist/src/services/usage-summary.js +7 -1
- package/dist/src/services/usage-summary.js.map +1 -1
- package/dist/src/services/welcome-mat-parse.d.ts +72 -0
- package/dist/src/services/welcome-mat-parse.d.ts.map +1 -0
- package/dist/src/services/welcome-mat-parse.js +206 -0
- package/dist/src/services/welcome-mat-parse.js.map +1 -0
- package/dist/src/services/welcome-mat-prompt.d.ts +38 -0
- package/dist/src/services/welcome-mat-prompt.d.ts.map +1 -0
- package/dist/src/services/welcome-mat-prompt.js +122 -0
- package/dist/src/services/welcome-mat-prompt.js.map +1 -0
- package/dist/src/services/welcome-message.d.ts +52 -0
- package/dist/src/services/welcome-message.d.ts.map +1 -0
- package/dist/src/services/welcome-message.js +70 -0
- package/dist/src/services/welcome-message.js.map +1 -0
- package/dist/src/services/work-lifecycle.d.ts +86 -0
- package/dist/src/services/work-lifecycle.d.ts.map +1 -0
- package/dist/src/services/work-lifecycle.js +141 -0
- package/dist/src/services/work-lifecycle.js.map +1 -0
- package/dist/src/services/workflow/lifecycle.d.ts +23 -0
- package/dist/src/services/workflow/lifecycle.d.ts.map +1 -1
- package/dist/src/services/workflow/lifecycle.js +36 -0
- package/dist/src/services/workflow/lifecycle.js.map +1 -1
- package/dist/src/services/workflow/signal-eval.d.ts.map +1 -1
- package/dist/src/services/workflow/signal-eval.js +29 -2
- package/dist/src/services/workflow/signal-eval.js.map +1 -1
- package/dist/src/services/workspace-export.d.ts +9 -0
- package/dist/src/services/workspace-export.d.ts.map +1 -1
- package/dist/src/services/workspace-export.js +39 -0
- package/dist/src/services/workspace-export.js.map +1 -1
- package/dist/src/services/workspace-write-guards.d.ts +60 -0
- package/dist/src/services/workspace-write-guards.d.ts.map +1 -0
- package/dist/src/services/workspace-write-guards.js +42 -0
- package/dist/src/services/workspace-write-guards.js.map +1 -0
- package/dist/src/services/workspace-write.d.ts +94 -0
- package/dist/src/services/workspace-write.d.ts.map +1 -0
- package/dist/src/services/workspace-write.js +77 -0
- package/dist/src/services/workspace-write.js.map +1 -0
- package/dist/src/storage/adapter/legacy-memory-adapter.d.ts +4 -7
- package/dist/src/storage/adapter/legacy-memory-adapter.d.ts.map +1 -1
- package/dist/src/storage/adapter/legacy-memory-adapter.js +0 -7
- package/dist/src/storage/adapter/legacy-memory-adapter.js.map +1 -1
- package/dist/src/storage/adapter/memory-adapter.d.ts +7 -12
- package/dist/src/storage/adapter/memory-adapter.d.ts.map +1 -1
- package/dist/src/storage/interface.d.ts +32 -2
- package/dist/src/storage/interface.d.ts.map +1 -1
- package/dist/src/storage/memory-sharing.d.ts +37 -0
- package/dist/src/storage/memory-sharing.d.ts.map +1 -0
- package/dist/src/storage/memory-sharing.js +23 -0
- package/dist/src/storage/memory-sharing.js.map +1 -0
- package/dist/src/storage/pattern-utils.d.ts +6 -1
- package/dist/src/storage/pattern-utils.d.ts.map +1 -1
- package/dist/src/storage/pattern-utils.js +17 -1
- package/dist/src/storage/pattern-utils.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts +219 -15
- package/dist/src/storage/providers/postgres-kysely/db-types.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/index.d.ts +10 -17
- package/dist/src/storage/providers/postgres-kysely/index.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/index.js +34 -6
- package/dist/src/storage/providers/postgres-kysely/index.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.d.ts +7 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.js +59 -3
- package/dist/src/storage/providers/postgres-kysely/methods/agent-misc.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.d.ts +4 -0
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.js +11 -1
- package/dist/src/storage/providers/postgres-kysely/methods/agent-msg-dispute-invite.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/companies.d.ts +4 -0
- package/dist/src/storage/providers/postgres-kysely/methods/companies.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/companies.js +138 -0
- package/dist/src/storage/providers/postgres-kysely/methods/companies.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/connections.d.ts +23 -1
- package/dist/src/storage/providers/postgres-kysely/methods/connections.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/connections.js +148 -7
- package/dist/src/storage/providers/postgres-kysely/methods/connections.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.d.ts +5 -1
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.js +52 -0
- package/dist/src/storage/providers/postgres-kysely/methods/direct-message.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/finance.d.ts +4 -0
- package/dist/src/storage/providers/postgres-kysely/methods/finance.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/finance.js +402 -0
- package/dist/src/storage/providers/postgres-kysely/methods/finance.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.d.ts +10 -0
- package/dist/src/storage/providers/postgres-kysely/methods/identity.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js +34 -15
- package/dist/src/storage/providers/postgres-kysely/methods/identity.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/memory.d.ts +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/memory.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/memory.js +36 -2
- package/dist/src/storage/providers/postgres-kysely/methods/memory.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.d.ts +2 -1
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.js +18 -6
- package/dist/src/storage/providers/postgres-kysely/methods/node-infra.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/outbound.d.ts +4 -0
- package/dist/src/storage/providers/postgres-kysely/methods/outbound.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/outbound.js +158 -0
- package/dist/src/storage/providers/postgres-kysely/methods/outbound.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/owner-cascade.d.ts +51 -0
- package/dist/src/storage/providers/postgres-kysely/methods/owner-cascade.d.ts.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/owner-cascade.js +111 -0
- package/dist/src/storage/providers/postgres-kysely/methods/owner-cascade.js.map +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.d.ts +1 -0
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.d.ts.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js +10 -2
- package/dist/src/storage/providers/postgres-kysely/methods/wallet.js.map +1 -1
- package/dist/src/storage/providers/postgres-kysely/migrations/0024_principal_provider_clients.sql +42 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0025_publish_metrics.sql +33 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0026_finance.sql +130 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0027_outbound.sql +52 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0028_companies.sql +44 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0029_company_smtp.sql +30 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0030_invitation_node_level.sql +31 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0031_group_conversations.sql +35 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0032_push_subscription_per_device.sql +35 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0033_drop_feedback.sql +16 -0
- package/dist/src/storage/providers/postgres-kysely/migrations/0033_group_shares.sql +35 -0
- package/dist/src/storage/providers/sqlite/index.d.ts +26 -29
- package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/index.js +104 -2
- package/dist/src/storage/providers/sqlite/index.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.d.ts +7 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/capability-agents.js +19 -0
- package/dist/src/storage/providers/sqlite/methods/capability-agents.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.d.ts +4 -1
- package/dist/src/storage/providers/sqlite/methods/community.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/community.js +27 -21
- package/dist/src/storage/providers/sqlite/methods/community.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/companies.d.ts +13 -0
- package/dist/src/storage/providers/sqlite/methods/companies.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/companies.js +124 -0
- package/dist/src/storage/providers/sqlite/methods/companies.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/connections.d.ts +26 -1
- package/dist/src/storage/providers/sqlite/methods/connections.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/connections.js +120 -13
- package/dist/src/storage/providers/sqlite/methods/connections.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.d.ts +4 -0
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.js +18 -3
- package/dist/src/storage/providers/sqlite/methods/extensions-notify.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/finance.d.ts +18 -0
- package/dist/src/storage/providers/sqlite/methods/finance.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/finance.js +321 -0
- package/dist/src/storage/providers/sqlite/methods/finance.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/messaging.d.ts +5 -1
- package/dist/src/storage/providers/sqlite/methods/messaging.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/messaging.js +13 -0
- package/dist/src/storage/providers/sqlite/methods/messaging.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/outbound.d.ts +14 -0
- package/dist/src/storage/providers/sqlite/methods/outbound.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/outbound.js +150 -0
- package/dist/src/storage/providers/sqlite/methods/outbound.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-cascade.d.ts +23 -0
- package/dist/src/storage/providers/sqlite/methods/owner-cascade.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-cascade.js +71 -0
- package/dist/src/storage/providers/sqlite/methods/owner-cascade.js.map +1 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.d.ts +3 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.js +18 -0
- package/dist/src/storage/providers/sqlite/methods/owner-memory-bulk.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/owner.d.ts +5 -5
- package/dist/src/storage/providers/sqlite/methods/owner.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/owner.js +39 -76
- package/dist/src/storage/providers/sqlite/methods/owner.js.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/methods/work.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/methods/work.js +4 -0
- package/dist/src/storage/providers/sqlite/methods/work.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent.d.ts +5 -0
- package/dist/src/storage/providers/sqlite/repos/agent.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/agent.js +6 -1
- package/dist/src/storage/providers/sqlite/repos/agent.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts +14 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/direct-message.js +51 -0
- package/dist/src/storage/providers/sqlite/repos/direct-message.js.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/sharing-group.d.ts +10 -2
- package/dist/src/storage/providers/sqlite/repos/sharing-group.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/repos/sharing-group.js +47 -2
- package/dist/src/storage/providers/sqlite/repos/sharing-group.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.d.ts +4 -0
- package/dist/src/storage/providers/sqlite/schema-tables-1.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-1.js +8 -16
- package/dist/src/storage/providers/sqlite/schema-tables-1.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.d.ts +1 -0
- package/dist/src/storage/providers/sqlite/schema-tables-2.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-2.js +6 -4
- package/dist/src/storage/providers/sqlite/schema-tables-2.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-3.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-3.js +688 -624
- package/dist/src/storage/providers/sqlite/schema-tables-3.js.map +1 -1
- package/dist/src/storage/providers/sqlite/schema-tables-4.d.ts +12 -0
- package/dist/src/storage/providers/sqlite/schema-tables-4.d.ts.map +1 -0
- package/dist/src/storage/providers/sqlite/schema-tables-4.js +226 -0
- package/dist/src/storage/providers/sqlite/schema-tables-4.js.map +1 -0
- package/dist/src/storage/providers/sqlite/schema.d.ts +3 -0
- package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
- package/dist/src/storage/providers/sqlite/schema.js +152 -0
- package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
- package/dist/src/storage/read-scope/identity-map.d.ts +0 -0
- package/dist/src/storage/read-scope/identity-map.d.ts.map +1 -0
- package/dist/src/storage/read-scope/identity-map.js +0 -0
- package/dist/src/storage/read-scope/identity-map.js.map +1 -0
- package/dist/src/storage/read-scope/read-scope.d.ts +18 -0
- package/dist/src/storage/read-scope/read-scope.d.ts.map +1 -0
- package/dist/src/storage/read-scope/read-scope.js +63 -0
- package/dist/src/storage/read-scope/read-scope.js.map +1 -0
- package/dist/src/storage/repositories/company.repository.d.ts +30 -0
- package/dist/src/storage/repositories/company.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/company.repository.js +2 -0
- package/dist/src/storage/repositories/company.repository.js.map +1 -0
- package/dist/src/storage/repositories/connection.repository.d.ts +53 -2
- package/dist/src/storage/repositories/connection.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/direct-message.repository.d.ts +7 -1
- package/dist/src/storage/repositories/direct-message.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/finance.repository.d.ts +73 -0
- package/dist/src/storage/repositories/finance.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/finance.repository.js +22 -0
- package/dist/src/storage/repositories/finance.repository.js.map +1 -0
- package/dist/src/storage/repositories/index.d.ts +0 -1
- package/dist/src/storage/repositories/index.d.ts.map +1 -1
- package/dist/src/storage/repositories/invitation.repository.d.ts +38 -3
- package/dist/src/storage/repositories/invitation.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/invitation.repository.js +7 -1
- package/dist/src/storage/repositories/invitation.repository.js.map +1 -1
- package/dist/src/storage/repositories/memory.repository.d.ts +10 -0
- package/dist/src/storage/repositories/memory.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/node.repository.d.ts +13 -1
- package/dist/src/storage/repositories/node.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/outbound.repository.d.ts +30 -0
- package/dist/src/storage/repositories/outbound.repository.d.ts.map +1 -0
- package/dist/src/storage/repositories/outbound.repository.js +2 -0
- package/dist/src/storage/repositories/outbound.repository.js.map +1 -0
- package/dist/src/storage/repositories/sharing-group.repository.d.ts +15 -2
- package/dist/src/storage/repositories/sharing-group.repository.d.ts.map +1 -1
- package/dist/src/storage/repositories/sharing-group.repository.js +5 -1
- package/dist/src/storage/repositories/sharing-group.repository.js.map +1 -1
- package/dist/src/storage/repositories/wallet.repository.d.ts +5 -0
- package/dist/src/storage/repositories/wallet.repository.d.ts.map +1 -1
- package/dist/src/storage/types/agents-messaging.d.ts +59 -30
- package/dist/src/storage/types/agents-messaging.d.ts.map +1 -1
- package/dist/src/storage/types/agents-messaging.js +0 -3
- package/dist/src/storage/types/agents-messaging.js.map +1 -1
- package/dist/src/storage/types/apps.d.ts +16 -0
- package/dist/src/storage/types/apps.d.ts.map +1 -1
- package/dist/src/storage/types/organisms-federation.d.ts +8 -2
- package/dist/src/storage/types/organisms-federation.d.ts.map +1 -1
- package/dist/src/utils/app-chrome-reserve.d.ts +37 -0
- package/dist/src/utils/app-chrome-reserve.d.ts.map +1 -0
- package/dist/src/utils/app-chrome-reserve.js +47 -0
- package/dist/src/utils/app-chrome-reserve.js.map +1 -0
- package/dist/src/utils/env-config/sections-features.d.ts.map +1 -1
- package/dist/src/utils/env-config/sections-features.js +12 -0
- package/dist/src/utils/env-config/sections-features.js.map +1 -1
- package/dist/src/utils/env-config/sections-platform.js +1 -1
- package/dist/src/utils/env-config/sections-platform.js.map +1 -1
- package/dist/src/utils/env-validator.d.ts +4 -1
- package/dist/src/utils/env-validator.d.ts.map +1 -1
- package/dist/src/utils/env-validator.js +25 -1
- package/dist/src/utils/env-validator.js.map +1 -1
- package/dist/src/utils/file-download-headers.d.ts +71 -0
- package/dist/src/utils/file-download-headers.d.ts.map +1 -0
- package/dist/src/utils/file-download-headers.js +88 -0
- package/dist/src/utils/file-download-headers.js.map +1 -0
- package/dist/src/utils/gaii.d.ts.map +1 -1
- package/dist/src/utils/gaii.js +4 -1
- package/dist/src/utils/gaii.js.map +1 -1
- package/dist/src/utils/inline-script-parse.d.ts +47 -0
- package/dist/src/utils/inline-script-parse.d.ts.map +1 -0
- package/dist/src/utils/inline-script-parse.js +126 -0
- package/dist/src/utils/inline-script-parse.js.map +1 -0
- package/dist/src/utils/json-merge-patch.d.ts +48 -0
- package/dist/src/utils/json-merge-patch.d.ts.map +1 -0
- package/dist/src/utils/json-merge-patch.js +73 -0
- package/dist/src/utils/json-merge-patch.js.map +1 -0
- package/dist/src/utils/login-identifier.d.ts +34 -0
- package/dist/src/utils/login-identifier.d.ts.map +1 -0
- package/dist/src/utils/login-identifier.js +29 -0
- package/dist/src/utils/login-identifier.js.map +1 -0
- package/dist/src/utils/reserved-keys.d.ts +66 -12
- package/dist/src/utils/reserved-keys.d.ts.map +1 -1
- package/dist/src/utils/reserved-keys.js +76 -13
- package/dist/src/utils/reserved-keys.js.map +1 -1
- package/dist/src/utils/scope-coverage.d.ts +72 -0
- package/dist/src/utils/scope-coverage.d.ts.map +1 -0
- package/dist/src/utils/scope-coverage.js +115 -0
- package/dist/src/utils/scope-coverage.js.map +1 -0
- package/dist/static/app-catalog/js/favorites.js +1 -1
- package/dist/static/app-catalog/js/i18n-data.js +4 -4
- package/dist/static/app-catalog/js/promote.js +1 -1
- package/dist/static/app-catalog/js/render.js +19 -0
- package/dist/static/app-catalog/js/server-io.js +4 -0
- package/dist/static/app-catalog/js/settings.js +1 -1
- package/dist/static/app-catalog/js/util.js +53 -10
- package/dist/static/app-catalog/styles/app-catalog.css +23 -3
- package/dist/static/app-catalog.html +47 -13
- package/dist/static/sdk-libs/_core/sdk-globals.d.ts +6 -2
- package/dist/static/sdk-libs/agentface/index.js +35 -1
- package/dist/static/sdk-libs/auth/config.js +5 -0
- package/dist/static/sdk-libs/auth/modal.js +221 -111
- package/dist/static/sdk-libs/auth/pill.js +15 -10
- package/dist/static/sdk-libs/auth/pkce.js +32 -0
- package/dist/static/sdk-libs/auth/session.js +26 -33
- package/dist/static/sdk-libs/connect/index.js +205 -8
- package/dist/static/sdk-libs/connect/notes.js +8 -0
- package/dist/static/sdk-libs/dist/aimeat-agentface.js +30 -0
- package/dist/static/sdk-libs/dist/aimeat-ai.js +2 -0
- package/dist/static/sdk-libs/dist/aimeat-auth.js +188 -112
- package/dist/static/sdk-libs/dist/aimeat-connect.js +83 -6
- package/dist/static/sdk-libs/dist/aimeat-header.js +26 -4
- package/dist/static/sdk-libs/header/index.js +36 -9
- package/package.json +19 -3
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/services/attestation.ts
|
|
3
|
+
* @description Dual-signed attestations (TINKI phase 1): an append-only record two to four
|
|
4
|
+
* principals co-sign with their REGISTERED Ed25519 keys — the trade-deed primitive ("both
|
|
5
|
+
* agents signed this exact payload"), generic for any co-signed fact (a deed, a contract
|
|
6
|
+
* acceptance, a handover receipt). The payload is canonicalized (sorted keys) and hashed
|
|
7
|
+
* (sha256); each party signs `aimeat-attest:{id}:{payloadHash}` client-side with the same key
|
|
8
|
+
* their auth already uses; the node verifies against the key it has on record. When every party
|
|
9
|
+
* has signed, the record completes and nothing can be added or changed.
|
|
10
|
+
*
|
|
11
|
+
* Immutability without a schema change: records live under the reserved `sys:attest` namespace,
|
|
12
|
+
* which no principal-writable path can ever reach (resolveIdentity yields `owner@node`,
|
|
13
|
+
* `agent#owner@node` or `eco:app#owner@node`; extensions write `ext:{name}` — none collide with
|
|
14
|
+
* `sys:`). Only this service writes there, and it refuses everything after completion.
|
|
15
|
+
* @structure AttestationRecord · canonicalJson · createAttestation · signAttestation ·
|
|
16
|
+
* getAttestation · verifyAttestation
|
|
17
|
+
* @usage import { createAttestation, signAttestation } from '../services/attestation.js';
|
|
18
|
+
* @version-history
|
|
19
|
+
* v1.0.0 — 2026-08-06 — Initial dual-sign service (TINKI phase 1)
|
|
20
|
+
*/
|
|
21
|
+
import { createHash, randomUUID } from 'node:crypto';
|
|
22
|
+
import { verify } from '../auth/keypair.js';
|
|
23
|
+
import { parseGAII } from '../utils/gaii.js';
|
|
24
|
+
import { CommerceError } from '../commerce/errors.js';
|
|
25
|
+
/** Reserved server-only namespace — see the header for why no principal can write here. */
|
|
26
|
+
const ATTEST_NAMESPACE = 'sys:attest';
|
|
27
|
+
const attestKey = (id) => `attestation.${id}`;
|
|
28
|
+
/** Deterministic JSON: object keys sorted at every depth, arrays kept in order. */
|
|
29
|
+
export function canonicalJson(value) {
|
|
30
|
+
if (value === null || typeof value !== 'object')
|
|
31
|
+
return JSON.stringify(value);
|
|
32
|
+
if (Array.isArray(value))
|
|
33
|
+
return `[${value.map(canonicalJson).join(',')}]`;
|
|
34
|
+
const obj = value;
|
|
35
|
+
const keys = Object.keys(obj).sort();
|
|
36
|
+
return `{${keys.map((k) => `${JSON.stringify(k)}:${canonicalJson(obj[k])}`).join(',')}}`;
|
|
37
|
+
}
|
|
38
|
+
/** The exact string a party signs. */
|
|
39
|
+
export const attestMessage = (id, payloadHash) => `aimeat-attest:${id}:${payloadHash}`;
|
|
40
|
+
/** The registered verification key for a party identity, or null when the party is unknown. */
|
|
41
|
+
async function publicKeyFor(storage, identity) {
|
|
42
|
+
if (identity.includes('#')) {
|
|
43
|
+
const agent = await storage.getAgent(identity);
|
|
44
|
+
return agent?.publicKey ?? null;
|
|
45
|
+
}
|
|
46
|
+
const parsed = parseGAII(identity);
|
|
47
|
+
const owner = parsed?.owner ?? identity.split('@')[0];
|
|
48
|
+
if (!owner)
|
|
49
|
+
return null;
|
|
50
|
+
const rec = await storage.getOwner(owner);
|
|
51
|
+
return rec?.publicKey ?? null;
|
|
52
|
+
}
|
|
53
|
+
async function putAttestation(storage, att) {
|
|
54
|
+
const existing = await storage.getMemory(ATTEST_NAMESPACE, attestKey(att.id));
|
|
55
|
+
const now = new Date().toISOString();
|
|
56
|
+
await storage.setMemory({
|
|
57
|
+
key: attestKey(att.id), ownerGaii: ATTEST_NAMESPACE, value: att,
|
|
58
|
+
visibility: 'public', tags: ['attestation'], ttlHours: null,
|
|
59
|
+
version: (existing?.version ?? 0) + 1, createdAt: existing?.createdAt ?? now, updatedAt: now,
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
export async function createAttestation(storage, _config, args) {
|
|
63
|
+
const parties = [...new Set(args.parties)];
|
|
64
|
+
if (parties.length < 2 || parties.length > 4) {
|
|
65
|
+
throw new CommerceError('INVALID_PARTIES', 422, 'An attestation needs 2-4 distinct parties');
|
|
66
|
+
}
|
|
67
|
+
if (!parties.includes(args.creatorIdentity)) {
|
|
68
|
+
throw new CommerceError('CREATOR_NOT_PARTY', 403, 'The creator must be one of the parties');
|
|
69
|
+
}
|
|
70
|
+
const canonical = canonicalJson(args.payload ?? null);
|
|
71
|
+
if (canonical.length > 64 * 1024) {
|
|
72
|
+
throw new CommerceError('PAYLOAD_TOO_LARGE', 422, 'Attestation payload over 64 KB — store the bulk elsewhere and attest its hash');
|
|
73
|
+
}
|
|
74
|
+
for (const party of parties) {
|
|
75
|
+
if (!(await publicKeyFor(storage, party))) {
|
|
76
|
+
throw new CommerceError('PARTY_NOT_FOUND', 404, `No registered signing key for party: ${party}`);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
const att = {
|
|
80
|
+
id: `att-${randomUUID()}`,
|
|
81
|
+
state: 'open',
|
|
82
|
+
payload: args.payload ?? null,
|
|
83
|
+
payloadHash: createHash('sha256').update(canonical).digest('hex'),
|
|
84
|
+
parties,
|
|
85
|
+
signatures: {},
|
|
86
|
+
reference: args.reference,
|
|
87
|
+
createdBy: args.creatorIdentity,
|
|
88
|
+
createdAt: new Date().toISOString(),
|
|
89
|
+
};
|
|
90
|
+
await putAttestation(storage, att);
|
|
91
|
+
return att;
|
|
92
|
+
}
|
|
93
|
+
export async function getAttestation(storage, id) {
|
|
94
|
+
const rec = await storage.getMemory(ATTEST_NAMESPACE, attestKey(id));
|
|
95
|
+
if (!rec)
|
|
96
|
+
throw new CommerceError('ATTESTATION_NOT_FOUND', 404, `No attestation ${id}`);
|
|
97
|
+
return rec.value;
|
|
98
|
+
}
|
|
99
|
+
export async function signAttestation(storage, _config, args) {
|
|
100
|
+
const att = await getAttestation(storage, args.id);
|
|
101
|
+
if (att.state === 'complete') {
|
|
102
|
+
throw new CommerceError('ATTESTATION_COMPLETE', 409, 'This attestation is complete — nothing can be added');
|
|
103
|
+
}
|
|
104
|
+
if (!att.parties.includes(args.signerIdentity)) {
|
|
105
|
+
throw new CommerceError('NOT_A_PARTY', 403, 'Only a listed party may sign');
|
|
106
|
+
}
|
|
107
|
+
if (att.signatures[args.signerIdentity]) {
|
|
108
|
+
throw new CommerceError('ALREADY_SIGNED', 409, 'This party has already signed');
|
|
109
|
+
}
|
|
110
|
+
const publicKey = await publicKeyFor(storage, args.signerIdentity);
|
|
111
|
+
if (!publicKey) {
|
|
112
|
+
throw new CommerceError('PARTY_NOT_FOUND', 404, `No registered signing key for ${args.signerIdentity}`);
|
|
113
|
+
}
|
|
114
|
+
const ok = await verify(publicKey, attestMessage(att.id, att.payloadHash), args.signature);
|
|
115
|
+
if (!ok) {
|
|
116
|
+
throw new CommerceError('BAD_SIGNATURE', 422, `Signature does not verify — sign the exact string "${attestMessage(att.id, att.payloadHash)}" with your registered Ed25519 key`);
|
|
117
|
+
}
|
|
118
|
+
att.signatures[args.signerIdentity] = { signature: args.signature, signedAt: new Date().toISOString() };
|
|
119
|
+
if (att.parties.every((p) => att.signatures[p])) {
|
|
120
|
+
att.state = 'complete';
|
|
121
|
+
att.completedAt = new Date().toISOString();
|
|
122
|
+
}
|
|
123
|
+
await putAttestation(storage, att);
|
|
124
|
+
return att;
|
|
125
|
+
}
|
|
126
|
+
/** Recompute the hash and re-verify every signature — the public "is this deed real" answer. */
|
|
127
|
+
export async function verifyAttestation(storage, att) {
|
|
128
|
+
const canonical = canonicalJson(att.payload ?? null);
|
|
129
|
+
const hash = createHash('sha256').update(canonical).digest('hex');
|
|
130
|
+
if (hash !== att.payloadHash)
|
|
131
|
+
return false;
|
|
132
|
+
for (const party of att.parties) {
|
|
133
|
+
const sig = att.signatures[party];
|
|
134
|
+
if (!sig)
|
|
135
|
+
return att.state === 'open' ? true : false;
|
|
136
|
+
const publicKey = await publicKeyFor(storage, party);
|
|
137
|
+
if (!publicKey || !(await verify(publicKey, attestMessage(att.id, att.payloadHash), sig.signature)))
|
|
138
|
+
return false;
|
|
139
|
+
}
|
|
140
|
+
return true;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=attestation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../../src/services/attestation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { AimeatConfig } from '../config.js';
|
|
2
|
+
import type { Storage, BoardPostRecord } from '../storage/interface.js';
|
|
3
|
+
import { provenanceForWrite } from './ai-provenance.js';
|
|
4
|
+
/** The bounds BoardPostSchema applies on the HTTP door, named here so both doors share them. */
|
|
5
|
+
export declare const BOARD_POST_LIMITS: {
|
|
6
|
+
readonly titleMax: 256;
|
|
7
|
+
readonly bodyMax: 200000;
|
|
8
|
+
readonly categoryMax: 64;
|
|
9
|
+
readonly tagsMax: 20;
|
|
10
|
+
readonly tagMax: 64;
|
|
11
|
+
};
|
|
12
|
+
export interface BoardPostCaller {
|
|
13
|
+
/** The resolved identity that authors the post. */
|
|
14
|
+
gaii: string;
|
|
15
|
+
roles: string[];
|
|
16
|
+
}
|
|
17
|
+
export interface BoardPostInput {
|
|
18
|
+
boardId: string;
|
|
19
|
+
title: string;
|
|
20
|
+
body: string;
|
|
21
|
+
category?: string;
|
|
22
|
+
tags?: string[];
|
|
23
|
+
ttlHours?: number;
|
|
24
|
+
declaredProvenanceId?: string;
|
|
25
|
+
declaredProvenance?: Parameters<typeof provenanceForWrite>[1]['declared'];
|
|
26
|
+
/** Which road this came down, for the provenance record. */
|
|
27
|
+
pipeline: string;
|
|
28
|
+
}
|
|
29
|
+
export type BoardPostResult = {
|
|
30
|
+
ok: true;
|
|
31
|
+
post: BoardPostRecord;
|
|
32
|
+
charged: number;
|
|
33
|
+
} | {
|
|
34
|
+
ok: false;
|
|
35
|
+
status: number;
|
|
36
|
+
code: string;
|
|
37
|
+
message: string;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Write one board post. The order is the route's order, and every step in it is a step the MCP tool
|
|
41
|
+
* did not have.
|
|
42
|
+
*/
|
|
43
|
+
export declare function createBoardPost(deps: {
|
|
44
|
+
storage: Storage;
|
|
45
|
+
config: AimeatConfig;
|
|
46
|
+
}, caller: BoardPostCaller, input: BoardPostInput): Promise<BoardPostResult>;
|
|
47
|
+
export type BoardReplyResult = {
|
|
48
|
+
ok: true;
|
|
49
|
+
reply: BoardPostRecord;
|
|
50
|
+
} | {
|
|
51
|
+
ok: false;
|
|
52
|
+
status: number;
|
|
53
|
+
code: string;
|
|
54
|
+
message: string;
|
|
55
|
+
};
|
|
56
|
+
/**
|
|
57
|
+
* Reply to a post on a board.
|
|
58
|
+
*
|
|
59
|
+
* Two things were wrong with this being written out twice. Neither copy applied the board's ACCESS
|
|
60
|
+
* rule — both checked only that the parent post exists — so a reply could land on a board the
|
|
61
|
+
* replier may not post to, which the post path has always refused. And the MCP copy stamped the
|
|
62
|
+
* provenance with `visibility: 'public'` unconditionally, so a reply on a PRIVATE board carried a
|
|
63
|
+
* public-surface label; the HTTP copy read the board and got it right.
|
|
64
|
+
*
|
|
65
|
+
* The hash covers the BODY alone. The "Re: …" title is generated here, and hashing our own prefix
|
|
66
|
+
* would describe bytes the author never wrote.
|
|
67
|
+
*/
|
|
68
|
+
export declare function createBoardReply(deps: {
|
|
69
|
+
storage: Storage;
|
|
70
|
+
config: AimeatConfig;
|
|
71
|
+
}, caller: BoardPostCaller, input: {
|
|
72
|
+
boardId: string;
|
|
73
|
+
postId: string;
|
|
74
|
+
body: string;
|
|
75
|
+
declaredProvenanceId?: string;
|
|
76
|
+
declaredProvenance?: Parameters<typeof provenanceForWrite>[1]['declared'];
|
|
77
|
+
pipeline: string;
|
|
78
|
+
}): Promise<BoardReplyResult>;
|
|
79
|
+
//# sourceMappingURL=board-post.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-post.d.ts","sourceRoot":"","sources":["../../../src/services/board-post.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAe,MAAM,yBAAyB,CAAC;AAErF,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAKxD,gGAAgG;AAChG,eAAO,MAAM,iBAAiB;;;;;;CAMpB,CAAC;AAEX,MAAM,WAAW,eAAe;IAC5B,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1E,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,eAAe,GACrB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACpD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AA0BnE;;;GAGG;AACH,wBAAsB,eAAe,CACjC,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,EAChD,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC,CAiG1B;AAED,MAAM,MAAM,gBAAgB,GACtB;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,eAAe,CAAA;CAAE,GACpC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnE;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAClC,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,EAChD,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE;IACH,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC1E,QAAQ,EAAE,MAAM,CAAC;CACpB,GACF,OAAO,CAAC,gBAAgB,CAAC,CAiD3B"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/services/board-post.ts
|
|
3
|
+
* @description Posting to a board, once, for every surface that can post.
|
|
4
|
+
*
|
|
5
|
+
* WHY THIS FILE EXISTS. `POST /v1/boards/:boardId/posts` loads the board and rules on the post
|
|
6
|
+
* before writing it. `aimeat_board_post` never loaded the board at all, so it had none of it:
|
|
7
|
+
*
|
|
8
|
+
* - ACCESS. A private board takes posts from its owner only; a shared board from its owner, the
|
|
9
|
+
* same owner's other principals, and whoever is on `allowedGaiis`; a system board from an
|
|
10
|
+
* operator. Over MCP any agent holding `social:write` posted into any of them, including
|
|
11
|
+
* another owner's private board.
|
|
12
|
+
* - THE COST. A public board charges morsels per post, scaled by length, and refuses with 402
|
|
13
|
+
* when the balance does not cover it. Over MCP it was free, so the anti-flood price on the one
|
|
14
|
+
* surface everybody reads applied only to the door nobody uses.
|
|
15
|
+
* - THE EXTENSION HOOK. `pre_board_post` lets an installed extension refuse a post. It never ran
|
|
16
|
+
* over MCP, so a moderation extension was advisory on the agent surface.
|
|
17
|
+
* - THE SHAPE. Title 1-256, body 1-200 000, category up to 64, at most 20 tags of 64. The tool
|
|
18
|
+
* took `z.string()` for both, so an empty post and an arbitrarily large one both stored.
|
|
19
|
+
*
|
|
20
|
+
* One capability, one implementation, whatever the interface — CLAUDE.md, Backend.
|
|
21
|
+
* @structure
|
|
22
|
+
* - BOARD_POST_LIMITS — the shape bounds, shared with the REST validator
|
|
23
|
+
* - createBoardPost() — access, hook, price, provenance, record; a refusal or the post
|
|
24
|
+
* - createBoardReply() — the same access rule, which neither door applied to a reply
|
|
25
|
+
* @usage
|
|
26
|
+
* const out = await createBoardPost({ storage, config }, caller, input);
|
|
27
|
+
* if (!out.ok) return renderRefusal(out); // each door renders its own way
|
|
28
|
+
* @version-history
|
|
29
|
+
* v1.0.0 — 2026-08-11 — Initial (August 2026 audit step 3, option B: shared service, gate inside).
|
|
30
|
+
*/
|
|
31
|
+
import { randomBytes, randomUUID } from 'node:crypto';
|
|
32
|
+
import { executeHooks } from './hooks.js';
|
|
33
|
+
import { provenanceForWrite } from './ai-provenance.js';
|
|
34
|
+
import { isSameOwner } from '../utils/gaii.js';
|
|
35
|
+
import { emitChange } from './event-bus.js';
|
|
36
|
+
import { notifyBoardSubscribers } from './board-subscribers.js';
|
|
37
|
+
/** The bounds BoardPostSchema applies on the HTTP door, named here so both doors share them. */
|
|
38
|
+
export const BOARD_POST_LIMITS = {
|
|
39
|
+
titleMax: 256,
|
|
40
|
+
bodyMax: 200_000,
|
|
41
|
+
categoryMax: 64,
|
|
42
|
+
tagsMax: 20,
|
|
43
|
+
tagMax: 64,
|
|
44
|
+
};
|
|
45
|
+
/** Default lifetime of a post when the caller names none: seven days, as the route has always used. */
|
|
46
|
+
const DEFAULT_TTL_HOURS = 168;
|
|
47
|
+
/** May this caller put text on this board? A post and a reply ask the same question. */
|
|
48
|
+
function boardPostAccessRefusal(board, caller) {
|
|
49
|
+
if (board.visibility === 'system' && !caller.roles.includes('operator')) {
|
|
50
|
+
return { ok: false, status: 403, code: 'ACCESS_DENIED', message: 'Only operators can post to system boards' };
|
|
51
|
+
}
|
|
52
|
+
if (board.visibility === 'private' && board.ownerGaii !== caller.gaii) {
|
|
53
|
+
return { ok: false, status: 403, code: 'ACCESS_DENIED', message: 'Cannot post to this private board' };
|
|
54
|
+
}
|
|
55
|
+
if (board.visibility === 'shared'
|
|
56
|
+
&& board.ownerGaii !== caller.gaii
|
|
57
|
+
&& !isSameOwner(board.ownerGaii, caller.gaii)
|
|
58
|
+
&& !board.allowedGaiis.includes(caller.gaii)) {
|
|
59
|
+
return { ok: false, status: 403, code: 'ACCESS_DENIED', message: 'You are not invited to this board' };
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Write one board post. The order is the route's order, and every step in it is a step the MCP tool
|
|
65
|
+
* did not have.
|
|
66
|
+
*/
|
|
67
|
+
export async function createBoardPost(deps, caller, input) {
|
|
68
|
+
const { storage, config } = deps;
|
|
69
|
+
const board = await storage.getBoard(input.boardId);
|
|
70
|
+
if (!board) {
|
|
71
|
+
return { ok: false, status: 404, code: 'NOT_FOUND', message: `Board not found: ${input.boardId}` };
|
|
72
|
+
}
|
|
73
|
+
// Shape, before anything is charged or written.
|
|
74
|
+
const title = String(input.title ?? '').trim();
|
|
75
|
+
const body = String(input.body ?? '');
|
|
76
|
+
if (!title || title.length > BOARD_POST_LIMITS.titleMax) {
|
|
77
|
+
return { ok: false, status: 400, code: 'VALIDATION_ERROR', message: `title must be 1-${BOARD_POST_LIMITS.titleMax} characters` };
|
|
78
|
+
}
|
|
79
|
+
if (!body || body.length > BOARD_POST_LIMITS.bodyMax) {
|
|
80
|
+
return { ok: false, status: 400, code: 'VALIDATION_ERROR', message: `body must be 1-${BOARD_POST_LIMITS.bodyMax} characters` };
|
|
81
|
+
}
|
|
82
|
+
if (input.category && input.category.length > BOARD_POST_LIMITS.categoryMax) {
|
|
83
|
+
return { ok: false, status: 400, code: 'VALIDATION_ERROR', message: `category must be at most ${BOARD_POST_LIMITS.categoryMax} characters` };
|
|
84
|
+
}
|
|
85
|
+
const tags = Array.isArray(input.tags) ? input.tags : [];
|
|
86
|
+
if (tags.length > BOARD_POST_LIMITS.tagsMax || tags.some(t => String(t).length > BOARD_POST_LIMITS.tagMax)) {
|
|
87
|
+
return { ok: false, status: 400, code: 'VALIDATION_ERROR', message: `at most ${BOARD_POST_LIMITS.tagsMax} tags of ${BOARD_POST_LIMITS.tagMax} characters` };
|
|
88
|
+
}
|
|
89
|
+
// An installed extension may refuse the post. Advisory on one surface is not a moderation rule.
|
|
90
|
+
const hook = await executeHooks(config, storage, 'pre_board_post', { board_id: input.boardId, author_gaii: caller.gaii });
|
|
91
|
+
if (!hook.allowed) {
|
|
92
|
+
return { ok: false, status: 403, code: 'HOOK_REJECTED', message: hook.reason ?? 'Post denied by extension hook' };
|
|
93
|
+
}
|
|
94
|
+
// Who may post here — the same question a REPLY asks, which is why it is its own function.
|
|
95
|
+
const denied = boardPostAccessRefusal(board, caller);
|
|
96
|
+
if (denied)
|
|
97
|
+
return denied;
|
|
98
|
+
// A public board costs, scaled by length. This is the anti-flood price on the one surface
|
|
99
|
+
// everybody reads, and it applied only to the HTTP door.
|
|
100
|
+
let charged = 0;
|
|
101
|
+
if (board.visibility === 'public') {
|
|
102
|
+
charged = config.boardPostBaseCost + Math.ceil((body.length / 1000) * config.boardPostCostPerKb);
|
|
103
|
+
const debited = await storage.debitBalance(caller.gaii, charged);
|
|
104
|
+
if (!debited) {
|
|
105
|
+
return { ok: false, status: 402, code: 'INSUFFICIENT_MORSELS', message: `Posting costs ${charged} morsels` };
|
|
106
|
+
}
|
|
107
|
+
await storage.addTransaction({
|
|
108
|
+
id: `tx-${randomUUID()}`,
|
|
109
|
+
gaii: caller.gaii,
|
|
110
|
+
type: 'spent',
|
|
111
|
+
amount: -charged,
|
|
112
|
+
timestamp: new Date().toISOString(),
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
// The hash covers title + body together, which is the unit a reader sees.
|
|
116
|
+
const aiProvenanceId = await provenanceForWrite(storage, {
|
|
117
|
+
principal: caller.gaii,
|
|
118
|
+
content: `${title}\n\n${body}`,
|
|
119
|
+
declaredId: input.declaredProvenanceId,
|
|
120
|
+
declared: input.declaredProvenance,
|
|
121
|
+
pipeline: input.pipeline,
|
|
122
|
+
surface: { visibility: board.visibility === 'public' ? 'public' : 'private', humanAudience: true },
|
|
123
|
+
labelPolicy: config.aiLabelPublic,
|
|
124
|
+
nodeId: config.nodeId,
|
|
125
|
+
baseUrl: config.baseUrl,
|
|
126
|
+
enabled: config.aiProvenance,
|
|
127
|
+
});
|
|
128
|
+
const hours = input.ttlHours ?? DEFAULT_TTL_HOURS;
|
|
129
|
+
const post = await storage.createPost({
|
|
130
|
+
id: `post-${randomBytes(8).toString('hex')}`,
|
|
131
|
+
boardId: input.boardId,
|
|
132
|
+
authorGaii: caller.gaii,
|
|
133
|
+
title,
|
|
134
|
+
body,
|
|
135
|
+
category: input.category,
|
|
136
|
+
tags,
|
|
137
|
+
ttlExpiresAt: new Date(Date.now() + hours * 3600_000).toISOString(),
|
|
138
|
+
reactions: {},
|
|
139
|
+
createdAt: new Date().toISOString(),
|
|
140
|
+
...(aiProvenanceId ? { aiProvenanceId } : {}),
|
|
141
|
+
});
|
|
142
|
+
// The two things that happen BESIDES the write, and both lived in the HTTP route so the tool
|
|
143
|
+
// surface had neither. A board open in a browser listens on the 'boards' domain, so without the
|
|
144
|
+
// event an agent's post did not appear until somebody reloaded; and a subscriber is an agent
|
|
145
|
+
// that asked to be told precisely so it need not poll, so a post made through a tool call was
|
|
146
|
+
// invisible to every one of them. Both belong to POSTING, not to the door it came through.
|
|
147
|
+
emitChange('boards');
|
|
148
|
+
notifyBoardSubscribers(storage, input.boardId, {
|
|
149
|
+
id: post.id,
|
|
150
|
+
authorGaii: caller.gaii,
|
|
151
|
+
title: post.title,
|
|
152
|
+
category: post.category,
|
|
153
|
+
tags: post.tags ?? [],
|
|
154
|
+
});
|
|
155
|
+
return { ok: true, post, charged };
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Reply to a post on a board.
|
|
159
|
+
*
|
|
160
|
+
* Two things were wrong with this being written out twice. Neither copy applied the board's ACCESS
|
|
161
|
+
* rule — both checked only that the parent post exists — so a reply could land on a board the
|
|
162
|
+
* replier may not post to, which the post path has always refused. And the MCP copy stamped the
|
|
163
|
+
* provenance with `visibility: 'public'` unconditionally, so a reply on a PRIVATE board carried a
|
|
164
|
+
* public-surface label; the HTTP copy read the board and got it right.
|
|
165
|
+
*
|
|
166
|
+
* The hash covers the BODY alone. The "Re: …" title is generated here, and hashing our own prefix
|
|
167
|
+
* would describe bytes the author never wrote.
|
|
168
|
+
*/
|
|
169
|
+
export async function createBoardReply(deps, caller, input) {
|
|
170
|
+
const { storage, config } = deps;
|
|
171
|
+
const parent = await storage.getPost(input.boardId, input.postId);
|
|
172
|
+
if (!parent)
|
|
173
|
+
return { ok: false, status: 404, code: 'NOT_FOUND', message: 'Post not found' };
|
|
174
|
+
const board = await storage.getBoard(input.boardId);
|
|
175
|
+
if (!board)
|
|
176
|
+
return { ok: false, status: 404, code: 'NOT_FOUND', message: `Board not found: ${input.boardId}` };
|
|
177
|
+
// A reply is a post. Who may post here is the same question, and neither door was asking it.
|
|
178
|
+
const denied = boardPostAccessRefusal(board, caller);
|
|
179
|
+
if (denied)
|
|
180
|
+
return denied;
|
|
181
|
+
const body = String(input.body ?? '');
|
|
182
|
+
if (!body || body.length > BOARD_POST_LIMITS.bodyMax) {
|
|
183
|
+
return { ok: false, status: 400, code: 'VALIDATION_ERROR', message: `body must be 1-${BOARD_POST_LIMITS.bodyMax} characters` };
|
|
184
|
+
}
|
|
185
|
+
const aiProvenanceId = await provenanceForWrite(storage, {
|
|
186
|
+
principal: caller.gaii,
|
|
187
|
+
content: body,
|
|
188
|
+
declaredId: input.declaredProvenanceId,
|
|
189
|
+
declared: input.declaredProvenance,
|
|
190
|
+
pipeline: input.pipeline,
|
|
191
|
+
surface: { visibility: board.visibility === 'public' ? 'public' : 'private', humanAudience: true },
|
|
192
|
+
labelPolicy: config.aiLabelPublic,
|
|
193
|
+
nodeId: config.nodeId,
|
|
194
|
+
baseUrl: config.baseUrl,
|
|
195
|
+
enabled: config.aiProvenance,
|
|
196
|
+
});
|
|
197
|
+
const reply = await storage.createPost({
|
|
198
|
+
id: `reply-${randomBytes(8).toString('hex')}`,
|
|
199
|
+
boardId: input.boardId,
|
|
200
|
+
authorGaii: caller.gaii,
|
|
201
|
+
title: `Re: ${parent.title}`,
|
|
202
|
+
body,
|
|
203
|
+
tags: [],
|
|
204
|
+
reactions: {},
|
|
205
|
+
replyTo: input.postId,
|
|
206
|
+
createdAt: new Date().toISOString(),
|
|
207
|
+
...(aiProvenanceId ? { aiProvenanceId } : {}),
|
|
208
|
+
});
|
|
209
|
+
emitChange('boards');
|
|
210
|
+
notifyBoardSubscribers(storage, input.boardId, {
|
|
211
|
+
id: reply.id, authorGaii: caller.gaii, title: reply.title, tags: [],
|
|
212
|
+
});
|
|
213
|
+
return { ok: true, reply };
|
|
214
|
+
}
|
|
215
|
+
//# sourceMappingURL=board-post.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-post.js","sourceRoot":"","sources":["../../../src/services/board-post.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/services/board-read-access.ts
|
|
3
|
+
* @description Who may READ a board's posts, once, for every surface that serves them.
|
|
4
|
+
*
|
|
5
|
+
* The sweep that produced this file asked what a WRITE owes. This is the other half: what a READ
|
|
6
|
+
* owes, which nobody had asked, and it turned out to hide a cross-owner read.
|
|
7
|
+
*
|
|
8
|
+
* `aimeat_board_read` called storage.listPosts(board_id) and nothing else — it never loaded the
|
|
9
|
+
* board, so it never had a visibility to rule on. Any MCP session could read another owner's
|
|
10
|
+
* PRIVATE board, and no consent-denial row existed to show that it happened. The tool's own scope
|
|
11
|
+
* entry justified leaving it ungated with "the REST GET route is public", which is true of public
|
|
12
|
+
* and system boards and of no others.
|
|
13
|
+
*
|
|
14
|
+
* Two doors to the same board also disagreed with each other: the MCP RESOURCE template
|
|
15
|
+
* (aimeat://boards/{id}) filtered on visibility, and the TOOL beside it did not.
|
|
16
|
+
*
|
|
17
|
+
* The rule here is the HTTP route's rule, in the same order: public and system are open; the owner
|
|
18
|
+
* always; a shared board also to that owner's other principals and to anyone on allowedGaiis; and
|
|
19
|
+
* failing all of those, the consent layer, whose refusal is audited because a denied read is
|
|
20
|
+
* exactly the event a person asks about afterwards.
|
|
21
|
+
* @structure
|
|
22
|
+
* - boardReadRefusal() — a refusal, or null when the read is allowed
|
|
23
|
+
* @usage
|
|
24
|
+
* const refusal = await boardReadRefusal({ storage, config }, gaii, board);
|
|
25
|
+
* if (refusal) return fail(refusal.message);
|
|
26
|
+
* @version-history
|
|
27
|
+
* v1.0.0 — 2026-08-11 — Extracted from routes/boards.ts (August 2026 audit, the side-effect sweep's
|
|
28
|
+
* read-path half) after aimeat_board_read was found reading private boards.
|
|
29
|
+
*/
|
|
30
|
+
import type { AimeatConfig } from '../config.js';
|
|
31
|
+
import type { Storage, BoardRecord } from '../storage/interface.js';
|
|
32
|
+
export interface BoardReadRefusal {
|
|
33
|
+
status: number;
|
|
34
|
+
code: 'AUTH_REQUIRED' | 'CONSENT_REQUIRED' | 'ACCESS_DENIED';
|
|
35
|
+
message: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* May `gaii` read this board's posts? Returns null when the read is allowed.
|
|
39
|
+
*
|
|
40
|
+
* `gaii` is undefined for an unauthenticated caller, which only a public or system board serves.
|
|
41
|
+
*/
|
|
42
|
+
export declare function boardReadRefusal(deps: {
|
|
43
|
+
storage: Storage;
|
|
44
|
+
config: AimeatConfig;
|
|
45
|
+
}, gaii: string | undefined, board: Pick<BoardRecord, 'id' | 'visibility' | 'ownerGaii' | 'allowedGaiis'>): Promise<BoardReadRefusal | null>;
|
|
46
|
+
//# sourceMappingURL=board-read-access.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-read-access.d.ts","sourceRoot":"","sources":["../../../src/services/board-read-access.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAIpE,MAAM,WAAW,gBAAgB;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,eAAe,GAAG,kBAAkB,GAAG,eAAe,CAAC;IAC7D,OAAO,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAClC,IAAI,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,EAChD,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,YAAY,GAAG,WAAW,GAAG,cAAc,CAAC,GAC7E,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CA2BlC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { isSameOwner } from '../utils/gaii.js';
|
|
2
|
+
import { checkConsentForRead, auditDataAccess } from './consent.js';
|
|
3
|
+
/**
|
|
4
|
+
* May `gaii` read this board's posts? Returns null when the read is allowed.
|
|
5
|
+
*
|
|
6
|
+
* `gaii` is undefined for an unauthenticated caller, which only a public or system board serves.
|
|
7
|
+
*/
|
|
8
|
+
export async function boardReadRefusal(deps, gaii, board) {
|
|
9
|
+
const { storage, config } = deps;
|
|
10
|
+
if (board.visibility === 'public' || board.visibility === 'system')
|
|
11
|
+
return null;
|
|
12
|
+
if (!gaii) {
|
|
13
|
+
return { status: 401, code: 'AUTH_REQUIRED', message: 'Authentication required for non-public boards' };
|
|
14
|
+
}
|
|
15
|
+
// isSameOwner only grants access on shared boards — a private board is strictly owner-only.
|
|
16
|
+
const sameOwnerAccess = board.visibility === 'shared' && isSameOwner(board.ownerGaii, gaii);
|
|
17
|
+
if (board.ownerGaii === gaii || sameOwnerAccess || board.allowedGaiis.includes(gaii))
|
|
18
|
+
return null;
|
|
19
|
+
if (!config.consentEnabled) {
|
|
20
|
+
return { status: 403, code: 'ACCESS_DENIED', message: 'You do not have access to this board' };
|
|
21
|
+
}
|
|
22
|
+
const consentResult = await checkConsentForRead(storage, `board:${board.id}`, board.ownerGaii, gaii, board.visibility);
|
|
23
|
+
if (consentResult.allowed)
|
|
24
|
+
return null;
|
|
25
|
+
// Denials only — an allowed read is not logged (see consent-audit-buffer). A denial is the event
|
|
26
|
+
// somebody asks about later, so it is the one that has to exist.
|
|
27
|
+
await auditDataAccess(storage, consentResult.consentId ?? null, board.ownerGaii, gaii, `board:${board.id}`, 'read', false);
|
|
28
|
+
return { status: 403, code: 'CONSENT_REQUIRED', message: 'You do not have consent to access this board' };
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=board-read-access.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-read-access.js","sourceRoot":"","sources":["../../../src/services/board-read-access.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAQpE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAClC,IAAgD,EAChD,IAAwB,EACxB,KAA4E;IAE5E,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEjC,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAEhF,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,+CAA+C,EAAE,CAAC;IAC5G,CAAC;IAED,4FAA4F;IAC5F,MAAM,eAAe,GAAG,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5F,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,eAAe,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAElG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;IACnG,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAC3C,OAAO,EAAE,SAAS,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,UAAU,CACxE,CAAC;IACF,IAAI,aAAa,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAEvC,iGAAiG;IACjG,iEAAiE;IACjE,MAAM,eAAe,CAAC,OAAO,EAAE,aAAa,CAAC,SAAS,IAAI,IAAI,EAC1D,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IAC/D,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,8CAA8C,EAAE,CAAC;AAC9G,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file src/services/board-subscribers.ts
|
|
3
|
+
* @description Telling a board's subscribers that a post landed.
|
|
4
|
+
*
|
|
5
|
+
* It moved out of routes/boards.ts because the MCP door could not reach it there: the function was
|
|
6
|
+
* a closure inside workBoardRouter, so `aimeat_board_post` wrote the post and nobody heard about
|
|
7
|
+
* it. A subscriber is an agent that asked to be told — the whole point is that it does not poll —
|
|
8
|
+
* so a post made through a tool call was invisible to every one of them until they looked.
|
|
9
|
+
*
|
|
10
|
+
* Fire-and-forget by design: a subscriber whose callback is down must not fail the post. The
|
|
11
|
+
* outbound call goes through safeFetch, which validates the URL and re-validates redirects, because
|
|
12
|
+
* the callback URL is supplied by the subscriber and a redirect bounce is otherwise an SSRF.
|
|
13
|
+
* @structure
|
|
14
|
+
* - notifyBoardSubscribers() — one call per post, returns immediately
|
|
15
|
+
* @usage notifyBoardSubscribers(storage, boardId, { id, authorGaii, title, category, tags });
|
|
16
|
+
* @version-history
|
|
17
|
+
* v1.0.0 — 2026-08-11 — Extracted from routes/boards.ts so both doors notify (August 2026 audit,
|
|
18
|
+
* the side-effect sweep).
|
|
19
|
+
*/
|
|
20
|
+
import type { Storage } from '../storage/interface.js';
|
|
21
|
+
export declare function notifyBoardSubscribers(storage: Storage, boardId: string, post: {
|
|
22
|
+
id: string;
|
|
23
|
+
authorGaii: string;
|
|
24
|
+
title: string;
|
|
25
|
+
category?: string;
|
|
26
|
+
tags: string[];
|
|
27
|
+
}): void;
|
|
28
|
+
//# sourceMappingURL=board-subscribers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-subscribers.d.ts","sourceRoot":"","sources":["../../../src/services/board-subscribers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAOvD,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,GAC3F,IAAI,CA2BN"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { safeFetch } from '../utils/url-validator.js';
|
|
2
|
+
import { logger } from '../utils/logger.js';
|
|
3
|
+
/** How long a subscriber's callback has to answer before the delivery is abandoned. */
|
|
4
|
+
const CALLBACK_TIMEOUT_MS = 10_000;
|
|
5
|
+
export function notifyBoardSubscribers(storage, boardId, post) {
|
|
6
|
+
storage.listBoardSubscriptions(boardId).then(subs => {
|
|
7
|
+
for (const sub of subs) {
|
|
8
|
+
// Don't notify the author of their own post
|
|
9
|
+
if (sub.gaii === post.authorGaii)
|
|
10
|
+
continue;
|
|
11
|
+
// Apply category/tag filters if subscriber set them
|
|
12
|
+
if (sub.filters?.categories?.length && post.category && !sub.filters.categories.includes(post.category))
|
|
13
|
+
continue;
|
|
14
|
+
if (sub.filters?.tags?.length && !sub.filters.tags.some(t => post.tags.includes(t)))
|
|
15
|
+
continue;
|
|
16
|
+
if (!sub.callbackUrl)
|
|
17
|
+
continue;
|
|
18
|
+
safeFetch(sub.callbackUrl, {
|
|
19
|
+
method: 'POST',
|
|
20
|
+
headers: { 'Content-Type': 'application/json' },
|
|
21
|
+
body: JSON.stringify({
|
|
22
|
+
event: 'board.new_post',
|
|
23
|
+
board_id: boardId,
|
|
24
|
+
post_id: post.id,
|
|
25
|
+
author_gaii: post.authorGaii,
|
|
26
|
+
title: post.title,
|
|
27
|
+
category: post.category,
|
|
28
|
+
timestamp: new Date().toISOString(),
|
|
29
|
+
}),
|
|
30
|
+
signal: AbortSignal.timeout(CALLBACK_TIMEOUT_MS),
|
|
31
|
+
}).catch(err => {
|
|
32
|
+
logger.warn('Board subscription notification failed', { boardId, gaii: sub.gaii, error: String(err) });
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}).catch(err => { logger.warn('notifyBoardSubscribers: ignore', { error: String(err) }); });
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=board-subscribers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-subscribers.js","sourceRoot":"","sources":["../../../src/services/board-subscribers.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,uFAAuF;AACvF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC,MAAM,UAAU,sBAAsB,CAClC,OAAgB,EAChB,OAAe,EACf,IAA0F;IAE1F,OAAO,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QAChD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,4CAA4C;YAC5C,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU;gBAAE,SAAS;YAC3C,oDAAoD;YACpD,IAAI,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC;gBAAE,SAAS;YAClH,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAAE,SAAS;YAC9F,IAAI,CAAC,GAAG,CAAC,WAAW;gBAAE,SAAS;YAC/B,SAAS,CAAC,GAAG,CAAC,WAAW,EAAE;gBACvB,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACjB,KAAK,EAAE,gBAAgB;oBACvB,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,IAAI,CAAC,EAAE;oBAChB,WAAW,EAAE,IAAI,CAAC,UAAU;oBAC5B,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACtC,CAAC;gBACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC;aACnD,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;gBACX,MAAM,CAAC,IAAI,CAAC,wCAAwC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3G,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAChG,CAAC"}
|