@oscharko-dev/keiko 0.2.0-beta.4 → 0.2.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -14
- package/dist/ui/csp-hashes.json +16 -21
- package/dist/ui/static/404.html +1 -1
- package/dist/ui/static/__next.__PAGE__.txt +2 -2
- package/dist/ui/static/__next._full.txt +3 -3
- package/dist/ui/static/__next._head.txt +1 -1
- package/dist/ui/static/__next._index.txt +2 -2
- package/dist/ui/static/__next._tree.txt +2 -2
- package/dist/ui/static/_next/static/chunks/0-qhhdvxg2j_y.js +1 -0
- package/dist/ui/static/_next/static/chunks/0ke4ratkgvcxo.css +1 -0
- package/dist/ui/static/_next/static/chunks/0xhu-pfsyvbmx.js +5 -0
- package/dist/ui/static/_next/static/chunks/3vf3oh2-sl2nc.js +1 -0
- package/dist/ui/static/_next/static/chunks/3wmd4-2vznp2g.js +106 -0
- package/dist/ui/static/_next/static/chunks/turbopack-18q50fp2-1qbt.js +1 -0
- package/dist/ui/static/_not-found/__next._full.txt +2 -2
- package/dist/ui/static/_not-found/__next._head.txt +1 -1
- package/dist/ui/static/_not-found/__next._index.txt +2 -2
- package/dist/ui/static/_not-found/__next._not-found.__PAGE__.txt +1 -1
- package/dist/ui/static/_not-found/__next._not-found.txt +1 -1
- package/dist/ui/static/_not-found/__next._tree.txt +2 -2
- package/dist/ui/static/_not-found.html +1 -1
- package/dist/ui/static/_not-found.txt +2 -2
- package/dist/ui/static/index.html +1 -1
- package/dist/ui/static/index.txt +3 -3
- package/dist/ui/static/launch/__next._full.txt +3 -3
- package/dist/ui/static/launch/__next._head.txt +1 -1
- package/dist/ui/static/launch/__next._index.txt +2 -2
- package/dist/ui/static/launch/__next._tree.txt +2 -2
- package/dist/ui/static/launch/__next.launch.__PAGE__.txt +2 -2
- package/dist/ui/static/launch/__next.launch.txt +1 -1
- package/dist/ui/static/launch.html +1 -1
- package/dist/ui/static/launch.txt +3 -3
- package/dist/ui/static/local-knowledge/__next._full.txt +3 -3
- package/dist/ui/static/local-knowledge/__next._head.txt +1 -1
- package/dist/ui/static/local-knowledge/__next._index.txt +2 -2
- package/dist/ui/static/local-knowledge/__next._tree.txt +2 -2
- package/dist/ui/static/local-knowledge/__next.local-knowledge.__PAGE__.txt +2 -2
- package/dist/ui/static/local-knowledge/__next.local-knowledge.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next._full.txt +3 -3
- package/dist/ui/static/local-knowledge/capsule/__next._head.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next._index.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next._tree.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.__PAGE__.txt +2 -2
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.capsule.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule/__next.local-knowledge.txt +1 -1
- package/dist/ui/static/local-knowledge/capsule.html +1 -1
- package/dist/ui/static/local-knowledge/capsule.txt +3 -3
- package/dist/ui/static/local-knowledge.html +1 -1
- package/dist/ui/static/local-knowledge.txt +3 -3
- package/dist/ui/static/memoriaviva/__next._full.txt +6 -6
- package/dist/ui/static/memoriaviva/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/__next.memoriaviva.__PAGE__.txt +4 -4
- package/dist/ui/static/memoriaviva/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next._full.txt +4 -4
- package/dist/ui/static/memoriaviva/consolidation/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.__PAGE__.txt +2 -2
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.consolidation.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/consolidation.html +1 -1
- package/dist/ui/static/memoriaviva/consolidation.txt +4 -4
- package/dist/ui/static/memoriaviva/detail/__next._full.txt +6 -6
- package/dist/ui/static/memoriaviva/detail/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/detail/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/detail/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.__PAGE__.txt +4 -4
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.detail.txt +1 -1
- package/dist/ui/static/memoriaviva/detail/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/detail.html +1 -1
- package/dist/ui/static/memoriaviva/detail.txt +6 -6
- package/dist/ui/static/memoriaviva/review-queue/__next._full.txt +4 -4
- package/dist/ui/static/memoriaviva/review-queue/__next._head.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue/__next._index.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next._tree.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.__PAGE__.txt +2 -2
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.review-queue.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue/__next.memoriaviva.txt +1 -1
- package/dist/ui/static/memoriaviva/review-queue.html +1 -1
- package/dist/ui/static/memoriaviva/review-queue.txt +4 -4
- package/dist/ui/static/memoriaviva.html +1 -1
- package/dist/ui/static/memoriaviva.txt +6 -6
- package/node_modules/@oscharko-dev/keiko-cli/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts +24 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/doctor.js +108 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/evaluate.js +7 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/init.js +4 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/install-layout.js +24 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/launcher.js +5 -7
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/lifecycle.js +75 -30
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/memory.js +76 -7
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/run.js +123 -43
- package/node_modules/@oscharko-dev/keiko-cli/dist/runner.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/runner.js +20 -4
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-cli/dist/ui.js +17 -14
- package/node_modules/@oscharko-dev/keiko-cli/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/bff-wire.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/connected-context.js +1 -2
- package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/evidence.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts +12 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts +4 -2
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/index.js +4 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/local-knowledge-validation.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts +13 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-audit-events.js +7 -6
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-internal.js +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-operations.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/memory-workflow-port.js +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts +23 -4
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/bffWire.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/sourceEnvelope.js +26 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts +5 -3
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-contracts/dist/qualityIntelligence/testQualityRubric.js +29 -3
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-contracts/dist/text-safety.js +58 -0
- package/node_modules/@oscharko-dev/keiko-contracts/package.json +5 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/dist/surface-parity.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evaluations/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/candidatesArtifact.js +62 -13
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts +3 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/companionStore.js +31 -11
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts +35 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/schema.js +107 -3
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts +15 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/figmaSnapshot/store.js +248 -36
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts +33 -2
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/manifestSchema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts +34 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/qualityIntelligence/store.js +95 -22
- package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/side-file.js +17 -5
- package/node_modules/@oscharko-dev/keiko-evidence/dist/store.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/store.js +128 -12
- package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-evidence/dist/workflow-evidence.js +1 -3
- package/node_modules/@oscharko-dev/keiko-evidence/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-harness/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-harness/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/capsule-set-lifecycle.js +1 -2
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/composition.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.d.ts +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/index.js +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/model-gateway-answer-generator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/model-gateway-answer-generator.js +7 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/types.js +2 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/extract.js +45 -21
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/media-type.js +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/discovery/walk.js +11 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/dimensions.js +42 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/fixtures.js +34 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/report.js +7 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/runner.js +7 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/evaluations/types.js +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/embedding-batcher.js +121 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/indexing/orchestrator.js +34 -4
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/_internal.js +63 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/docx-parser.js +4 -7
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/html-parser.js +67 -11
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/index.js +3 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/json-parser.js +39 -3
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/null-ocr-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/ocr/ocr-pipeline-parser.js +46 -11
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/parser-test-fixtures.js +2 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/pdf-parser.js +114 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/parsers/xlsx-parser.js +425 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/privacy/retention-applier.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts +9 -4
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/qualityIntelligence/capsuleCorpus.js +11 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/retrieval-runner.js +15 -2
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/scoped-vector-search.js +220 -7
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts +2 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/retrieval/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/source-lifecycle.js +3 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/package.json +4 -2
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/capture-safety.js +17 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/errors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-capture/dist/salience.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-capture/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/_constants.js +5 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/consolidate.js +93 -30
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/stale.js +3 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/dist/types.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-consolidation/package.json +2 -2
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/forget.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/dist/types.js +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-governance/package.json +2 -2
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/context.js +61 -18
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/ranking.js +3 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/retrieve.js +26 -4
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts +9 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-retrieval/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/embeddings.js +21 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/migrate-encrypt.js +24 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/schema.js +27 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/tombstones.js +21 -4
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts +22 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/validate.js +3 -0
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-memory-vault/dist/vault.js +105 -28
- package/node_modules/@oscharko-dev/keiko-memory-vault/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/config.js +83 -69
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts +3 -2
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/embedding.js +20 -16
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/gateway.js +9 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/http.js +29 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/index.js +3 -3
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/normalize.js +22 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-adapter.js +69 -10
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts +20 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/openai-embedding-adapter.js +122 -7
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts +10 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityGate.js +33 -11
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/capabilityMapping.js +21 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/qualityIntelligence/routing.js +2 -13
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/resilience.js +18 -2
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts +5 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/dist/types.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-model-gateway/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts +35 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/assertions.js +74 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/deduplication.js +6 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/a11yBaseline.js +64 -19
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/cleanToScreenIr.js +3 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts +6 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/color.js +22 -9
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts +4 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/emissionPlan.js +28 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/htmlCssAdapter.js +123 -33
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts +7 -4
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/irTypes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/links.js +13 -17
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/navGraph.js +35 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/normalize.js +54 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/screenIrTestBaseline.js +29 -10
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/figma/tokens.js +10 -4
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/requirementExcerpt.js +15 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/staleness.js +162 -6
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts +14 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/testDesignModel.js +50 -12
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/domain/validation.js +4 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/alm.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/alm.js +29 -30
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/markdown.js +34 -5
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/qtest.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/qtest.js +29 -29
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.d.ts +2 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/spreadsheetSafeCsv.js +40 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/traceability.js +12 -9
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/xray.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/adapters/xray.js +6 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/export/textSafety.js +7 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts +10 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/candidateBounds.js +14 -0
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/index.js +3 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/parseGeneratedCandidates.js +97 -50
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/generation/prompt.js +35 -7
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/dist/index.js +2 -2
- package/node_modules/@oscharko-dev/keiko-quality-intelligence/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-sdk/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-sdk/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts +11 -0
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-security/dist/errors/gateway.js +13 -0
- package/node_modules/@oscharko-dev/keiko-security/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/assistant-response.js +12 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-handlers.js +61 -16
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/chat-stream-handlers.js +11 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/conversation-prompt.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts +4 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/deps.js +44 -69
- package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/gateway-setup.js +120 -28
- package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/governed-workflow.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-handoff.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.d.ts +0 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-orchestrator.js +222 -18
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-hybrid.js +118 -23
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa-multi-source.js +57 -22
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/grounded-qa.js +14 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/index.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-grounded-qa.js +11 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/local-knowledge-handlers.js +26 -14
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-audit-handler.js +52 -27
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts +10 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-capture-policy.js +44 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-handlers.js +79 -57
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-consolidation-registry.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conv-handlers.js +6 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-conversation-context.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-diagnostics.js +16 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-handlers.js +538 -87
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts +6 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-maintenance-handlers.js +17 -38
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-retention.js +7 -15
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-salience.js +17 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-scope-sanitizer.js +19 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-target-resolver.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/memory-workflow-port.js +108 -27
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts +4 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/capsuleAdapter.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/connectorErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/connectorErrors.js +11 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/editRoutes.js +62 -7
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/exportRoutes.js +98 -33
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConcurrency.js +2 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts +6 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnector.js +16 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorAudit.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConnectorErrors.js +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaConsent.js +3 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaObservedActions.js +10 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaReadiness.js +11 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaRenderPort.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaScopedPagination.js +71 -10
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotBuilder.js +86 -23
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaSnapshotTypes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaTokenSource.js +4 -3
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/figmaUrl.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figma/index.js +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaCodegenRoutes.js +60 -20
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts +11 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotAdapter.js +144 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts +9 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotOrchestration.js +84 -15
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts +9 -7
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.js +206 -42
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/generationPort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/generationPort.js +12 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.js +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffRoutes.js +41 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/index.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts +3 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/judgePort.js +86 -68
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts +15 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/modelSelection.js +56 -39
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reCheckRoutes.js +382 -75
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.d.ts +5 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/retentionRoutes.js +70 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewRoutes.js +20 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.d.ts +25 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/reviewStore.js +72 -9
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts +3 -2
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runExecution.js +44 -16
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts +7 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runIngestion.js +370 -38
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRegistry.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRegistry.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/runRoutes.js +15 -5
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/traceabilityRoutes.js +36 -4
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/uiRoutes.js +73 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/routes.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/routes.js +20 -6
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/run-engine.js +3 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/run-handlers.js +2 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts +9 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.d.ts.map +1 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/sse-write.js +26 -0
- package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store/chats.js +16 -8
- package/node_modules/@oscharko-dev/keiko-server/dist/store/messages.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store-handlers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/store-handlers.js +4 -1
- package/node_modules/@oscharko-dev/keiko-server/dist/terminal.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-server/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-tools/dist/patch-normalize.js +13 -7
- package/node_modules/@oscharko-dev/keiko-tools/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-verification/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-verification/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/memory.js +16 -18
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/prompt.js +6 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/bug-investigation/workflow.js +3 -3
- package/node_modules/@oscharko-dev/keiko-workflows/dist/governed-handoff.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/planner/anchors.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/planner/anchors.js +68 -0
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/descriptors.d.ts +2 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts +18 -2
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/modelRoutedTestDesign.js +209 -54
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts +4 -4
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/qualityIntelligence/runtimeCommon.js +4 -1
- package/node_modules/@oscharko-dev/keiko-workflows/dist/unit-tests/target-guard.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workflows/package.json +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/.tsbuildinfo +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/discovery.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/discovery.js +34 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.d.ts +1 -0
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/realpath.js +2 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchEntries.js +1 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchLineSelection.js +2 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchMatchers.js +74 -2
- package/node_modules/@oscharko-dev/keiko-workspace/dist/repoSearchRegexSafety.d.ts.map +1 -1
- package/node_modules/@oscharko-dev/keiko-workspace/package.json +1 -1
- package/package.json +23 -6
- package/dist/ui/static/_next/static/chunks/082obv3v03b-9.js +0 -2
- package/dist/ui/static/_next/static/chunks/0uifns067thv8.js +0 -1
- package/dist/ui/static/_next/static/chunks/0x31-j53ab1tt.js +0 -1
- package/dist/ui/static/_next/static/chunks/1t04tfgin0v_g.js +0 -106
- package/dist/ui/static/_next/static/chunks/1v4hrxrm_6_rw.js +0 -1
- package/dist/ui/static/_next/static/chunks/27jktro2p5rq9.js +0 -4
- package/dist/ui/static/_next/static/chunks/2lypy3ewh0r04.js +0 -1
- package/dist/ui/static/_next/static/chunks/32573pyyglqxl.js +0 -1
- package/dist/ui/static/_next/static/chunks/3_t_pzet29qtn.js +0 -1
- package/dist/ui/static/_next/static/chunks/3jgg_oe0iok0l.js +0 -1
- package/dist/ui/static/_next/static/chunks/3o_oia3vsam60.js +0 -1
- package/dist/ui/static/_next/static/chunks/3wr_35f2vg6sd.css +0 -1
- package/dist/ui/static/_next/static/chunks/turbopack-2lg1g6kbsfm0x.js +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.d.ts +0 -6
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.d.ts.map +0 -1
- package/node_modules/@oscharko-dev/keiko-local-knowledge/dist/conversation/scripted-answer-generator.js +0 -49
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_buildManifest.js +0 -0
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_clientMiddlewareManifest.js +0 -0
- /package/dist/ui/static/_next/static/{Hb6brrvZY2nZtizQlYhVt → fQMXe8UmV01bh25WOoIt3}/_ssgManifest.js +0 -0
package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/figmaSnapshotRoutes.js
CHANGED
|
@@ -6,13 +6,15 @@
|
|
|
6
6
|
//
|
|
7
7
|
// POST /api/figma/snapshots — trigger a bounded snapshot-build from a board link
|
|
8
8
|
// GET /api/figma/snapshots/:runId — load a stored snapshot summary for display
|
|
9
|
+
// GET /api/figma/snapshots/:runId/screens/:screenIndex/image
|
|
10
|
+
// — stream a stored, token-free PNG side-file
|
|
9
11
|
//
|
|
10
12
|
// Trigger route:
|
|
11
13
|
// 1. Parses board link → (fileKey, nodeId) — rejects malformed / missing node-id links.
|
|
12
14
|
// 2. Resolves the read-only PAT server-side (vault > config > FIGMA_ACCESS_TOKEN env).
|
|
13
15
|
// 3. Builds a runId, runs connector → cleanScopedNodesToScreenIr → buildFigmaSnapshot → store.
|
|
14
16
|
// 4. Returns a minimal summary (runId, screenCount, skippedCount, reduction hint).
|
|
15
|
-
// No token, no raw IR bytes, no render bytes
|
|
17
|
+
// No token, no raw IR bytes, no render bytes are embedded in the JSON response.
|
|
16
18
|
//
|
|
17
19
|
// Load route reads the stored immutable evidence record and returns a browser-safe
|
|
18
20
|
// projection. No re-contact with Figma.
|
|
@@ -42,25 +44,31 @@
|
|
|
42
44
|
// The coalesced build continues — other waiters (if any) are unaffected and will
|
|
43
45
|
// receive the result when the build settles.
|
|
44
46
|
import { randomUUID } from "node:crypto";
|
|
45
|
-
import {
|
|
46
|
-
import {
|
|
47
|
+
import { STREAMING } from "../routes.js";
|
|
48
|
+
import { currentGatewayConfig, currentGatewayEgressConfig, currentRedactionSecrets, } from "../deps.js";
|
|
49
|
+
import { redact } from "@oscharko-dev/keiko-security";
|
|
50
|
+
import { appendFigmaConnectorAudit, parseFigmaTarget, deriveFigmaScopeRef, observeFigmaRevoke, EXPECTED_FIGMA_SCOPES, FigmaConnectorError, resolveScopedPaginationLimits, } from "./figma/index.js";
|
|
47
51
|
import { governedSnapshotBuild, figmaTokenStoreFor, } from "./figmaSnapshotOrchestration.js";
|
|
48
52
|
import { createNodeFigmaSnapshotStore, } from "@oscharko-dev/keiko-evidence";
|
|
49
53
|
// ─── Error helpers ─────────────────────────────────────────────────────────────
|
|
54
|
+
// Operator-facing scope hint, derived from the single source of truth (figmaConsent.EXPECTED_FIGMA_SCOPES)
|
|
55
|
+
// so the re-key guidance can never drift from the scopes the consent ledger records (#758 AC2).
|
|
56
|
+
const READ_ONLY_SCOPE_HINT = EXPECTED_FIGMA_SCOPES.join(", ");
|
|
50
57
|
const FIGMA_ROUTE_ERROR_MESSAGES = {
|
|
51
|
-
FIGMA_TOKEN_MISSING:
|
|
58
|
+
FIGMA_TOKEN_MISSING: `No Figma PAT is configured. Add one in Keiko config, vault, or FIGMA_ACCESS_TOKEN (read-only scopes: ${READ_ONLY_SCOPE_HINT}).`,
|
|
52
59
|
FIGMA_TOKEN_INVALID: "The configured Figma PAT is invalid. Please rotate the token.",
|
|
53
60
|
FIGMA_TOKEN_EXPIRED: "The configured Figma PAT has expired. Please rotate the token.",
|
|
54
61
|
FIGMA_TOKEN_REVOKED: "The configured Figma PAT has been revoked. Please mint a new token.",
|
|
55
|
-
FIGMA_INSUFFICIENT_SCOPE:
|
|
62
|
+
FIGMA_INSUFFICIENT_SCOPE: `The configured Figma PAT lacks the required read-only scopes (${READ_ONLY_SCOPE_HINT}).`,
|
|
56
63
|
FIGMA_NOT_FOUND: "The Figma board was not found. Check the link and that the PAT can access this file.",
|
|
64
|
+
FIGMA_NOT_READY: "The selected Figma scope is not release-ready. Pin a Figma version, select a Release section, or mark the frame Ready for dev before snapshotting.",
|
|
57
65
|
FIGMA_UPSTREAM_UNAVAILABLE: "Figma API is temporarily unavailable. Please try again.",
|
|
58
66
|
FIGMA_PROXY_EGRESS_FAILED: "The forward proxy rejected the Figma egress request. Check proxy configuration.",
|
|
59
67
|
FIGMA_PROXY_UNREACHABLE: "The configured forward proxy is unreachable. Check proxy host and port settings.",
|
|
60
68
|
FIGMA_PROXY_AUTH_REQUIRED: "The forward proxy requires authentication. Configure proxy credentials or an allow rule.",
|
|
61
69
|
FIGMA_PROXY_BLOCKED_BY_POLICY: "The forward proxy blocked the Figma egress request. Ask the proxy operator to allow api.figma.com.",
|
|
62
70
|
FIGMA_TLS_CA_FAILURE: "The Figma egress TLS certificate could not be verified. Check the configured CA bundle.",
|
|
63
|
-
FIGMA_RATE_LIMITED: "Figma rate-limited the snapshot-build.
|
|
71
|
+
FIGMA_RATE_LIMITED: "Figma rate-limited the snapshot-build. Retry with a narrower Release section or lower the Figma fetch limits before re-running.",
|
|
64
72
|
FIGMA_OVERSIZED_SCOPE: "The selected Figma board section is too large. Select a smaller section (frame or page).",
|
|
65
73
|
FIGMA_RESPONSE_TOO_LARGE: "The Figma API response exceeded the size limit. Select a smaller section.",
|
|
66
74
|
FIGMA_NETWORK_UNREACHABLE: "The outbound request to Figma failed. Check network connectivity and egress policy.",
|
|
@@ -71,6 +79,7 @@ const FIGMA_ROUTE_ERROR_MESSAGES = {
|
|
|
71
79
|
FIGMA_BAD_LINK: "The board link is not a valid Figma URL, or it is missing a node-id " +
|
|
72
80
|
"(section/frame anchor required).",
|
|
73
81
|
FIGMA_SNAPSHOT_NOT_FOUND: "No snapshot was found for this run id.",
|
|
82
|
+
FIGMA_SCREEN_NOT_FOUND: "No captured screen image was found for this snapshot.",
|
|
74
83
|
FIGMA_NO_EVIDENCE_DIR: "The evidence directory is not configured; snapshots cannot be stored.",
|
|
75
84
|
FIGMA_CONSENT_REQUIRED: "Acknowledge the read-only, least-privilege Figma scope before the first snapshot for this board.",
|
|
76
85
|
FIGMA_TOKEN_REVOKED_OK: "The stored Figma PAT was removed.",
|
|
@@ -107,6 +116,8 @@ function figmaStatusForCode(code) {
|
|
|
107
116
|
return 502;
|
|
108
117
|
if (code === "FIGMA_NOT_FOUND")
|
|
109
118
|
return 404;
|
|
119
|
+
if (code === "FIGMA_NOT_READY")
|
|
120
|
+
return 412;
|
|
110
121
|
if (code === "FIGMA_RATE_LIMITED")
|
|
111
122
|
return 429;
|
|
112
123
|
if (code === "FIGMA_OVERSIZED_SCOPE")
|
|
@@ -226,43 +237,100 @@ function recordToSummary(record, coverage, metrics) {
|
|
|
226
237
|
})),
|
|
227
238
|
};
|
|
228
239
|
}
|
|
240
|
+
function persistedAuditCounts(record, metrics) {
|
|
241
|
+
return {
|
|
242
|
+
screens: metrics.screenCount,
|
|
243
|
+
renders: metrics.renderCount,
|
|
244
|
+
skipped: record.skippedScreens.length,
|
|
245
|
+
designTokens: metrics.designTokenCount,
|
|
246
|
+
...(metrics.navGraph !== undefined ? { navTransitions: metrics.navGraph.transitions } : {}),
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
function appendPersistedSnapshotAudit(evidenceDir, result, record, isResnapshot) {
|
|
250
|
+
appendFigmaConnectorAudit({
|
|
251
|
+
scopeRef: result.scopeRef,
|
|
252
|
+
evidenceDir,
|
|
253
|
+
action: isResnapshot ? "resnapshot" : "snapshot",
|
|
254
|
+
outcome: "ok",
|
|
255
|
+
counts: persistedAuditCounts(record, result.metrics),
|
|
256
|
+
now: result.provenance.fetchedAt,
|
|
257
|
+
});
|
|
258
|
+
}
|
|
259
|
+
function appendSnapshotRouteFailureAudit(evidenceDir, result, isResnapshot, errorCode) {
|
|
260
|
+
appendFigmaConnectorAudit({
|
|
261
|
+
scopeRef: result.scopeRef,
|
|
262
|
+
evidenceDir,
|
|
263
|
+
action: isResnapshot ? "resnapshot" : "snapshot",
|
|
264
|
+
outcome: "error",
|
|
265
|
+
errorCode,
|
|
266
|
+
now: result.provenance.fetchedAt,
|
|
267
|
+
});
|
|
268
|
+
}
|
|
229
269
|
// ─── POST /api/figma/snapshots — parse + validate ─────────────────────────────
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
let raw;
|
|
270
|
+
function parseTriggerJson(raw) {
|
|
271
|
+
let parsed;
|
|
233
272
|
try {
|
|
234
|
-
|
|
273
|
+
parsed = JSON.parse(raw);
|
|
235
274
|
}
|
|
236
275
|
catch {
|
|
237
|
-
return
|
|
276
|
+
return undefined;
|
|
238
277
|
}
|
|
239
|
-
|
|
278
|
+
return typeof parsed === "object" && parsed !== null
|
|
279
|
+
? parsed
|
|
280
|
+
: undefined;
|
|
281
|
+
}
|
|
282
|
+
function parseTriggerBoardLink(body) {
|
|
283
|
+
const boardLink = typeof body.boardLink === "string" ? body.boardLink.trim() : "";
|
|
284
|
+
return boardLink.length > 0 && parseFigmaTarget(boardLink) !== null ? boardLink : undefined;
|
|
285
|
+
}
|
|
286
|
+
/** Reads and validates the POST body, returning the board link or an error result. */
|
|
287
|
+
async function parseTriggerBody(req) {
|
|
288
|
+
let raw;
|
|
240
289
|
try {
|
|
241
|
-
|
|
290
|
+
raw = await readBody(req);
|
|
242
291
|
}
|
|
243
292
|
catch {
|
|
244
293
|
return { status: 400, body: figmaErrorBody("FIGMA_BAD_LINK") };
|
|
245
294
|
}
|
|
246
|
-
|
|
295
|
+
const body = parseTriggerJson(raw);
|
|
296
|
+
if (body === undefined) {
|
|
247
297
|
return { status: 400, body: figmaErrorBody("FIGMA_BAD_LINK") };
|
|
248
298
|
}
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
if (boardLink.length === 0 || parseFigmaTarget(boardLink) === null) {
|
|
299
|
+
const boardLink = parseTriggerBoardLink(body);
|
|
300
|
+
if (boardLink === undefined) {
|
|
252
301
|
return { status: 400, body: figmaErrorBody("FIGMA_BAD_LINK") };
|
|
253
302
|
}
|
|
303
|
+
const requestedVersion = typeof body.version === "string" ? parseFigmaVersion(body.version) : undefined;
|
|
304
|
+
const linkVersion = parseFigmaVersionFromLink(boardLink);
|
|
305
|
+
const version = requestedVersion ?? linkVersion;
|
|
254
306
|
return {
|
|
255
307
|
boardLink,
|
|
308
|
+
...(version !== undefined ? { version } : {}),
|
|
256
309
|
// Explicit read-only-scope acknowledgement (#760): records consent BEFORE the first fetch.
|
|
257
310
|
acknowledgeReadOnly: body.acknowledgeReadOnly === true,
|
|
258
311
|
// Audited as a re-snapshot (#759): a fresh, explicit, full scoped re-fetch — never a delta.
|
|
259
312
|
isResnapshot: body.isResnapshot === true,
|
|
260
313
|
};
|
|
261
314
|
}
|
|
315
|
+
const FIGMA_VERSION_PATTERN = /^[A-Za-z0-9._:-]{1,256}$/u;
|
|
316
|
+
function parseFigmaVersion(raw) {
|
|
317
|
+
const value = raw.trim();
|
|
318
|
+
return FIGMA_VERSION_PATTERN.test(value) ? value : undefined;
|
|
319
|
+
}
|
|
320
|
+
function parseFigmaVersionFromLink(boardLink) {
|
|
321
|
+
try {
|
|
322
|
+
const url = new URL(boardLink);
|
|
323
|
+
const raw = url.searchParams.get("version-id") ?? url.searchParams.get("version");
|
|
324
|
+
return raw === null ? undefined : parseFigmaVersion(raw);
|
|
325
|
+
}
|
|
326
|
+
catch {
|
|
327
|
+
return undefined;
|
|
328
|
+
}
|
|
329
|
+
}
|
|
262
330
|
// Deployment-overridable deep scoped-pagination budgets (#837). Operators on a tighter Figma plan can
|
|
263
331
|
// dial concurrency/depth/screen-count down (or up) via env without a code change; an unset or
|
|
264
332
|
// non-positive value falls back to the connector default. Mirrors the #532 KEIKO_GROUNDING_* pattern.
|
|
265
|
-
function figmaPaginationFromEnv(env) {
|
|
333
|
+
export function figmaPaginationFromEnv(env) {
|
|
266
334
|
const readPositiveInt = (raw) => {
|
|
267
335
|
if (raw === undefined)
|
|
268
336
|
return undefined;
|
|
@@ -280,7 +348,7 @@ function figmaPaginationFromEnv(env) {
|
|
|
280
348
|
apply("maxFetchesPerScreen", "KEIKO_FIGMA_MAX_FETCHES_PER_SCREEN");
|
|
281
349
|
apply("maxScreensDeep", "KEIKO_FIGMA_MAX_SCREENS_DEEP");
|
|
282
350
|
apply("fetchConcurrency", "KEIKO_FIGMA_FETCH_CONCURRENCY");
|
|
283
|
-
return overrides;
|
|
351
|
+
return resolveScopedPaginationLimits(overrides);
|
|
284
352
|
}
|
|
285
353
|
/** Default total snapshot-build deadline in milliseconds (10 minutes). */
|
|
286
354
|
const DEFAULT_BUILD_DEADLINE_MS = 600_000;
|
|
@@ -301,12 +369,27 @@ function figmaBuildDeadlineMsFromEnv(env) {
|
|
|
301
369
|
function figmaRequestTimeoutMsFromEnv(env) {
|
|
302
370
|
return readPositiveIntEnv(env.KEIKO_FIGMA_REQUEST_TIMEOUT_MS, DEFAULT_REQUEST_TIMEOUT_MS);
|
|
303
371
|
}
|
|
372
|
+
// F9 observability: a `FIGMA_INTERNAL` 500 is the catch-all for an UNEXPECTED build/persist failure;
|
|
373
|
+
// the coded body is content-free, so on its own an operator cannot tell a transient render-body
|
|
374
|
+
// malformation from a filesystem failure from a genuine bug. Log the redacted cause (class + message,
|
|
375
|
+
// secrets scrubbed) so the incident is diagnosable without ever leaking a token or provider body.
|
|
376
|
+
// Matches the redacted-console.error convention (memory-salience.ts). Only fires for FIGMA_INTERNAL —
|
|
377
|
+
// expected coded errors (consent/auth/rate-limit) stay quiet (they are already audited).
|
|
378
|
+
function logFigmaInternal(stage, err, deps) {
|
|
379
|
+
const name = err instanceof Error ? err.constructor.name : typeof err;
|
|
380
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
381
|
+
// eslint-disable-next-line no-console
|
|
382
|
+
console.error(`figma snapshot-build failed (${stage}): ${name}`, redact(message, currentRedactionSecrets(deps)));
|
|
383
|
+
}
|
|
304
384
|
// Map a thrown error from the governed build to a coded route result: a coded connector error maps to
|
|
305
385
|
// its status (consent-required → 428, auth → 502, rate-limit → 429, …); anything else is a safe 500.
|
|
306
|
-
function figmaErrorResult(err) {
|
|
386
|
+
function figmaErrorResult(err, deps) {
|
|
307
387
|
if (err instanceof FigmaConnectorError) {
|
|
388
|
+
if (err.code === "FIGMA_INTERNAL")
|
|
389
|
+
logFigmaInternal("build", err, deps);
|
|
308
390
|
return { status: figmaStatusForCode(err.code), body: figmaErrorBody(err.code) };
|
|
309
391
|
}
|
|
392
|
+
logFigmaInternal("build", err, deps);
|
|
310
393
|
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
311
394
|
}
|
|
312
395
|
/**
|
|
@@ -314,7 +397,7 @@ function figmaErrorResult(err) {
|
|
|
314
397
|
* transitions (#811 navigation graph) and the deterministic design-tokens artifact (#752, consumed by
|
|
315
398
|
* design-to-code #755) — both hash-neutral and both previously dropped by the route.
|
|
316
399
|
*/
|
|
317
|
-
function persistSnapshot(evidenceDir, runId, result) {
|
|
400
|
+
function persistSnapshot(evidenceDir, runId, result, deps) {
|
|
318
401
|
const store = createNodeFigmaSnapshotStore(evidenceDir);
|
|
319
402
|
try {
|
|
320
403
|
store.record({
|
|
@@ -333,12 +416,21 @@ function persistSnapshot(evidenceDir, runId, result) {
|
|
|
333
416
|
})),
|
|
334
417
|
...(result.snapshot.links !== undefined ? { links: result.snapshot.links } : {}),
|
|
335
418
|
tokens: result.ir.tokens,
|
|
419
|
+
metrics: result.metrics,
|
|
336
420
|
});
|
|
337
421
|
}
|
|
338
|
-
catch {
|
|
422
|
+
catch (e) {
|
|
423
|
+
logFigmaInternal("persist.record", e, deps);
|
|
424
|
+
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
425
|
+
}
|
|
426
|
+
let record;
|
|
427
|
+
try {
|
|
428
|
+
record = store.load(runId);
|
|
429
|
+
}
|
|
430
|
+
catch (e) {
|
|
431
|
+
logFigmaInternal("persist.load", e, deps);
|
|
339
432
|
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
340
433
|
}
|
|
341
|
-
const record = store.load(runId);
|
|
342
434
|
if (record === undefined)
|
|
343
435
|
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
344
436
|
return record;
|
|
@@ -354,12 +446,12 @@ export function makeInFlightMap() {
|
|
|
354
446
|
export function resetInFlightMap() {
|
|
355
447
|
defaultInFlightMap = new Map();
|
|
356
448
|
}
|
|
357
|
-
/** Derive the
|
|
358
|
-
function
|
|
449
|
+
/** Derive the coalescing key (fileKey:nodeId:operation:consent) for the in-flight map. */
|
|
450
|
+
function coalescingKeyFor(boardLink, acknowledgeReadOnly, isResnapshot, version) {
|
|
359
451
|
const target = parseFigmaTarget(boardLink);
|
|
360
452
|
if (target === null)
|
|
361
453
|
return undefined;
|
|
362
|
-
return `${target.fileKey}:${target.nodeId}`;
|
|
454
|
+
return `${target.fileKey}:${target.nodeId}:${version ?? "latest"}:${isResnapshot ? "resnapshot" : "snapshot"}:${acknowledgeReadOnly ? "ack" : "noack"}`;
|
|
363
455
|
}
|
|
364
456
|
// Starts the governed build + persist and removes the map entry on settle.
|
|
365
457
|
// Persist is INSIDE this chain: if a caller's deadline fires but the build later completes,
|
|
@@ -376,19 +468,25 @@ function startCoalescedBuild(scopeKey, inFlight, boardLink, body, evidenceDir, d
|
|
|
376
468
|
env: deps.env,
|
|
377
469
|
now: new Date().toISOString(),
|
|
378
470
|
acknowledgeReadOnly: body.acknowledgeReadOnly,
|
|
471
|
+
version: body.version,
|
|
379
472
|
pagination: figmaPaginationFromEnv(deps.env),
|
|
380
473
|
egress: currentGatewayEgressConfig(deps),
|
|
474
|
+
configToken: currentGatewayConfig(deps)?.figma?.accessToken,
|
|
381
475
|
portOptions: { timeoutMs: figmaRequestTimeoutMsFromEnv(deps.env) },
|
|
476
|
+
deferSuccessAudit: true,
|
|
382
477
|
}, body.isResnapshot);
|
|
383
478
|
}
|
|
384
479
|
catch (err) {
|
|
385
|
-
return figmaErrorResult(err);
|
|
480
|
+
return figmaErrorResult(err, deps);
|
|
386
481
|
}
|
|
387
482
|
const runId = `fs-${randomUUID()}`;
|
|
388
|
-
const stored = persistSnapshot(evidenceDir, runId, result);
|
|
389
|
-
if ("status" in stored)
|
|
483
|
+
const stored = persistSnapshot(evidenceDir, runId, result, deps);
|
|
484
|
+
if ("status" in stored) {
|
|
485
|
+
appendSnapshotRouteFailureAudit(evidenceDir, result, body.isResnapshot, "FIGMA_INTERNAL");
|
|
390
486
|
return stored;
|
|
391
|
-
|
|
487
|
+
}
|
|
488
|
+
appendPersistedSnapshotAudit(evidenceDir, result, stored, body.isResnapshot);
|
|
489
|
+
return { status: 201, body: recordToSummary(stored, result.coverage, stored.metrics) };
|
|
392
490
|
};
|
|
393
491
|
const promise = buildAndPersist().finally(() => {
|
|
394
492
|
inFlight.delete(scopeKey);
|
|
@@ -396,13 +494,20 @@ function startCoalescedBuild(scopeKey, inFlight, boardLink, body, evidenceDir, d
|
|
|
396
494
|
inFlight.set(scopeKey, { promise });
|
|
397
495
|
return promise;
|
|
398
496
|
}
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
setTimeout(() => {
|
|
497
|
+
function makeDeadline(ms) {
|
|
498
|
+
let timerId;
|
|
499
|
+
const promise = new Promise((_resolve, reject) => {
|
|
500
|
+
timerId = setTimeout(() => {
|
|
403
501
|
reject(new FigmaConnectorError("FIGMA_BUILD_TIMEOUT"));
|
|
404
502
|
}, ms);
|
|
503
|
+
timerId.unref();
|
|
405
504
|
});
|
|
505
|
+
return {
|
|
506
|
+
promise,
|
|
507
|
+
clear: () => {
|
|
508
|
+
clearTimeout(timerId);
|
|
509
|
+
},
|
|
510
|
+
};
|
|
406
511
|
}
|
|
407
512
|
// ─── POST /api/figma/snapshots ─────────────────────────────────────────────────
|
|
408
513
|
export async function handleFigmaTriggerSnapshot(ctx, deps, inFlight = defaultInFlightMap) {
|
|
@@ -414,7 +519,7 @@ export async function handleFigmaTriggerSnapshot(ctx, deps, inFlight = defaultIn
|
|
|
414
519
|
if ("status" in bodyResult)
|
|
415
520
|
return bodyResult;
|
|
416
521
|
const body = bodyResult;
|
|
417
|
-
const scopeKey =
|
|
522
|
+
const scopeKey = coalescingKeyFor(body.boardLink, body.acknowledgeReadOnly, body.isResnapshot, body.version);
|
|
418
523
|
if (scopeKey === undefined) {
|
|
419
524
|
// parseTriggerBody already validates the board link; this is a belt-and-suspenders guard.
|
|
420
525
|
return { status: 400, body: figmaErrorBody("FIGMA_BAD_LINK") };
|
|
@@ -425,18 +530,26 @@ export async function handleFigmaTriggerSnapshot(ctx, deps, inFlight = defaultIn
|
|
|
425
530
|
? existing.promise
|
|
426
531
|
: startCoalescedBuild(scopeKey, inFlight, body.boardLink, body, evidenceDir, deps);
|
|
427
532
|
const deadlineMs = figmaBuildDeadlineMsFromEnv(deps.env);
|
|
533
|
+
const deadline = makeDeadline(deadlineMs);
|
|
428
534
|
// Per-waiter race: deadline + client-disconnect both resolve this waiter promptly while the
|
|
429
535
|
// coalesced build (and its persist) continues uninterrupted for other waiters.
|
|
536
|
+
// Named handler so removeListener can target it precisely in the finally block.
|
|
537
|
+
let onClose;
|
|
430
538
|
const disconnectPromise = new Promise((_resolve, reject) => {
|
|
431
|
-
|
|
539
|
+
onClose = () => {
|
|
432
540
|
reject(new FigmaConnectorError("FIGMA_BUILD_TIMEOUT"));
|
|
433
|
-
}
|
|
541
|
+
};
|
|
542
|
+
ctx.req.once("close", onClose);
|
|
434
543
|
});
|
|
435
544
|
try {
|
|
436
|
-
return await Promise.race([buildPromise,
|
|
545
|
+
return await Promise.race([buildPromise, deadline.promise, disconnectPromise]);
|
|
437
546
|
}
|
|
438
547
|
catch (err) {
|
|
439
|
-
return figmaErrorResult(err);
|
|
548
|
+
return figmaErrorResult(err, deps);
|
|
549
|
+
}
|
|
550
|
+
finally {
|
|
551
|
+
deadline.clear();
|
|
552
|
+
ctx.req.removeListener("close", onClose);
|
|
440
553
|
}
|
|
441
554
|
}
|
|
442
555
|
// ─── DELETE /api/figma/token — revoke the stored PAT (#758 rotation/revocation, #760 audit) ───
|
|
@@ -460,7 +573,7 @@ export function handleFigmaRevokeToken(ctx, deps) {
|
|
|
460
573
|
});
|
|
461
574
|
}
|
|
462
575
|
catch (err) {
|
|
463
|
-
return figmaErrorResult(err);
|
|
576
|
+
return figmaErrorResult(err, deps);
|
|
464
577
|
}
|
|
465
578
|
return {
|
|
466
579
|
status: 200,
|
|
@@ -483,7 +596,7 @@ export function handleFigmaLoadSnapshot(ctx, deps) {
|
|
|
483
596
|
const store = createNodeFigmaSnapshotStore(evidenceDir);
|
|
484
597
|
let record;
|
|
485
598
|
try {
|
|
486
|
-
record = store.
|
|
599
|
+
record = store.loadMetadata(runId);
|
|
487
600
|
}
|
|
488
601
|
catch {
|
|
489
602
|
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
@@ -491,5 +604,56 @@ export function handleFigmaLoadSnapshot(ctx, deps) {
|
|
|
491
604
|
if (record === undefined) {
|
|
492
605
|
return { status: 404, body: figmaErrorBody("FIGMA_SNAPSHOT_NOT_FOUND") };
|
|
493
606
|
}
|
|
494
|
-
return { status: 200, body: recordToSummary(record) };
|
|
607
|
+
return { status: 200, body: recordToSummary(record, undefined, record.metrics) };
|
|
608
|
+
}
|
|
609
|
+
// ─── GET /api/figma/snapshots/:runId/screens/:screenIndex/image ──────────────
|
|
610
|
+
function parseScreenIndex(raw) {
|
|
611
|
+
if (raw === undefined || raw.length === 0)
|
|
612
|
+
return undefined;
|
|
613
|
+
const parsed = Number(raw);
|
|
614
|
+
return Number.isInteger(parsed) && parsed >= 0 && String(parsed) === raw ? parsed : undefined;
|
|
615
|
+
}
|
|
616
|
+
function loadSnapshotRecordForImage(evidenceDir, runId) {
|
|
617
|
+
const store = createNodeFigmaSnapshotStore(evidenceDir);
|
|
618
|
+
let record;
|
|
619
|
+
try {
|
|
620
|
+
record = store.load(runId);
|
|
621
|
+
}
|
|
622
|
+
catch {
|
|
623
|
+
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
624
|
+
}
|
|
625
|
+
return record === undefined
|
|
626
|
+
? { status: 404, body: figmaErrorBody("FIGMA_SCREEN_NOT_FOUND") }
|
|
627
|
+
: { store, record };
|
|
628
|
+
}
|
|
629
|
+
export function handleFigmaLoadSnapshotImage(ctx, deps) {
|
|
630
|
+
const evidenceDir = deps.evidenceDir;
|
|
631
|
+
if (evidenceDir === undefined || evidenceDir.length === 0) {
|
|
632
|
+
return { status: 503, body: figmaErrorBody("FIGMA_NO_EVIDENCE_DIR") };
|
|
633
|
+
}
|
|
634
|
+
const runId = ctx.params.runId ?? "";
|
|
635
|
+
const screenIndex = parseScreenIndex(ctx.params.screenIndex);
|
|
636
|
+
if (runId.length === 0 || screenIndex === undefined) {
|
|
637
|
+
return { status: 404, body: figmaErrorBody("FIGMA_SCREEN_NOT_FOUND") };
|
|
638
|
+
}
|
|
639
|
+
const loaded = loadSnapshotRecordForImage(evidenceDir, runId);
|
|
640
|
+
if ("status" in loaded)
|
|
641
|
+
return loaded;
|
|
642
|
+
const screen = loaded.record.screens[screenIndex];
|
|
643
|
+
if (screen === undefined) {
|
|
644
|
+
return { status: 404, body: figmaErrorBody("FIGMA_SCREEN_NOT_FOUND") };
|
|
645
|
+
}
|
|
646
|
+
try {
|
|
647
|
+
const image = loaded.store.loadImage(runId, screen.image);
|
|
648
|
+
ctx.res.statusCode = 200;
|
|
649
|
+
ctx.res.setHeader("Content-Type", image.mimeType);
|
|
650
|
+
ctx.res.setHeader("Content-Length", String(image.byteLength));
|
|
651
|
+
ctx.res.setHeader("Cache-Control", "no-store");
|
|
652
|
+
ctx.res.setHeader("ETag", `"sha256-${image.sha256}"`);
|
|
653
|
+
ctx.res.end(image.bytes);
|
|
654
|
+
return STREAMING;
|
|
655
|
+
}
|
|
656
|
+
catch {
|
|
657
|
+
return { status: 500, body: figmaErrorBody("FIGMA_INTERNAL") };
|
|
658
|
+
}
|
|
495
659
|
}
|
package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/generationPort.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generationPort.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/generationPort.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,iCAAiC,EAGlC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAgB,IAAI,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAK1C;
|
|
1
|
+
{"version":3,"file":"generationPort.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/generationPort.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EACV,iCAAiC,EAGlC,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,SAAgB,IAAI,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAK1C;AAmGD,MAAM,MAAM,kBAAkB,GAC1B,MAAM,GACN;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE,GAC7B;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7C,CAAC;AAsHN,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,kBAAkB,GACzB,iCAAiC,CAMnC"}
|
|
@@ -59,11 +59,22 @@ function scrubEvidenceText(text) {
|
|
|
59
59
|
}
|
|
60
60
|
return out.replace(/<\/?qi-evidence/giu, "[evidence]");
|
|
61
61
|
}
|
|
62
|
+
// Second line of defence behind the structural fence (Issue #284 AC1: "Untrusted content cannot
|
|
63
|
+
// override system or workflow instructions"). After scrubbing, run the natural-language
|
|
64
|
+
// prompt-injection scanner on each evidence block: a detected imperative ("ignore previous
|
|
65
|
+
// instructions", a `system:` role line, a jailbreak token, …) is NOT silently passed through — the
|
|
66
|
+
// block is tagged with the matched pattern names so the model sees the evidence is suspect (it is
|
|
67
|
+
// already DATA, never instructions, per the system prompt). Non-blocking by design: a requirement
|
|
68
|
+
// that legitimately quotes such a phrase must still produce a run, so detection annotates the block
|
|
69
|
+
// rather than failing the run. The pattern names are corpus slugs (`[a-z-]`), inert in an attribute.
|
|
62
70
|
function buildEvidenceBlocks(evidence) {
|
|
63
71
|
return evidence
|
|
64
72
|
.map((e) => {
|
|
65
73
|
const kind = e.kind.replace(/[^a-z0-9-]/giu, "");
|
|
66
|
-
|
|
74
|
+
const scrubbed = scrubEvidenceText(e.text);
|
|
75
|
+
const scan = QualityIntelligenceHardening.scanForPromptInjections(scrubbed);
|
|
76
|
+
const flagged = scan.safe ? "" : ` flagged="prompt-injection:${scan.injections.join(",")}"`;
|
|
77
|
+
return `<qi-evidence index="${String(e.index)}" kind="${kind}"${flagged}>\n${scrubbed}\n</qi-evidence>`;
|
|
67
78
|
})
|
|
68
79
|
.join("\n");
|
|
69
80
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type QiHandoffErrorCode = "QI_HANDOFF_BAD_REQUEST" | "QI_HANDOFF_UNKNOWN_CHAT_MESSAGE" | "QI_HANDOFF_FORBIDDEN_PAYLOAD" | "QI_HANDOFF_INTERNAL";
|
|
1
|
+
export type QiHandoffErrorCode = "QI_HANDOFF_BAD_REQUEST" | "QI_HANDOFF_PAYLOAD_TOO_LARGE" | "QI_HANDOFF_UNKNOWN_CHAT_MESSAGE" | "QI_HANDOFF_FORBIDDEN_PAYLOAD" | "QI_HANDOFF_INTERNAL";
|
|
2
2
|
export interface QiHandoffErrorBody {
|
|
3
3
|
readonly error: {
|
|
4
4
|
readonly code: QiHandoffErrorCode;
|
package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffErrors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoffErrors.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/handoffErrors.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,kBAAkB,GAC1B,wBAAwB,GACxB,iCAAiC,GACjC,8BAA8B,GAC9B,qBAAqB,CAAC;AAE1B,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACjF;
|
|
1
|
+
{"version":3,"file":"handoffErrors.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/handoffErrors.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,kBAAkB,GAC1B,wBAAwB,GACxB,8BAA8B,GAC9B,iCAAiC,GACjC,8BAA8B,GAC9B,qBAAqB,CAAC;AAE1B,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACjF;AAaD,eAAO,MAAM,kBAAkB,GAAI,MAAM,kBAAkB,KAAG,kBAE5D,CAAC"}
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
// concerns. Test parity with the connector error tests is enforced in `__tests__/`.
|
|
12
12
|
const SAFE_MESSAGES = {
|
|
13
13
|
QI_HANDOFF_BAD_REQUEST: "The request body is not a valid Quality Intelligence handoff envelope.",
|
|
14
|
+
QI_HANDOFF_PAYLOAD_TOO_LARGE: "The Quality Intelligence handoff envelope exceeds the maximum permitted size.",
|
|
14
15
|
QI_HANDOFF_UNKNOWN_CHAT_MESSAGE: "The referenced Conversation Center chat message could not be located.",
|
|
15
16
|
QI_HANDOFF_FORBIDDEN_PAYLOAD: "The handoff envelope contained a forbidden field. Handoff envelopes may not carry chat content, credentials, headers, or URLs.",
|
|
16
17
|
QI_HANDOFF_INTERNAL: "The Quality Intelligence handoff route could not service the request.",
|
package/node_modules/@oscharko-dev/keiko-server/dist/qualityIntelligence/handoffRoutes.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoffRoutes.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/handoffRoutes.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"handoffRoutes.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/handoffRoutes.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAiUhD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B;AAED,eAAO,MAAM,qBAAqB,GAChC,UAAS,qBAA0B,KAClC,CAAC,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAwCnE,CAAC;AAEF,eAAO,MAAM,eAAe,QA1ClB,YAAY,QAAQ,aAAa,KAAK,OAAO,CAAC,WAAW,CA0Cb,CAAC;AAKvD,eAAO,MAAM,sBAAsB,EAAE,SAAS,eAAe,EAM5D,CAAC"}
|
|
@@ -108,7 +108,7 @@ const isAllowedAction = (value) => {
|
|
|
108
108
|
};
|
|
109
109
|
const fail = (code = "QI_HANDOFF_BAD_REQUEST") => ({
|
|
110
110
|
kind: "err",
|
|
111
|
-
result: errResult(
|
|
111
|
+
result: errResult(400, code),
|
|
112
112
|
});
|
|
113
113
|
const hasOnlyAllowedKeys = (obj, allowed) => {
|
|
114
114
|
for (const key of Object.keys(obj)) {
|
|
@@ -213,18 +213,34 @@ const buildHandoffMessage = (resolved, envelope, now, linkedRunId) => ({
|
|
|
213
213
|
taskType: HANDOFF_TASK_TYPE,
|
|
214
214
|
});
|
|
215
215
|
// For a "design-tests" handoff, start a model-routed QI run in the BACKGROUND from the chat's
|
|
216
|
-
// connected workspace
|
|
216
|
+
// connected workspace context. Fire-and-forget: the run registers with the in-flight registry (so it
|
|
217
217
|
// surfaces in the run list) and persists to evidence on completion; the handoff returns the run id
|
|
218
218
|
// immediately so the Conversation Center can link + poll it. The run goes through the Keiko Model
|
|
219
219
|
// Gateway + Harness like any QI run — this is the governed workflow handoff (Issue #281), not a
|
|
220
220
|
// parallel chat/agent/model path.
|
|
221
|
-
|
|
221
|
+
//
|
|
222
|
+
// Multi-source (Epic #532/#729): a chat may connect more than one folder. The run ingests EVERY
|
|
223
|
+
// connected workspace root so the QI run covers the full context the user connected — not just the
|
|
224
|
+
// first folder. `executeQiRun` already applies the per-run source cap, deny-list guard, and byte
|
|
225
|
+
// budget over the source list.
|
|
226
|
+
//
|
|
227
|
+
// `envelope.payloadRef.sourceEnvelopeIds` are reserved for a future capability that narrows the run
|
|
228
|
+
// to a user-selected SUBSET of the connected context; until that resolver exists the run faithfully
|
|
229
|
+
// ingests the chat's whole connected workspace context, so an empty (or any) id list is honoured by
|
|
230
|
+
// using the connected scopes.
|
|
231
|
+
const startHandoffRun = (deps, roots) => {
|
|
222
232
|
const runId = `qi-run-${randomUUID()}`;
|
|
223
233
|
const registeredAt = new Date().toISOString();
|
|
224
234
|
const controller = qiRunRegistry.register(runId, registeredAt);
|
|
225
235
|
const totals = { candidates: 0, findings: 0, exports: 0 };
|
|
226
236
|
void executeQiRun({
|
|
227
|
-
request: {
|
|
237
|
+
request: {
|
|
238
|
+
sources: roots.map((path) => ({
|
|
239
|
+
kind: "workspace",
|
|
240
|
+
label: "Conversation Center",
|
|
241
|
+
path,
|
|
242
|
+
})),
|
|
243
|
+
},
|
|
228
244
|
runId,
|
|
229
245
|
deps,
|
|
230
246
|
registeredAt,
|
|
@@ -246,15 +262,31 @@ const startHandoffRun = (deps, root) => {
|
|
|
246
262
|
});
|
|
247
263
|
return runId;
|
|
248
264
|
};
|
|
265
|
+
// Collect the distinct, non-empty absolute roots of a chat's connected workspace context. Prefers
|
|
266
|
+
// the canonical multi-source `connectedScopes` list (Epic #532); falls back to the legacy singular
|
|
267
|
+
// `connectedScope` for older chats. Non-folder scopes (no `root`) are skipped — the handoff run
|
|
268
|
+
// ingests workspace folders only. Order-preserving exact-string de-duplication.
|
|
269
|
+
const collectConnectedRoots = (chat) => {
|
|
270
|
+
const scopes = chat?.connectedScopes ?? (chat?.connectedScope !== undefined ? [chat.connectedScope] : []);
|
|
271
|
+
const roots = [];
|
|
272
|
+
for (const scope of scopes) {
|
|
273
|
+
const root = scope.root;
|
|
274
|
+
if (typeof root === "string" && root.length > 0 && !roots.includes(root)) {
|
|
275
|
+
roots.push(root);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
return roots;
|
|
279
|
+
};
|
|
249
280
|
// Resolve the run id linked to a handoff: a "design-tests" handoff over a chat with a connected
|
|
250
|
-
//
|
|
281
|
+
// workspace context starts a background run; otherwise it falls back to any run id the envelope
|
|
282
|
+
// already carried.
|
|
251
283
|
const resolveHandoffRunId = (deps, envelope, chatId) => {
|
|
252
284
|
if (envelope.promptedAction !== "design-tests")
|
|
253
285
|
return envelope.runId;
|
|
254
286
|
const chat = deps.store.findChatById(chatId);
|
|
255
|
-
const
|
|
256
|
-
if (
|
|
257
|
-
return startHandoffRun(deps,
|
|
287
|
+
const roots = collectConnectedRoots(chat);
|
|
288
|
+
if (roots.length > 0)
|
|
289
|
+
return startHandoffRun(deps, roots);
|
|
258
290
|
return envelope.runId;
|
|
259
291
|
};
|
|
260
292
|
export const createHandleQiHandoff = (options = {}) => {
|
|
@@ -266,7 +298,7 @@ export const createHandleQiHandoff = (options = {}) => {
|
|
|
266
298
|
}
|
|
267
299
|
catch (e) {
|
|
268
300
|
if (e instanceof BodyTooLargeError) {
|
|
269
|
-
return errResult(413, "
|
|
301
|
+
return errResult(413, "QI_HANDOFF_PAYLOAD_TOO_LARGE");
|
|
270
302
|
}
|
|
271
303
|
return errResult(400, "QI_HANDOFF_BAD_REQUEST");
|
|
272
304
|
}
|
|
@@ -11,6 +11,7 @@ export { applyReviewDecision, appendEditAudit, loadRunReviewState, runReviewStat
|
|
|
11
11
|
export { QI_REVIEW_ROUTE_GROUP, handleQiReview } from "./reviewRoutes.js";
|
|
12
12
|
export { QI_EXPORT_ROUTE_GROUP, handleQiExport } from "./exportRoutes.js";
|
|
13
13
|
export { QI_EDIT_ROUTE_GROUP, handleQiEditCandidate } from "./editRoutes.js";
|
|
14
|
+
export { QI_RETENTION_ROUTE_GROUP, handleQiDeleteRun } from "./retentionRoutes.js";
|
|
14
15
|
export { QI_TRACEABILITY_ROUTE_GROUP, handleQiTraceabilityExport } from "./traceabilityRoutes.js";
|
|
15
16
|
export { QI_RECHECK_ROUTE_GROUP, handleQiReCheck, handleQiRegenerateStale, } from "./reCheckRoutes.js";
|
|
16
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/index.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mCAAmC,EACnC,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,qBAAqB,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7E,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAElG,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,uBAAuB,GACxB,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/index.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,gCAAgC,EAChC,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mCAAmC,EACnC,oBAAoB,EACpB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEjE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,qBAAqB,GAC3B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAE7E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEnF,OAAO,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAElG,OAAO,EACL,sBAAsB,EACtB,eAAe,EACf,uBAAuB,GACxB,MAAM,oBAAoB,CAAC"}
|
|
@@ -28,6 +28,8 @@ export { QI_REVIEW_ROUTE_GROUP, handleQiReview } from "./reviewRoutes.js";
|
|
|
28
28
|
export { QI_EXPORT_ROUTE_GROUP, handleQiExport } from "./exportRoutes.js";
|
|
29
29
|
// Issue #726 (Epic #712) — inline-edit route group.
|
|
30
30
|
export { QI_EDIT_ROUTE_GROUP, handleQiEditCandidate } from "./editRoutes.js";
|
|
31
|
+
// Issue #282 follow-up — run-deletion control route group (DELETE /runs/:id, ADR-0023 D8).
|
|
32
|
+
export { QI_RETENTION_ROUTE_GROUP, handleQiDeleteRun } from "./retentionRoutes.js";
|
|
31
33
|
// Issue #740 (Epic #734) — requirement↔test traceability matrix export route group.
|
|
32
34
|
export { QI_TRACEABILITY_ROUTE_GROUP, handleQiTraceabilityExport } from "./traceabilityRoutes.js";
|
|
33
35
|
// Issue #743 (Epic #735) — drift re-check + targeted regeneration route group.
|
|
@@ -17,7 +17,9 @@ export declare function scrubCandidateText(text: string): string;
|
|
|
17
17
|
export declare function buildJudgePrompt(candidateText: string, sourceContext?: readonly JudgeSourceContext[]): readonly ChatMessage[];
|
|
18
18
|
export declare function parseJudgeVerdict(rawText: string): TestQualityJudgeVerdict;
|
|
19
19
|
export interface QiJudgePort {
|
|
20
|
-
readonly judge: (input: JudgePromptInput, signal?: AbortSignal) => Promise<TestQualityJudgeVerdict
|
|
20
|
+
readonly judge: (input: JudgePromptInput, signal?: AbortSignal) => Promise<TestQualityJudgeVerdict & {
|
|
21
|
+
readonly gatewayCallCount: number;
|
|
22
|
+
}>;
|
|
21
23
|
}
|
|
22
24
|
/**
|
|
23
25
|
* Build a judge port bound to one model id. Applies the qi:judge-logic capability gate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"judgePort.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/judgePort.ts"],"names":[],"mappings":"AAUA,OAAO,EAKL,KAAK,WAAW,EAGjB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"judgePort.d.ts","sourceRoot":"","sources":["../../src/qualityIntelligence/judgePort.ts"],"names":[],"mappings":"AAUA,OAAO,EAKL,KAAK,WAAW,EAGjB,MAAM,mCAAmC,CAAC;AAM3C,OAAO,KAAK,EAEV,uBAAuB,EAExB,MAAM,+BAA+B,CAAC;AAKvC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,qBAAa,YAAa,SAAQ,KAAK;IACrC,SAAgB,IAAI,EAAE,MAAM,CAAC;gBACjB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAK1C;AAQD,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AAED,UAAU,gBAAgB;IACxB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,aAAa,EAAE,SAAS,kBAAkB,EAAE,CAAC;CACvD;AAgCD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CASvD;AAyBD,wBAAgB,gBAAgB,CAC9B,aAAa,EAAE,MAAM,EACrB,aAAa,GAAE,SAAS,kBAAkB,EAAO,GAChD,SAAS,WAAW,EAAE,CAqBxB;AAkKD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,uBAAuB,CAW1E;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,CACd,KAAK,EAAE,gBAAgB,EACvB,MAAM,CAAC,EAAE,WAAW,KACjB,OAAO,CAAC,uBAAuB,GAAG;QAAE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC/E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,CAqDnF"}
|