crewly 1.5.18 → 1.5.20
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/config/constants.ts +50 -0
- package/config/domain-sops/content-production-pipeline.sop.md +76 -0
- package/config/domain-sops/content-publishing-policy.sop.md +59 -0
- package/config/domain-sops/customer-onboarding.sop.md +74 -0
- package/config/domain-sops/expert-distillation.sop.md +70 -0
- package/config/domain-sops/innovation-strategy.sop.md +26 -0
- package/config/experts/EXAMPLE.json +11 -0
- package/config/experts/EXAMPLE.md +41 -0
- package/config/experts/empathetic-resolver/expert.json +11 -0
- package/config/experts/empathetic-resolver.md +32 -0
- package/config/experts/pragmatic-architect/expert.json +11 -0
- package/config/experts/pragmatic-architect.md +32 -0
- package/config/experts/viral-alchemist/expert.json +11 -0
- package/config/experts/viral-alchemist.md +32 -0
- package/config/orchestrator_tasks/prompts/checkin-orchestrator-prompt-template.md +2 -2
- package/config/orchestrator_tasks/prompts/orchestrator-prompt.md +57 -1
- package/config/risk-policies/no-local-browser.policy.md +43 -0
- package/config/roles/developer/prompt.md +43 -0
- package/config/roles/orchestrator/fragments/role-boundary.md +31 -0
- package/config/roles/orchestrator/prompt.md +104 -0
- package/config/skills/agent/computer-use/SKILL.md +144 -93
- package/config/skills/agent/computer-use/execute.sh +847 -211
- package/config/skills/agent/core/break-down-request/SKILL.md +128 -0
- package/config/skills/agent/core/break-down-request/execute.sh +200 -0
- package/config/skills/agent/core/claim-heartbeat/execute.sh +57 -0
- package/config/skills/agent/core/claim-heartbeat/execute.test.sh +130 -0
- package/config/skills/agent/core/create-intent-tasks/execute.sh +93 -0
- package/config/skills/agent/core/create-mission/SKILL.md +78 -0
- package/config/skills/agent/core/create-mission/execute.sh +141 -0
- package/config/skills/agent/core/create-request/SKILL.md +132 -0
- package/config/skills/agent/core/create-request/execute.sh +176 -0
- package/config/skills/agent/core/create-task/SKILL.md +76 -0
- package/config/skills/agent/core/create-task/execute.sh +134 -0
- package/config/skills/agent/core/decompose-intent/execute.sh +106 -0
- package/config/skills/agent/core/extend-lease/execute.sh +63 -0
- package/config/skills/agent/core/extend-lease/execute.test.sh +46 -0
- package/config/skills/agent/core/get-my-context/execute.sh +85 -8
- package/config/skills/agent/core/get-my-tasks/SKILL.md +58 -0
- package/config/skills/agent/core/get-my-tasks/execute.sh +77 -6
- package/config/skills/agent/core/handoff-task/execute.sh +139 -95
- package/config/skills/agent/core/handoff-task/execute.test.sh +348 -0
- package/config/skills/agent/core/poll-tasks/execute.sh +182 -0
- package/config/skills/agent/core/poll-tasks/execute.test.sh +215 -0
- package/config/skills/agent/core/register-self/execute.sh +102 -14
- package/config/skills/agent/core/release-claim/execute.sh +53 -0
- package/config/skills/agent/core/release-claim/execute.test.sh +46 -0
- package/config/skills/agent/core/report-status/execute.sh +44 -0
- package/config/skills/agent/core/update-intent-task/execute.sh +93 -0
- package/config/skills/agent/core/work-loop/execute.sh +130 -0
- package/config/skills/agent/core/work-loop/execute.test.sh +52 -0
- package/config/skills/agent/core/workspace/execute.sh +270 -0
- package/config/skills/agent/core/workspace/execute.test.sh +185 -0
- package/config/skills/agent/remote-browser/SOP-google-flow-video.md +202 -0
- package/config/skills/agent/remote-browser/execute.sh +287 -0
- package/config/skills/agent/v3/plan-request/SKILL.md +72 -0
- package/config/skills/agent/v3/plan-request/execute.sh +116 -0
- package/config/skills/orchestrator/decompose-mission/SKILL.md +78 -0
- package/config/skills/orchestrator/decompose-mission/execute.sh +138 -0
- package/config/skills/orchestrator/delegate-task/SKILL.md +4 -3
- package/config/skills/orchestrator/delegate-task/execute.sh +43 -97
- package/config/skills/orchestrator/design-team/SKILL.md +51 -0
- package/config/skills/orchestrator/design-team/execute.sh +145 -0
- package/config/skills/orchestrator/measure-kr/SKILL.md +47 -0
- package/config/skills/orchestrator/measure-kr/execute.sh +87 -0
- package/config/skills/orchestrator/review-mission/SKILL.md +61 -0
- package/config/skills/orchestrator/review-mission/execute.sh +127 -0
- package/config/skills/team-leader/aggregate-results/execute.sh +25 -74
- package/config/skills/team-leader/delegate-task/SKILL.md +10 -0
- package/config/skills/team-leader/delegate-task/execute.sh +42 -3
- package/config/skills/team-leader/design-checklist/SKILL.md +122 -0
- package/config/skills/team-leader/design-checklist/execute.sh +157 -0
- package/config/skills/team-leader/verify-output/execute.sh +42 -0
- package/config/sops/xhs-requirement-log.v1.md +238 -0
- package/config/templates/agent-gemini-md.md +3 -1
- package/config/templates/ai-video-social-team.json +22 -0
- package/config/templates/broker-squad-v1.json +22 -0
- package/config/templates/customer-loyalty-team.json +44 -0
- package/config/templates/customer-ops-team.json +22 -0
- package/config/templates/dtc-viral-content-team.json +58 -0
- package/config/templates/expert-innovation-team.json +60 -0
- package/config/templates/growth-marketing-team.json +22 -0
- package/config/templates/pragmatic-mvp-dev-team.json +58 -0
- package/config/templates/pro-sops/norms/content-production-pipeline.md +39 -0
- package/config/templates/pro-sops/norms/customer-onboarding-sop.md +40 -0
- package/config/templates/prop-manager-v1.json +22 -0
- package/dist/backend/backend/src/constants.d.ts +5 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +5 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts +12 -2
- package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/browser/browser.controller.js +34 -20
- package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/browser/browser.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/browser/browser.routes.js +4 -2
- package/dist/backend/backend/src/controllers/browser/browser.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/chat/chat.controller.js +28 -0
- package/dist/backend/backend/src/controllers/chat/chat.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +5 -2
- package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.d.ts +72 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.js +202 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.d.ts +16 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.js +32 -0
- package/dist/backend/backend/src/controllers/content-approvals/content-approvals.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/eval/eval.controller.d.ts +63 -0
- package/dist/backend/backend/src/controllers/eval/eval.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/eval/eval.controller.js +228 -0
- package/dist/backend/backend/src/controllers/eval/eval.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/eval/eval.routes.d.ts +23 -0
- package/dist/backend/backend/src/controllers/eval/eval.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/eval/eval.routes.js +37 -0
- package/dist/backend/backend/src/controllers/eval/eval.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts +29 -0
- package/dist/backend/backend/src/controllers/expert/expert.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/expert/expert.controller.js +79 -0
- package/dist/backend/backend/src/controllers/expert/expert.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/expert/expert.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/expert/expert.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/expert/expert.routes.js +21 -0
- package/dist/backend/backend/src/controllers/expert/expert.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/expert/index.d.ts +9 -0
- package/dist/backend/backend/src/controllers/expert/index.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/expert/index.js +9 -0
- package/dist/backend/backend/src/controllers/expert/index.js.map +1 -0
- package/dist/backend/backend/src/controllers/fission/fission.controller.d.ts +80 -0
- package/dist/backend/backend/src/controllers/fission/fission.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/fission/fission.controller.js +264 -0
- package/dist/backend/backend/src/controllers/fission/fission.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/fission/fission.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/fission/fission.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/fission/fission.routes.js +29 -0
- package/dist/backend/backend/src/controllers/fission/fission.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/growth/growth.controller.d.ts +29 -0
- package/dist/backend/backend/src/controllers/growth/growth.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/growth/growth.controller.js +74 -0
- package/dist/backend/backend/src/controllers/growth/growth.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/growth/growth.routes.d.ts +20 -0
- package/dist/backend/backend/src/controllers/growth/growth.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/growth/growth.routes.js +26 -0
- package/dist/backend/backend/src/controllers/growth/growth.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/index.d.ts +5 -1
- package/dist/backend/backend/src/controllers/index.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/index.js +9 -1
- package/dist/backend/backend/src/controllers/index.js.map +1 -1
- package/dist/backend/backend/src/controllers/intent-task/index.d.ts +9 -0
- package/dist/backend/backend/src/controllers/intent-task/index.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/intent-task/index.js +9 -0
- package/dist/backend/backend/src/controllers/intent-task/index.js.map +1 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.d.ts +85 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.js +356 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.d.ts +19 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.js +43 -0
- package/dist/backend/backend/src/controllers/intent-task/intent-task.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/index.d.ts +8 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/index.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/index.js +8 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/index.js.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.d.ts +63 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.js +179 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.d.ts +22 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.js +34 -0
- package/dist/backend/backend/src/controllers/knowledge-v3/knowledge-v3.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js +38 -1
- package/dist/backend/backend/src/controllers/marketplace/marketplace.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js +11 -0
- package/dist/backend/backend/src/controllers/marketplace/marketplace.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/mission/kr.controller.d.ts +40 -0
- package/dist/backend/backend/src/controllers/mission/kr.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/mission/kr.controller.js +131 -0
- package/dist/backend/backend/src/controllers/mission/kr.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts +71 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js +270 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts +16 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js +327 -0
- package/dist/backend/backend/src/controllers/mission/mission-policy.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js +5 -1
- package/dist/backend/backend/src/controllers/monitoring/monitoring.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts +19 -0
- package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js +36 -0
- package/dist/backend/backend/src/controllers/monitoring/token-usage.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/onboarding/index.d.ts +7 -0
- package/dist/backend/backend/src/controllers/onboarding/index.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/index.js +7 -0
- package/dist/backend/backend/src/controllers/onboarding/index.js.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.d.ts +24 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.js +340 -0
- package/dist/backend/backend/src/controllers/onboarding/onboarding.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.d.ts +21 -0
- package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.js +181 -0
- package/dist/backend/backend/src/controllers/onboarding/website-analysis.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/payment/payment.controller.js +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.d.ts +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.js +1 -1
- package/dist/backend/backend/src/controllers/payment/payment.types.js.map +1 -1
- package/dist/backend/backend/src/controllers/project/project.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/project/project.controller.js +0 -2
- package/dist/backend/backend/src/controllers/project/project.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/project/project.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/project/project.routes.js +9 -5
- package/dist/backend/backend/src/controllers/project/project.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.d.ts +84 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.js +189 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.d.ts +16 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.js +29 -0
- package/dist/backend/backend/src/controllers/provisioning/provisioning.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.d.ts +51 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.js +106 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.js +25 -0
- package/dist/backend/backend/src/controllers/reconciler/reconciler.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/request/request.controller.d.ts +55 -0
- package/dist/backend/backend/src/controllers/request/request.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/request/request.controller.js +168 -0
- package/dist/backend/backend/src/controllers/request/request.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/request/request.routes.d.ts +23 -0
- package/dist/backend/backend/src/controllers/request/request.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/request/request.routes.js +37 -0
- package/dist/backend/backend/src/controllers/request/request.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/slack/slack.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/slack/slack.controller.js +18 -1
- package/dist/backend/backend/src/controllers/slack/slack.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +20 -57
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +283 -385
- package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts +180 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js +737 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js +45 -0
- package/dist/backend/backend/src/controllers/task-pool/task-pool.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.d.ts +75 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.js +170 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.d.ts +10 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.js +29 -0
- package/dist/backend/backend/src/controllers/task-projection/task-projection.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/team/team.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/team/team.routes.js +16 -12
- package/dist/backend/backend/src/controllers/team/team.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/template/template.controller.d.ts +4 -4
- package/dist/backend/backend/src/controllers/template/template.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/template/template.controller.js +73 -31
- package/dist/backend/backend/src/controllers/template/template.controller.js.map +1 -1
- package/dist/backend/backend/src/controllers/trigger/trigger.controller.d.ts +50 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.controller.js +125 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.routes.d.ts +26 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.routes.js +38 -0
- package/dist/backend/backend/src/controllers/trigger/trigger.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/user/user-validation.d.ts +86 -0
- package/dist/backend/backend/src/controllers/user/user-validation.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/user/user-validation.js +165 -0
- package/dist/backend/backend/src/controllers/user/user-validation.js.map +1 -0
- package/dist/backend/backend/src/controllers/user/user.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/user/user.routes.js +7 -4
- package/dist/backend/backend/src/controllers/user/user.routes.js.map +1 -1
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.d.ts +72 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.js +236 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.d.ts +15 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.js +31 -0
- package/dist/backend/backend/src/controllers/v2-workspace/workspace.routes.js.map +1 -0
- package/dist/backend/backend/src/index.d.ts +18 -0
- package/dist/backend/backend/src/index.d.ts.map +1 -1
- package/dist/backend/backend/src/index.js +643 -11
- package/dist/backend/backend/src/index.js.map +1 -1
- package/dist/backend/backend/src/middleware/cache.middleware.d.ts +43 -0
- package/dist/backend/backend/src/middleware/cache.middleware.d.ts.map +1 -0
- package/dist/backend/backend/src/middleware/cache.middleware.js +103 -0
- package/dist/backend/backend/src/middleware/cache.middleware.js.map +1 -0
- package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts +49 -9
- package/dist/backend/backend/src/middleware/require-auth.middleware.d.ts.map +1 -1
- package/dist/backend/backend/src/middleware/require-auth.middleware.js +115 -9
- package/dist/backend/backend/src/middleware/require-auth.middleware.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +77 -0
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/routes/modules/task-management.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/modules/task-management.routes.js +4 -0
- package/dist/backend/backend/src/routes/modules/task-management.routes.js.map +1 -1
- package/dist/backend/backend/src/scripts/backfill-mission-priority.d.ts +43 -0
- package/dist/backend/backend/src/scripts/backfill-mission-priority.d.ts.map +1 -0
- package/dist/backend/backend/src/scripts/backfill-mission-priority.js +90 -0
- package/dist/backend/backend/src/scripts/backfill-mission-priority.js.map +1 -0
- package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts +6 -9
- package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js +43 -30
- package/dist/backend/backend/src/services/agent/agent-heartbeat-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +14 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +66 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +282 -4
- package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts +60 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js +407 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-external-runtime.service.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.d.ts +130 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.js +406 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/cli-adapter.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.d.ts +68 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.js +206 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/crewly-agent-adapter.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.d.ts +32 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.js +46 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/adapters/index.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.d.ts +87 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.js +299 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/context-generator.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.d.ts +59 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.js +218 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-runner.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.d.ts +203 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.js +467 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-scorer.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.d.ts +313 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.js +45 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/eval-types.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.d.ts +21 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.js +21 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/index.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.d.ts +15 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.js +349 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-cli.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.d.ts +97 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.js +414 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-l4.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.d.ts +42 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.js +403 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/run-eval-standalone.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.d.ts +41 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.js +58 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/index.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.d.ts +15 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.js +396 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l1-tasks.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.d.ts +14 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.js +564 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l2-tasks.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.d.ts +13 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.js +634 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l3-tasks.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.d.ts +21 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.js +1036 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tasks/l4-tasks.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.d.ts +100 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.d.ts.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.js +187 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/eval/tool-log-parser.js.map +1 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +43 -6
- package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts +7 -0
- package/dist/backend/backend/src/services/agent/crewly-agent/types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/crewly-agent/types.js.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts +10 -0
- package/dist/backend/backend/src/services/agent/idle-detection.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/idle-detection.service.js +63 -0
- package/dist/backend/backend/src/services/agent/idle-detection.service.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.d.ts +41 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.d.ts.map +1 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.js +95 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/expert-profile.module.js.map +1 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js +21 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-assembly.service.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +47 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.d.ts +26 -2
- package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.js +191 -8
- package/dist/backend/backend/src/services/ai/prompt-modules/role-boundary.module.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +4 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.d.ts +61 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.d.ts.map +1 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.js +197 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/team-norms.module.js.map +1 -0
- package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/browser/browser-bridge.service.js +3 -1
- package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
- package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +11 -2
- package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/browser/browser-proxy.service.js +59 -10
- package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
- package/dist/backend/backend/src/services/cache/redis-cache.service.d.ts +115 -0
- package/dist/backend/backend/src/services/cache/redis-cache.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/cache/redis-cache.service.js +316 -0
- package/dist/backend/backend/src/services/cache/redis-cache.service.js.map +1 -0
- package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +8 -0
- package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js +55 -4
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/logger.service.js +1 -1
- package/dist/backend/backend/src/services/core/logger.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/storage.service.d.ts +33 -0
- package/dist/backend/backend/src/services/core/storage.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/core/storage.service.js +54 -0
- package/dist/backend/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/backend/backend/src/services/core/system-health.util.d.ts +23 -0
- package/dist/backend/backend/src/services/core/system-health.util.d.ts.map +1 -0
- package/dist/backend/backend/src/services/core/system-health.util.js +44 -0
- package/dist/backend/backend/src/services/core/system-health.util.js.map +1 -0
- package/dist/backend/backend/src/services/fission/fission-guard.service.d.ts +188 -0
- package/dist/backend/backend/src/services/fission/fission-guard.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/fission/fission-guard.service.js +372 -0
- package/dist/backend/backend/src/services/fission/fission-guard.service.js.map +1 -0
- package/dist/backend/backend/src/services/fission/fission-guard.types.d.ts +137 -0
- package/dist/backend/backend/src/services/fission/fission-guard.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/fission/fission-guard.types.js +133 -0
- package/dist/backend/backend/src/services/fission/fission-guard.types.js.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.d.ts +91 -0
- package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.js +179 -0
- package/dist/backend/backend/src/services/intent-task/intent-decomposition.service.js.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.d.ts +138 -0
- package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.js +244 -0
- package/dist/backend/backend/src/services/intent-task/intent-task-follow-up.service.js.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-task.service.d.ts +333 -0
- package/dist/backend/backend/src/services/intent-task/intent-task.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/intent-task/intent-task.service.js +843 -0
- package/dist/backend/backend/src/services/intent-task/intent-task.service.js.map +1 -0
- package/dist/backend/backend/src/services/knowledge/fts5-index.service.d.ts +118 -0
- package/dist/backend/backend/src/services/knowledge/fts5-index.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/knowledge/fts5-index.service.js +220 -0
- package/dist/backend/backend/src/services/knowledge/fts5-index.service.js.map +1 -0
- package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.d.ts +56 -0
- package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +1 -0
- package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.js +91 -0
- package/dist/backend/backend/src/services/knowledge/fts5-search-strategy.js.map +1 -0
- package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.d.ts +115 -0
- package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.js +215 -0
- package/dist/backend/backend/src/services/knowledge/wiki-compiler.service.js.map +1 -0
- package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.d.ts +34 -0
- package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.js +128 -0
- package/dist/backend/backend/src/services/marketplace/marketplace-auto-update.service.js.map +1 -0
- package/dist/backend/backend/src/services/memory/agent-memory.service.d.ts +11 -0
- package/dist/backend/backend/src/services/memory/agent-memory.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/memory/agent-memory.service.js +76 -11
- package/dist/backend/backend/src/services/memory/agent-memory.service.js.map +1 -1
- package/dist/backend/backend/src/services/memory/embedding-provider.d.ts +78 -0
- package/dist/backend/backend/src/services/memory/embedding-provider.d.ts.map +1 -0
- package/dist/backend/backend/src/services/memory/embedding-provider.js +185 -0
- package/dist/backend/backend/src/services/memory/embedding-provider.js.map +1 -0
- package/dist/backend/backend/src/services/memory/vector-store.service.d.ts +331 -0
- package/dist/backend/backend/src/services/memory/vector-store.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/memory/vector-store.service.js +814 -0
- package/dist/backend/backend/src/services/memory/vector-store.service.js.map +1 -0
- package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts +15 -0
- package/dist/backend/backend/src/services/messaging/queue-processor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js +42 -0
- package/dist/backend/backend/src/services/messaging/queue-processor.service.js.map +1 -1
- package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts +8 -0
- package/dist/backend/backend/src/services/messaging/thread-status-queue.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js +20 -0
- package/dist/backend/backend/src/services/messaging/thread-status-queue.service.js.map +1 -1
- package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts +17 -0
- package/dist/backend/backend/src/services/monitoring/activity-monitor.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js +62 -0
- package/dist/backend/backend/src/services/monitoring/activity-monitor.service.js.map +1 -1
- package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts +81 -0
- package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js +287 -0
- package/dist/backend/backend/src/services/monitoring/claude-session-tokens.service.js.map +1 -0
- package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.d.ts +73 -0
- package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.js +199 -0
- package/dist/backend/backend/src/services/monitoring/runtime-token-parser.service.js.map +1 -0
- package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts +7 -0
- package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js +37 -6
- package/dist/backend/backend/src/services/monitoring/system-resource-alert.service.js.map +1 -1
- package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts +56 -4
- package/dist/backend/backend/src/services/monitoring/token-usage.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/monitoring/token-usage.service.js +102 -7
- package/dist/backend/backend/src/services/monitoring/token-usage.service.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.d.ts +5 -1
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.js +41 -0
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.service.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.d.ts +36 -0
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.d.ts.map +1 -1
- package/dist/backend/backend/src/services/onboarding/brand-onboarding.types.js.map +1 -1
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.d.ts +51 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.js +136 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.service.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.d.ts +178 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.js +163 -0
- package/dist/backend/backend/src/services/onboarding/onboarding-provision.types.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.service.d.ts +141 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.service.js +411 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.service.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.types.d.ts +129 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.types.js +10 -0
- package/dist/backend/backend/src/services/onboarding/website-analysis.types.js.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-extractor.service.d.ts +241 -0
- package/dist/backend/backend/src/services/onboarding/website-extractor.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/onboarding/website-extractor.service.js +605 -0
- package/dist/backend/backend/src/services/onboarding/website-extractor.service.js.map +1 -0
- package/dist/backend/backend/src/services/payment/stripe.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/payment/stripe.service.js +17 -11
- package/dist/backend/backend/src/services/payment/stripe.service.js.map +1 -1
- package/dist/backend/backend/src/services/policy/default-policies.d.ts +66 -0
- package/dist/backend/backend/src/services/policy/default-policies.d.ts.map +1 -0
- package/dist/backend/backend/src/services/policy/default-policies.js +120 -0
- package/dist/backend/backend/src/services/policy/default-policies.js.map +1 -0
- package/dist/backend/backend/src/services/policy/policy-enforcement.service.d.ts +77 -0
- package/dist/backend/backend/src/services/policy/policy-enforcement.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/policy/policy-enforcement.service.js +164 -0
- package/dist/backend/backend/src/services/policy/policy-enforcement.service.js.map +1 -0
- package/dist/backend/backend/src/services/project/active-projects.service.d.ts +0 -4
- package/dist/backend/backend/src/services/project/active-projects.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project/active-projects.service.js +1 -43
- package/dist/backend/backend/src/services/project/active-projects.service.js.map +1 -1
- package/dist/backend/backend/src/services/project/task.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/project/task.service.js +88 -48
- package/dist/backend/backend/src/services/project/task.service.js.map +1 -1
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.d.ts +137 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.js +410 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.service.js.map +1 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.d.ts +182 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.js +84 -0
- package/dist/backend/backend/src/services/provisioning/deployment-orchestrator.types.js.map +1 -0
- package/dist/backend/backend/src/services/provisioning/deployment-status.service.d.ts +149 -0
- package/dist/backend/backend/src/services/provisioning/deployment-status.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/provisioning/deployment-status.service.js +201 -0
- package/dist/backend/backend/src/services/provisioning/deployment-status.service.js.map +1 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.service.d.ts +135 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.service.js +261 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.service.js.map +1 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.types.d.ts +184 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.types.js +119 -0
- package/dist/backend/backend/src/services/provisioning/provisioning.types.js.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts +229 -0
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.d.ts.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js +666 -0
- package/dist/backend/backend/src/services/reconciler/reconcile-rules.js.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts +141 -0
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.d.ts.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js +470 -0
- package/dist/backend/backend/src/services/reconciler/reconciler-data-provider.js.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts +144 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.js +360 -0
- package/dist/backend/backend/src/services/reconciler/reconciler.service.js.map +1 -0
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.js +4 -3
- package/dist/backend/backend/src/services/session/pty/pty-session-backend.js.map +1 -1
- package/dist/backend/backend/src/services/session/session-handoff.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/session/session-handoff.service.js +13 -0
- package/dist/backend/backend/src/services/session/session-handoff.service.js.map +1 -1
- package/dist/backend/backend/src/services/skill/skill-permission.service.d.ts +59 -0
- package/dist/backend/backend/src/services/skill/skill-permission.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/skill/skill-permission.service.js +141 -0
- package/dist/backend/backend/src/services/skill/skill-permission.service.js.map +1 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts +13 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js +124 -0
- package/dist/backend/backend/src/services/slack/slack-orchestrator-bridge.js.map +1 -1
- package/dist/backend/backend/src/services/slack/slack.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/slack/slack.service.js +78 -0
- package/dist/backend/backend/src/services/slack/slack.service.js.map +1 -1
- package/dist/backend/backend/src/services/task-pool/claim.service.d.ts +190 -0
- package/dist/backend/backend/src/services/task-pool/claim.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/task-pool/claim.service.js +354 -0
- package/dist/backend/backend/src/services/task-pool/claim.service.js.map +1 -0
- package/dist/backend/backend/src/services/task-pool/pool-storage.d.ts +146 -0
- package/dist/backend/backend/src/services/task-pool/pool-storage.d.ts.map +1 -0
- package/dist/backend/backend/src/services/task-pool/pool-storage.js +243 -0
- package/dist/backend/backend/src/services/task-pool/pool-storage.js.map +1 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts +288 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js +653 -0
- package/dist/backend/backend/src/services/task-pool/task-pool.service.js.map +1 -0
- package/dist/backend/backend/src/services/template/template.service.d.ts +2 -0
- package/dist/backend/backend/src/services/template/template.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/template/template.service.js +17 -3
- package/dist/backend/backend/src/services/template/template.service.js.map +1 -1
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts +90 -0
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js +394 -0
- package/dist/backend/backend/src/services/v3/agent-auto-claim.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts +100 -0
- package/dist/backend/backend/src/services/v3/escalation-router.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation-router.service.js +357 -0
- package/dist/backend/backend/src/services/v3/escalation-router.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation.service.d.ts +148 -0
- package/dist/backend/backend/src/services/v3/escalation.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/escalation.service.js +371 -0
- package/dist/backend/backend/src/services/v3/escalation.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts +109 -0
- package/dist/backend/backend/src/services/v3/kr-tracking.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/kr-tracking.service.js +314 -0
- package/dist/backend/backend/src/services/v3/kr-tracking.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts +117 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.js +301 -0
- package/dist/backend/backend/src/services/v3/mission-executor.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-period.service.d.ts +73 -0
- package/dist/backend/backend/src/services/v3/mission-period.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/mission-period.service.js +200 -0
- package/dist/backend/backend/src/services/v3/mission-period.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/okr-review.service.d.ts +58 -0
- package/dist/backend/backend/src/services/v3/okr-review.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/okr-review.service.js +221 -0
- package/dist/backend/backend/src/services/v3/okr-review.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts +118 -0
- package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/project-task-watcher.service.js +326 -0
- package/dist/backend/backend/src/services/v3/project-task-watcher.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/request-notification.service.d.ts +52 -0
- package/dist/backend/backend/src/services/v3/request-notification.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/request-notification.service.js +161 -0
- package/dist/backend/backend/src/services/v3/request-notification.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/request-tracker.service.d.ts +78 -0
- package/dist/backend/backend/src/services/v3/request-tracker.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/request-tracker.service.js +108 -0
- package/dist/backend/backend/src/services/v3/request-tracker.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/request.service.d.ts +166 -0
- package/dist/backend/backend/src/services/v3/request.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/request.service.js +310 -0
- package/dist/backend/backend/src/services/v3/request.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/service-contract-gate.service.d.ts +88 -0
- package/dist/backend/backend/src/services/v3/service-contract-gate.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/service-contract-gate.service.js +138 -0
- package/dist/backend/backend/src/services/v3/service-contract-gate.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/task-projection.service.d.ts +128 -0
- package/dist/backend/backend/src/services/v3/task-projection.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/task-projection.service.js +378 -0
- package/dist/backend/backend/src/services/v3/task-projection.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.d.ts +77 -0
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.js +177 -0
- package/dist/backend/backend/src/services/v3/team-trigger-reconciler.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts +63 -0
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js +169 -0
- package/dist/backend/backend/src/services/v3/tl-auto-verify.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts +263 -0
- package/dist/backend/backend/src/services/v3/trigger-engine.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/trigger-engine.service.js +632 -0
- package/dist/backend/backend/src/services/v3/trigger-engine.service.js.map +1 -0
- package/dist/backend/backend/src/services/v3/v3-data.service.d.ts +298 -0
- package/dist/backend/backend/src/services/v3/v3-data.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/v3/v3-data.service.js +1075 -0
- package/dist/backend/backend/src/services/v3/v3-data.service.js.map +1 -0
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts +5 -11
- package/dist/backend/backend/src/services/workflow/scheduler.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/workflow/scheduler.service.js +34 -23
- package/dist/backend/backend/src/services/workflow/scheduler.service.js.map +1 -1
- package/dist/backend/backend/src/services/workspace/workspace.service.d.ts +120 -0
- package/dist/backend/backend/src/services/workspace/workspace.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/workspace/workspace.service.js +271 -0
- package/dist/backend/backend/src/services/workspace/workspace.service.js.map +1 -0
- package/dist/backend/backend/src/types/index.d.ts +42 -0
- package/dist/backend/backend/src/types/index.d.ts.map +1 -1
- package/dist/backend/backend/src/types/index.js.map +1 -1
- package/dist/backend/backend/src/types/intent-task.types.d.ts +386 -0
- package/dist/backend/backend/src/types/intent-task.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/intent-task.types.js +231 -0
- package/dist/backend/backend/src/types/intent-task.types.js.map +1 -0
- package/dist/backend/backend/src/types/memory.types.d.ts +19 -0
- package/dist/backend/backend/src/types/memory.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/memory.types.js.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.d.ts +54 -0
- package/dist/backend/backend/src/types/team-template.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/team-template.types.js.map +1 -1
- package/dist/backend/backend/src/types/v2/claim.types.d.ts +140 -0
- package/dist/backend/backend/src/types/v2/claim.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/claim.types.js +180 -0
- package/dist/backend/backend/src/types/v2/claim.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/index.d.ts +30 -0
- package/dist/backend/backend/src/types/v2/index.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/index.js +22 -0
- package/dist/backend/backend/src/types/v2/index.js.map +1 -0
- package/dist/backend/backend/src/types/v2/key-result.types.d.ts +195 -0
- package/dist/backend/backend/src/types/v2/key-result.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/key-result.types.js +194 -0
- package/dist/backend/backend/src/types/v2/key-result.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/mission.types.d.ts +408 -0
- package/dist/backend/backend/src/types/v2/mission.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/mission.types.js +482 -0
- package/dist/backend/backend/src/types/v2/mission.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/reconcile.types.d.ts +199 -0
- package/dist/backend/backend/src/types/v2/reconcile.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/reconcile.types.js +121 -0
- package/dist/backend/backend/src/types/v2/reconcile.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/request.types.d.ts +188 -0
- package/dist/backend/backend/src/types/v2/request.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/request.types.js +178 -0
- package/dist/backend/backend/src/types/v2/request.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/trigger.types.d.ts +201 -0
- package/dist/backend/backend/src/types/v2/trigger.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/trigger.types.js +174 -0
- package/dist/backend/backend/src/types/v2/trigger.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/work-item.types.d.ts +333 -0
- package/dist/backend/backend/src/types/v2/work-item.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/work-item.types.js +274 -0
- package/dist/backend/backend/src/types/v2/work-item.types.js.map +1 -0
- package/dist/backend/backend/src/types/v2/workspace.types.d.ts +157 -0
- package/dist/backend/backend/src/types/v2/workspace.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v2/workspace.types.js +173 -0
- package/dist/backend/backend/src/types/v2/workspace.types.js.map +1 -0
- package/dist/backend/backend/src/types/v3/task-record.types.d.ts +98 -0
- package/dist/backend/backend/src/types/v3/task-record.types.d.ts.map +1 -0
- package/dist/backend/backend/src/types/v3/task-record.types.js +55 -0
- package/dist/backend/backend/src/types/v3/task-record.types.js.map +1 -0
- package/dist/backend/config/constants.d.ts +47 -0
- package/dist/backend/config/constants.d.ts.map +1 -1
- package/dist/backend/config/constants.js +49 -0
- package/dist/backend/config/constants.js.map +1 -1
- package/dist/cli/backend/src/constants.d.ts +5 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +5 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +47 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +1 -1
- package/dist/cli/backend/src/services/core/logger.service.js +1 -1
- package/dist/cli/backend/src/services/core/logger.service.js.map +1 -1
- package/dist/cli/backend/src/services/core/storage.service.d.ts +33 -0
- package/dist/cli/backend/src/services/core/storage.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/core/storage.service.js +54 -0
- package/dist/cli/backend/src/services/core/storage.service.js.map +1 -1
- package/dist/cli/backend/src/services/knowledge/fts5-index.service.d.ts +118 -0
- package/dist/cli/backend/src/services/knowledge/fts5-index.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/knowledge/fts5-index.service.js +220 -0
- package/dist/cli/backend/src/services/knowledge/fts5-index.service.js.map +1 -0
- package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts +56 -0
- package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +1 -0
- package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js +91 -0
- package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js.map +1 -0
- package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts +115 -0
- package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js +215 -0
- package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js.map +1 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts +11 -0
- package/dist/cli/backend/src/services/memory/agent-memory.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/memory/agent-memory.service.js +76 -11
- package/dist/cli/backend/src/services/memory/agent-memory.service.js.map +1 -1
- package/dist/cli/backend/src/services/memory/embedding-provider.d.ts +78 -0
- package/dist/cli/backend/src/services/memory/embedding-provider.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/embedding-provider.js +179 -0
- package/dist/cli/backend/src/services/memory/embedding-provider.js.map +1 -0
- package/dist/cli/backend/src/services/memory/vector-store.service.d.ts +331 -0
- package/dist/cli/backend/src/services/memory/vector-store.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/memory/vector-store.service.js +814 -0
- package/dist/cli/backend/src/services/memory/vector-store.service.js.map +1 -0
- package/dist/cli/backend/src/services/task-pool/claim.service.d.ts +190 -0
- package/dist/cli/backend/src/services/task-pool/claim.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/task-pool/claim.service.js +354 -0
- package/dist/cli/backend/src/services/task-pool/claim.service.js.map +1 -0
- package/dist/cli/backend/src/services/task-pool/pool-storage.d.ts +146 -0
- package/dist/cli/backend/src/services/task-pool/pool-storage.d.ts.map +1 -0
- package/dist/cli/backend/src/services/task-pool/pool-storage.js +243 -0
- package/dist/cli/backend/src/services/task-pool/pool-storage.js.map +1 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts +263 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js +605 -0
- package/dist/cli/backend/src/services/task-pool/task-pool.service.js.map +1 -0
- package/dist/cli/backend/src/types/index.d.ts +42 -0
- package/dist/cli/backend/src/types/index.d.ts.map +1 -1
- package/dist/cli/backend/src/types/index.js.map +1 -1
- package/dist/cli/backend/src/types/memory.types.d.ts +19 -0
- package/dist/cli/backend/src/types/memory.types.d.ts.map +1 -1
- package/dist/cli/backend/src/types/memory.types.js.map +1 -1
- package/dist/cli/backend/src/types/team-template.types.d.ts +222 -0
- package/dist/cli/backend/src/types/team-template.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/team-template.types.js +139 -0
- package/dist/cli/backend/src/types/team-template.types.js.map +1 -0
- package/dist/cli/backend/src/types/v2/claim.types.d.ts +143 -0
- package/dist/cli/backend/src/types/v2/claim.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/v2/claim.types.js +183 -0
- package/dist/cli/backend/src/types/v2/claim.types.js.map +1 -0
- package/dist/cli/backend/src/types/v2/trigger.types.d.ts +201 -0
- package/dist/cli/backend/src/types/v2/trigger.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/v2/trigger.types.js +174 -0
- package/dist/cli/backend/src/types/v2/trigger.types.js.map +1 -0
- package/dist/cli/backend/src/types/v2/work-item.types.d.ts +333 -0
- package/dist/cli/backend/src/types/v2/work-item.types.d.ts.map +1 -0
- package/dist/cli/backend/src/types/v2/work-item.types.js +274 -0
- package/dist/cli/backend/src/types/v2/work-item.types.js.map +1 -0
- package/dist/cli/config/constants.d.ts +47 -0
- package/dist/cli/config/constants.d.ts.map +1 -1
- package/dist/cli/config/constants.js +49 -0
- package/dist/cli/config/constants.js.map +1 -1
- package/frontend/dist/assets/index-47564020.css +33 -0
- package/frontend/dist/assets/index-5e804749.js +5220 -0
- package/frontend/dist/index.html +2 -2
- package/package.json +3 -1
- package/config/skills/agent/computer-use/lib/accessibility.sh +0 -292
- package/config/skills/agent/computer-use/lib/applescript.sh +0 -117
- package/config/skills/agent/computer-use/lib/discover.sh +0 -122
- package/config/skills/agent/computer-use/lib/playwright.sh +0 -153
- package/config/skills/agent/computer-use/lib/screenshot.sh +0 -61
- package/config/templates/cloud-deploy.json +0 -119
- package/config/templates/code-review-team/README.md +0 -176
- package/config/templates/code-review-team/team-config.json +0 -23
- package/config/templates/code-review-team.json +0 -62
- package/config/templates/content-generation-team/README.md +0 -128
- package/config/templates/content-generation-team/norms/publish-checklist.md +0 -64
- package/config/templates/content-generation-team/team-config.json +0 -28
- package/config/templates/content-generation-team.json +0 -67
- package/config/templates/dev-fullstack/norms/docker-deploy-cleanup.md +0 -28
- package/config/templates/dev-fullstack/template.json +0 -178
- package/config/templates/education-smb/README.md +0 -27
- package/config/templates/education-smb/goals.md +0 -16
- package/config/templates/education-smb/knowledge/docs/content-standards.md +0 -24
- package/config/templates/education-smb/knowledge/docs/education-industry-context.md +0 -13
- package/config/templates/education-smb/knowledge/index.json +0 -24
- package/config/templates/education-smb/learned-patterns.json +0 -16
- package/config/templates/education-smb/quality-gates.yaml +0 -66
- package/config/templates/education-smb/roles/analytics-specialist.md +0 -6
- package/config/templates/education-smb/roles/content-creator.md +0 -6
- package/config/templates/education-smb/roles/curriculum-designer.md +0 -6
- package/config/templates/education-smb/roles/engagement-manager.md +0 -6
- package/config/templates/education-smb/team.json +0 -40
- package/config/templates/education-smb/template.json +0 -35
- package/config/templates/education-smb/workflows/course-content-generation.yaml +0 -44
- package/config/templates/education-smb/workflows/reporting.yaml +0 -31
- package/config/templates/education-smb/workflows/student-communication.yaml +0 -44
- package/config/templates/education-smb/workflows.yaml +0 -40
- package/config/templates/insurance-smb/README.md +0 -28
- package/config/templates/insurance-smb/goals.md +0 -21
- package/config/templates/insurance-smb/knowledge/docs/compliance-checklist.md +0 -28
- package/config/templates/insurance-smb/knowledge/docs/insurance-industry-context.md +0 -23
- package/config/templates/insurance-smb/knowledge/index.json +0 -24
- package/config/templates/insurance-smb/learned-patterns.json +0 -16
- package/config/templates/insurance-smb/quality-gates.yaml +0 -54
- package/config/templates/insurance-smb/roles/claims-processor.md +0 -6
- package/config/templates/insurance-smb/roles/client-manager.md +0 -6
- package/config/templates/insurance-smb/roles/compliance-officer.md +0 -6
- package/config/templates/insurance-smb/roles/marketing-specialist.md +0 -6
- package/config/templates/insurance-smb/roles/policy-analyst.md +0 -6
- package/config/templates/insurance-smb/team.json +0 -48
- package/config/templates/insurance-smb/template.json +0 -35
- package/config/templates/insurance-smb/workflows/claims-processing.yaml +0 -48
- package/config/templates/insurance-smb/workflows.yaml +0 -43
- package/config/templates/marketing-team/README.md +0 -42
- package/config/templates/marketing-team/goals.md +0 -21
- package/config/templates/marketing-team/knowledge/docs/brand-voice-guide.md +0 -61
- package/config/templates/marketing-team/knowledge/docs/content-best-practices.md +0 -64
- package/config/templates/marketing-team/knowledge/index.json +0 -24
- package/config/templates/marketing-team/learned-patterns.json +0 -5
- package/config/templates/marketing-team/norms/brand-consistency.md +0 -40
- package/config/templates/marketing-team/norms/content-quality-checklist.md +0 -45
- package/config/templates/marketing-team/quality-gates.yaml +0 -47
- package/config/templates/marketing-team/roles/analyst.md +0 -63
- package/config/templates/marketing-team/roles/strategist.md +0 -26
- package/config/templates/marketing-team/roles/writer.md +0 -58
- package/config/templates/marketing-team/template.json +0 -90
- package/config/templates/marketing-team/workflows/weekly-content-cycle.yaml +0 -48
- package/config/templates/research-analysis/template.json +0 -133
- package/config/templates/security-audit-team.json +0 -67
- package/config/templates/social-media-ops/template.json +0 -129
- package/config/templates/social-media-ops-team/README.md +0 -145
- package/config/templates/social-media-ops-team/team-config.json +0 -21
- package/config/templates/social-media-ops-team.json +0 -67
- package/config/templates/video-production/template.json +0 -132
- package/dist/backend/backend/src/controllers/admin/admin.controller.d.ts +0 -69
- package/dist/backend/backend/src/controllers/admin/admin.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/admin/admin.controller.js +0 -187
- package/dist/backend/backend/src/controllers/admin/admin.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/admin/admin.routes.d.ts +0 -22
- package/dist/backend/backend/src/controllers/admin/admin.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/admin/admin.routes.js +0 -31
- package/dist/backend/backend/src/controllers/admin/admin.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts +0 -23
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js +0 -42
- package/dist/backend/backend/src/controllers/cloud/admin/admin-auth.middleware.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts +0 -56
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js +0 -173
- package/dist/backend/backend/src/controllers/cloud/admin/admin.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts +0 -22
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js +0 -33
- package/dist/backend/backend/src/controllers/cloud/admin/admin.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts +0 -7
- package/dist/backend/backend/src/controllers/cloud/admin/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/admin/index.js +0 -7
- package/dist/backend/backend/src/controllers/cloud/admin/index.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.d.ts +0 -81
- package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.js +0 -234
- package/dist/backend/backend/src/controllers/cloud/auth/auth.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts +0 -25
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js +0 -42
- package/dist/backend/backend/src/controllers/cloud/auth/auth.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.d.ts +0 -40
- package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.js +0 -161
- package/dist/backend/backend/src/controllers/cloud/auth/google-auth.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.d.ts +0 -69
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.js +0 -165
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.d.ts +0 -23
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.js +0 -32
- package/dist/backend/backend/src/controllers/cloud/cloud-auth.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/device.controller.d.ts +0 -34
- package/dist/backend/backend/src/controllers/cloud/device.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/device.controller.js +0 -70
- package/dist/backend/backend/src/controllers/cloud/device.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/device.routes.d.ts +0 -23
- package/dist/backend/backend/src/controllers/cloud/device.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/device.routes.js +0 -34
- package/dist/backend/backend/src/controllers/cloud/device.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.d.ts +0 -42
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.js +0 -138
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.d.ts +0 -23
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.js +0 -34
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.d.ts +0 -43
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.js +0 -9
- package/dist/backend/backend/src/controllers/cloud/files/cloud-file.types.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/index.d.ts +0 -7
- package/dist/backend/backend/src/controllers/cloud/files/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/files/index.js +0 -7
- package/dist/backend/backend/src/controllers/cloud/files/index.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.d.ts +0 -47
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.js +0 -131
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.d.ts +0 -23
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.js +0 -30
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.d.ts +0 -81
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.js +0 -85
- package/dist/backend/backend/src/controllers/cloud/h5/h5-entry.types.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/index.d.ts +0 -7
- package/dist/backend/backend/src/controllers/cloud/h5/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/h5/index.js +0 -7
- package/dist/backend/backend/src/controllers/cloud/h5/index.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/index.d.ts +0 -7
- package/dist/backend/backend/src/controllers/cloud/magic-moment/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/index.js +0 -7
- package/dist/backend/backend/src/controllers/cloud/magic-moment/index.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.d.ts +0 -45
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.js +0 -155
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.d.ts +0 -25
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.js +0 -32
- package/dist/backend/backend/src/controllers/cloud/magic-moment/magic-moment.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts +0 -97
- package/dist/backend/backend/src/controllers/cloud/relay.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/relay.controller.js +0 -317
- package/dist/backend/backend/src/controllers/cloud/relay.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts +0 -25
- package/dist/backend/backend/src/controllers/cloud/relay.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/relay.routes.js +0 -35
- package/dist/backend/backend/src/controllers/cloud/relay.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.d.ts +0 -49
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.js +0 -152
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.controller.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.d.ts +0 -24
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.js +0 -34
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.routes.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.d.ts +0 -90
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.js +0 -48
- package/dist/backend/backend/src/controllers/cloud/tasks/cloud-task.types.js.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts +0 -10
- package/dist/backend/backend/src/controllers/cloud/tasks/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/cloud/tasks/index.js +0 -10
- package/dist/backend/backend/src/controllers/cloud/tasks/index.js.map +0 -1
- package/dist/backend/backend/src/controllers/payment/index.d.ts +0 -7
- package/dist/backend/backend/src/controllers/payment/index.d.ts.map +0 -1
- package/dist/backend/backend/src/controllers/payment/index.js +0 -7
- package/dist/backend/backend/src/controllers/payment/index.js.map +0 -1
- package/dist/backend/backend/src/scripts/run-log-rotation.d.ts +0 -3
- package/dist/backend/backend/src/scripts/run-log-rotation.d.ts.map +0 -1
- package/dist/backend/backend/src/scripts/run-log-rotation.js +0 -31
- package/dist/backend/backend/src/scripts/run-log-rotation.js.map +0 -1
- package/dist/backend/backend/src/services/agent/openhands-runtime.service.d.ts +0 -70
- package/dist/backend/backend/src/services/agent/openhands-runtime.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/agent/openhands-runtime.service.js +0 -131
- package/dist/backend/backend/src/services/agent/openhands-runtime.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts +0 -18
- package/dist/backend/backend/src/services/cloud/admin-seed.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/admin-seed.service.js +0 -50
- package/dist/backend/backend/src/services/cloud/admin-seed.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/auth.service.d.ts +0 -203
- package/dist/backend/backend/src/services/cloud/auth/auth.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/auth.service.js +0 -494
- package/dist/backend/backend/src/services/cloud/auth/auth.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/auth.types.d.ts +0 -110
- package/dist/backend/backend/src/services/cloud/auth/auth.types.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/auth.types.js +0 -54
- package/dist/backend/backend/src/services/cloud/auth/auth.types.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.d.ts +0 -47
- package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.js +0 -116
- package/dist/backend/backend/src/services/cloud/auth/jwt-auth.middleware.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.d.ts +0 -25
- package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.js +0 -52
- package/dist/backend/backend/src/services/cloud/auth/require-user.middleware.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.d.ts +0 -61
- package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.js +0 -203
- package/dist/backend/backend/src/services/cloud/auth/supabase-auth.middleware.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-auth.service.d.ts +0 -136
- package/dist/backend/backend/src/services/cloud/cloud-auth.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-auth.service.js +0 -204
- package/dist/backend/backend/src/services/cloud/cloud-auth.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-features.d.ts +0 -19
- package/dist/backend/backend/src/services/cloud/cloud-features.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-features.js +0 -23
- package/dist/backend/backend/src/services/cloud/cloud-features.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-file.service.d.ts +0 -97
- package/dist/backend/backend/src/services/cloud/cloud-file.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-file.service.js +0 -184
- package/dist/backend/backend/src/services/cloud/cloud-file.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.d.ts +0 -114
- package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.js +0 -196
- package/dist/backend/backend/src/services/cloud/cloud-image-analysis.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts +0 -118
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js +0 -326
- package/dist/backend/backend/src/services/cloud/cloud-task-processor.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-task.service.d.ts +0 -115
- package/dist/backend/backend/src/services/cloud/cloud-task.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/cloud-task.service.js +0 -265
- package/dist/backend/backend/src/services/cloud/cloud-task.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/device-heartbeat.service.d.ts +0 -103
- package/dist/backend/backend/src/services/cloud/device-heartbeat.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/device-heartbeat.service.js +0 -143
- package/dist/backend/backend/src/services/cloud/device-heartbeat.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts +0 -45
- package/dist/backend/backend/src/services/cloud/mongodb.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/mongodb.service.js +0 -76
- package/dist/backend/backend/src/services/cloud/mongodb.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts +0 -245
- package/dist/backend/backend/src/services/cloud/relay-client.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-client.service.js +0 -586
- package/dist/backend/backend/src/services/cloud/relay-client.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-crypto.service.d.ts +0 -87
- package/dist/backend/backend/src/services/cloud/relay-crypto.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-crypto.service.js +0 -140
- package/dist/backend/backend/src/services/cloud/relay-crypto.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts +0 -181
- package/dist/backend/backend/src/services/cloud/relay-server.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay-server.service.js +0 -485
- package/dist/backend/backend/src/services/cloud/relay-server.service.js.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay.types.d.ts +0 -195
- package/dist/backend/backend/src/services/cloud/relay.types.d.ts.map +0 -1
- package/dist/backend/backend/src/services/cloud/relay.types.js +0 -69
- package/dist/backend/backend/src/services/cloud/relay.types.js.map +0 -1
- package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.d.ts +0 -47
- package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.d.ts.map +0 -1
- package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.js +0 -69
- package/dist/backend/backend/src/services/messaging/adapters/wechat-messenger.adapter.js.map +0 -1
- package/dist/backend/backend/src/services/payment/magic-moment.service.d.ts +0 -69
- package/dist/backend/backend/src/services/payment/magic-moment.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/payment/magic-moment.service.js +0 -158
- package/dist/backend/backend/src/services/payment/magic-moment.service.js.map +0 -1
- package/dist/backend/backend/src/services/payment/magic-moment.types.d.ts +0 -95
- package/dist/backend/backend/src/services/payment/magic-moment.types.d.ts.map +0 -1
- package/dist/backend/backend/src/services/payment/magic-moment.types.js +0 -91
- package/dist/backend/backend/src/services/payment/magic-moment.types.js.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat-bridge.service.d.ts +0 -69
- package/dist/backend/backend/src/services/wechat/wechat-bridge.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat-bridge.service.js +0 -133
- package/dist/backend/backend/src/services/wechat/wechat-bridge.service.js.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat.controller.d.ts +0 -51
- package/dist/backend/backend/src/services/wechat/wechat.controller.d.ts.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat.controller.js +0 -104
- package/dist/backend/backend/src/services/wechat/wechat.controller.js.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat.service.d.ts +0 -171
- package/dist/backend/backend/src/services/wechat/wechat.service.d.ts.map +0 -1
- package/dist/backend/backend/src/services/wechat/wechat.service.js +0 -411
- package/dist/backend/backend/src/services/wechat/wechat.service.js.map +0 -1
- package/frontend/dist/assets/index-58e9f83b.js +0 -5215
- package/frontend/dist/assets/index-a2db8a73.css +0 -33
|
@@ -0,0 +1,814 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Vector Store Service — v2
|
|
3
|
+
*
|
|
4
|
+
* Local, on-device vector storage using SQLite (better-sqlite3) with optional
|
|
5
|
+
* sqlite-vec extension for native KNN search. Falls back gracefully to
|
|
6
|
+
* JavaScript cosine similarity when the extension is unavailable.
|
|
7
|
+
*
|
|
8
|
+
* v2 improvements over v1:
|
|
9
|
+
* - Binary BLOB storage (Float32Array) instead of JSON TEXT (~4× smaller, faster)
|
|
10
|
+
* - Optional sqlite-vec integration for native SQL-based KNN search (cosine metric)
|
|
11
|
+
* - Dimension validation ensures all vectors in a scope share the same width
|
|
12
|
+
* - Prepared statement caching for repeated operations
|
|
13
|
+
* - Input sanitization (NaN, Infinity rejection)
|
|
14
|
+
* - Batch upsert with transaction wrapping
|
|
15
|
+
* - Automatic schema migration from v1 (JSON TEXT) databases
|
|
16
|
+
*
|
|
17
|
+
* Storage locations:
|
|
18
|
+
* - Global scope: ~/.crewly/vector-store.db
|
|
19
|
+
* - Project scope: {projectPath}/.crewly/vector-store.db
|
|
20
|
+
*
|
|
21
|
+
* @module services/memory/vector-store.service
|
|
22
|
+
*/
|
|
23
|
+
import * as path from 'path';
|
|
24
|
+
import { existsSync, mkdirSync } from 'fs';
|
|
25
|
+
import { LoggerService } from '../core/logger.service.js';
|
|
26
|
+
import { CREWLY_CONSTANTS } from '../../constants.js';
|
|
27
|
+
// ---------------------------------------------------------------------------
|
|
28
|
+
// Lazy module loading
|
|
29
|
+
// ---------------------------------------------------------------------------
|
|
30
|
+
/**
|
|
31
|
+
* Lazy-loaded better-sqlite3 module reference.
|
|
32
|
+
* Uses dynamic require so that a native-module load failure does NOT cascade
|
|
33
|
+
* to every test file that transitively imports this service.
|
|
34
|
+
*
|
|
35
|
+
* @see https://github.com/stevehuang0115/crewly/issues/170
|
|
36
|
+
*/
|
|
37
|
+
let _BetterSqlite3 = null;
|
|
38
|
+
/**
|
|
39
|
+
* Load better-sqlite3 on demand. Throws a clear error if the native module
|
|
40
|
+
* is not available (e.g. needs `npm rebuild better-sqlite3`).
|
|
41
|
+
*/
|
|
42
|
+
function getBetterSqlite3() {
|
|
43
|
+
if (!_BetterSqlite3) {
|
|
44
|
+
try {
|
|
45
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
46
|
+
_BetterSqlite3 = require('better-sqlite3');
|
|
47
|
+
}
|
|
48
|
+
catch (err) {
|
|
49
|
+
throw new Error('better-sqlite3 native module failed to load. Run `npm rebuild better-sqlite3` to fix. ' +
|
|
50
|
+
`Original error: ${err instanceof Error ? err.message : String(err)}`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return _BetterSqlite3;
|
|
54
|
+
}
|
|
55
|
+
/** Lazy-loaded sqlite-vec extension loader. */
|
|
56
|
+
let _sqliteVec = null;
|
|
57
|
+
let _sqliteVecLoadAttempted = false;
|
|
58
|
+
/**
|
|
59
|
+
* Attempt to load the sqlite-vec module. Returns null if unavailable.
|
|
60
|
+
*/
|
|
61
|
+
function getSqliteVec() {
|
|
62
|
+
if (!_sqliteVecLoadAttempted) {
|
|
63
|
+
_sqliteVecLoadAttempted = true;
|
|
64
|
+
try {
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
66
|
+
_sqliteVec = require('sqlite-vec');
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
_sqliteVec = null;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return _sqliteVec;
|
|
73
|
+
}
|
|
74
|
+
/** Reset the sqlite-vec loader state (for testing). */
|
|
75
|
+
export function resetSqliteVecLoader() {
|
|
76
|
+
_sqliteVec = null;
|
|
77
|
+
_sqliteVecLoadAttempted = false;
|
|
78
|
+
}
|
|
79
|
+
/** Constants for the vector store */
|
|
80
|
+
export const VECTOR_STORE_CONSTANTS = {
|
|
81
|
+
/** SQLite database filename */
|
|
82
|
+
DB_FILENAME: 'vector-store.db',
|
|
83
|
+
/** Default number of results for similarity search */
|
|
84
|
+
DEFAULT_SEARCH_LIMIT: 10,
|
|
85
|
+
/** Minimum cosine similarity threshold for search results */
|
|
86
|
+
DEFAULT_SIMILARITY_THRESHOLD: 0.1,
|
|
87
|
+
/** Maximum metadata JSON size (bytes) */
|
|
88
|
+
MAX_METADATA_SIZE: 65536,
|
|
89
|
+
/** Current schema version */
|
|
90
|
+
SCHEMA_VERSION: 2,
|
|
91
|
+
/** Maximum supported embedding dimensions */
|
|
92
|
+
MAX_DIMENSIONS: 4096,
|
|
93
|
+
/** Maximum items in a single batch upsert */
|
|
94
|
+
MAX_BATCH_SIZE: 500,
|
|
95
|
+
};
|
|
96
|
+
// ---------------------------------------------------------------------------
|
|
97
|
+
// Utility functions
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
/**
|
|
100
|
+
* Convert a number array to a Float32Array Buffer for efficient BLOB storage.
|
|
101
|
+
*
|
|
102
|
+
* @param embedding - The embedding vector
|
|
103
|
+
* @returns Buffer containing the Float32Array binary data
|
|
104
|
+
*/
|
|
105
|
+
export function embeddingToBlob(embedding) {
|
|
106
|
+
const f32 = new Float32Array(embedding);
|
|
107
|
+
return Buffer.from(f32.buffer);
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Convert a BLOB Buffer back to a number array.
|
|
111
|
+
*
|
|
112
|
+
* @param blob - Buffer containing Float32Array binary data
|
|
113
|
+
* @returns The embedding as a number array
|
|
114
|
+
*/
|
|
115
|
+
export function blobToEmbedding(blob) {
|
|
116
|
+
const f32 = new Float32Array(blob.buffer, blob.byteOffset, blob.byteLength / Float32Array.BYTES_PER_ELEMENT);
|
|
117
|
+
return Array.from(f32);
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Compute cosine similarity between two vectors.
|
|
121
|
+
*
|
|
122
|
+
* @param a - First vector
|
|
123
|
+
* @param b - Second vector
|
|
124
|
+
* @returns Cosine similarity in range [-1, 1], or 0 if vectors are incompatible
|
|
125
|
+
*/
|
|
126
|
+
export function cosineSimilarity(a, b) {
|
|
127
|
+
if (a.length !== b.length || a.length === 0) {
|
|
128
|
+
return 0;
|
|
129
|
+
}
|
|
130
|
+
let dotProduct = 0;
|
|
131
|
+
let normA = 0;
|
|
132
|
+
let normB = 0;
|
|
133
|
+
for (let i = 0; i < a.length; i++) {
|
|
134
|
+
dotProduct += a[i] * b[i];
|
|
135
|
+
normA += a[i] * a[i];
|
|
136
|
+
normB += b[i] * b[i];
|
|
137
|
+
}
|
|
138
|
+
const denominator = Math.sqrt(normA) * Math.sqrt(normB);
|
|
139
|
+
return denominator === 0 ? 0 : dotProduct / denominator;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Validate an embedding vector for storage. Rejects empty arrays, values
|
|
143
|
+
* that are not finite numbers (NaN, Infinity), and dimensions exceeding
|
|
144
|
+
* the maximum.
|
|
145
|
+
*
|
|
146
|
+
* @param embedding - The embedding to validate
|
|
147
|
+
* @throws Error if the embedding is invalid
|
|
148
|
+
*/
|
|
149
|
+
export function validateEmbedding(embedding) {
|
|
150
|
+
if (!embedding || embedding.length === 0) {
|
|
151
|
+
throw new Error('embedding must be a non-empty array');
|
|
152
|
+
}
|
|
153
|
+
if (embedding.length > VECTOR_STORE_CONSTANTS.MAX_DIMENSIONS) {
|
|
154
|
+
throw new Error(`embedding dimensions (${embedding.length}) exceed maximum (${VECTOR_STORE_CONSTANTS.MAX_DIMENSIONS})`);
|
|
155
|
+
}
|
|
156
|
+
for (let i = 0; i < embedding.length; i++) {
|
|
157
|
+
if (typeof embedding[i] !== 'number' || !isFinite(embedding[i])) {
|
|
158
|
+
throw new Error(`embedding contains invalid value at index ${i}: ${embedding[i]}`);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// ---------------------------------------------------------------------------
|
|
163
|
+
// Service
|
|
164
|
+
// ---------------------------------------------------------------------------
|
|
165
|
+
/**
|
|
166
|
+
* VectorStoreService provides local SQLite-based vector storage with optional
|
|
167
|
+
* native KNN search via the sqlite-vec extension.
|
|
168
|
+
*
|
|
169
|
+
* When sqlite-vec is available, search uses a `vec0` virtual table with cosine
|
|
170
|
+
* distance metric for hardware-accelerated nearest-neighbor queries. When it is
|
|
171
|
+
* not available, search falls back to JavaScript cosine similarity (fully
|
|
172
|
+
* portable, no native extension required).
|
|
173
|
+
*
|
|
174
|
+
* Each scope (global / project) gets its own database file so project data
|
|
175
|
+
* stays isolated and portable.
|
|
176
|
+
*
|
|
177
|
+
* @example
|
|
178
|
+
* ```typescript
|
|
179
|
+
* const store = VectorStoreService.getInstance();
|
|
180
|
+
* store.upsert('doc-123', embedding, { title: 'My Doc' }, 'global');
|
|
181
|
+
* const results = store.search(queryEmbedding, 'global');
|
|
182
|
+
* console.log(store.isVecEnabled('global')); // true if sqlite-vec loaded
|
|
183
|
+
* ```
|
|
184
|
+
*/
|
|
185
|
+
export class VectorStoreService {
|
|
186
|
+
static instance = null;
|
|
187
|
+
logger;
|
|
188
|
+
/** Cache of open database connections by resolved db path */
|
|
189
|
+
databases = new Map();
|
|
190
|
+
constructor() {
|
|
191
|
+
this.logger = LoggerService.getInstance().createComponentLogger('VectorStoreService');
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Get the singleton instance.
|
|
195
|
+
*
|
|
196
|
+
* @returns VectorStoreService instance
|
|
197
|
+
*/
|
|
198
|
+
static getInstance() {
|
|
199
|
+
if (!VectorStoreService.instance) {
|
|
200
|
+
VectorStoreService.instance = new VectorStoreService();
|
|
201
|
+
}
|
|
202
|
+
return VectorStoreService.instance;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Reset the singleton and close all open databases (for testing).
|
|
206
|
+
*/
|
|
207
|
+
static resetInstance() {
|
|
208
|
+
if (VectorStoreService.instance) {
|
|
209
|
+
VectorStoreService.instance.closeAll();
|
|
210
|
+
}
|
|
211
|
+
VectorStoreService.instance = null;
|
|
212
|
+
}
|
|
213
|
+
// ---------------------------------------------------------------------------
|
|
214
|
+
// Path helpers
|
|
215
|
+
// ---------------------------------------------------------------------------
|
|
216
|
+
/**
|
|
217
|
+
* Resolve the database file path for a given scope.
|
|
218
|
+
*
|
|
219
|
+
* @param scope - 'global' or 'project'
|
|
220
|
+
* @param projectPath - Required when scope is 'project'
|
|
221
|
+
* @returns Absolute path to the SQLite database file
|
|
222
|
+
* @throws Error if projectPath is missing for project scope
|
|
223
|
+
*/
|
|
224
|
+
dbPath(scope, projectPath) {
|
|
225
|
+
if (scope === 'project') {
|
|
226
|
+
if (!projectPath) {
|
|
227
|
+
throw new Error('projectPath is required for project scope');
|
|
228
|
+
}
|
|
229
|
+
return path.join(projectPath, CREWLY_CONSTANTS.PATHS.CREWLY_HOME, VECTOR_STORE_CONSTANTS.DB_FILENAME);
|
|
230
|
+
}
|
|
231
|
+
const home = process.env.HOME || process.env.USERPROFILE || '/tmp';
|
|
232
|
+
return path.join(home, CREWLY_CONSTANTS.PATHS.CREWLY_HOME, VECTOR_STORE_CONSTANTS.DB_FILENAME);
|
|
233
|
+
}
|
|
234
|
+
// ---------------------------------------------------------------------------
|
|
235
|
+
// Database management
|
|
236
|
+
// ---------------------------------------------------------------------------
|
|
237
|
+
/**
|
|
238
|
+
* Check whether the sqlite-vec native KNN search is available for a scope.
|
|
239
|
+
*
|
|
240
|
+
* @param scope - Storage scope
|
|
241
|
+
* @param projectPath - Required when scope is 'project'
|
|
242
|
+
* @returns true if vec0 virtual table is active
|
|
243
|
+
*/
|
|
244
|
+
isVecEnabled(scope, projectPath) {
|
|
245
|
+
const state = this.getDbState(scope, projectPath);
|
|
246
|
+
return state.vecEnabled;
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* Get (or prepare + cache) a statement for the given database state.
|
|
250
|
+
*
|
|
251
|
+
* @param state - Database state to prepare on
|
|
252
|
+
* @param key - Unique cache key
|
|
253
|
+
* @param sql - SQL to prepare if not yet cached
|
|
254
|
+
* @returns A prepared Statement
|
|
255
|
+
*/
|
|
256
|
+
getStmt(state, key, sql) {
|
|
257
|
+
let stmt = state.stmtCache.get(key);
|
|
258
|
+
if (!stmt) {
|
|
259
|
+
stmt = state.db.prepare(sql);
|
|
260
|
+
state.stmtCache.set(key, stmt);
|
|
261
|
+
}
|
|
262
|
+
return stmt;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Open or retrieve a cached database connection. Creates the parent
|
|
266
|
+
* directory, schema, and vec0 table (if sqlite-vec is available) on first
|
|
267
|
+
* access. Handles automatic migration from v1 databases.
|
|
268
|
+
*
|
|
269
|
+
* @param scope - Document scope
|
|
270
|
+
* @param projectPath - Project path for project-scoped databases
|
|
271
|
+
* @returns Internal DatabaseState
|
|
272
|
+
*/
|
|
273
|
+
getDbState(scope, projectPath) {
|
|
274
|
+
const dbFile = this.dbPath(scope, projectPath);
|
|
275
|
+
const cached = this.databases.get(dbFile);
|
|
276
|
+
if (cached)
|
|
277
|
+
return cached;
|
|
278
|
+
// Ensure parent directory exists
|
|
279
|
+
const dir = path.dirname(dbFile);
|
|
280
|
+
if (!existsSync(dir)) {
|
|
281
|
+
mkdirSync(dir, { recursive: true });
|
|
282
|
+
}
|
|
283
|
+
const Database = getBetterSqlite3();
|
|
284
|
+
const db = new Database(dbFile);
|
|
285
|
+
// Performance pragmas
|
|
286
|
+
db.pragma('journal_mode = WAL');
|
|
287
|
+
db.pragma('synchronous = NORMAL');
|
|
288
|
+
// Try loading sqlite-vec extension
|
|
289
|
+
let vecEnabled = false;
|
|
290
|
+
const sqliteVec = getSqliteVec();
|
|
291
|
+
if (sqliteVec) {
|
|
292
|
+
try {
|
|
293
|
+
sqliteVec.load(db);
|
|
294
|
+
vecEnabled = true;
|
|
295
|
+
this.logger.info('sqlite-vec extension loaded', { path: dbFile });
|
|
296
|
+
}
|
|
297
|
+
catch (err) {
|
|
298
|
+
this.logger.warn('sqlite-vec extension failed to load, using JS fallback', {
|
|
299
|
+
error: err instanceof Error ? err.message : String(err),
|
|
300
|
+
});
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
// Run schema migration
|
|
304
|
+
this.migrateSchema(db, vecEnabled);
|
|
305
|
+
const state = {
|
|
306
|
+
db,
|
|
307
|
+
vecEnabled,
|
|
308
|
+
dimensions: this.getStoredDimensions(db),
|
|
309
|
+
stmtCache: new Map(),
|
|
310
|
+
};
|
|
311
|
+
this.databases.set(dbFile, state);
|
|
312
|
+
this.logger.info('Opened vector store database', { path: dbFile, scope, vecEnabled });
|
|
313
|
+
return state;
|
|
314
|
+
}
|
|
315
|
+
/**
|
|
316
|
+
* Migrate database schema to v2.
|
|
317
|
+
* - Creates vec_config table for tracking schema version and dimensions
|
|
318
|
+
* - Adds dimensions column if missing
|
|
319
|
+
* - Converts JSON TEXT embeddings to BLOB if needed
|
|
320
|
+
* - Creates vec0 virtual table if sqlite-vec is available and dimensions are known
|
|
321
|
+
*
|
|
322
|
+
* @param db - The database to migrate
|
|
323
|
+
* @param vecEnabled - Whether sqlite-vec extension is loaded
|
|
324
|
+
*/
|
|
325
|
+
migrateSchema(db, vecEnabled) {
|
|
326
|
+
// Config table for schema metadata
|
|
327
|
+
db.exec(`
|
|
328
|
+
CREATE TABLE IF NOT EXISTS vec_config (
|
|
329
|
+
key TEXT PRIMARY KEY,
|
|
330
|
+
value TEXT NOT NULL
|
|
331
|
+
);
|
|
332
|
+
`);
|
|
333
|
+
const versionRow = db.prepare('SELECT value FROM vec_config WHERE key = ?').get('schema_version');
|
|
334
|
+
const currentVersion = versionRow ? parseInt(versionRow.value, 10) : 0;
|
|
335
|
+
if (currentVersion < VECTOR_STORE_CONSTANTS.SCHEMA_VERSION) {
|
|
336
|
+
const tableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='embeddings'").get();
|
|
337
|
+
if (tableExists) {
|
|
338
|
+
// Check column types to detect v1 vs v2
|
|
339
|
+
const colInfo = db.prepare('PRAGMA table_info(embeddings)').all();
|
|
340
|
+
const embeddingCol = colInfo.find((c) => c.name === 'embedding');
|
|
341
|
+
const hasDimensionsCol = colInfo.some((c) => c.name === 'dimensions');
|
|
342
|
+
if (embeddingCol && embeddingCol.type === 'TEXT') {
|
|
343
|
+
// v1 → v2: convert JSON TEXT embeddings to BLOB
|
|
344
|
+
this.logger.info('Migrating vector store from v1 (JSON) to v2 (BLOB)');
|
|
345
|
+
if (!hasDimensionsCol) {
|
|
346
|
+
db.exec('ALTER TABLE embeddings ADD COLUMN dimensions INTEGER NOT NULL DEFAULT 0');
|
|
347
|
+
}
|
|
348
|
+
const rows = db.prepare("SELECT id, embedding FROM embeddings WHERE typeof(embedding) = 'text'").all();
|
|
349
|
+
const updateStmt = db.prepare('UPDATE embeddings SET embedding = ?, dimensions = ? WHERE id = ?');
|
|
350
|
+
const migrate = db.transaction(() => {
|
|
351
|
+
for (const row of rows) {
|
|
352
|
+
try {
|
|
353
|
+
const arr = JSON.parse(row.embedding);
|
|
354
|
+
updateStmt.run(embeddingToBlob(arr), arr.length, row.id);
|
|
355
|
+
}
|
|
356
|
+
catch (err) {
|
|
357
|
+
this.logger.warn('Failed to migrate embedding', {
|
|
358
|
+
id: row.id,
|
|
359
|
+
error: String(err),
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
migrate();
|
|
365
|
+
}
|
|
366
|
+
else if (!hasDimensionsCol) {
|
|
367
|
+
db.exec('ALTER TABLE embeddings ADD COLUMN dimensions INTEGER NOT NULL DEFAULT 0');
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
else {
|
|
371
|
+
// Fresh database — create v2 schema directly
|
|
372
|
+
db.exec(`
|
|
373
|
+
CREATE TABLE embeddings (
|
|
374
|
+
id TEXT PRIMARY KEY,
|
|
375
|
+
embedding BLOB NOT NULL,
|
|
376
|
+
metadata TEXT NOT NULL DEFAULT '{}',
|
|
377
|
+
dimensions INTEGER NOT NULL DEFAULT 0,
|
|
378
|
+
created_at TEXT NOT NULL,
|
|
379
|
+
updated_at TEXT NOT NULL
|
|
380
|
+
);
|
|
381
|
+
CREATE INDEX IF NOT EXISTS idx_embeddings_updated_at ON embeddings(updated_at);
|
|
382
|
+
`);
|
|
383
|
+
}
|
|
384
|
+
db.prepare('INSERT OR REPLACE INTO vec_config (key, value) VALUES (?, ?)').run('schema_version', String(VECTOR_STORE_CONSTANTS.SCHEMA_VERSION));
|
|
385
|
+
}
|
|
386
|
+
// Create vec0 virtual table if sqlite-vec is available and dimensions are known
|
|
387
|
+
if (vecEnabled) {
|
|
388
|
+
this.ensureVecTable(db);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
/**
|
|
392
|
+
* Create the vec0 virtual table if it doesn't already exist and dimensions
|
|
393
|
+
* are known. Returns true if the table is ready for use.
|
|
394
|
+
*
|
|
395
|
+
* @param db - The database
|
|
396
|
+
* @param dimensions - Explicit dimensions; if omitted, reads from vec_config
|
|
397
|
+
* @returns true if vec0 table exists and is ready
|
|
398
|
+
*/
|
|
399
|
+
ensureVecTable(db, dimensions) {
|
|
400
|
+
const dim = dimensions || this.getStoredDimensions(db);
|
|
401
|
+
if (!dim || dim <= 0)
|
|
402
|
+
return false;
|
|
403
|
+
const vecTableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='vec_embeddings'").get();
|
|
404
|
+
if (!vecTableExists) {
|
|
405
|
+
try {
|
|
406
|
+
db.exec(`CREATE VIRTUAL TABLE vec_embeddings USING vec0(embedding float[${dim}] distance_metric=cosine)`);
|
|
407
|
+
db.prepare('INSERT OR REPLACE INTO vec_config (key, value) VALUES (?, ?)').run('vec_dimensions', String(dim));
|
|
408
|
+
this.logger.info('Created vec0 virtual table', { dimensions: dim });
|
|
409
|
+
// Backfill existing embeddings into vec0
|
|
410
|
+
this.backfillVecTable(db, dim);
|
|
411
|
+
return true;
|
|
412
|
+
}
|
|
413
|
+
catch (err) {
|
|
414
|
+
this.logger.warn('Failed to create vec0 table', {
|
|
415
|
+
error: err instanceof Error ? err.message : String(err),
|
|
416
|
+
});
|
|
417
|
+
return false;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
return true;
|
|
421
|
+
}
|
|
422
|
+
/**
|
|
423
|
+
* Copy all existing embeddings matching the target dimensions into the vec0
|
|
424
|
+
* virtual table.
|
|
425
|
+
*
|
|
426
|
+
* @param db - The database
|
|
427
|
+
* @param dimensions - Target embedding dimensions
|
|
428
|
+
*/
|
|
429
|
+
backfillVecTable(db, dimensions) {
|
|
430
|
+
const rows = db.prepare('SELECT rowid, embedding, dimensions FROM embeddings WHERE dimensions = ?').all(dimensions);
|
|
431
|
+
if (rows.length === 0)
|
|
432
|
+
return;
|
|
433
|
+
const insertVec = db.prepare('INSERT OR REPLACE INTO vec_embeddings(rowid, embedding) VALUES (CAST(? AS INTEGER), ?)');
|
|
434
|
+
const backfill = db.transaction(() => {
|
|
435
|
+
for (const row of rows) {
|
|
436
|
+
try {
|
|
437
|
+
insertVec.run(row.rowid, row.embedding);
|
|
438
|
+
}
|
|
439
|
+
catch (err) {
|
|
440
|
+
this.logger.warn('Failed to backfill vec embedding', {
|
|
441
|
+
rowid: row.rowid,
|
|
442
|
+
error: String(err),
|
|
443
|
+
});
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
backfill();
|
|
448
|
+
this.logger.info('Backfilled vec0 table', { count: rows.length });
|
|
449
|
+
}
|
|
450
|
+
/**
|
|
451
|
+
* Read the stored embedding dimensions from the vec_config table.
|
|
452
|
+
*
|
|
453
|
+
* @param db - The database
|
|
454
|
+
* @returns Stored dimensions, or null if not yet determined
|
|
455
|
+
*/
|
|
456
|
+
getStoredDimensions(db) {
|
|
457
|
+
try {
|
|
458
|
+
const row = db.prepare('SELECT value FROM vec_config WHERE key = ?').get('vec_dimensions');
|
|
459
|
+
return row ? parseInt(row.value, 10) : null;
|
|
460
|
+
}
|
|
461
|
+
catch {
|
|
462
|
+
return null;
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
/**
|
|
466
|
+
* Close all open database connections and clear caches.
|
|
467
|
+
*/
|
|
468
|
+
closeAll() {
|
|
469
|
+
for (const [filePath, state] of this.databases) {
|
|
470
|
+
try {
|
|
471
|
+
state.stmtCache.clear();
|
|
472
|
+
state.db.close();
|
|
473
|
+
this.logger.debug('Closed vector store database', { path: filePath });
|
|
474
|
+
}
|
|
475
|
+
catch (error) {
|
|
476
|
+
this.logger.warn('Error closing database', {
|
|
477
|
+
path: filePath,
|
|
478
|
+
error: error instanceof Error ? error.message : String(error),
|
|
479
|
+
});
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
this.databases.clear();
|
|
483
|
+
}
|
|
484
|
+
// ---------------------------------------------------------------------------
|
|
485
|
+
// Public API
|
|
486
|
+
// ---------------------------------------------------------------------------
|
|
487
|
+
/**
|
|
488
|
+
* Store or update an embedding for a document.
|
|
489
|
+
*
|
|
490
|
+
* @param id - Document identifier
|
|
491
|
+
* @param embedding - The embedding vector (array of numbers)
|
|
492
|
+
* @param metadata - Optional metadata to associate with the embedding
|
|
493
|
+
* @param scope - Storage scope ('global' or 'project')
|
|
494
|
+
* @param projectPath - Required when scope is 'project'
|
|
495
|
+
* @throws Error if id is empty, embedding is invalid, metadata exceeds size,
|
|
496
|
+
* or dimensions don't match previously stored embeddings
|
|
497
|
+
*/
|
|
498
|
+
upsert(id, embedding, metadata, scope, projectPath) {
|
|
499
|
+
if (!id) {
|
|
500
|
+
throw new Error('id is required');
|
|
501
|
+
}
|
|
502
|
+
validateEmbedding(embedding);
|
|
503
|
+
const metadataJson = JSON.stringify(metadata);
|
|
504
|
+
if (metadataJson.length > VECTOR_STORE_CONSTANTS.MAX_METADATA_SIZE) {
|
|
505
|
+
throw new Error(`metadata exceeds maximum size of ${VECTOR_STORE_CONSTANTS.MAX_METADATA_SIZE} bytes`);
|
|
506
|
+
}
|
|
507
|
+
const state = this.getDbState(scope, projectPath);
|
|
508
|
+
// Dimension consistency: all vectors in a scope must share the same width
|
|
509
|
+
if (state.dimensions && state.dimensions !== embedding.length) {
|
|
510
|
+
throw new Error(`Dimension mismatch: expected ${state.dimensions}, got ${embedding.length}. ` +
|
|
511
|
+
'All embeddings in a scope must have the same dimensions.');
|
|
512
|
+
}
|
|
513
|
+
const now = new Date().toISOString();
|
|
514
|
+
const blob = embeddingToBlob(embedding);
|
|
515
|
+
const upsertStmt = this.getStmt(state, 'upsert', `INSERT INTO embeddings (id, embedding, metadata, dimensions, created_at, updated_at)
|
|
516
|
+
VALUES (?, ?, ?, ?, ?, ?)
|
|
517
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
518
|
+
embedding = excluded.embedding,
|
|
519
|
+
metadata = excluded.metadata,
|
|
520
|
+
dimensions = excluded.dimensions,
|
|
521
|
+
updated_at = excluded.updated_at`);
|
|
522
|
+
upsertStmt.run(id, blob, metadataJson, embedding.length, now, now);
|
|
523
|
+
// Track dimensions on first insert
|
|
524
|
+
if (!state.dimensions) {
|
|
525
|
+
state.dimensions = embedding.length;
|
|
526
|
+
state.db.prepare('INSERT OR REPLACE INTO vec_config (key, value) VALUES (?, ?)').run('vec_dimensions', String(embedding.length));
|
|
527
|
+
// Now we know dimensions — create vec0 table if available
|
|
528
|
+
if (state.vecEnabled) {
|
|
529
|
+
this.ensureVecTable(state.db, embedding.length);
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
// Sync to vec0 table
|
|
533
|
+
if (state.vecEnabled && state.dimensions === embedding.length) {
|
|
534
|
+
this.syncToVec(state, id, blob);
|
|
535
|
+
}
|
|
536
|
+
this.logger.debug('Upserted embedding', {
|
|
537
|
+
id,
|
|
538
|
+
scope,
|
|
539
|
+
dimensions: embedding.length,
|
|
540
|
+
vecEnabled: state.vecEnabled,
|
|
541
|
+
});
|
|
542
|
+
}
|
|
543
|
+
/**
|
|
544
|
+
* Sync a single embedding to the vec0 virtual table.
|
|
545
|
+
* Uses CAST(? AS INTEGER) for rowid because sqlite-vec's vec0 virtual
|
|
546
|
+
* table does not accept JS number params directly for primary keys.
|
|
547
|
+
*
|
|
548
|
+
* @param state - Database state
|
|
549
|
+
* @param id - Document identifier
|
|
550
|
+
* @param blob - Embedding as a Float32Array buffer
|
|
551
|
+
*/
|
|
552
|
+
syncToVec(state, id, blob) {
|
|
553
|
+
try {
|
|
554
|
+
const rowObj = state.db.prepare('SELECT rowid FROM embeddings WHERE id = ?').get(id);
|
|
555
|
+
if (rowObj) {
|
|
556
|
+
state.db.prepare('DELETE FROM vec_embeddings WHERE rowid = CAST(? AS INTEGER)').run(rowObj.rowid);
|
|
557
|
+
state.db.prepare('INSERT INTO vec_embeddings(rowid, embedding) VALUES (CAST(? AS INTEGER), ?)').run(rowObj.rowid, blob);
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
catch (err) {
|
|
561
|
+
this.logger.warn('Failed to sync embedding to vec0', {
|
|
562
|
+
id,
|
|
563
|
+
error: err instanceof Error ? err.message : String(err),
|
|
564
|
+
});
|
|
565
|
+
}
|
|
566
|
+
}
|
|
567
|
+
/**
|
|
568
|
+
* Batch upsert multiple embeddings in a single transaction. Significantly
|
|
569
|
+
* faster than individual upserts for bulk imports.
|
|
570
|
+
*
|
|
571
|
+
* @param items - Array of { id, embedding, metadata } objects
|
|
572
|
+
* @param scope - Storage scope
|
|
573
|
+
* @param projectPath - Required when scope is 'project'
|
|
574
|
+
* @returns Count of succeeded and failed inserts
|
|
575
|
+
* @throws Error if batch size exceeds MAX_BATCH_SIZE
|
|
576
|
+
*/
|
|
577
|
+
batchUpsert(items, scope, projectPath) {
|
|
578
|
+
if (items.length > VECTOR_STORE_CONSTANTS.MAX_BATCH_SIZE) {
|
|
579
|
+
throw new Error(`Batch size ${items.length} exceeds maximum ${VECTOR_STORE_CONSTANTS.MAX_BATCH_SIZE}`);
|
|
580
|
+
}
|
|
581
|
+
let succeeded = 0;
|
|
582
|
+
let failed = 0;
|
|
583
|
+
const state = this.getDbState(scope, projectPath);
|
|
584
|
+
const txn = state.db.transaction(() => {
|
|
585
|
+
for (const item of items) {
|
|
586
|
+
try {
|
|
587
|
+
this.upsert(item.id, item.embedding, item.metadata, scope, projectPath);
|
|
588
|
+
succeeded++;
|
|
589
|
+
}
|
|
590
|
+
catch (err) {
|
|
591
|
+
this.logger.warn('Batch upsert item failed', {
|
|
592
|
+
id: item.id,
|
|
593
|
+
error: err instanceof Error ? err.message : String(err),
|
|
594
|
+
});
|
|
595
|
+
failed++;
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
});
|
|
599
|
+
txn();
|
|
600
|
+
return { succeeded, failed };
|
|
601
|
+
}
|
|
602
|
+
/**
|
|
603
|
+
* Retrieve a stored embedding by document ID.
|
|
604
|
+
*
|
|
605
|
+
* @param id - Document identifier
|
|
606
|
+
* @param scope - Storage scope
|
|
607
|
+
* @param projectPath - Required when scope is 'project'
|
|
608
|
+
* @returns The vector record, or null if not found
|
|
609
|
+
*/
|
|
610
|
+
get(id, scope, projectPath) {
|
|
611
|
+
const state = this.getDbState(scope, projectPath);
|
|
612
|
+
const stmt = this.getStmt(state, 'get', 'SELECT * FROM embeddings WHERE id = ?');
|
|
613
|
+
const row = stmt.get(id);
|
|
614
|
+
if (!row) {
|
|
615
|
+
return null;
|
|
616
|
+
}
|
|
617
|
+
return {
|
|
618
|
+
id: row.id,
|
|
619
|
+
embedding: row.embedding instanceof Buffer
|
|
620
|
+
? blobToEmbedding(row.embedding)
|
|
621
|
+
: JSON.parse(row.embedding),
|
|
622
|
+
metadata: JSON.parse(row.metadata),
|
|
623
|
+
createdAt: row.created_at,
|
|
624
|
+
updatedAt: row.updated_at,
|
|
625
|
+
};
|
|
626
|
+
}
|
|
627
|
+
/**
|
|
628
|
+
* Delete an embedding by document ID.
|
|
629
|
+
*
|
|
630
|
+
* @param id - Document identifier
|
|
631
|
+
* @param scope - Storage scope
|
|
632
|
+
* @param projectPath - Required when scope is 'project'
|
|
633
|
+
* @returns True if a record was deleted, false if not found
|
|
634
|
+
*/
|
|
635
|
+
delete(id, scope, projectPath) {
|
|
636
|
+
const state = this.getDbState(scope, projectPath);
|
|
637
|
+
// Remove from vec0 first if available
|
|
638
|
+
if (state.vecEnabled) {
|
|
639
|
+
try {
|
|
640
|
+
const rowObj = state.db.prepare('SELECT rowid FROM embeddings WHERE id = ?').get(id);
|
|
641
|
+
if (rowObj) {
|
|
642
|
+
state.db.prepare('DELETE FROM vec_embeddings WHERE rowid = CAST(? AS INTEGER)').run(rowObj.rowid);
|
|
643
|
+
}
|
|
644
|
+
}
|
|
645
|
+
catch {
|
|
646
|
+
// vec0 delete failure is non-fatal
|
|
647
|
+
}
|
|
648
|
+
}
|
|
649
|
+
const stmt = this.getStmt(state, 'delete', 'DELETE FROM embeddings WHERE id = ?');
|
|
650
|
+
const result = stmt.run(id);
|
|
651
|
+
return result.changes > 0;
|
|
652
|
+
}
|
|
653
|
+
/**
|
|
654
|
+
* Check whether an embedding exists for a given document ID.
|
|
655
|
+
*
|
|
656
|
+
* @param id - Document identifier
|
|
657
|
+
* @param scope - Storage scope
|
|
658
|
+
* @param projectPath - Required when scope is 'project'
|
|
659
|
+
* @returns True if the embedding exists
|
|
660
|
+
*/
|
|
661
|
+
has(id, scope, projectPath) {
|
|
662
|
+
const state = this.getDbState(scope, projectPath);
|
|
663
|
+
const stmt = this.getStmt(state, 'has', 'SELECT 1 FROM embeddings WHERE id = ?');
|
|
664
|
+
return stmt.get(id) !== undefined;
|
|
665
|
+
}
|
|
666
|
+
/**
|
|
667
|
+
* Return the total number of stored embeddings.
|
|
668
|
+
*
|
|
669
|
+
* @param scope - Storage scope
|
|
670
|
+
* @param projectPath - Required when scope is 'project'
|
|
671
|
+
* @returns Count of stored embeddings
|
|
672
|
+
*/
|
|
673
|
+
count(scope, projectPath) {
|
|
674
|
+
const state = this.getDbState(scope, projectPath);
|
|
675
|
+
const stmt = this.getStmt(state, 'count', 'SELECT COUNT(*) as cnt FROM embeddings');
|
|
676
|
+
return stmt.get().cnt;
|
|
677
|
+
}
|
|
678
|
+
/**
|
|
679
|
+
* Search for the most similar embeddings. Uses native vec0 KNN search when
|
|
680
|
+
* sqlite-vec is available, otherwise falls back to JavaScript cosine
|
|
681
|
+
* similarity.
|
|
682
|
+
*
|
|
683
|
+
* @param queryEmbedding - The query embedding vector
|
|
684
|
+
* @param scope - Storage scope
|
|
685
|
+
* @param projectPath - Required when scope is 'project'
|
|
686
|
+
* @param limit - Maximum number of results (default 10)
|
|
687
|
+
* @param threshold - Minimum similarity threshold (default 0.1)
|
|
688
|
+
* @returns Matching records sorted by descending similarity
|
|
689
|
+
*/
|
|
690
|
+
search(queryEmbedding, scope, projectPath, limit = VECTOR_STORE_CONSTANTS.DEFAULT_SEARCH_LIMIT, threshold = VECTOR_STORE_CONSTANTS.DEFAULT_SIMILARITY_THRESHOLD) {
|
|
691
|
+
if (!queryEmbedding || queryEmbedding.length === 0) {
|
|
692
|
+
return [];
|
|
693
|
+
}
|
|
694
|
+
const state = this.getDbState(scope, projectPath);
|
|
695
|
+
// Try native vec0 KNN search
|
|
696
|
+
if (state.vecEnabled && state.dimensions === queryEmbedding.length) {
|
|
697
|
+
try {
|
|
698
|
+
return this.vecSearch(state, queryEmbedding, limit, threshold);
|
|
699
|
+
}
|
|
700
|
+
catch (err) {
|
|
701
|
+
this.logger.warn('vec0 search failed, falling back to JS', {
|
|
702
|
+
error: err instanceof Error ? err.message : String(err),
|
|
703
|
+
});
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
// Fallback: JavaScript cosine similarity
|
|
707
|
+
return this.jsFallbackSearch(state, queryEmbedding, limit, threshold);
|
|
708
|
+
}
|
|
709
|
+
/**
|
|
710
|
+
* Native KNN search using sqlite-vec's vec0 virtual table with cosine
|
|
711
|
+
* distance metric. Results are converted from cosine distance (0 = identical,
|
|
712
|
+
* 1 = orthogonal) to cosine similarity (1 = identical, 0 = orthogonal).
|
|
713
|
+
*
|
|
714
|
+
* @param state - Database state
|
|
715
|
+
* @param queryEmbedding - The query vector
|
|
716
|
+
* @param limit - Max results
|
|
717
|
+
* @param threshold - Minimum cosine similarity
|
|
718
|
+
* @returns Sorted search results
|
|
719
|
+
*/
|
|
720
|
+
vecSearch(state, queryEmbedding, limit, threshold) {
|
|
721
|
+
const queryBlob = embeddingToBlob(queryEmbedding);
|
|
722
|
+
// Fetch candidates from vec0 (request extra to account for threshold filtering)
|
|
723
|
+
const vecRows = state.db.prepare(`SELECT rowid, distance
|
|
724
|
+
FROM vec_embeddings
|
|
725
|
+
WHERE embedding MATCH ?
|
|
726
|
+
ORDER BY distance
|
|
727
|
+
LIMIT ?`).all(queryBlob, limit * 2);
|
|
728
|
+
if (vecRows.length === 0)
|
|
729
|
+
return [];
|
|
730
|
+
// Fetch metadata for matched rowids
|
|
731
|
+
const rowids = vecRows.map((r) => r.rowid);
|
|
732
|
+
const placeholders = rowids.map(() => '?').join(',');
|
|
733
|
+
const metaRows = state.db.prepare(`SELECT rowid, id, metadata FROM embeddings WHERE rowid IN (${placeholders})`).all(...rowids);
|
|
734
|
+
const metaMap = new Map(metaRows.map((r) => [r.rowid, r]));
|
|
735
|
+
// Convert cosine distance to cosine similarity: sim = 1 - distance
|
|
736
|
+
const results = [];
|
|
737
|
+
for (const vr of vecRows) {
|
|
738
|
+
const meta = metaMap.get(vr.rowid);
|
|
739
|
+
if (!meta)
|
|
740
|
+
continue;
|
|
741
|
+
const score = 1 - vr.distance;
|
|
742
|
+
if (score >= threshold) {
|
|
743
|
+
results.push({
|
|
744
|
+
id: meta.id,
|
|
745
|
+
score,
|
|
746
|
+
metadata: JSON.parse(meta.metadata),
|
|
747
|
+
});
|
|
748
|
+
}
|
|
749
|
+
}
|
|
750
|
+
results.sort((a, b) => b.score - a.score);
|
|
751
|
+
return results.slice(0, limit);
|
|
752
|
+
}
|
|
753
|
+
/**
|
|
754
|
+
* JavaScript fallback search using cosine similarity on BLOB embeddings.
|
|
755
|
+
* Used when sqlite-vec is not available.
|
|
756
|
+
*
|
|
757
|
+
* @param state - Database state
|
|
758
|
+
* @param queryEmbedding - The query vector
|
|
759
|
+
* @param limit - Max results
|
|
760
|
+
* @param threshold - Minimum cosine similarity
|
|
761
|
+
* @returns Sorted search results
|
|
762
|
+
*/
|
|
763
|
+
jsFallbackSearch(state, queryEmbedding, limit, threshold) {
|
|
764
|
+
const rows = state.db.prepare('SELECT id, embedding, metadata FROM embeddings').all();
|
|
765
|
+
const results = [];
|
|
766
|
+
for (const row of rows) {
|
|
767
|
+
const storedEmbedding = row.embedding instanceof Buffer
|
|
768
|
+
? blobToEmbedding(row.embedding)
|
|
769
|
+
: JSON.parse(row.embedding);
|
|
770
|
+
const score = cosineSimilarity(queryEmbedding, storedEmbedding);
|
|
771
|
+
if (score >= threshold) {
|
|
772
|
+
results.push({
|
|
773
|
+
id: row.id,
|
|
774
|
+
score,
|
|
775
|
+
metadata: JSON.parse(row.metadata),
|
|
776
|
+
});
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
results.sort((a, b) => b.score - a.score);
|
|
780
|
+
return results.slice(0, limit);
|
|
781
|
+
}
|
|
782
|
+
/**
|
|
783
|
+
* Delete all embeddings from the store. Also resets the stored dimension
|
|
784
|
+
* constraint so that subsequent inserts may use a different embedding width.
|
|
785
|
+
*
|
|
786
|
+
* @param scope - Storage scope
|
|
787
|
+
* @param projectPath - Required when scope is 'project'
|
|
788
|
+
* @returns Number of records deleted
|
|
789
|
+
*/
|
|
790
|
+
clear(scope, projectPath) {
|
|
791
|
+
const state = this.getDbState(scope, projectPath);
|
|
792
|
+
// Drop vec0 table so it can be recreated with new dimensions
|
|
793
|
+
if (state.vecEnabled) {
|
|
794
|
+
try {
|
|
795
|
+
state.db.exec('DROP TABLE IF EXISTS vec_embeddings');
|
|
796
|
+
}
|
|
797
|
+
catch {
|
|
798
|
+
// Non-fatal
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
const stmt = this.getStmt(state, 'clear', 'DELETE FROM embeddings');
|
|
802
|
+
const result = stmt.run();
|
|
803
|
+
// Reset dimension tracking — no data means no dimension constraint
|
|
804
|
+
state.dimensions = null;
|
|
805
|
+
try {
|
|
806
|
+
state.db.prepare('DELETE FROM vec_config WHERE key = ?').run('vec_dimensions');
|
|
807
|
+
}
|
|
808
|
+
catch {
|
|
809
|
+
// Non-fatal
|
|
810
|
+
}
|
|
811
|
+
return result.changes;
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
//# sourceMappingURL=vector-store.service.js.map
|