@flowdular/sdk 0.2.4 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.ai/agents/sandbox/business-manager.md +5 -1
- package/.ai/blueprints/author-spec/README.md +1 -1
- package/.ai/blueprints/author-spec/spec-requirements.yaml +44 -0
- package/.ai/blueprints/author-spec/steps.yaml +5 -5
- package/.ai/blueprints/author-spec/templates/module.yaml +99 -3
- package/.ai/blueprints/edit-module/gates.yaml +4 -0
- package/.ai/blueprints/edit-module/required-files.yaml +9 -0
- package/.ai/blueprints/new-module/gates.yaml +4 -0
- package/.ai/blueprints/new-module/spec-requirements.yaml +2 -2
- package/.ai/blueprints/release/gates.yaml +4 -0
- package/.ai/platform-capabilities.md +128 -0
- package/.ai/policies/capabilities.yaml +100 -0
- package/.ai/policies/path-ownership.yaml +5 -2
- package/.ai/policies/task-budgets.yaml +5 -3
- package/.ai/references/catalog/module.json +4 -4
- package/.ai/references/catalog/package.json +2 -2
- package/.ai/references/catalog/spec/module.yaml +5 -3
- package/.ai/references/catalog/src/platform.ts +2 -0
- package/.ai/references/catalog/src/services/catalog-service.ts +89 -1
- package/.ai/references/catalog/src/services/data-classes.ts +47 -0
- package/.ai/references/catalog/src/services/database-repository.ts +98 -1
- package/.ai/references/catalog/src/services/repository.ts +22 -1
- package/.ai/references/catalog/tests/data-classes.test.ts +157 -0
- package/.ai/references/catalog.provenance.json +12 -10
- package/.ai/skills/README.md +10 -0
- package/.ai/skills/agent-tool-design/SKILL.md +1 -2
- package/.ai/skills/auth-security-review/SKILL.md +1 -1
- package/.ai/skills/business-agent-design/SKILL.md +0 -1
- package/.ai/skills/deploy-operate/SKILL.md +114 -0
- package/.ai/skills/module-new/SKILL.md +29 -3
- package/.ai/skills/module-update/SKILL.md +9 -3
- package/.ai/skills/perf-audit/SKILL.md +0 -1
- package/.ai/skills/release-eject-pr/SKILL.md +0 -1
- package/.ai/skills/spec-interview/SKILL.md +120 -0
- package/.ai/skills/test-hardening/SKILL.md +1 -0
- package/.ai/skills/ux-design/SKILL.md +34 -3
- package/.ai/skills/variables/SKILL.md +0 -2
- package/.ai/skills/workflow-development/SKILL.md +0 -1
- package/AGENTS.md +4 -0
- package/docs/agent-contract.md +2 -2
- package/docs/design-system.md +185 -31
- package/modules/access/migrations/0001_access_core.down.sql +1 -0
- package/modules/access/migrations/0001_access_core.up.sql +28 -0
- package/modules/access/migrations/README.md +3 -0
- package/modules/access/module.json +33 -0
- package/modules/access/package.json +43 -0
- package/modules/access/spec/module.yaml +225 -0
- package/modules/access/src/acl/permissions.ts +6 -0
- package/modules/access/src/api/endpoints.ts +244 -0
- package/modules/access/src/client/ActivityView.tsrx +245 -0
- package/modules/access/src/client/AttestationsView.tsrx +176 -0
- package/modules/access/src/client/ReviewView.tsrx +586 -0
- package/modules/access/src/client/api.ts +132 -0
- package/modules/access/src/client/contribution.tsrx +41 -0
- package/modules/access/src/client/index.ts +41 -0
- package/modules/access/src/client/navigation.ts +57 -0
- package/modules/access/src/client/presentation.ts +69 -0
- package/modules/access/src/client/state.ts +72 -0
- package/modules/access/src/domain/types.ts +189 -0
- package/modules/access/src/index.ts +38 -0
- package/modules/access/src/platform.ts +60 -0
- package/modules/access/src/server/index.ts +42 -0
- package/modules/access/src/server/runtime.ts +105 -0
- package/modules/access/src/services/access-service.ts +298 -0
- package/modules/access/src/services/audit-window.ts +78 -0
- package/modules/access/src/services/auth-directory.ts +72 -0
- package/modules/access/src/services/changes.ts +91 -0
- package/modules/access/src/services/data-classes.ts +28 -0
- package/modules/access/src/services/database-repository.ts +185 -0
- package/modules/access/src/services/directory.ts +102 -0
- package/modules/access/src/services/index.ts +33 -0
- package/modules/access/src/services/list-exports.ts +150 -0
- package/modules/access/src/services/migration.ts +54 -0
- package/modules/access/src/services/repository.ts +30 -0
- package/modules/access/src/services/review.ts +178 -0
- package/modules/access/translations/en.json +155 -0
- package/modules/access/translations/pl.json +155 -0
- package/modules/agents/migrations/0022_credential_rotation_inventory.down.sql +2 -0
- package/modules/agents/migrations/0022_credential_rotation_inventory.up.sql +7 -0
- package/modules/agents/migrations/0023_agents_retention_indexes.down.sql +2 -0
- package/modules/agents/migrations/0023_agents_retention_indexes.up.sql +9 -0
- package/modules/agents/migrations/0024_agent_meter_refusals.down.sql +3 -0
- package/modules/agents/migrations/0024_agent_meter_refusals.up.sql +22 -0
- package/modules/agents/migrations/0025_agent_list_indexes.down.sql +3 -0
- package/modules/agents/migrations/0025_agent_list_indexes.up.sql +11 -0
- package/modules/agents/module.json +30 -4
- package/modules/agents/package.json +2 -1
- package/modules/agents/spec/module.yaml +63 -5
- package/modules/agents/src/api/endpoints.ts +291 -33
- package/modules/agents/src/cli/commands.json +11 -0
- package/modules/agents/src/cli/index.ts +45 -0
- package/modules/agents/src/client/AgentDashboardWidget.tsrx +19 -11
- package/modules/agents/src/client/AgentDefinitionList.tsrx +53 -10
- package/modules/agents/src/client/AgentPlaygroundView.tsrx +4 -4
- package/modules/agents/src/client/AgentProceduresView.tsrx +2 -2
- package/modules/agents/src/client/AgentRunsView.tsrx +143 -40
- package/modules/agents/src/client/AgentsView.tsrx +109 -33
- package/modules/agents/src/client/api.ts +99 -21
- package/modules/agents/src/client/state.ts +97 -0
- package/modules/agents/src/domain/types.ts +44 -4
- package/modules/agents/src/platform.ts +42 -0
- package/modules/agents/src/server/action-execution.ts +201 -106
- package/modules/agents/src/server/runtime.ts +32 -0
- package/modules/agents/src/services/agent-service.ts +158 -30
- package/modules/agents/src/services/credential-rotation.ts +185 -0
- package/modules/agents/src/services/credential-vault.ts +71 -46
- package/modules/agents/src/services/data-classes.ts +176 -0
- package/modules/agents/src/services/database-repository.ts +393 -101
- package/modules/agents/src/services/metering.ts +111 -0
- package/modules/agents/src/services/migration.ts +109 -0
- package/modules/agents/src/services/module-agent-preflight.ts +17 -9
- package/modules/agents/src/services/notifications.ts +98 -0
- package/modules/agents/src/services/provider-repository.ts +9 -18
- package/modules/agents/src/services/provider-service.ts +1 -9
- package/modules/agents/src/services/reports.ts +107 -0
- package/modules/agents/src/services/repository.ts +86 -6
- package/modules/agents/src/services/usage-service.ts +2 -0
- package/modules/agents/src/services/worker.ts +114 -4
- package/modules/agents/src/settings.ts +14 -3
- package/modules/agents/translations/en.json +14 -4
- package/modules/agents/translations/pl.json +14 -4
- package/modules/approvals/migrations/0001_approvals_core.down.sql +3 -0
- package/modules/approvals/migrations/0001_approvals_core.up.sql +78 -0
- package/modules/approvals/migrations/0002_approvals_expiry_routing_role.down.sql +2 -0
- package/modules/approvals/migrations/0002_approvals_expiry_routing_role.up.sql +19 -0
- package/modules/approvals/migrations/0003_approvals_retention_indexes.down.sql +6 -0
- package/modules/approvals/migrations/0003_approvals_retention_indexes.up.sql +14 -0
- package/modules/approvals/migrations/0004_approvals_inbox_keyset_indexes.down.sql +5 -0
- package/modules/approvals/migrations/0004_approvals_inbox_keyset_indexes.up.sql +12 -0
- package/modules/approvals/migrations/README.md +3 -0
- package/modules/approvals/module.json +34 -0
- package/modules/approvals/package.json +43 -0
- package/modules/approvals/spec/module.yaml +318 -0
- package/modules/approvals/src/acl/permissions.ts +7 -0
- package/modules/approvals/src/api/endpoints.ts +457 -0
- package/modules/approvals/src/client/ApprovalRequestDrawer.tsrx +138 -0
- package/modules/approvals/src/client/ApprovalsView.tsrx +562 -0
- package/modules/approvals/src/client/PendingCountWidget.tsrx +52 -0
- package/modules/approvals/src/client/api.ts +203 -0
- package/modules/approvals/src/client/approvals.css +51 -0
- package/modules/approvals/src/client/contribution.tsrx +44 -0
- package/modules/approvals/src/client/index.ts +26 -0
- package/modules/approvals/src/client/navigation.ts +39 -0
- package/modules/approvals/src/client/pending-count.ts +26 -0
- package/modules/approvals/src/client/presentation.ts +52 -0
- package/modules/approvals/src/client/state.ts +141 -0
- package/modules/approvals/src/domain/capability.ts +95 -0
- package/modules/approvals/src/domain/types.ts +154 -0
- package/modules/approvals/src/index.ts +52 -0
- package/modules/approvals/src/platform.ts +128 -0
- package/modules/approvals/src/server/index.ts +42 -0
- package/modules/approvals/src/server/runtime.ts +181 -0
- package/modules/approvals/src/services/approvals-service.ts +557 -0
- package/modules/approvals/src/services/callbacks.ts +75 -0
- package/modules/approvals/src/services/data-classes.ts +167 -0
- package/modules/approvals/src/services/database-repository.ts +724 -0
- package/modules/approvals/src/services/eligibility.ts +121 -0
- package/modules/approvals/src/services/expiry-runner.ts +81 -0
- package/modules/approvals/src/services/index.ts +31 -0
- package/modules/approvals/src/services/migration.ts +222 -0
- package/modules/approvals/src/services/notifications.ts +95 -0
- package/modules/approvals/src/services/repository.ts +161 -0
- package/modules/approvals/src/services/service-error.ts +70 -0
- package/modules/approvals/src/settings.ts +102 -0
- package/modules/approvals/translations/en.json +104 -0
- package/modules/approvals/translations/pl.json +104 -0
- package/modules/audit/migrations/0001_audit_core.down.sql +8 -0
- package/modules/audit/migrations/0001_audit_core.up.sql +107 -0
- package/modules/audit/migrations/0002_audit_sweep_routing_role.down.sql +2 -0
- package/modules/audit/migrations/0002_audit_sweep_routing_role.up.sql +21 -0
- package/modules/audit/migrations/0003_audit_export_request.down.sql +12 -0
- package/modules/audit/migrations/0003_audit_export_request.up.sql +40 -0
- package/modules/audit/migrations/0004_audit_hold_seal_erasure.down.sql +17 -0
- package/modules/audit/migrations/0004_audit_hold_seal_erasure.up.sql +192 -0
- package/modules/audit/migrations/0005_audit_event_format.down.sql +17 -0
- package/modules/audit/migrations/0005_audit_event_format.up.sql +60 -0
- package/modules/audit/migrations/0006_audit_own_class_walks.down.sql +3 -0
- package/modules/audit/migrations/0006_audit_own_class_walks.up.sql +14 -0
- package/modules/audit/migrations/README.md +3 -0
- package/modules/audit/module.json +32 -0
- package/modules/audit/package.json +49 -0
- package/modules/audit/spec/module.yaml +809 -0
- package/modules/audit/src/acl/permissions.ts +7 -0
- package/modules/audit/src/api/endpoints.ts +315 -0
- package/modules/audit/src/cli/commands.json +95 -0
- package/modules/audit/src/cli/index.ts +658 -0
- package/modules/audit/src/client/DataClassesView.tsrx +420 -0
- package/modules/audit/src/client/ExportsView.tsrx +256 -0
- package/modules/audit/src/client/HoldsView.tsrx +604 -0
- package/modules/audit/src/client/SweepsView.tsrx +251 -0
- package/modules/audit/src/client/api.ts +185 -0
- package/modules/audit/src/client/contribution.tsrx +52 -0
- package/modules/audit/src/client/index.ts +23 -0
- package/modules/audit/src/client/navigation.ts +74 -0
- package/modules/audit/src/client/presentation.ts +105 -0
- package/modules/audit/src/client/state.ts +86 -0
- package/modules/audit/src/domain/data-classes.ts +16 -0
- package/modules/audit/src/domain/types.ts +339 -0
- package/modules/audit/src/index.ts +76 -0
- package/modules/audit/src/platform.ts +44 -0
- package/modules/audit/src/server/index.ts +177 -0
- package/modules/audit/src/server/runtime.ts +303 -0
- package/modules/audit/src/services/anchor-key.ts +143 -0
- package/modules/audit/src/services/anchor-rotation.ts +147 -0
- package/modules/audit/src/services/audit-runners.ts +278 -0
- package/modules/audit/src/services/backup-guard.ts +95 -0
- package/modules/audit/src/services/database-repository.ts +1946 -0
- package/modules/audit/src/services/declared-classes.ts +64 -0
- package/modules/audit/src/services/erasure-port.ts +126 -0
- package/modules/audit/src/services/erasure-service.ts +770 -0
- package/modules/audit/src/services/export-directory.ts +106 -0
- package/modules/audit/src/services/export-service.ts +714 -0
- package/modules/audit/src/services/hold-service.ts +295 -0
- package/modules/audit/src/services/index.ts +17 -0
- package/modules/audit/src/services/migration.ts +658 -0
- package/modules/audit/src/services/own-classes.ts +318 -0
- package/modules/audit/src/services/platform-version.ts +23 -0
- package/modules/audit/src/services/repository.ts +495 -0
- package/modules/audit/src/services/retention-service.ts +191 -0
- package/modules/audit/src/services/seal-service.ts +769 -0
- package/modules/audit/src/services/service-error.ts +61 -0
- package/modules/audit/src/services/subject-keys.ts +90 -0
- package/modules/audit/src/services/sweep-service.ts +298 -0
- package/modules/audit/src/services/zip.ts +217 -0
- package/modules/audit/src/settings.ts +69 -0
- package/modules/audit/translations/en.json +210 -0
- package/modules/audit/translations/pl.json +210 -0
- package/modules/auth/README.md +77 -29
- package/modules/auth/migrations/0016_external_identities.up.sql +16 -0
- package/modules/auth/migrations/0017_mfa_key_id.up.sql +8 -0
- package/modules/auth/migrations/0018_retire_bundled_module_scopes.up.sql +29 -0
- package/modules/auth/migrations/0019_notifications_member_scopes.up.sql +44 -0
- package/modules/auth/migrations/0020_identity_providers.up.sql +61 -0
- package/modules/auth/migrations/0021_membership_status.up.sql +19 -0
- package/modules/auth/migrations/0022_auth_provider_scopes.up.sql +45 -0
- package/modules/auth/migrations/0023_enterprise_module_scopes.down.sql +19 -0
- package/modules/auth/migrations/0023_enterprise_module_scopes.up.sql +71 -0
- package/modules/auth/migrations/0024_approvals_member_scopes.down.sql +22 -0
- package/modules/auth/migrations/0024_approvals_member_scopes.up.sql +48 -0
- package/modules/auth/migrations/0025_audit_holds_owner_scope.down.sql +21 -0
- package/modules/auth/migrations/0025_audit_holds_owner_scope.up.sql +47 -0
- package/modules/auth/migrations/0026_auth_export_keyset_indexes.down.sql +6 -0
- package/modules/auth/migrations/0026_auth_export_keyset_indexes.up.sql +15 -0
- package/modules/auth/migrations/0027_workflow_automation_profile_scopes.down.sql +34 -0
- package/modules/auth/migrations/0027_workflow_automation_profile_scopes.up.sql +72 -0
- package/modules/auth/migrations/0028_auth_member_search_prefix_indexes.down.sql +6 -0
- package/modules/auth/migrations/0028_auth_member_search_prefix_indexes.up.sql +21 -0
- package/modules/auth/migrations/0029_reports_exports_access_scopes.down.sql +22 -0
- package/modules/auth/migrations/0029_reports_exports_access_scopes.up.sql +56 -0
- package/modules/auth/migrations/0030_auth_membership_keyset_index.down.sql +4 -0
- package/modules/auth/migrations/0030_auth_membership_keyset_index.up.sql +10 -0
- package/modules/auth/migrations/0031_membership_scope_backfills_under_rls.down.sql +4 -0
- package/modules/auth/migrations/0031_membership_scope_backfills_under_rls.up.sql +31 -0
- package/modules/auth/migrations/0032_audit_actor_service.down.sql +9 -0
- package/modules/auth/migrations/0032_audit_actor_service.up.sql +10 -0
- package/modules/auth/migrations/0033_auth_account_keyset_indexes.down.sql +5 -0
- package/modules/auth/migrations/0033_auth_account_keyset_indexes.up.sql +23 -0
- package/modules/auth/module.json +3 -3
- package/modules/auth/package.json +2 -1
- package/modules/auth/spec/module.yaml +372 -3
- package/modules/auth/src/acl/scopes.ts +50 -6
- package/modules/auth/src/cli/commands.json +11 -0
- package/modules/auth/src/cli/greenfield.ts +2 -2
- package/modules/auth/src/cli/index.ts +14 -0
- package/modules/auth/src/cli/secrets.ts +114 -0
- package/modules/auth/src/client/AuthenticationCore.tsrx +61 -8
- package/modules/auth/src/client/api.ts +72 -6
- package/modules/auth/src/client/contribution.tsrx +23 -0
- package/modules/auth/src/client/index.ts +6 -0
- package/modules/auth/src/client/providers/IdentityProviderForm.tsrx +191 -0
- package/modules/auth/src/client/providers/IdentityProvidersView.tsrx +358 -0
- package/modules/auth/src/client/providers/api.ts +128 -0
- package/modules/auth/src/client/providers/provider-columns.tsrx +60 -0
- package/modules/auth/src/client/providers/state.ts +35 -0
- package/modules/auth/src/client/security/SecurityView.tsrx +9 -1
- package/modules/auth/src/client/state.ts +15 -1
- package/modules/auth/src/domain/types.ts +55 -0
- package/modules/auth/src/index.ts +11 -1
- package/modules/auth/src/middleware/authentication.ts +4 -0
- package/modules/auth/src/server/endpoints.ts +467 -171
- package/modules/auth/src/server/http.ts +3 -2
- package/modules/auth/src/server/index.ts +22 -1
- package/modules/auth/src/server/membership-endpoints.ts +62 -0
- package/modules/auth/src/server/mfa-enforcement.ts +156 -0
- package/modules/auth/src/server/oidc.ts +389 -0
- package/modules/auth/src/server/provider-endpoints.ts +246 -0
- package/modules/auth/src/server/provider-host.ts +77 -0
- package/modules/auth/src/server/runtime.ts +231 -55
- package/modules/auth/src/services/auth-service-error.ts +7 -2
- package/modules/auth/src/services/auth-service.ts +948 -51
- package/modules/auth/src/services/data-classes.ts +236 -0
- package/modules/auth/src/services/database-repository.ts +853 -71
- package/modules/auth/src/services/identity-provider-service.ts +571 -0
- package/modules/auth/src/services/mail-delivery.ts +16 -16
- package/modules/auth/src/services/mail-message.ts +54 -0
- package/modules/auth/src/services/mail-port.ts +24 -0
- package/modules/auth/src/services/mail-smtp.ts +85 -0
- package/modules/auth/src/services/mfa-rotation.ts +144 -0
- package/modules/auth/src/services/migration.ts +810 -0
- package/modules/auth/src/services/password.ts +14 -0
- package/modules/auth/src/services/provider-secret-rotation.ts +169 -0
- package/modules/auth/src/services/provider-secrets.ts +136 -0
- package/modules/auth/src/services/repository.ts +321 -5
- package/modules/auth/src/services/session-sweep-runner.ts +73 -0
- package/modules/auth/src/services/settings-store.ts +10 -83
- package/modules/auth/src/services/totp.ts +88 -62
- package/modules/auth/src/services/validation.ts +194 -7
- package/modules/auth/src/settings.ts +18 -0
- package/modules/auth/translations/en.json +84 -1
- package/modules/auth/translations/pl.json +84 -1
- package/modules/automations/migrations/0005_secret_rotation_inventory.down.sql +1 -0
- package/modules/automations/migrations/0005_secret_rotation_inventory.up.sql +6 -0
- package/modules/automations/migrations/0006_automations_list_sort_indexes.down.sql +4 -0
- package/modules/automations/migrations/0006_automations_list_sort_indexes.up.sql +11 -0
- package/modules/automations/module.json +24 -6
- package/modules/automations/package.json +4 -1
- package/modules/automations/spec/module.yaml +81 -7
- package/modules/automations/src/api/endpoints.ts +202 -28
- package/modules/automations/src/cli/commands.json +17 -0
- package/modules/automations/src/cli/index.ts +114 -0
- package/modules/automations/src/client/AutomationScheduleForm.tsrx +77 -19
- package/modules/automations/src/client/AutomationSchedulesView.tsrx +144 -40
- package/modules/automations/src/client/AutomationTriggersView.tsrx +131 -32
- package/modules/automations/src/client/api.ts +62 -19
- package/modules/automations/src/client/presentation.ts +20 -2
- package/modules/automations/src/client/state.ts +84 -0
- package/modules/automations/src/domain/cadence.ts +99 -3
- package/modules/automations/src/domain/cron.ts +366 -0
- package/modules/automations/src/domain/time-zone.ts +61 -0
- package/modules/automations/src/platform.ts +38 -4
- package/modules/automations/src/server/index.ts +11 -0
- package/modules/automations/src/server/runtime.ts +46 -22
- package/modules/{automations-workflows-integration/src/server/adapter.ts → automations/src/server/workflow-target.ts} +13 -14
- package/modules/{automations-workflows-integration/src/server/tools.ts → automations/src/server/workflow-tools.ts} +0 -0
- package/modules/automations/src/services/data-classes.ts +62 -0
- package/modules/automations/src/services/database-repository.ts +152 -38
- package/modules/automations/src/services/migration.ts +119 -9
- package/modules/automations/src/services/repository.ts +52 -1
- package/modules/automations/src/services/schedule-runner.ts +84 -0
- package/modules/automations/src/services/schedule-service.ts +152 -26
- package/modules/automations/src/services/secret-rotation.ts +176 -0
- package/modules/automations/src/services/secret-vault.ts +68 -41
- package/modules/automations/src/services/trigger-service.ts +13 -10
- package/modules/automations/translations/en.json +15 -2
- package/modules/automations/translations/pl.json +15 -2
- package/modules/connectors/migrations/0001_connectors_core.down.sql +3 -0
- package/modules/connectors/migrations/0001_connectors_core.up.sql +72 -0
- package/modules/connectors/migrations/0002_connectors_call_keys.down.sql +3 -0
- package/modules/connectors/migrations/0002_connectors_call_keys.up.sql +18 -0
- package/modules/connectors/migrations/README.md +3 -0
- package/modules/connectors/module.json +28 -0
- package/modules/{automations-workflows-integration → connectors}/package.json +27 -26
- package/modules/connectors/spec/module.yaml +447 -0
- package/modules/connectors/src/acl/permissions.ts +6 -0
- package/modules/connectors/src/agent/tools.ts +180 -0
- package/modules/connectors/src/api/endpoints.ts +572 -0
- package/modules/connectors/src/client/ConnectorCallsView.tsrx +358 -0
- package/modules/connectors/src/client/ConnectorForm.tsrx +424 -0
- package/modules/connectors/src/client/ConnectorsView.tsrx +711 -0
- package/modules/connectors/src/client/api.ts +281 -0
- package/modules/connectors/src/client/consent.ts +48 -0
- package/modules/connectors/src/client/contribution.tsrx +37 -0
- package/modules/connectors/src/client/index.ts +22 -0
- package/modules/connectors/src/client/navigation.ts +42 -0
- package/modules/connectors/src/client/presentation.ts +38 -0
- package/modules/connectors/src/client/state.ts +175 -0
- package/modules/connectors/src/domain/calls.ts +70 -0
- package/modules/connectors/src/domain/definitions.ts +190 -0
- package/modules/connectors/src/domain/http-json.ts +68 -0
- package/modules/connectors/src/domain/types.ts +185 -0
- package/modules/connectors/src/index.ts +64 -0
- package/modules/connectors/src/platform.ts +56 -0
- package/modules/connectors/src/server/index.ts +66 -0
- package/modules/connectors/src/server/runtime.ts +163 -0
- package/modules/connectors/src/services/call-service.ts +903 -0
- package/modules/connectors/src/services/connectors-service.ts +653 -0
- package/modules/connectors/src/services/credential-vault.ts +188 -0
- package/modules/connectors/src/services/data-classes.ts +158 -0
- package/modules/connectors/src/services/database-repository.ts +897 -0
- package/modules/connectors/src/services/egress.ts +261 -0
- package/modules/connectors/src/services/index.ts +19 -0
- package/modules/connectors/src/services/migration.ts +166 -0
- package/modules/connectors/src/services/repository.ts +175 -0
- package/modules/connectors/src/services/service-error.ts +46 -0
- package/modules/connectors/src/settings.ts +69 -0
- package/modules/connectors/translations/en.json +191 -0
- package/modules/connectors/translations/pl.json +191 -0
- package/modules/directory/migrations/0001_directory_core.down.sql +5 -0
- package/modules/directory/migrations/0001_directory_core.up.sql +111 -0
- package/modules/directory/migrations/README.md +3 -0
- package/modules/directory/module.json +27 -0
- package/modules/directory/package.json +46 -0
- package/modules/directory/spec/module.yaml +351 -0
- package/modules/directory/src/acl/permissions.ts +7 -0
- package/modules/directory/src/api/endpoints.ts +478 -0
- package/modules/directory/src/api/scim-endpoints.ts +516 -0
- package/modules/directory/src/client/GroupMappingsView.tsrx +430 -0
- package/modules/directory/src/client/ProvisioningLogView.tsrx +248 -0
- package/modules/directory/src/client/ScimTokensView.tsrx +587 -0
- package/modules/directory/src/client/api.ts +222 -0
- package/modules/directory/src/client/contribution.tsrx +46 -0
- package/modules/directory/src/client/index.ts +22 -0
- package/modules/directory/src/client/navigation.ts +57 -0
- package/modules/directory/src/client/presentation.ts +143 -0
- package/modules/directory/src/client/state.ts +173 -0
- package/modules/directory/src/domain/scim.ts +346 -0
- package/modules/directory/src/domain/types.ts +166 -0
- package/modules/directory/src/index.ts +44 -0
- package/modules/directory/src/platform.ts +43 -0
- package/modules/directory/src/server/index.ts +17 -0
- package/modules/directory/src/server/runtime.ts +124 -0
- package/modules/directory/src/services/auth-port.ts +127 -0
- package/modules/directory/src/services/data-classes.ts +41 -0
- package/modules/directory/src/services/database-repository.ts +1067 -0
- package/modules/directory/src/services/directory-service.ts +311 -0
- package/modules/directory/src/services/index.ts +43 -0
- package/modules/directory/src/services/migration.ts +146 -0
- package/modules/directory/src/services/provisioning-service.ts +1420 -0
- package/modules/directory/src/services/rate-limiter.ts +103 -0
- package/modules/directory/src/services/repository.ts +208 -0
- package/modules/directory/src/services/service-error.ts +42 -0
- package/modules/directory/src/services/token-service.ts +215 -0
- package/modules/directory/src/settings.ts +86 -0
- package/modules/directory/translations/en.json +185 -0
- package/modules/directory/translations/pl.json +185 -0
- package/modules/documents/migrations/0001_documents_core.down.sql +1 -0
- package/modules/documents/migrations/0001_documents_core.up.sql +35 -0
- package/modules/documents/migrations/0002_documents_files_page.down.sql +1 -0
- package/modules/documents/migrations/0002_documents_files_page.up.sql +6 -0
- package/modules/documents/migrations/README.md +3 -0
- package/modules/documents/module.json +28 -0
- package/modules/documents/package.json +49 -0
- package/modules/documents/spec/module.yaml +247 -0
- package/modules/documents/src/acl/permissions.ts +6 -0
- package/modules/documents/src/api/endpoints.ts +401 -0
- package/modules/documents/src/client/DocumentUploader.tsrx +148 -0
- package/modules/documents/src/client/DocumentsView.tsrx +540 -0
- package/modules/documents/src/client/api.ts +209 -0
- package/modules/documents/src/client/contribution.tsrx +29 -0
- package/modules/documents/src/client/download.ts +70 -0
- package/modules/documents/src/client/index.ts +22 -0
- package/modules/documents/src/client/navigation.ts +25 -0
- package/modules/documents/src/client/presentation.ts +110 -0
- package/modules/documents/src/client/state.ts +117 -0
- package/modules/documents/src/domain/attachments.ts +84 -0
- package/modules/documents/src/domain/types.ts +80 -0
- package/modules/documents/src/index.ts +46 -0
- package/modules/documents/src/platform.ts +61 -0
- package/modules/documents/src/server/index.ts +30 -0
- package/modules/documents/src/server/runtime.ts +107 -0
- package/modules/documents/src/services/attachments.ts +39 -0
- package/modules/documents/src/services/data-classes.ts +25 -0
- package/modules/documents/src/services/database-repository.ts +259 -0
- package/modules/documents/src/services/documents-service.ts +586 -0
- package/modules/documents/src/services/index.ts +18 -0
- package/modules/documents/src/services/migration.ts +82 -0
- package/modules/documents/src/services/repository.ts +48 -0
- package/modules/documents/src/settings.ts +107 -0
- package/modules/documents/translations/en.json +111 -0
- package/modules/documents/translations/pl.json +111 -0
- package/modules/exports/migrations/0001_exports_core.down.sql +2 -0
- package/modules/exports/migrations/0001_exports_core.up.sql +28 -0
- package/modules/exports/migrations/0002_exports_job_routing_role.down.sql +4 -0
- package/modules/exports/migrations/0002_exports_job_routing_role.up.sql +21 -0
- package/modules/exports/migrations/README.md +3 -0
- package/modules/exports/module.json +28 -0
- package/modules/exports/package.json +44 -0
- package/modules/exports/spec/module.yaml +229 -0
- package/modules/exports/src/acl/permissions.ts +6 -0
- package/modules/exports/src/api/endpoints.ts +211 -0
- package/modules/exports/src/client/ExportsView.tsrx +327 -0
- package/modules/exports/src/client/api.ts +133 -0
- package/modules/exports/src/client/contribution.tsrx +31 -0
- package/modules/exports/src/client/index.ts +20 -0
- package/modules/exports/src/client/navigation.ts +25 -0
- package/modules/exports/src/client/presentation.ts +53 -0
- package/modules/exports/src/client/state.ts +56 -0
- package/modules/exports/src/domain/lists.ts +29 -0
- package/modules/exports/src/domain/types.ts +120 -0
- package/modules/exports/src/index.ts +41 -0
- package/modules/exports/src/platform.ts +80 -0
- package/modules/exports/src/server/index.ts +51 -0
- package/modules/exports/src/server/runtime.ts +160 -0
- package/modules/exports/src/services/data-classes.ts +56 -0
- package/modules/exports/src/services/database-repository.ts +405 -0
- package/modules/exports/src/services/export-runner.ts +123 -0
- package/modules/exports/src/services/export-service.ts +356 -0
- package/modules/exports/src/services/index.ts +6 -0
- package/modules/exports/src/services/list-registry.ts +105 -0
- package/modules/exports/src/services/migration.ts +89 -0
- package/modules/exports/src/services/repository.ts +97 -0
- package/modules/exports/src/settings.ts +70 -0
- package/modules/exports/translations/en.json +69 -0
- package/modules/exports/translations/pl.json +69 -0
- package/modules/import/migrations/0001_import_core.down.sql +6 -0
- package/modules/import/migrations/0001_import_core.up.sql +61 -0
- package/modules/import/migrations/0002_import_job_routing_role.down.sql +4 -0
- package/modules/import/migrations/0002_import_job_routing_role.up.sql +20 -0
- package/modules/import/migrations/0003_import_jobs_export_index.down.sql +1 -0
- package/modules/import/migrations/0003_import_jobs_export_index.up.sql +7 -0
- package/modules/import/migrations/0004_import_jobs_traceparent.down.sql +1 -0
- package/modules/import/migrations/0004_import_jobs_traceparent.up.sql +7 -0
- package/modules/import/migrations/README.md +3 -0
- package/modules/import/module.json +37 -0
- package/modules/import/package.json +50 -0
- package/modules/import/spec/module.yaml +335 -0
- package/modules/import/src/acl/permissions.ts +6 -0
- package/modules/import/src/api/endpoints.ts +400 -0
- package/modules/import/src/client/ImportJobDrawer.tsrx +229 -0
- package/modules/import/src/client/ImportsView.tsrx +455 -0
- package/modules/import/src/client/NewImportForm.tsrx +274 -0
- package/modules/import/src/client/api.ts +243 -0
- package/modules/import/src/client/contribution.tsrx +29 -0
- package/modules/import/src/client/index.ts +23 -0
- package/modules/import/src/client/navigation.ts +25 -0
- package/modules/import/src/client/presentation.ts +59 -0
- package/modules/import/src/client/state.ts +43 -0
- package/modules/import/src/domain/csv.ts +258 -0
- package/modules/import/src/domain/ports.ts +157 -0
- package/modules/import/src/domain/types.ts +179 -0
- package/modules/import/src/index.ts +58 -0
- package/modules/import/src/platform.ts +60 -0
- package/modules/import/src/server/index.ts +49 -0
- package/modules/import/src/server/runtime.ts +158 -0
- package/modules/import/src/services/csv-source.ts +121 -0
- package/modules/import/src/services/data-classes.ts +63 -0
- package/modules/import/src/services/database-repository.ts +780 -0
- package/modules/import/src/services/import-runner.ts +127 -0
- package/modules/import/src/services/import-service.ts +872 -0
- package/modules/import/src/services/index.ts +6 -0
- package/modules/import/src/services/migration.ts +156 -0
- package/modules/import/src/services/port-registry.ts +158 -0
- package/modules/import/src/services/repository.ts +147 -0
- package/modules/import/src/settings.ts +70 -0
- package/modules/import/translations/en.json +175 -0
- package/modules/import/translations/pl.json +175 -0
- package/modules/metering/migrations/0001_metering_core.down.sql +6 -0
- package/modules/metering/migrations/0001_metering_core.up.sql +119 -0
- package/modules/metering/migrations/0002_metering_bucket_export.down.sql +3 -0
- package/modules/metering/migrations/0002_metering_bucket_export.up.sql +5 -0
- package/modules/metering/migrations/README.md +3 -0
- package/modules/metering/module.json +46 -0
- package/modules/metering/package.json +50 -0
- package/modules/metering/spec/module.yaml +269 -0
- package/modules/metering/src/acl/permissions.ts +5 -0
- package/modules/metering/src/api/endpoints.ts +104 -0
- package/modules/metering/src/cli/commands.json +28 -0
- package/modules/metering/src/cli/index.ts +246 -0
- package/modules/metering/src/client/LimitsView.tsrx +170 -0
- package/modules/metering/src/client/UsageSummaryWidget.tsrx +63 -0
- package/modules/metering/src/client/UsageView.tsrx +205 -0
- package/modules/metering/src/client/api.ts +91 -0
- package/modules/metering/src/client/contribution.tsrx +42 -0
- package/modules/metering/src/client/index.ts +26 -0
- package/modules/metering/src/client/navigation.ts +54 -0
- package/modules/metering/src/client/presentation.ts +63 -0
- package/modules/metering/src/client/state.ts +31 -0
- package/modules/metering/src/domain/meters.ts +100 -0
- package/modules/metering/src/domain/types.ts +71 -0
- package/modules/metering/src/index.ts +51 -0
- package/modules/metering/src/platform.ts +84 -0
- package/modules/metering/src/server/index.ts +40 -0
- package/modules/metering/src/server/runtime.ts +165 -0
- package/modules/metering/src/services/data-classes.ts +34 -0
- package/modules/metering/src/services/database-repository.ts +574 -0
- package/modules/metering/src/services/index.ts +9 -0
- package/modules/metering/src/services/meter-registry.ts +145 -0
- package/modules/metering/src/services/metering-service.ts +441 -0
- package/modules/metering/src/services/migration.ts +183 -0
- package/modules/metering/src/services/notifications.ts +75 -0
- package/modules/metering/src/services/reports.ts +105 -0
- package/modules/metering/src/services/repository.ts +132 -0
- package/modules/metering/src/services/service-error.ts +46 -0
- package/modules/metering/src/settings.ts +47 -0
- package/modules/metering/translations/en.json +68 -0
- package/modules/metering/translations/pl.json +68 -0
- package/modules/notifications/migrations/0001_notifications_core.down.sql +1 -0
- package/modules/notifications/migrations/0001_notifications_core.up.sql +26 -0
- package/modules/notifications/migrations/0002_notifications_preferences.down.sql +1 -0
- package/modules/notifications/migrations/0002_notifications_preferences.up.sql +17 -0
- package/modules/notifications/migrations/0003_notifications_webhook_subscriptions.down.sql +1 -0
- package/modules/notifications/migrations/0003_notifications_webhook_subscriptions.up.sql +30 -0
- package/modules/notifications/migrations/0004_notifications_deliveries.down.sql +1 -0
- package/modules/notifications/migrations/0004_notifications_deliveries.up.sql +35 -0
- package/modules/notifications/migrations/0005_notifications_delivery_routing_role.down.sql +2 -0
- package/modules/notifications/migrations/0005_notifications_delivery_routing_role.up.sql +17 -0
- package/modules/notifications/migrations/0006_notifications_delivery_title.down.sql +1 -0
- package/modules/notifications/migrations/0006_notifications_delivery_title.up.sql +11 -0
- package/modules/notifications/migrations/0007_notifications_secret_rotation_inventory.down.sql +2 -0
- package/modules/notifications/migrations/0007_notifications_secret_rotation_inventory.up.sql +19 -0
- package/modules/notifications/migrations/0008_notifications_delivery_claim.down.sql +8 -0
- package/modules/notifications/migrations/0008_notifications_delivery_claim.up.sql +19 -0
- package/modules/notifications/migrations/0009_notifications_kind_approvals.down.sql +16 -0
- package/modules/notifications/migrations/0009_notifications_kind_approvals.up.sql +18 -0
- package/modules/notifications/migrations/0010_notifications_kind_meter_threshold.down.sql +16 -0
- package/modules/notifications/migrations/0010_notifications_kind_meter_threshold.up.sql +18 -0
- package/modules/notifications/migrations/0011_notifications_retention_keyset.down.sql +5 -0
- package/modules/notifications/migrations/0011_notifications_retention_keyset.up.sql +15 -0
- package/modules/notifications/migrations/0012_notifications_email_channel.down.sql +12 -0
- package/modules/notifications/migrations/0012_notifications_email_channel.up.sql +38 -0
- package/modules/notifications/migrations/0013_notifications_list_pages.down.sql +5 -0
- package/modules/notifications/migrations/0013_notifications_list_pages.up.sql +13 -0
- package/modules/notifications/migrations/README.md +3 -0
- package/modules/notifications/module.json +32 -0
- package/modules/notifications/package.json +49 -0
- package/modules/notifications/spec/module.yaml +718 -0
- package/modules/notifications/src/acl/permissions.ts +11 -0
- package/modules/notifications/src/api/endpoints.ts +814 -0
- package/modules/notifications/src/cli/commands.json +17 -0
- package/modules/notifications/src/cli/index.ts +126 -0
- package/modules/notifications/src/client/DeliveriesView.tsrx +483 -0
- package/modules/notifications/src/client/FactList.tsrx +24 -0
- package/modules/notifications/src/client/NotificationPreferencesView.tsrx +240 -0
- package/modules/notifications/src/client/NotificationsInboxView.tsrx +592 -0
- package/modules/notifications/src/client/UnreadCountWidget.tsrx +62 -0
- package/modules/notifications/src/client/WebhookForm.tsrx +297 -0
- package/modules/notifications/src/client/WebhooksView.tsrx +637 -0
- package/modules/notifications/src/client/api.ts +382 -0
- package/modules/notifications/src/client/contribution.tsrx +83 -0
- package/modules/notifications/src/client/inbox.ts +41 -0
- package/modules/notifications/src/client/index.ts +29 -0
- package/modules/notifications/src/client/navigation.ts +92 -0
- package/modules/notifications/src/client/notifications.css +70 -0
- package/modules/notifications/src/client/presentation.ts +81 -0
- package/modules/notifications/src/client/state.ts +246 -0
- package/modules/notifications/src/client/unread-count.ts +26 -0
- package/modules/notifications/src/domain/locale.ts +47 -0
- package/modules/notifications/src/domain/publish.ts +46 -0
- package/modules/notifications/src/domain/types.ts +186 -0
- package/modules/notifications/src/index.ts +62 -0
- package/modules/notifications/src/platform.ts +85 -0
- package/modules/notifications/src/server/index.ts +82 -0
- package/modules/notifications/src/server/runtime.ts +251 -0
- package/modules/notifications/src/services/data-classes.ts +139 -0
- package/modules/notifications/src/services/database-repository.ts +1334 -0
- package/modules/notifications/src/services/delivery-payload.ts +93 -0
- package/modules/notifications/src/services/delivery-runner.ts +170 -0
- package/modules/notifications/src/services/delivery-service.ts +811 -0
- package/modules/notifications/src/services/egress.ts +239 -0
- package/modules/notifications/src/services/email-channel.ts +93 -0
- package/modules/notifications/src/services/index.ts +23 -0
- package/modules/notifications/src/services/migration.ts +572 -0
- package/modules/notifications/src/services/notifications-service.ts +297 -0
- package/modules/notifications/src/services/paging.ts +60 -0
- package/modules/notifications/src/services/publish-service.ts +133 -0
- package/modules/notifications/src/services/repository.ts +342 -0
- package/modules/notifications/src/services/secret-rotation.ts +177 -0
- package/modules/notifications/src/services/secret-vault.ts +168 -0
- package/modules/notifications/src/services/service-error.ts +67 -0
- package/modules/notifications/src/services/signature.ts +81 -0
- package/modules/notifications/src/services/webhook-service.ts +307 -0
- package/modules/notifications/src/settings.ts +130 -0
- package/modules/notifications/translations/en.json +255 -0
- package/modules/notifications/translations/pl.json +255 -0
- package/modules/profile/module.json +3 -3
- package/modules/profile/package.json +1 -1
- package/modules/profile/spec/module.yaml +3 -3
- package/modules/profile/src/services/database-repository.ts +3 -13
- package/modules/reports/module.json +28 -0
- package/modules/reports/package.json +42 -0
- package/modules/reports/spec/module.yaml +231 -0
- package/modules/reports/src/acl/permissions.ts +5 -0
- package/modules/reports/src/api/endpoints.ts +72 -0
- package/modules/reports/src/client/ReportsSummaryWidget.tsrx +52 -0
- package/modules/reports/src/client/ReportsView.tsrx +246 -0
- package/modules/reports/src/client/api.ts +65 -0
- package/modules/reports/src/client/contribution.tsrx +36 -0
- package/modules/reports/src/client/index.ts +18 -0
- package/modules/reports/src/client/navigation.ts +39 -0
- package/modules/reports/src/client/presentation.ts +123 -0
- package/modules/reports/src/client/state.ts +28 -0
- package/modules/reports/src/domain/providers.ts +115 -0
- package/modules/reports/src/domain/types.ts +44 -0
- package/modules/reports/src/index.ts +47 -0
- package/modules/reports/src/platform.ts +37 -0
- package/modules/reports/src/server/index.ts +21 -0
- package/modules/reports/src/server/runtime.ts +40 -0
- package/modules/reports/src/services/index.ts +17 -0
- package/modules/reports/src/services/provider-registry.ts +144 -0
- package/modules/reports/src/services/range.ts +65 -0
- package/modules/reports/src/services/reports-service.ts +316 -0
- package/modules/reports/src/services/service-error.ts +26 -0
- package/modules/reports/src/settings.ts +49 -0
- package/modules/reports/translations/en.json +35 -0
- package/modules/reports/translations/pl.json +35 -0
- package/modules/sandbox/module.json +4 -4
- package/modules/sandbox/package.json +1 -1
- package/modules/sandbox/spec/module.yaml +3 -3
- package/modules/sandbox/src/services/database-repository.ts +14 -23
- package/modules/sandbox/src/services/directory.ts +16 -0
- package/modules/sandbox/src/services/sandbox-service.ts +13 -11
- package/modules/search/migrations/0001_search_core.down.sql +1 -0
- package/modules/search/migrations/0001_search_core.up.sql +22 -0
- package/modules/search/migrations/0002_search_recent_export.down.sql +3 -0
- package/modules/search/migrations/0002_search_recent_export.up.sql +5 -0
- package/modules/search/migrations/README.md +3 -0
- package/modules/search/module.json +28 -0
- package/modules/search/package.json +43 -0
- package/modules/search/spec/module.yaml +177 -0
- package/modules/search/src/acl/permissions.ts +5 -0
- package/modules/search/src/api/endpoints.ts +221 -0
- package/modules/search/src/client/SearchView.tsrx +346 -0
- package/modules/search/src/client/api.ts +157 -0
- package/modules/search/src/client/contribution.tsrx +31 -0
- package/modules/search/src/client/index.ts +17 -0
- package/modules/search/src/client/navigation.ts +97 -0
- package/modules/search/src/client/search.css +56 -0
- package/modules/search/src/client/state.ts +113 -0
- package/modules/search/src/domain/data-classes.ts +73 -0
- package/modules/search/src/domain/providers.ts +88 -0
- package/modules/search/src/domain/types.ts +56 -0
- package/modules/search/src/index.ts +46 -0
- package/modules/search/src/platform.ts +42 -0
- package/modules/search/src/server/index.ts +25 -0
- package/modules/search/src/server/runtime.ts +123 -0
- package/modules/search/src/services/database-repository.ts +163 -0
- package/modules/search/src/services/index.ts +21 -0
- package/modules/search/src/services/migration.ts +65 -0
- package/modules/search/src/services/provider-registry.ts +137 -0
- package/modules/search/src/services/repository.ts +43 -0
- package/modules/search/src/services/search-service.ts +442 -0
- package/modules/search/src/services/service-error.ts +35 -0
- package/modules/search/src/settings.ts +68 -0
- package/modules/search/translations/en.json +45 -0
- package/modules/search/translations/pl.json +45 -0
- package/modules/system/module.json +2 -2
- package/modules/system/package.json +1 -1
- package/modules/system/spec/module.yaml +30 -3
- package/modules/system/src/client/FlagsPanel.tsrx +127 -0
- package/modules/system/src/client/ModuleSettingRow.tsrx +17 -7
- package/modules/system/src/client/ModuleSettingsSection.tsrx +10 -71
- package/modules/system/src/client/ModulesView.tsrx +91 -65
- package/modules/system/src/client/flags.ts +35 -0
- package/modules/system/src/client/index.ts +8 -0
- package/modules/system/src/client/navigation.ts +8 -0
- package/modules/system/src/client/settings-state.ts +159 -0
- package/modules/system/src/client/state.ts +2 -0
- package/modules/system/src/domain/time-zone.ts +105 -0
- package/modules/system/src/index.ts +12 -0
- package/modules/system/src/platform.ts +5 -1
- package/modules/system/src/server/endpoints.ts +72 -21
- package/modules/system/src/settings.ts +28 -0
- package/modules/system/translations/en.json +17 -0
- package/modules/system/translations/pl.json +17 -0
- package/modules/users/module.json +30 -4
- package/modules/users/package.json +4 -1
- package/modules/users/spec/module.yaml +290 -7
- package/modules/users/src/api/endpoints.ts +228 -15
- package/modules/users/src/client/InviteMemberForm.tsrx +2 -2
- package/modules/users/src/client/MemberDrawer.tsrx +142 -26
- package/modules/users/src/client/UserAccountForm.tsrx +2 -2
- package/modules/users/src/client/UsersView.tsrx +432 -71
- package/modules/users/src/client/api.ts +106 -12
- package/modules/users/src/client/contribution.tsrx +5 -0
- package/modules/users/src/client/member-columns.tsrx +22 -9
- package/modules/users/src/client/state.ts +172 -7
- package/modules/users/src/domain/lists.ts +9 -0
- package/modules/users/src/index.ts +11 -0
- package/modules/users/src/platform.ts +50 -1
- package/modules/users/src/services/member-export.ts +51 -0
- package/modules/users/src/services/member-import.ts +249 -0
- package/modules/users/src/services/member-search.ts +145 -0
- package/modules/users/src/services/users-service.ts +117 -4
- package/modules/users/translations/en.json +57 -8
- package/modules/users/translations/pl.json +57 -8
- package/modules/workflows/migrations/0004_payload_rotation_inventory.up.sql +17 -0
- package/modules/workflows/migrations/0005_workflows_human_approval.up.sql +28 -0
- package/modules/workflows/migrations/0006_workflows_retention_indexes.up.sql +11 -0
- package/modules/workflows/migrations/0007_workflows_erasure_subject_indexes.up.sql +17 -0
- package/modules/workflows/migrations/0008_workflows_subject_account.up.sql +24 -0
- package/modules/workflows/migrations/0009_workflows_definition_list_indexes.up.sql +9 -0
- package/modules/workflows/module.json +34 -6
- package/modules/workflows/package.json +2 -1
- package/modules/workflows/spec/module.yaml +26 -9
- package/modules/workflows/src/api/endpoints.ts +131 -25
- package/modules/workflows/src/cli/commands.json +17 -0
- package/modules/workflows/src/cli/index.ts +114 -0
- package/modules/workflows/src/client/WorkflowExecutionHistory.tsrx +36 -27
- package/modules/workflows/src/client/WorkflowInspector.tsrx +116 -0
- package/modules/workflows/src/client/WorkflowNodePalette.tsrx +1 -0
- package/modules/workflows/src/client/WorkflowsView.tsrx +236 -99
- package/modules/workflows/src/client/api.ts +54 -34
- package/modules/workflows/src/client/canvas-model.ts +12 -0
- package/modules/workflows/src/client/state.ts +95 -0
- package/modules/workflows/src/domain/events.ts +25 -11
- package/modules/workflows/src/domain/graph.ts +135 -1
- package/modules/workflows/src/domain/types.ts +91 -4
- package/modules/workflows/src/platform.ts +12 -0
- package/modules/workflows/src/server/runtime.ts +78 -5
- package/modules/workflows/src/services/approvals.ts +62 -0
- package/modules/workflows/src/services/cursors.ts +37 -0
- package/modules/workflows/src/services/data-classes.ts +232 -0
- package/modules/workflows/src/services/database-repository.ts +660 -171
- package/modules/workflows/src/services/migration.ts +240 -0
- package/modules/workflows/src/services/notifications.ts +98 -0
- package/modules/workflows/src/services/payload-codec.ts +51 -28
- package/modules/workflows/src/services/payload-rotation.ts +171 -0
- package/modules/workflows/src/services/repository.ts +123 -8
- package/modules/workflows/src/services/simulation.ts +7 -0
- package/modules/workflows/src/services/worker.ts +446 -25
- package/modules/workflows/src/services/workflows-service.ts +264 -103
- package/modules/workflows/translations/en.json +12 -4
- package/modules/workflows/translations/pl.json +12 -4
- package/modules.json +48 -4
- package/package.json +64 -6
- package/packages/client/package.json +1 -0
- package/packages/client/src/ApplicationShell.tsrx +43 -0
- package/packages/client/src/contributions.ts +55 -0
- package/packages/client/src/i18n/locales/en.json +5 -0
- package/packages/client/src/i18n/locales/pl.json +5 -0
- package/packages/client/src/index.ts +13 -1
- package/packages/client/src/routing.ts +22 -0
- package/packages/client/src/shell/CommandPalette.tsrx +223 -11
- package/packages/client/src/shell/command-search.ts +126 -0
- package/packages/client/src/shell/command.ts +30 -0
- package/packages/client/src/shell/navigation.ts +12 -0
- package/packages/client/src/shell/palette-keys.ts +27 -0
- package/packages/client/src/shell/shell.css +7 -0
- package/packages/contracts/schemas/module-spec.schema.json +287 -1
- package/packages/contracts/schemas/module.schema.json +25 -0
- package/packages/contracts/src/index.ts +144 -1
- package/packages/database/src/backup.ts +179 -0
- package/packages/database/src/decoders.ts +25 -0
- package/packages/database/src/index.ts +17 -0
- package/packages/database/src/record-history.ts +5 -14
- package/packages/harness/src/index.ts +2 -0
- package/packages/harness/src/runtime.ts +218 -1
- package/packages/harness/src/tool-adapters.ts +19 -1
- package/packages/kernel/src/acl.ts +179 -0
- package/packages/kernel/src/capability-registry.ts +69 -2
- package/packages/kernel/src/data-class-registry.ts +354 -0
- package/packages/kernel/src/index.ts +65 -4
- package/packages/kernel/src/keyring.ts +208 -0
- package/packages/kernel/src/module-compatibility.ts +35 -4
- package/packages/kernel/src/module-registry.ts +49 -2
- package/packages/kernel/src/module-settings.ts +189 -27
- package/packages/server/package.json +2 -1
- package/packages/server/src/composition.ts +38 -0
- package/packages/server/src/endpoint.ts +104 -47
- package/packages/server/src/export/csv.ts +34 -0
- package/packages/server/src/export/definition.ts +346 -0
- package/packages/server/src/export/index.ts +61 -0
- package/packages/server/src/export/run.ts +116 -0
- package/packages/server/src/index.ts +155 -0
- package/packages/server/src/jobs/index.ts +93 -0
- package/packages/server/src/jobs/runner.ts +486 -0
- package/packages/server/src/log.ts +291 -0
- package/packages/server/src/mail/config.ts +184 -0
- package/packages/server/src/mail/contracts.ts +251 -0
- package/packages/server/src/mail/index.ts +31 -0
- package/packages/server/src/mail/port.ts +101 -0
- package/packages/server/src/mail/smtp.ts +191 -0
- package/packages/server/src/mail/template.ts +105 -0
- package/packages/server/src/metrics.ts +447 -0
- package/packages/server/src/pagination.ts +246 -0
- package/packages/server/src/trace/context.ts +103 -0
- package/packages/server/src/trace/egress.ts +66 -0
- package/packages/server/src/trace/error-sink.ts +296 -0
- package/packages/server/src/trace/exporter.ts +295 -0
- package/packages/server/src/trace/index.ts +60 -0
- package/packages/server/src/trace/job-sink.ts +172 -0
- package/packages/server/src/trace/tracer.ts +338 -0
- package/packages/server/src/web.ts +5 -1
- package/packages/storage/package.json +40 -0
- package/packages/storage/src/config.ts +189 -0
- package/packages/storage/src/content-type.ts +124 -0
- package/packages/storage/src/contracts.ts +112 -0
- package/packages/storage/src/envelope.ts +189 -0
- package/packages/storage/src/index.ts +43 -0
- package/packages/storage/src/local.ts +75 -0
- package/packages/storage/src/port.ts +251 -0
- package/packages/storage/src/read-token.ts +130 -0
- package/packages/storage/src/s3.ts +144 -0
- package/packages/storage/src/scanner.ts +22 -0
- package/packages/storage/src/sigv4.ts +104 -0
- package/packages/storage/src/store.ts +13 -0
- package/packages/ui/package.json +1 -0
- package/packages/ui/src/components/Button.tsrx +3 -0
- package/packages/ui/src/components/ConfirmDialog.tsrx +13 -2
- package/packages/ui/src/components/DateField.tsrx +92 -0
- package/packages/ui/src/components/DatePicker.tsrx +525 -0
- package/packages/ui/src/components/DateRangeField.tsrx +93 -0
- package/packages/ui/src/components/Drawer.tsrx +10 -1
- package/packages/ui/src/components/FileUpload.tsrx +158 -0
- package/packages/ui/src/components/Pagination.tsrx +130 -0
- package/packages/ui/src/components/Select.tsrx +78 -0
- package/packages/ui/src/components/Table.tsrx +498 -81
- package/packages/ui/src/components/Tabs.tsrx +53 -0
- package/packages/ui/src/components/ToastHost.tsrx +48 -0
- package/packages/ui/src/components/calendar.ts +243 -0
- package/packages/ui/src/components/date-field.ts +62 -0
- package/packages/ui/src/components/file-upload.ts +49 -0
- package/packages/ui/src/components/focus-trap.ts +62 -0
- package/packages/ui/src/components/pagination.ts +68 -0
- package/packages/ui/src/components/table-sorting.ts +49 -0
- package/packages/ui/src/components/tabs.ts +61 -0
- package/packages/ui/src/components/toast-store.ts +116 -0
- package/packages/ui/src/icons/Icon.tsrx +5 -0
- package/packages/ui/src/index.ts +45 -0
- package/packages/ui/src/styles/components.css +598 -0
- package/modules/automations-workflows-integration/module.json +0 -27
- package/modules/automations-workflows-integration/spec/module.yaml +0 -93
- package/modules/automations-workflows-integration/src/index.ts +0 -14
- package/modules/automations-workflows-integration/src/platform.ts +0 -24
- package/modules/automations-workflows-integration/src/server/index.ts +0 -11
- package/modules/automations-workflows-integration/translations/en.json +0 -21
- package/modules/automations-workflows-integration/translations/pl.json +0 -21
- package/modules/workflows/src/services/cursor-codec.ts +0 -62
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ACCESS_LIMITS,
|
|
3
|
+
type AccessReview,
|
|
4
|
+
type AccessReviewMember,
|
|
5
|
+
type AccessReviewProvider,
|
|
6
|
+
type AccessReviewRole,
|
|
7
|
+
type AccessReviewSection,
|
|
8
|
+
type AccessReviewToken,
|
|
9
|
+
} from '../domain/types.ts';
|
|
10
|
+
import type {
|
|
11
|
+
AccessDirectory,
|
|
12
|
+
DirectoryMember,
|
|
13
|
+
DirectoryRole,
|
|
14
|
+
} from './directory.ts';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* The scopes of the role a membership is assigned, by role id and by role key.
|
|
18
|
+
* The key is the fallback: a membership written before roles became rows keeps
|
|
19
|
+
* the role string and no id, and a review that ignored that would report every
|
|
20
|
+
* scope of those members as an extra grant.
|
|
21
|
+
*/
|
|
22
|
+
function roleScopeIndex(
|
|
23
|
+
roles: readonly DirectoryRole[],
|
|
24
|
+
): (member: DirectoryMember) => ReadonlySet<string> {
|
|
25
|
+
const byId = new Map<string, ReadonlySet<string>>();
|
|
26
|
+
const byKey = new Map<string, ReadonlySet<string>>();
|
|
27
|
+
for (const role of roles) {
|
|
28
|
+
const scopes: ReadonlySet<string> = new Set(role.scopes);
|
|
29
|
+
byId.set(role.id, scopes);
|
|
30
|
+
byKey.set(role.key, scopes);
|
|
31
|
+
}
|
|
32
|
+
const none: ReadonlySet<string> = new Set();
|
|
33
|
+
return (member) =>
|
|
34
|
+
(member.roleId === null ? undefined : byId.get(member.roleId)) ??
|
|
35
|
+
byKey.get(member.role) ??
|
|
36
|
+
none;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
function reviewMember(
|
|
40
|
+
member: DirectoryMember,
|
|
41
|
+
granted: ReadonlySet<string>,
|
|
42
|
+
): AccessReviewMember {
|
|
43
|
+
return {
|
|
44
|
+
accountId: member.accountId,
|
|
45
|
+
email: member.email,
|
|
46
|
+
displayName: member.displayName,
|
|
47
|
+
role: member.role,
|
|
48
|
+
roleId: member.roleId,
|
|
49
|
+
accountStatus: member.status,
|
|
50
|
+
membershipStatus: member.membershipStatus,
|
|
51
|
+
scopeCount: member.scopes.length,
|
|
52
|
+
/* The scope universe is the declared permissions of the installed
|
|
53
|
+
modules, so this stays a handful of entries even for a member somebody
|
|
54
|
+
granted everything. */
|
|
55
|
+
extraScopes: member.scopes.filter((scope) => !granted.has(scope)).sort(),
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* The review rows of one page of memberships. The row shape and the extra-grant
|
|
61
|
+
* rule are the review's, so a file of the review carries exactly what the screen
|
|
62
|
+
* shows; only how many members are read at a time differs.
|
|
63
|
+
*/
|
|
64
|
+
export function reviewMembers(
|
|
65
|
+
members: readonly DirectoryMember[],
|
|
66
|
+
roles: readonly DirectoryRole[],
|
|
67
|
+
): readonly AccessReviewMember[] {
|
|
68
|
+
const scopesOf = roleScopeIndex(roles);
|
|
69
|
+
return members.map((member) => reviewMember(member, scopesOf(member)));
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Who holds what in one workspace, read live from auth.core. Every field is
|
|
74
|
+
* copied across by name, so nothing the directory happens to carry beyond the
|
|
75
|
+
* declared shape reaches a response. Time is O(members plus roles plus tokens
|
|
76
|
+
* plus providers); the counts are exact even where a listing is capped.
|
|
77
|
+
*/
|
|
78
|
+
export async function buildReview(
|
|
79
|
+
directory: AccessDirectory,
|
|
80
|
+
tenantId: string,
|
|
81
|
+
now: number,
|
|
82
|
+
): Promise<AccessReview> {
|
|
83
|
+
const [members, roles, tokens, providers] = await Promise.all([
|
|
84
|
+
directory.members(tenantId),
|
|
85
|
+
directory.roles(tenantId),
|
|
86
|
+
directory.tokens(tenantId),
|
|
87
|
+
directory.providers(tenantId),
|
|
88
|
+
]);
|
|
89
|
+
|
|
90
|
+
const scopesOf = roleScopeIndex(roles);
|
|
91
|
+
const holders = new Map<string, number>();
|
|
92
|
+
const reviewed: AccessReviewMember[] = [];
|
|
93
|
+
let activeMembers = 0;
|
|
94
|
+
let extraScopeGrants = 0;
|
|
95
|
+
for (const member of members) {
|
|
96
|
+
const entry = reviewMember(member, scopesOf(member));
|
|
97
|
+
extraScopeGrants += entry.extraScopes.length;
|
|
98
|
+
if (member.membershipStatus === 'active' && member.status === 'active') {
|
|
99
|
+
activeMembers += 1;
|
|
100
|
+
}
|
|
101
|
+
const roleKey = member.roleId ?? member.role;
|
|
102
|
+
holders.set(roleKey, (holders.get(roleKey) ?? 0) + 1);
|
|
103
|
+
if (reviewed.length < ACCESS_LIMITS.members) reviewed.push(entry);
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
const reviewedRoles: AccessReviewRole[] = roles
|
|
107
|
+
.slice(0, ACCESS_LIMITS.roles)
|
|
108
|
+
.map((role) => ({
|
|
109
|
+
id: role.id,
|
|
110
|
+
key: role.key,
|
|
111
|
+
name: role.name,
|
|
112
|
+
builtin: role.builtin,
|
|
113
|
+
scopes: role.scopes,
|
|
114
|
+
holders: (holders.get(role.id) ?? 0) + (holders.get(role.key) ?? 0),
|
|
115
|
+
}));
|
|
116
|
+
|
|
117
|
+
const labels = new Map(
|
|
118
|
+
members.map((member) => [member.accountId, member.email]),
|
|
119
|
+
);
|
|
120
|
+
/* A review answers who holds access now, so a revoked or expired token is
|
|
121
|
+
not access any more. Both events stay visible in the activity report. */
|
|
122
|
+
const usable = tokens.filter(
|
|
123
|
+
(token) =>
|
|
124
|
+
token.revokedAt === null &&
|
|
125
|
+
(token.expiresAt === null || token.expiresAt > now),
|
|
126
|
+
);
|
|
127
|
+
const reviewedTokens: AccessReviewToken[] = usable
|
|
128
|
+
.slice(0, ACCESS_LIMITS.tokens)
|
|
129
|
+
.map((token) => ({
|
|
130
|
+
id: token.id,
|
|
131
|
+
label: token.label,
|
|
132
|
+
prefix: token.prefix,
|
|
133
|
+
accountId: token.accountId,
|
|
134
|
+
accountLabel: labels.get(token.accountId) ?? null,
|
|
135
|
+
scopes: token.scopes,
|
|
136
|
+
createdAt: token.createdAt,
|
|
137
|
+
expiresAt: token.expiresAt,
|
|
138
|
+
lastUsedAt: token.lastUsedAt,
|
|
139
|
+
}));
|
|
140
|
+
|
|
141
|
+
const reviewedProviders: AccessReviewProvider[] = providers
|
|
142
|
+
.slice(0, ACCESS_LIMITS.providers)
|
|
143
|
+
.map((provider) => ({
|
|
144
|
+
id: provider.id,
|
|
145
|
+
key: provider.key,
|
|
146
|
+
label: provider.label,
|
|
147
|
+
issuer: provider.issuer,
|
|
148
|
+
status: provider.status,
|
|
149
|
+
scope: provider.scope,
|
|
150
|
+
jitEnabled: provider.jitEnabled,
|
|
151
|
+
jitRole: provider.jitRole,
|
|
152
|
+
allowedDomains: provider.allowedDomains,
|
|
153
|
+
updatedAt: provider.updatedAt,
|
|
154
|
+
}));
|
|
155
|
+
|
|
156
|
+
const capped: AccessReviewSection[] = [];
|
|
157
|
+
if (reviewed.length < members.length) capped.push('members');
|
|
158
|
+
if (reviewedRoles.length < roles.length) capped.push('roles');
|
|
159
|
+
if (reviewedTokens.length < usable.length) capped.push('tokens');
|
|
160
|
+
if (reviewedProviders.length < providers.length) capped.push('providers');
|
|
161
|
+
|
|
162
|
+
return {
|
|
163
|
+
generatedAt: now,
|
|
164
|
+
members: reviewed,
|
|
165
|
+
roles: reviewedRoles,
|
|
166
|
+
tokens: reviewedTokens,
|
|
167
|
+
providers: reviewedProviders,
|
|
168
|
+
counts: {
|
|
169
|
+
members: members.length,
|
|
170
|
+
activeMembers,
|
|
171
|
+
roles: roles.length,
|
|
172
|
+
extraScopeGrants,
|
|
173
|
+
tokens: usable.length,
|
|
174
|
+
providers: providers.length,
|
|
175
|
+
},
|
|
176
|
+
capped,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
{
|
|
2
|
+
"module.name": "Access review",
|
|
3
|
+
"navigation.review": "Access review",
|
|
4
|
+
"navigation.reviewDescription": "Who holds what in this workspace right now.",
|
|
5
|
+
"navigation.activity": "Access activity",
|
|
6
|
+
"navigation.activityDescription": "What changed and what administrators did, between two dates.",
|
|
7
|
+
"navigation.attestations": "Attestations",
|
|
8
|
+
"navigation.attestationsDescription": "Recorded reviews of this workspace's access.",
|
|
9
|
+
"common.administration": "Administration",
|
|
10
|
+
"common.refresh": "Refresh",
|
|
11
|
+
"common.refreshing": "Refreshing…",
|
|
12
|
+
"common.loading": "Loading…",
|
|
13
|
+
"common.accessDenied": "Access denied",
|
|
14
|
+
"common.cancel": "Cancel",
|
|
15
|
+
"common.never": "Never",
|
|
16
|
+
"common.noMatchTitle": "Nothing matches",
|
|
17
|
+
"common.noMatchHint": "Change the search to widen the list.",
|
|
18
|
+
"status.active": "Active",
|
|
19
|
+
"status.disabled": "Disabled",
|
|
20
|
+
"category.membership": "Membership",
|
|
21
|
+
"category.role": "Role",
|
|
22
|
+
"category.scope": "Scopes",
|
|
23
|
+
"category.token": "API token",
|
|
24
|
+
"category.provider": "Provider",
|
|
25
|
+
"category.settings": "Settings",
|
|
26
|
+
"category.security": "Security",
|
|
27
|
+
"review.title": "Access review",
|
|
28
|
+
"review.description": "Who holds what in this workspace, read from the authentication core at the moment you asked.",
|
|
29
|
+
"review.denied": "You need the access review permission to see who holds what.",
|
|
30
|
+
"review.tabsLabel": "Review sections",
|
|
31
|
+
"review.tab.members": "Members ({count})",
|
|
32
|
+
"review.tab.roles": "Roles ({count})",
|
|
33
|
+
"review.tab.tokens": "API tokens ({count})",
|
|
34
|
+
"review.tab.providers": "Providers ({count})",
|
|
35
|
+
"review.kpi.members": "Members",
|
|
36
|
+
"review.kpi.membersNote": "{count} active in this workspace",
|
|
37
|
+
"review.kpi.extraScopes": "Scopes beyond a role",
|
|
38
|
+
"review.kpi.extraScopesNote": "Grants held on top of the assigned role",
|
|
39
|
+
"review.kpi.tokens": "Usable API tokens",
|
|
40
|
+
"review.kpi.tokensNote": "Neither revoked nor expired",
|
|
41
|
+
"review.kpi.providers": "Identity providers",
|
|
42
|
+
"review.kpi.providersNote": "Ways into this workspace besides a password",
|
|
43
|
+
"review.note": "Read live from the authentication core. Nothing on this screen is stored by the access module.",
|
|
44
|
+
"review.cappedNote": "This list stops at {count} rows. The counts above still cover the whole workspace.",
|
|
45
|
+
"review.column.member": "Member",
|
|
46
|
+
"review.column.role": "Role",
|
|
47
|
+
"review.column.status": "Status",
|
|
48
|
+
"review.column.scopes": "Scopes",
|
|
49
|
+
"review.column.extraScopes": "Beyond the role",
|
|
50
|
+
"review.column.roleName": "Role",
|
|
51
|
+
"review.column.roleKind": "Kind",
|
|
52
|
+
"review.column.holders": "Members",
|
|
53
|
+
"review.column.roleScopes": "Scopes",
|
|
54
|
+
"review.column.tokenLabel": "Token",
|
|
55
|
+
"review.column.tokenHolder": "Holder",
|
|
56
|
+
"review.column.tokenScopes": "Scopes",
|
|
57
|
+
"review.column.expires": "Expires",
|
|
58
|
+
"review.column.lastUsed": "Last used",
|
|
59
|
+
"review.column.provider": "Provider",
|
|
60
|
+
"review.column.issuer": "Issuer",
|
|
61
|
+
"review.column.joining": "Joining",
|
|
62
|
+
"review.noExtraScopes": "None",
|
|
63
|
+
"review.noExpiry": "No expiry",
|
|
64
|
+
"review.builtin": "Built in",
|
|
65
|
+
"review.custom": "Custom",
|
|
66
|
+
"review.jitOn": "Creates {role} for {domains}",
|
|
67
|
+
"review.jitOff": "Existing members only",
|
|
68
|
+
"review.anyDomain": "any domain",
|
|
69
|
+
"review.search.label": "Search members",
|
|
70
|
+
"review.search.placeholder": "Name or e-mail",
|
|
71
|
+
"review.members.title": "Members",
|
|
72
|
+
"review.members.count": "{count} listed",
|
|
73
|
+
"review.members.caption": "Members of this workspace",
|
|
74
|
+
"review.members.emptyTitle": "No members",
|
|
75
|
+
"review.members.emptyHint": "A workspace always keeps one owner, so this list is normally never empty.",
|
|
76
|
+
"review.roles.title": "Roles",
|
|
77
|
+
"review.roles.count": "{count} listed",
|
|
78
|
+
"review.roles.caption": "Roles of this workspace",
|
|
79
|
+
"review.roles.emptyTitle": "No roles",
|
|
80
|
+
"review.roles.emptyHint": "The built-in owner and member roles appear here once the workspace is set up.",
|
|
81
|
+
"review.tokens.title": "API tokens",
|
|
82
|
+
"review.tokens.count": "{count} listed",
|
|
83
|
+
"review.tokens.caption": "Usable API tokens of this workspace",
|
|
84
|
+
"review.tokens.emptyTitle": "No usable tokens",
|
|
85
|
+
"review.tokens.emptyHint": "Tokens are issued from the security screen and appear here until they are revoked or expire.",
|
|
86
|
+
"review.tokens.note": "Revoked and expired tokens are not access any more, so they are left out. Their issue and revocation stay in the activity report.",
|
|
87
|
+
"review.providers.title": "Identity providers",
|
|
88
|
+
"review.providers.count": "{count} listed",
|
|
89
|
+
"review.providers.caption": "Identity providers of this workspace",
|
|
90
|
+
"review.providers.emptyTitle": "No identity providers",
|
|
91
|
+
"review.providers.emptyHint": "Members sign in with a password until a provider is configured.",
|
|
92
|
+
"review.providers.note": "Which member is linked to which provider is not readable yet, so this lists the providers and the rules by which people join through them.",
|
|
93
|
+
"review.error.load": "The review could not be loaded.",
|
|
94
|
+
"activity.title": "Access activity",
|
|
95
|
+
"activity.description": "What changed between two dates, and what administrators did, read from the platform audit trail.",
|
|
96
|
+
"activity.denied": "You need the access review permission to see this activity.",
|
|
97
|
+
"activity.tabsLabel": "Activity reports",
|
|
98
|
+
"activity.tab.diff": "Changes",
|
|
99
|
+
"activity.tab.activity": "Administrative activity",
|
|
100
|
+
"activity.diff.title": "Changes in this period",
|
|
101
|
+
"activity.activity.title": "Administrative activity",
|
|
102
|
+
"activity.count": "{count} loaded",
|
|
103
|
+
"activity.caption": "Recorded changes of this workspace",
|
|
104
|
+
"activity.range": "Period",
|
|
105
|
+
"activity.from": "From",
|
|
106
|
+
"activity.to": "To",
|
|
107
|
+
"activity.reversed": "The end of the period is before its start.",
|
|
108
|
+
"activity.more": "Load more",
|
|
109
|
+
"activity.note": "The trail is read in pages, newest first. Legal holds and erasures live in the audit module's own trail and are not part of this report yet.",
|
|
110
|
+
"activity.emptyHint": "Widen the period, or change the report, to see more.",
|
|
111
|
+
"activity.diff.emptyTitle": "Nothing changed in this period",
|
|
112
|
+
"activity.activity.emptyTitle": "No administrative activity in this period",
|
|
113
|
+
"activity.column.time": "When",
|
|
114
|
+
"activity.column.category": "Kind",
|
|
115
|
+
"activity.column.action": "Action",
|
|
116
|
+
"activity.column.actor": "Who",
|
|
117
|
+
"activity.column.subject": "Subject",
|
|
118
|
+
"activity.error.load": "The report could not be loaded.",
|
|
119
|
+
"attestations.title": "Attestations",
|
|
120
|
+
"attestations.description": "Every recorded review of this workspace's access, with the counts as they stood.",
|
|
121
|
+
"attestations.denied": "You need the access review permission to see the attestations.",
|
|
122
|
+
"attestations.table.title": "Recorded attestations",
|
|
123
|
+
"attestations.count": "{count} loaded",
|
|
124
|
+
"attestations.caption": "Attestations of this workspace",
|
|
125
|
+
"attestations.emptyTitle": "No attestation yet",
|
|
126
|
+
"attestations.emptyHint": "Record one from the review screen once you have been through it.",
|
|
127
|
+
"attestations.more": "Load more",
|
|
128
|
+
"attestations.note": "An attestation is never edited or removed. A later review is recorded beside it.",
|
|
129
|
+
"attestations.noNote": "No note",
|
|
130
|
+
"attestations.membersValue": "{total} ({active} active)",
|
|
131
|
+
"attestations.column.period": "Period",
|
|
132
|
+
"attestations.column.reviewer": "Reviewer",
|
|
133
|
+
"attestations.column.members": "Members",
|
|
134
|
+
"attestations.column.extraScopes": "Beyond a role",
|
|
135
|
+
"attestations.column.tokens": "Tokens",
|
|
136
|
+
"attestations.column.note": "Note",
|
|
137
|
+
"attestations.error.load": "The attestations could not be loaded.",
|
|
138
|
+
"attest.action": "Record attestation",
|
|
139
|
+
"attest.title": "Record an attestation",
|
|
140
|
+
"attest.subtitle": "The counts are taken from the review as it stands now.",
|
|
141
|
+
"attest.from": "Period from",
|
|
142
|
+
"attest.to": "Period to",
|
|
143
|
+
"attest.note": "Note",
|
|
144
|
+
"attest.noteHelp": "What the next reviewer should know. At most 2000 characters.",
|
|
145
|
+
"attest.record": "Record",
|
|
146
|
+
"attest.recording": "Recording…",
|
|
147
|
+
"attest.evidence": "Recorded as: {members} members, {scopes} scopes beyond a role, {tokens} usable tokens.",
|
|
148
|
+
"attest.error.record": "The attestation could not be recorded.",
|
|
149
|
+
"error.request": "The access review request failed.",
|
|
150
|
+
"error.code.INVALID_INPUT": "The period is not a pair of calendar dates.",
|
|
151
|
+
"error.code.RANGE_REVERSED": "The end of the period is before its start.",
|
|
152
|
+
"error.code.RANGE_TOO_LONG": "A period covers at most 366 days.",
|
|
153
|
+
"error.code.CURSOR_INVALID": "That page is no longer valid. Load the report again.",
|
|
154
|
+
"error.code.CSRF_REJECTED": "Your session proof was refused. Reload the page and try again."
|
|
155
|
+
}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
{
|
|
2
|
+
"module.name": "Przegląd dostępu",
|
|
3
|
+
"navigation.review": "Przegląd dostępu",
|
|
4
|
+
"navigation.reviewDescription": "Kto ma jaki dostęp w tej przestrzeni w tej chwili.",
|
|
5
|
+
"navigation.activity": "Aktywność dostępu",
|
|
6
|
+
"navigation.activityDescription": "Co się zmieniło i co zrobili administratorzy między dwiema datami.",
|
|
7
|
+
"navigation.attestations": "Poświadczenia",
|
|
8
|
+
"navigation.attestationsDescription": "Zapisane przeglądy dostępu w tej przestrzeni.",
|
|
9
|
+
"common.administration": "Administracja",
|
|
10
|
+
"common.refresh": "Odśwież",
|
|
11
|
+
"common.refreshing": "Odświeżanie…",
|
|
12
|
+
"common.loading": "Wczytywanie…",
|
|
13
|
+
"common.accessDenied": "Brak dostępu",
|
|
14
|
+
"common.cancel": "Anuluj",
|
|
15
|
+
"common.never": "Nigdy",
|
|
16
|
+
"common.noMatchTitle": "Brak dopasowań",
|
|
17
|
+
"common.noMatchHint": "Zmień wyszukiwanie, aby poszerzyć listę.",
|
|
18
|
+
"status.active": "Aktywny",
|
|
19
|
+
"status.disabled": "Wyłączony",
|
|
20
|
+
"category.membership": "Członkostwo",
|
|
21
|
+
"category.role": "Rola",
|
|
22
|
+
"category.scope": "Uprawnienia",
|
|
23
|
+
"category.token": "Token API",
|
|
24
|
+
"category.provider": "Dostawca",
|
|
25
|
+
"category.settings": "Ustawienia",
|
|
26
|
+
"category.security": "Bezpieczeństwo",
|
|
27
|
+
"review.title": "Przegląd dostępu",
|
|
28
|
+
"review.description": "Kto ma jaki dostęp w tej przestrzeni, odczytane z modułu uwierzytelniania w chwili zapytania.",
|
|
29
|
+
"review.denied": "Potrzebujesz uprawnienia do przeglądu dostępu, aby zobaczyć, kto co posiada.",
|
|
30
|
+
"review.tabsLabel": "Sekcje przeglądu",
|
|
31
|
+
"review.tab.members": "Osoby ({count})",
|
|
32
|
+
"review.tab.roles": "Role ({count})",
|
|
33
|
+
"review.tab.tokens": "Tokeny API ({count})",
|
|
34
|
+
"review.tab.providers": "Dostawcy ({count})",
|
|
35
|
+
"review.kpi.members": "Osoby",
|
|
36
|
+
"review.kpi.membersNote": "Aktywnych w tej przestrzeni: {count}",
|
|
37
|
+
"review.kpi.extraScopes": "Uprawnienia ponad rolę",
|
|
38
|
+
"review.kpi.extraScopesNote": "Nadania poza zakresem przypisanej roli",
|
|
39
|
+
"review.kpi.tokens": "Używalne tokeny API",
|
|
40
|
+
"review.kpi.tokensNote": "Ani odwołane, ani wygasłe",
|
|
41
|
+
"review.kpi.providers": "Dostawcy tożsamości",
|
|
42
|
+
"review.kpi.providersNote": "Drogi do przestrzeni inne niż hasło",
|
|
43
|
+
"review.note": "Dane czytane na żywo z modułu uwierzytelniania. Moduł dostępu nie przechowuje niczego z tego ekranu.",
|
|
44
|
+
"review.cappedNote": "Ta lista kończy się na {count} wierszach. Liczniki powyżej obejmują całą przestrzeń.",
|
|
45
|
+
"review.column.member": "Osoba",
|
|
46
|
+
"review.column.role": "Rola",
|
|
47
|
+
"review.column.status": "Status",
|
|
48
|
+
"review.column.scopes": "Uprawnienia",
|
|
49
|
+
"review.column.extraScopes": "Ponad rolę",
|
|
50
|
+
"review.column.roleName": "Rola",
|
|
51
|
+
"review.column.roleKind": "Rodzaj",
|
|
52
|
+
"review.column.holders": "Osoby",
|
|
53
|
+
"review.column.roleScopes": "Uprawnienia",
|
|
54
|
+
"review.column.tokenLabel": "Token",
|
|
55
|
+
"review.column.tokenHolder": "Właściciel",
|
|
56
|
+
"review.column.tokenScopes": "Uprawnienia",
|
|
57
|
+
"review.column.expires": "Wygasa",
|
|
58
|
+
"review.column.lastUsed": "Ostatnio użyty",
|
|
59
|
+
"review.column.provider": "Dostawca",
|
|
60
|
+
"review.column.issuer": "Wystawca",
|
|
61
|
+
"review.column.joining": "Dołączanie",
|
|
62
|
+
"review.noExtraScopes": "Brak",
|
|
63
|
+
"review.noExpiry": "Bez terminu",
|
|
64
|
+
"review.builtin": "Wbudowana",
|
|
65
|
+
"review.custom": "Własna",
|
|
66
|
+
"review.jitOn": "Tworzy rolę {role} dla {domains}",
|
|
67
|
+
"review.jitOff": "Tylko istniejące osoby",
|
|
68
|
+
"review.anyDomain": "dowolnej domeny",
|
|
69
|
+
"review.search.label": "Szukaj osób",
|
|
70
|
+
"review.search.placeholder": "Nazwa lub e-mail",
|
|
71
|
+
"review.members.title": "Osoby",
|
|
72
|
+
"review.members.count": "Na liście: {count}",
|
|
73
|
+
"review.members.caption": "Osoby w tej przestrzeni",
|
|
74
|
+
"review.members.emptyTitle": "Brak osób",
|
|
75
|
+
"review.members.emptyHint": "Przestrzeń zawsze zachowuje jednego właściciela, więc ta lista zwykle nie bywa pusta.",
|
|
76
|
+
"review.roles.title": "Role",
|
|
77
|
+
"review.roles.count": "Na liście: {count}",
|
|
78
|
+
"review.roles.caption": "Role w tej przestrzeni",
|
|
79
|
+
"review.roles.emptyTitle": "Brak ról",
|
|
80
|
+
"review.roles.emptyHint": "Wbudowane role właściciela i członka pojawią się tu po skonfigurowaniu przestrzeni.",
|
|
81
|
+
"review.tokens.title": "Tokeny API",
|
|
82
|
+
"review.tokens.count": "Na liście: {count}",
|
|
83
|
+
"review.tokens.caption": "Używalne tokeny API tej przestrzeni",
|
|
84
|
+
"review.tokens.emptyTitle": "Brak używalnych tokenów",
|
|
85
|
+
"review.tokens.emptyHint": "Tokeny wydaje się na ekranie bezpieczeństwa i widać je tu do odwołania lub wygaśnięcia.",
|
|
86
|
+
"review.tokens.note": "Odwołane i wygasłe tokeny nie dają już dostępu, więc ich tu nie ma. Ich wydanie i odwołanie zostaje w raporcie aktywności.",
|
|
87
|
+
"review.providers.title": "Dostawcy tożsamości",
|
|
88
|
+
"review.providers.count": "Na liście: {count}",
|
|
89
|
+
"review.providers.caption": "Dostawcy tożsamości tej przestrzeni",
|
|
90
|
+
"review.providers.emptyTitle": "Brak dostawców tożsamości",
|
|
91
|
+
"review.providers.emptyHint": "Do czasu skonfigurowania dostawcy osoby logują się hasłem.",
|
|
92
|
+
"review.providers.note": "Powiązania konkretnych osób z dostawcami nie da się jeszcze odczytać, więc lista pokazuje dostawców i zasady dołączania przez nich.",
|
|
93
|
+
"review.error.load": "Nie udało się wczytać przeglądu.",
|
|
94
|
+
"activity.title": "Aktywność dostępu",
|
|
95
|
+
"activity.description": "Co zmieniło się między dwiema datami i co zrobili administratorzy, na podstawie dziennika platformy.",
|
|
96
|
+
"activity.denied": "Potrzebujesz uprawnienia do przeglądu dostępu, aby zobaczyć tę aktywność.",
|
|
97
|
+
"activity.tabsLabel": "Raporty aktywności",
|
|
98
|
+
"activity.tab.diff": "Zmiany",
|
|
99
|
+
"activity.tab.activity": "Działania administracyjne",
|
|
100
|
+
"activity.diff.title": "Zmiany w tym okresie",
|
|
101
|
+
"activity.activity.title": "Działania administracyjne",
|
|
102
|
+
"activity.count": "Wczytano: {count}",
|
|
103
|
+
"activity.caption": "Zapisane zmiany w tej przestrzeni",
|
|
104
|
+
"activity.range": "Okres",
|
|
105
|
+
"activity.from": "Od",
|
|
106
|
+
"activity.to": "Do",
|
|
107
|
+
"activity.reversed": "Koniec okresu wypada przed jego początkiem.",
|
|
108
|
+
"activity.more": "Wczytaj więcej",
|
|
109
|
+
"activity.note": "Dziennik czytany jest stronami, od najnowszych. Blokady prawne i usunięcia danych są w dzienniku modułu audytu i nie wchodzą jeszcze do tego raportu.",
|
|
110
|
+
"activity.emptyHint": "Poszerz okres lub zmień raport, aby zobaczyć więcej.",
|
|
111
|
+
"activity.diff.emptyTitle": "W tym okresie nic się nie zmieniło",
|
|
112
|
+
"activity.activity.emptyTitle": "Brak działań administracyjnych w tym okresie",
|
|
113
|
+
"activity.column.time": "Kiedy",
|
|
114
|
+
"activity.column.category": "Rodzaj",
|
|
115
|
+
"activity.column.action": "Działanie",
|
|
116
|
+
"activity.column.actor": "Kto",
|
|
117
|
+
"activity.column.subject": "Czego dotyczy",
|
|
118
|
+
"activity.error.load": "Nie udało się wczytać raportu.",
|
|
119
|
+
"attestations.title": "Poświadczenia",
|
|
120
|
+
"attestations.description": "Każdy zapisany przegląd dostępu w tej przestrzeni wraz z licznikami z tamtej chwili.",
|
|
121
|
+
"attestations.denied": "Potrzebujesz uprawnienia do przeglądu dostępu, aby zobaczyć poświadczenia.",
|
|
122
|
+
"attestations.table.title": "Zapisane poświadczenia",
|
|
123
|
+
"attestations.count": "Wczytano: {count}",
|
|
124
|
+
"attestations.caption": "Poświadczenia tej przestrzeni",
|
|
125
|
+
"attestations.emptyTitle": "Brak poświadczeń",
|
|
126
|
+
"attestations.emptyHint": "Zapisz je na ekranie przeglądu po jego wykonaniu.",
|
|
127
|
+
"attestations.more": "Wczytaj więcej",
|
|
128
|
+
"attestations.note": "Poświadczenia nie są edytowane ani usuwane. Kolejny przegląd zapisuje się obok.",
|
|
129
|
+
"attestations.noNote": "Bez notatki",
|
|
130
|
+
"attestations.membersValue": "{total} (aktywnych: {active})",
|
|
131
|
+
"attestations.column.period": "Okres",
|
|
132
|
+
"attestations.column.reviewer": "Osoba przeglądająca",
|
|
133
|
+
"attestations.column.members": "Osoby",
|
|
134
|
+
"attestations.column.extraScopes": "Ponad rolę",
|
|
135
|
+
"attestations.column.tokens": "Tokeny",
|
|
136
|
+
"attestations.column.note": "Notatka",
|
|
137
|
+
"attestations.error.load": "Nie udało się wczytać poświadczeń.",
|
|
138
|
+
"attest.action": "Zapisz poświadczenie",
|
|
139
|
+
"attest.title": "Zapisz poświadczenie",
|
|
140
|
+
"attest.subtitle": "Liczniki pochodzą z przeglądu w obecnym kształcie.",
|
|
141
|
+
"attest.from": "Okres od",
|
|
142
|
+
"attest.to": "Okres do",
|
|
143
|
+
"attest.note": "Notatka",
|
|
144
|
+
"attest.noteHelp": "Co powinna wiedzieć kolejna osoba przeglądająca. Najwyżej 2000 znaków.",
|
|
145
|
+
"attest.record": "Zapisz",
|
|
146
|
+
"attest.recording": "Zapisywanie…",
|
|
147
|
+
"attest.evidence": "Zostanie zapisane: osoby {members}, uprawnienia ponad rolę {scopes}, używalne tokeny {tokens}.",
|
|
148
|
+
"attest.error.record": "Nie udało się zapisać poświadczenia.",
|
|
149
|
+
"error.request": "Żądanie przeglądu dostępu nie powiodło się.",
|
|
150
|
+
"error.code.INVALID_INPUT": "Okres nie jest parą dat kalendarzowych.",
|
|
151
|
+
"error.code.RANGE_REVERSED": "Koniec okresu wypada przed jego początkiem.",
|
|
152
|
+
"error.code.RANGE_TOO_LONG": "Okres obejmuje najwyżej 366 dni.",
|
|
153
|
+
"error.code.CURSOR_INVALID": "Ta strona wyników jest już nieaktualna. Wczytaj raport ponownie.",
|
|
154
|
+
"error.code.CSRF_REJECTED": "Potwierdzenie sesji zostało odrzucone. Odśwież stronę i spróbuj ponownie."
|
|
155
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
-- The rotation command has to find the connections still sealed with a retired
|
|
2
|
+
-- key before it knows whose they are. It is granted the routing columns and the
|
|
3
|
+
-- key id alone: the nonce, the tag and the ciphertext stay unreadable on this
|
|
4
|
+
-- connection, and every row it re-seals is read again under the tenant that row
|
|
5
|
+
-- named.
|
|
6
|
+
GRANT SELECT (tenant_id, credential_key_id)
|
|
7
|
+
ON agent_provider_connections TO coreloom_background;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
-- The retention sweep of agents.core.runs asks one workspace for its oldest
|
|
2
|
+
-- settled runs, and a subject erasure asks it for the runs one account
|
|
3
|
+
-- requested. Both are bounded batches, so both need a range scan rather than a
|
|
4
|
+
-- pass over the workspace's runs; the export walks the order
|
|
5
|
+
-- agent_runs_tenant_queued_idx already carries and needs no index of its own.
|
|
6
|
+
CREATE INDEX IF NOT EXISTS agent_runs_tenant_settled_idx
|
|
7
|
+
ON agent_runs (tenant_id, completed_at);
|
|
8
|
+
CREATE INDEX IF NOT EXISTS agent_runs_tenant_requested_idx
|
|
9
|
+
ON agent_runs (tenant_id, requested_by, id);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
-- A meter refusal stands until the workspace's month turns or its limit is
|
|
2
|
+
-- raised, so recording it on every refused enqueue wrote the same fact to the
|
|
3
|
+
-- hash-chained trail as fast as a caller could retry. This row is the claim
|
|
4
|
+
-- that the refusal has already been recorded: the first refusal of a workspace,
|
|
5
|
+
-- a meter and a month takes it and writes the audit event, and every refusal
|
|
6
|
+
-- behind it is answered without touching the trail.
|
|
7
|
+
--
|
|
8
|
+
-- One row per workspace and meter at a time. The claim removes the rows of
|
|
9
|
+
-- earlier months for that workspace and meter in the same transaction, so the
|
|
10
|
+
-- table is bounded by the meters agents.core declares rather than by time.
|
|
11
|
+
CREATE TABLE IF NOT EXISTS agent_meter_refusals (
|
|
12
|
+
tenant_id TEXT NOT NULL,
|
|
13
|
+
meter TEXT NOT NULL,
|
|
14
|
+
period TEXT NOT NULL,
|
|
15
|
+
first_refused_at BIGINT NOT NULL,
|
|
16
|
+
PRIMARY KEY (tenant_id, meter, period)
|
|
17
|
+
);
|
|
18
|
+
ALTER TABLE agent_meter_refusals ENABLE ROW LEVEL SECURITY;
|
|
19
|
+
ALTER TABLE agent_meter_refusals FORCE ROW LEVEL SECURITY;
|
|
20
|
+
CREATE POLICY agent_meter_refusals_tenant_policy ON agent_meter_refusals
|
|
21
|
+
USING (tenant_id = current_setting('coreloom.tenant_id', true))
|
|
22
|
+
WITH CHECK (tenant_id = current_setting('coreloom.tenant_id', true));
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
-- agents.definitions.list pages by lower(name) or updated_at, each followed by
|
|
2
|
+
-- id, and agent_definitions_tenant_name_idx orders by the raw name, so neither
|
|
3
|
+
-- paged read had an index carrying its order. agents.runs.list orders queued_at
|
|
4
|
+
-- and id in one direction, while agent_runs_tenant_queued_idx carries queued_at
|
|
5
|
+
-- descending beside an ascending id, so the planner sorted every page.
|
|
6
|
+
CREATE INDEX IF NOT EXISTS agent_definitions_tenant_name_key_idx
|
|
7
|
+
ON agent_definitions (tenant_id, lower(name), id);
|
|
8
|
+
CREATE INDEX IF NOT EXISTS agent_definitions_tenant_updated_idx
|
|
9
|
+
ON agent_definitions (tenant_id, updated_at, id);
|
|
10
|
+
CREATE INDEX IF NOT EXISTS agent_runs_tenant_queue_order_idx
|
|
11
|
+
ON agent_runs (tenant_id, queued_at, id);
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"schemaVersion": 1,
|
|
4
4
|
"id": "agents.core",
|
|
5
5
|
"package": "@flowdular/module-agents",
|
|
6
|
-
"version": "0.9
|
|
6
|
+
"version": "0.12.9",
|
|
7
7
|
"profile": "full",
|
|
8
8
|
"capabilities": [
|
|
9
9
|
"api",
|
|
@@ -20,11 +20,37 @@
|
|
|
20
20
|
"dependencies": [
|
|
21
21
|
{
|
|
22
22
|
"id": "system.core",
|
|
23
|
-
"range": "0.
|
|
23
|
+
"range": "^0.7.0"
|
|
24
24
|
},
|
|
25
25
|
{
|
|
26
26
|
"id": "auth.core",
|
|
27
|
-
"range": "0.
|
|
27
|
+
"range": "^0.13.0"
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"id": "metering.core",
|
|
31
|
+
"range": "^0.1.0"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"id": "reports.core",
|
|
35
|
+
"range": "^0.1.0"
|
|
36
|
+
}
|
|
37
|
+
],
|
|
38
|
+
"provides": [
|
|
39
|
+
"agents.run-queue",
|
|
40
|
+
"agents.run-execution.v2",
|
|
41
|
+
"agents.actions.v1"
|
|
42
|
+
],
|
|
43
|
+
"requires": [
|
|
44
|
+
{
|
|
45
|
+
"id": "notifications.publish.v1",
|
|
46
|
+
"optional": true
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"id": "metering.meters.v1"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"id": "reports.v1",
|
|
53
|
+
"optional": true
|
|
28
54
|
}
|
|
29
55
|
],
|
|
30
56
|
"tenancy": "required",
|
|
@@ -34,5 +60,5 @@
|
|
|
34
60
|
"catalog": "src/cli/commands.json",
|
|
35
61
|
"entry": "src/cli/index.ts"
|
|
36
62
|
},
|
|
37
|
-
"platformApi": "0.1.0"
|
|
63
|
+
"platformApi": "^0.1.0"
|
|
38
64
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flowdular/module-agents",
|
|
3
|
-
"version": "0.9
|
|
3
|
+
"version": "0.12.9",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./src/index.ts",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"@flowdular/harness": "workspace:*",
|
|
22
22
|
"@flowdular/kernel": "workspace:*",
|
|
23
23
|
"@flowdular/module-auth": "workspace:*",
|
|
24
|
+
"@flowdular/module-reports": "workspace:*",
|
|
24
25
|
"@flowdular/server": "workspace:*",
|
|
25
26
|
"@flowdular/ui": "workspace:*",
|
|
26
27
|
"octane": "0.1.51",
|