agentic-qe 3.3.5 → 3.4.1
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/.claude/helpers/statusline-v3.cjs +47 -0
- package/.claude/skills/qcsd-ideation-swarm/SKILL.md +7 -4
- package/CHANGELOG.md +23 -0
- package/README.md +69 -0
- package/package.json +1 -1
- package/v3/CHANGELOG.md +91 -0
- package/v3/README.md +117 -0
- package/v3/assets/skills/qcsd-ideation-swarm/SKILL.md +7 -4
- package/v3/dist/adapters/a2a/agent-cards/generator.d.ts +153 -0
- package/v3/dist/adapters/a2a/agent-cards/generator.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/agent-cards/generator.js +478 -0
- package/v3/dist/adapters/a2a/agent-cards/generator.js.map +1 -0
- package/v3/dist/adapters/a2a/agent-cards/schema.d.ts +274 -0
- package/v3/dist/adapters/a2a/agent-cards/schema.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/agent-cards/schema.js +135 -0
- package/v3/dist/adapters/a2a/agent-cards/schema.js.map +1 -0
- package/v3/dist/adapters/a2a/agent-cards/validator.d.ts +514 -0
- package/v3/dist/adapters/a2a/agent-cards/validator.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/agent-cards/validator.js +555 -0
- package/v3/dist/adapters/a2a/agent-cards/validator.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/index.d.ts +23 -0
- package/v3/dist/adapters/a2a/auth/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/index.js +85 -0
- package/v3/dist/adapters/a2a/auth/index.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/jwt-utils.d.ts +215 -0
- package/v3/dist/adapters/a2a/auth/jwt-utils.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/jwt-utils.js +314 -0
- package/v3/dist/adapters/a2a/auth/jwt-utils.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/middleware.d.ts +173 -0
- package/v3/dist/adapters/a2a/auth/middleware.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/middleware.js +300 -0
- package/v3/dist/adapters/a2a/auth/middleware.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/oauth-provider.d.ts +308 -0
- package/v3/dist/adapters/a2a/auth/oauth-provider.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/oauth-provider.js +573 -0
- package/v3/dist/adapters/a2a/auth/oauth-provider.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/routes.d.ts +244 -0
- package/v3/dist/adapters/a2a/auth/routes.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/routes.js +496 -0
- package/v3/dist/adapters/a2a/auth/routes.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/scopes.d.ts +219 -0
- package/v3/dist/adapters/a2a/auth/scopes.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/scopes.js +292 -0
- package/v3/dist/adapters/a2a/auth/scopes.js.map +1 -0
- package/v3/dist/adapters/a2a/auth/token-store.d.ts +278 -0
- package/v3/dist/adapters/a2a/auth/token-store.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/auth/token-store.js +453 -0
- package/v3/dist/adapters/a2a/auth/token-store.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/agent-health.d.ts +226 -0
- package/v3/dist/adapters/a2a/discovery/agent-health.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/agent-health.js +426 -0
- package/v3/dist/adapters/a2a/discovery/agent-health.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/discovery-service.d.ts +296 -0
- package/v3/dist/adapters/a2a/discovery/discovery-service.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/discovery-service.js +520 -0
- package/v3/dist/adapters/a2a/discovery/discovery-service.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/file-watcher.d.ts +166 -0
- package/v3/dist/adapters/a2a/discovery/file-watcher.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/file-watcher.js +385 -0
- package/v3/dist/adapters/a2a/discovery/file-watcher.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/hot-reload-service.d.ts +226 -0
- package/v3/dist/adapters/a2a/discovery/hot-reload-service.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/hot-reload-service.js +433 -0
- package/v3/dist/adapters/a2a/discovery/hot-reload-service.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/index.d.ts +18 -0
- package/v3/dist/adapters/a2a/discovery/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/index.js +54 -0
- package/v3/dist/adapters/a2a/discovery/index.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/metrics.d.ts +200 -0
- package/v3/dist/adapters/a2a/discovery/metrics.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/metrics.js +371 -0
- package/v3/dist/adapters/a2a/discovery/metrics.js.map +1 -0
- package/v3/dist/adapters/a2a/discovery/routes.d.ts +184 -0
- package/v3/dist/adapters/a2a/discovery/routes.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/discovery/routes.js +453 -0
- package/v3/dist/adapters/a2a/discovery/routes.js.map +1 -0
- package/v3/dist/adapters/a2a/index.d.ts +18 -0
- package/v3/dist/adapters/a2a/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/index.js +139 -0
- package/v3/dist/adapters/a2a/index.js.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/envelope.d.ts +312 -0
- package/v3/dist/adapters/a2a/jsonrpc/envelope.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/envelope.js +554 -0
- package/v3/dist/adapters/a2a/jsonrpc/envelope.js.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/errors.d.ts +244 -0
- package/v3/dist/adapters/a2a/jsonrpc/errors.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/errors.js +365 -0
- package/v3/dist/adapters/a2a/jsonrpc/errors.js.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/index.d.ts +14 -0
- package/v3/dist/adapters/a2a/jsonrpc/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/index.js +59 -0
- package/v3/dist/adapters/a2a/jsonrpc/index.js.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/methods.d.ts +400 -0
- package/v3/dist/adapters/a2a/jsonrpc/methods.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/jsonrpc/methods.js +249 -0
- package/v3/dist/adapters/a2a/jsonrpc/methods.js.map +1 -0
- package/v3/dist/adapters/a2a/notifications/index.d.ts +60 -0
- package/v3/dist/adapters/a2a/notifications/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/notifications/index.js +99 -0
- package/v3/dist/adapters/a2a/notifications/index.js.map +1 -0
- package/v3/dist/adapters/a2a/notifications/retry-queue.d.ts +225 -0
- package/v3/dist/adapters/a2a/notifications/retry-queue.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/notifications/retry-queue.js +449 -0
- package/v3/dist/adapters/a2a/notifications/retry-queue.js.map +1 -0
- package/v3/dist/adapters/a2a/notifications/signature.d.ts +133 -0
- package/v3/dist/adapters/a2a/notifications/signature.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/notifications/signature.js +244 -0
- package/v3/dist/adapters/a2a/notifications/signature.js.map +1 -0
- package/v3/dist/adapters/a2a/notifications/subscription-store.d.ts +243 -0
- package/v3/dist/adapters/a2a/notifications/subscription-store.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/notifications/subscription-store.js +486 -0
- package/v3/dist/adapters/a2a/notifications/subscription-store.js.map +1 -0
- package/v3/dist/adapters/a2a/notifications/webhook-service.d.ts +257 -0
- package/v3/dist/adapters/a2a/notifications/webhook-service.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/notifications/webhook-service.js +542 -0
- package/v3/dist/adapters/a2a/notifications/webhook-service.js.map +1 -0
- package/v3/dist/adapters/a2a/tasks/index.d.ts +16 -0
- package/v3/dist/adapters/a2a/tasks/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/tasks/index.js +33 -0
- package/v3/dist/adapters/a2a/tasks/index.js.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-manager.d.ts +306 -0
- package/v3/dist/adapters/a2a/tasks/task-manager.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-manager.js +562 -0
- package/v3/dist/adapters/a2a/tasks/task-manager.js.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-router.d.ts +270 -0
- package/v3/dist/adapters/a2a/tasks/task-router.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-router.js +574 -0
- package/v3/dist/adapters/a2a/tasks/task-router.js.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-store.d.ts +251 -0
- package/v3/dist/adapters/a2a/tasks/task-store.d.ts.map +1 -0
- package/v3/dist/adapters/a2a/tasks/task-store.js +468 -0
- package/v3/dist/adapters/a2a/tasks/task-store.js.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/aria-attributes.d.ts +294 -0
- package/v3/dist/adapters/a2ui/accessibility/aria-attributes.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/aria-attributes.js +447 -0
- package/v3/dist/adapters/a2ui/accessibility/aria-attributes.js.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/index.d.ts +83 -0
- package/v3/dist/adapters/a2ui/accessibility/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/index.js +155 -0
- package/v3/dist/adapters/a2ui/accessibility/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/keyboard-nav.d.ts +177 -0
- package/v3/dist/adapters/a2ui/accessibility/keyboard-nav.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/keyboard-nav.js +638 -0
- package/v3/dist/adapters/a2ui/accessibility/keyboard-nav.js.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/wcag-validator.d.ts +186 -0
- package/v3/dist/adapters/a2ui/accessibility/wcag-validator.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/accessibility/wcag-validator.js +816 -0
- package/v3/dist/adapters/a2ui/accessibility/wcag-validator.js.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/component-schemas.d.ts +227 -0
- package/v3/dist/adapters/a2ui/catalog/component-schemas.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/component-schemas.js +1090 -0
- package/v3/dist/adapters/a2ui/catalog/component-schemas.js.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/index.d.ts +55 -0
- package/v3/dist/adapters/a2ui/catalog/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/index.js +100 -0
- package/v3/dist/adapters/a2ui/catalog/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/qe-catalog.d.ts +456 -0
- package/v3/dist/adapters/a2ui/catalog/qe-catalog.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/qe-catalog.js +413 -0
- package/v3/dist/adapters/a2ui/catalog/qe-catalog.js.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/standard-catalog.d.ts +581 -0
- package/v3/dist/adapters/a2ui/catalog/standard-catalog.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/catalog/standard-catalog.js +409 -0
- package/v3/dist/adapters/a2ui/catalog/standard-catalog.js.map +1 -0
- package/v3/dist/adapters/a2ui/data/bound-value.d.ts +252 -0
- package/v3/dist/adapters/a2ui/data/bound-value.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/data/bound-value.js +403 -0
- package/v3/dist/adapters/a2ui/data/bound-value.js.map +1 -0
- package/v3/dist/adapters/a2ui/data/index.d.ts +14 -0
- package/v3/dist/adapters/a2ui/data/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/data/index.js +41 -0
- package/v3/dist/adapters/a2ui/data/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/data/json-pointer-resolver.d.ts +187 -0
- package/v3/dist/adapters/a2ui/data/json-pointer-resolver.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/data/json-pointer-resolver.js +425 -0
- package/v3/dist/adapters/a2ui/data/json-pointer-resolver.js.map +1 -0
- package/v3/dist/adapters/a2ui/data/reactive-store.d.ts +241 -0
- package/v3/dist/adapters/a2ui/data/reactive-store.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/data/reactive-store.js +461 -0
- package/v3/dist/adapters/a2ui/data/reactive-store.js.map +1 -0
- package/v3/dist/adapters/a2ui/index.d.ts +17 -0
- package/v3/dist/adapters/a2ui/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/index.js +119 -0
- package/v3/dist/adapters/a2ui/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/integration/agui-sync.d.ts +259 -0
- package/v3/dist/adapters/a2ui/integration/agui-sync.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/integration/agui-sync.js +559 -0
- package/v3/dist/adapters/a2ui/integration/agui-sync.js.map +1 -0
- package/v3/dist/adapters/a2ui/integration/index.d.ts +11 -0
- package/v3/dist/adapters/a2ui/integration/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/integration/index.js +23 -0
- package/v3/dist/adapters/a2ui/integration/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/integration/surface-state-bridge.d.ts +209 -0
- package/v3/dist/adapters/a2ui/integration/surface-state-bridge.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/integration/surface-state-bridge.js +545 -0
- package/v3/dist/adapters/a2ui/integration/surface-state-bridge.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/component-builder.d.ts +227 -0
- package/v3/dist/adapters/a2ui/renderer/component-builder.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/component-builder.js +488 -0
- package/v3/dist/adapters/a2ui/renderer/component-builder.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/index.d.ts +16 -0
- package/v3/dist/adapters/a2ui/renderer/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/index.js +50 -0
- package/v3/dist/adapters/a2ui/renderer/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/message-types.d.ts +299 -0
- package/v3/dist/adapters/a2ui/renderer/message-types.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/message-types.js +187 -0
- package/v3/dist/adapters/a2ui/renderer/message-types.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/surface-generator.d.ts +210 -0
- package/v3/dist/adapters/a2ui/renderer/surface-generator.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/surface-generator.js +586 -0
- package/v3/dist/adapters/a2ui/renderer/surface-generator.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/accessibility-surface.d.ts +149 -0
- package/v3/dist/adapters/a2ui/renderer/templates/accessibility-surface.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/accessibility-surface.js +414 -0
- package/v3/dist/adapters/a2ui/renderer/templates/accessibility-surface.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/coverage-surface.d.ts +95 -0
- package/v3/dist/adapters/a2ui/renderer/templates/coverage-surface.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/coverage-surface.js +231 -0
- package/v3/dist/adapters/a2ui/renderer/templates/coverage-surface.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/index.d.ts +12 -0
- package/v3/dist/adapters/a2ui/renderer/templates/index.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/index.js +16 -0
- package/v3/dist/adapters/a2ui/renderer/templates/index.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/security-surface.d.ts +121 -0
- package/v3/dist/adapters/a2ui/renderer/templates/security-surface.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/security-surface.js +367 -0
- package/v3/dist/adapters/a2ui/renderer/templates/security-surface.js.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/test-results-surface.d.ts +104 -0
- package/v3/dist/adapters/a2ui/renderer/templates/test-results-surface.d.ts.map +1 -0
- package/v3/dist/adapters/a2ui/renderer/templates/test-results-surface.js +294 -0
- package/v3/dist/adapters/a2ui/renderer/templates/test-results-surface.js.map +1 -0
- package/v3/dist/adapters/ag-ui/backpressure-handler.d.ts +201 -0
- package/v3/dist/adapters/ag-ui/backpressure-handler.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/backpressure-handler.js +399 -0
- package/v3/dist/adapters/ag-ui/backpressure-handler.js.map +1 -0
- package/v3/dist/adapters/ag-ui/event-adapter.d.ts +360 -0
- package/v3/dist/adapters/ag-ui/event-adapter.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/event-adapter.js +1083 -0
- package/v3/dist/adapters/ag-ui/event-adapter.js.map +1 -0
- package/v3/dist/adapters/ag-ui/event-batcher.d.ts +242 -0
- package/v3/dist/adapters/ag-ui/event-batcher.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/event-batcher.js +444 -0
- package/v3/dist/adapters/ag-ui/event-batcher.js.map +1 -0
- package/v3/dist/adapters/ag-ui/event-types.d.ts +450 -0
- package/v3/dist/adapters/ag-ui/event-types.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/event-types.js +173 -0
- package/v3/dist/adapters/ag-ui/event-types.js.map +1 -0
- package/v3/dist/adapters/ag-ui/index.d.ts +17 -0
- package/v3/dist/adapters/ag-ui/index.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/index.js +47 -0
- package/v3/dist/adapters/ag-ui/index.js.map +1 -0
- package/v3/dist/adapters/ag-ui/json-patch-utils.d.ts +136 -0
- package/v3/dist/adapters/ag-ui/json-patch-utils.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/json-patch-utils.js +574 -0
- package/v3/dist/adapters/ag-ui/json-patch-utils.js.map +1 -0
- package/v3/dist/adapters/ag-ui/json-patch.d.ts +241 -0
- package/v3/dist/adapters/ag-ui/json-patch.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/json-patch.js +726 -0
- package/v3/dist/adapters/ag-ui/json-patch.js.map +1 -0
- package/v3/dist/adapters/ag-ui/state-delta-cache.d.ts +218 -0
- package/v3/dist/adapters/ag-ui/state-delta-cache.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/state-delta-cache.js +422 -0
- package/v3/dist/adapters/ag-ui/state-delta-cache.js.map +1 -0
- package/v3/dist/adapters/ag-ui/state-manager.d.ts +249 -0
- package/v3/dist/adapters/ag-ui/state-manager.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/state-manager.js +511 -0
- package/v3/dist/adapters/ag-ui/state-manager.js.map +1 -0
- package/v3/dist/adapters/ag-ui/stream-controller.d.ts +195 -0
- package/v3/dist/adapters/ag-ui/stream-controller.d.ts.map +1 -0
- package/v3/dist/adapters/ag-ui/stream-controller.js +481 -0
- package/v3/dist/adapters/ag-ui/stream-controller.js.map +1 -0
- package/v3/dist/adapters/index.d.ts +4 -0
- package/v3/dist/adapters/index.d.ts.map +1 -1
- package/v3/dist/adapters/index.js +89 -0
- package/v3/dist/adapters/index.js.map +1 -1
- package/v3/dist/cli/bundle.js +7412 -3749
- package/v3/dist/init/init-wizard.d.ts.map +1 -1
- package/v3/dist/init/init-wizard.js +16 -1
- package/v3/dist/init/init-wizard.js.map +1 -1
- package/v3/dist/init/migration/config-migrator.d.ts.map +1 -1
- package/v3/dist/init/migration/config-migrator.js +15 -1
- package/v3/dist/init/migration/config-migrator.js.map +1 -1
- package/v3/dist/init/self-configurator.d.ts +7 -0
- package/v3/dist/init/self-configurator.d.ts.map +1 -1
- package/v3/dist/init/self-configurator.js +23 -27
- package/v3/dist/init/self-configurator.js.map +1 -1
- package/v3/dist/kernel/plugin-loader.d.ts.map +1 -1
- package/v3/dist/kernel/plugin-loader.js +6 -1
- package/v3/dist/kernel/plugin-loader.js.map +1 -1
- package/v3/dist/kernel/unified-memory.d.ts +97 -0
- package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
- package/v3/dist/kernel/unified-memory.js +204 -0
- package/v3/dist/kernel/unified-memory.js.map +1 -1
- package/v3/dist/mcp/bundle.js +121759 -105597
- package/v3/dist/mcp/entry.d.ts +5 -0
- package/v3/dist/mcp/entry.d.ts.map +1 -1
- package/v3/dist/mcp/entry.js +36 -0
- package/v3/dist/mcp/entry.js.map +1 -1
- package/v3/dist/mcp/http-server.d.ts +95 -0
- package/v3/dist/mcp/http-server.d.ts.map +1 -0
- package/v3/dist/mcp/http-server.js +833 -0
- package/v3/dist/mcp/http-server.js.map +1 -0
- package/v3/dist/mcp/protocol-server.d.ts +6 -0
- package/v3/dist/mcp/protocol-server.d.ts.map +1 -1
- package/v3/dist/mcp/protocol-server.js +40 -0
- package/v3/dist/mcp/protocol-server.js.map +1 -1
- package/v3/dist/mcp/transport/index.d.ts +25 -3
- package/v3/dist/mcp/transport/index.d.ts.map +1 -1
- package/v3/dist/mcp/transport/index.js +22 -4
- package/v3/dist/mcp/transport/index.js.map +1 -1
- package/v3/dist/mcp/transport/sse/connection-manager.d.ts +84 -0
- package/v3/dist/mcp/transport/sse/connection-manager.d.ts.map +1 -0
- package/v3/dist/mcp/transport/sse/connection-manager.js +271 -0
- package/v3/dist/mcp/transport/sse/connection-manager.js.map +1 -0
- package/v3/dist/mcp/transport/sse/index.d.ts +10 -0
- package/v3/dist/mcp/transport/sse/index.d.ts.map +1 -0
- package/v3/dist/mcp/transport/sse/index.js +15 -0
- package/v3/dist/mcp/transport/sse/index.js.map +1 -0
- package/v3/dist/mcp/transport/sse/sse-transport.d.ts +56 -0
- package/v3/dist/mcp/transport/sse/sse-transport.d.ts.map +1 -0
- package/v3/dist/mcp/transport/sse/sse-transport.js +381 -0
- package/v3/dist/mcp/transport/sse/sse-transport.js.map +1 -0
- package/v3/dist/mcp/transport/sse/types.d.ts +237 -0
- package/v3/dist/mcp/transport/sse/types.d.ts.map +1 -0
- package/v3/dist/mcp/transport/sse/types.js +37 -0
- package/v3/dist/mcp/transport/sse/types.js.map +1 -0
- package/v3/dist/mcp/transport/websocket/connection-manager.d.ts +143 -0
- package/v3/dist/mcp/transport/websocket/connection-manager.d.ts.map +1 -0
- package/v3/dist/mcp/transport/websocket/connection-manager.js +522 -0
- package/v3/dist/mcp/transport/websocket/connection-manager.js.map +1 -0
- package/v3/dist/mcp/transport/websocket/index.d.ts +10 -0
- package/v3/dist/mcp/transport/websocket/index.d.ts.map +1 -0
- package/v3/dist/mcp/transport/websocket/index.js +19 -0
- package/v3/dist/mcp/transport/websocket/index.js.map +1 -0
- package/v3/dist/mcp/transport/websocket/types.d.ts +354 -0
- package/v3/dist/mcp/transport/websocket/types.d.ts.map +1 -0
- package/v3/dist/mcp/transport/websocket/types.js +49 -0
- package/v3/dist/mcp/transport/websocket/types.js.map +1 -0
- package/v3/dist/mcp/transport/websocket/websocket-transport.d.ts +77 -0
- package/v3/dist/mcp/transport/websocket/websocket-transport.d.ts.map +1 -0
- package/v3/dist/mcp/transport/websocket/websocket-transport.js +622 -0
- package/v3/dist/mcp/transport/websocket/websocket-transport.js.map +1 -0
- package/v3/dist/memory/crdt/convergence-tracker.d.ts +59 -0
- package/v3/dist/memory/crdt/convergence-tracker.d.ts.map +1 -0
- package/v3/dist/memory/crdt/convergence-tracker.js +325 -0
- package/v3/dist/memory/crdt/convergence-tracker.js.map +1 -0
- package/v3/dist/memory/crdt/crdt-store.d.ts +55 -0
- package/v3/dist/memory/crdt/crdt-store.d.ts.map +1 -0
- package/v3/dist/memory/crdt/crdt-store.js +582 -0
- package/v3/dist/memory/crdt/crdt-store.js.map +1 -0
- package/v3/dist/memory/crdt/g-counter.d.ts +47 -0
- package/v3/dist/memory/crdt/g-counter.d.ts.map +1 -0
- package/v3/dist/memory/crdt/g-counter.js +134 -0
- package/v3/dist/memory/crdt/g-counter.js.map +1 -0
- package/v3/dist/memory/crdt/index.d.ts +52 -0
- package/v3/dist/memory/crdt/index.d.ts.map +1 -0
- package/v3/dist/memory/crdt/index.js +66 -0
- package/v3/dist/memory/crdt/index.js.map +1 -0
- package/v3/dist/memory/crdt/lww-register.d.ts +40 -0
- package/v3/dist/memory/crdt/lww-register.d.ts.map +1 -0
- package/v3/dist/memory/crdt/lww-register.js +133 -0
- package/v3/dist/memory/crdt/lww-register.js.map +1 -0
- package/v3/dist/memory/crdt/or-set.d.ts +62 -0
- package/v3/dist/memory/crdt/or-set.d.ts.map +1 -0
- package/v3/dist/memory/crdt/or-set.js +336 -0
- package/v3/dist/memory/crdt/or-set.js.map +1 -0
- package/v3/dist/memory/crdt/pn-counter.d.ts +53 -0
- package/v3/dist/memory/crdt/pn-counter.d.ts.map +1 -0
- package/v3/dist/memory/crdt/pn-counter.js +147 -0
- package/v3/dist/memory/crdt/pn-counter.js.map +1 -0
- package/v3/dist/memory/crdt/types.d.ts +397 -0
- package/v3/dist/memory/crdt/types.d.ts.map +1 -0
- package/v3/dist/memory/crdt/types.js +12 -0
- package/v3/dist/memory/crdt/types.js.map +1 -0
- package/v3/dist/memory/index.d.ts +5 -2
- package/v3/dist/memory/index.d.ts.map +1 -1
- package/v3/dist/memory/index.js +5 -2
- package/v3/dist/memory/index.js.map +1 -1
- package/v3/dist/performance/benchmarks.d.ts +215 -0
- package/v3/dist/performance/benchmarks.d.ts.map +1 -0
- package/v3/dist/performance/benchmarks.js +516 -0
- package/v3/dist/performance/benchmarks.js.map +1 -0
- package/v3/dist/performance/ci-gates.d.ts +149 -0
- package/v3/dist/performance/ci-gates.d.ts.map +1 -0
- package/v3/dist/performance/ci-gates.js +425 -0
- package/v3/dist/performance/ci-gates.js.map +1 -0
- package/v3/dist/performance/index.d.ts +18 -0
- package/v3/dist/performance/index.d.ts.map +1 -0
- package/v3/dist/performance/index.js +26 -0
- package/v3/dist/performance/index.js.map +1 -0
- package/v3/dist/performance/optimizer.d.ts +323 -0
- package/v3/dist/performance/optimizer.d.ts.map +1 -0
- package/v3/dist/performance/optimizer.js +592 -0
- package/v3/dist/performance/optimizer.js.map +1 -0
- package/v3/dist/performance/profiler.d.ts +195 -0
- package/v3/dist/performance/profiler.d.ts.map +1 -0
- package/v3/dist/performance/profiler.js +369 -0
- package/v3/dist/performance/profiler.js.map +1 -0
- package/v3/dist/performance/run-gates.d.ts +23 -0
- package/v3/dist/performance/run-gates.d.ts.map +1 -0
- package/v3/dist/performance/run-gates.js +122 -0
- package/v3/dist/performance/run-gates.js.map +1 -0
- package/v3/dist/testing/index.d.ts +6 -0
- package/v3/dist/testing/index.d.ts.map +1 -0
- package/v3/dist/testing/index.js +7 -0
- package/v3/dist/testing/index.js.map +1 -0
- package/v3/dist/testing/load/agent-load-tester.d.ts +221 -0
- package/v3/dist/testing/load/agent-load-tester.d.ts.map +1 -0
- package/v3/dist/testing/load/agent-load-tester.js +566 -0
- package/v3/dist/testing/load/agent-load-tester.js.map +1 -0
- package/v3/dist/testing/load/bottleneck-analyzer.d.ts +150 -0
- package/v3/dist/testing/load/bottleneck-analyzer.d.ts.map +1 -0
- package/v3/dist/testing/load/bottleneck-analyzer.js +442 -0
- package/v3/dist/testing/load/bottleneck-analyzer.js.map +1 -0
- package/v3/dist/testing/load/index.d.ts +17 -0
- package/v3/dist/testing/load/index.d.ts.map +1 -0
- package/v3/dist/testing/load/index.js +23 -0
- package/v3/dist/testing/load/index.js.map +1 -0
- package/v3/dist/testing/load/metrics-collector.d.ts +275 -0
- package/v3/dist/testing/load/metrics-collector.d.ts.map +1 -0
- package/v3/dist/testing/load/metrics-collector.js +475 -0
- package/v3/dist/testing/load/metrics-collector.js.map +1 -0
- package/v3/package.json +5 -1
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A2A OAuth 2.0 Scope Definitions
|
|
3
|
+
*
|
|
4
|
+
* Defines OAuth 2.0 scopes for the A2A protocol, including platform access,
|
|
5
|
+
* agent operations, task management, and domain-specific scopes for the
|
|
6
|
+
* 12 QE domains.
|
|
7
|
+
*
|
|
8
|
+
* @module adapters/a2a/auth/scopes
|
|
9
|
+
* @see https://a2a-protocol.org/latest/specification/
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Core A2A protocol scopes with descriptions
|
|
13
|
+
*/
|
|
14
|
+
export declare const A2A_CORE_SCOPES: {
|
|
15
|
+
readonly 'platform:read': "Read platform discovery information";
|
|
16
|
+
readonly 'platform:admin': "Administer platform settings";
|
|
17
|
+
readonly 'agent:read': "Read agent cards and capabilities";
|
|
18
|
+
readonly 'agent:extended': "Access extended agent card information";
|
|
19
|
+
readonly 'agent:register': "Register new agents on the platform";
|
|
20
|
+
readonly 'agent:manage': "Manage agent configuration and status";
|
|
21
|
+
readonly 'task:read': "Read task status and history";
|
|
22
|
+
readonly 'task:create': "Create and send new tasks";
|
|
23
|
+
readonly 'task:cancel': "Cancel running tasks";
|
|
24
|
+
readonly 'task:resubmit': "Resubmit failed or completed tasks";
|
|
25
|
+
readonly 'message:send': "Send messages to agents";
|
|
26
|
+
readonly 'message:stream': "Access streaming message responses";
|
|
27
|
+
readonly 'notification:manage': "Configure push notifications";
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Type for core A2A scope names
|
|
31
|
+
*/
|
|
32
|
+
export type A2ACoreScope = keyof typeof A2A_CORE_SCOPES;
|
|
33
|
+
/**
|
|
34
|
+
* QE domain-specific scopes for the 12 bounded contexts
|
|
35
|
+
*/
|
|
36
|
+
export declare const A2A_DOMAIN_SCOPES: {
|
|
37
|
+
readonly 'qe:test-generation:read': "Read test generation results";
|
|
38
|
+
readonly 'qe:test-generation:execute': "Execute test generation";
|
|
39
|
+
readonly 'qe:test-execution:read': "Read test execution results";
|
|
40
|
+
readonly 'qe:test-execution:execute': "Execute tests";
|
|
41
|
+
readonly 'qe:coverage-analysis:read': "Read coverage reports";
|
|
42
|
+
readonly 'qe:coverage-analysis:execute': "Execute coverage analysis";
|
|
43
|
+
readonly 'qe:quality-assessment:read': "Read quality assessments";
|
|
44
|
+
readonly 'qe:quality-assessment:execute': "Execute quality assessment";
|
|
45
|
+
readonly 'qe:defect-intelligence:read': "Read defect predictions";
|
|
46
|
+
readonly 'qe:defect-intelligence:execute': "Execute defect analysis";
|
|
47
|
+
readonly 'qe:learning-optimization:read': "Read learning patterns";
|
|
48
|
+
readonly 'qe:learning-optimization:execute': "Execute learning operations";
|
|
49
|
+
readonly 'qe:security-compliance:read': "Read security scan results";
|
|
50
|
+
readonly 'qe:security-compliance:execute': "Execute security scans";
|
|
51
|
+
readonly 'qe:chaos-resilience:read': "Read chaos test results";
|
|
52
|
+
readonly 'qe:chaos-resilience:execute': "Execute chaos tests";
|
|
53
|
+
readonly 'qe:accessibility:read': "Read accessibility audit results";
|
|
54
|
+
readonly 'qe:accessibility:execute': "Execute accessibility audits";
|
|
55
|
+
readonly 'qe:performance:read': "Read performance metrics";
|
|
56
|
+
readonly 'qe:performance:execute': "Execute performance tests";
|
|
57
|
+
readonly 'qe:contract-testing:read': "Read contract validation results";
|
|
58
|
+
readonly 'qe:contract-testing:execute': "Execute contract validation";
|
|
59
|
+
readonly 'qe:visual-testing:read': "Read visual regression results";
|
|
60
|
+
readonly 'qe:visual-testing:execute': "Execute visual testing";
|
|
61
|
+
};
|
|
62
|
+
/**
|
|
63
|
+
* Type for QE domain scope names
|
|
64
|
+
*/
|
|
65
|
+
export type A2ADomainScope = keyof typeof A2A_DOMAIN_SCOPES;
|
|
66
|
+
/**
|
|
67
|
+
* All A2A scopes (core + domain)
|
|
68
|
+
*/
|
|
69
|
+
export declare const A2A_SCOPES: {
|
|
70
|
+
readonly 'qe:test-generation:read': "Read test generation results";
|
|
71
|
+
readonly 'qe:test-generation:execute': "Execute test generation";
|
|
72
|
+
readonly 'qe:test-execution:read': "Read test execution results";
|
|
73
|
+
readonly 'qe:test-execution:execute': "Execute tests";
|
|
74
|
+
readonly 'qe:coverage-analysis:read': "Read coverage reports";
|
|
75
|
+
readonly 'qe:coverage-analysis:execute': "Execute coverage analysis";
|
|
76
|
+
readonly 'qe:quality-assessment:read': "Read quality assessments";
|
|
77
|
+
readonly 'qe:quality-assessment:execute': "Execute quality assessment";
|
|
78
|
+
readonly 'qe:defect-intelligence:read': "Read defect predictions";
|
|
79
|
+
readonly 'qe:defect-intelligence:execute': "Execute defect analysis";
|
|
80
|
+
readonly 'qe:learning-optimization:read': "Read learning patterns";
|
|
81
|
+
readonly 'qe:learning-optimization:execute': "Execute learning operations";
|
|
82
|
+
readonly 'qe:security-compliance:read': "Read security scan results";
|
|
83
|
+
readonly 'qe:security-compliance:execute': "Execute security scans";
|
|
84
|
+
readonly 'qe:chaos-resilience:read': "Read chaos test results";
|
|
85
|
+
readonly 'qe:chaos-resilience:execute': "Execute chaos tests";
|
|
86
|
+
readonly 'qe:accessibility:read': "Read accessibility audit results";
|
|
87
|
+
readonly 'qe:accessibility:execute': "Execute accessibility audits";
|
|
88
|
+
readonly 'qe:performance:read': "Read performance metrics";
|
|
89
|
+
readonly 'qe:performance:execute': "Execute performance tests";
|
|
90
|
+
readonly 'qe:contract-testing:read': "Read contract validation results";
|
|
91
|
+
readonly 'qe:contract-testing:execute': "Execute contract validation";
|
|
92
|
+
readonly 'qe:visual-testing:read': "Read visual regression results";
|
|
93
|
+
readonly 'qe:visual-testing:execute': "Execute visual testing";
|
|
94
|
+
readonly 'platform:read': "Read platform discovery information";
|
|
95
|
+
readonly 'platform:admin': "Administer platform settings";
|
|
96
|
+
readonly 'agent:read': "Read agent cards and capabilities";
|
|
97
|
+
readonly 'agent:extended': "Access extended agent card information";
|
|
98
|
+
readonly 'agent:register': "Register new agents on the platform";
|
|
99
|
+
readonly 'agent:manage': "Manage agent configuration and status";
|
|
100
|
+
readonly 'task:read': "Read task status and history";
|
|
101
|
+
readonly 'task:create': "Create and send new tasks";
|
|
102
|
+
readonly 'task:cancel': "Cancel running tasks";
|
|
103
|
+
readonly 'task:resubmit': "Resubmit failed or completed tasks";
|
|
104
|
+
readonly 'message:send': "Send messages to agents";
|
|
105
|
+
readonly 'message:stream': "Access streaming message responses";
|
|
106
|
+
readonly 'notification:manage': "Configure push notifications";
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* Type for all A2A scope names
|
|
110
|
+
*/
|
|
111
|
+
export type A2AScope = keyof typeof A2A_SCOPES;
|
|
112
|
+
/**
|
|
113
|
+
* Get the description for a scope
|
|
114
|
+
*
|
|
115
|
+
* @param scope - The scope name
|
|
116
|
+
* @returns The scope description or undefined if not found
|
|
117
|
+
*/
|
|
118
|
+
export declare function getScopeDescription(scope: string): string | undefined;
|
|
119
|
+
/**
|
|
120
|
+
* Check if a scope is valid
|
|
121
|
+
*
|
|
122
|
+
* @param scope - The scope to validate
|
|
123
|
+
* @returns True if the scope is valid
|
|
124
|
+
*/
|
|
125
|
+
export declare function isValidScope(scope: string): scope is A2AScope;
|
|
126
|
+
/**
|
|
127
|
+
* Get all scopes implied by a given scope (including itself)
|
|
128
|
+
*
|
|
129
|
+
* @param scope - The scope to expand
|
|
130
|
+
* @returns Array of all implied scopes
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```typescript
|
|
134
|
+
* scopeHierarchy('agent:manage')
|
|
135
|
+
* // Returns: ['agent:manage', 'agent:read', 'agent:extended', 'agent:register']
|
|
136
|
+
* ```
|
|
137
|
+
*/
|
|
138
|
+
export declare function scopeHierarchy(scope: string): string[];
|
|
139
|
+
/**
|
|
140
|
+
* Expand a list of scopes to include all implied scopes
|
|
141
|
+
*
|
|
142
|
+
* @param scopes - The scopes to expand
|
|
143
|
+
* @returns Array of all scopes including implied ones
|
|
144
|
+
*/
|
|
145
|
+
export declare function expandScopes(scopes: string[]): string[];
|
|
146
|
+
/**
|
|
147
|
+
* Validate that requested scopes are covered by granted scopes
|
|
148
|
+
*
|
|
149
|
+
* @param requested - The scopes being requested
|
|
150
|
+
* @param granted - The scopes that have been granted
|
|
151
|
+
* @returns True if all requested scopes are covered by granted scopes
|
|
152
|
+
*
|
|
153
|
+
* @example
|
|
154
|
+
* ```typescript
|
|
155
|
+
* validateScopes(['agent:read'], ['agent:manage'])
|
|
156
|
+
* // Returns: true (agent:manage implies agent:read)
|
|
157
|
+
*
|
|
158
|
+
* validateScopes(['task:cancel'], ['task:read'])
|
|
159
|
+
* // Returns: false (task:read does not imply task:cancel)
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
export declare function validateScopes(requested: string[], granted: string[]): boolean;
|
|
163
|
+
/**
|
|
164
|
+
* Get the missing scopes from a request
|
|
165
|
+
*
|
|
166
|
+
* @param requested - The scopes being requested
|
|
167
|
+
* @param granted - The scopes that have been granted
|
|
168
|
+
* @returns Array of scopes that are requested but not granted
|
|
169
|
+
*/
|
|
170
|
+
export declare function getMissingScopes(requested: string[], granted: string[]): string[];
|
|
171
|
+
/**
|
|
172
|
+
* Normalize scopes by removing duplicates and sorting
|
|
173
|
+
*
|
|
174
|
+
* @param scopes - The scopes to normalize
|
|
175
|
+
* @returns Sorted unique array of scopes
|
|
176
|
+
*/
|
|
177
|
+
export declare function normalizeScopes(scopes: string[]): string[];
|
|
178
|
+
/**
|
|
179
|
+
* Parse a space-separated scope string into an array
|
|
180
|
+
*
|
|
181
|
+
* @param scopeString - Space-separated scopes
|
|
182
|
+
* @returns Array of scope strings
|
|
183
|
+
*/
|
|
184
|
+
export declare function parseScopeString(scopeString: string): string[];
|
|
185
|
+
/**
|
|
186
|
+
* Convert a scope array to a space-separated string
|
|
187
|
+
*
|
|
188
|
+
* @param scopes - Array of scopes
|
|
189
|
+
* @returns Space-separated scope string
|
|
190
|
+
*/
|
|
191
|
+
export declare function formatScopeString(scopes: string[]): string;
|
|
192
|
+
/**
|
|
193
|
+
* Get all scopes in a category
|
|
194
|
+
*
|
|
195
|
+
* @param prefix - The scope category prefix (e.g., 'platform', 'agent', 'qe:test-generation')
|
|
196
|
+
* @returns Array of scopes in that category
|
|
197
|
+
*/
|
|
198
|
+
export declare function getScopesByCategory(prefix: string): string[];
|
|
199
|
+
/**
|
|
200
|
+
* Get all QE domain scopes
|
|
201
|
+
*
|
|
202
|
+
* @returns Array of all QE domain scopes
|
|
203
|
+
*/
|
|
204
|
+
export declare function getQEDomainScopes(): string[];
|
|
205
|
+
/**
|
|
206
|
+
* Get all core A2A scopes
|
|
207
|
+
*
|
|
208
|
+
* @returns Array of all core A2A scopes
|
|
209
|
+
*/
|
|
210
|
+
export declare function getCoreScopes(): string[];
|
|
211
|
+
/**
|
|
212
|
+
* Default scopes for a new client (minimal access)
|
|
213
|
+
*/
|
|
214
|
+
export declare const DEFAULT_CLIENT_SCOPES: A2AScope[];
|
|
215
|
+
/**
|
|
216
|
+
* Full access scopes (for admin clients)
|
|
217
|
+
*/
|
|
218
|
+
export declare const ADMIN_SCOPES: A2AScope[];
|
|
219
|
+
//# sourceMappingURL=scopes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scopes.d.ts","sourceRoot":"","sources":["../../../../src/adapters/a2a/auth/scopes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;CAuBlB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,OAAO,eAAe,CAAC;AAMxD;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;CAgDpB,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAM5D;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGb,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,UAAU,CAAC;AAE/C;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAErE;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,QAAQ,CAE7D;AAwCD;;;;;;;;;;;GAWG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,CAetD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAWvD;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAY9E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAGjF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAE1D;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,CAK9D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAE1D;AAMD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,QAAQ,EAK3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,QAAQ,EAA0C,CAAC"}
|
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A2A OAuth 2.0 Scope Definitions
|
|
3
|
+
*
|
|
4
|
+
* Defines OAuth 2.0 scopes for the A2A protocol, including platform access,
|
|
5
|
+
* agent operations, task management, and domain-specific scopes for the
|
|
6
|
+
* 12 QE domains.
|
|
7
|
+
*
|
|
8
|
+
* @module adapters/a2a/auth/scopes
|
|
9
|
+
* @see https://a2a-protocol.org/latest/specification/
|
|
10
|
+
*/
|
|
11
|
+
// ============================================================================
|
|
12
|
+
// Core A2A Scopes
|
|
13
|
+
// ============================================================================
|
|
14
|
+
/**
|
|
15
|
+
* Core A2A protocol scopes with descriptions
|
|
16
|
+
*/
|
|
17
|
+
export const A2A_CORE_SCOPES = {
|
|
18
|
+
// Platform scopes
|
|
19
|
+
'platform:read': 'Read platform discovery information',
|
|
20
|
+
'platform:admin': 'Administer platform settings',
|
|
21
|
+
// Agent scopes
|
|
22
|
+
'agent:read': 'Read agent cards and capabilities',
|
|
23
|
+
'agent:extended': 'Access extended agent card information',
|
|
24
|
+
'agent:register': 'Register new agents on the platform',
|
|
25
|
+
'agent:manage': 'Manage agent configuration and status',
|
|
26
|
+
// Task scopes
|
|
27
|
+
'task:read': 'Read task status and history',
|
|
28
|
+
'task:create': 'Create and send new tasks',
|
|
29
|
+
'task:cancel': 'Cancel running tasks',
|
|
30
|
+
'task:resubmit': 'Resubmit failed or completed tasks',
|
|
31
|
+
// Message scopes
|
|
32
|
+
'message:send': 'Send messages to agents',
|
|
33
|
+
'message:stream': 'Access streaming message responses',
|
|
34
|
+
// Notification scopes
|
|
35
|
+
'notification:manage': 'Configure push notifications',
|
|
36
|
+
};
|
|
37
|
+
// ============================================================================
|
|
38
|
+
// QE Domain Scopes
|
|
39
|
+
// ============================================================================
|
|
40
|
+
/**
|
|
41
|
+
* QE domain-specific scopes for the 12 bounded contexts
|
|
42
|
+
*/
|
|
43
|
+
export const A2A_DOMAIN_SCOPES = {
|
|
44
|
+
// Test Generation Domain
|
|
45
|
+
'qe:test-generation:read': 'Read test generation results',
|
|
46
|
+
'qe:test-generation:execute': 'Execute test generation',
|
|
47
|
+
// Test Execution Domain
|
|
48
|
+
'qe:test-execution:read': 'Read test execution results',
|
|
49
|
+
'qe:test-execution:execute': 'Execute tests',
|
|
50
|
+
// Coverage Analysis Domain
|
|
51
|
+
'qe:coverage-analysis:read': 'Read coverage reports',
|
|
52
|
+
'qe:coverage-analysis:execute': 'Execute coverage analysis',
|
|
53
|
+
// Quality Assessment Domain
|
|
54
|
+
'qe:quality-assessment:read': 'Read quality assessments',
|
|
55
|
+
'qe:quality-assessment:execute': 'Execute quality assessment',
|
|
56
|
+
// Defect Intelligence Domain
|
|
57
|
+
'qe:defect-intelligence:read': 'Read defect predictions',
|
|
58
|
+
'qe:defect-intelligence:execute': 'Execute defect analysis',
|
|
59
|
+
// Learning Optimization Domain
|
|
60
|
+
'qe:learning-optimization:read': 'Read learning patterns',
|
|
61
|
+
'qe:learning-optimization:execute': 'Execute learning operations',
|
|
62
|
+
// Security Compliance Domain
|
|
63
|
+
'qe:security-compliance:read': 'Read security scan results',
|
|
64
|
+
'qe:security-compliance:execute': 'Execute security scans',
|
|
65
|
+
// Chaos Resilience Domain
|
|
66
|
+
'qe:chaos-resilience:read': 'Read chaos test results',
|
|
67
|
+
'qe:chaos-resilience:execute': 'Execute chaos tests',
|
|
68
|
+
// Accessibility Domain
|
|
69
|
+
'qe:accessibility:read': 'Read accessibility audit results',
|
|
70
|
+
'qe:accessibility:execute': 'Execute accessibility audits',
|
|
71
|
+
// Performance Domain
|
|
72
|
+
'qe:performance:read': 'Read performance metrics',
|
|
73
|
+
'qe:performance:execute': 'Execute performance tests',
|
|
74
|
+
// Contract Testing Domain
|
|
75
|
+
'qe:contract-testing:read': 'Read contract validation results',
|
|
76
|
+
'qe:contract-testing:execute': 'Execute contract validation',
|
|
77
|
+
// Visual Testing Domain
|
|
78
|
+
'qe:visual-testing:read': 'Read visual regression results',
|
|
79
|
+
'qe:visual-testing:execute': 'Execute visual testing',
|
|
80
|
+
};
|
|
81
|
+
// ============================================================================
|
|
82
|
+
// Combined Scopes
|
|
83
|
+
// ============================================================================
|
|
84
|
+
/**
|
|
85
|
+
* All A2A scopes (core + domain)
|
|
86
|
+
*/
|
|
87
|
+
export const A2A_SCOPES = {
|
|
88
|
+
...A2A_CORE_SCOPES,
|
|
89
|
+
...A2A_DOMAIN_SCOPES,
|
|
90
|
+
};
|
|
91
|
+
/**
|
|
92
|
+
* Get the description for a scope
|
|
93
|
+
*
|
|
94
|
+
* @param scope - The scope name
|
|
95
|
+
* @returns The scope description or undefined if not found
|
|
96
|
+
*/
|
|
97
|
+
export function getScopeDescription(scope) {
|
|
98
|
+
return A2A_SCOPES[scope];
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Check if a scope is valid
|
|
102
|
+
*
|
|
103
|
+
* @param scope - The scope to validate
|
|
104
|
+
* @returns True if the scope is valid
|
|
105
|
+
*/
|
|
106
|
+
export function isValidScope(scope) {
|
|
107
|
+
return scope in A2A_SCOPES;
|
|
108
|
+
}
|
|
109
|
+
// ============================================================================
|
|
110
|
+
// Scope Hierarchy
|
|
111
|
+
// ============================================================================
|
|
112
|
+
/**
|
|
113
|
+
* Scope hierarchy definitions - broader scopes include narrower ones
|
|
114
|
+
*/
|
|
115
|
+
const SCOPE_HIERARCHY = {
|
|
116
|
+
// Platform admin includes read
|
|
117
|
+
'platform:admin': ['platform:read'],
|
|
118
|
+
// Agent manage includes read and extended
|
|
119
|
+
'agent:manage': ['agent:read', 'agent:extended', 'agent:register'],
|
|
120
|
+
'agent:extended': ['agent:read'],
|
|
121
|
+
// Task hierarchy
|
|
122
|
+
'task:resubmit': ['task:read', 'task:create'],
|
|
123
|
+
'task:cancel': ['task:read'],
|
|
124
|
+
'task:create': ['task:read'],
|
|
125
|
+
// Message hierarchy
|
|
126
|
+
'message:stream': ['message:send'],
|
|
127
|
+
// QE domain hierarchies - execute includes read
|
|
128
|
+
'qe:test-generation:execute': ['qe:test-generation:read'],
|
|
129
|
+
'qe:test-execution:execute': ['qe:test-execution:read'],
|
|
130
|
+
'qe:coverage-analysis:execute': ['qe:coverage-analysis:read'],
|
|
131
|
+
'qe:quality-assessment:execute': ['qe:quality-assessment:read'],
|
|
132
|
+
'qe:defect-intelligence:execute': ['qe:defect-intelligence:read'],
|
|
133
|
+
'qe:learning-optimization:execute': ['qe:learning-optimization:read'],
|
|
134
|
+
'qe:security-compliance:execute': ['qe:security-compliance:read'],
|
|
135
|
+
'qe:chaos-resilience:execute': ['qe:chaos-resilience:read'],
|
|
136
|
+
'qe:accessibility:execute': ['qe:accessibility:read'],
|
|
137
|
+
'qe:performance:execute': ['qe:performance:read'],
|
|
138
|
+
'qe:contract-testing:execute': ['qe:contract-testing:read'],
|
|
139
|
+
'qe:visual-testing:execute': ['qe:visual-testing:read'],
|
|
140
|
+
};
|
|
141
|
+
/**
|
|
142
|
+
* Get all scopes implied by a given scope (including itself)
|
|
143
|
+
*
|
|
144
|
+
* @param scope - The scope to expand
|
|
145
|
+
* @returns Array of all implied scopes
|
|
146
|
+
*
|
|
147
|
+
* @example
|
|
148
|
+
* ```typescript
|
|
149
|
+
* scopeHierarchy('agent:manage')
|
|
150
|
+
* // Returns: ['agent:manage', 'agent:read', 'agent:extended', 'agent:register']
|
|
151
|
+
* ```
|
|
152
|
+
*/
|
|
153
|
+
export function scopeHierarchy(scope) {
|
|
154
|
+
const result = new Set([scope]);
|
|
155
|
+
const hierarchy = SCOPE_HIERARCHY[scope];
|
|
156
|
+
if (hierarchy) {
|
|
157
|
+
for (const impliedScope of hierarchy) {
|
|
158
|
+
// Recursively get implied scopes
|
|
159
|
+
const nested = scopeHierarchy(impliedScope);
|
|
160
|
+
for (const s of nested) {
|
|
161
|
+
result.add(s);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
return Array.from(result);
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Expand a list of scopes to include all implied scopes
|
|
169
|
+
*
|
|
170
|
+
* @param scopes - The scopes to expand
|
|
171
|
+
* @returns Array of all scopes including implied ones
|
|
172
|
+
*/
|
|
173
|
+
export function expandScopes(scopes) {
|
|
174
|
+
const result = new Set();
|
|
175
|
+
for (const scope of scopes) {
|
|
176
|
+
const expanded = scopeHierarchy(scope);
|
|
177
|
+
for (const s of expanded) {
|
|
178
|
+
result.add(s);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
return Array.from(result);
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Validate that requested scopes are covered by granted scopes
|
|
185
|
+
*
|
|
186
|
+
* @param requested - The scopes being requested
|
|
187
|
+
* @param granted - The scopes that have been granted
|
|
188
|
+
* @returns True if all requested scopes are covered by granted scopes
|
|
189
|
+
*
|
|
190
|
+
* @example
|
|
191
|
+
* ```typescript
|
|
192
|
+
* validateScopes(['agent:read'], ['agent:manage'])
|
|
193
|
+
* // Returns: true (agent:manage implies agent:read)
|
|
194
|
+
*
|
|
195
|
+
* validateScopes(['task:cancel'], ['task:read'])
|
|
196
|
+
* // Returns: false (task:read does not imply task:cancel)
|
|
197
|
+
* ```
|
|
198
|
+
*/
|
|
199
|
+
export function validateScopes(requested, granted) {
|
|
200
|
+
// Expand granted scopes to include all implied scopes
|
|
201
|
+
const expandedGranted = new Set(expandScopes(granted));
|
|
202
|
+
// Check that every requested scope is covered
|
|
203
|
+
for (const scope of requested) {
|
|
204
|
+
if (!expandedGranted.has(scope)) {
|
|
205
|
+
return false;
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
return true;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Get the missing scopes from a request
|
|
212
|
+
*
|
|
213
|
+
* @param requested - The scopes being requested
|
|
214
|
+
* @param granted - The scopes that have been granted
|
|
215
|
+
* @returns Array of scopes that are requested but not granted
|
|
216
|
+
*/
|
|
217
|
+
export function getMissingScopes(requested, granted) {
|
|
218
|
+
const expandedGranted = new Set(expandScopes(granted));
|
|
219
|
+
return requested.filter((scope) => !expandedGranted.has(scope));
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Normalize scopes by removing duplicates and sorting
|
|
223
|
+
*
|
|
224
|
+
* @param scopes - The scopes to normalize
|
|
225
|
+
* @returns Sorted unique array of scopes
|
|
226
|
+
*/
|
|
227
|
+
export function normalizeScopes(scopes) {
|
|
228
|
+
return Array.from(new Set(scopes)).sort();
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Parse a space-separated scope string into an array
|
|
232
|
+
*
|
|
233
|
+
* @param scopeString - Space-separated scopes
|
|
234
|
+
* @returns Array of scope strings
|
|
235
|
+
*/
|
|
236
|
+
export function parseScopeString(scopeString) {
|
|
237
|
+
return scopeString
|
|
238
|
+
.trim()
|
|
239
|
+
.split(/\s+/)
|
|
240
|
+
.filter((s) => s.length > 0);
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Convert a scope array to a space-separated string
|
|
244
|
+
*
|
|
245
|
+
* @param scopes - Array of scopes
|
|
246
|
+
* @returns Space-separated scope string
|
|
247
|
+
*/
|
|
248
|
+
export function formatScopeString(scopes) {
|
|
249
|
+
return normalizeScopes(scopes).join(' ');
|
|
250
|
+
}
|
|
251
|
+
// ============================================================================
|
|
252
|
+
// Scope Categories
|
|
253
|
+
// ============================================================================
|
|
254
|
+
/**
|
|
255
|
+
* Get all scopes in a category
|
|
256
|
+
*
|
|
257
|
+
* @param prefix - The scope category prefix (e.g., 'platform', 'agent', 'qe:test-generation')
|
|
258
|
+
* @returns Array of scopes in that category
|
|
259
|
+
*/
|
|
260
|
+
export function getScopesByCategory(prefix) {
|
|
261
|
+
return Object.keys(A2A_SCOPES).filter((scope) => scope.startsWith(prefix + ':'));
|
|
262
|
+
}
|
|
263
|
+
/**
|
|
264
|
+
* Get all QE domain scopes
|
|
265
|
+
*
|
|
266
|
+
* @returns Array of all QE domain scopes
|
|
267
|
+
*/
|
|
268
|
+
export function getQEDomainScopes() {
|
|
269
|
+
return Object.keys(A2A_DOMAIN_SCOPES);
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Get all core A2A scopes
|
|
273
|
+
*
|
|
274
|
+
* @returns Array of all core A2A scopes
|
|
275
|
+
*/
|
|
276
|
+
export function getCoreScopes() {
|
|
277
|
+
return Object.keys(A2A_CORE_SCOPES);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Default scopes for a new client (minimal access)
|
|
281
|
+
*/
|
|
282
|
+
export const DEFAULT_CLIENT_SCOPES = [
|
|
283
|
+
'platform:read',
|
|
284
|
+
'agent:read',
|
|
285
|
+
'task:read',
|
|
286
|
+
'message:send',
|
|
287
|
+
];
|
|
288
|
+
/**
|
|
289
|
+
* Full access scopes (for admin clients)
|
|
290
|
+
*/
|
|
291
|
+
export const ADMIN_SCOPES = Object.keys(A2A_SCOPES);
|
|
292
|
+
//# sourceMappingURL=scopes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scopes.js","sourceRoot":"","sources":["../../../../src/adapters/a2a/auth/scopes.ts"],"names":[],"mappings":"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"}
|