@zhin.js/workroom 0.0.4 → 0.0.6
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/lib/data-governance/canonical-value.d.ts +0 -1
- package/lib/data-governance/canonical-value.js.map +1 -1
- package/lib/data-governance/data-governance.d.ts +0 -1
- package/lib/data-governance/data-governance.js.map +1 -1
- package/lib/data-governance/database-payload-lifecycle-repository.d.ts +0 -1
- package/lib/data-governance/database-payload-lifecycle-repository.js.map +1 -1
- package/lib/data-governance/disclosure-authority.d.ts +0 -1
- package/lib/data-governance/disclosure-authority.js.map +1 -1
- package/lib/data-governance/disclosure-manifest.d.ts +0 -1
- package/lib/data-governance/disclosure-manifest.js.map +1 -1
- package/lib/data-governance/durable-file-store.d.ts +0 -1
- package/lib/data-governance/durable-file-store.js.map +1 -1
- package/lib/data-governance/encrypted-database-payload-vault.d.ts +0 -1
- package/lib/data-governance/encrypted-database-payload-vault.js.map +1 -1
- package/lib/data-governance/encrypted-file-payload-vault.d.ts +0 -1
- package/lib/data-governance/encrypted-file-payload-vault.js.map +1 -1
- package/lib/data-governance/file-payload-lifecycle-repository.d.ts +0 -1
- package/lib/data-governance/file-payload-lifecycle-repository.js.map +1 -1
- package/lib/data-governance/governance-authority-repository.d.ts +0 -1
- package/lib/data-governance/governance-authority-repository.js.map +1 -1
- package/lib/data-governance/governed-payload-write-saga.d.ts +0 -1
- package/lib/data-governance/governed-payload-write-saga.js.map +1 -1
- package/lib/data-governance/payload-hold-overdue-projection.d.ts +0 -1
- package/lib/data-governance/payload-hold-overdue-projection.js.map +1 -1
- package/lib/data-governance/payload-lifecycle.d.ts +0 -1
- package/lib/data-governance/payload-lifecycle.js.map +1 -1
- package/lib/data-governance/payload-vault-storage-handoff.d.ts +0 -1
- package/lib/data-governance/payload-vault-storage-handoff.js.map +1 -1
- package/lib/data-governance.d.ts +0 -1
- package/lib/data-governance.js.map +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.js.map +1 -1
- package/lib/portfolio/capacity-control-outbox.d.ts +0 -1
- package/lib/portfolio/capacity-control-outbox.js.map +1 -1
- package/lib/portfolio/database-capacity-control-outbox.d.ts +0 -1
- package/lib/portfolio/database-capacity-control-outbox.js.map +1 -1
- package/lib/portfolio/file-capacity-control-outbox.d.ts +0 -1
- package/lib/portfolio/file-capacity-control-outbox.js.map +1 -1
- package/lib/portfolio/file-portfolio-journal.d.ts +0 -1
- package/lib/portfolio/file-portfolio-journal.js.map +1 -1
- package/lib/portfolio/portfolio-admission.d.ts +0 -1
- package/lib/portfolio/portfolio-admission.js.map +1 -1
- package/lib/portfolio/portfolio-journal.d.ts +0 -1
- package/lib/portfolio/portfolio-journal.js.map +1 -1
- package/lib/portfolio/resource-bundle.d.ts +0 -1
- package/lib/portfolio/resource-bundle.js.map +1 -1
- package/lib/portfolio/sponsor-projection.d.ts +0 -1
- package/lib/portfolio/sponsor-projection.js.map +1 -1
- package/lib/portfolio.d.ts +0 -1
- package/lib/portfolio.js.map +1 -1
- package/lib/remote.d.ts +0 -1
- package/lib/remote.js.map +1 -1
- package/lib/room/database-room-task-journal.d.ts +0 -1
- package/lib/room/database-room-task-journal.js.map +1 -1
- package/lib/room/index.d.ts +0 -1
- package/lib/room/index.js.map +1 -1
- package/lib/room/room-bus.d.ts +0 -1
- package/lib/room/room-bus.js.map +1 -1
- package/lib/room/room-definition.d.ts +0 -1
- package/lib/room/room-definition.js.map +1 -1
- package/lib/room/room-event-sequencer.d.ts +0 -1
- package/lib/room/room-event-sequencer.js.map +1 -1
- package/lib/room/room-guards.d.ts +0 -1
- package/lib/room/room-guards.js.map +1 -1
- package/lib/room/room-membership.d.ts +0 -1
- package/lib/room/room-membership.js.map +1 -1
- package/lib/room/room-registry.d.ts +0 -1
- package/lib/room/room-registry.js.map +1 -1
- package/lib/room/room-router.d.ts +0 -1
- package/lib/room/room-router.js.map +1 -1
- package/lib/room/room-send-limiter.d.ts +0 -1
- package/lib/room/room-send-limiter.js.map +1 -1
- package/lib/room/room-task-authorizer.d.ts +0 -1
- package/lib/room/room-task-authorizer.js.map +1 -1
- package/lib/room/room-task-journal.d.ts +0 -1
- package/lib/room/room-task-journal.js.map +1 -1
- package/lib/room/room-task-service.d.ts +0 -1
- package/lib/room/room-task-service.js.map +1 -1
- package/lib/room/room-task.d.ts +0 -1
- package/lib/room/room-task.js.map +1 -1
- package/lib/room/validate-room.d.ts +0 -1
- package/lib/room/validate-room.js.map +1 -1
- package/lib/scheduler.d.ts +0 -1
- package/lib/scheduler.js.map +1 -1
- package/lib/workroom/acceptance-control.d.ts +0 -1
- package/lib/workroom/acceptance-control.js.map +1 -1
- package/lib/workroom/acceptance-policy.d.ts +0 -1
- package/lib/workroom/acceptance-policy.js.map +1 -1
- package/lib/workroom/accepted-source-memory-application.d.ts +0 -1
- package/lib/workroom/accepted-source-memory-application.js.map +1 -1
- package/lib/workroom/accepted-source-projector.d.ts +0 -1
- package/lib/workroom/accepted-source-projector.js.map +1 -1
- package/lib/workroom/assignment-authority-grant-application.d.ts +0 -1
- package/lib/workroom/assignment-authority-grant-application.js.map +1 -1
- package/lib/workroom/assignment-authority-grant-repository.d.ts +0 -1
- package/lib/workroom/assignment-authority-grant-repository.js.map +1 -1
- package/lib/workroom/assignment-authority.d.ts +0 -1
- package/lib/workroom/assignment-authority.js.map +1 -1
- package/lib/workroom/assignment-executor.d.ts +0 -1
- package/lib/workroom/assignment-executor.js.map +1 -1
- package/lib/workroom/assignment-observation-ingress.d.ts +0 -1
- package/lib/workroom/assignment-observation-ingress.js.map +1 -1
- package/lib/workroom/canonical-value.d.ts +0 -1
- package/lib/workroom/canonical-value.js.map +1 -1
- package/lib/workroom/catalog-definition.d.ts +0 -1
- package/lib/workroom/catalog-definition.js.map +1 -1
- package/lib/workroom/catalog.d.ts +0 -1
- package/lib/workroom/catalog.js.map +1 -1
- package/lib/workroom/coding-assignment-executor.d.ts +0 -1
- package/lib/workroom/coding-assignment-executor.js.map +1 -1
- package/lib/workroom/coding-git-objects.d.ts +0 -1
- package/lib/workroom/coding-git-objects.js.map +1 -1
- package/lib/workroom/database-project-knowledge-journal.d.ts +0 -1
- package/lib/workroom/database-project-knowledge-journal.js.map +1 -1
- package/lib/workroom/durable-file-store.d.ts +0 -1
- package/lib/workroom/durable-file-store.js.map +1 -1
- package/lib/workroom/dynamic-workflow-planner.d.ts +0 -1
- package/lib/workroom/dynamic-workflow-planner.js.map +1 -1
- package/lib/workroom/effect-blocker-repository.d.ts +0 -1
- package/lib/workroom/effect-blocker-repository.js.map +1 -1
- package/lib/workroom/effect-ledger.d.ts +0 -1
- package/lib/workroom/effect-ledger.js.map +1 -1
- package/lib/workroom/file-accepted-source-memory-repository.d.ts +0 -1
- package/lib/workroom/file-accepted-source-memory-repository.js.map +1 -1
- package/lib/workroom/file-coding-execution-store.d.ts +0 -1
- package/lib/workroom/file-coding-execution-store.js.map +1 -1
- package/lib/workroom/file-effect-ledger.d.ts +0 -1
- package/lib/workroom/file-effect-ledger.js.map +1 -1
- package/lib/workroom/file-human-ingress-application.d.ts +0 -1
- package/lib/workroom/file-human-ingress-application.js.map +1 -1
- package/lib/workroom/file-human-ingress.d.ts +0 -1
- package/lib/workroom/file-human-ingress.js.map +1 -1
- package/lib/workroom/file-interaction-space-binding-repository.d.ts +0 -1
- package/lib/workroom/file-interaction-space-binding-repository.js.map +1 -1
- package/lib/workroom/file-profile-journal.d.ts +0 -1
- package/lib/workroom/file-profile-journal.js.map +1 -1
- package/lib/workroom/git-workspace-gateway.d.ts +0 -1
- package/lib/workroom/git-workspace-gateway.js.map +1 -1
- package/lib/workroom/github-workspace-transport.d.ts +0 -1
- package/lib/workroom/github-workspace-transport.js.map +1 -1
- package/lib/workroom/governed-dispatch-reasons.d.ts +0 -1
- package/lib/workroom/governed-dispatch-reasons.js.map +1 -1
- package/lib/workroom/human-ingress-application.d.ts +0 -1
- package/lib/workroom/human-ingress-application.js.map +1 -1
- package/lib/workroom/human-ingress-orchestrator.d.ts +0 -1
- package/lib/workroom/human-ingress-orchestrator.js.map +1 -1
- package/lib/workroom/human-ingress-source-reader.d.ts +0 -1
- package/lib/workroom/human-ingress-source-reader.js.map +1 -1
- package/lib/workroom/human-ingress.d.ts +0 -1
- package/lib/workroom/human-ingress.js.map +1 -1
- package/lib/workroom/interaction-space-binding-service.d.ts +0 -1
- package/lib/workroom/interaction-space-binding-service.js.map +1 -1
- package/lib/workroom/interaction-space-router.d.ts +0 -1
- package/lib/workroom/interaction-space-router.js.map +1 -1
- package/lib/workroom/journal/activatable-journal.d.ts +0 -1
- package/lib/workroom/journal/activatable-journal.js.map +1 -1
- package/lib/workroom/journal/contracts.d.ts +0 -1
- package/lib/workroom/journal/contracts.js.map +1 -1
- package/lib/workroom/journal/database-journal.d.ts +0 -1
- package/lib/workroom/journal/database-journal.js.map +1 -1
- package/lib/workroom/journal/event-codec.d.ts +0 -1
- package/lib/workroom/journal/event-codec.js.map +1 -1
- package/lib/workroom/journal/event-validation.d.ts +0 -1
- package/lib/workroom/journal/event-validation.js.map +1 -1
- package/lib/workroom/journal/file-journal.d.ts +0 -1
- package/lib/workroom/journal/file-journal.js.map +1 -1
- package/lib/workroom/journal/index.d.ts +0 -1
- package/lib/workroom/journal/index.js.map +1 -1
- package/lib/workroom/journal/legacy-payload-guard.d.ts +0 -1
- package/lib/workroom/journal/legacy-payload-guard.js.map +1 -1
- package/lib/workroom/journal/memory-journal.d.ts +0 -1
- package/lib/workroom/journal/memory-journal.js.map +1 -1
- package/lib/workroom/journal/payload-governance.d.ts +0 -1
- package/lib/workroom/journal/payload-governance.js.map +1 -1
- package/lib/workroom/journal/payload-reference.d.ts +0 -1
- package/lib/workroom/journal/payload-reference.js.map +1 -1
- package/lib/workroom/journal/stored-event-projection.d.ts +0 -1
- package/lib/workroom/journal/stored-event-projection.js.map +1 -1
- package/lib/workroom/journal-model.d.ts +0 -1
- package/lib/workroom/journal-model.js.map +1 -1
- package/lib/workroom/kernel-contracts.d.ts +0 -1
- package/lib/workroom/kernel-contracts.js.map +1 -1
- package/lib/workroom/kernel-state.d.ts +0 -1
- package/lib/workroom/kernel-state.js.map +1 -1
- package/lib/workroom/local-assignment-issuance.d.ts +0 -1
- package/lib/workroom/local-assignment-issuance.js.map +1 -1
- package/lib/workroom/plan-approval-control.d.ts +0 -1
- package/lib/workroom/plan-approval-control.js.map +1 -1
- package/lib/workroom/plan-revision.d.ts +0 -1
- package/lib/workroom/plan-revision.js.map +1 -1
- package/lib/workroom/profile-compiler.d.ts +0 -1
- package/lib/workroom/profile-compiler.js.map +1 -1
- package/lib/workroom/profile-registry.d.ts +0 -1
- package/lib/workroom/profile-registry.js.map +1 -1
- package/lib/workroom/project-knowledge-registry.d.ts +0 -1
- package/lib/workroom/project-knowledge-registry.js.map +1 -1
- package/lib/workroom/projection-outbox/contracts.d.ts +0 -1
- package/lib/workroom/projection-outbox/contracts.js.map +1 -1
- package/lib/workroom/projection-outbox/delivery-worker.d.ts +0 -1
- package/lib/workroom/projection-outbox/delivery-worker.js.map +1 -1
- package/lib/workroom/projection-outbox/file-repository.d.ts +0 -1
- package/lib/workroom/projection-outbox/file-repository.js.map +1 -1
- package/lib/workroom/projection-outbox/index.d.ts +0 -1
- package/lib/workroom/projection-outbox/index.js.map +1 -1
- package/lib/workroom/projection-outbox/memory-repository.d.ts +0 -1
- package/lib/workroom/projection-outbox/memory-repository.js.map +1 -1
- package/lib/workroom/projection-outbox/projector.d.ts +0 -1
- package/lib/workroom/projection-outbox/projector.js.map +1 -1
- package/lib/workroom/projection-outbox/repository-state.d.ts +0 -1
- package/lib/workroom/projection-outbox/repository-state.js.map +1 -1
- package/lib/workroom/projection-outbox/tracer.d.ts +0 -1
- package/lib/workroom/projection-outbox/tracer.js.map +1 -1
- package/lib/workroom/remote-assignment-dispatch-command.d.ts +0 -1
- package/lib/workroom/remote-assignment-dispatch-command.js.map +1 -1
- package/lib/workroom/remote-assignment-issuance.d.ts +0 -1
- package/lib/workroom/remote-assignment-issuance.js.map +1 -1
- package/lib/workroom/remote-callback-application.d.ts +0 -1
- package/lib/workroom/remote-callback-application.js.map +1 -1
- package/lib/workroom/remote-callback-gateway.d.ts +0 -1
- package/lib/workroom/remote-callback-gateway.js.map +1 -1
- package/lib/workroom/remote-callback-inbox.d.ts +0 -1
- package/lib/workroom/remote-callback-inbox.js.map +1 -1
- package/lib/workroom/remote-callback-reconciliation-worker.d.ts +0 -1
- package/lib/workroom/remote-callback-reconciliation-worker.js.map +1 -1
- package/lib/workroom/remote-dispatch-admission.d.ts +0 -1
- package/lib/workroom/remote-dispatch-admission.js.map +1 -1
- package/lib/workroom/remote-dispatch-outbox.d.ts +0 -1
- package/lib/workroom/remote-dispatch-outbox.js.map +1 -1
- package/lib/workroom/remote-dispatch-scheduler.d.ts +0 -1
- package/lib/workroom/remote-dispatch-scheduler.js.map +1 -1
- package/lib/workroom/remote-dispatch-worker.d.ts +0 -1
- package/lib/workroom/remote-dispatch-worker.js.map +1 -1
- package/lib/workroom/remote-dispatch.d.ts +0 -1
- package/lib/workroom/remote-dispatch.js.map +1 -1
- package/lib/workroom/remote-executor.d.ts +0 -1
- package/lib/workroom/remote-executor.js.map +1 -1
- package/lib/workroom/role-capability-snapshot.d.ts +0 -1
- package/lib/workroom/role-capability-snapshot.js.map +1 -1
- package/lib/workroom/runtime.d.ts +0 -1
- package/lib/workroom/runtime.js.map +1 -1
- package/lib/workroom/scheduler-priority-control.d.ts +0 -1
- package/lib/workroom/scheduler-priority-control.js.map +1 -1
- package/lib/workroom/software-delivery-plan.d.ts +0 -1
- package/lib/workroom/software-delivery-plan.js.map +1 -1
- package/lib/workroom/validate-catalog.d.ts +0 -1
- package/lib/workroom/validate-catalog.js.map +1 -1
- package/lib/workroom/workflow-plan-builder.d.ts +0 -1
- package/lib/workroom/workflow-plan-builder.js.map +1 -1
- package/lib/workroom/workroom-assignment-knowledge-context.d.ts +0 -1
- package/lib/workroom/workroom-assignment-knowledge-context.js.map +1 -1
- package/lib/workroom/workroom-kernel.d.ts +0 -1
- package/lib/workroom/workroom-kernel.js.map +1 -1
- package/lib/workroom/workroom-preemption.d.ts +0 -1
- package/lib/workroom/workroom-preemption.js.map +1 -1
- package/lib/workroom/workroom-run-control.d.ts +0 -1
- package/lib/workroom/workroom-run-control.js.map +1 -1
- package/lib/workroom/workroom-scheduler-application.d.ts +0 -1
- package/lib/workroom/workroom-scheduler-application.js.map +1 -1
- package/lib/workroom/workroom-scheduler.d.ts +0 -1
- package/lib/workroom/workroom-scheduler.js.map +1 -1
- package/lib/workroom/workroom-task-report-store.d.ts +0 -1
- package/lib/workroom/workroom-task-report-store.js.map +1 -1
- package/lib/workroom-runtime/database-overlay-pack-promotion-repository.d.ts +0 -1
- package/lib/workroom-runtime/database-overlay-pack-promotion-repository.js.map +1 -1
- package/lib/workroom-runtime/github-actions-delivery-provider.d.ts +0 -1
- package/lib/workroom-runtime/github-actions-delivery-provider.js.map +1 -1
- package/lib/workroom-runtime/github-exact-merge-gateway.d.ts +0 -1
- package/lib/workroom-runtime/github-exact-merge-gateway.js.map +1 -1
- package/lib/workroom-runtime/github-workroom-capability.d.ts +0 -1
- package/lib/workroom-runtime/github-workroom-capability.js.map +1 -1
- package/lib/workroom-runtime/self-delivery-project-composition.d.ts +0 -1
- package/lib/workroom-runtime/self-delivery-project-composition.js.map +1 -1
- package/lib/workroom-runtime/self-delivery-project.d.ts +0 -1
- package/lib/workroom-runtime/self-delivery-project.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-fact-providers.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-fact-providers.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-internal-providers.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-internal-providers.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-policy.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-policy.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-production-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-production-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-acceptance-provider-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-acceptance-provider-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-accepted-source-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-accepted-source-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-assignment-authority-provider.d.ts +0 -1
- package/lib/workroom-runtime/workroom-assignment-authority-provider.js.map +1 -1
- package/lib/workroom-runtime/workroom-assignment-knowledge-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-assignment-knowledge-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-bot-identity.d.ts +0 -1
- package/lib/workroom-runtime/workroom-bot-identity.js.map +1 -1
- package/lib/workroom-runtime/workroom-capability-realization.d.ts +0 -1
- package/lib/workroom-runtime/workroom-capability-realization.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-authority-writer.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-authority-writer.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-bootstrap.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-bootstrap.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-root-provider.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-root-provider.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-governance-storage.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-governance-storage.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-console.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-console.js.map +1 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.d.ts +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.js.map +1 -1
- package/lib/workroom-runtime/workroom-database-models.d.ts +0 -1
- package/lib/workroom-runtime/workroom-database-models.js.map +1 -1
- package/lib/workroom-runtime/workroom-database-storage.d.ts +0 -1
- package/lib/workroom-runtime/workroom-database-storage.js.map +1 -1
- package/lib/workroom-runtime/workroom-delivery-gateway.d.ts +0 -1
- package/lib/workroom-runtime/workroom-delivery-gateway.js.map +1 -1
- package/lib/workroom-runtime/workroom-dynamic-planning-provider.d.ts +0 -1
- package/lib/workroom-runtime/workroom-dynamic-planning-provider.js.map +1 -1
- package/lib/workroom-runtime/workroom-dynamic-planning.d.ts +0 -1
- package/lib/workroom-runtime/workroom-dynamic-planning.js.map +1 -1
- package/lib/workroom-runtime/workroom-effect-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-effect-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-effect-production.d.ts +0 -1
- package/lib/workroom-runtime/workroom-effect-production.js.map +1 -1
- package/lib/workroom-runtime/workroom-effect-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-effect-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-governed-dispatch-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-governed-dispatch-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-host-port.d.ts +0 -1
- package/lib/workroom-runtime/workroom-host-port.js.map +1 -1
- package/lib/workroom-runtime/workroom-journal-payload-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-journal-payload-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-agent-core-adapter.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-agent-core-adapter.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-agent-loop.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-agent-loop.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-assignment-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-assignment-executor.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-executor.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-assignment-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-local-assignment-supply.d.ts +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-supply.js.map +1 -1
- package/lib/workroom-runtime/workroom-overlay-pack-promotion.d.ts +0 -1
- package/lib/workroom-runtime/workroom-overlay-pack-promotion.js.map +1 -1
- package/lib/workroom-runtime/workroom-payload-processor-recall.d.ts +0 -1
- package/lib/workroom-runtime/workroom-payload-processor-recall.js.map +1 -1
- package/lib/workroom-runtime/workroom-plan-gate-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-plan-gate-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-capacity.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-capacity.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-control-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-control-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-control-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-control-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-grant-assignment.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-grant-assignment.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-kernel-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-kernel-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-portfolio-sponsor.d.ts +0 -1
- package/lib/workroom-runtime/workroom-portfolio-sponsor.js.map +1 -1
- package/lib/workroom-runtime/workroom-preemption-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-preemption-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-priority-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-priority-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-profile-authority-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-profile-authority-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-profile-authority-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-profile-authority-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-projection-outbound.d.ts +0 -1
- package/lib/workroom-runtime/workroom-projection-outbound.js.map +1 -1
- package/lib/workroom-runtime/workroom-projection-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-projection-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-remote-assignment-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-remote-assignment-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-remote-callback-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-remote-callback-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-remote-executor.d.ts +0 -1
- package/lib/workroom-runtime/workroom-remote-executor.js.map +1 -1
- package/lib/workroom-runtime/workroom-reviewer-authority-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-reviewer-authority-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-risk-acceptance-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-risk-acceptance-runtime.js.map +1 -1
- package/lib/workroom-runtime/workroom-run-profile-pin-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-run-profile-pin-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-route-registry.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-route-registry.js.map +1 -1
- package/lib/workroom-runtime/workroom-scheduler-runtime.d.ts +0 -1
- package/lib/workroom-runtime/workroom-scheduler-runtime.js.map +1 -1
- package/package.json +8 -8
- package/lib/data-governance/canonical-value.d.ts.map +0 -1
- package/lib/data-governance/data-governance.d.ts.map +0 -1
- package/lib/data-governance/database-payload-lifecycle-repository.d.ts.map +0 -1
- package/lib/data-governance/disclosure-authority.d.ts.map +0 -1
- package/lib/data-governance/disclosure-manifest.d.ts.map +0 -1
- package/lib/data-governance/durable-file-store.d.ts.map +0 -1
- package/lib/data-governance/encrypted-database-payload-vault.d.ts.map +0 -1
- package/lib/data-governance/encrypted-file-payload-vault.d.ts.map +0 -1
- package/lib/data-governance/file-payload-lifecycle-repository.d.ts.map +0 -1
- package/lib/data-governance/governance-authority-repository.d.ts.map +0 -1
- package/lib/data-governance/governed-payload-write-saga.d.ts.map +0 -1
- package/lib/data-governance/payload-hold-overdue-projection.d.ts.map +0 -1
- package/lib/data-governance/payload-lifecycle.d.ts.map +0 -1
- package/lib/data-governance/payload-vault-storage-handoff.d.ts.map +0 -1
- package/lib/data-governance.d.ts.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/portfolio/capacity-control-outbox.d.ts.map +0 -1
- package/lib/portfolio/database-capacity-control-outbox.d.ts.map +0 -1
- package/lib/portfolio/file-capacity-control-outbox.d.ts.map +0 -1
- package/lib/portfolio/file-portfolio-journal.d.ts.map +0 -1
- package/lib/portfolio/portfolio-admission.d.ts.map +0 -1
- package/lib/portfolio/portfolio-journal.d.ts.map +0 -1
- package/lib/portfolio/resource-bundle.d.ts.map +0 -1
- package/lib/portfolio/sponsor-projection.d.ts.map +0 -1
- package/lib/portfolio.d.ts.map +0 -1
- package/lib/remote.d.ts.map +0 -1
- package/lib/room/database-room-task-journal.d.ts.map +0 -1
- package/lib/room/index.d.ts.map +0 -1
- package/lib/room/room-bus.d.ts.map +0 -1
- package/lib/room/room-definition.d.ts.map +0 -1
- package/lib/room/room-event-sequencer.d.ts.map +0 -1
- package/lib/room/room-guards.d.ts.map +0 -1
- package/lib/room/room-membership.d.ts.map +0 -1
- package/lib/room/room-registry.d.ts.map +0 -1
- package/lib/room/room-router.d.ts.map +0 -1
- package/lib/room/room-send-limiter.d.ts.map +0 -1
- package/lib/room/room-task-authorizer.d.ts.map +0 -1
- package/lib/room/room-task-journal.d.ts.map +0 -1
- package/lib/room/room-task-service.d.ts.map +0 -1
- package/lib/room/room-task.d.ts.map +0 -1
- package/lib/room/validate-room.d.ts.map +0 -1
- package/lib/scheduler.d.ts.map +0 -1
- package/lib/workroom/acceptance-control.d.ts.map +0 -1
- package/lib/workroom/acceptance-policy.d.ts.map +0 -1
- package/lib/workroom/accepted-source-memory-application.d.ts.map +0 -1
- package/lib/workroom/accepted-source-projector.d.ts.map +0 -1
- package/lib/workroom/assignment-authority-grant-application.d.ts.map +0 -1
- package/lib/workroom/assignment-authority-grant-repository.d.ts.map +0 -1
- package/lib/workroom/assignment-authority.d.ts.map +0 -1
- package/lib/workroom/assignment-executor.d.ts.map +0 -1
- package/lib/workroom/assignment-observation-ingress.d.ts.map +0 -1
- package/lib/workroom/canonical-value.d.ts.map +0 -1
- package/lib/workroom/catalog-definition.d.ts.map +0 -1
- package/lib/workroom/catalog.d.ts.map +0 -1
- package/lib/workroom/coding-assignment-executor.d.ts.map +0 -1
- package/lib/workroom/coding-git-objects.d.ts.map +0 -1
- package/lib/workroom/database-project-knowledge-journal.d.ts.map +0 -1
- package/lib/workroom/durable-file-store.d.ts.map +0 -1
- package/lib/workroom/dynamic-workflow-planner.d.ts.map +0 -1
- package/lib/workroom/effect-blocker-repository.d.ts.map +0 -1
- package/lib/workroom/effect-ledger.d.ts.map +0 -1
- package/lib/workroom/file-accepted-source-memory-repository.d.ts.map +0 -1
- package/lib/workroom/file-coding-execution-store.d.ts.map +0 -1
- package/lib/workroom/file-effect-ledger.d.ts.map +0 -1
- package/lib/workroom/file-human-ingress-application.d.ts.map +0 -1
- package/lib/workroom/file-human-ingress.d.ts.map +0 -1
- package/lib/workroom/file-interaction-space-binding-repository.d.ts.map +0 -1
- package/lib/workroom/file-profile-journal.d.ts.map +0 -1
- package/lib/workroom/git-workspace-gateway.d.ts.map +0 -1
- package/lib/workroom/github-workspace-transport.d.ts.map +0 -1
- package/lib/workroom/governed-dispatch-reasons.d.ts.map +0 -1
- package/lib/workroom/human-ingress-application.d.ts.map +0 -1
- package/lib/workroom/human-ingress-orchestrator.d.ts.map +0 -1
- package/lib/workroom/human-ingress-source-reader.d.ts.map +0 -1
- package/lib/workroom/human-ingress.d.ts.map +0 -1
- package/lib/workroom/interaction-space-binding-service.d.ts.map +0 -1
- package/lib/workroom/interaction-space-router.d.ts.map +0 -1
- package/lib/workroom/journal/activatable-journal.d.ts.map +0 -1
- package/lib/workroom/journal/contracts.d.ts.map +0 -1
- package/lib/workroom/journal/database-journal.d.ts.map +0 -1
- package/lib/workroom/journal/event-codec.d.ts.map +0 -1
- package/lib/workroom/journal/event-validation.d.ts.map +0 -1
- package/lib/workroom/journal/file-journal.d.ts.map +0 -1
- package/lib/workroom/journal/index.d.ts.map +0 -1
- package/lib/workroom/journal/legacy-payload-guard.d.ts.map +0 -1
- package/lib/workroom/journal/memory-journal.d.ts.map +0 -1
- package/lib/workroom/journal/payload-governance.d.ts.map +0 -1
- package/lib/workroom/journal/payload-reference.d.ts.map +0 -1
- package/lib/workroom/journal/stored-event-projection.d.ts.map +0 -1
- package/lib/workroom/journal-model.d.ts.map +0 -1
- package/lib/workroom/kernel-contracts.d.ts.map +0 -1
- package/lib/workroom/kernel-state.d.ts.map +0 -1
- package/lib/workroom/local-assignment-issuance.d.ts.map +0 -1
- package/lib/workroom/plan-approval-control.d.ts.map +0 -1
- package/lib/workroom/plan-revision.d.ts.map +0 -1
- package/lib/workroom/profile-compiler.d.ts.map +0 -1
- package/lib/workroom/profile-registry.d.ts.map +0 -1
- package/lib/workroom/project-knowledge-registry.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/contracts.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/delivery-worker.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/file-repository.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/index.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/memory-repository.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/projector.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/repository-state.d.ts.map +0 -1
- package/lib/workroom/projection-outbox/tracer.d.ts.map +0 -1
- package/lib/workroom/remote-assignment-dispatch-command.d.ts.map +0 -1
- package/lib/workroom/remote-assignment-issuance.d.ts.map +0 -1
- package/lib/workroom/remote-callback-application.d.ts.map +0 -1
- package/lib/workroom/remote-callback-gateway.d.ts.map +0 -1
- package/lib/workroom/remote-callback-inbox.d.ts.map +0 -1
- package/lib/workroom/remote-callback-reconciliation-worker.d.ts.map +0 -1
- package/lib/workroom/remote-dispatch-admission.d.ts.map +0 -1
- package/lib/workroom/remote-dispatch-outbox.d.ts.map +0 -1
- package/lib/workroom/remote-dispatch-scheduler.d.ts.map +0 -1
- package/lib/workroom/remote-dispatch-worker.d.ts.map +0 -1
- package/lib/workroom/remote-dispatch.d.ts.map +0 -1
- package/lib/workroom/remote-executor.d.ts.map +0 -1
- package/lib/workroom/role-capability-snapshot.d.ts.map +0 -1
- package/lib/workroom/runtime.d.ts.map +0 -1
- package/lib/workroom/scheduler-priority-control.d.ts.map +0 -1
- package/lib/workroom/software-delivery-plan.d.ts.map +0 -1
- package/lib/workroom/validate-catalog.d.ts.map +0 -1
- package/lib/workroom/workflow-plan-builder.d.ts.map +0 -1
- package/lib/workroom/workroom-assignment-knowledge-context.d.ts.map +0 -1
- package/lib/workroom/workroom-kernel.d.ts.map +0 -1
- package/lib/workroom/workroom-preemption.d.ts.map +0 -1
- package/lib/workroom/workroom-run-control.d.ts.map +0 -1
- package/lib/workroom/workroom-scheduler-application.d.ts.map +0 -1
- package/lib/workroom/workroom-scheduler.d.ts.map +0 -1
- package/lib/workroom/workroom-task-report-store.d.ts.map +0 -1
- package/lib/workroom-runtime/database-overlay-pack-promotion-repository.d.ts.map +0 -1
- package/lib/workroom-runtime/github-actions-delivery-provider.d.ts.map +0 -1
- package/lib/workroom-runtime/github-exact-merge-gateway.d.ts.map +0 -1
- package/lib/workroom-runtime/github-workroom-capability.d.ts.map +0 -1
- package/lib/workroom-runtime/self-delivery-project-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/self-delivery-project.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-fact-providers.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-internal-providers.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-policy.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-production-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-acceptance-provider-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-accepted-source-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-assignment-authority-grant-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-assignment-authority-provider.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-assignment-knowledge-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-bot-identity.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-capability-realization.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-authority-writer.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-bootstrap.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-root-provider.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-governance-storage.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-console.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-data-lifecycle-human-ingress.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-database-models.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-database-storage.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-delivery-gateway.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-dynamic-planning-provider.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-dynamic-planning.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-effect-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-effect-production.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-effect-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-governed-dispatch-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-host-port.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-journal-payload-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-agent-core-adapter.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-agent-loop.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-executor.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-local-assignment-supply.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-overlay-pack-promotion.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-payload-processor-recall.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-plan-gate-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-capacity.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-checkpoint-ack.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-control-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-control-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-grant-assignment.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-kernel-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-portfolio-sponsor.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-preemption-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-priority-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-profile-authority-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-profile-authority-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-projection-outbound.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-projection-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-remote-assignment-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-remote-callback-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-remote-executor.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-reviewer-authority-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-risk-acceptance-runtime.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-run-profile-pin-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-composition.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-contract.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-request-authority.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-portfolio-supply.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-route-registry.d.ts.map +0 -1
- package/lib/workroom-runtime/workroom-scheduler-runtime.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"room-task.js","sourceRoot":"","sources":["../../src/room/room-task.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"room-task.js","sourceRoot":"","sources":["../../src/room/room-task.ts"],"names":[],"mappings":"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","sourcesContent":["import { digestCanonicalWorkroomValue } from '../workroom/canonical-value.js';\nimport { ROOM_RESERVED_NAMES } from './room-definition.js';\n\n/**\n * Room Task: a small, replayable event-sourced state machine.\n *\n * Pure layer: no IO, no clock, no randomness (event ids are injected through `newId`, timestamps come\n * from the command). Authorization (is the actor a Room member, may the role hand off to that role)\n * is the caller's job; the machine only enforces the transition table and \"only the current assignee\n * may start / block / complete / handoff\".\n *\n * Handoff semantics: `task.handoff` changes the assignee to `to` and moves the Task back to `assigned`\n * (a task that was `in_progress` must be started again by the new assignee).\n *\n * `task.assigned` on an assigned / blocked Task is a lead-only reassignment: it checks neither `from` nor\n * handoffCount, so the caller's authorize hook MUST restrict it. Assigning to the current assignee is rejected.\n */\n\nexport type RoomTaskStatus = 'created' | 'assigned' | 'in_progress' | 'done' | 'blocked' | 'cancelled';\n\nexport const ROOM_TASK_STATUSES: readonly RoomTaskStatus[] = Object.freeze([\n 'created', 'assigned', 'in_progress', 'done', 'blocked', 'cancelled',\n]);\n\n/** Terminal statuses: no further event is accepted. */\nexport const ROOM_TASK_TERMINAL: readonly RoomTaskStatus[] = Object.freeze(['done', 'cancelled']);\n\nexport const ROOM_TASK_ID_PATTERN = /^[a-zA-Z0-9][a-zA-Z0-9._:-]{0,63}$/;\nexport const ROOM_TASK_RESULT_MAX_LENGTH = 8000;\nconst ACTOR_MAX = 128;\nconst TITLE_MAX = 200;\nconst TEXT_MAX = 2000;\nconst DESCRIPTION_MAX = 4000;\n\nexport type RoomTaskErrorCode =\n | 'invalid_input'\n | 'task_exists'\n | 'task_not_found'\n | 'task_terminal'\n | 'invalid_transition'\n | 'not_assignee';\n\nexport class RoomTaskTransitionError extends Error {\n constructor(readonly code: RoomTaskErrorCode, message: string) {\n super(message);\n this.name = 'RoomTaskTransitionError';\n }\n}\n\nexport class RoomTaskCommandConflictError extends Error {\n constructor(readonly commandId: string) {\n super(`Room Task command ${commandId} was already used with different content`);\n this.name = 'RoomTaskCommandConflictError';\n }\n}\n\nexport class RoomTaskReplayError extends Error {\n constructor(message: string) {\n super(`Room Task replay failed closed: ${message}`);\n this.name = 'RoomTaskReplayError';\n }\n}\n\ninterface RoomTaskEventBase {\n readonly version: 1;\n readonly roomId: string;\n /** Contiguous from 0 per Room. */\n readonly sequence: number;\n readonly eventId: string;\n /** Epoch milliseconds, supplied by the caller. */\n readonly at: number;\n readonly taskId: string;\n readonly commandId: string;\n readonly commandDigest: string;\n}\n\nexport type RoomTaskEvent = RoomTaskEventBase & (\n | { readonly type: 'task.created'; readonly title: string; readonly description?: string; readonly createdBy: string }\n | { readonly type: 'task.assigned'; readonly assignee: string; readonly by: string }\n | { readonly type: 'task.started'; readonly by: string }\n | { readonly type: 'task.blocked'; readonly by: string; readonly reason: string }\n | { readonly type: 'task.completed'; readonly by: string; readonly result: string }\n | { readonly type: 'task.cancelled'; readonly by: string; readonly reason?: string }\n | { readonly type: 'task.handoff'; readonly from: string; readonly to: string; readonly note?: string }\n);\n\ninterface RoomTaskCommandBase {\n /** Idempotency key. */\n readonly commandId: string;\n readonly taskId: string;\n readonly by: string;\n /** Epoch milliseconds. */\n readonly at: number;\n}\n\nexport type RoomTaskCommand = RoomTaskCommandBase & (\n | { readonly type: 'create'; readonly title: string; readonly description?: string; readonly assignee?: string }\n | { readonly type: 'assign'; readonly assignee: string }\n | { readonly type: 'start' }\n | { readonly type: 'block'; readonly reason: string }\n | { readonly type: 'complete'; readonly result: string }\n | { readonly type: 'cancel'; readonly reason?: string }\n | { readonly type: 'handoff'; readonly to: string; readonly note?: string }\n);\n\nexport interface RoomTaskView {\n readonly id: string;\n readonly title: string;\n readonly description?: string;\n readonly status: RoomTaskStatus;\n readonly assignee?: string;\n readonly createdBy: string;\n readonly result?: string;\n readonly blockedReason?: string;\n readonly handoffCount: number;\n}\n\nexport interface RoomTaskState {\n readonly roomId: string;\n /** Sequence of the last applied event; -1 when the stream is empty. */\n readonly sequence: number;\n readonly tasks: Readonly<Record<string, RoomTaskView>>;\n}\n\ntype MutableView = { -readonly [K in keyof RoomTaskView]: RoomTaskView[K] };\ntype MutableTasks = Record<string, MutableView>;\n\nexport function emptyRoomTaskState(roomId: string): RoomTaskState {\n return Object.freeze({ roomId, sequence: -1, tasks: Object.freeze(Object.create(null)) as Record<string, RoomTaskView> });\n}\n\nexport function isRoomTaskTerminal(status: RoomTaskStatus): boolean {\n return ROOM_TASK_TERMINAL.includes(status);\n}\n\nexport function findRoomTask(state: RoomTaskState, taskId: string): RoomTaskView | undefined {\n return Object.hasOwn(state.tasks, taskId) ? state.tasks[taskId] : undefined;\n}\n\n// ---------------------------------------------------------------- validation helpers\n\nconst fail = (code: RoomTaskErrorCode, message: string): never => {\n throw new RoomTaskTransitionError(code, message);\n};\n\nfunction text(value: unknown, label: string, max: number): string {\n if (typeof value !== 'string' || !value.trim() || value !== value.trim() || value.length > max) {\n return fail('invalid_input', `${label} must be a non-empty trimmed string of at most ${max} characters`);\n }\n return value;\n}\n\nfunction optionalText(value: unknown, label: string, max: number): string | undefined {\n return value === undefined ? undefined : text(value, label, max);\n}\n\nfunction taskIdOf(value: unknown): string {\n if (typeof value !== 'string' || ROOM_RESERVED_NAMES.includes(value) || !ROOM_TASK_ID_PATTERN.test(value)) {\n return fail('invalid_input', `taskId ${JSON.stringify(value)} is invalid`);\n }\n return value;\n}\n\nfunction timestamp(value: unknown): number {\n if (!Number.isSafeInteger(value) || (value as number) < 0) return fail('invalid_input', 'at must be a non-negative integer');\n return value as number;\n}\n\n// ---------------------------------------------------------------- evolve (single source of transition rules)\n\n/** Validates the event against the transition table and mutates `tasks`. Throws RoomTaskTransitionError. */\nfunction step(tasks: MutableTasks, event: RoomTaskEvent): void {\n const taskId = taskIdOf(event.taskId);\n const existing = Object.hasOwn(tasks, taskId) ? tasks[taskId] : undefined;\n if (event.type === 'task.created') {\n if (existing) fail('task_exists', `task ${taskId} already exists`);\n const view: MutableView = {\n id: taskId,\n title: text(event.title, 'title', TITLE_MAX),\n status: 'created',\n createdBy: text(event.createdBy, 'createdBy', ACTOR_MAX),\n handoffCount: 0,\n };\n const description = optionalText(event.description, 'description', DESCRIPTION_MAX);\n if (description !== undefined) view.description = description;\n tasks[taskId] = view;\n return;\n }\n if (!existing) return fail('task_not_found', `task ${taskId} does not exist`);\n if (isRoomTaskTerminal(existing.status)) fail('task_terminal', `task ${taskId} is ${existing.status}`);\n const requireAssignee = (by: unknown): string => {\n const actor = text(by, 'actor', ACTOR_MAX);\n if (actor !== existing.assignee) fail('not_assignee', `${actor} is not the assignee of task ${taskId}`);\n return actor;\n };\n const requireStatus = (...allowed: RoomTaskStatus[]): void => {\n if (!allowed.includes(existing.status)) {\n fail('invalid_transition', `${event.type} is not allowed while task ${taskId} is ${existing.status}`);\n }\n };\n switch (event.type) {\n case 'task.assigned':\n requireStatus('created', 'assigned', 'blocked');\n text(event.by, 'by', ACTOR_MAX);\n {\n const assignee = text(event.assignee, 'assignee', ACTOR_MAX);\n if (existing.status === 'assigned' && existing.assignee === assignee) {\n fail('invalid_input', `task is already assigned to ${assignee}; use handoff to change the assignee`);\n }\n existing.assignee = assignee;\n }\n existing.status = 'assigned';\n delete existing.blockedReason;\n return;\n case 'task.started':\n requireStatus('assigned', 'blocked');\n requireAssignee(event.by);\n existing.status = 'in_progress';\n delete existing.blockedReason;\n return;\n case 'task.blocked':\n requireStatus('in_progress');\n requireAssignee(event.by);\n existing.blockedReason = text(event.reason, 'reason', TEXT_MAX);\n existing.status = 'blocked';\n return;\n case 'task.completed':\n requireStatus('in_progress');\n requireAssignee(event.by);\n existing.result = text(event.result, 'result', ROOM_TASK_RESULT_MAX_LENGTH);\n existing.status = 'done';\n return;\n case 'task.cancelled':\n text(event.by, 'by', ACTOR_MAX);\n optionalText(event.reason, 'reason', TEXT_MAX);\n existing.status = 'cancelled';\n return;\n case 'task.handoff': {\n requireStatus('assigned', 'in_progress', 'blocked');\n requireAssignee(event.from);\n const to = text(event.to, 'to', ACTOR_MAX);\n if (to === event.from) fail('invalid_input', 'cannot hand off a task to its current assignee');\n optionalText(event.note, 'note', TEXT_MAX);\n existing.assignee = to;\n existing.status = 'assigned';\n existing.handoffCount += 1;\n delete existing.blockedReason;\n return;\n }\n default:\n return fail('invalid_input', `unknown event type ${String((event as { type?: unknown }).type)}`);\n }\n}\n\nfunction freezeTasks(tasks: MutableTasks): Readonly<Record<string, RoomTaskView>> {\n for (const view of Object.values(tasks)) Object.freeze(view);\n return Object.freeze(tasks);\n}\n\nfunction cloneTasks(tasks: Readonly<Record<string, RoomTaskView>>): MutableTasks {\n const copy = Object.create(null) as MutableTasks;\n for (const [id, view] of Object.entries(tasks)) copy[id] = { ...view };\n return copy;\n}\n\n/** Applies one event to an immutable state. Re-validates the transition (never trusts the event). */\nexport function evolveRoomTasks(state: RoomTaskState, event: RoomTaskEvent): RoomTaskState {\n if (event.roomId !== state.roomId) fail('invalid_input', 'event roomId does not match state');\n if (event.sequence !== state.sequence + 1) fail('invalid_input', `event sequence ${event.sequence} is not ${state.sequence + 1}`);\n const tasks = cloneTasks(state.tasks);\n step(tasks, event);\n return Object.freeze({ roomId: state.roomId, sequence: event.sequence, tasks: freezeTasks(tasks) });\n}\n\nconst EVENT_FIELDS: Record<string, readonly string[]> = {\n 'task.created': ['title', 'description', 'createdBy'],\n 'task.assigned': ['assignee', 'by'],\n 'task.started': ['by'],\n 'task.blocked': ['by', 'reason'],\n 'task.completed': ['by', 'result'],\n 'task.cancelled': ['by', 'reason'],\n 'task.handoff': ['from', 'to', 'note'],\n};\nconst BASE_FIELDS = ['version', 'roomId', 'sequence', 'eventId', 'at', 'taskId', 'commandId', 'commandDigest', 'type'];\n\n/** Rebuilds the state from stored events; any violation throws RoomTaskReplayError (fail closed). */\nexport function replayRoomTasks(roomId: string, events: readonly RoomTaskEvent[]): RoomTaskState {\n const tasks = Object.create(null) as MutableTasks;\n const eventIds = new Set<string>();\n const digests = new Map<string, string>();\n let sequence = -1;\n try {\n if (typeof roomId !== 'string' || !roomId) throw new RoomTaskReplayError('roomId is invalid');\n for (const event of events) {\n if (!event || typeof event !== 'object') throw new RoomTaskReplayError('event is not an object');\n if (event.version !== 1) throw new RoomTaskReplayError(`unsupported event version ${String(event.version)}`);\n if (event.roomId !== roomId) throw new RoomTaskReplayError(`event belongs to room ${String(event.roomId)}`);\n if (event.sequence !== sequence + 1) {\n throw new RoomTaskReplayError(`sequence ${String(event.sequence)} found where ${sequence + 1} was expected`);\n }\n const allowed = EVENT_FIELDS[event.type];\n if (!allowed) throw new RoomTaskReplayError(`unknown event type ${String(event.type)}`);\n for (const key of Object.keys(event)) {\n if (!BASE_FIELDS.includes(key) && !allowed.includes(key)) throw new RoomTaskReplayError(`unexpected field ${key}`);\n }\n text(event.eventId, 'eventId', 256);\n text(event.commandId, 'commandId', 256);\n text(event.commandDigest, 'commandDigest', 256);\n timestamp(event.at);\n if (eventIds.has(event.eventId)) throw new RoomTaskReplayError(`duplicate eventId ${event.eventId}`);\n eventIds.add(event.eventId);\n const known = digests.get(event.commandId);\n if (known !== undefined && known !== event.commandDigest) {\n throw new RoomTaskReplayError(`command ${event.commandId} has inconsistent digests`);\n }\n digests.set(event.commandId, event.commandDigest);\n step(tasks, event);\n sequence = event.sequence;\n }\n } catch (error) {\n if (error instanceof RoomTaskReplayError) throw error;\n throw new RoomTaskReplayError(error instanceof Error ? error.message : String(error));\n }\n return Object.freeze({ roomId, sequence, tasks: freezeTasks(tasks) });\n}\n\n// ---------------------------------------------------------------- decide\n\nfunction omitUndefined<T extends Record<string, unknown>>(value: T): T {\n const result: Record<string, unknown> = {};\n for (const [key, item] of Object.entries(value)) if (item !== undefined) result[key] = item;\n return result as T;\n}\n\n/** Digest of the command content, excluding the idempotency key and the (retry-variant) timestamp. */\nexport function digestRoomTaskCommand(command: RoomTaskCommand): string {\n const { commandId: _commandId, at: _at, ...content } = command as RoomTaskCommand & Record<string, unknown>;\n return digestCanonicalWorkroomValue(omitUndefined(content));\n}\n\nexport interface DecideRoomTaskOptions {\n /** Event id source; injected so this layer stays free of randomness. */\n readonly newId: () => string;\n}\n\n/**\n * Turns a command into events. Returns `[]` when the commandId was already applied with identical\n * content; throws RoomTaskCommandConflictError when it was applied with different content.\n */\nexport function decideRoomTask(\n state: RoomTaskState,\n history: readonly RoomTaskEvent[],\n command: RoomTaskCommand,\n options: DecideRoomTaskOptions,\n): readonly RoomTaskEvent[] {\n const commandId = text(command?.commandId, 'commandId', 256);\n const taskId = taskIdOf(command.taskId);\n const by = text(command.by, 'by', ACTOR_MAX);\n const at = timestamp(command.at);\n const digest = digestRoomTaskCommand(command);\n const prior = history.find(event => event.commandId === commandId);\n if (prior) {\n if (prior.commandDigest !== digest) throw new RoomTaskCommandConflictError(commandId);\n return Object.freeze([]);\n }\n\n const drafts: Array<Record<string, unknown> & { type: RoomTaskEvent['type'] }> = [];\n switch (command.type) {\n case 'create':\n drafts.push(omitUndefined({ type: 'task.created', title: command.title, description: command.description, createdBy: by }));\n if (command.assignee !== undefined) drafts.push({ type: 'task.assigned', assignee: command.assignee, by });\n break;\n case 'assign':\n drafts.push({ type: 'task.assigned', assignee: command.assignee, by });\n break;\n case 'start':\n drafts.push({ type: 'task.started', by });\n break;\n case 'block':\n drafts.push({ type: 'task.blocked', by, reason: command.reason });\n break;\n case 'complete':\n drafts.push({ type: 'task.completed', by, result: command.result });\n break;\n case 'cancel':\n drafts.push(omitUndefined({ type: 'task.cancelled', by, reason: command.reason }));\n break;\n case 'handoff':\n drafts.push(omitUndefined({ type: 'task.handoff', from: by, to: command.to, note: command.note }));\n break;\n default:\n return fail('invalid_input', `unknown command type ${String((command as { type?: unknown }).type)}`);\n }\n\n const events: RoomTaskEvent[] = [];\n let working = state;\n for (const draft of drafts) {\n const event = Object.freeze({\n version: 1 as const,\n roomId: state.roomId,\n sequence: working.sequence + 1,\n eventId: options.newId(),\n at,\n taskId,\n commandId,\n commandDigest: digest,\n ...draft,\n }) as RoomTaskEvent;\n working = evolveRoomTasks(working, event);\n events.push(event);\n }\n return Object.freeze(events);\n}\n"]}
|
|
@@ -12,4 +12,3 @@ export interface RoomValidationContext {
|
|
|
12
12
|
export declare function collectRoomDefinitionIssues(raw: unknown, ctx?: RoomValidationContext): string[];
|
|
13
13
|
/** Validate (fail-closed) and return a deep-frozen copy; input is never modified. */
|
|
14
14
|
export declare function validateRoomDefinitions(raw: unknown, ctx?: RoomValidationContext): Readonly<Record<string, RoomDefinition>>;
|
|
15
|
-
//# sourceMappingURL=validate-room.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate-room.js","sourceRoot":"","sources":["../../src/room/validate-room.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validate-room.js","sourceRoot":"","sources":["../../src/room/validate-room.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n ROOM_ALIAS_PATTERN,\n ROOM_CONVERSATION_KINDS,\n ROOM_ID_PATTERN,\n ROOM_MAX_MEMBERS,\n ROOM_RESERVED_NAMES,\n ROOM_ROLE_NAME_PATTERN,\n type RoomDefinition,\n} from './room-definition.js';\n\nexport class RoomDefinitionError extends Error {\n readonly issues: readonly string[];\n constructor(issues: readonly string[]) {\n super(`Invalid room definitions:\\n${issues.map((i) => ` - ${i}`).join('\\n')}`);\n this.name = 'RoomDefinitionError';\n this.issues = Object.freeze([...issues]);\n }\n}\n\nexport interface RoomValidationContext {\n agentNames?: readonly string[];\n /** Known `adapter:endpoint` keys. */\n endpointKeys?: ReadonlySet<string>;\n}\n\nconst ROOM_FIELDS = ['name', 'description', 'enabled', 'conversation', 'roles', 'members', 'coordinator'];\nconst CONVERSATION_FIELDS = ['adapter', 'endpoint', 'kind', 'id'];\nconst ROLE_FIELDS = ['description', 'prompt', 'tools', 'accepts', 'handoffTo'];\nconst MEMBER_FIELDS = ['agent', 'role', 'botEndpoint', 'aliases'];\nconst BOT_FIELDS = ['adapter', 'endpoint'];\n\nfunction isPlainObject(v: unknown): v is Record<string, unknown> {\n if (typeof v !== 'object' || v === null || Array.isArray(v)) return false;\n const proto = Object.getPrototypeOf(v);\n return proto === Object.prototype || proto === null;\n}\n\nfunction isCleanString(v: unknown): v is string {\n return typeof v === 'string' && v.length > 0 && v === v.trim();\n}\n\nfunction own(obj: Record<string, unknown>, key: string): unknown {\n return Object.hasOwn(obj, key) ? obj[key] : undefined;\n}\n\nfunction checkUnknown(obj: Record<string, unknown>, allowed: readonly string[], path: string, issues: string[]): void {\n for (const key of Object.keys(obj)) {\n if (!allowed.includes(key)) issues.push(`${path}: unknown field \"${key}\"`);\n }\n}\n\nfunction checkCleanString(obj: Record<string, unknown>, key: string, path: string, issues: string[]): string | undefined {\n const v = own(obj, key);\n if (!isCleanString(v)) {\n issues.push(`${path}.${key}: must be a non-empty string without surrounding whitespace`);\n return undefined;\n }\n return v;\n}\n\nfunction checkStringList(obj: Record<string, unknown>, key: string, path: string, issues: string[]): string[] | undefined {\n const v = own(obj, key);\n if (v === undefined) return undefined;\n const p = `${path}.${key}`;\n if (!Array.isArray(v)) {\n issues.push(`${p}: must be an array of strings`);\n return undefined;\n }\n const seen = new Set<string>();\n const out: string[] = [];\n v.forEach((item, i) => {\n if (!isCleanString(item)) {\n issues.push(`${p}.${i}: must be a non-empty string without surrounding whitespace`);\n return;\n }\n if (seen.has(item)) issues.push(`${p}.${i}: duplicate \"${item}\"`);\n seen.add(item);\n out.push(item);\n });\n return out;\n}\n\n/** Single source of truth for all rules. Pure; never throws. */\nexport function collectRoomDefinitionIssues(raw: unknown, ctx: RoomValidationContext = {}): string[] {\n const issues: string[] = [];\n if (raw === undefined || raw === null) return issues;\n if (!isPlainObject(raw)) {\n issues.push('rooms: must be an object keyed by room id');\n return issues;\n }\n const agentNames = ctx.agentNames ? new Set(ctx.agentNames) : undefined;\n const conversationOwners = new Map<string, string>();\n\n for (const [roomId, room] of Object.entries(raw)) {\n const rp = `rooms.${roomId}`;\n if (ROOM_RESERVED_NAMES.includes(roomId) || !ROOM_ID_PATTERN.test(roomId)) {\n issues.push(`${rp}: invalid room id \"${roomId}\"`);\n }\n if (!isPlainObject(room)) {\n issues.push(`${rp}: must be an object`);\n continue;\n }\n checkUnknown(room, ROOM_FIELDS, rp, issues);\n\n const name = own(room, 'name');\n if (typeof name !== 'string' || name.trim() === '') issues.push(`${rp}.name: must be a non-empty string`);\n const description = own(room, 'description');\n if (description !== undefined && typeof description !== 'string') issues.push(`${rp}.description: must be a string`);\n const enabledRaw = own(room, 'enabled');\n if (enabledRaw !== undefined && typeof enabledRaw !== 'boolean') issues.push(`${rp}.enabled: must be a boolean`);\n const enabled = enabledRaw !== false;\n\n // conversation\n let conversationKey: string | undefined;\n let convAdapter: string | undefined;\n const conv = own(room, 'conversation');\n if (!isPlainObject(conv)) {\n issues.push(`${rp}.conversation: required object`);\n } else {\n const cp = `${rp}.conversation`;\n checkUnknown(conv, CONVERSATION_FIELDS, cp, issues);\n const adapter = checkCleanString(conv, 'adapter', cp, issues);\n convAdapter = adapter;\n const endpoint = checkCleanString(conv, 'endpoint', cp, issues);\n const id = checkCleanString(conv, 'id', cp, issues);\n const kind = own(conv, 'kind');\n const kindOk = typeof kind === 'string' && (ROOM_CONVERSATION_KINDS as readonly string[]).includes(kind);\n if (!kindOk) issues.push(`${cp}.kind: must be one of ${ROOM_CONVERSATION_KINDS.join(', ')}`);\n if (adapter && endpoint && ctx.endpointKeys && !ctx.endpointKeys.has(`${adapter}:${endpoint}`)) {\n issues.push(`${cp}.endpoint: unknown endpoint \"${adapter}:${endpoint}\"`);\n }\n if (adapter && id && kindOk) conversationKey = `${adapter}:${kind}:${id}`;\n }\n if (enabled && conversationKey) {\n const prev = conversationOwners.get(conversationKey);\n if (prev !== undefined) {\n issues.push(`${rp}.conversation: conversation \"${conversationKey}\" already owned by room \"${prev}\"`);\n } else {\n conversationOwners.set(conversationKey, roomId);\n }\n }\n\n // roles\n const roleNames = new Set<string>();\n const rolesRaw = own(room, 'roles');\n const roleEntries: [string, unknown][] = [];\n if (!isPlainObject(rolesRaw)) {\n issues.push(`${rp}.roles: required object with at least one role`);\n } else {\n const entries = Object.entries(rolesRaw);\n if (entries.length === 0) issues.push(`${rp}.roles: must define at least one role`);\n for (const [roleName, role] of entries) {\n const rlp = `${rp}.roles.${roleName}`;\n if (ROOM_RESERVED_NAMES.includes(roleName) || !ROOM_ROLE_NAME_PATTERN.test(roleName)) {\n issues.push(`${rlp}: invalid role name \"${roleName}\"`);\n } else {\n roleNames.add(roleName);\n }\n roleEntries.push([roleName, role]);\n }\n }\n for (const [roleName, role] of roleEntries) {\n const rlp = `${rp}.roles.${roleName}`;\n if (!isPlainObject(role)) {\n issues.push(`${rlp}: must be an object`);\n continue;\n }\n checkUnknown(role, ROLE_FIELDS, rlp, issues);\n const prompt = own(role, 'prompt');\n if (typeof prompt !== 'string' || prompt.trim() === '') issues.push(`${rlp}.prompt: must be a non-empty string`);\n const rd = own(role, 'description');\n if (rd !== undefined && typeof rd !== 'string') issues.push(`${rlp}.description: must be a string`);\n checkStringList(role, 'tools', rlp, issues);\n checkStringList(role, 'accepts', rlp, issues);\n const handoff = checkStringList(role, 'handoffTo', rlp, issues);\n handoff?.forEach((target, i) => {\n if (target === roleName) issues.push(`${rlp}.handoffTo.${i}: role must not hand off to itself`);\n else if (!roleNames.has(target)) issues.push(`${rlp}.handoffTo.${i}: unknown role \"${target}\"`);\n });\n }\n\n // members\n const memberAgents = new Set<string>();\n const agentLower = new Map<string, number>();\n const membersRaw = own(room, 'members');\n if (!Array.isArray(membersRaw)) {\n issues.push(`${rp}.members: required array`);\n } else {\n if (membersRaw.length === 0) issues.push(`${rp}.members: must contain at least one member`);\n if (membersRaw.length > ROOM_MAX_MEMBERS) {\n issues.push(`${rp}.members: at most ${ROOM_MAX_MEMBERS} members allowed`);\n }\n const botKeys = new Map<string, number>();\n const names = new Map<string, string>();\n // agent names take part in alias uniqueness; register them first\n membersRaw.forEach((member, i) => {\n if (isPlainObject(member)) {\n const agent = own(member, 'agent');\n if (isCleanString(agent) && !names.has(agent.toLowerCase())) names.set(agent.toLowerCase(), `${rp}.members.${i}.agent`);\n }\n });\n membersRaw.forEach((member, i) => {\n const mp = `${rp}.members.${i}`;\n if (!isPlainObject(member)) {\n issues.push(`${mp}: must be an object`);\n return;\n }\n checkUnknown(member, MEMBER_FIELDS, mp, issues);\n const agent = checkCleanString(member, 'agent', mp, issues);\n if (agent) {\n if (agentNames && !agentNames.has(agent)) issues.push(`${mp}.agent: unknown agent \"${agent}\"`);\n const lower = agent.toLowerCase();\n if (memberAgents.has(agent)) {\n issues.push(`${mp}.agent: duplicate agent \"${agent}\"`);\n } else if (agentLower.has(lower)) {\n issues.push(`${mp}.agent: agent \"${agent}\" conflicts case-insensitively with ${rp}.members.${agentLower.get(lower)}.agent`);\n }\n memberAgents.add(agent);\n if (!agentLower.has(lower)) agentLower.set(lower, i);\n }\n const role = checkCleanString(member, 'role', mp, issues);\n if (role && !roleNames.has(role)) issues.push(`${mp}.role: unknown role \"${role}\"`);\n\n const bot = own(member, 'botEndpoint');\n if (!isPlainObject(bot)) {\n issues.push(`${mp}.botEndpoint: required object`);\n } else {\n const bp = `${mp}.botEndpoint`;\n checkUnknown(bot, BOT_FIELDS, bp, issues);\n const adapter = checkCleanString(bot, 'adapter', bp, issues);\n const endpoint = checkCleanString(bot, 'endpoint', bp, issues);\n if (adapter && convAdapter && adapter !== convAdapter) {\n issues.push(`${bp}.adapter: bot adapter \"${adapter}\" must match room conversation adapter \"${convAdapter}\"`);\n }\n if (adapter && endpoint) {\n const key = `${adapter}:${endpoint}`;\n if (ctx.endpointKeys && !ctx.endpointKeys.has(key)) {\n issues.push(`${bp}.endpoint: unknown endpoint \"${key}\"`);\n }\n const prev = botKeys.get(key);\n if (prev !== undefined) issues.push(`${bp}: bot endpoint \"${key}\" already used by member ${prev}`);\n else botKeys.set(key, i);\n }\n }\n const aliases = own(member, 'aliases');\n if (aliases !== undefined) {\n if (!Array.isArray(aliases)) issues.push(`${mp}.aliases: must be an array of strings`);\n else {\n aliases.forEach((alias, j) => {\n const ap = `${mp}.aliases.${j}`;\n if (typeof alias !== 'string' || !ROOM_ALIAS_PATTERN.test(alias)) {\n issues.push(`${ap}: invalid alias`);\n return;\n }\n const k = alias.toLowerCase();\n const prev = names.get(k);\n if (prev !== undefined) issues.push(`${ap}: alias \"${alias}\" conflicts with ${prev}`);\n else names.set(k, `${rp}.members.${i}.aliases.${j}`);\n });\n }\n }\n });\n }\n\n // coordinator\n const coordinator = own(room, 'coordinator');\n if (coordinator !== undefined) {\n if (!isCleanString(coordinator)) issues.push(`${rp}.coordinator: must be a non-empty string`);\n else if (!memberAgents.has(coordinator)) issues.push(`${rp}.coordinator: \"${coordinator}\" is not a member`);\n }\n }\n return issues;\n}\n\nfunction deepFreeze<T>(value: T): T {\n if (value !== null && typeof value === 'object' && !Object.isFrozen(value)) {\n Object.freeze(value);\n for (const v of Object.values(value as object)) deepFreeze(v);\n }\n return value;\n}\n\nfunction cloneValue(v: unknown): unknown {\n if (Array.isArray(v)) return v.map(cloneValue);\n if (isPlainObject(v)) {\n const out: Record<string, unknown> = {};\n for (const [k, val] of Object.entries(v)) out[k] = cloneValue(val);\n return out;\n }\n return v;\n}\n\n/** Validate (fail-closed) and return a deep-frozen copy; input is never modified. */\nexport function validateRoomDefinitions(\n raw: unknown,\n ctx: RoomValidationContext = {},\n): Readonly<Record<string, RoomDefinition>> {\n const issues = collectRoomDefinitionIssues(raw, ctx);\n if (issues.length > 0) throw new RoomDefinitionError(issues);\n const out: Record<string, RoomDefinition> = Object.create(null);\n if (raw === undefined || raw === null) return deepFreeze(out);\n for (const [id, room] of Object.entries(raw as Record<string, unknown>)) {\n const copy = cloneValue(room) as RoomDefinition;\n const roles: Record<string, RoomDefinition['roles'][string]> = Object.create(null);\n for (const [rn, rv] of Object.entries(copy.roles)) roles[rn] = rv;\n out[id] = { ...copy, name: copy.name.trim(), roles };\n }\n return deepFreeze(out);\n}\n"]}
|
package/lib/scheduler.d.ts
CHANGED
|
@@ -17,4 +17,3 @@ export * from './workroom-runtime/workroom-scheduler-portfolio-request-authority
|
|
|
17
17
|
export * from './workroom-runtime/workroom-scheduler-portfolio-supply.js';
|
|
18
18
|
export * from './workroom-runtime/workroom-scheduler-route-registry.js';
|
|
19
19
|
export * from './workroom-runtime/workroom-scheduler-runtime.js';
|
|
20
|
-
//# sourceMappingURL=scheduler.d.ts.map
|
package/lib/scheduler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mDAAmD,CAAC;AAClE,cAAc,mDAAmD,CAAC;AAClE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,sEAAsE,CAAC;AACrF,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yDAAyD,CAAC;AACxE,cAAc,kDAAkD,CAAC"}
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../src/scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,0CAA0C,CAAC;AACzD,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,mDAAmD,CAAC;AAClE,cAAc,mDAAmD,CAAC;AAClE,cAAc,gEAAgE,CAAC;AAC/E,cAAc,sEAAsE,CAAC;AACrF,cAAc,2DAA2D,CAAC;AAC1E,cAAc,yDAAyD,CAAC;AACxE,cAAc,kDAAkD,CAAC","sourcesContent":["/**\n * Workroom scheduler / preemption / priority authority.\n *\n * FROZEN: moved out of the package root entry (C4b). The default (legacy Kernel)\n * assembly path in `@zhin.js/cli` still creates these modules; they are only\n * not part of the root exports. The new Room core does not depend on them.\n * New code must not depend on it.\n */\nexport * from './workroom/scheduler-priority-control.js';\nexport * from './workroom/workroom-scheduler.js';\nexport * from './workroom/workroom-preemption.js';\nexport * from './workroom/workroom-scheduler-application.js';\nexport * from './workroom-runtime/workroom-preemption-runtime.js';\nexport * from './workroom-runtime/workroom-priority-authority.js';\nexport * from './workroom-runtime/workroom-scheduler-portfolio-composition.js';\nexport * from './workroom-runtime/workroom-scheduler-portfolio-request-authority.js';\nexport * from './workroom-runtime/workroom-scheduler-portfolio-supply.js';\nexport * from './workroom-runtime/workroom-scheduler-route-registry.js';\nexport * from './workroom-runtime/workroom-scheduler-runtime.js';\n"]}
|
|
@@ -74,4 +74,3 @@ export declare function assertWaitBinding(state: WorkroomRunState, wait: Workroo
|
|
|
74
74
|
export declare function assertReviewerVerdictBindings(decision: WorkroomAcceptanceDecision, value: unknown): asserts value is ReviewerVerdict;
|
|
75
75
|
export declare function reviewerVerdictRequiresRework(verdict: ReviewerVerdict): boolean;
|
|
76
76
|
export {};
|
|
77
|
-
//# sourceMappingURL=acceptance-control.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptance-control.js","sourceRoot":"","sources":["../../src/workroom/acceptance-control.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acceptance-control.js","sourceRoot":"","sources":["../../src/workroom/acceptance-control.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,8BAA8B,EAC9B,2BAA2B,GAI5B,MAAM,wBAAwB,CAAC;AAqGhC,MAAM,UAAU,mBAAmB,CACjC,KAAuB,EACvB,KAAmC,EACnC,KAAqC;IAErC,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/E,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,iBAAiB,CACrC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,KAAK,CAAC,aAAa,CAC7G,CAAC;IACF,IAAI,UAAU,CAAC,mBAAmB,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,kBAAkB,EAAE;YAC9C,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,YAAY,EAAE,UAAU,CAAC,EAAE;YAC3B,mBAAmB,EAAE,KAAK,CAAC,WAAW;YACtC,YAAY,EAAE,aAAa,CAAC,YAAY;YACxC,aAAa;SACd,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAuB,EACvB,KAAqC,EACrC,KAAqC;IAErC,MAAM,UAAU,GAAG,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAClF,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrC,MAAM,aAAa,GAAG,iBAAiB,CACrC,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,CAAC,aAAa,CAC9G,CAAC;IACF,IAAI,UAAU,CAAC,mBAAmB,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACjD,6BAA6B,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAEzD,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,KAAK,CAAC,2BAA2B,EAAE;QACtD,OAAO,EAAE,UAAU,CAAC,OAAO;QAC3B,YAAY,EAAE,UAAU,CAAC,EAAE;QAC3B,mBAAmB,EAAE,KAAK,CAAC,WAAW;QACtC,YAAY,EAAE,aAAa,CAAC,YAAY;QACxC,aAAa;QACb,OAAO,EAAE,6BAA6B,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ;QACrE,OAAO;KACR,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,6BAA6B,CAAC,OAAO,CAAC,CAAC;IAC9D,IAAI,cAAc,EAAE,CAAC;QACnB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,uBAAuB,EAAE;gBACjE,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,qBAAqB,CAAC,OAAO,CAAC;gBAChE,UAAU;aACX,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,UAAU,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,2BAA2B,CAAC;YACzC,QAAQ,EAAE,UAAU;YACpB,cAAc,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC;YAClC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC;YACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;YAC1C,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE;SAC1E,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,eAAe,EAAE;gBACzD,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,SAAS;gBACzC,MAAM;aACP,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,UAAU,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,IAAI,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,WAAW,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;IAC1E,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,EAAE,KAAK,CAAC,qBAAqB,EAAE;YAC/D,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,gDAAgD;YAC7E,IAAI,EAAE,iBAAiB,CAAC;gBACtB,EAAE,EAAE,MAAM;gBACV,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,YAAY,EAAE,UAAU,CAAC,YAAY;gBACrC,aAAa,EAAE,UAAU,CAAC,SAAS,CAAC,IAAI;gBACxC,QAAQ,EAAE,UAAU,CAAC,cAAc,CAAC,IAAI;gBACxC,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,EAAE;gBAClC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM;gBAClC,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,MAAM,EAAE,MAAM;gBACd,UAAU;gBACV,oBAAoB,EAAE,UAAU,CAAC,EAAE;aACpC,CAAC;SACH,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAAuB,EACvB,KAAyC,EACzC,KAAqC;IAErC,MAAM,IAAI,GAAG,yBAAyB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5D,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/B,MAAM,aAAa,GAAG,iBAAiB,CACrC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAClG,CAAC;IACF,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IACpE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,KAAK,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7G,MAAM,IAAI,KAAK,CAAC,+BAA+B,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,aAAa,GAAG,KAAK,CAAC,sBAAsB,EAAE;QAClD,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,IAAI,CAAC,EAAE;QACf,kBAAkB,EAAE,KAAK,CAAC,WAAW;QACrC,YAAY,EAAE,aAAa,CAAC,YAAY;QACxC,aAAa;QACb,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM;QACN,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,oBAAoB;YACxC,CAAC,CAAC,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,oBAAoB,CAAC;YACzD,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtF,MAAM,MAAM,GAAG,2BAA2B,CAAC;YACzC,QAAQ,EAAE,UAAU;YACpB,cAAc,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC;YAClC,kBAAkB,EAAE,KAAK,CAAC,QAAQ,GAAG,CAAC;YACtC,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,IAAI,UAAU,CAAC,SAAS,CAAC,QAAQ;YACpF,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,IAAI,EAAE;YACzD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACb,QAAQ,EAAE;oBACR,YAAY,EAAE,QAAQ,CAAC,EAAE;oBACzB,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;iBAChF;aACF,CAAC,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE;SAC7D,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,eAAe,EAAE;gBAC1D,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,SAAS;gBACzC,MAAM;aACP,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,gBAAgB,EAAE;gBAC3D,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM;aACP,CAAC,CAAC,CAAC,CAAC;IACP,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,KAAK,CAAC,uBAAuB,EAAE;YAClE,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM;YACN,UAAU;SACX,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,iBAAiB,CACxB,KAAuB,EACvB,OAAe,EACf,QAAgB,EAChB,WAAmB,EACnB,IAAmC,EACnC,MAAuC,EACvC,QAAiD;IAEjD,MAAM,QAAQ,GAAG;QACf,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK;QACzE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,CAAC,QAAQ;KAC3C,CAAC;IACX,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAA8B,EAAE,CAAC;QACrE,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,GAAG,EAAE,CAAC,CAAC;IACvG,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;IACzH,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,QAAQ;QACX,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,WAAW,CAAC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC;KACjE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAAuB,EACvB,IAAgE;IAEhE,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,qBAAqB,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,IAAI,CAAC,aAAa,KAAK,UAAU,CAAC,SAAS,CAAC,IAAI;WAC/C,IAAI,CAAC,UAAU,KAAK,UAAU,CAAC,QAAQ,CAAC,EAAE;WAC1C,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACpG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,qBAAqB;WACrD,UAAU,CAAC,SAAS,CAAC,oBAAoB,KAAK,QAAQ,CAAC,EAAE;WACzD,UAAU,CAAC,SAAS,CAAC,mBAAmB,KAAK,QAAQ,CAAC,KAAK;WAC3D,UAAU,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,YAAY;WACjD,UAAU,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,CAAC,aAAa;WACpD,UAAU,CAAC,SAAS,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS;WACrD,UAAU,CAAC,SAAS,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC;QACvD,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,kBAAkB;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAChG,8BAA8B,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;IAC7E,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAuB,EACvB,EAAU,EACV,QAA8D;IAE9D,MAAM,UAAU,GAAG,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,+BAA+B,EAAE,WAAW,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,2BAA2B,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACnH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAuB,EAAE,EAAU;IACpE,MAAM,IAAI,GAAG,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IACpC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,EAAE,YAAY,CAAC,CAAC;IAC1F,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,IAAI,IAAI,CAAC,oBAAoB,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACrG,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAuB,EAAE,EAAU;IAChE,MAAM,QAAQ,GAAG,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACpH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAyC;IAC7E,MAAM,KAAK,GAAG,QAAQ,CAAC,OAA+C,CAAC;IACvE,IAAI,CAAC,KAAK;WACL,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;WACvC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;WAC9B,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC;WACtC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC;WACtC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,KAAwB,CAAC;AAClC,CAAC;AAED,SAAS,WAAW,CAAC,KAAuB,EAAE,GAAW;IACvD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAgE;IAEhE,IAAI,CAAC,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IACpG,OAAO,IAAI,CAAC,UAAU,CAAC;AACzB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,QAAoC,EACpC,KAAc;IAEd,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,KAAK,CAAC;IACtB,IAAI,OAAO,CAAC,aAAa,KAAK,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC5H,cAAc,CACZ,CAAC,GAAG,OAAO,CAAC,gBAAgB,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,EAC1D,QAAQ,CAAC,SAAS,CAAC,QAAQ,EAC3B,QAAQ,CACT,CAAC;IACF,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,IAAI,SAAS,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzE,MAAM,IAAI,KAAK,CAAC,oBAAoB,SAAS,CAAC,WAAW,oBAAoB,CAAC,CAAC;QACjF,CAAC;QACD,gBAAgB,CAAC,SAAS,CAAC,YAAY,EAAE,aAAa,SAAS,CAAC,WAAW,WAAW,CAAC,CAAC;IAC1F,CAAC;IACD,gBAAgB,CAAC,OAAO,CAAC,YAAY,EAAE,2BAA2B,CAAC,CAAC;AACtE,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAuB,EACvB,QAAoC;IAEpC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACjF,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,CAAU,EAAE,CAAC;QACjF,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAsB;IAC3C,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,KAAK;QACR,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YAC/D,GAAG,IAAI;YACP,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;SACpD,CAAC,CAAC,CAAC;QACJ,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5D,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5D,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;KACrD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,iBAAiB,CAAC,KAA+B;IACxD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,KAAK;QACR,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1C,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;KACzD,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAwB;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvG,OAAO,2CAA2C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,OAAwB;IACpE,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC7D,CAAC;IACD,MAAM,OAAO,GAAG,KAAiC,CAAC;IAClD,WAAW,CAAC,OAAO,CAAC,aAAa,EAAE,iCAAiC,CAAC,CAAC;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;WAC/B,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;WACxC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC;WACxC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS;QAAE,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,CAAC,CAAC;IACzF,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;IACvE,gBAAgB,CAAC,OAAO,CAAC,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;IACvE,gBAAgB,CAAC,OAAO,CAAC,YAAY,EAAE,2BAA2B,CAAC,CAAC;IACpE,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QACD,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;QAC5D,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,CAAC,WAAW,wBAAwB,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,sBAAsB,SAAS,CAAC,WAAW,2BAA2B,CAAC,CAAC;QAC1F,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS;YAAE,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAED,SAAS,UAAU,CAAC,IAAsC,EAAE,KAAuC;IACjG,OAAO,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;AAClG,CAAC;AAED,SAAS,cAAc,CAAC,MAAyB,EAAE,QAA2B,EAAE,KAAa;IAC3F,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,KAAK,EAAE,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,IAAI,KAAK,CAAC,2CAA2C,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAyB,EAAE,KAAa;IAChE,KAAK,MAAM,KAAK,IAAI,MAAM;QAAE,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACtD,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,iBAAiB,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,WAAW,CAAC,KAAc,EAAE,KAAa;IAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import {\n assertPinnedAcceptanceContract,\n createGatedAcceptanceRecord,\n type WorkroomAcceptanceDecision,\n type WorkroomAcceptancePolicySnapshot,\n type WorkroomAcceptanceWaitRequest,\n} from './acceptance-policy.js';\nimport type {\n WorkroomEventDraft,\n WorkroomEventType,\n WorkroomReviewerAssignmentState,\n WorkroomRunState,\n WorkroomSponsorGateState,\n WorkroomTaskState,\n} from './kernel-contracts.js';\n\nexport type WorkroomAcceptanceControlAction =\n | 'claim_review'\n | 'submit_review'\n | 'decide_sponsor';\n\nexport type WorkroomAcceptanceControlRole = 'reviewer' | 'sponsor';\n\n/** Exact authority question asked at the authenticated Workroom control boundary. */\nexport interface WorkroomAcceptanceAuthorizationInput {\n readonly action: WorkroomAcceptanceControlAction;\n readonly principalId: string;\n readonly requiredRole: WorkroomAcceptanceControlRole;\n readonly projectId: string;\n readonly runId: string;\n readonly taskKey: string;\n readonly targetId: string;\n readonly expectedSequence: number;\n}\n\ninterface WorkroomAcceptanceAuthorizationEcho {\n readonly action: WorkroomAcceptanceControlAction;\n readonly principalId: string;\n readonly role: WorkroomAcceptanceControlRole;\n readonly projectId: string;\n readonly runId: string;\n readonly taskKey: string;\n readonly targetId: string;\n readonly expectedSequence: number;\n}\n\nexport type WorkroomAcceptanceAuthorizationDecision =\n | Readonly<WorkroomAcceptanceAuthorizationEcho & {\n readonly authorized: true;\n readonly authorizedBy: string;\n }>\n | Readonly<WorkroomAcceptanceAuthorizationEcho & {\n readonly authorized: false;\n readonly reason: string;\n }>;\n\n/** Trusted membership/RBAC seam. Decisions are data and are re-bound by the pure reducers below. */\nexport interface WorkroomAcceptanceAuthorityPort {\n authorize(\n input: Readonly<WorkroomAcceptanceAuthorizationInput>,\n ): WorkroomAcceptanceAuthorizationDecision | Promise<WorkroomAcceptanceAuthorizationDecision>;\n}\n\nexport type ReviewerCriterionVerdictStatus = 'passed' | 'failed' | 'needs_evidence';\n\nexport interface ReviewerCriterionVerdict {\n readonly criterionId: string;\n readonly status: ReviewerCriterionVerdictStatus;\n readonly evidenceRefs: readonly string[];\n readonly reason?: string;\n}\n\nexport interface ReviewerVerdict {\n readonly candidateHash: string;\n readonly criteria: readonly ReviewerCriterionVerdict[];\n readonly acceptedClaimIds: readonly string[];\n readonly rejectedClaimIds: readonly string[];\n readonly evidenceRefs: readonly string[];\n readonly reason?: string;\n}\n\nexport type WorkroomSponsorDecision = 'approve' | 'reject' | 'request_changes' | 'cancel';\n\nexport type WorkroomAcceptanceEventFactory = (\n type: WorkroomEventType,\n payload: Record<string, unknown>,\n) => WorkroomEventDraft;\n\nexport interface ReviewerClaimInput {\n readonly assignmentId: string;\n readonly principalId: string;\n readonly authorization: WorkroomAcceptanceAuthorizationDecision;\n}\n\nexport interface ReviewerVerdictInput extends ReviewerClaimInput {\n readonly verdict: ReviewerVerdict;\n}\n\nexport interface SponsorGateDecisionInput {\n readonly gateId: string;\n readonly principalId: string;\n readonly candidateHash: string;\n readonly decision: WorkroomSponsorDecision;\n readonly reason: string;\n readonly authorization: WorkroomAcceptanceAuthorizationDecision;\n}\n\nexport function decideReviewerClaim(\n state: WorkroomRunState,\n input: Readonly<ReviewerClaimInput>,\n event: WorkroomAcceptanceEventFactory,\n): readonly WorkroomEventDraft[] {\n const assignment = requireCurrentReviewer(state, input.assignmentId, ['open']);\n assertWaitBinding(state, assignment);\n const authorization = requireAuthorized(\n state, assignment.taskKey, assignment.id, input.principalId, 'reviewer', 'claim_review', input.authorization,\n );\n if (assignment.producerPrincipalId === input.principalId) {\n throw new Error('Producer cannot review its own Candidate');\n }\n return Object.freeze([event('reviewer.claimed', {\n taskKey: assignment.taskKey,\n assignmentId: assignment.id,\n reviewerPrincipalId: input.principalId,\n authorizedBy: authorization.authorizedBy,\n authorization,\n })]);\n}\n\nexport function decideReviewerVerdict(\n state: WorkroomRunState,\n input: Readonly<ReviewerVerdictInput>,\n event: WorkroomAcceptanceEventFactory,\n): readonly WorkroomEventDraft[] {\n const assignment = requireCurrentReviewer(state, input.assignmentId, ['claimed']);\n assertWaitBinding(state, assignment);\n const authorization = requireAuthorized(\n state, assignment.taskKey, assignment.id, input.principalId, 'reviewer', 'submit_review', input.authorization,\n );\n if (assignment.reviewerPrincipalId !== input.principalId) {\n throw new Error('Reviewer verdict principal does not match the Reviewer claim');\n }\n const evaluation = requireEvaluation(assignment);\n assertReviewerVerdictBindings(evaluation, input.verdict);\n\n const verdict = freezeVerdict(input.verdict);\n const verdictEvent = event('reviewer.verdict_recorded', {\n taskKey: assignment.taskKey,\n assignmentId: assignment.id,\n reviewerPrincipalId: input.principalId,\n authorizedBy: authorization.authorizedBy,\n authorization,\n outcome: reviewerVerdictRequiresRework(verdict) ? 'rework' : 'passed',\n verdict,\n });\n const requiresRework = reviewerVerdictRequiresRework(verdict);\n if (requiresRework) {\n return Object.freeze([verdictEvent, event('task.rework_requested', {\n taskKey: assignment.taskKey,\n reason: verdict.reason?.trim() || reviewerFailureReason(verdict),\n evaluation,\n })]);\n }\n\n if (evaluation.route === 'reviewer_required') {\n const record = createGatedAcceptanceRecord({\n decision: evaluation,\n sourceSequence: state.sequence + 1,\n acceptanceSequence: state.sequence + 2,\n acceptedClaimIds: verdict.acceptedClaimIds,\n rejectedClaimIds: verdict.rejectedClaimIds,\n reviewer: { assignmentId: assignment.id, principalId: input.principalId },\n });\n return Object.freeze([verdictEvent, event('task.accepted', {\n taskKey: assignment.taskKey,\n reportRef: evaluation.candidate.reportRef,\n record,\n })]);\n }\n if (evaluation.route !== 'reviewer_then_sponsor') {\n throw new Error('Reviewer verdict does not match a Reviewer-gated Acceptance route');\n }\n const wait = requireNextSponsorWait(state, evaluation);\n const gateId = `sponsor:${evaluation.candidate.id}:${state.sequence + 2}`;\n return Object.freeze([verdictEvent, event('sponsor_gate.opened', {\n taskKey: assignment.taskKey,\n reason: evaluation.reason ?? 'Reviewer passed; Sponsor authority is required',\n gate: freezeSponsorGate({\n id: gateId,\n taskKey: assignment.taskKey,\n taskRevision: assignment.taskRevision,\n candidateHash: evaluation.candidate.hash,\n riskTier: evaluation.riskAssessment.tier,\n route: evaluation.route,\n contractId: evaluation.contract.id,\n policy: evaluation.contract.policy,\n owner: wait.owner,\n deadline: wait.deadline,\n allowedActions: wait.allowedActions,\n status: 'open',\n evaluation,\n reviewerAssignmentId: assignment.id,\n }),\n })]);\n}\n\nexport function decideSponsorGate(\n state: WorkroomRunState,\n input: Readonly<SponsorGateDecisionInput>,\n event: WorkroomAcceptanceEventFactory,\n): readonly WorkroomEventDraft[] {\n const gate = requireCurrentSponsorGate(state, input.gateId);\n assertWaitBinding(state, gate);\n const authorization = requireAuthorized(\n state, gate.taskKey, gate.id, input.principalId, 'sponsor', 'decide_sponsor', input.authorization,\n );\n if (gate.candidateHash !== input.candidateHash) {\n throw new Error('Sponsor decision is stale for the current Candidate hash');\n }\n const evaluation = requireEvaluation(gate);\n const reason = requireText(input.reason, 'Sponsor decision reason');\n if (!gate.allowedActions.includes(input.decision === 'request_changes' ? 'request_changes' : input.decision)) {\n throw new Error(`Sponsor Gate does not allow ${input.decision}`);\n }\n const decisionEvent = event('sponsor_gate.decided', {\n taskKey: gate.taskKey,\n gateId: gate.id,\n sponsorPrincipalId: input.principalId,\n authorizedBy: authorization.authorizedBy,\n authorization,\n decision: input.decision,\n reason,\n candidateHash: input.candidateHash,\n });\n\n if (input.decision === 'approve') {\n const reviewer = gate.reviewerAssignmentId\n ? requirePassedReviewer(state, gate.reviewerAssignmentId)\n : undefined;\n const reviewerVerdict = reviewer ? requireStoredReviewerVerdict(reviewer) : undefined;\n const record = createGatedAcceptanceRecord({\n decision: evaluation,\n sourceSequence: state.sequence + 1,\n acceptanceSequence: state.sequence + 2,\n acceptedClaimIds: reviewerVerdict?.acceptedClaimIds ?? evaluation.candidate.claimIds,\n rejectedClaimIds: reviewerVerdict?.rejectedClaimIds ?? [],\n ...(reviewer ? {\n reviewer: {\n assignmentId: reviewer.id,\n principalId: requireText(reviewer.reviewerPrincipalId, 'Reviewer principal id'),\n },\n } : {}),\n sponsor: { gateId: gate.id, principalId: input.principalId },\n });\n return Object.freeze([decisionEvent, event('task.accepted', {\n taskKey: gate.taskKey,\n reportRef: evaluation.candidate.reportRef,\n record,\n })]);\n }\n if (input.decision === 'cancel') {\n return Object.freeze([decisionEvent, event('task.cancelled', {\n taskKey: gate.taskKey,\n reason,\n })]);\n }\n return Object.freeze([decisionEvent, event('task.rework_requested', {\n taskKey: gate.taskKey,\n reason,\n evaluation,\n })]);\n}\n\nfunction requireAuthorized(\n state: WorkroomRunState,\n taskKey: string,\n targetId: string,\n principalId: string,\n role: WorkroomAcceptanceControlRole,\n action: WorkroomAcceptanceControlAction,\n decision: WorkroomAcceptanceAuthorizationDecision,\n): Extract<WorkroomAcceptanceAuthorizationDecision, { readonly authorized: true }> {\n const expected = {\n action, principalId, role, projectId: state.projectId, runId: state.runId,\n taskKey, targetId, expectedSequence: state.sequence,\n } as const;\n for (const key of Object.keys(expected) as (keyof typeof expected)[]) {\n if (decision[key] !== expected[key]) throw new Error(`Acceptance authorization is stale for ${key}`);\n }\n if (!decision.authorized) throw new Error(`Acceptance authority denied: ${requireText(decision.reason, 'deny reason')}`);\n return Object.freeze({\n ...expected,\n authorized: true,\n authorizedBy: requireText(decision.authorizedBy, 'authorizedBy'),\n });\n}\n\nexport function assertWaitBinding(\n state: WorkroomRunState,\n wait: WorkroomReviewerAssignmentState | WorkroomSponsorGateState,\n): void {\n const task = requireTask(state, wait.taskKey);\n const evaluation = requireEvaluation(wait);\n if (task.status !== 'awaiting_acceptance' || task.revision !== wait.taskRevision) {\n throw new Error('Acceptance control target is stale for the current Task revision');\n }\n if (wait.candidateHash !== evaluation.candidate.hash\n || wait.contractId !== evaluation.contract.id\n || !samePolicy(wait.policy, evaluation.contract.policy)) {\n throw new Error('Acceptance control target does not match its Candidate, Contract or Policy');\n }\n const producer = task.currentAssignmentId ? state.assignments[task.currentAssignmentId] : undefined;\n if (!producer || producer.status !== 'execution_completed'\n || evaluation.candidate.producerAssignmentId !== producer.id\n || evaluation.candidate.producerPrincipalId !== producer.owner\n || evaluation.candidate.id !== producer.candidateRef\n || evaluation.candidate.hash !== producer.candidateHash\n || evaluation.candidate.reportRef !== producer.reportRef\n || evaluation.candidate.reportRef !== task.reportRef) {\n throw new Error('Acceptance control target is stale for the completed Assignment Candidate');\n }\n if (!task.acceptanceContract) throw new Error('Acceptance control Task has no pinned Contract');\n assertPinnedAcceptanceContract(evaluation.contract, task.acceptanceContract);\n if (!Number.isFinite(state.now) || !Number.isFinite(wait.deadline) || wait.deadline <= state.now) {\n throw new Error('Acceptance control deadline has expired');\n }\n}\n\nfunction requireCurrentReviewer(\n state: WorkroomRunState,\n id: string,\n statuses: readonly WorkroomReviewerAssignmentState['status'][],\n): WorkroomReviewerAssignmentState {\n const assignment = state.reviewerAssignments[id];\n if (!assignment || !statuses.includes(assignment.status)) {\n throw new Error(`Current Reviewer Assignment ${id} is not ${statuses.join(' or ')}`);\n }\n const task = requireTask(state, assignment.taskKey);\n if (task.currentReviewerAssignmentId !== id) throw new Error('Reviewer Assignment is not the current Task target');\n return assignment;\n}\n\nfunction requireCurrentSponsorGate(state: WorkroomRunState, id: string): WorkroomSponsorGateState {\n const gate = state.sponsorGates[id];\n if (!gate || gate.status !== 'open') throw new Error(`Open Sponsor Gate ${id} not found`);\n const task = requireTask(state, gate.taskKey);\n if (task.currentSponsorGateId !== id) throw new Error('Sponsor Gate is not the current Task target');\n return gate;\n}\n\nfunction requirePassedReviewer(state: WorkroomRunState, id: string): WorkroomReviewerAssignmentState {\n const reviewer = state.reviewerAssignments[id];\n if (!reviewer || reviewer.status !== 'passed') throw new Error('Sponsor Gate is missing a passed Reviewer verdict');\n return reviewer;\n}\n\nfunction requireStoredReviewerVerdict(reviewer: WorkroomReviewerAssignmentState): ReviewerVerdict {\n const value = reviewer.verdict as Partial<ReviewerVerdict> | undefined;\n if (!value\n || typeof value.candidateHash !== 'string'\n || !Array.isArray(value.criteria)\n || !Array.isArray(value.acceptedClaimIds)\n || !Array.isArray(value.rejectedClaimIds)\n || !Array.isArray(value.evidenceRefs)) {\n throw new Error('Passed Reviewer Assignment is missing its typed verdict');\n }\n return value as ReviewerVerdict;\n}\n\nfunction requireTask(state: WorkroomRunState, key: string): WorkroomTaskState {\n const task = state.tasks[key];\n if (!task) throw new Error(`Task ${key} not found`);\n return task;\n}\n\nfunction requireEvaluation(\n wait: WorkroomReviewerAssignmentState | WorkroomSponsorGateState,\n): WorkroomAcceptanceDecision {\n if (!wait.evaluation) throw new Error('Acceptance control target is missing its pinned evaluation');\n return wait.evaluation;\n}\n\nexport function assertReviewerVerdictBindings(\n decision: WorkroomAcceptanceDecision,\n value: unknown,\n): asserts value is ReviewerVerdict {\n assertReviewerVerdictShape(value);\n const verdict = value;\n if (verdict.candidateHash !== decision.candidate.hash) {\n throw new Error('Reviewer verdict is stale for the current Candidate hash');\n }\n assertExactIds(verdict.criteria.map(item => item.criterionId), decision.contract.criteria.map(item => item.id), 'criteria');\n assertExactIds(\n [...verdict.acceptedClaimIds, ...verdict.rejectedClaimIds],\n decision.candidate.claimIds,\n 'claims',\n );\n if (verdict.acceptedClaimIds.some(id => verdict.rejectedClaimIds.includes(id))) {\n throw new Error('Reviewer verdict cannot both accept and reject a claim');\n }\n for (const criterion of verdict.criteria) {\n if (criterion.status === 'passed' && criterion.evidenceRefs.length === 0) {\n throw new Error(`Passed criterion ${criterion.criterionId} requires evidence`);\n }\n assertUniqueText(criterion.evidenceRefs, `criterion ${criterion.criterionId} evidence`);\n }\n assertUniqueText(verdict.evidenceRefs, 'Reviewer verdict evidence');\n}\n\nfunction requireNextSponsorWait(\n state: WorkroomRunState,\n decision: WorkroomAcceptanceDecision,\n): WorkroomAcceptanceWaitRequest {\n const wait = decision.nextWait;\n if (!wait || !wait.owner.trim() || wait.deadline <= state.now) {\n throw new Error('Reviewer-then-Sponsor route requires a current Sponsor wait');\n }\n for (const action of ['approve', 'reject', 'request_changes', 'cancel'] as const) {\n if (!wait.allowedActions.includes(action)) throw new Error(`Sponsor wait is missing ${action}`);\n }\n return wait;\n}\n\nfunction freezeVerdict(value: ReviewerVerdict): ReviewerVerdict {\n return Object.freeze({\n ...value,\n criteria: Object.freeze(value.criteria.map(item => Object.freeze({\n ...item,\n evidenceRefs: Object.freeze([...item.evidenceRefs]),\n }))),\n acceptedClaimIds: Object.freeze([...value.acceptedClaimIds]),\n rejectedClaimIds: Object.freeze([...value.rejectedClaimIds]),\n evidenceRefs: Object.freeze([...value.evidenceRefs]),\n });\n}\n\nfunction freezeSponsorGate(value: WorkroomSponsorGateState): WorkroomSponsorGateState {\n return Object.freeze({\n ...value,\n policy: Object.freeze({ ...value.policy }),\n allowedActions: Object.freeze([...value.allowedActions]),\n });\n}\n\nfunction reviewerFailureReason(verdict: ReviewerVerdict): string {\n const failed = verdict.criteria.filter(item => item.status !== 'passed').map(item => item.criterionId);\n return `Reviewer requested rework for criteria: ${failed.join(', ')}`;\n}\n\nexport function reviewerVerdictRequiresRework(verdict: ReviewerVerdict): boolean {\n return verdict.criteria.some(item => item.status !== 'passed');\n}\n\nfunction assertReviewerVerdictShape(value: unknown): asserts value is ReviewerVerdict {\n if (!value || typeof value !== 'object' || Array.isArray(value)) {\n throw new Error('Reviewer verdict must be a typed object');\n }\n const verdict = value as Partial<ReviewerVerdict>;\n requireText(verdict.candidateHash, 'Reviewer verdict candidate hash');\n if (!Array.isArray(verdict.criteria)\n || !Array.isArray(verdict.acceptedClaimIds)\n || !Array.isArray(verdict.rejectedClaimIds)\n || !Array.isArray(verdict.evidenceRefs)) {\n throw new Error('Reviewer verdict is missing typed criteria, claims or evidence');\n }\n if (verdict.reason !== undefined) requireText(verdict.reason, 'Reviewer verdict reason');\n assertUniqueText(verdict.acceptedClaimIds, 'Reviewer accepted claims');\n assertUniqueText(verdict.rejectedClaimIds, 'Reviewer rejected claims');\n assertUniqueText(verdict.evidenceRefs, 'Reviewer verdict evidence');\n for (const criterion of verdict.criteria) {\n if (!criterion || typeof criterion !== 'object' || Array.isArray(criterion)) {\n throw new Error('Reviewer criterion verdict must be a typed object');\n }\n requireText(criterion.criterionId, 'Reviewer criterion id');\n if (!['passed', 'failed', 'needs_evidence'].includes(criterion.status)) {\n throw new Error(`Reviewer criterion ${criterion.criterionId} has an invalid status`);\n }\n if (!Array.isArray(criterion.evidenceRefs)) {\n throw new Error(`Reviewer criterion ${criterion.criterionId} is missing evidence refs`);\n }\n if (criterion.reason !== undefined) requireText(criterion.reason, 'Reviewer criterion reason');\n }\n}\n\nfunction samePolicy(left: WorkroomAcceptancePolicySnapshot, right: WorkroomAcceptancePolicySnapshot): boolean {\n return left.id === right.id && left.revision === right.revision && left.digest === right.digest;\n}\n\nfunction assertExactIds(actual: readonly string[], expected: readonly string[], label: string): void {\n assertUniqueText(actual, `Reviewer verdict ${label}`);\n if (actual.length !== expected.length || actual.some(id => !expected.includes(id))) {\n throw new Error(`Reviewer verdict must disposition every ${label.slice(0, -1)}`);\n }\n}\n\nfunction assertUniqueText(values: readonly string[], label: string): void {\n for (const value of values) requireText(value, label);\n if (new Set(values).size !== values.length) throw new Error(`${label} must be unique`);\n}\n\nfunction requireText(value: unknown, label: string): string {\n if (typeof value !== 'string' || !value.trim()) throw new Error(`${label} is required`);\n return value;\n}\n"]}
|
|
@@ -149,4 +149,3 @@ export declare function createGatedAcceptanceRecord(input: Readonly<{
|
|
|
149
149
|
export declare function assertPersistedAcceptanceRecord(value: unknown, taskKey: string, reportRef: string, acceptanceSequence: number): asserts value is WorkroomAcceptanceRecord;
|
|
150
150
|
export declare function freezeAcceptanceContract(value: WorkroomAcceptanceContract): WorkroomAcceptanceContract;
|
|
151
151
|
export declare function assertPinnedAcceptanceContract(actual: WorkroomAcceptanceContract, pinned: WorkroomAcceptanceContract): void;
|
|
152
|
-
//# sourceMappingURL=acceptance-policy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acceptance-policy.js","sourceRoot":"","sources":["../../src/workroom/acceptance-policy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acceptance-policy.js","sourceRoot":"","sources":["../../src/workroom/acceptance-policy.ts"],"names":[],"mappings":"AAyKA,MAAM,UAAU,gCAAgC,CAC9C,KAAuB,EACvB,OAAe;IAEf,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;IACxD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAClF,IAAI,IAAI,CAAC,kBAAkB;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,wCAAwC,CAAC,CAAC;IACtG,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,gBAAgB,EAAE,KAAK,CAAC,QAAQ;QAChC,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;KACnF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAiC,EACjC,OAAe,EACf,YAAoB;IAEpB,cAAc,CAAC;QACb,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;KAC5E,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,IAAI,KAAK,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,YAAY,GAAG,CAAC;WAClE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC;WAC3D,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,CAAC,CAAC,aAAa,EAAE,uBAAuB,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpF,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACnG,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,IAAI,SAAS,CAAC,IAAI,KAAK,eAAe,IAAI,SAAS,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QAC/F,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IACD,mBAAmB,CAAC,KAAK,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,6BAA6B,CAC3C,KAAuB,EACvB,OAAe;IAEf,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,YAAY,CAAC,CAAC;IACxD,IAAI,IAAI,CAAC,MAAM,KAAK,qBAAqB;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,IAAI,CAAC,2BAA2B;QAC7C,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,IAAI,CAAC,2BAA2B,CAAC;QAC7D,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB;QAC3C,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC;QAC/C,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,MAAM,EAAE,MAAM,KAAK,MAAM,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS,IAAI,WAAW,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;QAChG,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,sCAAsC,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,WAAW,GAAG,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IACxH,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,uCAAuC,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAC/D,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,qBAAqB,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;WACpG,CAAC,UAAU,CAAC,YAAY,IAAI,CAAC,UAAU,CAAC,YAAY,IAAI,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC;QACvF,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,uCAAuC,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,gBAAgB,EAAE,KAAK,CAAC,QAAQ;QAChC,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,QAAQ,EAAE,wBAAwB,CAAC,IAAI,CAAC,kBAAkB,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC5F,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;YAChB,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC;gBAC9B,aAAa,EAAE,WAAW,CAAC,aAAa;gBACxC,QAAQ,EAAE,WAAW,CAAC,QAAQ;gBAC9B,KAAK,EAAE,WAAW,CAAC,KAAK;aACzB,CAAC;SACH,CAAC,CAAC,CAAC,EAAE,CAAC;QACP,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;QAC1F,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC;YACxB,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,aAAa,EAAE,UAAU,CAAC,aAAa;SACxC,CAAC;KACH,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAsC,EACtC,QAAoC,EACpC,KAAiG;IAEjG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxC,2BAA2B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC7C,IAAI,QAAQ,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;QACxC,IAAI,QAAQ,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC1F,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE;gBAC7B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;gBACvB,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS;gBAC/B,MAAM;aACP,CAAC,CAAC,CAAC;IACN,CAAC;IACD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,4BAA4B,CAAC,CAAC;IAC5E,IAAI,QAAQ,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACxF,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACjG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE;gBACrC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;gBACvB,MAAM;gBACN,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC;aACrC,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,mBAAmB,IAAI,QAAQ,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;QACzF,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAChC,kCAAkC,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACrE,IAAI,QAAQ,CAAC,KAAK,KAAK,uBAAuB,EAAE,CAAC;YAC/C,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAC7D,CAAC;aAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE;gBACjC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;gBACvB,MAAM;gBACN,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC;oBACxB,EAAE,EAAE,UAAU,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,KAAK,CAAC,gBAAgB,GAAG,CAAC,EAAE;oBACnE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;oBACvB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;oBACjC,aAAa,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI;oBACtC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,IAAI;oBACtC,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACtD,mBAAmB,EAAE,QAAQ,CAAC,SAAS,CAAC,mBAAmB;oBAC3D,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;oBACvD,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC;oBACpC,MAAM,EAAE,MAAe;iBACxB,CAAC;aACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,kBAAkB,EAAE,CAAC;QAC1C,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAChC,kCAAkC,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,qBAAqB,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACpE,IAAI,QAAQ,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QACpG,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE;gBACnC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;gBACvB,MAAM;gBACN,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;oBAClB,EAAE,EAAE,WAAW,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,KAAK,CAAC,gBAAgB,GAAG,CAAC,EAAE;oBACpE,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;oBACvB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ;oBACjC,aAAa,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI;oBACtC,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,IAAI;oBACtC,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACtD,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;oBACvD,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC;oBACpC,MAAM,EAAE,MAAe;iBACxB,CAAC;aACH,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACvG,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE;YACvC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG;YACvB,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS;YAC/B,MAAM;YACN,UAAU,EAAE,cAAc,CAAC,QAAQ,CAAC;SACrC,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,2BAA2B,CAClC,KAAsC,EACtC,QAAoC;IAEpC,MAAM,KAAK,GAAG,KAAK,CAAC,gBAAgB,CAAC;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,KAAK,CAAC,aAAa,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,QAAQ,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,QAAQ,CAAC,WAAW,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,KAAK,gBAAgB;QAAE,OAAO;IACrF,IAAI,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;IACD,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,KAAK,mBAAmB;WACzD,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAChD,MAAM,cAAc,GAAG,QAAQ,CAAC,KAAK,KAAK,kBAAkB;WACvD,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAChD,MAAM,kBAAkB,GAAG,KAAK,CAAC,KAAK,KAAK,mBAAmB;WACzD,KAAK,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAC7C,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,KAAK,kBAAkB;WACvD,KAAK,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAC7C,IAAI,CAAC,kBAAkB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;QACvF,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAA+C,MAAM,CAAC,MAAM,CAAC;IAC1E,GAAG,EAAE,CAAC;IACN,MAAM,EAAE,CAAC;IACT,IAAI,EAAE,CAAC;IACP,QAAQ,EAAE,CAAC;CACZ,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAC5B,KAAsC,EACtC,IAA+C,EAC/C,IAA4B;IAE5B,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IAC/F,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,mBAAmB,CAAC,IAAI,CAAC,cAAc,EAAE,yBAAyB,EAAE,IAAI,CAAC,CAAC;IAC1E,MAAM,OAAO,GAAG,IAAI,GAAG,CAA+B;QACpD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB;QACjE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ;KACnD,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,KAAK,SAAS;QACjC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU;QAC3F,CAAC,CAAC,CAAC,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC;IACzE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAoC;IACjE,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,KAAK,mBAAmB;WACrD,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAChD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,KAAK,kBAAkB;WACnD,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC;IAChD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,QAAQ;WAC7D,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;IACjF,MAAM,eAAe,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,MAAM;WAC1D,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,UAAU,CAAC;IACjD,IAAI,gBAAgB,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,eAAe,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAsC,EACtC,QAAoC;IAEpC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,cAAc,CAAC,QAAQ,CAAC;QAC3B,EAAE,EAAE,cAAc,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;QACpE,cAAc,EAAE,KAAK,CAAC,gBAAgB;QACtC,kBAAkB,EAAE,KAAK,CAAC,gBAAgB,GAAG,CAAC;QAC9C,aAAa,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI;QACtC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;KACvD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAQ1C;IACA,MAAM,QAAQ,GAAG,cAAc,CAAC;QAC9B,GAAG,KAAK,CAAC,QAAQ;QACjB,WAAW,EAAE,UAAU;QACvB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,SAAS;KACpB,CAAC,CAAC;IACH,0BAA0B,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,QAAQ;QACX,EAAE,EAAE,cAAc,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE;QACpE,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;QAC5C,aAAa,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI;QACtC,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAChC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,oBAAoB,EAAE,KAAK,CAAC,QAAQ,CAAC,YAAY;YACjD,mBAAmB,EAAE,KAAK,CAAC,QAAQ,CAAC,WAAW;SAChD,CAAC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAClB,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;YACnC,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW;SAC9C,CAAC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,KAAc,EACd,OAAe,EACf,SAAiB,EACjB,kBAA0B;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC5D,iBAAiB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtC,iBAAiB,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC1C,iBAAiB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QAC7C,iBAAiB,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;QAC7C,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3C,iBAAiB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3C,KAAK,MAAM,SAAS,IAAI,QAAQ;YAAE,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QACxF,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;YAClC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YACvC,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,YAAY,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACtG,MAAM,QAAQ,GAAG,MAA+C,CAAC;QACjE,IAAI,QAAQ,CAAC,WAAW,KAAK,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACzF,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,aAAa,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;YACnG,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,KAAK,GAAoC;YAC7C,SAAS,EAAE,WAAW;YACtB,KAAK,EAAE,WAAW;YAClB,gBAAgB,EAAE,CAAC;YACnB,GAAG,EAAE,CAAC;YACN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,IAAI,EAAE;gBACJ,GAAG,EAAE,OAAO;gBACZ,QAAQ,EAAE,SAAS,CAAC,YAAsB;gBAC1C,SAAS;aACV;YACD,UAAU,EAAE;gBACV,EAAE,EAAE,aAAa,CAAC,SAAS,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;gBAC3E,KAAK,EAAE,aAAa,CAAC,SAAS,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;gBAC5E,SAAS;gBACT,YAAY,EAAE,6BAA6B;gBAC3C,YAAY,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,cAAc,CAAC;gBACzD,aAAa,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI,EAAE,gBAAgB,CAAC;aAC/D;SACF,CAAC;QACF,sBAAsB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxC,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa;YAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;;YACpE,mCAAmC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3D,MAAM,UAAU,GAAG,cAAc,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,QAAQ,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACpF,IAAI,MAAM,CAAC,EAAE,KAAK,UAAU;eACvB,MAAM,CAAC,cAAc,KAAK,kBAAkB,GAAG,CAAC;eAChD,MAAM,CAAC,kBAAkB,KAAK,kBAAkB;eAChD,MAAM,CAAC,aAAa,KAAK,QAAQ,CAAC,SAAS,CAAC,IAAI;eAChD,MAAM,CAAC,UAAU,KAAK,QAAQ,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACjD,IAAI,YAAY,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE;eAC5B,YAAY,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;eACzC,YAAY,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oCAAoC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,SAAS,mCAAmC,CAC1C,MAA+B,EAC/B,QAAoC;IAEpC,MAAM,QAAQ,GAAG,MAAM,CAAC,oBAAoB,KAAK,SAAS,IAAI,MAAM,CAAC,mBAAmB,KAAK,SAAS;QACpG,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,oBAAoB,EAAE,wBAAwB,CAAC;YAClF,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,mBAAmB,EAAE,uBAAuB,CAAC;SAChF,CAAC;IACN,MAAM,OAAO,GAAG,MAAM,CAAC,aAAa,KAAK,SAAS,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS;QAC3F,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,aAAa,EAAE,iBAAiB,CAAC;YAC9D,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,kBAAkB,EAAE,sBAAsB,CAAC;SAC9E,CAAC;IACN,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,0BAA0B,CACjC,QAAoC,EACpC,QAAkE,EAClE,OAA2D;IAE3D,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,IAAI,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,KAAK,gBAAgB,EAAE,CAAC;QAC3G,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,mBAAmB,IAAI,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxG,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,KAAK,kBAAkB,IAAI,QAAQ,CAAC,KAAK,KAAK,uBAAuB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACtG,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;IACD,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAChC,kCAAkC,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,aAAa,CAChB,CAAC,GAAG,QAAQ,CAAC,gBAAgB,EAAE,GAAG,QAAQ,CAAC,gBAAgB,CAAC,EAC5D,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAC5B,EAAE,CAAC;QACF,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC7E,CAAC;IACD,IAAI,QAAQ,CAAC,SAAS,KAAK,qBAAqB,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CAAC,QAAoC;IAC9E,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3F,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAC9C,SAAS,CAAC,IAAI,KAAK,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;QACxF,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnG,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,KAAsC,EACtC,QAAoC;IAEpC,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACvF,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;IACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;IACnC,cAAc,CAAC;QACb,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,oBAAoB;QACjF,SAAS,CAAC,mBAAmB,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE;QAC/E,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC,SAAS;QACrF,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS;KACrD,CAAC,CAAC;IACH,IAAI,SAAS,CAAC,OAAO,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,SAAS,CAAC,YAAY,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3F,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,SAAS,CAAC,SAAS,KAAK,KAAK,CAAC,IAAI,CAAC,SAAS;WAC3C,SAAS,CAAC,oBAAoB,KAAK,KAAK,CAAC,UAAU,CAAC,EAAE;WACtD,SAAS,CAAC,mBAAmB,KAAK,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,YAAY,KAAK,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,8BAA8B,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,GAAG,CAAC;WAChE,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,IAAI,QAAQ,CAAC,cAAc,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,mBAAmB,CAAC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,EAAE,IAAI,CAAC,CAAC;IACrE,mBAAmB,CAAC,SAAS,CAAC,YAAY,EAAE,yBAAyB,CAAC,CAAC;IACvE,mBAAmB,CAAC,QAAQ,CAAC,gBAAgB,EAAE,wBAAwB,CAAC,CAAC;IACzE,mBAAmB,CAAC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;IACrE,mBAAmB,CAAC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,SAAS,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC1C,cAAc,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QACtD,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACpG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC7B,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC3C,cAAc,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QACrF,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACnH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACvG,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC5G,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAClC,CAAC;IACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IAC3C,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,QAAQ,CAAC,gBAAgB,EAAE,GAAG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC/F,CAAC;IACD,IAAI,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,QAAoC;IACpE,IAAI,QAAQ,CAAC,KAAK,KAAK,aAAa,IAAI,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QAC/E,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,eAAe,CAAC,EAAE,CAAC;QACrF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3F,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,QAAQ,CAAC,EAAE,CAAC;QACjG,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACnG,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC;WACrE,QAAQ,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,QAAQ,CAAC,SAAS,KAAK,qBAAqB,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CAAC,qEAAqE,CAAC,CAAC;IACzF,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAkC;IACzD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,KAAK;QACR,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5C,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;KACrD,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAiC;IACxE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,KAAK;QACR,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC1C,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAC/E,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;KAC7D,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,KAAoC;IACtD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,YAAY,CAAC,MAAgD;IACpE,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;QACrD,GAAG,KAAK;QACR,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;KACrD,CAAC,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,cAAc,CAAC,KAAiC;IACvD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,KAAK;QACR,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC;QAC3C,QAAQ,EAAE,wBAAwB,CAAC,KAAK,CAAC,QAAQ,CAAC;QAClD,cAAc,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC;QAChD,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC;QAC9C,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5D,gBAAgB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC5D,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACf,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;gBAClB,GAAG,KAAK,CAAC,IAAI;gBACb,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAC9D,CAAC;SACH,CAAC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,GAAG,KAAK,CAAC,QAAQ;gBACjB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;aAClE,CAAC;SACH,CAAC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,MAA0B;IAChD,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAc,EAAE,KAAa;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,cAAc,CAAC,CAAC;IACpG,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAyB,EAAE,KAAa,EAAE,QAAQ,GAAG,KAAK;IACrF,cAAc,CAAC,MAAM,CAAC,CAAC;IACvB,IAAI,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,CAAC,CAAC;IACnF,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,iBAAiB,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,aAAa,CAAC,IAAuB,EAAE,KAAwB;IACtE,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAAkC,EAClC,MAAkC;IAElC,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE;WAClC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;WACnC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;WAC/B,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO;WACjC,MAAM,CAAC,YAAY,KAAK,MAAM,CAAC,YAAY;WAC3C,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;WAC3B,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE;WACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,MAAM,CAAC,QAAQ;WACjD,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM;WAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC;WACnE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IACzF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe;IAC3C,MAAM,IAAI,KAAK,CAAC,QAAQ,OAAO,oCAAoC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACvG,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACvE,OAAO,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import type {\n WorkroomAssignmentState,\n WorkroomEventDraft,\n WorkroomRunState,\n WorkroomTaskState,\n} from './kernel-contracts.js';\n\nexport type WorkroomRiskTier = 'low' | 'medium' | 'high' | 'critical';\nexport type WorkroomAcceptanceRoute =\n | 'auto_accept'\n | 'reviewer_required'\n | 'sponsor_required'\n | 'reviewer_then_sponsor'\n | 'rework'\n | 'policy_blocked';\n\nexport interface WorkroomAcceptancePolicySnapshot {\n readonly id: string;\n readonly revision: number;\n readonly digest: string;\n}\n\nexport interface WorkroomAcceptanceCriterion {\n readonly id: string;\n readonly kind: 'deterministic' | 'judgment';\n readonly description: string;\n}\n\nexport interface WorkroomAcceptanceContract {\n readonly id: string;\n readonly revision: number;\n readonly digest: string;\n readonly taskKey: string;\n readonly taskRevision: number;\n readonly kind: 'task_result' | 'integration_candidate' | 'effect_intent';\n readonly policy: WorkroomAcceptancePolicySnapshot;\n readonly criteria: readonly WorkroomAcceptanceCriterion[];\n readonly requiredEvidence: readonly string[];\n}\n\nexport interface WorkroomAcceptanceCandidate {\n readonly id: string;\n readonly taskKey: string;\n readonly taskRevision: number;\n readonly producerAssignmentId: string;\n readonly producerPrincipalId: string;\n readonly reportRef: string;\n readonly hash: string;\n readonly claimIds: readonly string[];\n readonly evidenceRefs: readonly string[];\n}\n\nexport interface WorkroomTrustedRiskAssessment {\n readonly id: string;\n readonly candidateHash: string;\n readonly tier: WorkroomRiskTier;\n readonly factsHash: string;\n readonly assessor: string;\n readonly sourceRefs: readonly string[];\n}\n\nexport interface WorkroomAcceptanceCheckResult {\n readonly id: string;\n readonly criterionId: string;\n readonly status: 'passed' | 'failed' | 'error' | 'expired';\n readonly candidateHash: string;\n readonly runner: string;\n readonly runnerVersion: string;\n readonly evidenceRefs: readonly string[];\n}\n\nexport type WorkroomAcceptanceWaitAction =\n | 'claim'\n | 'submit_verdict'\n | 'approve'\n | 'reject'\n | 'request_changes'\n | 'reassign'\n | 'reopen'\n | 'rebase'\n | 'replan'\n | 'cancel';\n\nexport interface WorkroomAcceptanceWaitRequest {\n readonly owner: string;\n readonly deadline: number;\n readonly allowedActions: readonly WorkroomAcceptanceWaitAction[];\n}\n\nexport interface WorkroomAcceptanceDecisionInput {\n readonly projectId: string;\n readonly runId: string;\n readonly expectedSequence: number;\n readonly now: number;\n readonly contract: WorkroomAcceptanceContract;\n readonly priorExpiredWait?: Readonly<{\n candidateHash: string;\n riskTier: WorkroomRiskTier;\n route: Extract<WorkroomAcceptanceRoute, 'reviewer_required' | 'sponsor_required' | 'reviewer_then_sponsor'>;\n }>;\n readonly task: Readonly<{\n key: WorkroomTaskState['key'];\n revision: WorkroomTaskState['revision'];\n reportRef: string;\n }>;\n readonly assignment: Readonly<{\n id: WorkroomAssignmentState['id'];\n owner: WorkroomAssignmentState['owner'];\n reportRef: string;\n reportDigest: string;\n candidateRef: string;\n candidateHash: string;\n }>;\n}\n\nexport interface WorkroomAcceptanceContractPinInput {\n readonly projectId: string;\n readonly runId: string;\n readonly expectedSequence: number;\n readonly now: number;\n readonly task: Readonly<{\n key: WorkroomTaskState['key'];\n title: WorkroomTaskState['title'];\n revision: WorkroomTaskState['revision'];\n }>;\n}\n\nexport interface WorkroomAcceptanceDecision {\n readonly version: 1;\n readonly disposition: 'accepted' | 'rework' | 'policy_blocked';\n readonly route: WorkroomAcceptanceRoute;\n readonly candidate: WorkroomAcceptanceCandidate;\n readonly contract: WorkroomAcceptanceContract;\n readonly riskAssessment: WorkroomTrustedRiskAssessment;\n readonly checkResults: readonly WorkroomAcceptanceCheckResult[];\n readonly acceptedClaimIds: readonly string[];\n readonly rejectedClaimIds: readonly string[];\n readonly decidedBy: string;\n readonly reason?: string;\n readonly wait?: WorkroomAcceptanceWaitRequest;\n readonly nextWait?: WorkroomAcceptanceWaitRequest;\n}\n\nexport interface WorkroomAcceptanceRecord extends WorkroomAcceptanceDecision {\n readonly id: string;\n readonly sourceSequence: number;\n readonly acceptanceSequence: number;\n readonly candidateHash: string;\n readonly contractId: string;\n readonly policy: WorkroomAcceptancePolicySnapshot;\n readonly reviewerAssignmentId?: string;\n readonly reviewerPrincipalId?: string;\n readonly sponsorGateId?: string;\n readonly sponsorPrincipalId?: string;\n}\n\n/**\n * Trusted, generation-owned seam. It resolves exact refs through policy,\n * artifact, risk and check stores; callers cannot supply an acceptance result.\n */\nexport interface WorkroomAcceptancePolicyDecisionPort {\n pinContract(\n input: WorkroomAcceptanceContractPinInput,\n ): WorkroomAcceptanceContract | Promise<WorkroomAcceptanceContract>;\n decide(\n input: WorkroomAcceptanceDecisionInput,\n ): WorkroomAcceptanceDecision | Promise<WorkroomAcceptanceDecision>;\n}\n\nexport function createAcceptanceContractPinInput(\n state: WorkroomRunState,\n taskKey: string,\n): WorkroomAcceptanceContractPinInput {\n const task = state.tasks[taskKey];\n if (!task) throw new Error(`Task ${taskKey} not found`);\n if (task.status !== 'ready') throw new Error(`Task ${taskKey} is ${task.status}`);\n if (task.acceptanceContract) throw new Error(`Task ${taskKey} Acceptance Contract is already pinned`);\n return Object.freeze({\n projectId: state.projectId,\n runId: state.runId,\n expectedSequence: state.sequence,\n now: state.now,\n task: Object.freeze({ key: task.key, title: task.title, revision: task.revision }),\n });\n}\n\nexport function assertAcceptanceContract(\n value: WorkroomAcceptanceContract,\n taskKey: string,\n taskRevision: number,\n): void {\n requireStrings([\n value.id, value.digest, value.taskKey, value.policy.id, value.policy.digest,\n ]);\n if (value.taskKey !== taskKey || value.taskRevision !== taskRevision) {\n throw new Error('Acceptance Contract does not match the current Task revision');\n }\n if (!Number.isSafeInteger(value.taskRevision) || value.taskRevision < 1\n || !Number.isSafeInteger(value.revision) || value.revision < 1\n || !Number.isSafeInteger(value.policy.revision) || value.policy.revision < 1) {\n throw new Error('Task, Acceptance Contract and Policy revisions must be positive integers');\n }\n if (!['task_result', 'integration_candidate', 'effect_intent'].includes(value.kind)) {\n throw new Error('Acceptance Contract kind is invalid');\n }\n if (value.criteria.length === 0) throw new Error('Acceptance Contract requires explicit criteria');\n const ids = new Set<string>();\n for (const criterion of value.criteria) {\n requireStrings([criterion.id, criterion.description]);\n if (criterion.kind !== 'deterministic' && criterion.kind !== 'judgment') {\n throw new Error('Acceptance Contract criterion kind is invalid');\n }\n if (ids.has(criterion.id)) throw new Error('Acceptance Contract criterion IDs must be unique');\n ids.add(criterion.id);\n }\n assertUniqueStrings(value.requiredEvidence, 'required evidence refs');\n}\n\nexport function createAcceptanceDecisionInput(\n state: WorkroomRunState,\n taskKey: string,\n): WorkroomAcceptanceDecisionInput {\n const task = state.tasks[taskKey];\n if (!task) throw new Error(`Task ${taskKey} not found`);\n if (task.status !== 'awaiting_acceptance') throw new Error(`Task ${taskKey} is ${task.status}`);\n const review = task.currentReviewerAssignmentId\n ? state.reviewerAssignments[task.currentReviewerAssignmentId]\n : undefined;\n const sponsorGate = task.currentSponsorGateId\n ? state.sponsorGates[task.currentSponsorGateId]\n : undefined;\n if (review?.status === 'open' || review?.status === 'claimed' || sponsorGate?.status === 'open') {\n throw new Error(`Task ${taskKey} already has an open Acceptance wait`);\n }\n const expiredWait = review?.status === 'expired' ? review : sponsorGate?.status === 'expired' ? sponsorGate : undefined;\n if (!task.reportRef || !task.currentAssignmentId) {\n throw new Error(`Task ${taskKey} has no completed execution candidate`);\n }\n const assignment = state.assignments[task.currentAssignmentId];\n if (!assignment || assignment.status !== 'execution_completed' || assignment.reportRef !== task.reportRef\n || !assignment.reportDigest || !assignment.candidateRef || !assignment.candidateHash) {\n throw new Error(`Task ${taskKey} has no matching completed Assignment`);\n }\n return Object.freeze({\n projectId: state.projectId,\n runId: state.runId,\n expectedSequence: state.sequence,\n now: state.now,\n contract: freezeAcceptanceContract(task.acceptanceContract ?? failUnpinnedContract(taskKey)),\n ...(expiredWait ? {\n priorExpiredWait: Object.freeze({\n candidateHash: expiredWait.candidateHash,\n riskTier: expiredWait.riskTier,\n route: expiredWait.route,\n }),\n } : {}),\n task: Object.freeze({ key: task.key, revision: task.revision, reportRef: task.reportRef }),\n assignment: Object.freeze({\n id: assignment.id,\n owner: assignment.owner,\n reportRef: assignment.reportRef,\n reportDigest: assignment.reportDigest,\n candidateRef: assignment.candidateRef,\n candidateHash: assignment.candidateHash,\n }),\n });\n}\n\nexport function decideTaskAcceptance(\n input: WorkroomAcceptanceDecisionInput,\n decision: WorkroomAcceptanceDecision,\n event: (type: WorkroomEventDraft['type'], payload: Record<string, unknown>) => WorkroomEventDraft,\n): readonly WorkroomEventDraft[] {\n assertDecisionBindings(input, decision);\n assertExpiredWaitContinuity(input, decision);\n if (decision.disposition === 'accepted') {\n if (decision.wait) throw new Error('Accepted decisions cannot retain an Acceptance wait');\n assertSafeAutoAcceptance(decision);\n const record = createAcceptanceRecord(input, decision);\n return [event('task.accepted', {\n taskKey: input.task.key,\n reportRef: input.task.reportRef,\n record,\n })];\n }\n const reason = requireString(decision.reason, 'acceptance decision reason');\n if (decision.disposition === 'rework') {\n if (decision.wait) throw new Error('Rework decisions cannot retain an Acceptance wait');\n if (decision.route !== 'rework') throw new Error('Rework disposition requires the rework route');\n if (!decision.checkResults.some(result => result.status !== 'passed')) {\n throw new Error('Rework requires a non-passing trusted check');\n }\n return [event('task.rework_requested', {\n taskKey: input.task.key,\n reason,\n evaluation: freezeDecision(decision),\n })];\n }\n if (decision.route === 'auto_accept' || decision.route === 'rework') {\n throw new Error('Policy-blocked disposition requires a gated or blocked route');\n }\n if (decision.route === 'reviewer_required' || decision.route === 'reviewer_then_sponsor') {\n assertGatedRouteFloor(decision);\n assertGatedAcceptancePrerequisites(decision);\n const wait = requireAcceptanceWait(input, decision.wait, 'reviewer');\n if (decision.route === 'reviewer_then_sponsor') {\n requireAcceptanceWait(input, decision.nextWait, 'sponsor');\n } else if (decision.nextWait) {\n throw new Error('Reviewer-only acceptance cannot retain an unused Sponsor wait');\n }\n return [event('reviewer.assigned', {\n taskKey: input.task.key,\n reason,\n assignment: Object.freeze({\n id: `review:${decision.candidate.id}:${input.expectedSequence + 1}`,\n taskKey: input.task.key,\n taskRevision: input.task.revision,\n candidateHash: decision.candidate.hash,\n riskTier: decision.riskAssessment.tier,\n route: decision.route,\n contractId: decision.contract.id,\n policy: Object.freeze({ ...decision.contract.policy }),\n producerPrincipalId: decision.candidate.producerPrincipalId,\n owner: wait.owner,\n deadline: wait.deadline,\n allowedActions: Object.freeze([...wait.allowedActions]),\n evaluation: freezeDecision(decision),\n status: 'open' as const,\n }),\n })];\n }\n if (decision.route === 'sponsor_required') {\n assertGatedRouteFloor(decision);\n assertGatedAcceptancePrerequisites(decision);\n const wait = requireAcceptanceWait(input, decision.wait, 'sponsor');\n if (decision.nextWait) throw new Error('Sponsor-only acceptance cannot retain an unused next wait');\n return [event('sponsor_gate.opened', {\n taskKey: input.task.key,\n reason,\n gate: Object.freeze({\n id: `sponsor:${decision.candidate.id}:${input.expectedSequence + 1}`,\n taskKey: input.task.key,\n taskRevision: input.task.revision,\n candidateHash: decision.candidate.hash,\n riskTier: decision.riskAssessment.tier,\n route: decision.route,\n contractId: decision.contract.id,\n policy: Object.freeze({ ...decision.contract.policy }),\n owner: wait.owner,\n deadline: wait.deadline,\n allowedActions: Object.freeze([...wait.allowedActions]),\n evaluation: freezeDecision(decision),\n status: 'open' as const,\n }),\n })];\n }\n if (decision.wait) throw new Error('Policy-blocked decisions cannot retain an unused Acceptance wait');\n return [event('task.acceptance_blocked', {\n taskKey: input.task.key,\n reportRef: input.task.reportRef,\n reason,\n evaluation: freezeDecision(decision),\n })];\n}\n\nfunction assertExpiredWaitContinuity(\n input: WorkroomAcceptanceDecisionInput,\n decision: WorkroomAcceptanceDecision,\n): void {\n const prior = input.priorExpiredWait;\n if (!prior) return;\n if (decision.candidate.hash !== prior.candidateHash) {\n throw new Error('Fresh evaluation does not match the expired Acceptance wait candidate');\n }\n if (decision.disposition === 'accepted') {\n throw new Error('Fresh evaluation cannot bypass an expired Acceptance wait');\n }\n if (decision.disposition === 'rework' || decision.route === 'policy_blocked') return;\n if (RISK_RANK[decision.riskAssessment.tier] < RISK_RANK[prior.riskTier]) {\n throw new Error('Fresh evaluation cannot lower the expired Acceptance wait risk tier');\n }\n const nextHasReviewer = decision.route === 'reviewer_required'\n || decision.route === 'reviewer_then_sponsor';\n const nextHasSponsor = decision.route === 'sponsor_required'\n || decision.route === 'reviewer_then_sponsor';\n const priorNeedsReviewer = prior.route === 'reviewer_required'\n || prior.route === 'reviewer_then_sponsor';\n const priorNeedsSponsor = prior.route === 'sponsor_required'\n || prior.route === 'reviewer_then_sponsor';\n if ((priorNeedsReviewer && !nextHasReviewer) || (priorNeedsSponsor && !nextHasSponsor)) {\n throw new Error('Fresh evaluation cannot weaken an expired Acceptance route');\n }\n}\n\nconst RISK_RANK: Readonly<Record<WorkroomRiskTier, number>> = Object.freeze({\n low: 0,\n medium: 1,\n high: 2,\n critical: 3,\n});\n\nfunction requireAcceptanceWait(\n input: WorkroomAcceptanceDecisionInput,\n wait: WorkroomAcceptanceWaitRequest | undefined,\n kind: 'reviewer' | 'sponsor',\n): WorkroomAcceptanceWaitRequest {\n if (!wait) throw new Error('Gated acceptance requires an owner, deadline and allowed actions');\n requireStrings([wait.owner]);\n if (!Number.isFinite(wait.deadline) || wait.deadline <= input.now) {\n throw new Error('Acceptance wait deadline must be in the future');\n }\n assertUniqueStrings(wait.allowedActions, 'acceptance wait actions', true);\n const allowed = new Set<WorkroomAcceptanceWaitAction>([\n 'claim', 'submit_verdict', 'approve', 'reject', 'request_changes',\n 'reassign', 'reopen', 'rebase', 'replan', 'cancel',\n ]);\n if (wait.allowedActions.some(action => !allowed.has(action))) {\n throw new Error('Acceptance wait contains an unsupported action');\n }\n const required = kind === 'sponsor'\n ? ['approve', 'reject', 'request_changes', 'reopen', 'rebase', 'replan', 'cancel'] as const\n : ['claim', 'submit_verdict', 'reassign', 'replan', 'cancel'] as const;\n if (required.some(action => !wait.allowedActions.includes(action))) {\n throw new Error('Acceptance wait is missing required recovery actions');\n }\n return wait;\n}\n\nfunction assertGatedRouteFloor(decision: WorkroomAcceptanceDecision): void {\n const hasReviewer = decision.route === 'reviewer_required'\n || decision.route === 'reviewer_then_sponsor';\n const hasSponsor = decision.route === 'sponsor_required'\n || decision.route === 'reviewer_then_sponsor';\n const requiresReviewer = decision.riskAssessment.tier === 'medium'\n || decision.contract.criteria.some(criterion => criterion.kind === 'judgment');\n const requiresSponsor = decision.riskAssessment.tier === 'high'\n || decision.riskAssessment.tier === 'critical';\n if (requiresReviewer && !hasReviewer) {\n throw new Error('Acceptance route cannot remove the baseline Reviewer requirement');\n }\n if (requiresSponsor && !hasSponsor) {\n throw new Error('Acceptance route cannot remove the baseline Sponsor requirement');\n }\n}\n\nfunction createAcceptanceRecord(\n input: WorkroomAcceptanceDecisionInput,\n decision: WorkroomAcceptanceDecision,\n): WorkroomAcceptanceRecord {\n return Object.freeze({\n ...freezeDecision(decision),\n id: `acceptance:${decision.candidate.id}:${decision.candidate.hash}`,\n sourceSequence: input.expectedSequence,\n acceptanceSequence: input.expectedSequence + 1,\n candidateHash: decision.candidate.hash,\n contractId: decision.contract.id,\n policy: Object.freeze({ ...decision.contract.policy }),\n });\n}\n\nexport function createGatedAcceptanceRecord(input: Readonly<{\n decision: WorkroomAcceptanceDecision;\n sourceSequence: number;\n acceptanceSequence: number;\n acceptedClaimIds: readonly string[];\n rejectedClaimIds: readonly string[];\n reviewer?: Readonly<{ assignmentId: string; principalId: string }>;\n sponsor?: Readonly<{ gateId: string; principalId: string }>;\n}>): WorkroomAcceptanceRecord {\n const decision = freezeDecision({\n ...input.decision,\n disposition: 'accepted',\n acceptedClaimIds: input.acceptedClaimIds,\n rejectedClaimIds: input.rejectedClaimIds,\n wait: undefined,\n nextWait: undefined,\n });\n assertGatedAcceptanceProof(decision, input.reviewer, input.sponsor);\n return Object.freeze({\n ...decision,\n id: `acceptance:${decision.candidate.id}:${decision.candidate.hash}`,\n sourceSequence: input.sourceSequence,\n acceptanceSequence: input.acceptanceSequence,\n candidateHash: decision.candidate.hash,\n contractId: decision.contract.id,\n policy: Object.freeze({ ...decision.contract.policy }),\n ...(input.reviewer ? {\n reviewerAssignmentId: input.reviewer.assignmentId,\n reviewerPrincipalId: input.reviewer.principalId,\n } : {}),\n ...(input.sponsor ? {\n sponsorGateId: input.sponsor.gateId,\n sponsorPrincipalId: input.sponsor.principalId,\n } : {}),\n });\n}\n\nexport function assertPersistedAcceptanceRecord(\n value: unknown,\n taskKey: string,\n reportRef: string,\n acceptanceSequence: number,\n): asserts value is WorkroomAcceptanceRecord {\n try {\n const record = expectRecord(value);\n const candidate = expectRecord(record.candidate);\n const contract = expectRecord(record.contract);\n const policy = expectRecord(contract.policy);\n const riskAssessment = expectRecord(record.riskAssessment);\n const criteria = expectRecordArray(contract.criteria);\n const checkResults = expectRecordArray(record.checkResults);\n expectStringArray(candidate.claimIds);\n expectStringArray(candidate.evidenceRefs);\n expectStringArray(contract.requiredEvidence);\n expectStringArray(riskAssessment.sourceRefs);\n expectStringArray(record.acceptedClaimIds);\n expectStringArray(record.rejectedClaimIds);\n for (const criterion of criteria) requireStrings([criterion.id, criterion.description]);\n for (const result of checkResults) {\n expectStringArray(result.evidenceRefs);\n requireStrings([result.id, result.criterionId, result.runner, result.runnerVersion]);\n }\n if (!Number.isSafeInteger(candidate.taskRevision)) throw new Error('invalid candidate task revision');\n const decision = record as unknown as WorkroomAcceptanceDecision;\n if (decision.disposition !== 'accepted') throw new Error('invalid accepted disposition');\n if (decision.contract.kind !== 'task_result' && decision.contract.kind !== 'integration_candidate') {\n throw new Error('invalid accepted candidate kind');\n }\n const input: WorkroomAcceptanceDecisionInput = {\n projectId: 'persisted',\n runId: 'persisted',\n expectedSequence: 0,\n now: 0,\n contract: decision.contract,\n task: {\n key: taskKey,\n revision: candidate.taskRevision as number,\n reportRef,\n },\n assignment: {\n id: requireString(candidate.producerAssignmentId, 'producer Assignment id'),\n owner: requireString(candidate.producerPrincipalId, 'producer principal id'),\n reportRef,\n reportDigest: 'persisted-record-validation',\n candidateRef: requireString(candidate.id, 'candidate id'),\n candidateHash: requireString(candidate.hash, 'candidate hash'),\n },\n };\n assertDecisionBindings(input, decision);\n if (decision.route === 'auto_accept') assertSafeAutoAcceptance(decision);\n else assertPersistedGatedAcceptanceProof(record, decision);\n const expectedId = `acceptance:${decision.candidate.id}:${decision.candidate.hash}`;\n if (record.id !== expectedId\n || record.sourceSequence !== acceptanceSequence - 1\n || record.acceptanceSequence !== acceptanceSequence\n || record.candidateHash !== decision.candidate.hash\n || record.contractId !== decision.contract.id) {\n throw new Error('acceptance identity is not bound to the Candidate');\n }\n const recordPolicy = expectRecord(record.policy);\n if (recordPolicy.id !== policy.id\n || recordPolicy.revision !== policy.revision\n || recordPolicy.digest !== policy.digest) {\n throw new Error('acceptance Policy snapshot does not match the Contract');\n }\n } catch (error) {\n throw new Error('Invalid Workroom Acceptance Record', { cause: error });\n }\n}\n\nfunction assertPersistedGatedAcceptanceProof(\n record: Record<string, unknown>,\n decision: WorkroomAcceptanceDecision,\n): void {\n const reviewer = record.reviewerAssignmentId === undefined && record.reviewerPrincipalId === undefined\n ? undefined\n : {\n assignmentId: requireString(record.reviewerAssignmentId, 'Reviewer Assignment id'),\n principalId: requireString(record.reviewerPrincipalId, 'Reviewer principal id'),\n };\n const sponsor = record.sponsorGateId === undefined && record.sponsorPrincipalId === undefined\n ? undefined\n : {\n gateId: requireString(record.sponsorGateId, 'Sponsor Gate id'),\n principalId: requireString(record.sponsorPrincipalId, 'Sponsor principal id'),\n };\n assertGatedAcceptanceProof(decision, reviewer, sponsor);\n}\n\nfunction assertGatedAcceptanceProof(\n decision: WorkroomAcceptanceDecision,\n reviewer?: Readonly<{ assignmentId: string; principalId: string }>,\n sponsor?: Readonly<{ gateId: string; principalId: string }>,\n): void {\n if (decision.route === 'auto_accept' || decision.route === 'rework' || decision.route === 'policy_blocked') {\n throw new Error('Gated Acceptance Record has an invalid route');\n }\n if ((decision.route === 'reviewer_required' || decision.route === 'reviewer_then_sponsor') && !reviewer) {\n throw new Error('Gated Acceptance Record is missing Reviewer proof');\n }\n if ((decision.route === 'sponsor_required' || decision.route === 'reviewer_then_sponsor') && !sponsor) {\n throw new Error('Gated Acceptance Record is missing Sponsor proof');\n }\n assertGatedRouteFloor(decision);\n assertGatedAcceptancePrerequisites(decision);\n if (!sameStringSet(\n [...decision.acceptedClaimIds, ...decision.rejectedClaimIds],\n decision.candidate.claimIds,\n )) {\n throw new Error('Gated acceptance must disposition every Candidate claim');\n }\n if (decision.decidedBy !== `acceptance-policy:${decision.contract.policy.id}`) {\n throw new Error('Acceptance Record decider does not match the pinned Policy snapshot');\n }\n}\n\nfunction assertGatedAcceptancePrerequisites(decision: WorkroomAcceptanceDecision): void {\n const results = new Map(decision.checkResults.map(result => [result.criterionId, result]));\n if (decision.contract.criteria.some(criterion =>\n criterion.kind === 'deterministic' && results.get(criterion.id)?.status !== 'passed')) {\n throw new Error('Sponsor or Reviewer cannot waive a deterministic Acceptance criterion');\n }\n if (decision.contract.requiredEvidence.some(ref => !decision.candidate.evidenceRefs.includes(ref))) {\n throw new Error('Gated acceptance is missing required evidence');\n }\n}\n\nfunction assertDecisionBindings(\n input: WorkroomAcceptanceDecisionInput,\n decision: WorkroomAcceptanceDecision,\n): void {\n if (decision.version !== 1) throw new Error('Unsupported Acceptance Decision version');\n const candidate = decision.candidate;\n const contract = decision.contract;\n requireStrings([\n candidate.id, candidate.hash, candidate.reportRef, candidate.producerAssignmentId,\n candidate.producerPrincipalId, contract.id, contract.digest, contract.policy.id,\n contract.policy.digest, decision.riskAssessment.id, decision.riskAssessment.factsHash,\n decision.riskAssessment.assessor, decision.decidedBy,\n ]);\n if (candidate.taskKey !== input.task.key || candidate.taskRevision !== input.task.revision) {\n throw new Error('Acceptance Candidate does not match the current Task revision');\n }\n if (candidate.reportRef !== input.task.reportRef\n || candidate.producerAssignmentId !== input.assignment.id\n || candidate.producerPrincipalId !== input.assignment.owner) {\n throw new Error('Acceptance Candidate does not match the completed Assignment');\n }\n if (contract.taskKey !== input.task.key || contract.taskRevision !== input.task.revision) {\n throw new Error('Acceptance Contract does not match the current Task revision');\n }\n assertPinnedAcceptanceContract(contract, input.contract);\n if (!Number.isSafeInteger(contract.revision) || contract.revision < 1\n || !Number.isSafeInteger(contract.policy.revision) || contract.policy.revision < 1) {\n throw new Error('Acceptance Contract and Policy revisions must be positive integers');\n }\n if (decision.riskAssessment.candidateHash !== candidate.hash) {\n throw new Error('Risk Assessment is stale for the Acceptance Candidate');\n }\n assertUniqueStrings(candidate.claimIds, 'candidate claim IDs', true);\n assertUniqueStrings(candidate.evidenceRefs, 'candidate evidence refs');\n assertUniqueStrings(contract.requiredEvidence, 'required evidence refs');\n assertUniqueStrings(decision.acceptedClaimIds, 'accepted claim IDs');\n assertUniqueStrings(decision.rejectedClaimIds, 'rejected claim IDs');\n const criteria = new Set<string>();\n for (const criterion of contract.criteria) {\n requireStrings([criterion.id, criterion.description]);\n if (criteria.has(criterion.id)) throw new Error('Acceptance Contract criterion IDs must be unique');\n criteria.add(criterion.id);\n }\n if (criteria.size === 0) throw new Error('Acceptance Contract requires explicit criteria');\n const checked = new Set<string>();\n for (const result of decision.checkResults) {\n requireStrings([result.id, result.criterionId, result.runner, result.runnerVersion]);\n if (result.candidateHash !== candidate.hash) throw new Error('Check Result is stale for the Acceptance Candidate');\n if (!criteria.has(result.criterionId)) throw new Error('Check Result references an unknown criterion');\n if (checked.has(result.criterionId)) throw new Error('Acceptance Decision has duplicate criterion results');\n checked.add(result.criterionId);\n }\n const claims = new Set(candidate.claimIds);\n for (const claimId of [...decision.acceptedClaimIds, ...decision.rejectedClaimIds]) {\n if (!claims.has(claimId)) throw new Error('Acceptance Decision references an unknown claim');\n }\n if (decision.acceptedClaimIds.some(id => decision.rejectedClaimIds.includes(id))) {\n throw new Error('A claim cannot be both accepted and rejected');\n }\n}\n\nfunction assertSafeAutoAcceptance(decision: WorkroomAcceptanceDecision): void {\n if (decision.route !== 'auto_accept' || decision.riskAssessment.tier !== 'low') {\n throw new Error('Only low-risk candidates may use automatic acceptance');\n }\n if (decision.contract.kind === 'effect_intent') {\n throw new Error('Effect Intents require authorization, not Task acceptance');\n }\n if (decision.contract.criteria.some(criterion => criterion.kind !== 'deterministic')) {\n throw new Error('Judgment criteria require an independent Reviewer');\n }\n const results = new Map(decision.checkResults.map(result => [result.criterionId, result]));\n if (decision.contract.criteria.some(criterion => results.get(criterion.id)?.status !== 'passed')) {\n throw new Error('Automatic acceptance requires every deterministic check to pass');\n }\n if (decision.contract.requiredEvidence.some(ref => !decision.candidate.evidenceRefs.includes(ref))) {\n throw new Error('Automatic acceptance is missing required evidence');\n }\n if (!sameStringSet(decision.acceptedClaimIds, decision.candidate.claimIds)\n || decision.rejectedClaimIds.length > 0) {\n throw new Error('Automatic acceptance must disposition every Candidate claim as accepted');\n }\n if (decision.decidedBy !== `acceptance-policy:${decision.contract.policy.id}`) {\n throw new Error('Acceptance Record decider does not match the pinned Policy snapshot');\n }\n}\n\nfunction freezeCandidate(value: WorkroomAcceptanceCandidate): WorkroomAcceptanceCandidate {\n return Object.freeze({\n ...value,\n claimIds: Object.freeze([...value.claimIds]),\n evidenceRefs: Object.freeze([...value.evidenceRefs]),\n });\n}\n\nexport function freezeAcceptanceContract(value: WorkroomAcceptanceContract): WorkroomAcceptanceContract {\n return Object.freeze({\n ...value,\n policy: Object.freeze({ ...value.policy }),\n criteria: Object.freeze(value.criteria.map(item => Object.freeze({ ...item }))),\n requiredEvidence: Object.freeze([...value.requiredEvidence]),\n });\n}\n\nfunction freezeRisk(value: WorkroomTrustedRiskAssessment): WorkroomTrustedRiskAssessment {\n return Object.freeze({ ...value, sourceRefs: Object.freeze([...value.sourceRefs]) });\n}\n\nfunction freezeChecks(values: readonly WorkroomAcceptanceCheckResult[]): readonly WorkroomAcceptanceCheckResult[] {\n return Object.freeze(values.map(value => Object.freeze({\n ...value,\n evidenceRefs: Object.freeze([...value.evidenceRefs]),\n })));\n}\n\nfunction freezeDecision(value: WorkroomAcceptanceDecision): WorkroomAcceptanceDecision {\n return Object.freeze({\n ...value,\n candidate: freezeCandidate(value.candidate),\n contract: freezeAcceptanceContract(value.contract),\n riskAssessment: freezeRisk(value.riskAssessment),\n checkResults: freezeChecks(value.checkResults),\n acceptedClaimIds: Object.freeze([...value.acceptedClaimIds]),\n rejectedClaimIds: Object.freeze([...value.rejectedClaimIds]),\n ...(value.wait ? {\n wait: Object.freeze({\n ...value.wait,\n allowedActions: Object.freeze([...value.wait.allowedActions]),\n }),\n } : {}),\n ...(value.nextWait ? {\n nextWait: Object.freeze({\n ...value.nextWait,\n allowedActions: Object.freeze([...value.nextWait.allowedActions]),\n }),\n } : {}),\n });\n}\n\nfunction requireStrings(values: readonly unknown[]): void {\n if (values.some(value => typeof value !== 'string' || value.trim().length === 0)) {\n throw new Error('Acceptance Decision contains an empty identifier');\n }\n}\n\nfunction requireString(value: unknown, label: string): string {\n if (typeof value !== 'string' || value.trim().length === 0) throw new Error(`${label} is required`);\n return value;\n}\n\nfunction assertUniqueStrings(values: readonly string[], label: string, required = false): void {\n requireStrings(values);\n if (required && values.length === 0) throw new Error(`${label} must not be empty`);\n if (new Set(values).size !== values.length) throw new Error(`${label} must be unique`);\n}\n\nfunction sameStringSet(left: readonly string[], right: readonly string[]): boolean {\n return left.length === right.length && left.every(value => right.includes(value));\n}\n\nexport function assertPinnedAcceptanceContract(\n actual: WorkroomAcceptanceContract,\n pinned: WorkroomAcceptanceContract,\n): void {\n const matches = actual.id === pinned.id\n && actual.revision === pinned.revision\n && actual.digest === pinned.digest\n && actual.taskKey === pinned.taskKey\n && actual.taskRevision === pinned.taskRevision\n && actual.kind === pinned.kind\n && actual.policy.id === pinned.policy.id\n && actual.policy.revision === pinned.policy.revision\n && actual.policy.digest === pinned.policy.digest\n && JSON.stringify(actual.criteria) === JSON.stringify(pinned.criteria)\n && JSON.stringify(actual.requiredEvidence) === JSON.stringify(pinned.requiredEvidence);\n if (!matches) {\n throw new Error('Acceptance Decision does not match the pinned Contract and Policy snapshot');\n }\n}\n\nfunction failUnpinnedContract(taskKey: string): never {\n throw new Error(`Task ${taskKey} Acceptance Contract is not pinned`);\n}\n\nfunction expectRecord(value: unknown): Record<string, unknown> {\n if (!value || typeof value !== 'object' || Array.isArray(value)) throw new Error('record is required');\n return value as Record<string, unknown>;\n}\n\nfunction expectRecordArray(value: unknown): readonly Record<string, unknown>[] {\n if (!Array.isArray(value)) throw new Error('record array is required');\n return value.map(expectRecord);\n}\n\nfunction expectStringArray(value: unknown): readonly string[] {\n if (!Array.isArray(value) || value.some(item => typeof item !== 'string')) {\n throw new Error('string array is required');\n }\n return value;\n}\n"]}
|
|
@@ -110,4 +110,3 @@ export declare function replayProjectMemoryApplication(projectId: string, events
|
|
|
110
110
|
export declare function createProjectMemoryApplicationEvent(projectId: string, stateRevision: number, projection: WorkroomAcceptedSourceProjection): WorkroomAcceptedSourceApplicationEvent;
|
|
111
111
|
export declare function findExactProjectMemoryApplicationReplay(events: readonly WorkroomAcceptedSourceApplicationEvent[], projection: WorkroomAcceptedSourceProjection): WorkroomAcceptedSourceApplicationEvent | undefined;
|
|
112
112
|
export declare function assertProjectMemoryApplicationEvent(event: WorkroomAcceptedSourceApplicationEvent, projectId: string, expectedRevision: number): void;
|
|
113
|
-
//# sourceMappingURL=accepted-source-memory-application.d.ts.map
|