@bevel-software/platform-core-backend 0.31.0 → 0.33.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/agent-guide/access-control.md +5 -0
- package/agent-guide/html-views.md +46 -10
- package/dist/core/create-core-server.d.ts.map +1 -1
- package/dist/core/create-core-server.js +29 -4
- package/dist/core/create-core-server.js.map +1 -1
- package/dist/core/create-core-services.d.ts +14 -2
- package/dist/core/create-core-services.d.ts.map +1 -1
- package/dist/core/create-core-services.js +34 -7
- package/dist/core/create-core-services.js.map +1 -1
- package/dist/core/lifecycle.d.ts +8 -0
- package/dist/core/lifecycle.d.ts.map +1 -1
- package/dist/core/lifecycle.js +4 -0
- package/dist/core/lifecycle.js.map +1 -1
- package/dist/core/public-config.d.ts +10 -0
- package/dist/core/public-config.d.ts.map +1 -1
- package/dist/core/public-config.js +10 -0
- package/dist/core/public-config.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/modules/access/access-control.service.d.ts +3 -3
- package/dist/modules/access/access-control.service.d.ts.map +1 -1
- package/dist/modules/access/access-control.service.js +4 -5
- package/dist/modules/access/access-control.service.js.map +1 -1
- package/dist/modules/access/access-declarations.d.ts +1 -1
- package/dist/modules/access/access-declarations.d.ts.map +1 -1
- package/dist/modules/access/access-declarations.js +1 -1
- package/dist/modules/access/access-declarations.js.map +1 -1
- package/dist/modules/access/access-mutation.service.d.ts +8 -3
- package/dist/modules/access/access-mutation.service.d.ts.map +1 -1
- package/dist/modules/access/access-mutation.service.js +3 -3
- package/dist/modules/access/access-mutation.service.js.map +1 -1
- package/dist/modules/access/access-requests.contract.d.ts +1 -1
- package/dist/modules/access/access-requests.contract.d.ts.map +1 -1
- package/dist/modules/access/access-requests.routes.d.ts +3 -3
- package/dist/modules/access/access-requests.routes.d.ts.map +1 -1
- package/dist/modules/access/access-requests.routes.js +7 -7
- package/dist/modules/access/access-requests.routes.js.map +1 -1
- package/dist/modules/access/access-requests.service.d.ts +21 -20
- package/dist/modules/access/access-requests.service.d.ts.map +1 -1
- package/dist/modules/access/access-requests.service.js +22 -68
- package/dist/modules/access/access-requests.service.js.map +1 -1
- package/dist/modules/access/access-view.d.ts +1 -1
- package/dist/modules/access/access-view.d.ts.map +1 -1
- package/dist/modules/access/access-view.js +1 -1
- package/dist/modules/access/access-view.js.map +1 -1
- package/dist/modules/access/access.routes.d.ts +5 -7
- package/dist/modules/access/access.routes.d.ts.map +1 -1
- package/dist/modules/access/access.routes.js +4 -4
- package/dist/modules/access/access.routes.js.map +1 -1
- package/dist/modules/access/admin-locked-commit.d.ts +2 -2
- package/dist/modules/access/admin-locked-commit.d.ts.map +1 -1
- package/dist/modules/access/admin-locked-commit.js +1 -1
- package/dist/modules/access/admin-locked-commit.js.map +1 -1
- package/dist/modules/access/capability-registry.js +1 -1
- package/dist/modules/access/capability-registry.js.map +1 -1
- package/dist/modules/access/change-read-gate.d.ts +2 -2
- package/dist/modules/access/change-read-gate.d.ts.map +1 -1
- package/dist/modules/access/change-read-gate.js +1 -3
- package/dist/modules/access/change-read-gate.js.map +1 -1
- package/dist/modules/access/creator-access.d.ts +2 -2
- package/dist/modules/access/creator-access.d.ts.map +1 -1
- package/dist/modules/access/creator-access.js +2 -4
- package/dist/modules/access/creator-access.js.map +1 -1
- package/dist/modules/access/directory-sync-bot.d.ts +1 -1
- package/dist/modules/access/directory-sync-bot.d.ts.map +1 -1
- package/dist/modules/access/directory-sync-bot.js +1 -1
- package/dist/modules/access/directory-sync-bot.js.map +1 -1
- package/dist/modules/access/groups-admin.routes.d.ts +2 -2
- package/dist/modules/access/groups-admin.routes.d.ts.map +1 -1
- package/dist/modules/access/groups-admin.routes.js +2 -2
- package/dist/modules/access/groups-admin.routes.js.map +1 -1
- package/dist/modules/access/groups-admin.service.d.ts +1 -1
- package/dist/modules/access/groups-admin.service.d.ts.map +1 -1
- package/dist/modules/access/groups-admin.service.js +2 -3
- package/dist/modules/access/groups-admin.service.js.map +1 -1
- package/dist/modules/access/groups-edit.js +2 -2
- package/dist/modules/access/groups-edit.js.map +1 -1
- package/dist/modules/access/index.d.ts +17 -0
- package/dist/modules/access/index.d.ts.map +1 -0
- package/dist/modules/access/index.js +6 -0
- package/dist/modules/access/index.js.map +1 -0
- package/dist/modules/access/reference-scan.js +1 -1
- package/dist/modules/access/reference-scan.js.map +1 -1
- package/dist/modules/access/roles-admin.service.d.ts +1 -1
- package/dist/modules/access/roles-admin.service.d.ts.map +1 -1
- package/dist/modules/access/roles-admin.service.js +2 -5
- package/dist/modules/access/roles-admin.service.js.map +1 -1
- package/dist/modules/access/roles-edit.js +1 -1
- package/dist/modules/access/roles-edit.js.map +1 -1
- package/dist/modules/access/synced-groups-committer.d.ts +2 -2
- package/dist/modules/access/synced-groups-committer.d.ts.map +1 -1
- package/dist/modules/access/synced-groups-committer.js +2 -2
- package/dist/modules/access/synced-groups-committer.js.map +1 -1
- package/dist/modules/access/synced-groups-writer.js +2 -2
- package/dist/modules/access/synced-groups-writer.js.map +1 -1
- package/dist/modules/access/user-access-removal.service.d.ts +1 -1
- package/dist/modules/access/user-access-removal.service.d.ts.map +1 -1
- package/dist/modules/access/user-access-removal.service.js +2 -5
- package/dist/modules/access/user-access-removal.service.js.map +1 -1
- package/dist/modules/access-model/index.d.ts +29 -0
- package/dist/modules/access-model/index.d.ts.map +1 -0
- package/dist/modules/access-model/index.js +26 -0
- package/dist/modules/access-model/index.js.map +1 -0
- package/dist/modules/access-model/roles-yaml-guard.d.ts +1 -1
- package/dist/modules/access-model/roles-yaml-guard.d.ts.map +1 -1
- package/dist/modules/admin/admin-access.routes.d.ts +1 -1
- package/dist/modules/admin/admin-access.routes.d.ts.map +1 -1
- package/dist/modules/admin/admin-access.routes.js +1 -1
- package/dist/modules/admin/admin-access.routes.js.map +1 -1
- package/dist/modules/admin/admin-access.service.d.ts +2 -2
- package/dist/modules/admin/admin-access.service.d.ts.map +1 -1
- package/dist/modules/admin/index.d.ts +8 -0
- package/dist/modules/admin/index.d.ts.map +1 -0
- package/dist/modules/admin/index.js +2 -0
- package/dist/modules/admin/index.js.map +1 -0
- package/dist/modules/agent-guide/agent-guide.js +1 -1
- package/dist/modules/agent-guide/agent-guide.js.map +1 -1
- package/dist/modules/agent-guide/agent-guide.tools.d.ts +3 -3
- package/dist/modules/agent-guide/agent-guide.tools.d.ts.map +1 -1
- package/dist/modules/agent-guide/agent-guide.tools.js +2 -4
- package/dist/modules/agent-guide/agent-guide.tools.js.map +1 -1
- package/dist/modules/agent-guide/index.d.ts +1 -1
- package/dist/modules/agent-guide/index.d.ts.map +1 -1
- package/dist/modules/agent-guide/index.js +1 -1
- package/dist/modules/agent-guide/index.js.map +1 -1
- package/dist/modules/agent-instructions/read-preamble.d.ts +1 -1
- package/dist/modules/agent-instructions/read-preamble.d.ts.map +1 -1
- package/dist/modules/audit/agent-audit.service.d.ts +2 -2
- package/dist/modules/audit/agent-audit.service.d.ts.map +1 -1
- package/dist/modules/audit/agent-audit.service.js +1 -1
- package/dist/modules/audit/agent-audit.service.js.map +1 -1
- package/dist/modules/audit/agent-connection.routes.d.ts +1 -1
- package/dist/modules/audit/agent-connection.routes.d.ts.map +1 -1
- package/dist/modules/audit/agent-connection.routes.js +1 -1
- package/dist/modules/audit/agent-connection.routes.js.map +1 -1
- package/dist/modules/audit/agent-rest-audit.middleware.d.ts +1 -1
- package/dist/modules/audit/agent-rest-audit.middleware.d.ts.map +1 -1
- package/dist/modules/audit/agent-rest-audit.middleware.js +1 -1
- package/dist/modules/audit/agent-rest-audit.middleware.js.map +1 -1
- package/dist/modules/audit/audit.routes.d.ts +3 -3
- package/dist/modules/audit/audit.routes.d.ts.map +1 -1
- package/dist/modules/audit/audit.routes.js +2 -2
- package/dist/modules/audit/audit.routes.js.map +1 -1
- package/dist/modules/auth/account-erasure.service.d.ts +3 -3
- package/dist/modules/auth/account-erasure.service.d.ts.map +1 -1
- package/dist/modules/auth/account-erasure.service.js +1 -5
- package/dist/modules/auth/account-erasure.service.js.map +1 -1
- package/dist/modules/auth/account-hooks.d.ts +4 -6
- package/dist/modules/auth/account-hooks.d.ts.map +1 -1
- package/dist/modules/auth/account-hooks.js +7 -17
- package/dist/modules/auth/account-hooks.js.map +1 -1
- package/dist/modules/auth/account-switch-lock.d.ts +1 -1
- package/dist/modules/auth/account-switch-lock.d.ts.map +1 -1
- package/dist/modules/auth/account-switch-lock.js +1 -1
- package/dist/modules/auth/account-switch-lock.js.map +1 -1
- package/dist/modules/auth/account.routes.d.ts +2 -2
- package/dist/modules/auth/account.routes.d.ts.map +1 -1
- package/dist/modules/auth/account.routes.js +1 -1
- package/dist/modules/auth/account.routes.js.map +1 -1
- package/dist/modules/auth/auth.service.d.ts +10 -9
- package/dist/modules/auth/auth.service.d.ts.map +1 -1
- package/dist/modules/auth/auth.service.js +22 -21
- package/dist/modules/auth/auth.service.js.map +1 -1
- package/dist/modules/auth/index.d.ts +2 -0
- package/dist/modules/auth/index.d.ts.map +1 -1
- package/dist/modules/auth/oidc-auth-provider.js +1 -1
- package/dist/modules/auth/oidc-auth-provider.js.map +1 -1
- package/dist/modules/code-mode/code-mode.tool.d.ts +1 -1
- package/dist/modules/code-mode/code-mode.tool.d.ts.map +1 -1
- package/dist/modules/connection-probe/connection-probe.service.d.ts +2 -2
- package/dist/modules/connection-probe/connection-probe.service.d.ts.map +1 -1
- package/dist/modules/connection-probe/connection-probe.service.js +1 -4
- package/dist/modules/connection-probe/connection-probe.service.js.map +1 -1
- package/dist/modules/database/core-schema.d.ts +128 -235
- package/dist/modules/database/core-schema.d.ts.map +1 -1
- package/dist/modules/database/core-schema.js +55 -36
- package/dist/modules/database/core-schema.js.map +1 -1
- package/dist/modules/database/index.d.ts +10 -0
- package/dist/modules/database/index.d.ts.map +1 -0
- package/dist/modules/database/index.js +4 -0
- package/dist/modules/database/index.js.map +1 -0
- package/dist/modules/database/migrate.d.ts.map +1 -1
- package/dist/modules/database/migrate.js +78 -3
- package/dist/modules/database/migrate.js.map +1 -1
- package/dist/modules/declared-variables/declared-variables.routes.d.ts +2 -2
- package/dist/modules/declared-variables/declared-variables.routes.d.ts.map +1 -1
- package/dist/modules/diff/diff.routes.d.ts +3 -3
- package/dist/modules/diff/diff.routes.d.ts.map +1 -1
- package/dist/modules/diff/diff.routes.js +3 -3
- package/dist/modules/diff/diff.routes.js.map +1 -1
- package/dist/modules/diff/diff.service.d.ts +2 -2
- package/dist/modules/diff/diff.service.d.ts.map +1 -1
- package/dist/modules/diff/index.d.ts +7 -0
- package/dist/modules/diff/index.d.ts.map +1 -0
- package/dist/modules/diff/index.js +2 -0
- package/dist/modules/diff/index.js.map +1 -0
- package/dist/modules/embed/account-link.service.d.ts +1 -1
- package/dist/modules/embed/account-link.service.d.ts.map +1 -1
- package/dist/modules/embed/account-link.service.js +1 -1
- package/dist/modules/embed/account-link.service.js.map +1 -1
- package/dist/modules/embed/embed.routes.d.ts +1 -1
- package/dist/modules/embed/embed.routes.d.ts.map +1 -1
- package/dist/modules/embed/embed.routes.js +2 -2
- package/dist/modules/embed/embed.routes.js.map +1 -1
- package/dist/modules/embed/embed.service.d.ts +1 -1
- package/dist/modules/embed/embed.service.d.ts.map +1 -1
- package/dist/modules/embed/embed.tools.d.ts +4 -4
- package/dist/modules/embed/embed.tools.d.ts.map +1 -1
- package/dist/modules/embed/embed.tools.js +3 -5
- package/dist/modules/embed/embed.tools.js.map +1 -1
- package/dist/modules/github-app/github-app.connection.d.ts +1 -1
- package/dist/modules/github-app/github-app.connection.d.ts.map +1 -1
- package/dist/modules/github-app/github-app.routes.d.ts +3 -3
- package/dist/modules/github-app/github-app.routes.d.ts.map +1 -1
- package/dist/modules/github-app/github-app.routes.js +1 -1
- package/dist/modules/github-app/github-app.routes.js.map +1 -1
- package/dist/modules/kb-fs/index.d.ts +10 -0
- package/dist/modules/kb-fs/index.d.ts.map +1 -1
- package/dist/modules/kb-fs/index.js +10 -0
- package/dist/modules/kb-fs/index.js.map +1 -1
- package/dist/modules/kb-fs/locking-filesystem.d.ts +1 -1
- package/dist/modules/kb-fs/locking-filesystem.d.ts.map +1 -1
- package/dist/modules/kb-sync/kb-sync.routes.d.ts +1 -1
- package/dist/modules/kb-sync/kb-sync.routes.d.ts.map +1 -1
- package/dist/modules/kb-sync/kb-sync.routes.js +2 -2
- package/dist/modules/kb-sync/kb-sync.routes.js.map +1 -1
- package/dist/modules/kb-sync/kb-sync.service.js +1 -1
- package/dist/modules/kb-sync/kb-sync.service.js.map +1 -1
- package/dist/modules/kb-sync/sync-auth.js +1 -1
- package/dist/modules/kb-sync/sync-auth.js.map +1 -1
- package/dist/modules/kb-sync/sync-payload.js +1 -1
- package/dist/modules/kb-sync/sync-payload.js.map +1 -1
- package/dist/modules/marketplace/git-http.routes.d.ts +1 -1
- package/dist/modules/marketplace/git-http.routes.d.ts.map +1 -1
- package/dist/modules/marketplace/git-http.routes.js +1 -1
- package/dist/modules/marketplace/git-http.routes.js.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-admin.routes.d.ts +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-admin.routes.d.ts.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-admin.routes.js +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-admin.routes.js.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-codes.store.d.ts +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-codes.store.d.ts.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-codes.store.js +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-codes.store.js.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-credentials.service.d.ts +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-credentials.service.d.ts.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-credentials.service.js +1 -1
- package/dist/modules/marketplace/github-facade/github-facade-credentials.service.js.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade.routes.d.ts +2 -2
- package/dist/modules/marketplace/github-facade/github-facade.routes.d.ts.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade.routes.js +2 -2
- package/dist/modules/marketplace/github-facade/github-facade.routes.js.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade.service.d.ts +2 -2
- package/dist/modules/marketplace/github-facade/github-facade.service.d.ts.map +1 -1
- package/dist/modules/marketplace/github-facade/github-facade.service.js +1 -1
- package/dist/modules/marketplace/github-facade/github-facade.service.js.map +1 -1
- package/dist/modules/marketplace/marketplace-repo.service.d.ts +1 -1
- package/dist/modules/marketplace/marketplace-repo.service.d.ts.map +1 -1
- package/dist/modules/marketplace/marketplace-repo.service.js +1 -1
- package/dist/modules/mcp/index.d.ts +8 -0
- package/dist/modules/mcp/index.d.ts.map +1 -0
- package/dist/modules/mcp/index.js +7 -0
- package/dist/modules/mcp/index.js.map +1 -0
- package/dist/modules/mcp/mcp-auth.middleware.d.ts +4 -5
- package/dist/modules/mcp/mcp-auth.middleware.d.ts.map +1 -1
- package/dist/modules/mcp/mcp-auth.middleware.js +4 -4
- package/dist/modules/mcp/mcp-auth.middleware.js.map +1 -1
- package/dist/modules/mcp/mcp.routes.d.ts +2 -4
- package/dist/modules/mcp/mcp.routes.d.ts.map +1 -1
- package/dist/modules/mcp/mcp.routes.js +2 -2
- package/dist/modules/mcp/mcp.routes.js.map +1 -1
- package/dist/modules/mcp/mcp.service.d.ts +14 -4
- package/dist/modules/mcp/mcp.service.d.ts.map +1 -1
- package/dist/modules/mcp/mcp.service.js +17 -7
- package/dist/modules/mcp/mcp.service.js.map +1 -1
- package/dist/modules/mcp/oauth/bevel-oauth-provider.d.ts +29 -1
- package/dist/modules/mcp/oauth/bevel-oauth-provider.d.ts.map +1 -1
- package/dist/modules/mcp/oauth/bevel-oauth-provider.js +167 -40
- package/dist/modules/mcp/oauth/bevel-oauth-provider.js.map +1 -1
- package/dist/modules/mcp/oauth/oauth-consent.routes.d.ts +1 -1
- package/dist/modules/mcp/oauth/oauth-consent.routes.d.ts.map +1 -1
- package/dist/modules/mcp/oauth/oauth-consent.routes.js +1 -1
- package/dist/modules/mcp/oauth/oauth-consent.routes.js.map +1 -1
- package/dist/modules/onboarding/onboarding.routes.d.ts +1 -1
- package/dist/modules/onboarding/onboarding.routes.d.ts.map +1 -1
- package/dist/modules/onboarding/onboarding.routes.js +1 -1
- package/dist/modules/onboarding/onboarding.routes.js.map +1 -1
- package/dist/modules/onboarding/starter-pack.service.d.ts +4 -5
- package/dist/modules/onboarding/starter-pack.service.d.ts.map +1 -1
- package/dist/modules/onboarding/starter-pack.service.js +2 -2
- package/dist/modules/onboarding/starter-pack.service.js.map +1 -1
- package/dist/modules/plugins/compile/compile-marketplace.d.ts +1 -1
- package/dist/modules/plugins/compile/compile-marketplace.d.ts.map +1 -1
- package/dist/modules/plugins/compile/compile-marketplace.js +1 -1
- package/dist/modules/plugins/compile/compile-marketplace.js.map +1 -1
- package/dist/modules/plugins/compile/marketplace-compiler.service.d.ts +3 -3
- package/dist/modules/plugins/compile/marketplace-compiler.service.d.ts.map +1 -1
- package/dist/modules/plugins/discovery/bundle-dialect/registry.d.ts +1 -1
- package/dist/modules/plugins/discovery/bundle-dialect/registry.d.ts.map +1 -1
- package/dist/modules/plugins/discovery/bundle-dialect/registry.js +1 -1
- package/dist/modules/plugins/discovery/bundle-dialect/registry.js.map +1 -1
- package/dist/modules/plugins/index.d.ts +1 -0
- package/dist/modules/plugins/index.d.ts.map +1 -1
- package/dist/modules/plugins/index.js +2 -0
- package/dist/modules/plugins/index.js.map +1 -1
- package/dist/modules/plugins/join-proposals.d.ts +2 -2
- package/dist/modules/plugins/join-proposals.d.ts.map +1 -1
- package/dist/modules/plugins/join-proposals.js +1 -1
- package/dist/modules/plugins/join-proposals.js.map +1 -1
- package/dist/modules/plugins/join-request-jobs.service.d.ts +1 -1
- package/dist/modules/plugins/join-request-jobs.service.d.ts.map +1 -1
- package/dist/modules/plugins/join-request-jobs.service.js +2 -2
- package/dist/modules/plugins/join-request-jobs.service.js.map +1 -1
- package/dist/modules/plugins/join-request-records.store.d.ts +1 -1
- package/dist/modules/plugins/join-request-records.store.d.ts.map +1 -1
- package/dist/modules/plugins/join-request-records.store.js +1 -1
- package/dist/modules/plugins/join-request-records.store.js.map +1 -1
- package/dist/modules/plugins/join-requests.service.d.ts +3 -3
- package/dist/modules/plugins/join-requests.service.d.ts.map +1 -1
- package/dist/modules/plugins/join-requests.service.js +1 -1
- package/dist/modules/plugins/join-requests.service.js.map +1 -1
- package/dist/modules/plugins/plugin-links.d.ts +3 -3
- package/dist/modules/plugins/plugin-links.d.ts.map +1 -1
- package/dist/modules/plugins/plugin-links.js +1 -1
- package/dist/modules/plugins/plugin-links.js.map +1 -1
- package/dist/modules/plugins/plugin-links.service.d.ts +8 -5
- package/dist/modules/plugins/plugin-links.service.d.ts.map +1 -1
- package/dist/modules/plugins/plugin-links.service.js +8 -6
- package/dist/modules/plugins/plugin-links.service.js.map +1 -1
- package/dist/modules/plugins/plugin-provision.service.d.ts +2 -2
- package/dist/modules/plugins/plugin-provision.service.d.ts.map +1 -1
- package/dist/modules/plugins/plugin-provision.service.js +2 -3
- package/dist/modules/plugins/plugin-provision.service.js.map +1 -1
- package/dist/modules/plugins/plugin-rename.service.d.ts +2 -2
- package/dist/modules/plugins/plugin-rename.service.d.ts.map +1 -1
- package/dist/modules/plugins/plugin-rename.service.js +1 -1
- package/dist/modules/plugins/plugin-rename.service.js.map +1 -1
- package/dist/modules/plugins/plugins.contract.d.ts +1 -1
- package/dist/modules/plugins/plugins.contract.d.ts.map +1 -1
- package/dist/modules/plugins/plugins.routes.d.ts +2 -2
- package/dist/modules/plugins/plugins.routes.d.ts.map +1 -1
- package/dist/modules/plugins/plugins.routes.js +3 -3
- package/dist/modules/plugins/plugins.routes.js.map +1 -1
- package/dist/modules/plugins/plugins.service.d.ts +4 -4
- package/dist/modules/plugins/plugins.service.d.ts.map +1 -1
- package/dist/modules/plugins/plugins.service.js +1 -1
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/plugins/plugins.tools.d.ts +1 -1
- package/dist/modules/plugins/plugins.tools.d.ts.map +1 -1
- package/dist/modules/plugins/plugins.tools.js +3 -3
- package/dist/modules/plugins/plugins.tools.js.map +1 -1
- package/dist/modules/plugins/teams.routes.d.ts +3 -3
- package/dist/modules/plugins/teams.routes.d.ts.map +1 -1
- package/dist/modules/secrets-vault/db-secrets-vault.service.d.ts +1 -1
- package/dist/modules/secrets-vault/db-secrets-vault.service.d.ts.map +1 -1
- package/dist/modules/secrets-vault/db-secrets-vault.service.js +1 -1
- package/dist/modules/secrets-vault/db-secrets-vault.service.js.map +1 -1
- package/dist/modules/secrets-vault/index.d.ts +1 -0
- package/dist/modules/secrets-vault/index.d.ts.map +1 -1
- package/dist/modules/secrets-vault/index.js +2 -0
- package/dist/modules/secrets-vault/index.js.map +1 -1
- package/dist/modules/secrets-vault/secrets-vault.routes.d.ts +4 -4
- package/dist/modules/secrets-vault/secrets-vault.routes.d.ts.map +1 -1
- package/dist/modules/secrets-vault/secrets-vault.routes.js +1 -1
- package/dist/modules/secrets-vault/secrets-vault.routes.js.map +1 -1
- package/dist/modules/settings/connection-check.js +1 -1
- package/dist/modules/settings/connection-check.js.map +1 -1
- package/dist/modules/settings/deployment-settings.service.d.ts +7 -1
- package/dist/modules/settings/deployment-settings.service.d.ts.map +1 -1
- package/dist/modules/settings/deployment-settings.service.js +45 -3
- package/dist/modules/settings/deployment-settings.service.js.map +1 -1
- package/dist/modules/settings/git-root-folders.js +1 -1
- package/dist/modules/settings/git-root-folders.js.map +1 -1
- package/dist/modules/settings/index.d.ts +13 -0
- package/dist/modules/settings/index.d.ts.map +1 -0
- package/dist/modules/settings/index.js +3 -0
- package/dist/modules/settings/index.js.map +1 -0
- package/dist/modules/settings/setup.routes.d.ts +3 -3
- package/dist/modules/settings/setup.routes.d.ts.map +1 -1
- package/dist/modules/settings/setup.routes.js +2 -2
- package/dist/modules/settings/setup.routes.js.map +1 -1
- package/dist/modules/skills/allowed-tools-check.d.ts +2 -2
- package/dist/modules/skills/allowed-tools-check.d.ts.map +1 -1
- package/dist/modules/skills/allowed-tools-check.js +1 -1
- package/dist/modules/skills/allowed-tools-check.js.map +1 -1
- package/dist/modules/skills/index.d.ts +1 -0
- package/dist/modules/skills/index.d.ts.map +1 -1
- package/dist/modules/skills/pending-skills.service.d.ts +3 -3
- package/dist/modules/skills/pending-skills.service.d.ts.map +1 -1
- package/dist/modules/skills/pending-skills.service.js.map +1 -1
- package/dist/modules/skills/skill-access-requests.routes.d.ts +5 -5
- package/dist/modules/skills/skill-access-requests.routes.d.ts.map +1 -1
- package/dist/modules/skills/skill-access-requests.routes.js +6 -13
- package/dist/modules/skills/skill-access-requests.routes.js.map +1 -1
- package/dist/modules/skills/skills.routes.d.ts +1 -1
- package/dist/modules/skills/skills.routes.d.ts.map +1 -1
- package/dist/modules/skills/skills.routes.js +1 -1
- package/dist/modules/skills/skills.routes.js.map +1 -1
- package/dist/modules/skills/skills.service.d.ts +2 -2
- package/dist/modules/skills/skills.service.d.ts.map +1 -1
- package/dist/modules/skills/skills.tools.d.ts +3 -3
- package/dist/modules/skills/skills.tools.d.ts.map +1 -1
- package/dist/modules/skills/skills.tools.js +3 -7
- package/dist/modules/skills/skills.tools.js.map +1 -1
- package/dist/modules/tool-auth/connection-key-rejection.js +1 -1
- package/dist/modules/tool-auth/connection-key-rejection.js.map +1 -1
- package/dist/modules/tool-auth/connection-keys-admin.routes.d.ts +2 -2
- package/dist/modules/tool-auth/connection-keys-admin.routes.d.ts.map +1 -1
- package/dist/modules/tool-auth/connection-keys-admin.routes.js +1 -1
- package/dist/modules/tool-auth/connection-keys-admin.routes.js.map +1 -1
- package/dist/modules/tool-auth/external-api-key.service.d.ts +1 -1
- package/dist/modules/tool-auth/external-api-key.service.d.ts.map +1 -1
- package/dist/modules/tool-auth/external-api-key.service.js +1 -1
- package/dist/modules/tool-auth/external-api-key.service.js.map +1 -1
- package/dist/modules/tool-auth/index.d.ts +15 -0
- package/dist/modules/tool-auth/index.d.ts.map +1 -0
- package/dist/modules/tool-auth/index.js +11 -0
- package/dist/modules/tool-auth/index.js.map +1 -0
- package/dist/modules/tool-auth/tool-auth.middleware.d.ts +2 -2
- package/dist/modules/tool-auth/tool-auth.middleware.d.ts.map +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.js +1 -1
- package/dist/modules/tool-auth/tool-auth.middleware.js.map +1 -1
- package/dist/modules/tool-helpers/default-branch-write.d.ts +1 -1
- package/dist/modules/tool-helpers/default-branch-write.d.ts.map +1 -1
- package/dist/modules/tool-helpers/index.d.ts +4 -1
- package/dist/modules/tool-helpers/index.d.ts.map +1 -1
- package/dist/modules/tool-helpers/index.js +3 -0
- package/dist/modules/tool-helpers/index.js.map +1 -1
- package/dist/modules/tool-helpers/route-argument-check.js +1 -1
- package/dist/modules/tool-helpers/route-argument-check.js.map +1 -1
- package/dist/modules/tool-helpers/route-tool-schemas.d.ts +1 -1
- package/dist/modules/tool-helpers/route-tool-schemas.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-context.d.ts +5 -6
- package/dist/modules/tool-helpers/tool-context.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-context.js +2 -3
- package/dist/modules/tool-helpers/tool-context.js.map +1 -1
- package/dist/modules/tool-helpers/tool-def.d.ts +4 -2
- package/dist/modules/tool-helpers/tool-def.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-def.js +3 -1
- package/dist/modules/tool-helpers/tool-def.js.map +1 -1
- package/dist/modules/tool-helpers/tool-handler.d.ts +2 -2
- package/dist/modules/tool-helpers/tool-handler.d.ts.map +1 -1
- package/dist/modules/tool-helpers/tool-handler.js +2 -2
- package/dist/modules/tool-helpers/tool-handler.js.map +1 -1
- package/dist/modules/tool-helpers/tool.contract.d.ts +2 -2
- package/dist/modules/tool-helpers/tool.contract.d.ts.map +1 -1
- package/dist/modules/tool-helpers/validate-token.d.ts +1 -2
- package/dist/modules/tool-helpers/validate-token.d.ts.map +1 -1
- package/dist/modules/tool-helpers/validate-token.js +1 -1
- package/dist/modules/tool-helpers/validate-token.js.map +1 -1
- package/dist/modules/tool-manuals/index.d.ts +5 -0
- package/dist/modules/tool-manuals/index.d.ts.map +1 -1
- package/dist/modules/tool-manuals/index.js +4 -0
- package/dist/modules/tool-manuals/index.js.map +1 -1
- package/dist/modules/tool-manuals/mcp-server-edit.service.d.ts +2 -2
- package/dist/modules/tool-manuals/mcp-server-edit.service.d.ts.map +1 -1
- package/dist/modules/tool-manuals/pending-tools.service.d.ts +2 -2
- package/dist/modules/tool-manuals/pending-tools.service.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-delete.service.d.ts +5 -6
- package/dist/modules/tool-manuals/tool-delete.service.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-delete.service.js.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.routes.d.ts +5 -5
- package/dist/modules/tool-manuals/tool-manuals.routes.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.routes.js +2 -2
- package/dist/modules/tool-manuals/tool-manuals.routes.js.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.service.d.ts +3 -3
- package/dist/modules/tool-manuals/tool-manuals.service.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.tools.d.ts +3 -3
- package/dist/modules/tool-manuals/tool-manuals.tools.d.ts.map +1 -1
- package/dist/modules/tool-manuals/tool-manuals.tools.js +1 -2
- package/dist/modules/tool-manuals/tool-manuals.tools.js.map +1 -1
- package/dist/modules/tool-registry/description-length.js +2 -2
- package/dist/modules/tool-registry/description-length.js.map +1 -1
- package/dist/modules/tool-registry/index.d.ts +8 -0
- package/dist/modules/tool-registry/index.d.ts.map +1 -0
- package/dist/modules/tool-registry/index.js +8 -0
- package/dist/modules/tool-registry/index.js.map +1 -0
- package/dist/modules/tool-registry/manual.routes.d.ts +37 -2
- package/dist/modules/tool-registry/manual.routes.d.ts.map +1 -1
- package/dist/modules/tool-registry/manual.routes.js +14 -7
- package/dist/modules/tool-registry/manual.routes.js.map +1 -1
- package/dist/modules/tool-registry/read-only-hints.contract.d.ts +52 -0
- package/dist/modules/tool-registry/read-only-hints.contract.d.ts.map +1 -0
- package/dist/modules/tool-registry/read-only-hints.contract.js +2 -0
- package/dist/modules/tool-registry/read-only-hints.contract.js.map +1 -0
- package/dist/modules/tool-registry/read-only-hints.d.ts +89 -0
- package/dist/modules/tool-registry/read-only-hints.d.ts.map +1 -0
- package/dist/modules/tool-registry/read-only-hints.js +212 -0
- package/dist/modules/tool-registry/read-only-hints.js.map +1 -0
- package/dist/modules/tool-registry/tool.contract.d.ts +8 -0
- package/dist/modules/tool-registry/tool.contract.d.ts.map +1 -1
- package/dist/modules/tool-registry/tool.contract.js +10 -1
- package/dist/modules/tool-registry/tool.contract.js.map +1 -1
- package/dist/modules/update-check/update-check.routes.d.ts +2 -2
- package/dist/modules/update-check/update-check.routes.d.ts.map +1 -1
- package/dist/modules/update-check/update-check.routes.js +1 -1
- package/dist/modules/update-check/update-check.routes.js.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read-shape.d.ts +9 -104
- package/dist/modules/workflow/agent-tools/change-request-read-shape.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read-shape.js +8 -118
- package/dist/modules/workflow/agent-tools/change-request-read-shape.js.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts +16 -17
- package/dist/modules/workflow/agent-tools/change-request-read.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js +19 -86
- package/dist/modules/workflow/agent-tools/change-request-read.tools.js.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-summary.d.ts +15 -2
- package/dist/modules/workflow/agent-tools/change-request-summary.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/change-request-summary.js +12 -1
- package/dist/modules/workflow/agent-tools/change-request-summary.js.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts +7 -5
- package/dist/modules/workflow/agent-tools/workflow.tools.d.ts.map +1 -1
- package/dist/modules/workflow/agent-tools/workflow.tools.js +51 -68
- package/dist/modules/workflow/agent-tools/workflow.tools.js.map +1 -1
- package/dist/modules/workflow/change-request-hooks.d.ts +78 -0
- package/dist/modules/workflow/change-request-hooks.d.ts.map +1 -0
- package/dist/modules/workflow/change-request-hooks.js +15 -0
- package/dist/modules/workflow/change-request-hooks.js.map +1 -0
- package/dist/modules/workflow/event-bus.d.ts.map +1 -1
- package/dist/modules/workflow/event-bus.js +3 -1
- package/dist/modules/workflow/event-bus.js.map +1 -1
- package/dist/modules/workflow/events-delivery.d.ts +120 -0
- package/dist/modules/workflow/events-delivery.d.ts.map +1 -0
- package/dist/modules/workflow/events-delivery.js +202 -0
- package/dist/modules/workflow/events-delivery.js.map +1 -0
- package/dist/modules/workflow/events.routes.d.ts +16 -7
- package/dist/modules/workflow/events.routes.d.ts.map +1 -1
- package/dist/modules/workflow/events.routes.js +23 -4
- package/dist/modules/workflow/events.routes.js.map +1 -1
- package/dist/modules/workflow/file-lock.service.d.ts +1 -1
- package/dist/modules/workflow/file-lock.service.d.ts.map +1 -1
- package/dist/modules/workflow/file-lock.service.js +1 -1
- package/dist/modules/workflow/file-lock.service.js.map +1 -1
- package/dist/modules/workflow/git/git.service.d.ts +2 -2
- package/dist/modules/workflow/git/git.service.d.ts.map +1 -1
- package/dist/modules/workflow/git/git.service.js +3 -6
- package/dist/modules/workflow/git/git.service.js.map +1 -1
- package/dist/modules/workflow/git/node-git-runner.js +1 -1
- package/dist/modules/workflow/git/node-git-runner.js.map +1 -1
- package/dist/modules/workflow/git/pull-request.service.d.ts +16 -7
- package/dist/modules/workflow/git/pull-request.service.d.ts.map +1 -1
- package/dist/modules/workflow/git/pull-request.service.js +49 -33
- package/dist/modules/workflow/git/pull-request.service.js.map +1 -1
- package/dist/modules/workflow/index.d.ts +14 -2
- package/dist/modules/workflow/index.d.ts.map +1 -1
- package/dist/modules/workflow/index.js +11 -2
- package/dist/modules/workflow/index.js.map +1 -1
- package/dist/modules/workflow/pending-commits.service.d.ts +1 -1
- package/dist/modules/workflow/pending-commits.service.d.ts.map +1 -1
- package/dist/modules/workflow/pending-commits.service.js +1 -1
- package/dist/modules/workflow/pending-commits.service.js.map +1 -1
- package/dist/modules/workflow/read-on-branch.d.ts +1 -1
- package/dist/modules/workflow/read-on-branch.d.ts.map +1 -1
- package/dist/modules/workflow/recovery-bot.d.ts +1 -1
- package/dist/modules/workflow/recovery-bot.d.ts.map +1 -1
- package/dist/modules/workflow/recovery-bot.js +1 -1
- package/dist/modules/workflow/recovery-bot.js.map +1 -1
- package/dist/modules/workflow/review-workflow/approval-lock.d.ts +1 -1
- package/dist/modules/workflow/review-workflow/approval-lock.d.ts.map +1 -1
- package/dist/modules/workflow/review-workflow/review-workflow.interface.d.ts +4 -20
- package/dist/modules/workflow/review-workflow/review-workflow.interface.d.ts.map +1 -1
- package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts +4 -8
- package/dist/modules/workflow/review-workflow/review-workflow.service.d.ts.map +1 -1
- package/dist/modules/workflow/review-workflow/review-workflow.service.js +3 -138
- package/dist/modules/workflow/review-workflow/review-workflow.service.js.map +1 -1
- package/dist/modules/workflow/workflow.routes.d.ts +5 -5
- package/dist/modules/workflow/workflow.routes.d.ts.map +1 -1
- package/dist/modules/workflow/workflow.routes.js +42 -94
- package/dist/modules/workflow/workflow.routes.js.map +1 -1
- package/dist/modules/workflow/workflow.service.d.ts +112 -62
- package/dist/modules/workflow/workflow.service.d.ts.map +1 -1
- package/dist/modules/workflow/workflow.service.js +367 -172
- package/dist/modules/workflow/workflow.service.js.map +1 -1
- package/dist/modules/workspace/agent-access.gate.d.ts +3 -3
- package/dist/modules/workspace/agent-access.gate.d.ts.map +1 -1
- package/dist/modules/workspace/agent-download.builder.d.ts +1 -1
- package/dist/modules/workspace/agent-download.builder.d.ts.map +1 -1
- package/dist/modules/workspace/agent-download.builder.js +1 -1
- package/dist/modules/workspace/agent-download.builder.js.map +1 -1
- package/dist/modules/workspace/agent-upload.routes.d.ts.map +1 -1
- package/dist/modules/workspace/agent-upload.routes.js +19 -0
- package/dist/modules/workspace/agent-upload.routes.js.map +1 -1
- package/dist/modules/workspace/agent-upload.store.d.ts +11 -0
- package/dist/modules/workspace/agent-upload.store.d.ts.map +1 -1
- package/dist/modules/workspace/agent-upload.store.js +18 -0
- package/dist/modules/workspace/agent-upload.store.js.map +1 -1
- package/dist/modules/workspace/bounded-matcher.d.ts +5 -11
- package/dist/modules/workspace/bounded-matcher.d.ts.map +1 -1
- package/dist/modules/workspace/bounded-matcher.js +26 -87
- package/dist/modules/workspace/bounded-matcher.js.map +1 -1
- package/dist/modules/workspace/file-readers/doc-extract.service.d.ts +54 -10
- package/dist/modules/workspace/file-readers/doc-extract.service.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/doc-extract.service.js +69 -17
- package/dist/modules/workspace/file-readers/doc-extract.service.js.map +1 -1
- package/dist/modules/workspace/file-readers/doc-extract.types.d.ts +9 -2
- package/dist/modules/workspace/file-readers/doc-extract.types.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/doc-extract.types.js.map +1 -1
- package/dist/modules/workspace/file-readers/document-extractor.contract.d.ts +41 -0
- package/dist/modules/workspace/file-readers/document-extractor.contract.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/document-extractor.contract.js +5 -0
- package/dist/modules/workspace/file-readers/document-extractor.contract.js.map +1 -0
- package/dist/modules/workspace/file-readers/document-extractors.d.ts +9 -0
- package/dist/modules/workspace/file-readers/document-extractors.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/document-extractors.js +26 -0
- package/dist/modules/workspace/file-readers/document-extractors.js.map +1 -0
- package/dist/modules/workspace/file-readers/document-formats.d.ts +12 -0
- package/dist/modules/workspace/file-readers/document-formats.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/document-formats.js +11 -0
- package/dist/modules/workspace/file-readers/document-formats.js.map +1 -0
- package/dist/modules/workspace/file-readers/document-reader.d.ts +21 -17
- package/dist/modules/workspace/file-readers/document-reader.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/document-reader.js +38 -34
- package/dist/modules/workspace/file-readers/document-reader.js.map +1 -1
- package/dist/modules/workspace/file-readers/extract-in-worker.d.ts +60 -0
- package/dist/modules/workspace/file-readers/extract-in-worker.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/extract-in-worker.js +140 -0
- package/dist/modules/workspace/file-readers/extract-in-worker.js.map +1 -0
- package/dist/modules/workspace/file-readers/extract-pdf.d.ts +2 -0
- package/dist/modules/workspace/file-readers/extract-pdf.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/extract-pdf.js +20 -3
- package/dist/modules/workspace/file-readers/extract-pdf.js.map +1 -1
- package/dist/modules/workspace/file-readers/extract.worker.d.ts +2 -0
- package/dist/modules/workspace/file-readers/extract.worker.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/extract.worker.js +5 -0
- package/dist/modules/workspace/file-readers/extract.worker.js.map +1 -0
- package/dist/modules/workspace/file-readers/extraction-cache.d.ts +21 -5
- package/dist/modules/workspace/file-readers/extraction-cache.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/extraction-cache.js +24 -10
- package/dist/modules/workspace/file-readers/extraction-cache.js.map +1 -1
- package/dist/modules/workspace/file-readers/extraction-worker.d.ts +42 -0
- package/dist/modules/workspace/file-readers/extraction-worker.d.ts.map +1 -0
- package/dist/modules/workspace/file-readers/extraction-worker.js +69 -0
- package/dist/modules/workspace/file-readers/extraction-worker.js.map +1 -0
- package/dist/modules/workspace/file-readers/file-reader.d.ts +13 -4
- package/dist/modules/workspace/file-readers/file-reader.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/file-reader.js.map +1 -1
- package/dist/modules/workspace/file-readers/file-reader.registry.d.ts +3 -2
- package/dist/modules/workspace/file-readers/file-reader.registry.d.ts.map +1 -1
- package/dist/modules/workspace/file-readers/file-reader.registry.js +6 -20
- package/dist/modules/workspace/file-readers/file-reader.registry.js.map +1 -1
- package/dist/modules/workspace/first-run.js +1 -1
- package/dist/modules/workspace/first-run.js.map +1 -1
- package/dist/modules/workspace/git-internals.middleware.d.ts +1 -1
- package/dist/modules/workspace/git-internals.middleware.d.ts.map +1 -1
- package/dist/modules/workspace/git-internals.middleware.js +1 -1
- package/dist/modules/workspace/git-internals.middleware.js.map +1 -1
- package/dist/modules/workspace/index.d.ts +16 -0
- package/dist/modules/workspace/index.d.ts.map +1 -1
- package/dist/modules/workspace/index.js +13 -0
- package/dist/modules/workspace/index.js.map +1 -1
- package/dist/modules/workspace/kb-repository.d.ts.map +1 -1
- package/dist/modules/workspace/kb-repository.js +1 -1
- package/dist/modules/workspace/kb-repository.js.map +1 -1
- package/dist/modules/workspace/not-found.d.ts +1 -1
- package/dist/modules/workspace/not-found.d.ts.map +1 -1
- package/dist/modules/workspace/not-found.js +1 -1
- package/dist/modules/workspace/not-found.js.map +1 -1
- package/dist/modules/workspace/pattern-matcher.contract.d.ts +1 -1
- package/dist/modules/workspace/pattern-matcher.contract.d.ts.map +1 -1
- package/dist/modules/workspace/pattern-matcher.contract.js +1 -1
- package/dist/modules/workspace/pattern-matcher.contract.js.map +1 -1
- package/dist/modules/workspace/routine-write-policy.js +1 -1
- package/dist/modules/workspace/routine-write-policy.js.map +1 -1
- package/dist/modules/workspace/startup/kb-git.js +1 -1
- package/dist/modules/workspace/startup/kb-git.js.map +1 -1
- package/dist/modules/workspace/startup/kb-startup-runner.d.ts.map +1 -1
- package/dist/modules/workspace/startup/kb-startup-runner.js +1 -2
- package/dist/modules/workspace/startup/kb-startup-runner.js.map +1 -1
- package/dist/modules/workspace/startup/steps/groups-to-plugins.step.js +2 -2
- package/dist/modules/workspace/startup/steps/groups-to-plugins.step.js.map +1 -1
- package/dist/modules/workspace/startup/steps/personal-spaces.step.js +2 -2
- package/dist/modules/workspace/startup/steps/personal-spaces.step.js.map +1 -1
- package/dist/modules/workspace/startup/steps/plugin-layout.js +1 -1
- package/dist/modules/workspace/startup/steps/plugin-layout.js.map +1 -1
- package/dist/modules/workspace/startup/steps/roles-yaml.step.js +1 -1
- package/dist/modules/workspace/startup/steps/roles-yaml.step.js.map +1 -1
- package/dist/modules/workspace/startup/steps/seed-tree.js +2 -2
- package/dist/modules/workspace/startup/steps/seed-tree.js.map +1 -1
- package/dist/modules/workspace/startup/steps/template-files.step.d.ts +1 -1
- package/dist/modules/workspace/startup/steps/template-files.step.d.ts.map +1 -1
- package/dist/modules/workspace/startup/steps/template-files.step.js +2 -2
- package/dist/modules/workspace/startup/steps/template-files.step.js.map +1 -1
- package/dist/modules/workspace/startup/steps/template-source.js +2 -2
- package/dist/modules/workspace/startup/steps/template-source.js.map +1 -1
- package/dist/modules/workspace/worker-pool.d.ts +100 -0
- package/dist/modules/workspace/worker-pool.d.ts.map +1 -0
- package/dist/modules/workspace/worker-pool.js +156 -0
- package/dist/modules/workspace/worker-pool.js.map +1 -0
- package/dist/modules/workspace/workspace.routes.d.ts +7 -8
- package/dist/modules/workspace/workspace.routes.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.routes.js +4 -6
- package/dist/modules/workspace/workspace.routes.js.map +1 -1
- package/dist/modules/workspace/workspace.service.d.ts +1 -1
- package/dist/modules/workspace/workspace.service.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.service.js +3 -6
- package/dist/modules/workspace/workspace.service.js.map +1 -1
- package/dist/modules/workspace/workspace.tools.d.ts +7 -7
- package/dist/modules/workspace/workspace.tools.d.ts.map +1 -1
- package/dist/modules/workspace/workspace.tools.js +45 -27
- package/dist/modules/workspace/workspace.tools.js.map +1 -1
- package/dist/modules/workspace/write-denial.d.ts +4 -4
- package/dist/modules/workspace/write-denial.d.ts.map +1 -1
- package/dist/modules/workspace/write-denial.js +2 -3
- package/dist/modules/workspace/write-denial.js.map +1 -1
- package/dist/modules/write-access/index.d.ts +8 -0
- package/dist/modules/write-access/index.d.ts.map +1 -0
- package/dist/modules/write-access/index.js +7 -0
- package/dist/modules/write-access/index.js.map +1 -0
- package/dist/shared/listener-seam.d.ts +34 -0
- package/dist/shared/listener-seam.d.ts.map +1 -0
- package/dist/shared/listener-seam.js +42 -0
- package/dist/shared/listener-seam.js.map +1 -0
- package/migrations/0019_oauth_token_rotated_at.sql +7 -0
- package/migrations/0020_change_request_body_is_the_description.sql +20 -0
- package/migrations/0021_data_migrations_ledger.sql +11 -0
- package/migrations/meta/0019_snapshot.json +2435 -0
- package/migrations/meta/0020_snapshot.json +2321 -0
- package/migrations/meta/0021_snapshot.json +2353 -0
- package/migrations/meta/_journal.json +21 -0
- package/package.json +3 -3
- package/src/core/__tests__/damaged-document.tools.test.ts +374 -0
- package/src/core/__tests__/public-config.test.ts +5 -0
- package/src/core/create-core-server.ts +32 -3
- package/src/core/create-core-services.ts +49 -5
- package/src/core/lifecycle.ts +10 -0
- package/src/core/public-config.ts +10 -0
- package/src/index.ts +7 -0
- package/src/modules/access/__tests__/access-requests.routes.test.ts +29 -15
- package/src/modules/access/access-control.service.ts +5 -6
- package/src/modules/access/access-declarations.ts +1 -1
- package/src/modules/access/access-mutation.service.ts +10 -4
- package/src/modules/access/access-requests.contract.ts +1 -1
- package/src/modules/access/access-requests.routes.ts +10 -15
- package/src/modules/access/access-requests.service.ts +29 -71
- package/src/modules/access/access-view.ts +1 -1
- package/src/modules/access/access.routes.ts +9 -11
- package/src/modules/access/admin-locked-commit.ts +3 -2
- package/src/modules/access/capability-registry.ts +1 -1
- package/src/modules/access/change-read-gate.ts +3 -5
- package/src/modules/access/creator-access.ts +3 -5
- package/src/modules/access/directory-sync-bot.ts +2 -2
- package/src/modules/access/groups-admin.routes.ts +3 -3
- package/src/modules/access/groups-admin.service.ts +3 -4
- package/src/modules/access/groups-edit.ts +2 -2
- package/src/modules/access/index.ts +17 -0
- package/src/modules/access/reference-scan.ts +1 -1
- package/src/modules/access/roles-admin.service.ts +3 -6
- package/src/modules/access/roles-edit.ts +1 -1
- package/src/modules/access/synced-groups-committer.ts +4 -4
- package/src/modules/access/synced-groups-writer.ts +2 -2
- package/src/modules/access/user-access-removal.service.ts +3 -6
- package/src/modules/access-model/index.ts +29 -0
- package/src/modules/access-model/roles-yaml-guard.ts +1 -1
- package/src/modules/admin/admin-access.routes.ts +1 -1
- package/src/modules/admin/admin-access.service.ts +2 -2
- package/src/modules/admin/index.ts +7 -0
- package/src/modules/agent-guide/__tests__/agent-guide.test.ts +5 -0
- package/src/modules/agent-guide/agent-guide.tools.ts +4 -6
- package/src/modules/agent-guide/agent-guide.ts +1 -1
- package/src/modules/agent-guide/index.ts +1 -1
- package/src/modules/agent-instructions/read-preamble.ts +1 -1
- package/src/modules/audit/agent-audit.service.ts +3 -3
- package/src/modules/audit/agent-connection.routes.ts +1 -1
- package/src/modules/audit/agent-rest-audit.middleware.ts +1 -1
- package/src/modules/audit/audit.routes.ts +4 -4
- package/src/modules/auth/__tests__/account-deactivation.test.ts +38 -2
- package/src/modules/auth/account-erasure.service.ts +4 -9
- package/src/modules/auth/account-hooks.ts +13 -21
- package/src/modules/auth/account-switch-lock.ts +2 -2
- package/src/modules/auth/account.routes.ts +3 -3
- package/src/modules/auth/auth.service.ts +23 -22
- package/src/modules/auth/index.ts +3 -0
- package/src/modules/auth/oidc-auth-provider.ts +1 -1
- package/src/modules/code-mode/code-mode.tool.ts +1 -1
- package/src/modules/connection-probe/connection-probe.service.ts +3 -6
- package/src/modules/database/__tests__/legacy-change-request-body.test.ts +118 -0
- package/src/modules/database/__tests__/legacy-request-bodies.pg.test.ts +258 -0
- package/src/modules/database/__tests__/pii-backfill.pg.test.ts +15 -18
- package/src/modules/database/core-schema.ts +59 -37
- package/src/modules/database/index.ts +9 -0
- package/src/modules/database/migrate.ts +79 -3
- package/src/modules/declared-variables/declared-variables.routes.ts +2 -2
- package/src/modules/diff/diff.routes.ts +5 -5
- package/src/modules/diff/diff.service.ts +2 -2
- package/src/modules/diff/index.ts +6 -0
- package/src/modules/embed/account-link.service.ts +2 -2
- package/src/modules/embed/embed.routes.ts +2 -2
- package/src/modules/embed/embed.service.ts +1 -1
- package/src/modules/embed/embed.tools.ts +6 -9
- package/src/modules/github-app/github-app.connection.ts +1 -1
- package/src/modules/github-app/github-app.routes.ts +3 -3
- package/src/modules/kb-fs/index.ts +11 -0
- package/src/modules/kb-fs/locking-filesystem.ts +1 -1
- package/src/modules/kb-sync/kb-sync.routes.ts +3 -3
- package/src/modules/kb-sync/kb-sync.service.ts +1 -1
- package/src/modules/kb-sync/sync-auth.ts +1 -1
- package/src/modules/kb-sync/sync-payload.ts +1 -1
- package/src/modules/marketplace/git-http.routes.ts +1 -1
- package/src/modules/marketplace/github-facade/github-facade-admin.routes.ts +1 -1
- package/src/modules/marketplace/github-facade/github-facade-codes.store.ts +2 -2
- package/src/modules/marketplace/github-facade/github-facade-credentials.service.ts +2 -2
- package/src/modules/marketplace/github-facade/github-facade.routes.ts +2 -2
- package/src/modules/marketplace/github-facade/github-facade.service.ts +2 -2
- package/src/modules/marketplace/marketplace-repo.service.ts +2 -2
- package/src/modules/mcp/__tests__/bevel-oauth-provider.pg.test.ts +279 -0
- package/src/modules/mcp/__tests__/bevel-oauth-provider.test.ts +190 -15
- package/src/modules/mcp/__tests__/read-only-hint.e2e.test.ts +213 -0
- package/src/modules/mcp/index.ts +7 -0
- package/src/modules/mcp/mcp-auth.middleware.ts +6 -7
- package/src/modules/mcp/mcp.routes.ts +3 -5
- package/src/modules/mcp/mcp.service.ts +30 -13
- package/src/modules/mcp/oauth/bevel-oauth-provider.ts +216 -50
- package/src/modules/mcp/oauth/oauth-consent.routes.ts +1 -1
- package/src/modules/onboarding/onboarding.routes.ts +1 -1
- package/src/modules/onboarding/starter-pack.service.ts +5 -6
- package/src/modules/plugins/__tests__/bundle-dialect.e2e.test.ts +2 -1
- package/src/modules/plugins/__tests__/plugin-links.service.test.ts +2 -1
- package/src/modules/plugins/compile/compile-marketplace.ts +2 -2
- package/src/modules/plugins/compile/marketplace-compiler.service.ts +3 -3
- package/src/modules/plugins/discovery/bundle-dialect/registry.ts +1 -1
- package/src/modules/plugins/index.ts +2 -0
- package/src/modules/plugins/join-proposals.ts +2 -2
- package/src/modules/plugins/join-request-jobs.service.ts +3 -3
- package/src/modules/plugins/join-request-records.store.ts +2 -2
- package/src/modules/plugins/join-requests.service.ts +4 -4
- package/src/modules/plugins/plugin-links.service.ts +10 -11
- package/src/modules/plugins/plugin-links.ts +4 -4
- package/src/modules/plugins/plugin-provision.service.ts +4 -5
- package/src/modules/plugins/plugin-rename.service.ts +3 -3
- package/src/modules/plugins/plugins.contract.ts +1 -1
- package/src/modules/plugins/plugins.routes.ts +4 -4
- package/src/modules/plugins/plugins.service.ts +5 -5
- package/src/modules/plugins/plugins.tools.ts +4 -4
- package/src/modules/plugins/teams.routes.ts +3 -3
- package/src/modules/secrets-vault/db-secrets-vault.service.ts +2 -2
- package/src/modules/secrets-vault/index.ts +2 -0
- package/src/modules/secrets-vault/secrets-vault.routes.ts +4 -4
- package/src/modules/settings/__tests__/deployment-settings.service.test.ts +88 -1
- package/src/modules/settings/connection-check.ts +1 -1
- package/src/modules/settings/deployment-settings.service.ts +44 -4
- package/src/modules/settings/git-root-folders.ts +1 -1
- package/src/modules/settings/index.ts +12 -0
- package/src/modules/settings/setup.routes.ts +5 -4
- package/src/modules/skills/__tests__/allowed-tools-warn.tools.test.ts +2 -2
- package/src/modules/skills/__tests__/skill-access-requests.routes.test.ts +6 -3
- package/src/modules/skills/allowed-tools-check.ts +2 -6
- package/src/modules/skills/index.ts +2 -0
- package/src/modules/skills/pending-skills.service.ts +3 -4
- package/src/modules/skills/skill-access-requests.routes.ts +10 -17
- package/src/modules/skills/skills.routes.ts +1 -1
- package/src/modules/skills/skills.service.ts +2 -2
- package/src/modules/skills/skills.tools.ts +5 -9
- package/src/modules/tool-auth/connection-key-rejection.ts +1 -1
- package/src/modules/tool-auth/connection-keys-admin.routes.ts +2 -2
- package/src/modules/tool-auth/external-api-key.service.ts +2 -2
- package/src/modules/tool-auth/index.ts +14 -0
- package/src/modules/tool-auth/tool-auth.middleware.ts +3 -3
- package/src/modules/tool-helpers/__tests__/agent-roles-write.test.ts +2 -2
- package/src/modules/tool-helpers/__tests__/can-write.tools.test.ts +2 -2
- package/src/modules/tool-helpers/__tests__/phase4-tools.test.ts +2 -2
- package/src/modules/tool-helpers/default-branch-write.ts +1 -1
- package/src/modules/tool-helpers/index.ts +5 -1
- package/src/modules/tool-helpers/route-argument-check.ts +1 -1
- package/src/modules/tool-helpers/route-tool-schemas.ts +1 -1
- package/src/modules/tool-helpers/tool-context.ts +8 -10
- package/src/modules/tool-helpers/tool-def.ts +7 -3
- package/src/modules/tool-helpers/tool-handler.ts +2 -2
- package/src/modules/tool-helpers/tool.contract.ts +2 -2
- package/src/modules/tool-helpers/validate-token.ts +2 -3
- package/src/modules/tool-manuals/index.ts +6 -0
- package/src/modules/tool-manuals/mcp-server-edit.service.ts +2 -2
- package/src/modules/tool-manuals/pending-tools.service.ts +2 -2
- package/src/modules/tool-manuals/tool-delete.service.ts +5 -6
- package/src/modules/tool-manuals/tool-manuals.routes.ts +5 -5
- package/src/modules/tool-manuals/tool-manuals.service.ts +3 -3
- package/src/modules/tool-manuals/tool-manuals.tools.ts +4 -6
- package/src/modules/tool-registry/__tests__/read-only-hints.test.ts +439 -0
- package/src/modules/tool-registry/__tests__/tool-registry.test.ts +9 -2
- package/src/modules/tool-registry/description-length.ts +2 -2
- package/src/modules/tool-registry/index.ts +22 -0
- package/src/modules/tool-registry/manual.routes.ts +14 -8
- package/src/modules/tool-registry/read-only-hints.contract.ts +54 -0
- package/src/modules/tool-registry/read-only-hints.ts +225 -0
- package/src/modules/tool-registry/tool.contract.ts +11 -0
- package/src/modules/update-check/update-check.routes.ts +2 -2
- package/src/modules/workflow/__tests__/change-request-hooks.test.ts +62 -0
- package/src/modules/workflow/__tests__/event-bus.test.ts +14 -2
- package/src/modules/workflow/__tests__/events-delivery.test.ts +778 -0
- package/src/modules/workflow/__tests__/workflow.routes.open-change-request.test.ts +79 -0
- package/src/modules/workflow/__tests__/workflow.service.delete-branch.test.ts +9 -1
- package/src/modules/workflow/__tests__/workflow.service.facade.test.ts +342 -22
- package/src/modules/workflow/__tests__/workflow.service.update-change-request.pg.test.ts +120 -0
- package/src/modules/workflow/__tests__/workflow.service.update-change-request.test.ts +346 -0
- package/src/modules/workflow/agent-tools/__tests__/change-request-read-shape.test.ts +32 -209
- package/src/modules/workflow/agent-tools/__tests__/change-request-read.tools.test.ts +16 -245
- package/src/modules/workflow/agent-tools/__tests__/update-change-request.parity.test.ts +306 -0
- package/src/modules/workflow/agent-tools/__tests__/workflow.tools.test.ts +43 -57
- package/src/modules/workflow/agent-tools/change-request-read-shape.ts +18 -153
- package/src/modules/workflow/agent-tools/change-request-read.tools.ts +24 -96
- package/src/modules/workflow/agent-tools/change-request-summary.ts +26 -3
- package/src/modules/workflow/agent-tools/workflow.tools.ts +55 -75
- package/src/modules/workflow/change-request-hooks.ts +96 -0
- package/src/modules/workflow/event-bus.ts +3 -1
- package/src/modules/workflow/events-delivery.ts +278 -0
- package/src/modules/workflow/events.routes.ts +30 -9
- package/src/modules/workflow/file-lock.service.ts +2 -2
- package/src/modules/workflow/git/__tests__/pull-request.service.getPrDetail.test.ts +24 -9
- package/src/modules/workflow/git/git.service.ts +5 -8
- package/src/modules/workflow/git/node-git-runner.ts +1 -1
- package/src/modules/workflow/git/pull-request.service.ts +44 -29
- package/src/modules/workflow/index.ts +15 -2
- package/src/modules/workflow/pending-commits.service.ts +2 -2
- package/src/modules/workflow/read-on-branch.ts +1 -1
- package/src/modules/workflow/recovery-bot.ts +2 -2
- package/src/modules/workflow/review-workflow/approval-lock.ts +1 -1
- package/src/modules/workflow/review-workflow/review-workflow.interface.ts +3 -35
- package/src/modules/workflow/review-workflow/review-workflow.service.ts +6 -165
- package/src/modules/workflow/workflow.routes.ts +46 -100
- package/src/modules/workflow/workflow.service.ts +444 -215
- package/src/modules/workspace/__tests__/agent-downloads.test.ts +2 -1
- package/src/modules/workspace/__tests__/agent-uploads.test.ts +87 -1
- package/src/modules/workspace/__tests__/escape-sequences.routes.test.ts +2 -1
- package/src/modules/workspace/__tests__/file-stat-access.test.ts +2 -1
- package/src/modules/workspace/__tests__/git-internals.security.test.ts +2 -1
- package/src/modules/workspace/__tests__/rest-tool-arguments.test.ts +2 -1
- package/src/modules/workspace/__tests__/worker-pool.test.ts +118 -0
- package/src/modules/workspace/__tests__/workspace-paths-inside-the-repo.test.ts +3 -2
- package/src/modules/workspace/__tests__/workspace.service.ensure-remotes-fetched.test.ts +30 -0
- package/src/modules/workspace/__tests__/workspace.tools.agents-file.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.tools.branch-errors.test.ts +2 -1
- package/src/modules/workspace/__tests__/workspace.tools.test.ts +30 -4
- package/src/modules/workspace/agent-access.gate.ts +3 -3
- package/src/modules/workspace/agent-download.builder.ts +1 -1
- package/src/modules/workspace/agent-upload.routes.ts +19 -0
- package/src/modules/workspace/agent-upload.store.ts +18 -0
- package/src/modules/workspace/bounded-matcher.ts +32 -89
- package/src/modules/workspace/file-readers/README.md +9 -0
- package/src/modules/workspace/file-readers/__tests__/doc-extract.service.test.ts +165 -0
- package/src/modules/workspace/file-readers/__tests__/doc-extract.test.ts +21 -16
- package/src/modules/workspace/file-readers/__tests__/extract-in-worker.test.ts +229 -0
- package/src/modules/workspace/file-readers/__tests__/file-reader.registry.test.ts +2 -1
- package/src/modules/workspace/file-readers/__tests__/fixtures/damaged-pdf.ts +34 -0
- package/src/modules/workspace/file-readers/__tests__/fixtures/misbehaving-extract.worker.ts +57 -0
- package/src/modules/workspace/file-readers/__tests__/fixtures/pdf-in-trouble.worker.ts +20 -0
- package/src/modules/workspace/file-readers/__tests__/fixtures/unloadable-extract.worker.ts +2 -0
- package/src/modules/workspace/file-readers/doc-extract.service.ts +95 -20
- package/src/modules/workspace/file-readers/doc-extract.types.ts +13 -3
- package/src/modules/workspace/file-readers/document-extractor.contract.ts +42 -0
- package/src/modules/workspace/file-readers/document-extractors.ts +28 -0
- package/src/modules/workspace/file-readers/document-formats.ts +13 -0
- package/src/modules/workspace/file-readers/document-reader.ts +40 -36
- package/src/modules/workspace/file-readers/extract-in-worker.ts +183 -0
- package/src/modules/workspace/file-readers/extract-pdf.ts +23 -4
- package/src/modules/workspace/file-readers/extract.worker.ts +5 -0
- package/src/modules/workspace/file-readers/extraction-cache.ts +33 -12
- package/src/modules/workspace/file-readers/extraction-worker.ts +86 -0
- package/src/modules/workspace/file-readers/file-reader.registry.ts +6 -20
- package/src/modules/workspace/file-readers/file-reader.ts +14 -4
- package/src/modules/workspace/first-run.ts +1 -1
- package/src/modules/workspace/git-internals.middleware.ts +1 -1
- package/src/modules/workspace/index.ts +17 -0
- package/src/modules/workspace/kb-repository.ts +3 -2
- package/src/modules/workspace/not-found.ts +1 -1
- package/src/modules/workspace/pattern-matcher.contract.ts +1 -1
- package/src/modules/workspace/routine-write-policy.ts +1 -1
- package/src/modules/workspace/startup/kb-git.ts +1 -1
- package/src/modules/workspace/startup/kb-startup-runner.ts +1 -2
- package/src/modules/workspace/startup/steps/groups-to-plugins.step.ts +3 -3
- package/src/modules/workspace/startup/steps/personal-spaces.step.ts +2 -2
- package/src/modules/workspace/startup/steps/plugin-layout.ts +1 -1
- package/src/modules/workspace/startup/steps/roles-yaml.step.ts +1 -1
- package/src/modules/workspace/startup/steps/seed-tree.ts +2 -2
- package/src/modules/workspace/startup/steps/template-files.step.ts +2 -2
- package/src/modules/workspace/startup/steps/template-source.ts +2 -2
- package/src/modules/workspace/worker-pool.ts +193 -0
- package/src/modules/workspace/workspace.routes.ts +9 -12
- package/src/modules/workspace/workspace.service.ts +4 -7
- package/src/modules/workspace/workspace.tools.ts +53 -34
- package/src/modules/workspace/write-denial.ts +4 -5
- package/src/modules/write-access/index.ts +7 -0
- package/src/shared/__tests__/module-boundaries.lint.test.ts +301 -0
- package/src/shared/listener-seam.ts +52 -0
- package/src/modules/workflow/__tests__/format-affected-owners.test.ts +0 -85
|
@@ -17,15 +17,13 @@ import type {
|
|
|
17
17
|
GrantPrincipal,
|
|
18
18
|
GrantSources,
|
|
19
19
|
} from './access-control.interface.js';
|
|
20
|
-
import type { WorkspaceService } from '../workspace/
|
|
20
|
+
import type { WorkspaceService } from '../workspace/index.js';
|
|
21
21
|
import type { KbContext } from '../../shared/kb-context.js';
|
|
22
22
|
import { branchForWorkspaceId } from '../../shared/workspace-id.js';
|
|
23
|
-
import type { AuthService } from '../auth/
|
|
24
|
-
import type {
|
|
25
|
-
import type { WorkflowService } from '../workflow/workflow.service.js';
|
|
26
|
-
import type { WorkflowEventBus } from '../workflow/event-bus.js';
|
|
23
|
+
import type { AuthService, IAccountSwitchGuard } from '../auth/index.js';
|
|
24
|
+
import type { WorkflowService, WorkflowEventBus } from '../workflow/index.js';
|
|
27
25
|
import { WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
28
|
-
import { AccessDeniedError } from '../access-model/
|
|
26
|
+
import { AccessDeniedError } from '../access-model/index.js';
|
|
29
27
|
import {
|
|
30
28
|
AccessMutationService,
|
|
31
29
|
AccessMutationError,
|
|
@@ -43,17 +41,17 @@ import {
|
|
|
43
41
|
ROLE_TOKEN_PREFIX,
|
|
44
42
|
type PluginTokenVerb,
|
|
45
43
|
type Verb,
|
|
46
|
-
} from '../access-model/
|
|
44
|
+
} from '../access-model/index.js';
|
|
47
45
|
import { listAccessDeclarationsUnder } from './access-declarations.js';
|
|
48
46
|
import { emailsInView, holderPrincipals, labelAccountHolders, resolveAccessView } from './access-view.js';
|
|
49
47
|
import type { AccessView, LabelledAccessView } from './access-view.js';
|
|
50
48
|
import { toHttpError as sharedToHttpError, requireNonEmptyString as sharedRequireNonEmptyString } from './admin-route-helpers.js';
|
|
51
49
|
import { RolesAdminService } from './roles-admin.service.js';
|
|
52
|
-
import type { Principal } from '../access-model/
|
|
53
|
-
import type { Database } from '../database/
|
|
54
|
-
import { users } from '../database/
|
|
50
|
+
import type { Principal } from '../access-model/index.js';
|
|
51
|
+
import type { Database } from '../database/index.js';
|
|
52
|
+
import { users } from '../database/index.js';
|
|
55
53
|
import { canonicalEmail } from '../../shared/email-identity.js';
|
|
56
|
-
import '../auth/
|
|
54
|
+
import '../auth/index.js';
|
|
57
55
|
|
|
58
56
|
/** Verbs the share UI may grant. Verbs are independent — `download` is grantable on its own. */
|
|
59
57
|
const GRANTABLE_VERBS = new Set<string>(['read', 'write', 'owner', 'download']);
|
|
@@ -48,8 +48,9 @@
|
|
|
48
48
|
import path from 'node:path';
|
|
49
49
|
import { logger } from '../../shared/logging.js';
|
|
50
50
|
|
|
51
|
-
import {
|
|
52
|
-
import {
|
|
51
|
+
import { type WriteValidator, LockingFilesystem } from '../kb-fs/index.js';
|
|
52
|
+
import type { WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
53
|
+
import { PushNeedsAgentResolutionError } from '../../shared/domain-errors.js';
|
|
53
54
|
import { isAbsence } from '../../shared/fs.contract.js';
|
|
54
55
|
import type { AuthUser, IWorkspaceService, IWorkflowService } from '@bevel-software/platform-shared';
|
|
55
56
|
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
* really a group; the roles admin surface flags it with a convert action.
|
|
19
19
|
*/
|
|
20
20
|
|
|
21
|
-
import { ADMIN_CANONICAL, canonicalRoleName } from '../access-model/
|
|
21
|
+
import { ADMIN_CANONICAL, canonicalRoleName } from '../access-model/index.js';
|
|
22
22
|
|
|
23
23
|
/** A capability an app surface gates on. Grow this union with the gates. */
|
|
24
24
|
export type Capability =
|
|
@@ -18,12 +18,10 @@ import path from 'node:path';
|
|
|
18
18
|
import { creatableRootDirNames, type KbLayout } from '@bevel-software/platform-shared';
|
|
19
19
|
import type { IFsProbe } from '../../shared/fs.contract.js';
|
|
20
20
|
import type { KbContext } from '../../shared/kb-context.js';
|
|
21
|
-
import type { WorkspaceService } from '../workspace/
|
|
21
|
+
import type { WorkspaceService } from '../workspace/index.js';
|
|
22
22
|
import type { IAccessControl } from './access-control.interface.js';
|
|
23
|
-
import { AccessConfigError, AccessDeniedError } from '../access-model/
|
|
24
|
-
import {
|
|
25
|
-
import { toKbRelative } from '../access-model/kb-read-filter.js';
|
|
26
|
-
import type { ChangeReadVerdict, ChangeTargetKind, IChangeReadGate } from '../access-model/change-gate.js';
|
|
23
|
+
import { AccessConfigError, AccessDeniedError, SYNCED_GROUPS_YAML, toKbRelative } from '../access-model/index.js';
|
|
24
|
+
import type { ChangeReadVerdict, ChangeTargetKind, IChangeReadGate } from '../access-model/index.js';
|
|
27
25
|
|
|
28
26
|
/**
|
|
29
27
|
* Whether `kbRel` (repo-relative) is, or lies inside, a folder directly under
|
|
@@ -34,17 +34,15 @@ const log = logger('creator-access');
|
|
|
34
34
|
|
|
35
35
|
import type { IFsProbe } from '../../shared/fs.contract.js';
|
|
36
36
|
import type { KbContext } from '../../shared/kb-context.js';
|
|
37
|
-
import type { WorkspaceService } from '../workspace/
|
|
37
|
+
import type { WorkspaceService } from '../workspace/index.js';
|
|
38
38
|
import type { IAccessControl } from './access-control.interface.js';
|
|
39
|
-
import { spliceGrant, type Principal } from '../access-model/
|
|
40
|
-
import { isAccessMdPath } from '../access-model/access-grammar.js';
|
|
41
|
-
import { toKbRelative } from '../access-model/kb-read-filter.js';
|
|
39
|
+
import { spliceGrant, type Principal, isAccessMdPath, toKbRelative } from '../access-model/index.js';
|
|
42
40
|
import {
|
|
43
41
|
creatorPrincipal,
|
|
44
42
|
type CreationGrantPlan,
|
|
45
43
|
type Creator,
|
|
46
44
|
type ICreatorAccess,
|
|
47
|
-
} from '../access-model/
|
|
45
|
+
} from '../access-model/index.js';
|
|
48
46
|
|
|
49
47
|
export class CreatorAccessService implements ICreatorAccess {
|
|
50
48
|
constructor(
|
|
@@ -3,8 +3,8 @@ import { logger } from '../../shared/logging.js';
|
|
|
3
3
|
|
|
4
4
|
const log = logger('directory-sync');
|
|
5
5
|
import type { AuthUser } from '@bevel-software/platform-shared';
|
|
6
|
-
import type { Database } from '../database/
|
|
7
|
-
import { users } from '../database/
|
|
6
|
+
import type { Database } from '../database/index.js';
|
|
7
|
+
import { users } from '../database/index.js';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Synthetic identity for the synced-groups materializer's commits: every
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import type { AuthUser } from '@bevel-software/platform-shared';
|
|
3
|
-
import type { IAdminAccessService } from '../admin/
|
|
4
|
-
import { canonicalRoleName } from '../access-model/
|
|
3
|
+
import type { IAdminAccessService } from '../admin/index.js';
|
|
4
|
+
import { canonicalRoleName } from '../access-model/index.js';
|
|
5
5
|
import { sendError as sharedSendError, requireNonEmptyString as sharedRequireNonEmptyString } from './admin-route-helpers.js';
|
|
6
6
|
import type { GroupsAdminService } from './groups-admin.service.js';
|
|
7
|
-
import '../auth/
|
|
7
|
+
import '../auth/index.js'; // Express Request augmentation
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Admin surface for GROUPS — the "who you are" half of the roles/groups
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
*/
|
|
27
27
|
|
|
28
28
|
import { workspaceIdForBranch } from '../../shared/workspace-id.js';
|
|
29
|
-
import type { WorkflowEventBus } from '../workflow/
|
|
29
|
+
import type { WorkflowEventBus } from '../workflow/index.js';
|
|
30
30
|
import type { AuthUser, IWorkspaceService, IWorkflowService } from '@bevel-software/platform-shared';
|
|
31
31
|
import { WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
32
32
|
import type { IAccessControl } from './access-control.interface.js';
|
|
@@ -34,11 +34,10 @@ import {
|
|
|
34
34
|
GROUP_REF_PREFIX,
|
|
35
35
|
canonicalRoleName,
|
|
36
36
|
hasAccessFrontmatterExtension,
|
|
37
|
-
} from '../access-model/
|
|
37
|
+
} from '../access-model/index.js';
|
|
38
38
|
import { loadActiveGroups, type GroupsHealth } from './access-control.service.js';
|
|
39
|
-
import { GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile } from '../access-model/
|
|
39
|
+
import { GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile, makeRolesYamlWriteValidator } from '../access-model/index.js';
|
|
40
40
|
import { parseRolesModel, removeGroupRefsEverywhere, renameGroupRefs, isGroupRefMember } from './roles-edit.js';
|
|
41
|
-
import { makeRolesYamlWriteValidator } from '../access-model/roles-yaml-guard.js';
|
|
42
41
|
import {
|
|
43
42
|
GroupsEditError,
|
|
44
43
|
parseGroupsModel,
|
|
@@ -20,8 +20,8 @@ import {
|
|
|
20
20
|
EMAIL_REGEX,
|
|
21
21
|
GROUP_REF_PREFIX,
|
|
22
22
|
RESERVED_ROLE_NAMES,
|
|
23
|
-
} from '../access-model/
|
|
24
|
-
import { GROUPS_YAML, parseGroupsFile, unsafeNameReason } from '../access-model/
|
|
23
|
+
} from '../access-model/index.js';
|
|
24
|
+
import { GROUPS_YAML, parseGroupsFile, unsafeNameReason } from '../access-model/index.js';
|
|
25
25
|
|
|
26
26
|
/** Bad-input failure when editing groups.yaml. */
|
|
27
27
|
export class GroupsEditError extends Error {
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the access module offers the other modules: the contract of the access
|
|
3
|
+
* service — who may read, write and own what. The implementation is wired by
|
|
4
|
+
* the composition root.
|
|
5
|
+
*/
|
|
6
|
+
export type { IAccessControl } from './access-control.interface.js';
|
|
7
|
+
// Reached by other modules; exported here so they stop importing the files.
|
|
8
|
+
export type { AccessDecisionSource, AccessTargetKind } from './access-control.interface.js';
|
|
9
|
+
export { accessMdPathForFolder, fileCarriesAccessRules, governingFolderOf } from './access-mutation.service.js';
|
|
10
|
+
export type { AccessMutationService, IAccessMutation, TargetKind } from './access-mutation.service.js';
|
|
11
|
+
export { folderTarget, rulesFileFor } from './access-requests.contract.js';
|
|
12
|
+
export type { AccessRequestTarget, IAccessRequestLifecycle } from './access-requests.contract.js';
|
|
13
|
+
export type { AccessRequestsService, IAccessRequests } from './access-requests.service.js';
|
|
14
|
+
export { accessRoster, resolveAccessView } from './access-view.js';
|
|
15
|
+
export { sendError } from './admin-route-helpers.js';
|
|
16
|
+
export { DIRECTORY_SYNC_BOT_EMAIL } from './directory-sync-bot.js';
|
|
17
|
+
export type { UserAccessRemovalService } from './user-access-removal.service.js';
|
|
@@ -36,7 +36,7 @@ import { workspaceIdForBranch } from '../../shared/workspace-id.js';
|
|
|
36
36
|
import { logger } from '../../shared/logging.js';
|
|
37
37
|
|
|
38
38
|
const log = logger('roles.recover');
|
|
39
|
-
import type { WorkflowEventBus } from '../workflow/
|
|
39
|
+
import type { WorkflowEventBus } from '../workflow/index.js';
|
|
40
40
|
import type { AuthUser, IWorkspaceService, IWorkflowService } from '@bevel-software/platform-shared';
|
|
41
41
|
import { WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
42
42
|
import type { IAccessControl } from './access-control.interface.js';
|
|
@@ -45,10 +45,9 @@ import {
|
|
|
45
45
|
ROLE_TOKEN_PREFIX,
|
|
46
46
|
canonicalRoleName,
|
|
47
47
|
canonicalEmail,
|
|
48
|
-
} from '../access-model/
|
|
48
|
+
} from '../access-model/index.js';
|
|
49
49
|
import { loadActiveGroups } from './access-control.service.js';
|
|
50
|
-
import { makeRolesYamlWriteValidator } from '../access-model/
|
|
51
|
-
import { renderRolesYaml } from '../access-model/render-roles-yaml.js';
|
|
50
|
+
import { makeRolesYamlWriteValidator, renderRolesYaml, GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile, GROUP_REF_PREFIX, RESERVED_ROLE_NAMES } from '../access-model/index.js';
|
|
52
51
|
import {
|
|
53
52
|
parseRolesModel,
|
|
54
53
|
deleteRole as editDeleteRole,
|
|
@@ -60,7 +59,6 @@ import {
|
|
|
60
59
|
RolesEditError,
|
|
61
60
|
type EditResult,
|
|
62
61
|
} from './roles-edit.js';
|
|
63
|
-
import { GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile } from '../access-model/group-files.js';
|
|
64
62
|
import {
|
|
65
63
|
GroupsEditError,
|
|
66
64
|
assertSafeGroupDisplayName,
|
|
@@ -68,7 +66,6 @@ import {
|
|
|
68
66
|
parseGroupsModel,
|
|
69
67
|
} from './groups-edit.js';
|
|
70
68
|
import { capabilityRoleFor, isLegacyPeopleSetRole } from './capability-registry.js';
|
|
71
|
-
import { GROUP_REF_PREFIX, RESERVED_ROLE_NAMES } from '../access-model/access-grammar.js';
|
|
72
69
|
import { AdminLockedCommits } from './admin-locked-commit.js';
|
|
73
70
|
import { KbReferenceScanner } from './reference-scan.js';
|
|
74
71
|
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
canonicalEmail,
|
|
40
40
|
EMAIL_REGEX,
|
|
41
41
|
GROUP_REF_PREFIX,
|
|
42
|
-
} from '../access-model/
|
|
42
|
+
} from '../access-model/index.js';
|
|
43
43
|
|
|
44
44
|
/** Bad-input failure when editing roles.yaml (invalid name/email, unknown role). */
|
|
45
45
|
export class RolesEditError extends Error {
|
|
@@ -3,12 +3,12 @@ import { logger } from '../../shared/logging.js';
|
|
|
3
3
|
|
|
4
4
|
const log = logger('directory-sync');
|
|
5
5
|
import type { AuthUser, IWorkflowService } from '@bevel-software/platform-shared';
|
|
6
|
-
import type { WorkspaceService } from '../workspace/
|
|
6
|
+
import type { WorkspaceService } from '../workspace/index.js';
|
|
7
7
|
import { workspaceIdForBranch } from '../../shared/workspace-id.js';
|
|
8
8
|
import type { AccessControlService } from './access-control.service.js';
|
|
9
|
-
import { SYNCED_GROUPS_YAML } from '../access-model/
|
|
10
|
-
import type { WorkflowEventBus } from '../workflow/
|
|
11
|
-
import { LockingFilesystem } from '../kb-fs/
|
|
9
|
+
import { SYNCED_GROUPS_YAML } from '../access-model/index.js';
|
|
10
|
+
import type { WorkflowEventBus } from '../workflow/index.js';
|
|
11
|
+
import { LockingFilesystem } from '../kb-fs/index.js';
|
|
12
12
|
import { PushNeedsAgentResolutionError, WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
13
13
|
import { isAbsence } from '../../shared/fs.contract.js';
|
|
14
14
|
import type { SyncedGroupsWriterDeps } from './synced-groups-writer.js';
|
|
@@ -4,8 +4,8 @@ import {
|
|
|
4
4
|
canonicalEmail,
|
|
5
5
|
canonicalRoleName,
|
|
6
6
|
RESERVED_ROLE_NAMES,
|
|
7
|
-
} from '../access-model/
|
|
8
|
-
import { unsafeNameReason } from '../access-model/
|
|
7
|
+
} from '../access-model/index.js';
|
|
8
|
+
import { unsafeNameReason } from '../access-model/index.js';
|
|
9
9
|
import { printable } from '../../shared/printable.js';
|
|
10
10
|
|
|
11
11
|
/**
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
*/
|
|
38
38
|
|
|
39
39
|
import { workspaceIdForBranch } from '../../shared/workspace-id.js';
|
|
40
|
-
import type { WorkflowEventBus } from '../workflow/
|
|
40
|
+
import type { WorkflowEventBus } from '../workflow/index.js';
|
|
41
41
|
import type { AuthUser, IWorkspaceService, IWorkflowService } from '@bevel-software/platform-shared';
|
|
42
42
|
import { PushNeedsAgentResolutionError, WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
43
43
|
import type { IAccessControl } from './access-control.interface.js';
|
|
@@ -55,11 +55,8 @@ import {
|
|
|
55
55
|
stripComment,
|
|
56
56
|
type ParsedEntry,
|
|
57
57
|
type Verb,
|
|
58
|
-
} from '../access-model/
|
|
59
|
-
import { spliceRevoke } from '../access-model/
|
|
60
|
-
import { scanFrontmatter } from '../access-model/frontmatter-lines.js';
|
|
61
|
-
import { GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile } from '../access-model/group-files.js';
|
|
62
|
-
import { makeRolesYamlWriteValidator } from '../access-model/roles-yaml-guard.js';
|
|
58
|
+
} from '../access-model/index.js';
|
|
59
|
+
import { spliceRevoke, scanFrontmatter, GROUPS_YAML, SYNCED_GROUPS_YAML, validateGroupsFile, makeRolesYamlWriteValidator } from '../access-model/index.js';
|
|
63
60
|
import { emitRolesModel, isGroupRefMember, parseRolesModel } from './roles-edit.js';
|
|
64
61
|
import { emitGroupsModel, parseGroupsModel } from './groups-edit.js';
|
|
65
62
|
import { AdminLockedCommits, type LockedWrite } from './admin-locked-commit.js';
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The access model's public entry: what another module imports of it.
|
|
3
|
+
*
|
|
4
|
+
* The module is the grammar of `access.md` (how principals, roles, groups
|
|
5
|
+
* and verbs are spelled), the errors a refused access is reported with, the
|
|
6
|
+
* gate a change is read through, and the single-path read verdict every
|
|
7
|
+
* surface shares, so a module that must hide what a person may not read asks
|
|
8
|
+
* the same question the file routes ask. A consumer outside the module
|
|
9
|
+
* imports from here, not from the files; the files are the module's own
|
|
10
|
+
* layout and free to move. The `access` module's own files predate this
|
|
11
|
+
* entry and still import the files directly — they move here as they are
|
|
12
|
+
* touched.
|
|
13
|
+
*/
|
|
14
|
+
export * from './access-grammar.js';
|
|
15
|
+
export * from './access-errors.js';
|
|
16
|
+
export type { ChangeReadVerdict, ChangeTargetKind, IChangeReadGate } from './change-gate.js';
|
|
17
|
+
export { canReadWorkspacePath } from './kb-read-filter.js';
|
|
18
|
+
// Reached by other modules; exported here so they stop importing the files.
|
|
19
|
+
export { AccessSpliceError, spliceGrant, spliceRevoke, validatePrincipal } from './access-splice.js';
|
|
20
|
+
export type { Principal, TokenMatch } from './access-splice.js';
|
|
21
|
+
export { creatorPrincipal } from './creator.js';
|
|
22
|
+
export type { CreationGrantPlan, Creator, ICreatorAccess } from './creator.js';
|
|
23
|
+
export { scanFrontmatter } from './frontmatter-lines.js';
|
|
24
|
+
export { GROUPS_YAML, SYNCED_GROUPS_YAML, parseGroupsFile, unsafeNameReason, validateGroupsFile } from './group-files.js';
|
|
25
|
+
export type { GroupsIndex } from './group-files.js';
|
|
26
|
+
export { resolveReadableMap, toKbRelative } from './kb-read-filter.js';
|
|
27
|
+
export { synthesizePluginPrincipals } from './plugin-principals.js';
|
|
28
|
+
export { renderRolesYaml } from './render-roles-yaml.js';
|
|
29
|
+
export { ROLES_YAML_BASENAME, assertRolesYamlParsable, isRolesYamlPath, makeAgentRolesYamlWriteValidator, makeRolesYamlWriteValidator } from './roles-yaml-guard.js';
|
|
@@ -25,7 +25,7 @@ import type { FileContent } from '@mastra/core/workspace';
|
|
|
25
25
|
import { GROUP_REF_PREFIX, canonicalRoleName, parseRolesYaml, parseYamlSubset } from './access-grammar.js';
|
|
26
26
|
import type { GroupsIndex } from './group-files.js';
|
|
27
27
|
import { WorkflowDomainError } from '../../shared/domain-errors.js';
|
|
28
|
-
import type { WriteValidator } from '../kb-fs/
|
|
28
|
+
import type { WriteValidator } from '../kb-fs/index.js';
|
|
29
29
|
|
|
30
30
|
/** Repo-relative basename of the roles file (it lives at the KB repo root). */
|
|
31
31
|
export const ROLES_YAML_BASENAME = 'roles.yaml';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import type { IAdminAccessService } from './admin.interface.js';
|
|
3
|
-
import '../auth/
|
|
3
|
+
import '../auth/index.js'; // Express Request augmentation
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* The CORE slice of the admin surface: just the admin-status resolver the
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import type { IAccessControl } from '../access/
|
|
1
|
+
import type { IAccessControl } from '../access/index.js';
|
|
2
2
|
import { logger } from '../../shared/logging.js';
|
|
3
3
|
|
|
4
4
|
const log = logger('admin');
|
|
5
|
-
import { type WorkspaceService } from '../workspace/
|
|
5
|
+
import { type WorkspaceService } from '../workspace/index.js';
|
|
6
6
|
import { workspaceIdForBranch } from '../../shared/workspace-id.js';
|
|
7
7
|
import { canonicalEmail } from '../../shared/email-identity.js';
|
|
8
8
|
import type { IAdminAccessService } from './admin.interface.js';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What the admin module offers the other modules: the contract of the
|
|
3
|
+
* deployment admin check — a person is an admin iff they hold the `Admin`
|
|
4
|
+
* role in the knowledge base's `roles.yaml`. Routes that gate on it take the
|
|
5
|
+
* contract; the implementation is wired by the composition root.
|
|
6
|
+
*/
|
|
7
|
+
export type { IAdminAccessService } from './admin.interface.js';
|
|
@@ -387,6 +387,11 @@ describe('the HTML views section', () => {
|
|
|
387
387
|
}
|
|
388
388
|
expect(text).toContain('`window.bevel.tools` is `null` wherever tools are not available');
|
|
389
389
|
expect(text).toContain('Check it before every use');
|
|
390
|
+
// The skill page answers a page's tools as the file page does
|
|
391
|
+
// (htmlToolBridge.ts's host list): the guide says so, and never that a
|
|
392
|
+
// skill page leaves `tools` null.
|
|
393
|
+
expect(text).toContain("on the app's file page and on a skill's page");
|
|
394
|
+
expect(text).not.toMatch(/on a skill page and in any preview/);
|
|
390
395
|
expect(text).toContain('**Reading runs at once; writing asks first.**');
|
|
391
396
|
expect(text).toContain('"<page name> wants to write to the knowledge base"');
|
|
392
397
|
expect(text).toContain('Allow while open and Deny');
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import type { Router, RequestHandler } from 'express';
|
|
2
|
-
import type { IToolRegistry, UtcpTool } from '../tool-registry/
|
|
3
|
-
import { GET_AGENT_GUIDE_TOOL } from '../tool-registry/
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { toolDef } from '../tool-helpers/tool-def.js';
|
|
7
|
-
import type { ToolHandlerFactory } from '../tool-helpers/tool-handler.js';
|
|
2
|
+
import type { IToolRegistry, UtcpTool } from '../tool-registry/index.js';
|
|
3
|
+
import { GET_AGENT_GUIDE_TOOL, TOOL_DESCRIPTION_CAP } from '../tool-registry/index.js';
|
|
4
|
+
import { ToolError, toolDef } from '../tool-helpers/index.js';
|
|
5
|
+
import type { ToolHandlerFactory } from '../tool-helpers/index.js';
|
|
8
6
|
import { AGENT_GUIDE_FILE, joinGuideSections, type AgentGuideSectionsReader } from './agent-guide.js';
|
|
9
7
|
|
|
10
8
|
export { GET_AGENT_GUIDE_TOOL };
|
|
@@ -35,7 +35,7 @@ import {
|
|
|
35
35
|
type KbLayout,
|
|
36
36
|
} from '@bevel-software/platform-shared';
|
|
37
37
|
import { agentGuideDir } from '../../assets.js';
|
|
38
|
-
import { sharedFileRulesSection } from '../agent-instructions/
|
|
38
|
+
import { sharedFileRulesSection } from '../agent-instructions/index.js';
|
|
39
39
|
|
|
40
40
|
/** One section of the guide. */
|
|
41
41
|
export interface AgentGuideSection {
|
|
@@ -19,4 +19,4 @@ export {
|
|
|
19
19
|
type RenderedGuideSection,
|
|
20
20
|
} from './agent-guide.js';
|
|
21
21
|
export { GET_AGENT_GUIDE_TOOL, registerAgentGuideTool } from './agent-guide.tools.js';
|
|
22
|
-
export { GUIDE_FIRST_SENTENCE, withGuideFirst } from '../tool-registry/
|
|
22
|
+
export { GUIDE_FIRST_SENTENCE, withGuideFirst } from '../tool-registry/index.js';
|
|
@@ -2,7 +2,7 @@ import fs from 'node:fs/promises';
|
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import type { KbContext } from '../../shared/kb-context.js';
|
|
4
4
|
import { isAbsence, type IFsProbe } from '../../shared/fs.contract.js';
|
|
5
|
-
import type { WorkspaceService } from '../workspace/
|
|
5
|
+
import type { WorkspaceService } from '../workspace/index.js';
|
|
6
6
|
import { PREAMBLE_FILE } from './compose.js';
|
|
7
7
|
|
|
8
8
|
/** The one reader both the hosted proxy and the agent-facing route call. */
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { and, count, desc, eq, isNotNull, isNull, lt, max, min, or, type SQL } from 'drizzle-orm';
|
|
2
2
|
import { logger } from '../../shared/logging.js';
|
|
3
|
-
import type { Database } from '../database/
|
|
4
|
-
import { agentConnections, agentEvents, externalApiKeys, oauthTokens, users } from '../database/
|
|
5
|
-
import type { IExternalApiKeyService } from '../tool-auth/
|
|
3
|
+
import type { Database } from '../database/index.js';
|
|
4
|
+
import { agentConnections, agentEvents, externalApiKeys, oauthTokens, users } from '../database/index.js';
|
|
5
|
+
import type { IExternalApiKeyService } from '../tool-auth/index.js';
|
|
6
6
|
import {
|
|
7
7
|
AuditPrincipalNotFoundError,
|
|
8
8
|
InvalidCursorError,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { logger } from '../../shared/logging.js';
|
|
3
3
|
import type { IAgentConnectionStatus } from './audit.contract.js';
|
|
4
|
-
import '../auth/
|
|
4
|
+
import '../auth/index.js'; // Express Request augmentation (req.userId)
|
|
5
5
|
|
|
6
6
|
const log = logger('audit');
|
|
7
7
|
|
|
@@ -2,7 +2,7 @@ import type { RequestHandler } from 'express';
|
|
|
2
2
|
import { logger } from '../../shared/logging.js';
|
|
3
3
|
import type { IAgentEventRecorder } from './audit.contract.js';
|
|
4
4
|
import { classifyToolCall, skillReadPath, type SkillFolder } from './event-classifier.js';
|
|
5
|
-
import '../tool-auth/
|
|
5
|
+
import '../tool-auth/index.js'; // Express Request augmentation (req.toolAuth)
|
|
6
6
|
|
|
7
7
|
const log = logger('audit');
|
|
8
8
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
2
|
import { logger } from '../../shared/logging.js';
|
|
3
|
-
import type { IAdminAccessService } from '../admin/
|
|
4
|
-
import { TokenNotFoundError } from '../tool-auth/
|
|
5
|
-
import type { IExternalApiKeyService } from '../tool-auth/
|
|
3
|
+
import type { IAdminAccessService } from '../admin/index.js';
|
|
4
|
+
import { TokenNotFoundError } from '../tool-auth/index.js';
|
|
5
|
+
import type { IExternalApiKeyService } from '../tool-auth/index.js';
|
|
6
6
|
import {
|
|
7
7
|
AuditPrincipalNotFoundError,
|
|
8
8
|
InvalidCursorError,
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
type IAgentAuditService,
|
|
13
13
|
} from './audit.contract.js';
|
|
14
14
|
import { MAX_EVENT_PAGE } from './agent-audit.service.js';
|
|
15
|
-
import '../auth/
|
|
15
|
+
import '../auth/index.js'; // Express Request augmentation (req.userId / req.userEmail)
|
|
16
16
|
|
|
17
17
|
const log = logger('audit');
|
|
18
18
|
|
|
@@ -25,10 +25,17 @@ import { RECOVERY_BOT_EMAIL } from '../../workflow/recovery-bot.js';
|
|
|
25
25
|
* shows up as `db:`.
|
|
26
26
|
*/
|
|
27
27
|
function makeFakeDb(queue: unknown[]) {
|
|
28
|
-
const captured: {
|
|
28
|
+
const captured: {
|
|
29
|
+
values: Record<string, unknown>[];
|
|
30
|
+
set: Record<string, unknown>[];
|
|
31
|
+
order: string[];
|
|
32
|
+
/** Every `where` predicate, rendered to the SQL it would send. */
|
|
33
|
+
where: { sql: string; params: unknown[] }[];
|
|
34
|
+
} = {
|
|
29
35
|
values: [],
|
|
30
36
|
set: [],
|
|
31
37
|
order: [],
|
|
38
|
+
where: [],
|
|
32
39
|
};
|
|
33
40
|
const dialect = new PgDialect();
|
|
34
41
|
function nextChain(): unknown {
|
|
@@ -42,7 +49,10 @@ function makeFakeDb(queue: unknown[]) {
|
|
|
42
49
|
Object.assign(chain, {
|
|
43
50
|
values: passthrough((a) => captured.values.push(a)),
|
|
44
51
|
set: passthrough((a) => captured.set.push(a)),
|
|
45
|
-
where: passthrough()
|
|
52
|
+
where: passthrough((a) => {
|
|
53
|
+
const { sql, params } = dialect.sqlToQuery(a as unknown as SQL);
|
|
54
|
+
captured.where.push({ sql, params });
|
|
55
|
+
}),
|
|
46
56
|
limit: passthrough(),
|
|
47
57
|
from: passthrough(),
|
|
48
58
|
orderBy: passthrough(),
|
|
@@ -124,6 +134,32 @@ describe('signing in with a switched-off account', () => {
|
|
|
124
134
|
});
|
|
125
135
|
});
|
|
126
136
|
|
|
137
|
+
describe('the accounts a change request\'s approvers resolve to', () => {
|
|
138
|
+
it('are read in one indexed query through the email blind index, live accounts only, keyed by canonical address', async () => {
|
|
139
|
+
const { db, captured } = makeFakeDb([[{ id: 'user-1', email: 'Alice@Example.com', name: 'Alice' }]]);
|
|
140
|
+
const svc = new AuthService(db, makeConfig());
|
|
141
|
+
const found = await svc.findActiveAccountsByEmail(['ALICE@example.com', 'alice@example.com', 'bob@example.com']);
|
|
142
|
+
// One read, by the blind index, with the addresses canonicalised and
|
|
143
|
+
// deduplicated, and a switched-off account excluded in the query itself.
|
|
144
|
+
expect((db as unknown as { select: ReturnType<typeof vi.fn> }).select).toHaveBeenCalledTimes(1);
|
|
145
|
+
expect(captured.where).toHaveLength(1);
|
|
146
|
+
expect(captured.where[0]!.sql).toMatch(/"users"."email_bidx" in \(\$1, \$2\) and "users"."deactivated_at" is null/);
|
|
147
|
+
// The blind-index column hashes each address with the handle's key as
|
|
148
|
+
// the query is sent; what was asked for is the canonical plain address.
|
|
149
|
+
expect(captured.where[0]!.params.map((p) => (p as { plain: string }).plain)).toEqual(['alice@example.com', 'bob@example.com']);
|
|
150
|
+
// Keyed by the canonical address, whatever spelling the row holds.
|
|
151
|
+
expect([...found.keys()]).toEqual(['alice@example.com']);
|
|
152
|
+
expect(found.get('alice@example.com')).toEqual({ id: 'user-1', email: 'Alice@Example.com', name: 'Alice' });
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
it('asks nothing for no addresses', async () => {
|
|
156
|
+
const { db } = makeFakeDb([]);
|
|
157
|
+
const svc = new AuthService(db, makeConfig());
|
|
158
|
+
expect(await svc.findActiveAccountsByEmail([])).toEqual(new Map());
|
|
159
|
+
expect((db as unknown as { select: ReturnType<typeof vi.fn> }).select).not.toHaveBeenCalled();
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
|
|
127
163
|
describe('a session that outlives a deactivation', () => {
|
|
128
164
|
it('stops being accepted once the account is switched off', async () => {
|
|
129
165
|
const { db } = makeFakeDb([[ROW], [{ deactivatedAt: new Date() }]]);
|
|
@@ -4,8 +4,8 @@ import { logger } from '../../shared/logging.js';
|
|
|
4
4
|
const log = logger('account-erasure');
|
|
5
5
|
import { and, eq, notExists } from 'drizzle-orm';
|
|
6
6
|
import { isEncryptedBlob } from '../../shared/column-crypto.js';
|
|
7
|
-
import type { Database } from '../database/
|
|
8
|
-
import type { IReviewWorkflowService } from '../workflow/
|
|
7
|
+
import type { Database } from '../database/index.js';
|
|
8
|
+
import type { IReviewWorkflowService } from '../workflow/index.js';
|
|
9
9
|
import {
|
|
10
10
|
changeRequests,
|
|
11
11
|
externalApiKeys,
|
|
@@ -14,11 +14,10 @@ import {
|
|
|
14
14
|
oauthTokens,
|
|
15
15
|
pendingCommits,
|
|
16
16
|
pluginJoinRequests,
|
|
17
|
-
prComments,
|
|
18
17
|
prFileApprovals,
|
|
19
18
|
prMergeLog,
|
|
20
19
|
users,
|
|
21
|
-
} from '../database/
|
|
20
|
+
} from '../database/index.js';
|
|
22
21
|
|
|
23
22
|
/** The anonymised id of one erasure — how a commit or log may name the account. */
|
|
24
23
|
export function erasedAccountId(erasureId: string): string {
|
|
@@ -88,7 +87,7 @@ export interface IErasureParticipant {
|
|
|
88
87
|
* CASCADE (account links, watchlist sources/findings, connector configs,
|
|
89
88
|
* vault secrets); deleting a connection key cascades its usage metering.
|
|
90
89
|
* - Audit rows that must survive for the review trail (approvals, merge log,
|
|
91
|
-
*
|
|
90
|
+
* change requests, queued commits — and, via participants,
|
|
92
91
|
* e.g. routine authorship) are kept but ANONYMIZED with the per-erasure
|
|
93
92
|
* placeholder identity.
|
|
94
93
|
*
|
|
@@ -225,10 +224,6 @@ export class AccountErasureService implements IAccountErasureService {
|
|
|
225
224
|
.update(prMergeLog)
|
|
226
225
|
.set({ triggeredByEmail: target.erasedEmail, triggeredByEmailBidx: erasedBidx, triggeredByName: target.erasedName })
|
|
227
226
|
.where(eq(prMergeLog.triggeredByEmailBidx, emailBidx));
|
|
228
|
-
await tx
|
|
229
|
-
.update(prComments)
|
|
230
|
-
.set({ authorEmail: target.erasedEmail, authorEmailBidx: erasedBidx, authorName: target.erasedName })
|
|
231
|
-
.where(eq(prComments.authorEmailBidx, emailBidx));
|
|
232
227
|
await tx
|
|
233
228
|
.update(changeRequests)
|
|
234
229
|
.set({ authorEmail: target.erasedEmail, authorEmailBidx: erasedBidx, authorName: target.erasedName })
|