create-principles-disciple 1.94.0 → 1.96.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/console/dist/server/config/WorkspaceConfigStore.js +2 -1
- package/console/dist/server/config/pd-config-store.d.ts +33 -0
- package/console/dist/server/config/pd-config-store.js +196 -0
- package/console/dist/server/index.js +19 -4
- package/console/dist/server/models/EvidenceChainConsoleModel.d.ts +0 -2
- package/console/dist/server/models/EvidenceChainConsoleModel.js +36 -2
- package/console/dist/server/models/HealthCheckModel.js +5 -3
- package/console/dist/server/models/IntentDecisionModel.d.ts +66 -0
- package/console/dist/server/models/IntentDecisionModel.js +207 -0
- package/console/dist/server/models/IntentPageModel.d.ts +52 -0
- package/console/dist/server/models/IntentPageModel.js +292 -0
- package/console/dist/server/models/PrinciplesConsoleModel.d.ts +2 -0
- package/console/dist/server/models/PrinciplesConsoleModel.js +37 -1
- package/console/dist/server/models/WorkspaceService.d.ts +0 -28
- package/console/dist/server/models/WorkspaceService.js +0 -115
- package/console/dist/server/routes/config.js +55 -1
- package/console/dist/server/routes/intent-decisions.d.ts +33 -0
- package/console/dist/server/routes/intent-decisions.js +499 -0
- package/console/dist/server/routes/intent.d.ts +7 -0
- package/console/dist/server/routes/intent.js +223 -0
- package/console/dist/server/routes/principles.js +67 -1
- package/console/dist/server/routes/update.d.ts +0 -1
- package/console/dist/server/routes/update.js +14 -11
- package/console/dist/types.d.ts +1 -0
- package/console/dist/ui/App.js +2 -60
- package/console/dist/ui/api.d.ts +58 -18
- package/console/dist/ui/api.js +78 -6
- package/console/dist/ui/components/layout/app-sidebar.js +13 -12
- package/console/dist/ui/components/ui/badge.d.ts +1 -1
- package/console/dist/ui/components/ui/button.d.ts +1 -1
- package/console/dist/ui/components/ui/shiny-text.d.ts +28 -0
- package/console/dist/ui/components/ui/shiny-text.js +46 -0
- package/console/dist/ui/i18n/en.json +306 -3
- package/console/dist/ui/i18n/zh-CN.json +306 -3
- package/console/dist/ui/pages/activation/ActivationPage.js +2 -1
- package/console/dist/ui/pages/control-center/AgentCard.d.ts +31 -0
- package/console/dist/ui/pages/control-center/AgentCard.js +156 -0
- package/console/dist/ui/pages/control-center/AgentGroup.d.ts +26 -0
- package/console/dist/ui/pages/control-center/AgentGroup.js +38 -0
- package/console/dist/ui/pages/control-center/ControlCenterPage.js +103 -41
- package/console/dist/ui/pages/control-center/EmpathyObserverCostHint.d.ts +28 -0
- package/console/dist/ui/pages/control-center/EmpathyObserverCostHint.js +38 -0
- package/console/dist/ui/pages/control-center/WorkflowDiagram.d.ts +17 -0
- package/console/dist/ui/pages/control-center/WorkflowDiagram.js +55 -0
- package/console/dist/ui/pages/debt/DebtPage.js +219 -2
- package/console/dist/ui/pages/focus/FocusPage.js +2 -1
- package/console/dist/ui/pages/intent/IntentOnboarding.d.ts +67 -0
- package/console/dist/ui/pages/intent/IntentOnboarding.js +289 -0
- package/console/dist/ui/pages/intent/IntentPage.d.ts +1 -0
- package/console/dist/ui/pages/intent/IntentPage.js +258 -0
- package/console/dist/ui/pages/pain/PainPage.js +234 -4
- package/console/dist/ui/pages/pain/pain-card-helpers.d.ts +75 -0
- package/console/dist/ui/pages/pain/pain-card-helpers.js +78 -0
- package/console/dist/ui/pages/principles/PrinciplesPage.js +2 -1
- package/console/dist/ui/utils/agent-metadata.d.ts +58 -0
- package/console/dist/ui/utils/agent-metadata.js +275 -0
- package/console/dist/ui/utils/control-center-helpers.d.ts +19 -0
- package/console/dist/ui/utils/control-center-helpers.js +37 -0
- package/console/dist/ui/utils/validators.d.ts +200 -0
- package/console/dist/ui/utils/validators.js +563 -0
- package/console/dist/web/assets/app.css +498 -3
- package/console/dist/web/assets/app.js +5063 -1418
- package/console/package.json +3 -0
- package/core/dist/principle-tree-ledger.d.ts +55 -4
- package/core/dist/principle-tree-ledger.d.ts.map +1 -1
- package/core/dist/principle-tree-ledger.js +472 -13
- package/core/dist/principle-tree-ledger.js.map +1 -1
- package/core/dist/prompt-builder/__tests__/prompt-builder-core.test.js +58 -0
- package/core/dist/prompt-builder/__tests__/prompt-builder-core.test.js.map +1 -1
- package/core/dist/prompt-builder/empathy-keyword-matching.d.ts.map +1 -1
- package/core/dist/prompt-builder/empathy-keyword-matching.js +9 -6
- package/core/dist/prompt-builder/empathy-keyword-matching.js.map +1 -1
- package/core/dist/prompt-builder/size-guard.d.ts +1 -0
- package/core/dist/prompt-builder/size-guard.d.ts.map +1 -1
- package/core/dist/prompt-builder/size-guard.js +21 -0
- package/core/dist/prompt-builder/size-guard.js.map +1 -1
- package/core/dist/prompt-builder/types.d.ts +2 -0
- package/core/dist/prompt-builder/types.d.ts.map +1 -1
- package/core/dist/runtime-v2/__tests__/architecture-regression.test.js +143 -65
- package/core/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js +85 -7
- package/core/dist/runtime-v2/__tests__/evaluator-runner-vslice-v2.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js +284 -0
- package/core/dist/runtime-v2/__tests__/evidence-chain-intent-tension.test.js.map +1 -0
- package/core/dist/runtime-v2/__tests__/golden-trace-replay-validator.test.js +70 -0
- package/core/dist/runtime-v2/__tests__/golden-trace-replay-validator.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/golden-trace.test.js +136 -1
- package/core/dist/runtime-v2/__tests__/golden-trace.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/pain-signal-bridge-result-shaping.test.js +105 -0
- package/core/dist/runtime-v2/__tests__/pain-signal-bridge-result-shaping.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js +7 -5
- package/core/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/pi-artifact-store.test.js +11 -0
- package/core/dist/runtime-v2/__tests__/pi-artifact-store.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js +15 -2
- package/core/dist/runtime-v2/__tests__/proven-channel-baseline.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/schema-float-precision.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/schema-float-precision.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/schema-float-precision.test.js +290 -0
- package/core/dist/runtime-v2/__tests__/schema-float-precision.test.js.map +1 -0
- package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.js +158 -0
- package/core/dist/runtime-v2/__tests__/schema-orphan-detection.test.js.map +1 -0
- package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js +211 -0
- package/core/dist/runtime-v2/__tests__/v2-adversarial-cases.test.js.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js +15 -1
- package/core/dist/runtime-v2/activation/__tests__/approval-store-extended.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.d.ts +2 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.js +62 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store-fk.test.js.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js +12 -2
- package/core/dist/runtime-v2/activation/__tests__/sqlite-activation-state-store.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.d.ts +2 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.js +56 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.js.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js +8 -0
- package/core/dist/runtime-v2/activation/__tests__/sqlite-approval-store.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js +20 -0
- package/core/dist/runtime-v2/activation/__tests__/story-a-acceptance.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/sqlite-activation-state-store.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/sqlite-activation-state-store.js +6 -0
- package/core/dist/runtime-v2/activation/sqlite-activation-state-store.js.map +1 -1
- package/core/dist/runtime-v2/activation/sqlite-approval-store.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/sqlite-approval-store.js +86 -32
- package/core/dist/runtime-v2/activation/sqlite-approval-store.js.map +1 -1
- package/core/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js +158 -1
- package/core/dist/runtime-v2/activation/writers/__tests__/rule-host-writer.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.d.ts +11 -0
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.js +55 -11
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js +134 -15
- package/core/dist/runtime-v2/diagnostician/__tests__/diag-rootcause-output.test.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.d.ts +18 -0
- package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.js +251 -0
- package/core/dist/runtime-v2/diagnostician/__tests__/intent-tension-schema.test.js.map +1 -0
- package/core/dist/runtime-v2/diagnostician/__tests__/rootcause-prompt-builder.test.js +73 -0
- package/core/dist/runtime-v2/diagnostician/__tests__/rootcause-prompt-builder.test.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.d.ts +98 -0
- package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.d.ts.map +1 -1
- package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.js +131 -0
- package/core/dist/runtime-v2/diagnostician/diag-rootcause-output.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.d.ts +8 -0
- package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.d.ts.map +1 -1
- package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js +66 -3
- package/core/dist/runtime-v2/diagnostician/rootcause-prompt-builder.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician-output.d.ts +23 -0
- package/core/dist/runtime-v2/diagnostician-output.d.ts.map +1 -1
- package/core/dist/runtime-v2/diagnostician-output.js +16 -0
- package/core/dist/runtime-v2/diagnostician-output.js.map +1 -1
- package/core/dist/runtime-v2/diagnostician-prompt-builder.d.ts +32 -0
- package/core/dist/runtime-v2/diagnostician-prompt-builder.d.ts.map +1 -1
- package/core/dist/runtime-v2/diagnostician-prompt-builder.js.map +1 -1
- package/core/dist/runtime-v2/evidence-triage/source-descriptors.d.ts +1 -1
- package/core/dist/runtime-v2/evidence-triage/source-descriptors.js +1 -1
- package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js +23 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/feature-flag-contract.test.js.map +1 -1
- package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.d.ts +2 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.js +30 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/intent-engineering-flag.test.js.map +1 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.d.ts +2 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.js +74 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/rulecode-context-v2-flag.test.js.map +1 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.d.ts +2 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js +246 -0
- package/core/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js.map +1 -0
- package/core/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
- package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js +9 -0
- package/core/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
- package/core/dist/runtime-v2/feature-flags/index.d.ts +2 -0
- package/core/dist/runtime-v2/feature-flags/index.d.ts.map +1 -1
- package/core/dist/runtime-v2/feature-flags/index.js +2 -0
- package/core/dist/runtime-v2/feature-flags/index.js.map +1 -1
- package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.d.ts.map +1 -1
- package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.js +0 -9
- package/core/dist/runtime-v2/feature-flags/plugin-surface-registry.js.map +1 -1
- package/{plugin/dist/core/surface-guard.d.ts → core/dist/runtime-v2/feature-flags/surface-guard-policy.d.ts} +15 -5
- package/core/dist/runtime-v2/feature-flags/surface-guard-policy.d.ts.map +1 -0
- package/{plugin/dist/core/surface-guard.js → core/dist/runtime-v2/feature-flags/surface-guard-policy.js} +14 -2
- package/core/dist/runtime-v2/feature-flags/surface-guard-policy.js.map +1 -0
- package/core/dist/runtime-v2/golden-trace-replay-validator.js +1 -1
- package/core/dist/runtime-v2/golden-trace-replay-validator.js.map +1 -1
- package/core/dist/runtime-v2/golden-trace.d.ts +19 -3
- package/core/dist/runtime-v2/golden-trace.d.ts.map +1 -1
- package/core/dist/runtime-v2/golden-trace.js +2 -0
- package/core/dist/runtime-v2/golden-trace.js.map +1 -1
- package/core/dist/runtime-v2/index.d.ts +21 -4
- package/core/dist/runtime-v2/index.d.ts.map +1 -1
- package/core/dist/runtime-v2/index.js +21 -3
- package/core/dist/runtime-v2/index.js.map +1 -1
- package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.d.ts +2 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.js +185 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-decision-record.test.js.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.d.ts +2 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.js +88 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc-version.test.js.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.d.ts +2 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.js +181 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-doc.test.js.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.d.ts +2 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.js +168 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-friction-block.test.js.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.d.ts +2 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.js +121 -0
- package/core/dist/runtime-v2/intent/__tests__/intent-patch-proposal.test.js.map +1 -0
- package/core/dist/runtime-v2/intent/index.d.ts +8 -0
- package/core/dist/runtime-v2/intent/index.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/index.js +8 -0
- package/core/dist/runtime-v2/intent/index.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-browser.d.ts +23 -0
- package/core/dist/runtime-v2/intent/intent-browser.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-browser.js +21 -0
- package/core/dist/runtime-v2/intent/intent-browser.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-decision-record.d.ts +125 -0
- package/core/dist/runtime-v2/intent/intent-decision-record.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-decision-record.js +21 -0
- package/core/dist/runtime-v2/intent/intent-decision-record.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc-reader-port.d.ts +95 -0
- package/core/dist/runtime-v2/intent/intent-doc-reader-port.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc-reader-port.js +43 -0
- package/core/dist/runtime-v2/intent/intent-doc-reader-port.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc-version.d.ts +28 -0
- package/core/dist/runtime-v2/intent/intent-doc-version.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc-version.js +21 -0
- package/core/dist/runtime-v2/intent/intent-doc-version.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc.d.ts +35 -0
- package/core/dist/runtime-v2/intent/intent-doc.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-doc.js +158 -0
- package/core/dist/runtime-v2/intent/intent-doc.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-friction-block.d.ts +63 -0
- package/core/dist/runtime-v2/intent/intent-friction-block.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-friction-block.js +129 -0
- package/core/dist/runtime-v2/intent/intent-friction-block.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-hash.d.ts +2 -0
- package/core/dist/runtime-v2/intent/intent-hash.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-hash.js +10 -0
- package/core/dist/runtime-v2/intent/intent-hash.js.map +1 -0
- package/core/dist/runtime-v2/intent/intent-patch-proposal.d.ts +42 -0
- package/core/dist/runtime-v2/intent/intent-patch-proposal.d.ts.map +1 -0
- package/core/dist/runtime-v2/intent/intent-patch-proposal.js +81 -0
- package/core/dist/runtime-v2/intent/intent-patch-proposal.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.d.ts +54 -0
- package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.js +219 -0
- package/core/dist/runtime-v2/internalization/__tests__/__fixtures__/intent-tension-cases.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +41 -1
- package/core/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js +130 -2
- package/core/dist/runtime-v2/internalization/__tests__/artificer-rule-output.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts +2 -0
- package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js +228 -0
- package/core/dist/runtime-v2/internalization/__tests__/behavior-example-pack.test.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +41 -11
- package/core/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.d.ts +2 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.js +360 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-rootcause-intent-tension.test.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.d.ts +2 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.js +333 -0
- package/core/dist/runtime-v2/internalization/__tests__/diag-router-intent-tension.test.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.d.ts +2 -0
- package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.js +113 -0
- package/core/dist/runtime-v2/internalization/__tests__/intent-tension-cases.test.js.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/refiner-sandbox-wrapper.test.js +135 -0
- package/core/dist/runtime-v2/internalization/__tests__/refiner-sandbox-wrapper.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.d.ts +2 -0
- package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.js +449 -0
- package/core/dist/runtime-v2/internalization/__tests__/rule-context-v2.test.js.map +1 -0
- package/core/dist/runtime-v2/internalization/adversarial-case.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/adversarial-case.js +24 -0
- package/core/dist/runtime-v2/internalization/adversarial-case.js.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-output.d.ts +10 -0
- package/core/dist/runtime-v2/internalization/artificer-output.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-output.js +45 -0
- package/core/dist/runtime-v2/internalization/artificer-output.js.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +2 -2
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js +7 -2
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
- package/core/dist/runtime-v2/internalization/behavior-example-pack.d.ts +66 -0
- package/core/dist/runtime-v2/internalization/behavior-example-pack.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/behavior-example-pack.js +183 -0
- package/core/dist/runtime-v2/internalization/behavior-example-pack.js.map +1 -0
- package/core/dist/runtime-v2/internalization/diag-rootcause-runner.d.ts +13 -0
- package/core/dist/runtime-v2/internalization/diag-rootcause-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/diag-rootcause-runner.js +42 -0
- package/core/dist/runtime-v2/internalization/diag-rootcause-runner.js.map +1 -1
- package/core/dist/runtime-v2/internalization/diag-router-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/diag-router-runner.js +27 -0
- package/core/dist/runtime-v2/internalization/diag-router-runner.js.map +1 -1
- package/core/dist/runtime-v2/internalization/evaluator-output.d.ts +8 -0
- package/core/dist/runtime-v2/internalization/evaluator-output.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/evaluator-output.js +10 -0
- package/core/dist/runtime-v2/internalization/evaluator-output.js.map +1 -1
- package/core/dist/runtime-v2/internalization/evaluator-runner.d.ts +17 -0
- package/core/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/evaluator-runner.js +118 -24
- package/core/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js +1 -1
- package/core/dist/runtime-v2/internalization/refiner-sandbox-wrapper.js.map +1 -1
- package/core/dist/runtime-v2/internalization/rule-context-v2.d.ts +61 -0
- package/core/dist/runtime-v2/internalization/rule-context-v2.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/rule-context-v2.js +301 -0
- package/core/dist/runtime-v2/internalization/rule-context-v2.js.map +1 -0
- package/core/dist/runtime-v2/internalization/rule-host-contracts.d.ts +9 -0
- package/core/dist/runtime-v2/internalization/rule-host-contracts.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts +55 -0
- package/core/dist/runtime-v2/internalization/v2-adversarial-cases.d.ts.map +1 -0
- package/core/dist/runtime-v2/internalization/v2-adversarial-cases.js +131 -0
- package/core/dist/runtime-v2/internalization/v2-adversarial-cases.js.map +1 -0
- package/core/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
- package/core/dist/runtime-v2/pain-signal-observability.js +280 -56
- package/core/dist/runtime-v2/pain-signal-observability.js.map +1 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts +12 -0
- package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.js +1 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
- package/core/dist/runtime-v2/pain-to-principle-service.d.ts +6 -0
- package/core/dist/runtime-v2/pain-to-principle-service.d.ts.map +1 -1
- package/core/dist/runtime-v2/pain-to-principle-service.js +2 -0
- package/core/dist/runtime-v2/pain-to-principle-service.js.map +1 -1
- package/core/dist/runtime-v2/principle-tree/ledger-codec.js.map +1 -1
- package/core/dist/runtime-v2/proven-channel-baseline.js +1 -1
- package/core/dist/runtime-v2/proven-channel-baseline.js.map +1 -1
- package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.d.ts +2 -0
- package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.js +95 -0
- package/core/dist/runtime-v2/risk/__tests__/risk-calculator-policy.test.js.map +1 -0
- package/core/dist/runtime-v2/risk/index.d.ts +7 -0
- package/core/dist/runtime-v2/risk/index.d.ts.map +1 -0
- package/core/dist/runtime-v2/risk/index.js +6 -0
- package/core/dist/runtime-v2/risk/index.js.map +1 -0
- package/core/dist/runtime-v2/risk/risk-calculator-policy.d.ts +18 -0
- package/core/dist/runtime-v2/risk/risk-calculator-policy.d.ts.map +1 -0
- package/core/dist/runtime-v2/risk/risk-calculator-policy.js +47 -0
- package/core/dist/runtime-v2/risk/risk-calculator-policy.js.map +1 -0
- package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.d.ts +2 -0
- package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.js +55 -0
- package/core/dist/runtime-v2/store/artifact/__tests__/sqlite-pi-artifact-store-fk.test.js.map +1 -0
- package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.d.ts.map +1 -1
- package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js +6 -0
- package/core/dist/runtime-v2/store/artifact/sqlite-pi-artifact-store.js.map +1 -1
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.d.ts +2 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.js +272 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-decision-store.test.js.map +1 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.d.ts +2 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.js +83 -0
- package/core/dist/runtime-v2/store/intent/__tests__/sqlite-intent-doc-version-store.test.js.map +1 -0
- package/core/dist/runtime-v2/store/intent/index.d.ts +7 -0
- package/core/dist/runtime-v2/store/intent/index.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/intent/index.js +6 -0
- package/core/dist/runtime-v2/store/intent/index.js.map +1 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.d.ts +51 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.js +306 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-decision-store.js.map +1 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.d.ts +28 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.js +88 -0
- package/core/dist/runtime-v2/store/intent/sqlite-intent-doc-version-store.js.map +1 -0
- package/core/dist/runtime-v2/store/sqlite-connection-pragma.test.js +14 -3
- package/core/dist/runtime-v2/store/sqlite-connection-pragma.test.js.map +1 -1
- package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.d.ts +2 -0
- package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.js +72 -0
- package/core/dist/runtime-v2/store/sqlite-connection-schema-version.test.js.map +1 -0
- package/core/dist/runtime-v2/store/sqlite-connection.d.ts +27 -0
- package/core/dist/runtime-v2/store/sqlite-connection.d.ts.map +1 -1
- package/core/dist/runtime-v2/store/sqlite-connection.js +138 -12
- package/core/dist/runtime-v2/store/sqlite-connection.js.map +1 -1
- package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts +2 -0
- package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js +149 -0
- package/core/dist/runtime-v2/thinking-models/__tests__/thinking-models-policy.test.js.map +1 -0
- package/core/dist/runtime-v2/thinking-models/index.d.ts +3 -0
- package/core/dist/runtime-v2/thinking-models/index.d.ts.map +1 -0
- package/core/dist/runtime-v2/thinking-models/index.js +3 -0
- package/core/dist/runtime-v2/thinking-models/index.js.map +1 -0
- package/core/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts +73 -0
- package/core/dist/runtime-v2/thinking-models/thinking-models-policy.d.ts.map +1 -0
- package/core/dist/runtime-v2/thinking-models/thinking-models-policy.js +227 -0
- package/core/dist/runtime-v2/thinking-models/thinking-models-policy.js.map +1 -0
- package/core/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js +40 -1
- package/core/dist/runtime-v2/tools/__tests__/artificer-l2-tool-contract.test.js.map +1 -1
- package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
- package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.js +28 -1
- package/core/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
- package/core/dist/runtime-v2/tools/artificer-output-typebox.d.ts +3 -0
- package/core/dist/runtime-v2/tools/artificer-output-typebox.d.ts.map +1 -1
- package/core/dist/runtime-v2/tools/artificer-output-typebox.js +3 -0
- package/core/dist/runtime-v2/tools/artificer-output-typebox.js.map +1 -1
- package/core/dist/runtime-v2/types/event-payload.d.ts +1 -20
- package/core/dist/runtime-v2/types/event-payload.d.ts.map +1 -1
- package/core/dist/runtime-v2/types/event-payload.js +0 -12
- package/core/dist/runtime-v2/types/event-payload.js.map +1 -1
- package/core/dist/runtime-v2/types/event-types.d.ts +5 -34
- package/core/dist/runtime-v2/types/event-types.d.ts.map +1 -1
- package/core/dist/runtime-v2/types/event-types.js +0 -19
- package/core/dist/runtime-v2/types/event-types.js.map +1 -1
- package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts +63 -0
- package/core/dist/runtime-v2/types/evidence-chain-contract.d.ts.map +1 -1
- package/core/dist/runtime-v2/types/evidence-chain-contract.js +234 -9
- package/core/dist/runtime-v2/types/evidence-chain-contract.js.map +1 -1
- package/core/dist/runtime-v2/types/index.d.ts +5 -5
- package/core/dist/runtime-v2/types/index.d.ts.map +1 -1
- package/core/dist/runtime-v2/types/index.js +5 -3
- package/core/dist/runtime-v2/types/index.js.map +1 -1
- package/core/dist/runtime-v2/types/ledger-store.d.ts +30 -30
- package/core/dist/runtime-v2/types/ledger-store.d.ts.map +1 -1
- package/core/dist/runtime-v2/types/ledger-store.js +10 -5
- package/core/dist/runtime-v2/types/ledger-store.js.map +1 -1
- package/core/dist/workflow-funnel-loader.d.ts +2 -2
- package/core/dist/workflow-funnel-loader.d.ts.map +1 -1
- package/core/package.json +4 -0
- package/dist/installer.d.ts.map +1 -1
- package/dist/installer.js +16 -0
- package/dist/installer.js.map +1 -1
- package/package.json +1 -1
- package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.d.ts +9 -0
- package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.d.ts.map +1 -0
- package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.js +237 -0
- package/pd-cli/dist/commands/__tests__/intent-flag-wiring.test.js.map +1 -0
- package/pd-cli/dist/commands/intent.d.ts +76 -0
- package/pd-cli/dist/commands/intent.d.ts.map +1 -0
- package/pd-cli/dist/commands/intent.js +411 -0
- package/pd-cli/dist/commands/intent.js.map +1 -0
- package/pd-cli/dist/commands/runtime-init.d.ts +43 -0
- package/pd-cli/dist/commands/runtime-init.d.ts.map +1 -0
- package/pd-cli/dist/commands/runtime-init.js +264 -0
- package/pd-cli/dist/commands/runtime-init.js.map +1 -0
- package/pd-cli/dist/index.js +25 -0
- package/pd-cli/dist/index.js.map +1 -1
- package/pd-cli/dist/services/demo-story-a-runner.d.ts.map +1 -1
- package/pd-cli/dist/services/demo-story-a-runner.js +6 -0
- package/pd-cli/dist/services/demo-story-a-runner.js.map +1 -1
- package/pd-cli/package.json +1 -0
- package/plugin/dist/commands/pain.js +2 -0
- package/plugin/dist/core/behavior-example-pack-assembler.d.ts +43 -0
- package/plugin/dist/core/behavior-example-pack-assembler.js +247 -0
- package/plugin/dist/core/control-ui-db.d.ts +11 -0
- package/plugin/dist/core/control-ui-db.js +40 -16
- package/plugin/dist/core/event-log.js +0 -5
- package/plugin/dist/core/intent-doc-reader-adapter.d.ts +36 -0
- package/plugin/dist/core/intent-doc-reader-adapter.js +76 -0
- package/plugin/dist/core/intent-doc-reader.d.ts +89 -0
- package/plugin/dist/core/intent-doc-reader.js +210 -0
- package/plugin/dist/core/principle-tree-ledger.d.ts +27 -79
- package/plugin/dist/core/principle-tree-ledger.js +39 -524
- package/plugin/dist/core/reflection/reflection-context.d.ts +2 -2
- package/plugin/dist/core/rule-context-assembler.d.ts +45 -0
- package/plugin/dist/core/rule-context-assembler.js +148 -0
- package/plugin/dist/core/thinking-models.d.ts +12 -57
- package/plugin/dist/core/thinking-models.js +18 -224
- package/plugin/dist/core/trajectory-types.d.ts +18 -0
- package/plugin/dist/core/trajectory.d.ts +50 -2
- package/plugin/dist/core/trajectory.js +435 -254
- package/plugin/dist/core/workspace-context.d.ts +2 -3
- package/plugin/dist/hooks/gate.js +59 -2
- package/plugin/dist/hooks/pain.js +5 -0
- package/plugin/dist/hooks/prompt-helpers.d.ts +19 -1
- package/plugin/dist/hooks/prompt-helpers.js +39 -2
- package/plugin/dist/hooks/prompt-types.d.ts +8 -0
- package/plugin/dist/hooks/prompt.js +81 -21
- package/plugin/dist/index.d.ts +3 -1
- package/plugin/dist/index.js +10 -6
- package/plugin/dist/service/runtime-summary-service.js +1 -1
- package/plugin/dist/service/subagent-workflow/workflow-store.d.ts +14 -0
- package/plugin/dist/service/subagent-workflow/workflow-store.js +91 -2
- package/plugin/dist/types/event-types.d.ts +1 -1
- package/plugin/package.json +6 -3
- package/plugin/scripts/acceptance-test.mjs +3 -3
- package/plugin/dist/core/evolution-migration.d.ts +0 -5
- package/plugin/dist/core/evolution-migration.js +0 -65
- package/plugin/dist/core/principle-tree-ledger-adapter.d.ts +0 -32
- package/plugin/dist/core/principle-tree-ledger-adapter.js +0 -125
- package/plugin/dist/core/risk-calculator.d.ts +0 -22
- package/plugin/dist/core/risk-calculator.js +0 -88
- package/plugin/dist/core/rule-host-helpers.d.ts +0 -8
- package/plugin/dist/core/rule-host-helpers.js +0 -7
- package/plugin/dist/core/rule-host-types.d.ts +0 -7
- package/plugin/dist/core/rule-host-types.js +0 -7
- package/plugin/dist/core/schema/db-types.d.ts +0 -11
- package/plugin/dist/core/schema/db-types.js +0 -5
- package/plugin/dist/core/schema/index.d.ts +0 -17
- package/plugin/dist/core/schema/index.js +0 -15
- package/plugin/dist/core/schema/migration-runner.d.ts +0 -53
- package/plugin/dist/core/schema/migration-runner.js +0 -170
- package/plugin/dist/core/schema/migrations/001-init-trajectory.d.ts +0 -6
- package/plugin/dist/core/schema/migrations/001-init-trajectory.js +0 -190
- package/plugin/dist/core/schema/migrations/002-init-central.d.ts +0 -5
- package/plugin/dist/core/schema/migrations/002-init-central.js +0 -108
- package/plugin/dist/core/schema/migrations/003-init-workflow.d.ts +0 -5
- package/plugin/dist/core/schema/migrations/003-init-workflow.js +0 -50
- package/plugin/dist/core/schema/migrations/004-add-thinking-and-gfi.d.ts +0 -8
- package/plugin/dist/core/schema/migrations/004-add-thinking-and-gfi.js +0 -66
- package/plugin/dist/core/schema/migrations/index.d.ts +0 -16
- package/plugin/dist/core/schema/migrations/index.js +0 -27
- package/plugin/dist/core/schema/schema-definitions.d.ts +0 -46
- package/plugin/dist/core/schema/schema-definitions.js +0 -599
- package/plugin/dist/service/central-database.d.ts +0 -138
- package/plugin/dist/service/central-database.js +0 -731
- package/plugin/dist/service/central-sync-service.d.ts +0 -8
- package/plugin/dist/service/central-sync-service.js +0 -71
- package/plugin/scripts/db-migrate.mjs +0 -170
- package/plugin/scripts/validate-live-path.ts +0 -462
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { mkdtempSync, rmSync } from 'fs';
|
|
2
|
+
import { tmpdir } from 'os';
|
|
3
|
+
import { join } from 'path';
|
|
4
|
+
import { describe, expect, it, afterEach } from 'vitest';
|
|
5
|
+
import { SqliteConnection } from '../../store/sqlite-connection.js';
|
|
6
|
+
import { SqliteApprovalQueueStore } from '../sqlite-approval-store.js';
|
|
7
|
+
const tempDirs = [];
|
|
8
|
+
afterEach(() => {
|
|
9
|
+
for (const dir of tempDirs.splice(0)) {
|
|
10
|
+
try {
|
|
11
|
+
rmSync(dir, { recursive: true, force: true });
|
|
12
|
+
}
|
|
13
|
+
catch { /* best-effort */ }
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
function makeConnection() {
|
|
17
|
+
const dir = mkdtempSync(join(tmpdir(), 'pd-approval-fk-'));
|
|
18
|
+
tempDirs.push(dir);
|
|
19
|
+
return new SqliteConnection(dir);
|
|
20
|
+
}
|
|
21
|
+
function insertTask(db, taskId) {
|
|
22
|
+
db.prepare("INSERT INTO tasks (task_id, task_kind, status, created_at, updated_at) VALUES (?, 'diagnosis', 'pending', ?, ?)").run(taskId, '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z');
|
|
23
|
+
}
|
|
24
|
+
function insertPiArtifact(db, artifactId, sourceTaskId) {
|
|
25
|
+
db.prepare(`INSERT INTO pi_artifacts (artifact_id, artifact_kind, source_task_id, lineage_artifact_ids, validation_status, content_json, created_at, updated_at)
|
|
26
|
+
VALUES (?, 'principle', ?, '[]', 'pending', '{}', ?, ?)`).run(artifactId, sourceTaskId, '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z');
|
|
27
|
+
}
|
|
28
|
+
describe('SqliteApprovalQueueStore FK validation (P1-3)', () => {
|
|
29
|
+
it('throws when enqueue references non-existent pi_artifact', async () => {
|
|
30
|
+
const conn = makeConnection();
|
|
31
|
+
conn.getDb(); // trigger initSchema
|
|
32
|
+
const store = new SqliteApprovalQueueStore(conn);
|
|
33
|
+
const input = {
|
|
34
|
+
artifactId: 'non_existent_artifact',
|
|
35
|
+
channel: 'code_tool_hook',
|
|
36
|
+
riskLevel: 'high',
|
|
37
|
+
};
|
|
38
|
+
await expect(store.enqueue(input, '2026-01-01T00:00:00Z')).rejects.toThrow(/approvals\.artifact_id references non-existent pi_artifact/);
|
|
39
|
+
});
|
|
40
|
+
it('succeeds when parent pi_artifact exists', async () => {
|
|
41
|
+
const conn = makeConnection();
|
|
42
|
+
const db = conn.getDb();
|
|
43
|
+
insertTask(db, 'task_001');
|
|
44
|
+
insertPiArtifact(db, 'art_001', 'task_001');
|
|
45
|
+
const store = new SqliteApprovalQueueStore(conn);
|
|
46
|
+
const input = {
|
|
47
|
+
artifactId: 'art_001',
|
|
48
|
+
channel: 'code_tool_hook',
|
|
49
|
+
riskLevel: 'high',
|
|
50
|
+
};
|
|
51
|
+
const record = await store.enqueue(input, '2026-01-01T00:00:00Z');
|
|
52
|
+
expect(record.artifactId).toBe('art_001');
|
|
53
|
+
expect(record.status).toBe('pending');
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
//# sourceMappingURL=sqlite-approval-store-fk.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite-approval-store-fk.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/sqlite-approval-store-fk.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,14 @@ describe('SqliteApprovalQueueStore', () => {
|
|
|
14
14
|
beforeEach(() => {
|
|
15
15
|
connection = createTestConnection();
|
|
16
16
|
store = new SqliteApprovalQueueStore(connection);
|
|
17
|
+
// P1-3: Seed parent records for FK validation (task + pi_artifacts)
|
|
18
|
+
// Each artifact uses a distinct source_task_id to satisfy the unique index
|
|
19
|
+
// idx_pi_artifacts_idempotency (source_task_id, artifact_kind).
|
|
20
|
+
const db = connection.getDb();
|
|
21
|
+
db.prepare("INSERT INTO tasks (task_id, task_kind, status, created_at, updated_at) VALUES ('task-1', 'diagnosis', 'pending', '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z')").run();
|
|
22
|
+
db.prepare("INSERT INTO tasks (task_id, task_kind, status, created_at, updated_at) VALUES ('task-2', 'diagnosis', 'pending', '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z')").run();
|
|
23
|
+
db.prepare("INSERT INTO pi_artifacts (artifact_id, artifact_kind, source_task_id, lineage_artifact_ids, validation_status, content_json, created_at, updated_at) VALUES ('art-1', 'principle', 'task-1', '[]', 'pending', '{}', '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z')").run();
|
|
24
|
+
db.prepare("INSERT INTO pi_artifacts (artifact_id, artifact_kind, source_task_id, lineage_artifact_ids, validation_status, content_json, created_at, updated_at) VALUES ('art-2', 'principle', 'task-2', '[]', 'pending', '{}', '2026-01-01T00:00:00Z', '2026-01-01T00:00:00Z')").run();
|
|
17
25
|
});
|
|
18
26
|
afterEach(() => {
|
|
19
27
|
connection?.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-approval-store.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/sqlite-approval-store.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,SAAS,oBAAoB;IAC3B,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAC3E,OAAO,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,IAAI,UAAU,GAAG,IAAmC,CAAC;IACrD,IAAI,KAAK,GAAG,IAA2C,CAAC;IAExD,UAAU,CAAC,GAAG,EAAE;QACd,UAAU,GAAG,oBAAoB,EAAE,CAAC;QACpC,KAAK,GAAG,IAAI,wBAAwB,CAAC,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite-approval-store.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/sqlite-approval-store.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -140,6 +140,15 @@ function makeArtifactReadModel(artifacts) {
|
|
|
140
140
|
getArtifactById: async (id) => map.get(id) ?? null,
|
|
141
141
|
};
|
|
142
142
|
}
|
|
143
|
+
// P1-3: Seed artifact to DB for FK validation (approvals.artifact_id → pi_artifacts).
|
|
144
|
+
// Tests use in-memory artifactReadModel for the dispatcher, but the SQLite
|
|
145
|
+
// approvalStore.enqueue() now checks pi_artifacts table at FK level.
|
|
146
|
+
function seedArtifactToDb(ws, artifact) {
|
|
147
|
+
const db = ws.connection.getDb();
|
|
148
|
+
db.prepare("INSERT OR IGNORE INTO tasks (task_id, task_kind, status, created_at, updated_at) VALUES (?, 'diagnosis', 'pending', ?, ?)").run(artifact.sourceTaskId, artifact.createdAt, artifact.createdAt);
|
|
149
|
+
db.prepare(`INSERT OR IGNORE INTO pi_artifacts (artifact_id, artifact_kind, source_task_id, source_principle_id, source_rule_id, lineage_artifact_ids, validation_status, content_json, created_at, updated_at)
|
|
150
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(artifact.artifactId, artifact.artifactKind, artifact.sourceTaskId, artifact.sourcePrincipleId ?? null, artifact.sourceRuleId ?? null, JSON.stringify(artifact.lineageArtifactIds), artifact.validationStatus, artifact.contentJson, artifact.createdAt, artifact.updatedAt);
|
|
151
|
+
}
|
|
143
152
|
// ── Acceptance Tests ────────────────────────────────────────────────────────
|
|
144
153
|
describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', () => {
|
|
145
154
|
let ws;
|
|
@@ -155,6 +164,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
155
164
|
// Step 1: Capture pain (simulated as a validated principle artifact)
|
|
156
165
|
const principleArtifact = createPrincipleArtifact();
|
|
157
166
|
const artifactReadModel = makeArtifactReadModel([principleArtifact]);
|
|
167
|
+
seedArtifactToDb(ws, principleArtifact);
|
|
158
168
|
// Step 2: Compress to understandable principle (artifact already represents this)
|
|
159
169
|
// Step 3: Owner approves
|
|
160
170
|
const enqueued = await ws.approvalStore.enqueue({
|
|
@@ -209,6 +219,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
209
219
|
// Step 1-2: Pain → principle → rule artifact (validated)
|
|
210
220
|
const ruleArtifact = createRuleArtifact();
|
|
211
221
|
const artifactReadModel = makeArtifactReadModel([ruleArtifact]);
|
|
222
|
+
seedArtifactToDb(ws, ruleArtifact);
|
|
212
223
|
// Step 3: Owner approves (code_tool_hook is high-risk, requires approval)
|
|
213
224
|
const enqueued = await ws.approvalStore.enqueue({
|
|
214
225
|
artifactId: ruleArtifact.artifactId,
|
|
@@ -252,6 +263,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
252
263
|
it('rejected approval cannot be activated by ApprovalCompletionService', async () => {
|
|
253
264
|
const artifact = createPrincipleArtifact();
|
|
254
265
|
const artifactReadModel = makeArtifactReadModel([artifact]);
|
|
266
|
+
seedArtifactToDb(ws, artifact);
|
|
255
267
|
const enqueued = await ws.approvalStore.enqueue({
|
|
256
268
|
artifactId: artifact.artifactId,
|
|
257
269
|
channel: 'prompt',
|
|
@@ -282,9 +294,12 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
282
294
|
const originalArtifact = createPrincipleArtifact({ artifactId: 'art-original' });
|
|
283
295
|
const editedArtifact = createPrincipleArtifact({
|
|
284
296
|
artifactId: 'art-edited',
|
|
297
|
+
sourceTaskId: 'task-pain-001-edit',
|
|
285
298
|
contentJson: JSON.stringify({ text: 'Edited: Always read first', language: 'en' }),
|
|
286
299
|
});
|
|
287
300
|
const artifactReadModel = makeArtifactReadModel([originalArtifact, editedArtifact]);
|
|
301
|
+
seedArtifactToDb(ws, originalArtifact);
|
|
302
|
+
seedArtifactToDb(ws, editedArtifact);
|
|
288
303
|
const enqueued = await ws.approvalStore.enqueue({
|
|
289
304
|
artifactId: originalArtifact.artifactId,
|
|
290
305
|
channel: 'prompt',
|
|
@@ -329,6 +344,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
329
344
|
it('calling completeApproval twice produces only one activation', async () => {
|
|
330
345
|
const artifact = createPrincipleArtifact();
|
|
331
346
|
const artifactReadModel = makeArtifactReadModel([artifact]);
|
|
347
|
+
seedArtifactToDb(ws, artifact);
|
|
332
348
|
const enqueued = await ws.approvalStore.enqueue({
|
|
333
349
|
artifactId: artifact.artifactId,
|
|
334
350
|
channel: 'prompt',
|
|
@@ -391,6 +407,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
391
407
|
sourcePrincipleId: 'principle-B',
|
|
392
408
|
});
|
|
393
409
|
const artifactReadModel = makeArtifactReadModel([artifact1, artifact2]);
|
|
410
|
+
seedArtifactToDb(ws, artifact1);
|
|
394
411
|
// Approve and activate artifact1
|
|
395
412
|
const enqueued1 = await ws.approvalStore.enqueue({
|
|
396
413
|
artifactId: artifact1.artifactId,
|
|
@@ -421,6 +438,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
421
438
|
contentJson: '{invalid json content',
|
|
422
439
|
});
|
|
423
440
|
const artifactReadModel = makeArtifactReadModel([malformedArtifact]);
|
|
441
|
+
seedArtifactToDb(ws, malformedArtifact);
|
|
424
442
|
const enqueued = await ws.approvalStore.enqueue({
|
|
425
443
|
artifactId: malformedArtifact.artifactId,
|
|
426
444
|
channel: 'code_tool_hook',
|
|
@@ -448,6 +466,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
448
466
|
it('after rollback, listCodeToolHookActivations excludes the deactivated rule', async () => {
|
|
449
467
|
const ruleArtifact = createRuleArtifact();
|
|
450
468
|
const artifactReadModel = makeArtifactReadModel([ruleArtifact]);
|
|
469
|
+
seedArtifactToDb(ws, ruleArtifact);
|
|
451
470
|
const enqueued = await ws.approvalStore.enqueue({
|
|
452
471
|
artifactId: ruleArtifact.artifactId,
|
|
453
472
|
channel: 'code_tool_hook',
|
|
@@ -482,6 +501,7 @@ describe('Story A Acceptance Test (PRI-408) — unsplippable production loop', (
|
|
|
482
501
|
it('approval record artifactId matches the activated artifact', async () => {
|
|
483
502
|
const artifact = createPrincipleArtifact();
|
|
484
503
|
const artifactReadModel = makeArtifactReadModel([artifact]);
|
|
504
|
+
seedArtifactToDb(ws, artifact);
|
|
485
505
|
const enqueued = await ws.approvalStore.enqueue({
|
|
486
506
|
artifactId: artifact.artifactId,
|
|
487
507
|
channel: 'prompt',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"story-a-acceptance.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/story-a-acceptance.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,EACZ,kBAAkB,EAClB,cAAc,EACd,wBAAwB,EACxB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,gBAAgB,CAAC;AAgBxB,SAAS,mBAAmB;IAC1B,MAAM,MAAM,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvC,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,UAAU,GAAG,IAAI,gBAAgB,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC;IAClE,sDAAsD;IACtD,UAAU,CAAC,KAAK,EAAE,CAAC;IAEnB,MAAM,aAAa,GAAG,IAAI,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,IAAI,0BAA0B,CAAC,UAAU,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAE5D,OAAO;QACL,YAAY,EAAE,MAAM;QACpB,UAAU;QACV,aAAa;QACb,UAAU;QACV,aAAa;QACb,OAAO,EAAE,GAAG,EAAE;YACZ,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;KACF,CAAC;AACJ,CAAC;AAED,+EAA+E;AAE/E,SAAS,uBAAuB,CAAC,YAAyC,EAAE;IAC1E,OAAO;QACL,UAAU,EAAE,mBAAmB;QAC/B,YAAY,EAAE,WAAW;QACzB,YAAY,EAAE,eAAe;QAC7B,iBAAiB,EAAE,eAAe;QAClC,kBAAkB,EAAE,EAAE;QACtB,gBAAgB,EAAE,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC;YAC1B,IAAI,EAAE,qEAAqE;YAC3E,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,SAAS,EAAE,0BAA0B;QACrC,SAAS,EAAE,0BAA0B;QACrC,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,YAAyC,EAAE;IACrE,OAAO;QACL,UAAU,EAAE,cAAc;QAC1B,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,eAAe;QAC7B,iBAAiB,EAAE,eAAe;QAClC,YAAY,EAAE,UAAU;QACxB,kBAAkB,EAAE,CAAC,mBAAmB,CAAC;QACzC,gBAAgB,EAAE,WAAW;QAC7B,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC;YAC1B,kBAAkB,EAAE;;;;;;;;CAQzB;YACK,WAAW,EAAE;gBACX,OAAO,EAAE,WAAW;gBACpB,OAAO,EAAE,CAAC;gBACV,SAAS,EAAE,0BAA0B;gBACrC,KAAK,EAAE;oBACL;wBACE,MAAM,EAAE,YAAY;wBACpB,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,MAAM;wBAChB,MAAM,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE;wBACnC,gBAAgB,EAAE,OAAO;qBAC1B;oBACD;wBACE,MAAM,EAAE,YAAY;wBACpB,IAAI,EAAE,UAAU;wBAChB,QAAQ,EAAE,MAAM;wBAChB,MAAM,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;wBACrC,gBAAgB,EAAE,OAAO;qBAC1B;iBACF;aACF;YACD,oBAAoB,EAAE,iBAAiB;YACvC,aAAa,EAAE,CAAC,MAAM,CAAC;SACxB,CAAC;QACF,SAAS,EAAE,0BAA0B;QACrC,SAAS,EAAE,0BAA0B;QACrC,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,iBAA0F,EAC1F,UAAsC,EACtC,aAAuC;IAEvC,OAAO,IAAI,oBAAoB,CAC7B,iBAAiB,EACjB,UAAU,EACV;QACE,OAAO,EAAE;YACP,IAAI,YAAY,EAAE;YAClB,IAAI,cAAc,CAAC,EAAE,QAAQ,EAAE,wBAAwB,EAAE,EAAE,CAAC;YAC5D,IAAI,kBAAkB,EAAE;SACzB;QACD,kBAAkB,EAAE,aAAa;KAClC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,SAA+B;IAG5D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO;QACL,eAAe,EAAE,KAAK,EAAE,EAAU,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI;KAC3D,CAAC;AACJ,CAAC;AAED,+EAA+E;AAE/E,QAAQ,CAAC,kEAAkE,EAAE,GAAG,EAAE;IAChF,IAAI,EAAiB,CAAC;IAEtB,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,GAAG,mBAAmB,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,OAAO,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,QAAQ,CAAC,iFAAiF,EAAE,GAAG,EAAE;QAC/F,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,qEAAqE;YACrE,MAAM,iBAAiB,GAAG,uBAAuB,EAAE,CAAC;YACpD,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAErE,kFAAkF;YAClF,yBAAyB;YACzB,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,iBAAiB,CAAC,UAAU;gBACxC,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;gBAChB,OAAO,EAAE,6DAA6D;gBACtE,aAAa,EAAE,sBAAsB;aACtC,EAAE,0BAA0B,CAAC,CAAC;YAE/B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAExC,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;YACnG,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpC,qDAAqD;YACrD,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBAChE,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;gBACxB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC7D,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;YACtD,CAAC;YAED,sDAAsD;YACtD,MAAM,cAAc,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAClF,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;YACjF,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACxC,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YACxE,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEnD,oEAAoE;YACpE,MAAM,iBAAiB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YACtE,MAAM,CAAC,iBAAiB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAE5E,8BAA8B;YAC9B,MAAM,aAAa,GAAG,0BAA0B,CAAC;YACjD,MAAM,YAAY,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC;YACxD,MAAM,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CACzD,YAAsB,EACtB,aAAa,CACd,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE9B,mFAAmF;YACnF,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YACxE,MAAM,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAE5C,mEAAmE;YACnE,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAClE,MAAM,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACzC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,yDAAyD;YACzD,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;YAC1C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YAEhE,0EAA0E;YAC1E,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,OAAO,EAAE,gBAAgB;gBACzB,SAAS,EAAE,MAAM;gBACjB,OAAO,EAAE,6BAA6B;gBACtC,aAAa,EAAE,sBAAsB;aACtC,EAAE,0BAA0B,CAAC,CAAC;YAE/B,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACvF,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEpC,iEAAiE;YACjE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBAChE,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;gBACxB,kEAAkE;gBAClE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC7D,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAC9D,CAAC;YAED,kDAAkD;YAClD,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC;YAC9E,MAAM,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YAEzE,yBAAyB;YACzB,MAAM,CAAC,UAAU,CAAC,GAAG,mBAAmB,CAAC;YACzC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CACxD,UAAuC,CAAC,YAAY,EACrD,0BAA0B,CAC3B,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE9B,2DAA2D;YAC3D,MAAM,mBAAmB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC;YAC9E,MAAM,CAAC,mBAAmB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAE7E,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;QAC/C,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;YAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;aACjB,EAAE,0BAA0B,CAAC,CAAC;YAE/B,MAAM,YAAY,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;YACtG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEnC,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBAChE,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC;gBACzB,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACpD,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;gBACtD,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;YACpD,CAAC;YAED,4BAA4B;YAC5B,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;QACvD,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;YACjF,MAAM,cAAc,GAAG,uBAAuB,CAAC;gBAC7C,UAAU,EAAE,YAAY;gBACxB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;aACnF,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC;YAEpF,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,gBAAgB,CAAC,UAAU;gBACvC,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;aACjB,EAAE,0BAA0B,CAAC,CAAC;YAE/B,gDAAgD;YAChD,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;gBAC7C,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,QAAQ,EAAE,WAAW;gBACrB,aAAa,EAAE,cAAc,CAAC,UAAU;gBACxC,UAAU,EAAE,wBAAwB;gBACpC,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEjC,wDAAwD;YACxD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACrE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAE3D,6BAA6B;YAC7B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEjE,mEAAmE;YACnE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7B,6DAA6D;YAC7D,MAAM,cAAc,GAAG,kBAAkB,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC/E,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;YAC3E,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAE/D,6DAA6D;YAC7D,MAAM,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC9E,MAAM,kBAAkB,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAChF,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACzD,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;YAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;aACjB,EAAE,0BAA0B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEjE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,mBAAmB;YACnB,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACrD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE5B,gCAAgC;YAChC,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC7D,CAAC;YAED,oCAAoC;YACpC,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;QACnD,EAAE,CAAC,0EAA0E,EAAE,KAAK,IAAI,EAAE;YACxF,6DAA6D;YAC7D,qEAAqE;YACrE,kDAAkD;YAElD,MAAM,SAAS,GAAG;gBAChB,2BAA2B,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE;aAChD,CAAC;YACF,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,EAAE,qBAAqB,EAAE,8BAA8B,CAAC,CAAC;YACvG,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAElC,sEAAsE;YACtE,kEAAkE;YAClE,sEAAsE;YACtE,kDAAkD;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;YAC/F,MAAM,MAAM,GAAG,qBAAqB,CAAC,EAAE,EAAE,qBAAqB,EAAE,8BAA8B,CAAC,CAAC;YAChG,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC;YACtD,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;QAC7C,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,SAAS,GAAG,uBAAuB,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;YACnE,MAAM,SAAS,GAAG,uBAAuB,CAAC;gBACxC,UAAU,EAAE,OAAO;gBACnB,iBAAiB,EAAE,aAAa;aACjC,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YAExE,iCAAiC;YACjC,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC/C,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;aACjB,EAAE,0BAA0B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAElE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACvC,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,qCAAqC;YACrC,MAAM,IAAI,GAAG,kBAAkB,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAChE,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAClE,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,CAAC;YAE/B,6BAA6B;YAC7B,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAChE,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAChD,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;gBAChD,WAAW,EAAE,uBAAuB;aACrC,CAAC,CAAC;YACH,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAErE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,iBAAiB,CAAC,UAAU;gBACxC,OAAO,EAAE,gBAAgB;gBACzB,SAAS,EAAE,MAAM;aAClB,EAAE,0BAA0B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEjE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YAEH,wFAAwF;YACxF,yFAAyF;YACzF,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,MAAM,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACrF,CAAC;YAED,4BAA4B;YAC5B,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;QAC9D,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;YAC1C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;YAEhE,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,OAAO,EAAE,gBAAgB;gBACzB,SAAS,EAAE,MAAM;aAClB,EAAE,0BAA0B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEjE,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7B,kCAAkC;YAClC,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC;YACzE,MAAM,CAAC,cAAc,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAEvC,WAAW;YACX,MAAM,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC;YACpC,MAAM,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;YACjC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CACxD,UAAuC,CAAC,YAAY,EACrD,0BAA0B,CAC3B,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE9B,2DAA2D;YAC3D,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,2BAA2B,EAAE,CAAC;YACxE,MAAM,CAAC,aAAa,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAEtC,4EAA4E;YAC5E,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAC3D,UAAuC,CAAC,YAAY,EACrD,0BAA0B,CAC3B,CAAC;YACF,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uEAAuE,EAAE,GAAG,EAAE;QACrF,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,QAAQ,GAAG,uBAAuB,EAAE,CAAC;YAC3C,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE5D,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC;gBAC9C,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO,EAAE,QAAQ;gBACjB,SAAS,EAAE,KAAK;aACjB,EAAE,0BAA0B,CAAC,CAAC;YAC/B,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAEjE,mDAAmD;YACnD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAEvC,MAAM,UAAU,GAAG,0BAA0B,CAAC,iBAAiB,EAAE,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC;YAClG,MAAM,iBAAiB,GAAG,IAAI,yBAAyB,CACrD,EAAE,CAAC,aAAa,EAChB,UAAU,EACV,EAAE,CAAC,UAAU,CACd,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC;gBACtD,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE;gBAC7C,GAAG,EAAE,0BAA0B;aAChC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE7B,uEAAuE;YACvE,MAAM,cAAc,GAAG,kBAAkB,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YACzE,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC;YAC3E,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"story-a-acceptance.test.js","sourceRoot":"","sources":["../../../../src/runtime-v2/activation/__tests__/story-a-acceptance.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-activation-state-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAoDtE,qBAAa,0BAA2B,YAAW,wBAAwB;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAWnF,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite-activation-state-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC9F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAoDtE,qBAAa,0BAA2B,YAAW,wBAAwB;IAC7D,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAWnF,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;IA2B/D,qBAAqB,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAiBpF,2BAA2B,CAAC,kBAAkB,UAAQ,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAiB1F,kBAAkB,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAkBvD,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAS1F"}
|
|
@@ -60,6 +60,12 @@ export class SqliteActivationStateStore {
|
|
|
60
60
|
}
|
|
61
61
|
async recordActivation(record) {
|
|
62
62
|
const db = this.connection.getDb();
|
|
63
|
+
// P1-3: Application-layer FK check (DB-layer FK deferred to post-MVP table rebuild).
|
|
64
|
+
// Fail loud if artifact_id references non-existent pi_artifact (ERR-009/ERR-010/ERR-002).
|
|
65
|
+
const artifactExists = db.prepare('SELECT 1 FROM pi_artifacts WHERE artifact_id = ?').get(record.artifactId);
|
|
66
|
+
if (!artifactExists) {
|
|
67
|
+
throw new Error(`activations.artifact_id references non-existent pi_artifact: ${record.artifactId}`);
|
|
68
|
+
}
|
|
63
69
|
db.prepare(`
|
|
64
70
|
INSERT OR REPLACE INTO activations
|
|
65
71
|
(activation_id, idempotency_key, artifact_id, channel, action, target_ref, activated_at, deactivated_at)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-activation-state-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sqlite-activation-state-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-activation-state-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAId,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"sqlite-approval-store.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAClB,cAAc,EACd,aAAa,EAId,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAuHtE,qBAAa,wBAAyB,YAAW,kBAAkB;IACrD,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,gBAAgB;IAEnD,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAmC1E,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAM3D,WAAW,CAAC,MAAM,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAU/D,OAAO,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAoB/D,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC;IAUvC,OAAO,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAgB9F,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,EAAE,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,WAAW,GAAG,cAAc,CAAA;KAAE,CAAC;IAS9G,IAAI,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAgBtE"}
|
|
@@ -1,3 +1,66 @@
|
|
|
1
|
+
function isRecord(value) {
|
|
2
|
+
return value !== null && typeof value === 'object' && !Array.isArray(value);
|
|
3
|
+
}
|
|
4
|
+
function readStringField(row, key) {
|
|
5
|
+
if (!Object.hasOwn(row, key))
|
|
6
|
+
return null;
|
|
7
|
+
const val = row[key];
|
|
8
|
+
return typeof val === 'string' ? val : null;
|
|
9
|
+
}
|
|
10
|
+
function readOptionalStringField(row, key) {
|
|
11
|
+
if (!Object.hasOwn(row, key))
|
|
12
|
+
return undefined;
|
|
13
|
+
const val = row[key];
|
|
14
|
+
if (val === null)
|
|
15
|
+
return undefined;
|
|
16
|
+
return typeof val === 'string' ? val : undefined;
|
|
17
|
+
}
|
|
18
|
+
function readOptionalNumberField(row, key) {
|
|
19
|
+
if (!Object.hasOwn(row, key))
|
|
20
|
+
return undefined;
|
|
21
|
+
const val = row[key];
|
|
22
|
+
if (val === null)
|
|
23
|
+
return undefined;
|
|
24
|
+
return typeof val === 'number' ? val : undefined;
|
|
25
|
+
}
|
|
26
|
+
// Validates an unknown DB row and maps to ApprovalRecord.
|
|
27
|
+
// Follows sqlite-activation-state-store.ts pattern (ERR-001 safe: no `as` cast on .get() result).
|
|
28
|
+
function mapRowToRecord(row) {
|
|
29
|
+
if (!isRecord(row))
|
|
30
|
+
return null;
|
|
31
|
+
const approvalId = readStringField(row, 'approval_id');
|
|
32
|
+
const artifactId = readStringField(row, 'artifact_id');
|
|
33
|
+
const channel = readStringField(row, 'channel');
|
|
34
|
+
const riskLevel = readStringField(row, 'risk_level');
|
|
35
|
+
const status = readStringField(row, 'status');
|
|
36
|
+
const requestedAt = readStringField(row, 'requested_at');
|
|
37
|
+
// Required fields must be present and string-typed
|
|
38
|
+
if (!approvalId || !artifactId || !channel || !riskLevel || !status || !requestedAt) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
approvalId,
|
|
43
|
+
artifactId,
|
|
44
|
+
channel: channel,
|
|
45
|
+
riskLevel: riskLevel,
|
|
46
|
+
status: status,
|
|
47
|
+
confidence: readOptionalNumberField(row, 'confidence'),
|
|
48
|
+
requestedAt,
|
|
49
|
+
decidedAt: readOptionalStringField(row, 'decided_at'),
|
|
50
|
+
decidedBy: readOptionalStringField(row, 'decided_by'),
|
|
51
|
+
decisionNote: readOptionalStringField(row, 'decision_note'),
|
|
52
|
+
rejectionReason: readOptionalStringField(row, 'rejection_reason'),
|
|
53
|
+
summary: readOptionalStringField(row, 'summary'),
|
|
54
|
+
triggerReason: readOptionalStringField(row, 'trigger_reason'),
|
|
55
|
+
confidenceExplanation: readOptionalStringField(row, 'confidence_explanation'),
|
|
56
|
+
effectDescription: readOptionalStringField(row, 'effect_description'),
|
|
57
|
+
rejectionEffect: readOptionalStringField(row, 'rejection_effect'),
|
|
58
|
+
editedAt: readOptionalStringField(row, 'edited_at'),
|
|
59
|
+
editedBy: readOptionalStringField(row, 'edited_by'),
|
|
60
|
+
editReason: readOptionalStringField(row, 'edit_reason'),
|
|
61
|
+
previousArtifactId: readOptionalStringField(row, 'previous_artifact_id'),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
1
64
|
function rowToRecord(row) {
|
|
2
65
|
return {
|
|
3
66
|
approvalId: row.approval_id,
|
|
@@ -32,6 +95,12 @@ export class SqliteApprovalQueueStore {
|
|
|
32
95
|
}
|
|
33
96
|
async enqueue(input, now) {
|
|
34
97
|
const db = this.connection.getDb();
|
|
98
|
+
// P1-3: Application-layer FK check (DB-layer FK deferred to post-MVP table rebuild).
|
|
99
|
+
// Fail loud if artifact_id references non-existent pi_artifact (ERR-009/ERR-010/ERR-002).
|
|
100
|
+
const artifactExists = db.prepare('SELECT 1 FROM pi_artifacts WHERE artifact_id = ?').get(input.artifactId);
|
|
101
|
+
if (!artifactExists) {
|
|
102
|
+
throw new Error(`approvals.artifact_id references non-existent pi_artifact: ${input.artifactId}`);
|
|
103
|
+
}
|
|
35
104
|
const approvalId = makeApprovalId(input.artifactId, input.channel);
|
|
36
105
|
db.prepare('INSERT OR IGNORE INTO approvals' +
|
|
37
106
|
' (approval_id, artifact_id, channel, risk_level, status, confidence, requested_at,' +
|
|
@@ -102,41 +171,31 @@ export class SqliteApprovalQueueStore {
|
|
|
102
171
|
}
|
|
103
172
|
async approve(approvalId, decidedBy, note) {
|
|
104
173
|
const db = this.connection.getDb();
|
|
105
|
-
const existing = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(approvalId);
|
|
106
|
-
if (!existing)
|
|
107
|
-
return { ok: false, error: 'not_found' };
|
|
108
|
-
if (existing.status !== 'pending') {
|
|
109
|
-
return { ok: false, error: 'already_decided', status: existing.status };
|
|
110
|
-
}
|
|
111
174
|
const now = new Date().toISOString();
|
|
112
|
-
|
|
113
|
-
|
|
175
|
+
// Single atomic statement: UPDATE + RETURNING eliminates the race window
|
|
176
|
+
// between UPDATE and subsequent SELECT (ERR-015 stale state pattern).
|
|
177
|
+
const record = mapRowToRecord(db.prepare("UPDATE approvals SET status = 'approved', decided_at = ?, decided_by = ?, decision_note = ? WHERE approval_id = ? AND status = 'pending' RETURNING *").get(now, decidedBy, note ?? null, approvalId));
|
|
178
|
+
if (!record) {
|
|
114
179
|
const fresh = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(approvalId);
|
|
115
180
|
if (!fresh)
|
|
116
181
|
return { ok: false, error: 'not_found' };
|
|
117
182
|
return { ok: false, error: 'already_decided', status: fresh.status };
|
|
118
183
|
}
|
|
119
|
-
|
|
120
|
-
return { ok: true, record: rowToRecord(row) };
|
|
184
|
+
return { ok: true, record };
|
|
121
185
|
}
|
|
122
186
|
async reject(approvalId, decidedBy, reason) {
|
|
123
187
|
const db = this.connection.getDb();
|
|
124
|
-
const existing = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(approvalId);
|
|
125
|
-
if (!existing)
|
|
126
|
-
return { ok: false, error: 'not_found' };
|
|
127
|
-
if (existing.status !== 'pending') {
|
|
128
|
-
return { ok: false, error: 'already_decided', status: existing.status };
|
|
129
|
-
}
|
|
130
188
|
const now = new Date().toISOString();
|
|
131
|
-
|
|
132
|
-
|
|
189
|
+
// Single atomic statement: UPDATE + RETURNING eliminates the race window
|
|
190
|
+
// between UPDATE and subsequent SELECT (ERR-015 stale state pattern).
|
|
191
|
+
const record = mapRowToRecord(db.prepare("UPDATE approvals SET status = 'rejected', decided_at = ?, decided_by = ?, rejection_reason = ? WHERE approval_id = ? AND status = 'pending' RETURNING *").get(now, decidedBy, reason, approvalId));
|
|
192
|
+
if (!record) {
|
|
133
193
|
const fresh = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(approvalId);
|
|
134
194
|
if (!fresh)
|
|
135
195
|
return { ok: false, error: 'not_found' };
|
|
136
196
|
return { ok: false, error: 'already_decided', status: fresh.status };
|
|
137
197
|
}
|
|
138
|
-
|
|
139
|
-
return { ok: true, record: rowToRecord(row) };
|
|
198
|
+
return { ok: true, record };
|
|
140
199
|
}
|
|
141
200
|
async resetToPending(approvalId) {
|
|
142
201
|
const db = this.connection.getDb();
|
|
@@ -150,23 +209,18 @@ export class SqliteApprovalQueueStore {
|
|
|
150
209
|
}
|
|
151
210
|
async edit(input) {
|
|
152
211
|
const db = this.connection.getDb();
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
// Atomic UPDATE: derive previous_artifact_id from the current DB value
|
|
160
|
-
// to prevent lineage drift during concurrent edits (ERR-004/ERR-008).
|
|
161
|
-
const updateResult = db.prepare("UPDATE approvals SET previous_artifact_id = artifact_id, artifact_id = ?, edited_at = ?, edited_by = ?, edit_reason = ? WHERE approval_id = ? AND status = 'pending'").run(input.newArtifactId, input.now, input.editedBy, input.editReason, input.approvalId);
|
|
162
|
-
if (updateResult.changes === 0) {
|
|
212
|
+
// Single atomic statement: UPDATE + RETURNING eliminates the race window
|
|
213
|
+
// between UPDATE and subsequent SELECT (ERR-015 stale state pattern).
|
|
214
|
+
// Derives previous_artifact_id from current DB value to prevent lineage
|
|
215
|
+
// drift during concurrent edits (ERR-004/ERR-008).
|
|
216
|
+
const record = mapRowToRecord(db.prepare("UPDATE approvals SET previous_artifact_id = artifact_id, artifact_id = ?, edited_at = ?, edited_by = ?, edit_reason = ? WHERE approval_id = ? AND status = 'pending' RETURNING *").get(input.newArtifactId, input.now, input.editedBy, input.editReason, input.approvalId));
|
|
217
|
+
if (!record) {
|
|
163
218
|
const fresh = db.prepare('SELECT status FROM approvals WHERE approval_id = ?').get(input.approvalId);
|
|
164
219
|
if (!fresh)
|
|
165
220
|
return { ok: false, error: 'not_found' };
|
|
166
221
|
return { ok: false, error: 'already_decided', status: fresh.status };
|
|
167
222
|
}
|
|
168
|
-
|
|
169
|
-
return { ok: true, record: rowToRecord(row) };
|
|
223
|
+
return { ok: true, record };
|
|
170
224
|
}
|
|
171
225
|
}
|
|
172
226
|
//# sourceMappingURL=sqlite-approval-store.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sqlite-approval-store.js","sourceRoot":"","sources":["../../../src/runtime-v2/activation/sqlite-approval-store.ts"],"names":[],"mappings":"AAeA,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,eAAe,CAAC,GAA4B,EAAE,GAAW;IAChE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9C,CAAC;AAED,SAAS,uBAAuB,CAAC,GAA4B,EAAE,GAAW;IACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC;AAED,SAAS,uBAAuB,CAAC,GAA4B,EAAE,GAAW;IACxE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACnC,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACnD,CAAC;AAED,0DAA0D;AAC1D,kGAAkG;AAClG,SAAS,cAAc,CAAC,GAAY;IAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAEhC,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,eAAe,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAEzD,mDAAmD;IACnD,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACpF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,UAAU;QACV,UAAU;QACV,OAAO,EAAE,OAAiC;QAC1C,SAAS,EAAE,SAAgC;QAC3C,MAAM,EAAE,MAAwB;QAChC,UAAU,EAAE,uBAAuB,CAAC,GAAG,EAAE,YAAY,CAAC;QACtD,WAAW;QACX,SAAS,EAAE,uBAAuB,CAAC,GAAG,EAAE,YAAY,CAAC;QACrD,SAAS,EAAE,uBAAuB,CAAC,GAAG,EAAE,YAAY,CAAC;QACrD,YAAY,EAAE,uBAAuB,CAAC,GAAG,EAAE,eAAe,CAAC;QAC3D,eAAe,EAAE,uBAAuB,CAAC,GAAG,EAAE,kBAAkB,CAAC;QACjE,OAAO,EAAE,uBAAuB,CAAC,GAAG,EAAE,SAAS,CAAC;QAChD,aAAa,EAAE,uBAAuB,CAAC,GAAG,EAAE,gBAAgB,CAAC;QAC7D,qBAAqB,EAAE,uBAAuB,CAAC,GAAG,EAAE,wBAAwB,CAAC;QAC7E,iBAAiB,EAAE,uBAAuB,CAAC,GAAG,EAAE,oBAAoB,CAAC;QACrE,eAAe,EAAE,uBAAuB,CAAC,GAAG,EAAE,kBAAkB,CAAC;QACjE,QAAQ,EAAE,uBAAuB,CAAC,GAAG,EAAE,WAAW,CAAC;QACnD,QAAQ,EAAE,uBAAuB,CAAC,GAAG,EAAE,WAAW,CAAC;QACnD,UAAU,EAAE,uBAAuB,CAAC,GAAG,EAAE,aAAa,CAAC;QACvD,kBAAkB,EAAE,uBAAuB,CAAC,GAAG,EAAE,sBAAsB,CAAC;KACzE,CAAC;AACJ,CAAC;AAyBD,SAAS,WAAW,CAAC,GAAgB;IACnC,OAAO;QACL,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,UAAU,EAAE,GAAG,CAAC,WAAW;QAC3B,OAAO,EAAE,GAAG,CAAC,OAAiC;QAC9C,SAAS,EAAE,GAAG,CAAC,UAAiC;QAChD,MAAM,EAAE,GAAG,CAAC,MAAwB;QACpC,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACvC,WAAW,EAAE,GAAG,CAAC,YAAY;QAC7B,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACtC,SAAS,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;QACtC,YAAY,EAAE,GAAG,CAAC,aAAa,IAAI,SAAS;QAC5C,eAAe,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;QAClD,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,SAAS;QACjC,aAAa,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;QAC9C,qBAAqB,EAAE,GAAG,CAAC,sBAAsB,IAAI,SAAS;QAC9D,iBAAiB,EAAE,GAAG,CAAC,kBAAkB,IAAI,SAAS;QACtD,eAAe,EAAE,GAAG,CAAC,gBAAgB,IAAI,SAAS;QAClD,QAAQ,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;QACpC,QAAQ,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;QACpC,UAAU,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS;QACxC,kBAAkB,EAAE,GAAG,CAAC,oBAAoB,IAAI,SAAS;KAC1D,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,UAAkB,EAAE,OAA+B;IACzE,OAAO,MAAM,GAAG,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC;AAC7C,CAAC;AAED,MAAM,OAAO,wBAAwB;IACN;IAA7B,YAA6B,UAA4B;QAA5B,eAAU,GAAV,UAAU,CAAkB;IAAG,CAAC;IAE7D,KAAK,CAAC,OAAO,CAAC,KAA2B,EAAE,GAAW;QACpD,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,qFAAqF;QACrF,0FAA0F;QAC1F,MAAM,cAAc,GAAG,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5G,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACb,8DAA8D,KAAK,CAAC,UAAU,EAAE,CACjF,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACnE,EAAE,CAAC,OAAO,CACR,iCAAiC;YAC/B,oFAAoF;YACpF,yFAAyF;YACzF,8CAA8C,CACjD,CAAC,GAAG,CACH,UAAU,EACV,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,SAAS,EACf,SAAS,EACT,KAAK,CAAC,UAAU,IAAI,IAAI,EACxB,GAAG,EACH,KAAK,CAAC,OAAO,IAAI,IAAI,EACrB,KAAK,CAAC,aAAa,IAAI,IAAI,EAC3B,KAAK,CAAC,qBAAqB,IAAI,IAAI,EACnC,KAAK,CAAC,iBAAiB,IAAI,IAAI,EAC/B,KAAK,CAAC,eAAe,IAAI,IAAI,CAC9B,CAAC;QACF,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAA4B,CAAC;QACnH,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,iDAAiD,GAAG,UAAU,CAAC,CAAC;QAC1F,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAkB;QAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,UAAU,CAA4B,CAAC;QACnH,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,MAAuB;QACvC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,IAAI,GAAG,GAAG,kDAAkD,CAAC;QAC7D,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YAAC,GAAG,IAAI,kBAAkB,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAChF,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;YAAC,GAAG,IAAI,qBAAqB,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;QACvF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAkB,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QAClF,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACrF,IAAI,GAAG,GAAG,yBAAyB,CAAC;QACpC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAAC,GAAG,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAC3E,GAAG,IAAI,6BAA6B,CAAC;QACrC,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,MAAM,EAAE,QAAQ,IAAI,CAAC,CAAC;QACvC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;YACrC,GAAG,IAAI,mBAAmB,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAkB,CAAC;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC,GAAG,EAAuC,CAAC;QACpI,MAAM,KAAK,GAAkB,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QACpF,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;gBAAC,KAAK,CAAC,GAAG,CAAC,MAA6B,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC;YAAC,CAAC;QAClF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,UAAkB,EAAE,SAAiB,EAAE,IAAa;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,OAAO,CACtC,sJAAsJ,CACvJ,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,IAAI,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;YACjI,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAwB,EAAE,CAAC;QACzF,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,UAAkB,EAAE,SAAiB,EAAE,MAAc;QAChE,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,OAAO,CACtC,yJAAyJ,CAC1J,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;YACjI,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAwB,EAAE,CAAC;QACzF,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAkB;QACrC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,UAAU,CAAmC,CAAC;QACpI,IAAI,CAAC,QAAQ;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;QACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;QAChF,EAAE,CAAC,OAAO,CAAC,mJAAmJ,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChL,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAwB;QACjC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnC,yEAAyE;QACzE,sEAAsE;QACtE,wEAAwE;QACxE,mDAAmD;QACnD,MAAM,MAAM,GAAG,cAAc,CAAC,EAAE,CAAC,OAAO,CACtC,kLAAkL,CACnL,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;QAC3F,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,oDAAoD,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAmC,CAAC;YACvI,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;YACrD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAwB,EAAE,CAAC;QACzF,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;CACF"}
|