@jamesaphoenix/tx-core 0.8.1 → 0.9.2
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/dist/db.d.ts +6 -6
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +29 -2
- package/dist/db.js.map +1 -1
- package/dist/index.d.ts +8 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/cycle-scan-service-impl.d.ts +28 -0
- package/dist/internal/cycle-scan-service-impl.d.ts.map +1 -0
- package/dist/internal/cycle-scan-service-impl.js +877 -0
- package/dist/internal/cycle-scan-service-impl.js.map +1 -0
- package/dist/internal/doc-service-impl.d.ts +42 -0
- package/dist/internal/doc-service-impl.d.ts.map +1 -0
- package/dist/internal/doc-service-impl.js +812 -0
- package/dist/internal/doc-service-impl.js.map +1 -0
- package/dist/internal/embedding-service-impl.d.ts +202 -0
- package/dist/internal/embedding-service-impl.d.ts.map +1 -0
- package/dist/internal/embedding-service-impl.js +466 -0
- package/dist/internal/embedding-service-impl.js.map +1 -0
- package/dist/internal/memory-service-impl.d.ts +49 -0
- package/dist/internal/memory-service-impl.d.ts.map +1 -0
- package/dist/internal/memory-service-impl.js +1061 -0
- package/dist/internal/memory-service-impl.js.map +1 -0
- package/dist/internal/spec-trace-service-impl.d.ts +50 -0
- package/dist/internal/spec-trace-service-impl.d.ts.map +1 -0
- package/dist/internal/spec-trace-service-impl.js +707 -0
- package/dist/internal/spec-trace-service-impl.js.map +1 -0
- package/dist/internal/sync/service-impl.d.ts +41 -0
- package/dist/internal/sync/service-impl.d.ts.map +1 -0
- package/dist/{services/sync-service.js → internal/sync/service-impl.js} +954 -499
- package/dist/internal/sync/service-impl.js.map +1 -0
- package/dist/layer.d.ts +8 -5
- package/dist/layer.d.ts.map +1 -1
- package/dist/layer.js +22 -10
- package/dist/layer.js.map +1 -1
- package/dist/mappers/anchor.d.ts.map +1 -1
- package/dist/mappers/anchor.js +5 -4
- package/dist/mappers/anchor.js.map +1 -1
- package/dist/mappers/attempt.d.ts.map +1 -1
- package/dist/mappers/attempt.js +2 -1
- package/dist/mappers/attempt.js.map +1 -1
- package/dist/mappers/candidate.d.ts.map +1 -1
- package/dist/mappers/candidate.js +2 -1
- package/dist/mappers/candidate.js.map +1 -1
- package/dist/mappers/claim.d.ts.map +1 -1
- package/dist/mappers/claim.js +2 -1
- package/dist/mappers/claim.js.map +1 -1
- package/dist/mappers/doc.d.ts.map +1 -1
- package/dist/mappers/doc.js +9 -8
- package/dist/mappers/doc.js.map +1 -1
- package/dist/mappers/edge.d.ts.map +1 -1
- package/dist/mappers/edge.js +4 -3
- package/dist/mappers/edge.js.map +1 -1
- package/dist/mappers/file-learning.d.ts.map +1 -1
- package/dist/mappers/file-learning.js +2 -1
- package/dist/mappers/file-learning.js.map +1 -1
- package/dist/mappers/index.d.ts +1 -0
- package/dist/mappers/index.d.ts.map +1 -1
- package/dist/mappers/index.js +2 -0
- package/dist/mappers/index.js.map +1 -1
- package/dist/mappers/learning.d.ts.map +1 -1
- package/dist/mappers/learning.js +4 -3
- package/dist/mappers/learning.js.map +1 -1
- package/dist/mappers/memory.d.ts.map +1 -1
- package/dist/mappers/memory.js +7 -6
- package/dist/mappers/memory.js.map +1 -1
- package/dist/mappers/orchestrator-state.d.ts.map +1 -1
- package/dist/mappers/orchestrator-state.js +2 -1
- package/dist/mappers/orchestrator-state.js.map +1 -1
- package/dist/mappers/pin.d.ts.map +1 -1
- package/dist/mappers/pin.js +2 -1
- package/dist/mappers/pin.js.map +1 -1
- package/dist/mappers/run.d.ts.map +1 -1
- package/dist/mappers/run.js +4 -3
- package/dist/mappers/run.js.map +1 -1
- package/dist/mappers/spec-trace.d.ts +11 -0
- package/dist/mappers/spec-trace.d.ts.map +1 -0
- package/dist/mappers/spec-trace.js +59 -0
- package/dist/mappers/spec-trace.js.map +1 -0
- package/dist/mappers/task.d.ts.map +1 -1
- package/dist/mappers/task.js +4 -4
- package/dist/mappers/task.js.map +1 -1
- package/dist/mappers/worker.d.ts.map +1 -1
- package/dist/mappers/worker.js +2 -1
- package/dist/mappers/worker.js.map +1 -1
- package/dist/migrations-embedded.d.ts.map +1 -1
- package/dist/migrations-embedded.js +15 -0
- package/dist/migrations-embedded.js.map +1 -1
- package/dist/repo/anchor-repo.d.ts +2 -2
- package/dist/repo/anchor-repo.d.ts.map +1 -1
- package/dist/repo/anchor-repo.js +18 -17
- package/dist/repo/anchor-repo.js.map +1 -1
- package/dist/repo/attempt-repo.d.ts.map +1 -1
- package/dist/repo/attempt-repo.js +11 -10
- package/dist/repo/attempt-repo.js.map +1 -1
- package/dist/repo/candidate-repo.d.ts.map +1 -1
- package/dist/repo/candidate-repo.js +8 -7
- package/dist/repo/candidate-repo.js.map +1 -1
- package/dist/repo/claim-repo.d.ts +4 -4
- package/dist/repo/claim-repo.d.ts.map +1 -1
- package/dist/repo/claim-repo.js +14 -13
- package/dist/repo/claim-repo.js.map +1 -1
- package/dist/repo/compaction-repo.d.ts +4 -4
- package/dist/repo/compaction-repo.d.ts.map +1 -1
- package/dist/repo/compaction-repo.js +7 -6
- package/dist/repo/compaction-repo.js.map +1 -1
- package/dist/repo/deduplication-repo.d.ts.map +1 -1
- package/dist/repo/deduplication-repo.js +80 -57
- package/dist/repo/deduplication-repo.js.map +1 -1
- package/dist/repo/dep-repo.d.ts.map +1 -1
- package/dist/repo/dep-repo.js +90 -88
- package/dist/repo/dep-repo.js.map +1 -1
- package/dist/repo/doc-repo.d.ts +2 -63
- package/dist/repo/doc-repo.d.ts.map +1 -1
- package/dist/repo/doc-repo.js +6 -4
- package/dist/repo/doc-repo.js.map +1 -1
- package/dist/repo/doc-repo.types.d.ts +64 -0
- package/dist/repo/doc-repo.types.d.ts.map +1 -0
- package/dist/repo/doc-repo.types.js +2 -0
- package/dist/repo/doc-repo.types.js.map +1 -0
- package/dist/repo/edge-repo.d.ts.map +1 -1
- package/dist/repo/edge-repo.js +91 -81
- package/dist/repo/edge-repo.js.map +1 -1
- package/dist/repo/file-learning-repo.d.ts.map +1 -1
- package/dist/repo/file-learning-repo.js +7 -6
- package/dist/repo/file-learning-repo.js.map +1 -1
- package/dist/repo/guard-repo.d.ts +4 -4
- package/dist/repo/guard-repo.d.ts.map +1 -1
- package/dist/repo/guard-repo.js +8 -7
- package/dist/repo/guard-repo.js.map +1 -1
- package/dist/repo/index.d.ts +1 -0
- package/dist/repo/index.d.ts.map +1 -1
- package/dist/repo/index.js +1 -0
- package/dist/repo/index.js.map +1 -1
- package/dist/repo/label-repo.d.ts +4 -4
- package/dist/repo/label-repo.d.ts.map +1 -1
- package/dist/repo/label-repo.js +9 -8
- package/dist/repo/label-repo.js.map +1 -1
- package/dist/repo/learning-repo.d.ts +2 -2
- package/dist/repo/learning-repo.d.ts.map +1 -1
- package/dist/repo/learning-repo.js +37 -31
- package/dist/repo/learning-repo.js.map +1 -1
- package/dist/repo/memory-repo/document.d.ts +4 -0
- package/dist/repo/memory-repo/document.d.ts.map +1 -0
- package/dist/repo/memory-repo/document.js +205 -0
- package/dist/repo/memory-repo/document.js.map +1 -0
- package/dist/repo/memory-repo/link.d.ts +4 -0
- package/dist/repo/memory-repo/link.d.ts.map +1 -0
- package/dist/repo/memory-repo/link.js +124 -0
- package/dist/repo/memory-repo/link.js.map +1 -0
- package/dist/repo/memory-repo/property.d.ts +4 -0
- package/dist/repo/memory-repo/property.d.ts.map +1 -0
- package/dist/repo/memory-repo/property.js +56 -0
- package/dist/repo/memory-repo/property.js.map +1 -0
- package/dist/repo/memory-repo/shared.d.ts +28 -0
- package/dist/repo/memory-repo/shared.d.ts.map +1 -0
- package/dist/repo/memory-repo/shared.js +63 -0
- package/dist/repo/memory-repo/shared.js.map +1 -0
- package/dist/repo/memory-repo/source.d.ts +4 -0
- package/dist/repo/memory-repo/source.d.ts.map +1 -0
- package/dist/repo/memory-repo/source.js +58 -0
- package/dist/repo/memory-repo/source.js.map +1 -0
- package/dist/repo/memory-repo.d.ts +14 -10
- package/dist/repo/memory-repo.d.ts.map +1 -1
- package/dist/repo/memory-repo.js +8 -527
- package/dist/repo/memory-repo.js.map +1 -1
- package/dist/repo/message-repo.d.ts.map +1 -1
- package/dist/repo/message-repo.js +9 -8
- package/dist/repo/message-repo.js.map +1 -1
- package/dist/repo/orchestrator-state-repo.d.ts.map +1 -1
- package/dist/repo/orchestrator-state-repo.js +2 -1
- package/dist/repo/orchestrator-state-repo.js.map +1 -1
- package/dist/repo/pin-repo.d.ts.map +1 -1
- package/dist/repo/pin-repo.js +5 -4
- package/dist/repo/pin-repo.js.map +1 -1
- package/dist/repo/run-repo.d.ts.map +1 -1
- package/dist/repo/run-repo.js +11 -10
- package/dist/repo/run-repo.js.map +1 -1
- package/dist/repo/spec-trace-repo.d.ts +9 -0
- package/dist/repo/spec-trace-repo.d.ts.map +1 -0
- package/dist/repo/spec-trace-repo.filter.d.ts +3 -0
- package/dist/repo/spec-trace-repo.filter.d.ts.map +1 -0
- package/dist/repo/spec-trace-repo.filter.js +13 -0
- package/dist/repo/spec-trace-repo.filter.js.map +1 -0
- package/dist/repo/spec-trace-repo.js +323 -0
- package/dist/repo/spec-trace-repo.js.map +1 -0
- package/dist/repo/spec-trace-repo.types.d.ts +60 -0
- package/dist/repo/spec-trace-repo.types.d.ts.map +1 -0
- package/dist/repo/spec-trace-repo.types.js +2 -0
- package/dist/repo/spec-trace-repo.types.js.map +1 -0
- package/dist/repo/task-repo/factory.d.ts +4 -0
- package/dist/repo/task-repo/factory.d.ts.map +1 -0
- package/dist/repo/task-repo/factory.js +7 -0
- package/dist/repo/task-repo/factory.js.map +1 -0
- package/dist/repo/task-repo/read.d.ts +6 -0
- package/dist/repo/task-repo/read.d.ts.map +1 -0
- package/dist/repo/task-repo/read.js +332 -0
- package/dist/repo/task-repo/read.js.map +1 -0
- package/dist/repo/task-repo/shared.d.ts +10 -0
- package/dist/repo/task-repo/shared.d.ts.map +1 -0
- package/dist/repo/task-repo/shared.js +29 -0
- package/dist/repo/task-repo/shared.js.map +1 -0
- package/dist/repo/task-repo/write.d.ts +6 -0
- package/dist/repo/task-repo/write.d.ts.map +1 -0
- package/dist/repo/task-repo/write.js +182 -0
- package/dist/repo/task-repo/write.js.map +1 -0
- package/dist/repo/task-repo.d.ts +5 -4
- package/dist/repo/task-repo.d.ts.map +1 -1
- package/dist/repo/task-repo.js +2 -520
- package/dist/repo/task-repo.js.map +1 -1
- package/dist/repo/tracked-project-repo.d.ts.map +1 -1
- package/dist/repo/tracked-project-repo.js +6 -5
- package/dist/repo/tracked-project-repo.js.map +1 -1
- package/dist/repo/worker-repo.d.ts.map +1 -1
- package/dist/repo/worker-repo.js +60 -47
- package/dist/repo/worker-repo.js.map +1 -1
- package/dist/schemas/index.d.ts +4 -2
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +2 -1
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/sync-events.d.ts +25 -0
- package/dist/schemas/sync-events.d.ts.map +1 -0
- package/dist/schemas/sync-events.js +23 -0
- package/dist/schemas/sync-events.js.map +1 -0
- package/dist/schemas/sync.d.ts +20 -10
- package/dist/schemas/sync.d.ts.map +1 -1
- package/dist/schemas/sync.js +10 -4
- package/dist/schemas/sync.js.map +1 -1
- package/dist/services/agent-service.d.ts +4 -4
- package/dist/services/agent-service.d.ts.map +1 -1
- package/dist/services/agent-service.js.map +1 -1
- package/dist/services/anchor/anchor-service-core-ops.d.ts +125 -0
- package/dist/services/anchor/anchor-service-core-ops.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-core-ops.js +41 -0
- package/dist/services/anchor/anchor-service-core-ops.js.map +1 -0
- package/dist/services/anchor/anchor-service-deps.d.ts +10 -0
- package/dist/services/anchor/anchor-service-deps.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-deps.js +2 -0
- package/dist/services/anchor/anchor-service-deps.js.map +1 -0
- package/dist/services/anchor/anchor-service-ops.d.ts +296 -0
- package/dist/services/anchor/anchor-service-ops.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-ops.js +9 -0
- package/dist/services/anchor/anchor-service-ops.js.map +1 -0
- package/dist/services/anchor/anchor-service-state-ops.d.ts +116 -0
- package/dist/services/anchor/anchor-service-state-ops.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-state-ops.js +150 -0
- package/dist/services/anchor/anchor-service-state-ops.js.map +1 -0
- package/dist/services/anchor/anchor-service-validation.d.ts +7 -0
- package/dist/services/anchor/anchor-service-validation.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-validation.js +114 -0
- package/dist/services/anchor/anchor-service-validation.js.map +1 -0
- package/dist/services/anchor/anchor-service-verification-ops.d.ts +71 -0
- package/dist/services/anchor/anchor-service-verification-ops.d.ts.map +1 -0
- package/dist/services/anchor/anchor-service-verification-ops.js +169 -0
- package/dist/services/anchor/anchor-service-verification-ops.js.map +1 -0
- package/dist/services/anchor/anchor-verification-batch.d.ts +12 -0
- package/dist/services/anchor/anchor-verification-batch.d.ts.map +1 -0
- package/dist/services/anchor/anchor-verification-batch.js +109 -0
- package/dist/services/anchor/anchor-verification-batch.js.map +1 -0
- package/dist/services/anchor/anchor-verification-single.d.ts +7 -0
- package/dist/services/anchor/anchor-verification-single.d.ts.map +1 -0
- package/dist/services/anchor/anchor-verification-single.js +407 -0
- package/dist/services/anchor/anchor-verification-single.js.map +1 -0
- package/dist/services/anchor/anchor-verification-utils.d.ts +19 -0
- package/dist/services/anchor/anchor-verification-utils.d.ts.map +1 -0
- package/dist/services/anchor/anchor-verification-utils.js +107 -0
- package/dist/services/anchor/anchor-verification-utils.js.map +1 -0
- package/dist/services/anchor-service.d.ts +12 -90
- package/dist/services/anchor-service.d.ts.map +1 -1
- package/dist/services/anchor-service.js +5 -530
- package/dist/services/anchor-service.js.map +1 -1
- package/dist/services/anchor-verification.d.ts +9 -60
- package/dist/services/anchor-verification.d.ts.map +1 -1
- package/dist/services/anchor-verification.js +5 -796
- package/dist/services/anchor-verification.js.map +1 -1
- package/dist/services/ast-grep-service/patterns.d.ts +90 -0
- package/dist/services/ast-grep-service/patterns.d.ts.map +1 -0
- package/dist/services/ast-grep-service/patterns.js +261 -0
- package/dist/services/ast-grep-service/patterns.js.map +1 -0
- package/dist/services/ast-grep-service.d.ts +2 -13
- package/dist/services/ast-grep-service.d.ts.map +1 -1
- package/dist/services/ast-grep-service.js +3 -261
- package/dist/services/ast-grep-service.js.map +1 -1
- package/dist/services/auto-sync-service.d.ts +3 -3
- package/dist/services/auto-sync-service.d.ts.map +1 -1
- package/dist/services/auto-sync-service.js +12 -13
- package/dist/services/auto-sync-service.js.map +1 -1
- package/dist/services/compaction-service.d.ts +6 -6
- package/dist/services/compaction-service.d.ts.map +1 -1
- package/dist/services/compaction-service.js +11 -7
- package/dist/services/compaction-service.js.map +1 -1
- package/dist/services/cycle-scan-service.d.ts +1 -27
- package/dist/services/cycle-scan-service.d.ts.map +1 -1
- package/dist/services/cycle-scan-service.js +1 -876
- package/dist/services/cycle-scan-service.js.map +1 -1
- package/dist/services/daemon-service/process.d.ts +93 -0
- package/dist/services/daemon-service/process.d.ts.map +1 -0
- package/dist/services/daemon-service/process.js +325 -0
- package/dist/services/daemon-service/process.js.map +1 -0
- package/dist/services/daemon-service/templates.d.ts +88 -0
- package/dist/services/daemon-service/templates.d.ts.map +1 -0
- package/dist/services/daemon-service/templates.js +119 -0
- package/dist/services/daemon-service/templates.js.map +1 -0
- package/dist/services/daemon-service.d.ts +8 -160
- package/dist/services/daemon-service.d.ts.map +1 -1
- package/dist/services/daemon-service.js +4 -440
- package/dist/services/daemon-service.js.map +1 -1
- package/dist/services/doc-service.d.ts +1 -41
- package/dist/services/doc-service.d.ts.map +1 -1
- package/dist/services/doc-service.js +1 -780
- package/dist/services/doc-service.js.map +1 -1
- package/dist/services/edge-service.d.ts +6 -6
- package/dist/services/edge-service.d.ts.map +1 -1
- package/dist/services/edge-service.js.map +1 -1
- package/dist/services/embedding-service.d.ts +1 -201
- package/dist/services/embedding-service.d.ts.map +1 -1
- package/dist/services/embedding-service.js +1 -465
- package/dist/services/embedding-service.js.map +1 -1
- package/dist/services/feedback-tracker.d.ts +2 -2
- package/dist/services/feedback-tracker.d.ts.map +1 -1
- package/dist/services/feedback-tracker.js.map +1 -1
- package/dist/services/file-watcher-service/shared.d.ts +76 -0
- package/dist/services/file-watcher-service/shared.d.ts.map +1 -0
- package/dist/services/file-watcher-service/shared.js +43 -0
- package/dist/services/file-watcher-service/shared.js.map +1 -0
- package/dist/services/file-watcher-service.d.ts +2 -42
- package/dist/services/file-watcher-service.d.ts.map +1 -1
- package/dist/services/file-watcher-service.js +1 -46
- package/dist/services/file-watcher-service.js.map +1 -1
- package/dist/services/graph-expansion/from-files.d.ts +14 -0
- package/dist/services/graph-expansion/from-files.d.ts.map +1 -0
- package/dist/services/graph-expansion/from-files.js +187 -0
- package/dist/services/graph-expansion/from-files.js.map +1 -0
- package/dist/services/graph-expansion/live.d.ts +11 -0
- package/dist/services/graph-expansion/live.d.ts.map +1 -0
- package/dist/services/graph-expansion/live.js +263 -0
- package/dist/services/graph-expansion/live.js.map +1 -0
- package/dist/services/graph-expansion.d.ts +17 -20
- package/dist/services/graph-expansion.d.ts.map +1 -1
- package/dist/services/graph-expansion.js +2 -439
- package/dist/services/graph-expansion.js.map +1 -1
- package/dist/services/guard-service.d.ts +2 -2
- package/dist/services/guard-service.d.ts.map +1 -1
- package/dist/services/guard-service.js.map +1 -1
- package/dist/services/index.d.ts +3 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +3 -1
- package/dist/services/index.js.map +1 -1
- package/dist/services/learning-service.d.ts +4 -4
- package/dist/services/learning-service.d.ts.map +1 -1
- package/dist/services/learning-service.js.map +1 -1
- package/dist/services/llm-service.d.ts +4 -4
- package/dist/services/llm-service.d.ts.map +1 -1
- package/dist/services/llm-service.js.map +1 -1
- package/dist/services/memory-retriever-service.d.ts.map +1 -1
- package/dist/services/memory-retriever-service.js.map +1 -1
- package/dist/services/memory-service.d.ts +1 -48
- package/dist/services/memory-service.d.ts.map +1 -1
- package/dist/services/memory-service.js +1 -1060
- package/dist/services/memory-service.js.map +1 -1
- package/dist/services/migration-service.d.ts +6 -6
- package/dist/services/migration-service.d.ts.map +1 -1
- package/dist/services/migration-service.js +6 -2
- package/dist/services/migration-service.js.map +1 -1
- package/dist/services/orchestrator-service.d.ts +2 -2
- package/dist/services/orchestrator-service.d.ts.map +1 -1
- package/dist/services/orchestrator-service.js.map +1 -1
- package/dist/services/pin-service.d.ts.map +1 -1
- package/dist/services/pin-service.js +21 -28
- package/dist/services/pin-service.js.map +1 -1
- package/dist/services/promotion-service.d.ts +4 -4
- package/dist/services/promotion-service.d.ts.map +1 -1
- package/dist/services/promotion-service.js.map +1 -1
- package/dist/services/query-expansion-service.d.ts +2 -2
- package/dist/services/query-expansion-service.d.ts.map +1 -1
- package/dist/services/query-expansion-service.js.map +1 -1
- package/dist/services/reflect-service.d.ts +6 -6
- package/dist/services/reflect-service.d.ts.map +1 -1
- package/dist/services/reflect-service.js.map +1 -1
- package/dist/services/reranker-service.d.ts +2 -2
- package/dist/services/reranker-service.d.ts.map +1 -1
- package/dist/services/reranker-service.js.map +1 -1
- package/dist/services/retriever-scoring.d.ts +52 -0
- package/dist/services/retriever-scoring.d.ts.map +1 -0
- package/dist/services/retriever-scoring.js +146 -0
- package/dist/services/retriever-scoring.js.map +1 -0
- package/dist/services/retriever-service.d.ts.map +1 -1
- package/dist/services/retriever-service.js +1 -191
- package/dist/services/retriever-service.js.map +1 -1
- package/dist/services/run-heartbeat-service.d.ts +10 -10
- package/dist/services/run-heartbeat-service.d.ts.map +1 -1
- package/dist/services/run-heartbeat-service.js.map +1 -1
- package/dist/services/score-service.d.ts +2 -2
- package/dist/services/score-service.d.ts.map +1 -1
- package/dist/services/score-service.js.map +1 -1
- package/dist/services/spec-trace-service.d.ts +2 -0
- package/dist/services/spec-trace-service.d.ts.map +1 -0
- package/dist/services/spec-trace-service.js +2 -0
- package/dist/services/spec-trace-service.js.map +1 -0
- package/dist/services/stream-service.d.ts +31 -0
- package/dist/services/stream-service.d.ts.map +1 -0
- package/dist/services/stream-service.js +162 -0
- package/dist/services/stream-service.js.map +1 -0
- package/dist/services/swarm-verification/shared.d.ts +71 -0
- package/dist/services/swarm-verification/shared.d.ts.map +1 -0
- package/dist/services/swarm-verification/shared.js +108 -0
- package/dist/services/swarm-verification/shared.js.map +1 -0
- package/dist/services/swarm-verification.d.ts +4 -68
- package/dist/services/swarm-verification.d.ts.map +1 -1
- package/dist/services/swarm-verification.js +2 -122
- package/dist/services/swarm-verification.js.map +1 -1
- package/dist/services/sync/converters.d.ts +63 -0
- package/dist/services/sync/converters.d.ts.map +1 -0
- package/dist/services/sync/converters.js +253 -0
- package/dist/services/sync/converters.js.map +1 -0
- package/dist/services/sync/entity-export.d.ts +22 -0
- package/dist/services/sync/entity-export.d.ts.map +1 -0
- package/dist/services/sync/entity-export.js +15 -0
- package/dist/services/sync/entity-export.js.map +1 -0
- package/dist/services/sync/entity-import.d.ts +22 -0
- package/dist/services/sync/entity-import.d.ts.map +1 -0
- package/dist/services/sync/entity-import.js +15 -0
- package/dist/services/sync/entity-import.js.map +1 -0
- package/dist/services/sync/file-utils.d.ts +23 -0
- package/dist/services/sync/file-utils.d.ts.map +1 -0
- package/dist/services/sync/file-utils.js +97 -0
- package/dist/services/sync/file-utils.js.map +1 -0
- package/dist/services/sync/index.d.ts +3 -0
- package/dist/services/sync/index.d.ts.map +1 -0
- package/dist/services/sync/index.js +2 -0
- package/dist/services/sync/index.js.map +1 -0
- package/dist/services/sync/service.d.ts +2 -0
- package/dist/services/sync/service.d.ts.map +1 -0
- package/dist/services/sync/service.js +2 -0
- package/dist/services/sync/service.js.map +1 -0
- package/dist/services/sync/sync-helpers.d.ts +54 -0
- package/dist/services/sync/sync-helpers.d.ts.map +1 -0
- package/dist/services/sync/sync-helpers.js +245 -0
- package/dist/services/sync/sync-helpers.js.map +1 -0
- package/dist/services/sync/types.d.ts +104 -0
- package/dist/services/sync/types.d.ts.map +1 -0
- package/dist/services/sync/types.js +5 -0
- package/dist/services/sync/types.js.map +1 -0
- package/dist/services/task-service/internals.d.ts +36 -0
- package/dist/services/task-service/internals.d.ts.map +1 -0
- package/dist/services/task-service/internals.js +270 -0
- package/dist/services/task-service/internals.js.map +1 -0
- package/dist/services/task-service.d.ts +2 -1
- package/dist/services/task-service.d.ts.map +1 -1
- package/dist/services/task-service.js +28 -236
- package/dist/services/task-service.js.map +1 -1
- package/dist/services/tracing-service.d.ts +2 -2
- package/dist/services/tracing-service.d.ts.map +1 -1
- package/dist/services/tracing-service.js.map +1 -1
- package/dist/services/transcript-adapter.d.ts +6 -6
- package/dist/services/transcript-adapter.d.ts.map +1 -1
- package/dist/services/transcript-adapter.js +3 -8
- package/dist/services/transcript-adapter.js.map +1 -1
- package/dist/services/validation-service.d.ts +8 -8
- package/dist/services/validation-service.d.ts.map +1 -1
- package/dist/services/validation-service.js.map +1 -1
- package/dist/services/verify-service.d.ts +2 -2
- package/dist/services/verify-service.d.ts.map +1 -1
- package/dist/services/verify-service.js.map +1 -1
- package/dist/services/worker-process/runtime.d.ts +51 -0
- package/dist/services/worker-process/runtime.d.ts.map +1 -0
- package/dist/services/worker-process/runtime.js +150 -0
- package/dist/services/worker-process/runtime.js.map +1 -0
- package/dist/services/worker-process.d.ts +3 -18
- package/dist/services/worker-process.d.ts.map +1 -1
- package/dist/services/worker-process.js +3 -173
- package/dist/services/worker-process.js.map +1 -1
- package/dist/services/worker-service.d.ts +6 -6
- package/dist/services/worker-service.d.ts.map +1 -1
- package/dist/services/worker-service.js.map +1 -1
- package/dist/utils/db-result.d.ts +14 -0
- package/dist/utils/db-result.d.ts.map +1 -0
- package/dist/utils/db-result.js +37 -0
- package/dist/utils/db-result.js.map +1 -0
- package/dist/utils/doc-renderer.d.ts +10 -10
- package/dist/utils/doc-renderer.d.ts.map +1 -1
- package/dist/utils/doc-renderer.js.map +1 -1
- package/dist/utils/ears-validator.d.ts +2 -2
- package/dist/utils/ears-validator.d.ts.map +1 -1
- package/dist/utils/ears-validator.js.map +1 -1
- package/dist/utils/file-path.d.ts +27 -0
- package/dist/utils/file-path.d.ts.map +1 -0
- package/dist/utils/file-path.js +77 -0
- package/dist/utils/file-path.js.map +1 -0
- package/dist/utils/glob.d.ts +2 -11
- package/dist/utils/glob.d.ts.map +1 -1
- package/dist/utils/glob.js +22 -13
- package/dist/utils/glob.js.map +1 -1
- package/dist/utils/spec-discovery.d.ts +34 -0
- package/dist/utils/spec-discovery.d.ts.map +1 -0
- package/dist/utils/spec-discovery.js +344 -0
- package/dist/utils/spec-discovery.js.map +1 -0
- package/dist/utils/toml-config.d.ts +7 -2
- package/dist/utils/toml-config.d.ts.map +1 -1
- package/dist/utils/toml-config.js +106 -2
- package/dist/utils/toml-config.js.map +1 -1
- package/dist/utils/ulid.d.ts +8 -0
- package/dist/utils/ulid.d.ts.map +1 -0
- package/dist/utils/ulid.js +30 -0
- package/dist/utils/ulid.js.map +1 -0
- package/dist/worker/hooks.d.ts +10 -10
- package/dist/worker/hooks.d.ts.map +1 -1
- package/dist/worker/run-worker.d.ts.map +1 -1
- package/dist/worker/run-worker.js.map +1 -1
- package/migrations/033_sync_events.sql +33 -0
- package/migrations/034_spec_test_traceability.sql +51 -0
- package/migrations/035_anchor_schema_repair.sql +82 -0
- package/package.json +4 -3
- package/dist/services/sync-service.d.ts +0 -247
- package/dist/services/sync-service.d.ts.map +0 -1
- package/dist/services/sync-service.js.map +0 -1
package/dist/mappers/run.js
CHANGED
|
@@ -6,6 +6,7 @@ import { Schema } from "effect";
|
|
|
6
6
|
import { RUN_STATUSES } from "@jamesaphoenix/tx-types";
|
|
7
7
|
import { InvalidStatusError } from "../errors.js";
|
|
8
8
|
import { parseDate } from "./parse-date.js";
|
|
9
|
+
import { coerceDbResult } from "../utils/db-result.js";
|
|
9
10
|
// Re-export constants from @tx/types for convenience
|
|
10
11
|
export { RUN_STATUSES };
|
|
11
12
|
/**
|
|
@@ -20,13 +21,13 @@ export const generateRunId = () => {
|
|
|
20
21
|
.update(`${Date.now()}-${Math.random()}`)
|
|
21
22
|
.digest("hex")
|
|
22
23
|
.substring(0, 8);
|
|
23
|
-
return `run-${hash}
|
|
24
|
+
return coerceDbResult(`run-${hash}`);
|
|
24
25
|
};
|
|
25
26
|
/**
|
|
26
27
|
* Check if a string is a valid RunStatus.
|
|
27
28
|
*/
|
|
28
29
|
export const isValidRunStatus = (s) => {
|
|
29
|
-
return RUN_STATUSES.includes(s);
|
|
30
|
+
return (coerceDbResult(RUN_STATUSES)).includes(s);
|
|
30
31
|
};
|
|
31
32
|
/**
|
|
32
33
|
* Safely parse and validate metadata JSON string.
|
|
@@ -55,7 +56,7 @@ export const rowToRun = (row) => {
|
|
|
55
56
|
});
|
|
56
57
|
}
|
|
57
58
|
return {
|
|
58
|
-
id: row.id,
|
|
59
|
+
id: coerceDbResult(row.id),
|
|
59
60
|
taskId: row.task_id,
|
|
60
61
|
agent: row.agent,
|
|
61
62
|
startedAt: parseDate(row.started_at, "started_at", row.id),
|
package/dist/mappers/run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/mappers/run.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAO/B,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/mappers/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spec traceability mappers - convert DB rows to domain objects.
|
|
3
|
+
*/
|
|
4
|
+
import { SPEC_DISCOVERY_METHODS, SPEC_SCOPE_TYPES, type SpecDiscoveryMethod, type SpecScopeType, type SpecTest, type SpecTestRun, type SpecSignoff, type SpecTestRow, type SpecTestRunRow, type SpecSignoffRow } from "@jamesaphoenix/tx-types";
|
|
5
|
+
export { SPEC_DISCOVERY_METHODS, SPEC_SCOPE_TYPES };
|
|
6
|
+
export declare const isValidSpecDiscoveryMethod: (s: string) => s is SpecDiscoveryMethod;
|
|
7
|
+
export declare const isValidSpecScopeType: (s: string) => s is SpecScopeType;
|
|
8
|
+
export declare const rowToSpecTest: (row: SpecTestRow) => SpecTest;
|
|
9
|
+
export declare const rowToSpecTestRun: (row: SpecTestRunRow) => SpecTestRun;
|
|
10
|
+
export declare const rowToSpecSignoff: (row: SpecSignoffRow) => SpecSignoff;
|
|
11
|
+
//# sourceMappingURL=spec-trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-trace.d.ts","sourceRoot":"","sources":["../../src/mappers/spec-trace.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,mBAAmB,EACxB,KAAK,aAAa,EAClB,KAAK,QAAQ,EACb,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,cAAc,EACpB,MAAM,yBAAyB,CAAA;AAIhC,OAAO,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,CAAA;AAKnD,eAAO,MAAM,0BAA0B,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,mBAC9B,CAAA;AAE9B,eAAO,MAAM,oBAAoB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,aAC5B,CAAA;AAE1B,eAAO,MAAM,aAAa,GAAI,KAAK,WAAW,KAAG,QAqBhD,CAAA;AAED,eAAO,MAAM,gBAAgB,GAAI,KAAK,cAAc,KAAG,WAOrD,CAAA;AAEF,eAAO,MAAM,gBAAgB,GAAI,KAAK,cAAc,KAAG,WAkBtD,CAAA"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Spec traceability mappers - convert DB rows to domain objects.
|
|
3
|
+
*/
|
|
4
|
+
import { SPEC_DISCOVERY_METHODS, SPEC_SCOPE_TYPES, } from "@jamesaphoenix/tx-types";
|
|
5
|
+
import { InvalidStatusError } from "../errors.js";
|
|
6
|
+
import { parseDate } from "./parse-date.js";
|
|
7
|
+
export { SPEC_DISCOVERY_METHODS, SPEC_SCOPE_TYPES };
|
|
8
|
+
const discoveryStrings = SPEC_DISCOVERY_METHODS;
|
|
9
|
+
const scopeStrings = SPEC_SCOPE_TYPES;
|
|
10
|
+
export const isValidSpecDiscoveryMethod = (s) => discoveryStrings.includes(s);
|
|
11
|
+
export const isValidSpecScopeType = (s) => scopeStrings.includes(s);
|
|
12
|
+
export const rowToSpecTest = (row) => {
|
|
13
|
+
if (!isValidSpecDiscoveryMethod(row.discovery)) {
|
|
14
|
+
throw new InvalidStatusError({
|
|
15
|
+
entity: "spec_test.discovery",
|
|
16
|
+
status: row.discovery,
|
|
17
|
+
validStatuses: [...SPEC_DISCOVERY_METHODS],
|
|
18
|
+
rowId: row.id,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
id: row.id,
|
|
23
|
+
invariantId: row.invariant_id,
|
|
24
|
+
testId: row.test_id,
|
|
25
|
+
testFile: row.test_file,
|
|
26
|
+
testName: row.test_name,
|
|
27
|
+
framework: row.framework,
|
|
28
|
+
discovery: row.discovery,
|
|
29
|
+
createdAt: parseDate(row.created_at, "created_at", row.id),
|
|
30
|
+
updatedAt: parseDate(row.updated_at, "updated_at", row.id),
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
export const rowToSpecTestRun = (row) => ({
|
|
34
|
+
id: row.id,
|
|
35
|
+
specTestId: row.spec_test_id,
|
|
36
|
+
passed: row.passed === 1,
|
|
37
|
+
durationMs: row.duration_ms,
|
|
38
|
+
details: row.details,
|
|
39
|
+
runAt: parseDate(row.run_at, "run_at", row.id),
|
|
40
|
+
});
|
|
41
|
+
export const rowToSpecSignoff = (row) => {
|
|
42
|
+
if (!isValidSpecScopeType(row.scope_type)) {
|
|
43
|
+
throw new InvalidStatusError({
|
|
44
|
+
entity: "spec_signoff.scope_type",
|
|
45
|
+
status: row.scope_type,
|
|
46
|
+
validStatuses: [...SPEC_SCOPE_TYPES],
|
|
47
|
+
rowId: row.id,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
id: row.id,
|
|
52
|
+
scopeType: row.scope_type,
|
|
53
|
+
scopeValue: row.scope_value,
|
|
54
|
+
signedOffBy: row.signed_off_by,
|
|
55
|
+
notes: row.notes,
|
|
56
|
+
signedOffAt: parseDate(row.signed_off_at, "signed_off_at", row.id),
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=spec-trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"spec-trace.js","sourceRoot":"","sources":["../../src/mappers/spec-trace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/mappers/task.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,IAAI,EAEJ,UAAU,EACV,OAAO,EACP,cAAc,EACd,aAAa,EACd,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAgB,aAAa,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/mappers/task.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EACV,IAAI,EAEJ,UAAU,EACV,OAAO,EACP,cAAc,EACd,aAAa,EACd,MAAM,yBAAyB,CAAA;AAChC,OAAO,EAAgB,aAAa,EAAE,MAAM,yBAAyB,CAAA;AAuDrE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACrE,OAAO,EAAE,aAAa,EAAE,CAAA;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,KAAK,OAAO,KAAG,IAyBxC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,GAAI,KAAK,aAAa,KAAG,cAInD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,UAM9C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM,UAAU,EAAE,IAAI,UAAU,KAAG,OAYpE,CAAA"}
|
package/dist/mappers/task.js
CHANGED
|
@@ -24,10 +24,10 @@ const parseMetadata = (metadataJson) => {
|
|
|
24
24
|
parsed = JSON.parse(metadataJson);
|
|
25
25
|
}
|
|
26
26
|
catch (error) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
console.warn(`[tx] Corrupted metadata JSON (
|
|
30
|
-
return { _corruptedRaw: metadataJson, _corruptionError:
|
|
27
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
28
|
+
const reasonTag = error instanceof SyntaxError ? "SyntaxError" : "ParseError";
|
|
29
|
+
console.warn(`[tx] Corrupted metadata JSON (${reasonTag}): ${message}. Raw value preserved for recovery.`);
|
|
30
|
+
return { _corruptedRaw: metadataJson, _corruptionError: `${reasonTag}: ${message}` };
|
|
31
31
|
}
|
|
32
32
|
try {
|
|
33
33
|
return Schema.decodeUnknownSync(MetadataSchema)(parsed);
|
package/dist/mappers/task.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/mappers/task.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAS/B,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C;;;GAGG;AACH,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA;AAEnF;;;;;GAKG;AACH,MAAM,aAAa,GAAG,CAAC,YAA2B,EAA2B,EAAE;IAC7E,IAAI,CAAC,YAAY;QAAE,OAAO,EAAE,CAAA;IAE5B,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/mappers/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/mappers/worker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/mappers/worker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAGhE;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,EAAE,MAAM,CAAA;IACzB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,2DAA4D,CAAA;AAExF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,GAAG,MAAM,KAAG,CAAC,IAAI,YAEpD,CAAA;AAiCD;;;GAGG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,SAAS,KAAG,MAqB5C,CAAA"}
|
package/dist/mappers/worker.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { InvalidStatusError } from "../errors.js";
|
|
5
5
|
import { parseDate } from "./parse-date.js";
|
|
6
|
+
import { coerceDbResult } from "../utils/db-result.js";
|
|
6
7
|
/**
|
|
7
8
|
* Valid worker statuses.
|
|
8
9
|
*/
|
|
@@ -11,7 +12,7 @@ export const WORKER_STATUSES = ["starting", "idle", "busy", "stopping", "dead"];
|
|
|
11
12
|
* Check if a string is a valid WorkerStatus.
|
|
12
13
|
*/
|
|
13
14
|
export const isValidWorkerStatus = (s) => {
|
|
14
|
-
return WORKER_STATUSES.includes(s);
|
|
15
|
+
return (coerceDbResult(WORKER_STATUSES)).includes(s);
|
|
15
16
|
};
|
|
16
17
|
/**
|
|
17
18
|
* Safely parse a JSON array of strings, returning empty array on failure.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/mappers/worker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"worker.js","sourceRoot":"","sources":["../../src/mappers/worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations-embedded.d.ts","sourceRoot":"","sources":["../src/migrations-embedded.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,eAAO,MAAM,mBAAmB,EAAE,SAAS,SAAS,
|
|
1
|
+
{"version":3,"file":"migrations-embedded.d.ts","sourceRoot":"","sources":["../src/migrations-embedded.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAEhE,eAAO,MAAM,mBAAmB,EAAE,SAAS,SAAS,EAgLnD,CAAA"}
|
|
@@ -158,6 +158,21 @@ export const EMBEDDED_MIGRATIONS = [
|
|
|
158
158
|
"version": 32,
|
|
159
159
|
"description": "verify cmd",
|
|
160
160
|
"sql": "-- Version: 032\n-- Migration: Verification commands — attach machine-checkable done criteria to tasks\n\nALTER TABLE tasks ADD COLUMN verify_cmd TEXT;\nALTER TABLE tasks ADD COLUMN verify_schema TEXT;\n\n-- Record this migration\nINSERT OR IGNORE INTO schema_version (version, applied_at) VALUES (32, datetime('now'));\n"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"version": 33,
|
|
164
|
+
"description": "sync events",
|
|
165
|
+
"sql": "-- Version: 033\n-- Migration: Event-sourced sync foundation\n\nCREATE TABLE IF NOT EXISTS sync_events (\n event_id TEXT PRIMARY KEY,\n stream_id TEXT NOT NULL,\n seq INTEGER NOT NULL,\n ts TEXT NOT NULL,\n type TEXT NOT NULL,\n entity_id TEXT NOT NULL,\n v INTEGER NOT NULL DEFAULT 2,\n payload TEXT NOT NULL,\n imported_at TEXT NOT NULL DEFAULT (datetime('now')),\n UNIQUE(stream_id, seq)\n);\n\nCREATE TABLE IF NOT EXISTS sync_streams (\n stream_id TEXT PRIMARY KEY,\n name TEXT,\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n last_seq INTEGER NOT NULL DEFAULT 0,\n last_event_at TEXT\n);\n\nCREATE TABLE IF NOT EXISTS sync_watermark (\n key TEXT PRIMARY KEY,\n value TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sync_events_ts_event ON sync_events(ts, event_id);\nCREATE INDEX IF NOT EXISTS idx_sync_events_entity ON sync_events(entity_id);\n\nINSERT OR IGNORE INTO schema_version (version, applied_at) VALUES (33, datetime('now'));\n"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"version": 34,
|
|
169
|
+
"description": "spec test traceability",
|
|
170
|
+
"sql": "-- Version: 034\n-- Migration: Spec-to-test traceability primitives\n\n-- Many-to-many mapping between invariants and discovered tests\nCREATE TABLE IF NOT EXISTS spec_tests (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n invariant_id TEXT NOT NULL REFERENCES invariants(id) ON DELETE CASCADE,\n test_id TEXT NOT NULL,\n test_file TEXT NOT NULL,\n test_name TEXT,\n framework TEXT,\n discovery TEXT NOT NULL CHECK (discovery IN ('tag', 'comment', 'manifest', 'manual')),\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n updated_at TEXT NOT NULL DEFAULT (datetime('now')),\n UNIQUE(invariant_id, test_id)\n);\n\nCREATE INDEX IF NOT EXISTS idx_spec_tests_invariant ON spec_tests(invariant_id);\nCREATE INDEX IF NOT EXISTS idx_spec_tests_test ON spec_tests(test_id);\n\n-- Run history for mapped spec tests\nCREATE TABLE IF NOT EXISTS spec_test_runs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n spec_test_id INTEGER NOT NULL REFERENCES spec_tests(id) ON DELETE CASCADE,\n passed INTEGER NOT NULL CHECK (passed IN (0, 1)),\n duration_ms INTEGER,\n details TEXT,\n run_at TEXT NOT NULL DEFAULT (datetime('now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_spec_test_runs_spec_test ON spec_test_runs(spec_test_id);\n\n-- Human sign-off for HARDEN -> COMPLETE transitions\nCREATE TABLE IF NOT EXISTS spec_signoffs (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n scope_type TEXT NOT NULL CHECK (scope_type IN ('doc', 'subsystem', 'global')),\n scope_value TEXT,\n signed_off_by TEXT NOT NULL,\n notes TEXT,\n signed_off_at TEXT NOT NULL DEFAULT (datetime('now'))\n);\n\nCREATE UNIQUE INDEX IF NOT EXISTS idx_spec_signoffs_scope_nonnull\n ON spec_signoffs(scope_type, scope_value)\n WHERE scope_value IS NOT NULL;\n\nCREATE UNIQUE INDEX IF NOT EXISTS idx_spec_signoffs_scope_null\n ON spec_signoffs(scope_type)\n WHERE scope_value IS NULL;\n\nINSERT OR IGNORE INTO schema_version (version, applied_at) VALUES (34, datetime('now'));\n"
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"version": 35,
|
|
174
|
+
"description": "anchor schema repair",
|
|
175
|
+
"sql": "-- Version: 035\n-- Migration: Repair missing anchor/invalidation tables for drifted databases\n--\n-- Some long-lived local databases can report schema_version at head while missing\n-- anchor tables (for example after manual table drops or partial file restores).\n-- This migration is idempotent and safely recreates those tables/indexes when absent.\n\nCREATE TABLE IF NOT EXISTS learning_anchors (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n learning_id INTEGER NOT NULL REFERENCES learnings(id) ON DELETE CASCADE,\n anchor_type TEXT NOT NULL CHECK (anchor_type IN ('glob', 'hash', 'symbol', 'line_range')),\n anchor_value TEXT NOT NULL,\n file_path TEXT NOT NULL,\n symbol_fqname TEXT,\n line_start INTEGER,\n line_end INTEGER,\n content_hash TEXT,\n status TEXT NOT NULL DEFAULT 'valid' CHECK (status IN ('valid', 'invalid', 'drifted')),\n verified_at TEXT,\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n pinned INTEGER NOT NULL DEFAULT 0,\n content_preview TEXT\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_learning_id ON learning_anchors(learning_id);\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_file_path ON learning_anchors(file_path);\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_status ON learning_anchors(status);\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_anchor_type ON learning_anchors(anchor_type);\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_symbol ON learning_anchors(symbol_fqname) WHERE symbol_fqname IS NOT NULL;\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_pinned ON learning_anchors(pinned) WHERE pinned = 1;\nCREATE INDEX IF NOT EXISTS idx_learning_anchors_has_preview\n ON learning_anchors(content_hash) WHERE content_preview IS NOT NULL;\n\nCREATE TABLE IF NOT EXISTS learning_edges (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n edge_type TEXT NOT NULL CHECK (edge_type IN (\n 'ANCHORED_TO',\n 'DERIVED_FROM',\n 'IMPORTS',\n 'CO_CHANGES_WITH',\n 'SIMILAR_TO',\n 'LINKS_TO',\n 'USED_IN_RUN',\n 'INVALIDATED_BY'\n )),\n source_type TEXT NOT NULL CHECK (source_type IN ('learning', 'file', 'task', 'run')),\n source_id TEXT NOT NULL,\n target_type TEXT NOT NULL CHECK (target_type IN ('learning', 'file', 'task', 'run')),\n target_id TEXT NOT NULL,\n weight REAL NOT NULL DEFAULT 1.0 CHECK (weight >= 0.0 AND weight <= 1.0),\n metadata TEXT NOT NULL DEFAULT '{}',\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n invalidated_at TEXT\n);\n\nCREATE INDEX IF NOT EXISTS idx_learning_edges_source ON learning_edges(source_type, source_id);\nCREATE INDEX IF NOT EXISTS idx_learning_edges_target ON learning_edges(target_type, target_id);\nCREATE INDEX IF NOT EXISTS idx_learning_edges_type ON learning_edges(edge_type);\nCREATE INDEX IF NOT EXISTS idx_learning_edges_active ON learning_edges(source_type, source_id) WHERE invalidated_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_learning_edges_source_type ON learning_edges(source_type, source_id, edge_type) WHERE invalidated_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_learning_edges_target_type ON learning_edges(target_type, target_id, edge_type) WHERE invalidated_at IS NULL;\n\nCREATE TABLE IF NOT EXISTS invalidation_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n anchor_id INTEGER NOT NULL,\n old_status TEXT NOT NULL,\n new_status TEXT NOT NULL,\n reason TEXT NOT NULL,\n detected_by TEXT NOT NULL CHECK (detected_by IN ('periodic', 'lazy', 'manual', 'agent', 'git_hook')),\n old_content_hash TEXT,\n new_content_hash TEXT,\n similarity_score REAL,\n invalidated_at TEXT NOT NULL DEFAULT (datetime('now')),\n FOREIGN KEY (anchor_id) REFERENCES learning_anchors(id) ON DELETE CASCADE\n);\n\nCREATE INDEX IF NOT EXISTS idx_invalidation_anchor ON invalidation_log(anchor_id);\nCREATE INDEX IF NOT EXISTS idx_invalidation_time ON invalidation_log(invalidated_at);\nCREATE INDEX IF NOT EXISTS idx_invalidation_status ON invalidation_log(new_status);\nCREATE INDEX IF NOT EXISTS idx_invalidation_detected_by ON invalidation_log(detected_by);\n\nINSERT OR IGNORE INTO schema_version (version, applied_at) VALUES (35, datetime('now'));\n"
|
|
161
176
|
}
|
|
162
177
|
];
|
|
163
178
|
//# sourceMappingURL=migrations-embedded.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations-embedded.js","sourceRoot":"","sources":["../src/migrations-embedded.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migrations-embedded.js","sourceRoot":"","sources":["../src/migrations-embedded.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { SqliteClient } from "../db.js";
|
|
|
3
3
|
import { DatabaseError } from "../errors.js";
|
|
4
4
|
import type { Anchor, CreateAnchorInput, UpdateAnchorInput, AnchorStatus, InvalidationLog, InvalidationSource } from "@jamesaphoenix/tx-types";
|
|
5
5
|
/** Input for logging an invalidation event */
|
|
6
|
-
export
|
|
6
|
+
export type LogInvalidationInput = {
|
|
7
7
|
readonly anchorId: number;
|
|
8
8
|
readonly oldStatus: AnchorStatus;
|
|
9
9
|
readonly newStatus: AnchorStatus;
|
|
@@ -12,7 +12,7 @@ export interface LogInvalidationInput {
|
|
|
12
12
|
readonly oldContentHash?: string | null;
|
|
13
13
|
readonly newContentHash?: string | null;
|
|
14
14
|
readonly similarityScore?: number | null;
|
|
15
|
-
}
|
|
15
|
+
};
|
|
16
16
|
declare const AnchorRepository_base: Context.TagClass<AnchorRepository, "AnchorRepository", {
|
|
17
17
|
readonly create: (input: CreateAnchorInput) => Effect.Effect<Anchor, DatabaseError>;
|
|
18
18
|
readonly findById: (id: number) => Effect.Effect<Anchor | null, DatabaseError>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor-repo.d.ts","sourceRoot":"","sources":["../../src/repo/anchor-repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,aAAa,EAA6C,MAAM,cAAc,CAAA;AAGvF,OAAO,KAAK,EAAE,MAAM,EAAa,iBAAiB,EAAE,iBAAiB,EAAE,YAAY,EAAE,eAAe,EAAsB,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"anchor-repo.d.ts","sourceRoot":"","sources":["../../src/repo/anchor-repo.ts"],"names":[],"mappings":"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"}
|
package/dist/repo/anchor-repo.js
CHANGED
|
@@ -3,6 +3,7 @@ import { SqliteClient } from "../db.js";
|
|
|
3
3
|
import { DatabaseError, EntityFetchError, UnexpectedRowCountError } from "../errors.js";
|
|
4
4
|
import { rowToAnchor, rowToInvalidationLog } from "../mappers/anchor.js";
|
|
5
5
|
import { DEFAULT_QUERY_LIMIT } from "../utils/sql.js";
|
|
6
|
+
import { coerceDbResult } from "../utils/db-result.js";
|
|
6
7
|
export class AnchorRepository extends Context.Tag("AnchorRepository")() {
|
|
7
8
|
}
|
|
8
9
|
export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(function* () {
|
|
@@ -21,12 +22,12 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
21
22
|
actual: result.changes
|
|
22
23
|
});
|
|
23
24
|
}
|
|
24
|
-
const row = db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(result.lastInsertRowid);
|
|
25
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(result.lastInsertRowid));
|
|
25
26
|
// Verify the inserted row can be fetched
|
|
26
27
|
if (!row) {
|
|
27
28
|
throw new EntityFetchError({
|
|
28
29
|
entity: "anchor",
|
|
29
|
-
id: result.lastInsertRowid,
|
|
30
|
+
id: coerceDbResult(result.lastInsertRowid),
|
|
30
31
|
operation: "insert"
|
|
31
32
|
});
|
|
32
33
|
}
|
|
@@ -36,21 +37,21 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
36
37
|
}),
|
|
37
38
|
findById: (id) => Effect.try({
|
|
38
39
|
try: () => {
|
|
39
|
-
const row = db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id);
|
|
40
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id));
|
|
40
41
|
return row ? rowToAnchor(row) : null;
|
|
41
42
|
},
|
|
42
43
|
catch: (cause) => new DatabaseError({ cause })
|
|
43
44
|
}),
|
|
44
45
|
findByLearningId: (learningId) => Effect.try({
|
|
45
46
|
try: () => {
|
|
46
|
-
const rows = db.prepare("SELECT * FROM learning_anchors WHERE learning_id = ? ORDER BY created_at ASC").all(learningId);
|
|
47
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE learning_id = ? ORDER BY created_at ASC").all(learningId));
|
|
47
48
|
return rows.map(rowToAnchor);
|
|
48
49
|
},
|
|
49
50
|
catch: (cause) => new DatabaseError({ cause })
|
|
50
51
|
}),
|
|
51
52
|
findByFilePath: (filePath) => Effect.try({
|
|
52
53
|
try: () => {
|
|
53
|
-
const rows = db.prepare("SELECT * FROM learning_anchors WHERE file_path = ? ORDER BY created_at ASC").all(filePath);
|
|
54
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE file_path = ? ORDER BY created_at ASC").all(filePath));
|
|
54
55
|
return rows.map(rowToAnchor);
|
|
55
56
|
},
|
|
56
57
|
catch: (cause) => new DatabaseError({ cause })
|
|
@@ -96,7 +97,7 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
96
97
|
values.push(input.verifiedAt ? input.verifiedAt.toISOString() : null);
|
|
97
98
|
}
|
|
98
99
|
if (updates.length === 0) {
|
|
99
|
-
const row = db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id);
|
|
100
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id));
|
|
100
101
|
return row ? rowToAnchor(row) : null;
|
|
101
102
|
}
|
|
102
103
|
values.push(id);
|
|
@@ -105,7 +106,7 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
105
106
|
return null;
|
|
106
107
|
}
|
|
107
108
|
// Verify the updated row can be fetched
|
|
108
|
-
const row = db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id);
|
|
109
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE id = ?").get(id));
|
|
109
110
|
if (!row) {
|
|
110
111
|
throw new EntityFetchError({
|
|
111
112
|
entity: "anchor",
|
|
@@ -126,14 +127,14 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
126
127
|
}),
|
|
127
128
|
findDrifted: () => Effect.try({
|
|
128
129
|
try: () => {
|
|
129
|
-
const rows = db.prepare("SELECT * FROM learning_anchors WHERE status = 'drifted' ORDER BY created_at ASC").all();
|
|
130
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE status = 'drifted' ORDER BY created_at ASC").all());
|
|
130
131
|
return rows.map(rowToAnchor);
|
|
131
132
|
},
|
|
132
133
|
catch: (cause) => new DatabaseError({ cause })
|
|
133
134
|
}),
|
|
134
135
|
findInvalid: () => Effect.try({
|
|
135
136
|
try: () => {
|
|
136
|
-
const rows = db.prepare("SELECT * FROM learning_anchors WHERE status = 'invalid' ORDER BY created_at ASC").all();
|
|
137
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE status = 'invalid' ORDER BY created_at ASC").all());
|
|
137
138
|
return rows.map(rowToAnchor);
|
|
138
139
|
},
|
|
139
140
|
catch: (cause) => new DatabaseError({ cause })
|
|
@@ -154,14 +155,14 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
154
155
|
}),
|
|
155
156
|
findAll: (limit) => Effect.try({
|
|
156
157
|
try: () => {
|
|
157
|
-
const rows = db.prepare("SELECT * FROM learning_anchors ORDER BY created_at DESC LIMIT ?").all(limit ?? DEFAULT_QUERY_LIMIT);
|
|
158
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors ORDER BY created_at DESC LIMIT ?").all(limit ?? DEFAULT_QUERY_LIMIT));
|
|
158
159
|
return rows.map(rowToAnchor);
|
|
159
160
|
},
|
|
160
161
|
catch: (cause) => new DatabaseError({ cause })
|
|
161
162
|
}),
|
|
162
163
|
findAllValid: (limit) => Effect.try({
|
|
163
164
|
try: () => {
|
|
164
|
-
const rows = db.prepare("SELECT * FROM learning_anchors WHERE status = 'valid' ORDER BY created_at DESC LIMIT ?").all(limit ?? DEFAULT_QUERY_LIMIT);
|
|
165
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM learning_anchors WHERE status = 'valid' ORDER BY created_at DESC LIMIT ?").all(limit ?? DEFAULT_QUERY_LIMIT));
|
|
165
166
|
return rows.map(rowToAnchor);
|
|
166
167
|
},
|
|
167
168
|
catch: (cause) => new DatabaseError({ cause })
|
|
@@ -195,12 +196,12 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
195
196
|
actual: result.changes
|
|
196
197
|
});
|
|
197
198
|
}
|
|
198
|
-
const row = db.prepare("SELECT * FROM invalidation_log WHERE id = ?").get(result.lastInsertRowid);
|
|
199
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM invalidation_log WHERE id = ?").get(result.lastInsertRowid));
|
|
199
200
|
// Verify the inserted row can be fetched
|
|
200
201
|
if (!row) {
|
|
201
202
|
throw new EntityFetchError({
|
|
202
203
|
entity: "invalidation_log",
|
|
203
|
-
id: result.lastInsertRowid,
|
|
204
|
+
id: coerceDbResult(result.lastInsertRowid),
|
|
204
205
|
operation: "insert"
|
|
205
206
|
});
|
|
206
207
|
}
|
|
@@ -211,17 +212,17 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
211
212
|
getInvalidationLogs: (anchorId) => Effect.try({
|
|
212
213
|
try: () => {
|
|
213
214
|
if (anchorId !== undefined) {
|
|
214
|
-
const rows = db.prepare("SELECT * FROM invalidation_log WHERE anchor_id = ? ORDER BY invalidated_at DESC, id DESC").all(anchorId);
|
|
215
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM invalidation_log WHERE anchor_id = ? ORDER BY invalidated_at DESC, id DESC").all(anchorId));
|
|
215
216
|
return rows.map(rowToInvalidationLog);
|
|
216
217
|
}
|
|
217
|
-
const rows = db.prepare("SELECT * FROM invalidation_log ORDER BY invalidated_at DESC, id DESC LIMIT 100").all();
|
|
218
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM invalidation_log ORDER BY invalidated_at DESC, id DESC LIMIT 100").all());
|
|
218
219
|
return rows.map(rowToInvalidationLog);
|
|
219
220
|
},
|
|
220
221
|
catch: (cause) => new DatabaseError({ cause })
|
|
221
222
|
}),
|
|
222
223
|
getStatusSummary: () => Effect.try({
|
|
223
224
|
try: () => {
|
|
224
|
-
const result = db.prepare(`
|
|
225
|
+
const result = coerceDbResult(db.prepare(`
|
|
225
226
|
SELECT
|
|
226
227
|
COUNT(*) as total,
|
|
227
228
|
SUM(CASE WHEN status = 'valid' THEN 1 ELSE 0 END) as valid,
|
|
@@ -229,7 +230,7 @@ export const AnchorRepositoryLive = Layer.effect(AnchorRepository, Effect.gen(fu
|
|
|
229
230
|
SUM(CASE WHEN status = 'invalid' THEN 1 ELSE 0 END) as invalid,
|
|
230
231
|
SUM(CASE WHEN pinned = 1 THEN 1 ELSE 0 END) as pinned
|
|
231
232
|
FROM learning_anchors
|
|
232
|
-
`).get();
|
|
233
|
+
`).get());
|
|
233
234
|
return {
|
|
234
235
|
total: result.total ?? 0,
|
|
235
236
|
valid: result.valid ?? 0,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anchor-repo.js","sourceRoot":"","sources":["../../src/repo/anchor-repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACvF,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAA;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAerD,MAAM,OAAO,gBAAiB,SAAQ,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,EA4BlE;CAAG;AAEN,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,CAC9C,gBAAgB,EAChB,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClB,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,YAAY,CAAA;IAE9B,OAAO;QACL,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,CAChB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB;;kDAEoC,CACrC,CAAC,GAAG,CACH,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,YAAY,IAAI,IAAI,EAC1B,KAAK,CAAC,SAAS,IAAI,IAAI,EACvB,KAAK,CAAC,OAAO,IAAI,IAAI,EACrB,KAAK,CAAC,WAAW,IAAI,IAAI,EACzB,KAAK,CAAC,cAAc,IAAI,IAAI,CAC7B,CAAA;gBACD,sCAAsC;gBACtC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,uBAAuB,CAAC;wBAChC,SAAS,EAAE,eAAe;wBAC1B,QAAQ,EAAE,CAAC;wBACX,MAAM,EAAE,MAAM,CAAC,OAAO;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBACD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAA0B,CAAA;gBAC1H,yCAAyC;gBACzC,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,MAAM,IAAI,gBAAgB,CAAC;wBACzB,MAAM,EAAE,QAAQ;wBAChB,EAAE,EAAE,MAAM,CAAC,eAAyB;wBACpC,SAAS,EAAE,QAAQ;qBACpB,CAAC,CAAA;gBACJ,CAAC;gBACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAA;YACzB,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,QAAQ,EAAE,CAAC,EAAE,EAAE,EAAE,CACf,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,EAAE,CAA0B,CAAA;gBACtG,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACtC,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,gBAAgB,EAAE,CAAC,UAAU,EAAE,EAAE,CAC/B,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,8EAA8E,CAC/E,CAAC,GAAG,CAAC,UAAU,CAAgB,CAAA;gBAChC,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,cAAc,EAAE,CAAC,QAAQ,EAAE,EAAE,CAC3B,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,4EAA4E,CAC7E,CAAC,GAAG,CAAC,QAAQ,CAAgB,CAAA;gBAC9B,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,MAAM,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CACpB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,OAAO,GAAa,EAAE,CAAA;gBAC5B,MAAM,MAAM,GAAc,EAAE,CAAA;gBAE5B,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;oBAChC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBAChC,CAAC;gBACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;oBACjC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;oBAC7B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;gBAC7B,CAAC;gBACD,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;oBACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;gBACjC,CAAC;gBACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;oBAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC9B,CAAC;gBACD,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAChC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;oBAC5B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC5B,CAAC;gBACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAA;oBAChC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;gBAChC,CAAC;gBACD,IAAI,KAAK,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;oBACvC,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;oBACnC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;gBACnC,CAAC;gBACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;oBAC1B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBAC3B,CAAC;gBACD,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBACnC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;oBAC/B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACvE,CAAC;gBAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,EAAE,CAA0B,CAAA;oBACtG,OAAO,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBACtC,CAAC;gBAED,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACf,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,+BAA+B,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CACjE,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAA;gBAEhB,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAA;gBACb,CAAC;gBAED,wCAAwC;gBACxC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,EAAE,CAA0B,CAAA;gBACtG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,MAAM,IAAI,gBAAgB,CAAC;wBACzB,MAAM,EAAE,QAAQ;wBAChB,EAAE;wBACF,SAAS,EAAE,QAAQ;qBACpB,CAAC,CAAA;gBACJ,CAAC;gBACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAA;YACzB,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,CACb,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC9E,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,WAAW,EAAE,GAAG,EAAE,CAChB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,iFAAiF,CAClF,CAAC,GAAG,EAAiB,CAAA;gBACtB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,WAAW,EAAE,GAAG,EAAE,CAChB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,iFAAiF,CAClF,CAAC,GAAG,EAAiB,CAAA;gBACtB,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,YAAY,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAC3B,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,qDAAqD,CACtD,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;gBACjB,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,CACvB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,wEAAwE,CACzE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACT,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,iEAAiE,CAClE,CAAC,GAAG,CAAC,KAAK,IAAI,mBAAmB,CAAgB,CAAA;gBAClD,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE,CACtB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,wFAAwF,CACzF,CAAC,GAAG,CAAC,KAAK,IAAI,mBAAmB,CAAgB,CAAA;gBAClD,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;YAC9B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,SAAS,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CACxB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,qDAAqD,CACtD,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBACzB,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,gBAAgB,EAAE,CAAC,aAAa,EAAE,EAAE,CAClC,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB;;qEAEuD,CACxD,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;gBACpB,OAAO,MAAM,CAAC,OAAO,CAAA;YACvB,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,eAAe,EAAE,CAAC,KAAK,EAAE,EAAE,CACzB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB;;+CAEiC,CAClC,CAAC,GAAG,CACH,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,MAAM,EACZ,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,cAAc,IAAI,IAAI,EAC5B,KAAK,CAAC,cAAc,IAAI,IAAI,EAC5B,KAAK,CAAC,eAAe,IAAI,IAAI,CAC9B,CAAA;gBACD,sCAAsC;gBACtC,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;oBACzB,MAAM,IAAI,uBAAuB,CAAC;wBAChC,SAAS,EAAE,yBAAyB;wBACpC,QAAQ,EAAE,CAAC;wBACX,MAAM,EAAE,MAAM,CAAC,OAAO;qBACvB,CAAC,CAAA;gBACJ,CAAC;gBACD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAmC,CAAA;gBACnI,yCAAyC;gBACzC,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,MAAM,IAAI,gBAAgB,CAAC;wBACzB,MAAM,EAAE,kBAAkB;wBAC1B,EAAE,EAAE,MAAM,CAAC,eAAyB;wBACpC,SAAS,EAAE,QAAQ;qBACpB,CAAC,CAAA;gBACJ,CAAC;gBACD,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAA;YAClC,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,mBAAmB,EAAE,CAAC,QAAQ,EAAE,EAAE,CAChC,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;oBAC3B,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,0FAA0F,CAC3F,CAAC,GAAG,CAAC,QAAQ,CAAyB,CAAA;oBACvC,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;gBACvC,CAAC;gBACD,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CACrB,gFAAgF,CACjF,CAAC,GAAG,EAA0B,CAAA;gBAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;YACvC,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;QAEJ,gBAAgB,EAAE,GAAG,EAAE,CACrB,MAAM,CAAC,GAAG,CAAC;YACT,GAAG,EAAE,GAAG,EAAE;gBACR,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;;aAQzB,CAAC,CAAC,GAAG,EAAwF,CAAA;gBAC9F,OAAO;oBACL,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;oBACxB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;oBACxB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;oBAC5B,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,CAAC;oBAC5B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC;iBAC3B,CAAA;YACH,CAAC;YACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC;SAC/C,CAAC;KACL,CAAA;AACH,CAAC,CAAC,CACH,CAAA"}
|
|
1
|
+
{"version":3,"file":"anchor-repo.js","sourceRoot":"","sources":["../../src/repo/anchor-repo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attempt-repo.d.ts","sourceRoot":"","sources":["../../src/repo/attempt-repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAoB,MAAM,cAAc,CAAA;AAEpF,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAc,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;;
|
|
1
|
+
{"version":3,"file":"attempt-repo.d.ts","sourceRoot":"","sources":["../../src/repo/attempt-repo.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAoB,MAAM,cAAc,CAAA;AAEpF,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAc,kBAAkB,EAAE,MAAM,yBAAyB,CAAA;;IAsB7F,kCAAkC;qBACjB,CAAC,KAAK,EAAE,kBAAkB,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC;IAErF,4BAA4B;uBACT,CAAC,EAAE,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,OAAO,GAAG,IAAI,EAAE,aAAa,CAAC;IAElF,wBAAwB;sBACN,MAAM,MAAM,CAAC,MAAM,CAAC,SAAS,OAAO,EAAE,EAAE,aAAa,CAAC;IAExE,mCAAmC;2BACZ,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,SAAS,OAAO,EAAE,EAAE,aAAa,CAAC;IAE3F,kDAAkD;oBAClC,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC;IAEzE,8BAA8B;qBACb,CAAC,EAAE,EAAE,SAAS,KAAK,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAE7F,qEAAqE;sCACnC,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,aAAa,CAAC;;AAtBvH,qBAAa,iBAAkB,SAAQ,sBAwBpC;CAAG;AAEN,eAAO,MAAM,qBAAqB,qDAoHjC,CAAA"}
|
|
@@ -2,6 +2,7 @@ import { Context, Effect, Layer } from "effect";
|
|
|
2
2
|
import { SqliteClient } from "../db.js";
|
|
3
3
|
import { AttemptNotFoundError, DatabaseError, EntityFetchError } from "../errors.js";
|
|
4
4
|
import { rowToAttempt } from "../mappers/attempt.js";
|
|
5
|
+
import { coerceDbResult } from "../utils/db-result.js";
|
|
5
6
|
const MAX_SQL_VARIABLES = 900;
|
|
6
7
|
const chunkBySqlLimit = (values, chunkSize = MAX_SQL_VARIABLES) => {
|
|
7
8
|
if (values.length === 0) {
|
|
@@ -9,7 +10,7 @@ const chunkBySqlLimit = (values, chunkSize = MAX_SQL_VARIABLES) => {
|
|
|
9
10
|
}
|
|
10
11
|
const chunks = [];
|
|
11
12
|
for (let i = 0; i < values.length; i += chunkSize) {
|
|
12
|
-
chunks.push(values.slice(i, i + chunkSize));
|
|
13
|
+
chunks.push(coerceDbResult(values.slice(i, i + chunkSize)));
|
|
13
14
|
}
|
|
14
15
|
return chunks;
|
|
15
16
|
};
|
|
@@ -24,11 +25,11 @@ export const AttemptRepositoryLive = Layer.effect(AttemptRepository, Effect.gen(
|
|
|
24
25
|
const result = db.prepare(`INSERT INTO attempts (task_id, approach, outcome, reason, created_at)
|
|
25
26
|
VALUES (?, ?, ?, ?, ?)`).run(input.taskId, input.approach, input.outcome, input.reason ?? null, now);
|
|
26
27
|
// Fetch the inserted row
|
|
27
|
-
const row = db.prepare("SELECT * FROM attempts WHERE id = ?").get(result.lastInsertRowid);
|
|
28
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM attempts WHERE id = ?").get(result.lastInsertRowid));
|
|
28
29
|
if (!row) {
|
|
29
30
|
throw new EntityFetchError({
|
|
30
31
|
entity: "attempt",
|
|
31
|
-
id: result.lastInsertRowid,
|
|
32
|
+
id: coerceDbResult(result.lastInsertRowid),
|
|
32
33
|
operation: "insert"
|
|
33
34
|
});
|
|
34
35
|
}
|
|
@@ -38,21 +39,21 @@ export const AttemptRepositoryLive = Layer.effect(AttemptRepository, Effect.gen(
|
|
|
38
39
|
}),
|
|
39
40
|
findById: (id) => Effect.try({
|
|
40
41
|
try: () => {
|
|
41
|
-
const row = db.prepare("SELECT * FROM attempts WHERE id = ?").get(id);
|
|
42
|
+
const row = coerceDbResult(db.prepare("SELECT * FROM attempts WHERE id = ?").get(id));
|
|
42
43
|
return row ? rowToAttempt(row) : null;
|
|
43
44
|
},
|
|
44
45
|
catch: (cause) => new DatabaseError({ cause })
|
|
45
46
|
}),
|
|
46
47
|
findAll: () => Effect.try({
|
|
47
48
|
try: () => {
|
|
48
|
-
const rows = db.prepare("SELECT * FROM attempts ORDER BY created_at ASC").all();
|
|
49
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM attempts ORDER BY created_at ASC").all());
|
|
49
50
|
return rows.map(rowToAttempt);
|
|
50
51
|
},
|
|
51
52
|
catch: (cause) => new DatabaseError({ cause })
|
|
52
53
|
}),
|
|
53
54
|
findByTaskId: (taskId) => Effect.try({
|
|
54
55
|
try: () => {
|
|
55
|
-
const rows = db.prepare("SELECT * FROM attempts WHERE task_id = ? ORDER BY created_at DESC, id DESC").all(taskId);
|
|
56
|
+
const rows = coerceDbResult(db.prepare("SELECT * FROM attempts WHERE task_id = ? ORDER BY created_at DESC, id DESC").all(taskId));
|
|
56
57
|
return rows.map(rowToAttempt);
|
|
57
58
|
},
|
|
58
59
|
catch: (cause) => new DatabaseError({ cause })
|
|
@@ -60,10 +61,10 @@ export const AttemptRepositoryLive = Layer.effect(AttemptRepository, Effect.gen(
|
|
|
60
61
|
count: (taskId) => Effect.try({
|
|
61
62
|
try: () => {
|
|
62
63
|
if (taskId) {
|
|
63
|
-
const result = db.prepare("SELECT COUNT(*) as cnt FROM attempts WHERE task_id = ?").get(taskId);
|
|
64
|
+
const result = coerceDbResult(db.prepare("SELECT COUNT(*) as cnt FROM attempts WHERE task_id = ?").get(taskId));
|
|
64
65
|
return result.cnt;
|
|
65
66
|
}
|
|
66
|
-
const result = db.prepare("SELECT COUNT(*) as cnt FROM attempts").get();
|
|
67
|
+
const result = coerceDbResult(db.prepare("SELECT COUNT(*) as cnt FROM attempts").get());
|
|
67
68
|
return result.cnt;
|
|
68
69
|
},
|
|
69
70
|
catch: (cause) => new DatabaseError({ cause })
|
|
@@ -85,9 +86,9 @@ export const AttemptRepositoryLive = Layer.effect(AttemptRepository, Effect.gen(
|
|
|
85
86
|
const result = new Map();
|
|
86
87
|
for (const chunk of chunkBySqlLimit(taskIds)) {
|
|
87
88
|
const placeholders = chunk.map(() => "?").join(", ");
|
|
88
|
-
const rows = db.prepare(`SELECT task_id, COUNT(*) as cnt FROM attempts
|
|
89
|
+
const rows = coerceDbResult(db.prepare(`SELECT task_id, COUNT(*) as cnt FROM attempts
|
|
89
90
|
WHERE task_id IN (${placeholders}) AND outcome = 'failed'
|
|
90
|
-
GROUP BY task_id`).all(...chunk);
|
|
91
|
+
GROUP BY task_id`).all(...chunk));
|
|
91
92
|
for (const row of rows) {
|
|
92
93
|
result.set(row.task_id, row.cnt);
|
|
93
94
|
}
|