agentic-qe 3.3.4 → 3.4.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/.claude/agents/v3/qe-queen-coordinator.md +332 -166
- package/.claude/helpers/statusline-v3.cjs +85 -42
- package/.claude/skills/qcsd-ideation-swarm/SKILL.md +7 -4
- package/README.md +71 -2
- package/package.json +1 -1
- package/scripts/cloud-db-config.json +10 -5
- package/scripts/merge-v3-to-root.sql +48 -0
- package/v3/CHANGELOG.md +156 -0
- package/v3/README.md +118 -1
- package/v3/assets/agents/v3/qe-queen-coordinator.md +332 -166
- 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 +1507 -425
- package/v3/dist/coordination/consensus/providers/claude-provider.js +1 -1
- package/v3/dist/coordination/consensus/providers/gemini-provider.js +1 -1
- package/v3/dist/coordination/consensus/providers/openai-provider.js +1 -1
- package/v3/dist/init/init-wizard.d.ts.map +1 -1
- package/v3/dist/init/init-wizard.js +19 -4
- 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/phases/05-learning.js +1 -1
- package/v3/dist/init/phases/05-learning.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/integrations/ruvector/interfaces.js +1 -1
- package/v3/dist/integrations/ruvector/interfaces.js.map +1 -1
- package/v3/dist/kernel/index.d.ts +1 -1
- package/v3/dist/kernel/index.d.ts.map +1 -1
- package/v3/dist/kernel/index.js +3 -1
- package/v3/dist/kernel/index.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 +123 -0
- package/v3/dist/kernel/unified-memory.d.ts.map +1 -1
- package/v3/dist/kernel/unified-memory.js +258 -2
- package/v3/dist/kernel/unified-memory.js.map +1 -1
- package/v3/dist/learning/qe-unified-memory.js +1 -1
- package/v3/dist/learning/qe-unified-memory.js.map +1 -1
- package/v3/dist/learning/real-qe-reasoning-bank.js +2 -2
- package/v3/dist/learning/real-qe-reasoning-bank.js.map +1 -1
- package/v3/dist/learning/sqlite-persistence.d.ts +1 -1
- package/v3/dist/learning/sqlite-persistence.js +1 -1
- package/v3/dist/learning/sqlite-persistence.js.map +1 -1
- package/v3/dist/learning/v2-to-v3-migration.d.ts +2 -2
- package/v3/dist/learning/v2-to-v3-migration.d.ts.map +1 -1
- package/v3/dist/learning/v2-to-v3-migration.js +2 -2
- package/v3/dist/learning/v2-to-v3-migration.js.map +1 -1
- package/v3/dist/mcp/bundle.js +63075 -53304
- 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/sync/claude-flow-bridge.d.ts +1 -1
- package/v3/dist/sync/claude-flow-bridge.js +1 -1
- package/v3/dist/sync/interfaces.d.ts +6 -0
- package/v3/dist/sync/interfaces.d.ts.map +1 -1
- package/v3/dist/sync/interfaces.js +34 -47
- package/v3/dist/sync/interfaces.js.map +1 -1
- package/v3/dist/sync/readers/sqlite-reader.d.ts +1 -1
- package/v3/dist/sync/readers/sqlite-reader.js +1 -1
- 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,397 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CRDT Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* Conflict-free Replicated Data Types for eventually consistent
|
|
5
|
+
* distributed state across agents.
|
|
6
|
+
*
|
|
7
|
+
* @module memory/crdt/types
|
|
8
|
+
* @see ADR-054: A2A Protocol Integration (distributed state)
|
|
9
|
+
* @see Implementation Plan Task 4.2
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Supported CRDT types in the store
|
|
13
|
+
*/
|
|
14
|
+
export type CRDTType = 'lww-register' | 'g-counter' | 'pn-counter' | 'or-set';
|
|
15
|
+
/**
|
|
16
|
+
* Base state for all CRDTs - includes version for delta tracking
|
|
17
|
+
*/
|
|
18
|
+
export interface CRDTBaseState {
|
|
19
|
+
/** Version counter for delta replication */
|
|
20
|
+
version: number;
|
|
21
|
+
/** Timestamp of last update */
|
|
22
|
+
lastUpdated: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Last-Write-Wins Register state
|
|
26
|
+
*/
|
|
27
|
+
export interface LWWRegisterState<T> extends CRDTBaseState {
|
|
28
|
+
/** Current value (undefined if never set) */
|
|
29
|
+
value: T | undefined;
|
|
30
|
+
/** Timestamp when value was set */
|
|
31
|
+
timestamp: number;
|
|
32
|
+
/** Node ID that set the value */
|
|
33
|
+
nodeId: string;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* LWW-Register interface for storing single values with timestamp-based conflict resolution
|
|
37
|
+
*/
|
|
38
|
+
export interface LWWRegister<T> {
|
|
39
|
+
/** Get current value */
|
|
40
|
+
get(): T | undefined;
|
|
41
|
+
/** Set value with optional timestamp (defaults to Date.now()) */
|
|
42
|
+
set(value: T, timestamp?: number): void;
|
|
43
|
+
/** Merge with another register (commutative operation) */
|
|
44
|
+
merge(other: LWWRegister<T>): void;
|
|
45
|
+
/** Get state for replication */
|
|
46
|
+
getState(): LWWRegisterState<T>;
|
|
47
|
+
/** Apply state from another replica */
|
|
48
|
+
applyState(state: LWWRegisterState<T>): void;
|
|
49
|
+
/** Get node ID */
|
|
50
|
+
getNodeId(): string;
|
|
51
|
+
/** Get timestamp of current value */
|
|
52
|
+
getTimestamp(): number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Grow-only Counter state (per-node counts)
|
|
56
|
+
*/
|
|
57
|
+
export interface GCounterState extends CRDTBaseState {
|
|
58
|
+
/** Map of node ID to count */
|
|
59
|
+
counts: Record<string, number>;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* G-Counter interface - only supports increment operations
|
|
63
|
+
*/
|
|
64
|
+
export interface GCounter {
|
|
65
|
+
/** Get current total count */
|
|
66
|
+
get(): number;
|
|
67
|
+
/** Increment by n (default 1) */
|
|
68
|
+
increment(n?: number): void;
|
|
69
|
+
/** Merge with another counter (commutative operation) */
|
|
70
|
+
merge(other: GCounter): void;
|
|
71
|
+
/** Get state for replication */
|
|
72
|
+
getState(): GCounterState;
|
|
73
|
+
/** Apply state from another replica */
|
|
74
|
+
applyState(state: GCounterState): void;
|
|
75
|
+
/** Get node ID */
|
|
76
|
+
getNodeId(): string;
|
|
77
|
+
/** Get local count for this node */
|
|
78
|
+
getLocalCount(): number;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Positive-Negative Counter state (two G-Counters)
|
|
82
|
+
*/
|
|
83
|
+
export interface PNCounterState extends CRDTBaseState {
|
|
84
|
+
/** Positive counter state */
|
|
85
|
+
positive: GCounterState;
|
|
86
|
+
/** Negative counter state */
|
|
87
|
+
negative: GCounterState;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* PN-Counter interface - supports both increment and decrement
|
|
91
|
+
*/
|
|
92
|
+
export interface PNCounter {
|
|
93
|
+
/** Get current count (positive - negative) */
|
|
94
|
+
get(): number;
|
|
95
|
+
/** Increment by n (default 1) */
|
|
96
|
+
increment(n?: number): void;
|
|
97
|
+
/** Decrement by n (default 1) */
|
|
98
|
+
decrement(n?: number): void;
|
|
99
|
+
/** Merge with another counter (commutative operation) */
|
|
100
|
+
merge(other: PNCounter): void;
|
|
101
|
+
/** Get state for replication */
|
|
102
|
+
getState(): PNCounterState;
|
|
103
|
+
/** Apply state from another replica */
|
|
104
|
+
applyState(state: PNCounterState): void;
|
|
105
|
+
/** Get node ID */
|
|
106
|
+
getNodeId(): string;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Element with unique tags for OR-Set
|
|
110
|
+
*/
|
|
111
|
+
export interface ORSetElement<T> {
|
|
112
|
+
/** Element value */
|
|
113
|
+
value: T;
|
|
114
|
+
/** Unique tags associated with this element */
|
|
115
|
+
tags: Set<string>;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Observed-Remove Set state
|
|
119
|
+
*/
|
|
120
|
+
export interface ORSetState<T> extends CRDTBaseState {
|
|
121
|
+
/**
|
|
122
|
+
* Map of serialized elements to their unique tags
|
|
123
|
+
* Tags are unique identifiers (nodeId:timestamp:counter)
|
|
124
|
+
*/
|
|
125
|
+
elements: Record<string, string[]>;
|
|
126
|
+
/**
|
|
127
|
+
* Map of serialized elements to tombstone tags (removed tags)
|
|
128
|
+
*/
|
|
129
|
+
tombstones: Record<string, string[]>;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* OR-Set interface - set with add-wins semantics on concurrent add/remove
|
|
133
|
+
*/
|
|
134
|
+
export interface ORSet<T> {
|
|
135
|
+
/** Check if element exists */
|
|
136
|
+
has(element: T): boolean;
|
|
137
|
+
/** Get all elements as array */
|
|
138
|
+
values(): T[];
|
|
139
|
+
/** Get size of set */
|
|
140
|
+
size(): number;
|
|
141
|
+
/** Add element to set */
|
|
142
|
+
add(element: T): void;
|
|
143
|
+
/** Remove element from set */
|
|
144
|
+
remove(element: T): void;
|
|
145
|
+
/** Merge with another set (commutative operation) */
|
|
146
|
+
merge(other: ORSet<T>): void;
|
|
147
|
+
/** Get state for replication */
|
|
148
|
+
getState(): ORSetState<T>;
|
|
149
|
+
/** Apply state from another replica */
|
|
150
|
+
applyState(state: ORSetState<T>): void;
|
|
151
|
+
/** Get node ID */
|
|
152
|
+
getNodeId(): string;
|
|
153
|
+
/** Clear all elements (removes all with tombstones) */
|
|
154
|
+
clear(): void;
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Change event emitted by CRDT store
|
|
158
|
+
*/
|
|
159
|
+
export interface CRDTChangeEvent {
|
|
160
|
+
/** Key that changed */
|
|
161
|
+
key: string;
|
|
162
|
+
/** Type of CRDT */
|
|
163
|
+
type: CRDTType;
|
|
164
|
+
/** Operation that triggered change */
|
|
165
|
+
operation: 'set' | 'increment' | 'decrement' | 'add' | 'remove' | 'merge';
|
|
166
|
+
/** Timestamp of change */
|
|
167
|
+
timestamp: number;
|
|
168
|
+
/** Node that made the change */
|
|
169
|
+
nodeId: string;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Full store state for replication
|
|
173
|
+
*/
|
|
174
|
+
export interface CRDTStoreState {
|
|
175
|
+
/** Version of store state */
|
|
176
|
+
version: number;
|
|
177
|
+
/** Timestamp of state */
|
|
178
|
+
timestamp: number;
|
|
179
|
+
/** Node ID */
|
|
180
|
+
nodeId: string;
|
|
181
|
+
/** LWW Registers */
|
|
182
|
+
registers: Record<string, LWWRegisterState<unknown>>;
|
|
183
|
+
/** G-Counters */
|
|
184
|
+
gCounters: Record<string, GCounterState>;
|
|
185
|
+
/** PN-Counters */
|
|
186
|
+
pnCounters: Record<string, PNCounterState>;
|
|
187
|
+
/** OR-Sets */
|
|
188
|
+
sets: Record<string, ORSetState<unknown>>;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Delta state for efficient incremental replication
|
|
192
|
+
*/
|
|
193
|
+
export interface CRDTStoreDelta {
|
|
194
|
+
/** Version range this delta covers (from exclusive, to inclusive) */
|
|
195
|
+
fromVersion: number;
|
|
196
|
+
toVersion: number;
|
|
197
|
+
/** Timestamp when delta was generated */
|
|
198
|
+
timestamp: number;
|
|
199
|
+
/** Node ID that generated delta */
|
|
200
|
+
nodeId: string;
|
|
201
|
+
/** Changed registers */
|
|
202
|
+
registers?: Record<string, LWWRegisterState<unknown>>;
|
|
203
|
+
/** Changed G-Counters */
|
|
204
|
+
gCounters?: Record<string, GCounterState>;
|
|
205
|
+
/** Changed PN-Counters */
|
|
206
|
+
pnCounters?: Record<string, PNCounterState>;
|
|
207
|
+
/** Changed OR-Sets */
|
|
208
|
+
sets?: Record<string, ORSetState<unknown>>;
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* CRDT Store configuration
|
|
212
|
+
*/
|
|
213
|
+
export interface CRDTStoreConfig {
|
|
214
|
+
/** Unique node ID for this store instance */
|
|
215
|
+
nodeId: string;
|
|
216
|
+
/** Enable delta tracking for efficient replication */
|
|
217
|
+
enableDeltaTracking?: boolean;
|
|
218
|
+
/** Maximum deltas to keep in history */
|
|
219
|
+
maxDeltaHistory?: number;
|
|
220
|
+
}
|
|
221
|
+
/**
|
|
222
|
+
* Event listener callback type
|
|
223
|
+
*/
|
|
224
|
+
export type CRDTChangeListener = (event: CRDTChangeEvent) => void;
|
|
225
|
+
/**
|
|
226
|
+
* Unified CRDT Store interface
|
|
227
|
+
*/
|
|
228
|
+
export interface CRDTStore {
|
|
229
|
+
/** Get a LWW register by key (creates if not exists) */
|
|
230
|
+
getRegister<T>(key: string): LWWRegister<T>;
|
|
231
|
+
/** Set a register value directly */
|
|
232
|
+
setRegister<T>(key: string, value: T): void;
|
|
233
|
+
/** Check if register exists */
|
|
234
|
+
hasRegister(key: string): boolean;
|
|
235
|
+
/** Delete a register */
|
|
236
|
+
deleteRegister(key: string): boolean;
|
|
237
|
+
/** Get a G-Counter by key (creates if not exists) */
|
|
238
|
+
getGCounter(key: string): GCounter;
|
|
239
|
+
/** Increment a G-Counter directly */
|
|
240
|
+
incrementGCounter(key: string, n?: number): void;
|
|
241
|
+
/** Check if G-Counter exists */
|
|
242
|
+
hasGCounter(key: string): boolean;
|
|
243
|
+
/** Delete a G-Counter */
|
|
244
|
+
deleteGCounter(key: string): boolean;
|
|
245
|
+
/** Get a PN-Counter by key (creates if not exists) */
|
|
246
|
+
getCounter(key: string): PNCounter;
|
|
247
|
+
/** Increment a PN-Counter directly */
|
|
248
|
+
incrementCounter(key: string, n?: number): void;
|
|
249
|
+
/** Decrement a PN-Counter directly */
|
|
250
|
+
decrementCounter(key: string, n?: number): void;
|
|
251
|
+
/** Check if PN-Counter exists */
|
|
252
|
+
hasCounter(key: string): boolean;
|
|
253
|
+
/** Delete a PN-Counter */
|
|
254
|
+
deleteCounter(key: string): boolean;
|
|
255
|
+
/** Get an OR-Set by key (creates if not exists) */
|
|
256
|
+
getSet<T>(key: string): ORSet<T>;
|
|
257
|
+
/** Add element to set directly */
|
|
258
|
+
addToSet<T>(key: string, element: T): void;
|
|
259
|
+
/** Remove element from set directly */
|
|
260
|
+
removeFromSet<T>(key: string, element: T): void;
|
|
261
|
+
/** Check if OR-Set exists */
|
|
262
|
+
hasSet(key: string): boolean;
|
|
263
|
+
/** Delete an OR-Set */
|
|
264
|
+
deleteSet(key: string): boolean;
|
|
265
|
+
/** Merge entire store with another store */
|
|
266
|
+
merge(other: CRDTStore): void;
|
|
267
|
+
/** Get full store state for replication */
|
|
268
|
+
getState(): CRDTStoreState;
|
|
269
|
+
/** Apply full state from another replica */
|
|
270
|
+
applyState(state: CRDTStoreState): void;
|
|
271
|
+
/** Get delta since version (for efficient sync) */
|
|
272
|
+
getDelta(sinceVersion: number): CRDTStoreDelta | null;
|
|
273
|
+
/** Apply delta from another replica */
|
|
274
|
+
applyDelta(delta: CRDTStoreDelta): void;
|
|
275
|
+
/** Get current version */
|
|
276
|
+
getVersion(): number;
|
|
277
|
+
/** Get node ID */
|
|
278
|
+
getNodeId(): string;
|
|
279
|
+
/** Subscribe to change events */
|
|
280
|
+
on(event: 'change', callback: CRDTChangeListener): () => void;
|
|
281
|
+
/** Remove all listeners */
|
|
282
|
+
removeAllListeners(): void;
|
|
283
|
+
/** Get all keys by type */
|
|
284
|
+
keys(type?: CRDTType): string[];
|
|
285
|
+
/** Clear all data */
|
|
286
|
+
clear(): void;
|
|
287
|
+
/** Get statistics */
|
|
288
|
+
getStats(): CRDTStoreStats;
|
|
289
|
+
}
|
|
290
|
+
/**
|
|
291
|
+
* Store statistics
|
|
292
|
+
*/
|
|
293
|
+
export interface CRDTStoreStats {
|
|
294
|
+
/** Total number of CRDTs */
|
|
295
|
+
total: number;
|
|
296
|
+
/** Number of registers */
|
|
297
|
+
registers: number;
|
|
298
|
+
/** Number of G-Counters */
|
|
299
|
+
gCounters: number;
|
|
300
|
+
/** Number of PN-Counters */
|
|
301
|
+
pnCounters: number;
|
|
302
|
+
/** Number of OR-Sets */
|
|
303
|
+
sets: number;
|
|
304
|
+
/** Current version */
|
|
305
|
+
version: number;
|
|
306
|
+
/** Node ID */
|
|
307
|
+
nodeId: string;
|
|
308
|
+
/** Deltas in history */
|
|
309
|
+
deltaHistorySize: number;
|
|
310
|
+
}
|
|
311
|
+
/**
|
|
312
|
+
* Node state snapshot for convergence tracking
|
|
313
|
+
*/
|
|
314
|
+
export interface NodeStateSnapshot {
|
|
315
|
+
/** Node ID */
|
|
316
|
+
nodeId: string;
|
|
317
|
+
/** State version */
|
|
318
|
+
version: number;
|
|
319
|
+
/** Timestamp when recorded */
|
|
320
|
+
timestamp: number;
|
|
321
|
+
/** Hash of state (for quick comparison) */
|
|
322
|
+
stateHash: string;
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Convergence status
|
|
326
|
+
*/
|
|
327
|
+
export interface ConvergenceStatus {
|
|
328
|
+
/** Whether all tracked nodes have converged */
|
|
329
|
+
converged: boolean;
|
|
330
|
+
/** Total number of tracked nodes */
|
|
331
|
+
nodeCount: number;
|
|
332
|
+
/** Number of nodes that are synced */
|
|
333
|
+
syncedNodes: number;
|
|
334
|
+
/** List of node IDs that are behind */
|
|
335
|
+
laggingNodes: string[];
|
|
336
|
+
/** Timestamp of last convergence (null if never converged) */
|
|
337
|
+
lastConvergenceTime: number | null;
|
|
338
|
+
/** Maximum version across all nodes */
|
|
339
|
+
maxVersion: number;
|
|
340
|
+
/** Minimum version across all nodes */
|
|
341
|
+
minVersion: number;
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Convergence tracker configuration
|
|
345
|
+
*/
|
|
346
|
+
export interface ConvergenceTrackerConfig {
|
|
347
|
+
/** How long to keep node state history (ms) */
|
|
348
|
+
historyRetentionMs?: number;
|
|
349
|
+
/** Consider node stale after this time (ms) */
|
|
350
|
+
staleThresholdMs?: number;
|
|
351
|
+
}
|
|
352
|
+
/**
|
|
353
|
+
* Convergence tracker interface
|
|
354
|
+
*/
|
|
355
|
+
export interface ConvergenceTracker {
|
|
356
|
+
/** Record node state */
|
|
357
|
+
recordNodeState(nodeId: string, state: CRDTStoreState): void;
|
|
358
|
+
/** Check if all tracked nodes have converged */
|
|
359
|
+
hasConverged(): boolean;
|
|
360
|
+
/** Get detailed convergence status */
|
|
361
|
+
getStatus(): ConvergenceStatus;
|
|
362
|
+
/** Get list of lagging nodes */
|
|
363
|
+
getLaggingNodes(): string[];
|
|
364
|
+
/** Get time since last convergence (ms, null if never converged) */
|
|
365
|
+
getTimeSinceConvergence(): number | null;
|
|
366
|
+
/** Remove node from tracking */
|
|
367
|
+
removeNode(nodeId: string): void;
|
|
368
|
+
/** Clear all tracked state */
|
|
369
|
+
clear(): void;
|
|
370
|
+
/** Get all tracked node IDs */
|
|
371
|
+
getTrackedNodes(): string[];
|
|
372
|
+
/** Check if a node is being tracked */
|
|
373
|
+
isTracking(nodeId: string): boolean;
|
|
374
|
+
/** Get node's last recorded version */
|
|
375
|
+
getNodeVersion(nodeId: string): number | null;
|
|
376
|
+
}
|
|
377
|
+
/**
|
|
378
|
+
* Serialization options for CRDT state
|
|
379
|
+
*/
|
|
380
|
+
export interface SerializationOptions {
|
|
381
|
+
/** Include timestamps in output */
|
|
382
|
+
includeTimestamps?: boolean;
|
|
383
|
+
/** Pretty print JSON */
|
|
384
|
+
prettyPrint?: boolean;
|
|
385
|
+
}
|
|
386
|
+
/**
|
|
387
|
+
* Result of a merge operation
|
|
388
|
+
*/
|
|
389
|
+
export interface MergeResult {
|
|
390
|
+
/** Whether the merge changed local state */
|
|
391
|
+
changed: boolean;
|
|
392
|
+
/** Number of CRDTs affected */
|
|
393
|
+
affected: number;
|
|
394
|
+
/** Keys that were updated */
|
|
395
|
+
updatedKeys: string[];
|
|
396
|
+
}
|
|
397
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/memory/crdt/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,cAAc,GAAG,WAAW,GAAG,YAAY,GAAG,QAAQ,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,WAAW,EAAE,MAAM,CAAC;CACrB;AAMD;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,aAAa;IACxD,6CAA6C;IAC7C,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC;IACrB,mCAAmC;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,wBAAwB;IACxB,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;IAErB,iEAAiE;IACjE,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExC,0DAA0D;IAC1D,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAEnC,gCAAgC;IAChC,QAAQ,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAEhC,uCAAuC;IACvC,UAAU,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAE7C,kBAAkB;IAClB,SAAS,IAAI,MAAM,CAAC;IAEpB,qCAAqC;IACrC,YAAY,IAAI,MAAM,CAAC;CACxB;AAMD;;GAEG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,8BAA8B;IAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,8BAA8B;IAC9B,GAAG,IAAI,MAAM,CAAC;IAEd,iCAAiC;IACjC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,yDAAyD;IACzD,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IAE7B,gCAAgC;IAChC,QAAQ,IAAI,aAAa,CAAC;IAE1B,uCAAuC;IACvC,UAAU,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IAEvC,kBAAkB;IAClB,SAAS,IAAI,MAAM,CAAC;IAEpB,oCAAoC;IACpC,aAAa,IAAI,MAAM,CAAC;CACzB;AAMD;;GAEG;AACH,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,6BAA6B;IAC7B,QAAQ,EAAE,aAAa,CAAC;IACxB,6BAA6B;IAC7B,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,8CAA8C;IAC9C,GAAG,IAAI,MAAM,CAAC;IAEd,iCAAiC;IACjC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,iCAAiC;IACjC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,yDAAyD;IACzD,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAE9B,gCAAgC;IAChC,QAAQ,IAAI,cAAc,CAAC;IAE3B,uCAAuC;IACvC,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAExC,kBAAkB;IAClB,SAAS,IAAI,MAAM,CAAC;CACrB;AAMD;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,oBAAoB;IACpB,KAAK,EAAE,CAAC,CAAC;IACT,+CAA+C;IAC/C,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,CAAE,SAAQ,aAAa;IAClD;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,KAAK,CAAC,CAAC;IACtB,8BAA8B;IAC9B,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC;IAEzB,gCAAgC;IAChC,MAAM,IAAI,CAAC,EAAE,CAAC;IAEd,sBAAsB;IACtB,IAAI,IAAI,MAAM,CAAC;IAEf,yBAAyB;IACzB,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;IAEtB,8BAA8B;IAC9B,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;IAEzB,qDAAqD;IACrD,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAE7B,gCAAgC;IAChC,QAAQ,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;IAE1B,uCAAuC;IACvC,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAEvC,kBAAkB;IAClB,SAAS,IAAI,MAAM,CAAC;IAEpB,uDAAuD;IACvD,KAAK,IAAI,IAAI,CAAC;CACf;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,uBAAuB;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,IAAI,EAAE,QAAQ,CAAC;IACf,sCAAsC;IACtC,SAAS,EAAE,KAAK,GAAG,WAAW,GAAG,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC1E,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;IACrD,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACzC,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC3C,cAAc;IACd,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC;IACtD,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC1C,0BAA0B;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC5C,sBAAsB;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6CAA6C;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wCAAwC;IACxC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;AAElE;;GAEG;AACH,MAAM,WAAW,SAAS;IAKxB,wDAAwD;IACxD,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;IAE5C,oCAAoC;IACpC,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC;IAE5C,+BAA+B;IAC/B,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC,wBAAwB;IACxB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAMrC,qDAAqD;IACrD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAC;IAEnC,qCAAqC;IACrC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD,gCAAgC;IAChC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAElC,yBAAyB;IACzB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAMrC,sDAAsD;IACtD,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC,sCAAsC;IACtC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhD,sCAAsC;IACtC,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhD,iCAAiC;IACjC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAEjC,0BAA0B;IAC1B,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAMpC,mDAAmD;IACnD,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEjC,kCAAkC;IAClC,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;IAE3C,uCAAuC;IACvC,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC;IAEhD,6BAA6B;IAC7B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAE7B,uBAAuB;IACvB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAMhC,4CAA4C;IAC5C,KAAK,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IAE9B,2CAA2C;IAC3C,QAAQ,IAAI,cAAc,CAAC;IAE3B,4CAA4C;IAC5C,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAExC,mDAAmD;IACnD,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAAC;IAEtD,uCAAuC;IACvC,UAAU,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAExC,0BAA0B;IAC1B,UAAU,IAAI,MAAM,CAAC;IAErB,kBAAkB;IAClB,SAAS,IAAI,MAAM,CAAC;IAMpB,iCAAiC;IACjC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,GAAG,MAAM,IAAI,CAAC;IAE9D,2BAA2B;IAC3B,kBAAkB,IAAI,IAAI,CAAC;IAM3B,2BAA2B;IAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,EAAE,CAAC;IAEhC,qBAAqB;IACrB,KAAK,IAAI,IAAI,CAAC;IAEd,qBAAqB;IACrB,QAAQ,IAAI,cAAc,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAMD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,cAAc;IACd,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,+CAA+C;IAC/C,SAAS,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,8DAA8D;IAC9D,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,+CAA+C;IAC/C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+CAA+C;IAC/C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAE7D,gDAAgD;IAChD,YAAY,IAAI,OAAO,CAAC;IAExB,sCAAsC;IACtC,SAAS,IAAI,iBAAiB,CAAC;IAE/B,gCAAgC;IAChC,eAAe,IAAI,MAAM,EAAE,CAAC;IAE5B,oEAAoE;IACpE,uBAAuB,IAAI,MAAM,GAAG,IAAI,CAAC;IAEzC,gCAAgC;IAChC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,8BAA8B;IAC9B,KAAK,IAAI,IAAI,CAAC;IAEd,+BAA+B;IAC/B,eAAe,IAAI,MAAM,EAAE,CAAC;IAE5B,uCAAuC;IACvC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;IAEpC,uCAAuC;IACvC,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CAC/C;AAMD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wBAAwB;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;IACjB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CRDT Type Definitions
|
|
3
|
+
*
|
|
4
|
+
* Conflict-free Replicated Data Types for eventually consistent
|
|
5
|
+
* distributed state across agents.
|
|
6
|
+
*
|
|
7
|
+
* @module memory/crdt/types
|
|
8
|
+
* @see ADR-054: A2A Protocol Integration (distributed state)
|
|
9
|
+
* @see Implementation Plan Task 4.2
|
|
10
|
+
*/
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/memory/crdt/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Memory
|
|
2
|
+
* Memory Module
|
|
3
3
|
*
|
|
4
|
-
* Re-exports all memory services
|
|
4
|
+
* Re-exports all memory services including:
|
|
5
|
+
* - Cross-phase memory for QCSD feedback loops
|
|
6
|
+
* - CRDT-based distributed memory for multi-agent state
|
|
5
7
|
*
|
|
6
8
|
* @module memory
|
|
7
9
|
*/
|
|
8
10
|
export * from './cross-phase-memory.js';
|
|
11
|
+
export * from './crdt/index.js';
|
|
9
12
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC"}
|
package/v3/dist/memory/index.js
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Memory
|
|
2
|
+
* Memory Module
|
|
3
3
|
*
|
|
4
|
-
* Re-exports all memory services
|
|
4
|
+
* Re-exports all memory services including:
|
|
5
|
+
* - Cross-phase memory for QCSD feedback loops
|
|
6
|
+
* - CRDT-based distributed memory for multi-agent state
|
|
5
7
|
*
|
|
6
8
|
* @module memory
|
|
7
9
|
*/
|
|
8
10
|
export * from './cross-phase-memory.js';
|
|
11
|
+
export * from './crdt/index.js';
|
|
9
12
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/memory/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Performance Benchmark Suite
|
|
3
|
+
* Comprehensive benchmarks for AG-UI, A2A, and A2UI protocols
|
|
4
|
+
*
|
|
5
|
+
* Issue #177 Targets:
|
|
6
|
+
* - AG-UI streaming: <100ms p95
|
|
7
|
+
* - A2A task submission: <200ms p95
|
|
8
|
+
* - A2UI surface generation: <150ms p95
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Performance targets from Issue #177
|
|
12
|
+
*/
|
|
13
|
+
export declare const PERFORMANCE_TARGETS: {
|
|
14
|
+
readonly aguiEventEmission: {
|
|
15
|
+
readonly p95: 10;
|
|
16
|
+
};
|
|
17
|
+
readonly aguiStateSync: {
|
|
18
|
+
readonly p95: 50;
|
|
19
|
+
};
|
|
20
|
+
readonly aguiSSEStreaming: {
|
|
21
|
+
readonly p95: 100;
|
|
22
|
+
};
|
|
23
|
+
readonly a2aTaskSubmission: {
|
|
24
|
+
readonly p95: 200;
|
|
25
|
+
};
|
|
26
|
+
readonly a2aAgentDiscovery: {
|
|
27
|
+
readonly p95: 100;
|
|
28
|
+
};
|
|
29
|
+
readonly a2aJSONRPCParsing: {
|
|
30
|
+
readonly p95: 5;
|
|
31
|
+
};
|
|
32
|
+
readonly a2uiSurfaceGeneration: {
|
|
33
|
+
readonly p95: 150;
|
|
34
|
+
};
|
|
35
|
+
readonly a2uiDataBinding: {
|
|
36
|
+
readonly p95: 20;
|
|
37
|
+
};
|
|
38
|
+
readonly a2uiComponentValidation: {
|
|
39
|
+
readonly p95: 10;
|
|
40
|
+
};
|
|
41
|
+
readonly memoryPeak: number;
|
|
42
|
+
readonly throughput: 1000;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Individual benchmark result
|
|
46
|
+
*/
|
|
47
|
+
export interface BenchmarkResult {
|
|
48
|
+
/** Benchmark name */
|
|
49
|
+
readonly name: string;
|
|
50
|
+
/** Number of iterations performed */
|
|
51
|
+
readonly iterations: number;
|
|
52
|
+
/** Operations per second */
|
|
53
|
+
readonly opsPerSecond: number;
|
|
54
|
+
/** Average time in milliseconds */
|
|
55
|
+
readonly avgTime: number;
|
|
56
|
+
/** P50 (median) in milliseconds */
|
|
57
|
+
readonly p50: number;
|
|
58
|
+
/** P95 in milliseconds */
|
|
59
|
+
readonly p95: number;
|
|
60
|
+
/** P99 in milliseconds */
|
|
61
|
+
readonly p99: number;
|
|
62
|
+
/** Maximum time in milliseconds */
|
|
63
|
+
readonly maxTime: number;
|
|
64
|
+
/** Minimum time in milliseconds */
|
|
65
|
+
readonly minTime: number;
|
|
66
|
+
/** Memory delta in bytes */
|
|
67
|
+
readonly memoryDelta: number;
|
|
68
|
+
/** Whether target was met */
|
|
69
|
+
readonly passed: boolean;
|
|
70
|
+
/** Target time in ms (if applicable) */
|
|
71
|
+
readonly target?: number;
|
|
72
|
+
/** Timestamp */
|
|
73
|
+
readonly timestamp: number;
|
|
74
|
+
/** Additional metadata */
|
|
75
|
+
readonly metadata?: Record<string, unknown>;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Complete benchmark results
|
|
79
|
+
*/
|
|
80
|
+
export interface BenchmarkResults {
|
|
81
|
+
/** All benchmark results */
|
|
82
|
+
readonly results: BenchmarkResult[];
|
|
83
|
+
/** Overall pass/fail */
|
|
84
|
+
readonly allPassed: boolean;
|
|
85
|
+
/** Total duration in milliseconds */
|
|
86
|
+
readonly totalDuration: number;
|
|
87
|
+
/** Start timestamp */
|
|
88
|
+
readonly startedAt: number;
|
|
89
|
+
/** End timestamp */
|
|
90
|
+
readonly endedAt: number;
|
|
91
|
+
/** System info */
|
|
92
|
+
readonly system: {
|
|
93
|
+
readonly nodeVersion: string;
|
|
94
|
+
readonly platform: string;
|
|
95
|
+
readonly arch: string;
|
|
96
|
+
readonly cpus: number;
|
|
97
|
+
readonly memory: number;
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Benchmark configuration
|
|
102
|
+
*/
|
|
103
|
+
export interface BenchmarkConfig {
|
|
104
|
+
/** Number of iterations per benchmark */
|
|
105
|
+
readonly iterations: number;
|
|
106
|
+
/** Warmup iterations (not counted) */
|
|
107
|
+
readonly warmupIterations: number;
|
|
108
|
+
/** Timeout per benchmark in milliseconds */
|
|
109
|
+
readonly timeout: number;
|
|
110
|
+
/** Whether to run GC between benchmarks */
|
|
111
|
+
readonly forceGC: boolean;
|
|
112
|
+
/** Whether to track memory */
|
|
113
|
+
readonly trackMemory: boolean;
|
|
114
|
+
/** Profiler configuration */
|
|
115
|
+
readonly profilerConfig?: Record<string, unknown>;
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* Benchmark function type
|
|
119
|
+
*/
|
|
120
|
+
export type BenchmarkFn = () => void | Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* BenchmarkSuite - Comprehensive performance benchmark runner
|
|
123
|
+
*
|
|
124
|
+
* Features:
|
|
125
|
+
* - Configurable iterations and warmup
|
|
126
|
+
* - Memory tracking
|
|
127
|
+
* - P50/P95/P99 percentile calculations
|
|
128
|
+
* - Target validation
|
|
129
|
+
* - System info collection
|
|
130
|
+
*/
|
|
131
|
+
export declare class BenchmarkSuite {
|
|
132
|
+
private readonly config;
|
|
133
|
+
private readonly profiler;
|
|
134
|
+
private readonly results;
|
|
135
|
+
constructor(config?: Partial<BenchmarkConfig>);
|
|
136
|
+
/**
|
|
137
|
+
* Run all defined benchmarks
|
|
138
|
+
*/
|
|
139
|
+
runAll(): Promise<BenchmarkResults>;
|
|
140
|
+
/**
|
|
141
|
+
* Run a specific benchmark by name
|
|
142
|
+
*/
|
|
143
|
+
run(name: string): Promise<BenchmarkResult>;
|
|
144
|
+
/**
|
|
145
|
+
* Benchmark AG-UI event emission
|
|
146
|
+
*/
|
|
147
|
+
benchmarkAGUIEventEmission(): Promise<BenchmarkResult>;
|
|
148
|
+
/**
|
|
149
|
+
* Benchmark AG-UI state synchronization
|
|
150
|
+
*/
|
|
151
|
+
benchmarkAGUIStateSync(): Promise<BenchmarkResult>;
|
|
152
|
+
/**
|
|
153
|
+
* Benchmark AG-UI SSE streaming
|
|
154
|
+
*/
|
|
155
|
+
benchmarkAGUISSEStreaming(): Promise<BenchmarkResult>;
|
|
156
|
+
/**
|
|
157
|
+
* Benchmark A2A task submission
|
|
158
|
+
*/
|
|
159
|
+
benchmarkA2ATaskSubmission(): Promise<BenchmarkResult>;
|
|
160
|
+
/**
|
|
161
|
+
* Benchmark A2A agent discovery
|
|
162
|
+
*/
|
|
163
|
+
benchmarkA2AAgentDiscovery(): Promise<BenchmarkResult>;
|
|
164
|
+
/**
|
|
165
|
+
* Benchmark A2A JSON-RPC parsing
|
|
166
|
+
*/
|
|
167
|
+
benchmarkA2AJSONRPCParsing(): Promise<BenchmarkResult>;
|
|
168
|
+
/**
|
|
169
|
+
* Benchmark A2UI surface generation
|
|
170
|
+
*/
|
|
171
|
+
benchmarkA2UISurfaceGeneration(): Promise<BenchmarkResult>;
|
|
172
|
+
/**
|
|
173
|
+
* Benchmark A2UI data binding
|
|
174
|
+
*/
|
|
175
|
+
benchmarkA2UIDataBinding(): Promise<BenchmarkResult>;
|
|
176
|
+
/**
|
|
177
|
+
* Benchmark A2UI component validation
|
|
178
|
+
*/
|
|
179
|
+
benchmarkA2UIComponentValidation(): Promise<BenchmarkResult>;
|
|
180
|
+
/**
|
|
181
|
+
* Benchmark end-to-end flow across all protocols
|
|
182
|
+
*/
|
|
183
|
+
benchmarkEndToEndFlow(): Promise<BenchmarkResult>;
|
|
184
|
+
/**
|
|
185
|
+
* Benchmark memory under load
|
|
186
|
+
*/
|
|
187
|
+
benchmarkMemoryUnderLoad(): Promise<BenchmarkResult>;
|
|
188
|
+
/**
|
|
189
|
+
* Run a single benchmark function
|
|
190
|
+
*/
|
|
191
|
+
private runBenchmark;
|
|
192
|
+
private percentile;
|
|
193
|
+
private getSystemInfo;
|
|
194
|
+
/**
|
|
195
|
+
* Get all benchmark results
|
|
196
|
+
*/
|
|
197
|
+
getResults(): BenchmarkResult[];
|
|
198
|
+
/**
|
|
199
|
+
* Get result by name
|
|
200
|
+
*/
|
|
201
|
+
getResult(name: string): BenchmarkResult | undefined;
|
|
202
|
+
/**
|
|
203
|
+
* Clear all results
|
|
204
|
+
*/
|
|
205
|
+
clearResults(): void;
|
|
206
|
+
/**
|
|
207
|
+
* Destroy the benchmark suite
|
|
208
|
+
*/
|
|
209
|
+
destroy(): void;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Create a new BenchmarkSuite instance
|
|
213
|
+
*/
|
|
214
|
+
export declare function createBenchmarkSuite(config?: Partial<BenchmarkConfig>): BenchmarkSuite;
|
|
215
|
+
//# sourceMappingURL=benchmarks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"benchmarks.d.ts","sourceRoot":"","sources":["../../src/performance/benchmarks.ts"],"names":[],"mappings":"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"}
|